@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,20 +1,41 @@
1
- let Selection$1 = class Selection {
2
- _rawData;
3
- _getChildren;
4
- _data;
5
- _selected;
6
- _focused;
7
- _getKey;
8
- _isItemSelectable;
9
- constructor() {
10
- let {
11
- data = [],
12
- selected = new Set(),
13
- focused = null,
14
- getKey = item => item.id,
15
- getChildren = () => [],
16
- isItemSelectable = () => true
17
- } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
1
+ import { _ as _createClass, g as _toConsumableArray, b as _classCallCheck, c as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.iterator.js';
3
+ import 'core-js/modules/es.object.to-string.js';
4
+ import 'core-js/modules/es.set.js';
5
+ import 'core-js/modules/es.string.iterator.js';
6
+ import 'core-js/modules/web.dom-collections.iterator.js';
7
+ import 'core-js/modules/es.array.filter.js';
8
+ import 'core-js/modules/es.array.index-of.js';
9
+
10
+ var Selection = /*#__PURE__*/function () {
11
+ function Selection() {
12
+ var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
13
+ _ref$data = _ref.data,
14
+ data = _ref$data === void 0 ? [] : _ref$data,
15
+ _ref$selected = _ref.selected,
16
+ selected = _ref$selected === void 0 ? new Set() : _ref$selected,
17
+ _ref$focused = _ref.focused,
18
+ focused = _ref$focused === void 0 ? null : _ref$focused,
19
+ _ref$getKey = _ref.getKey,
20
+ getKey = _ref$getKey === void 0 ? function (item) {
21
+ return item.id;
22
+ } : _ref$getKey,
23
+ _ref$getChildren = _ref.getChildren,
24
+ getChildren = _ref$getChildren === void 0 ? function () {
25
+ return [];
26
+ } : _ref$getChildren,
27
+ _ref$isItemSelectable = _ref.isItemSelectable,
28
+ isItemSelectable = _ref$isItemSelectable === void 0 ? function () {
29
+ return true;
30
+ } : _ref$isItemSelectable;
31
+ _classCallCheck(this, Selection);
32
+ _defineProperty(this, "_rawData", void 0);
33
+ _defineProperty(this, "_getChildren", void 0);
34
+ _defineProperty(this, "_data", void 0);
35
+ _defineProperty(this, "_selected", void 0);
36
+ _defineProperty(this, "_focused", void 0);
37
+ _defineProperty(this, "_getKey", void 0);
38
+ _defineProperty(this, "_isItemSelectable", void 0);
18
39
  this._rawData = data;
19
40
  this._getChildren = getChildren;
20
41
  this._data = this._buildData(data);
@@ -23,164 +44,215 @@ let Selection$1 = class Selection {
23
44
  this._getKey = getKey;
24
45
  this._isItemSelectable = isItemSelectable;
25
46
  }
26
- _buildData(data) {
27
- return new Set(data);
28
- }
29
- _buildSelected(data, selected) {
30
- return new Set(selected);
31
- }
32
- cloneWith(_ref) {
33
- let {
34
- data,
35
- selected,
36
- focused
37
- } = _ref;
38
- const newData = data || this._rawData;
39
- let newSelected;
40
- if (data && !selected) {
41
- newSelected = new Set([...this._buildData(newData)].filter(item => [...this._selected].some(it => this._getKey(item) === this._getKey(it))));
42
- newSelected = this._buildSelected(this._buildData(newData), newSelected);
43
- } else if (selected) {
44
- newSelected = selected;
45
- } else {
46
- newSelected = this._selected;
47
- }
48
- newSelected = new Set([...newSelected].filter(item => this._isItemSelectable(item)));
49
- const cloneFocus = () => [...this._buildData(data)].filter(item => this._focused && this._getKey(item) === this._getKey(this._focused))[0];
50
- const newFocused = focused === undefined ? this._focused : focused;
51
- return new this.constructor({
52
- data: newData,
53
- selected: newSelected,
54
- focused: data && !focused ? cloneFocus() : newFocused,
55
- getKey: this._getKey,
56
- getChildren: this._getChildren,
57
- isItemSelectable: this._isItemSelectable
58
- });
59
- }
60
- focus(value) {
61
- return this.cloneWith({
62
- focused: value
63
- });
64
- }
65
- moveUp() {
66
- const focused = this._focused;
67
- const data = [...this._data];
68
- if (!focused) {
47
+ _createClass(Selection, [{
48
+ key: "_buildData",
49
+ value: function _buildData(data) {
50
+ return new Set(data);
51
+ }
52
+ }, {
53
+ key: "_buildSelected",
54
+ value: function _buildSelected(data, selected) {
55
+ return new Set(selected);
56
+ }
57
+ }, {
58
+ key: "cloneWith",
59
+ value: function cloneWith(_ref2) {
60
+ var _this = this;
61
+ var data = _ref2.data,
62
+ selected = _ref2.selected,
63
+ focused = _ref2.focused;
64
+ var newData = data || this._rawData;
65
+ var newSelected;
66
+ if (data && !selected) {
67
+ newSelected = new Set(_toConsumableArray(this._buildData(newData)).filter(function (item) {
68
+ return _toConsumableArray(_this._selected).some(function (it) {
69
+ return _this._getKey(item) === _this._getKey(it);
70
+ });
71
+ }));
72
+ newSelected = this._buildSelected(this._buildData(newData), newSelected);
73
+ } else if (selected) {
74
+ newSelected = selected;
75
+ } else {
76
+ newSelected = this._selected;
77
+ }
78
+ newSelected = new Set(_toConsumableArray(newSelected).filter(function (item) {
79
+ return _this._isItemSelectable(item);
80
+ }));
81
+ var cloneFocus = function cloneFocus() {
82
+ return _toConsumableArray(_this._buildData(data)).filter(function (item) {
83
+ return _this._focused && _this._getKey(item) === _this._getKey(_this._focused);
84
+ })[0];
85
+ };
86
+ var newFocused = focused === undefined ? this._focused : focused;
87
+ return new this.constructor({
88
+ data: newData,
89
+ selected: newSelected,
90
+ focused: data && !focused ? cloneFocus() : newFocused,
91
+ getKey: this._getKey,
92
+ getChildren: this._getChildren,
93
+ isItemSelectable: this._isItemSelectable
94
+ });
95
+ }
96
+ }, {
97
+ key: "focus",
98
+ value: function focus(value) {
69
99
  return this.cloneWith({
70
- focused: data[data.length - 1]
100
+ focused: value
71
101
  });
72
102
  }
73
- const nextItem = data[data.indexOf(focused) - 1];
74
- if (nextItem) {
103
+ }, {
104
+ key: "moveUp",
105
+ value: function moveUp() {
106
+ var focused = this._focused;
107
+ var data = _toConsumableArray(this._data);
108
+ if (!focused) {
109
+ return this.cloneWith({
110
+ focused: data[data.length - 1]
111
+ });
112
+ }
113
+ var nextItem = data[data.indexOf(focused) - 1];
114
+ if (nextItem) {
115
+ return this.cloneWith({
116
+ focused: nextItem
117
+ });
118
+ }
119
+ return undefined;
120
+ }
121
+ }, {
122
+ key: "moveDown",
123
+ value: function moveDown() {
124
+ var focused = this._focused;
125
+ var data = _toConsumableArray(this._data);
126
+ if (!focused) {
127
+ return this.cloneWith({
128
+ focused: data[0]
129
+ });
130
+ }
131
+ var nextItem = data[data.indexOf(focused) + 1];
132
+ if (nextItem) {
133
+ return this.cloneWith({
134
+ focused: nextItem
135
+ });
136
+ }
137
+ return undefined;
138
+ }
139
+ }, {
140
+ key: "moveStart",
141
+ value: function moveStart() {
142
+ var data = _toConsumableArray(this._data);
143
+ if (data.length) {
144
+ return this.cloneWith({
145
+ focused: data[0]
146
+ });
147
+ }
148
+ return undefined;
149
+ }
150
+ }, {
151
+ key: "moveEnd",
152
+ value: function moveEnd() {
153
+ var data = _toConsumableArray(this._data);
154
+ if (data.length) {
155
+ return this.cloneWith({
156
+ focused: data.pop()
157
+ });
158
+ }
159
+ return undefined;
160
+ }
161
+ }, {
162
+ key: "select",
163
+ value: function select() {
164
+ var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
165
+ if (!value || !this._isItemSelectable(value)) {
166
+ return this;
167
+ }
168
+ var selected = new Set(this._selected);
169
+ selected.add(value);
75
170
  return this.cloneWith({
76
- focused: nextItem
171
+ selected: selected
77
172
  });
78
173
  }
79
- return undefined;
80
- }
81
- moveDown() {
82
- const focused = this._focused;
83
- const data = [...this._data];
84
- if (!focused) {
174
+ }, {
175
+ key: "deselect",
176
+ value: function deselect() {
177
+ var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
178
+ if (!value || !this._isItemSelectable(value)) {
179
+ return this;
180
+ }
181
+ var selected = new Set(this._selected);
182
+ selected.delete(value);
85
183
  return this.cloneWith({
86
- focused: data[0]
184
+ selected: selected
87
185
  });
88
186
  }
89
- const nextItem = data[data.indexOf(focused) + 1];
90
- if (nextItem) {
187
+ }, {
188
+ key: "toggleSelection",
189
+ value: function toggleSelection() {
190
+ var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
191
+ if (this.isSelected(value)) {
192
+ return this.deselect(value);
193
+ } else {
194
+ return this.select(value);
195
+ }
196
+ }
197
+ }, {
198
+ key: "selectAll",
199
+ value: function selectAll() {
91
200
  return this.cloneWith({
92
- focused: nextItem
201
+ selected: _toConsumableArray(this._data)
93
202
  });
94
203
  }
95
- return undefined;
96
- }
97
- moveStart() {
98
- const data = [...this._data];
99
- if (data.length) {
204
+ }, {
205
+ key: "resetFocus",
206
+ value: function resetFocus() {
100
207
  return this.cloneWith({
101
- focused: data[0]
208
+ focused: null
102
209
  });
103
210
  }
104
- return undefined;
105
- }
106
- moveEnd() {
107
- const data = [...this._data];
108
- if (data.length) {
211
+ }, {
212
+ key: "resetSelection",
213
+ value: function resetSelection() {
109
214
  return this.cloneWith({
110
- focused: data.pop()
215
+ selected: new Set()
111
216
  });
112
217
  }
113
- return undefined;
114
- }
115
- select() {
116
- let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
117
- if (!value || !this._isItemSelectable(value)) {
118
- return this;
119
- }
120
- const selected = new Set(this._selected);
121
- selected.add(value);
122
- return this.cloneWith({
123
- selected
124
- });
125
- }
126
- deselect() {
127
- let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
128
- if (!value || !this._isItemSelectable(value)) {
129
- return this;
130
- }
131
- const selected = new Set(this._selected);
132
- selected.delete(value);
133
- return this.cloneWith({
134
- selected
135
- });
136
- }
137
- toggleSelection() {
138
- let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
139
- if (this.isSelected(value)) {
140
- return this.deselect(value);
141
- } else {
142
- return this.select(value);
218
+ }, {
219
+ key: "reset",
220
+ value: function reset() {
221
+ return this.resetFocus().resetSelection();
143
222
  }
144
- }
145
- selectAll() {
146
- return this.cloneWith({
147
- selected: [...this._data]
148
- });
149
- }
150
- resetFocus() {
151
- return this.cloneWith({
152
- focused: null
153
- });
154
- }
155
- resetSelection() {
156
- return this.cloneWith({
157
- selected: new Set()
158
- });
159
- }
160
- reset() {
161
- return this.resetFocus().resetSelection();
162
- }
163
- isFocused(value) {
164
- return this._focused === value;
165
- }
166
- isSelected(value) {
167
- return value != null && this._selected.has(value);
168
- }
169
- getFocused() {
170
- return this._focused;
171
- }
172
- getSelected() {
173
- return new Set(this._selected);
174
- }
175
- getActive() {
176
- if (this._selected.size) {
223
+ }, {
224
+ key: "isFocused",
225
+ value: function isFocused(value) {
226
+ return this._focused === value;
227
+ }
228
+ }, {
229
+ key: "isSelected",
230
+ value: function isSelected(value) {
231
+ return value != null && this._selected.has(value);
232
+ }
233
+ }, {
234
+ key: "getFocused",
235
+ value: function getFocused() {
236
+ return this._focused;
237
+ }
238
+ }, {
239
+ key: "getSelected",
240
+ value: function getSelected() {
177
241
  return new Set(this._selected);
178
- } else if (this._focused) {
179
- return new Set([this._focused]);
180
- } else {
181
- return new Set();
182
242
  }
183
- }
184
- };
243
+ }, {
244
+ key: "getActive",
245
+ value: function getActive() {
246
+ if (this._selected.size) {
247
+ return new Set(this._selected);
248
+ } else if (this._focused) {
249
+ return new Set([this._focused]);
250
+ } else {
251
+ return new Set();
252
+ }
253
+ }
254
+ }]);
255
+ return Selection;
256
+ }();
185
257
 
186
- export { Selection$1 as default };
258
+ export { Selection as default };
@@ -1,23 +1,46 @@
1
- import { _ as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { h as _objectWithoutProperties, c as _defineProperty, a as _objectSpread2, j as _inherits, k as _createSuper, b as _classCallCheck, m as _assertThisInitialized, _ as _createClass, i as _extends } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.array.concat.js';
2
3
  import React, { PureComponent } from 'react';
3
4
  import PropTypes from 'prop-types';
4
5
  import TableContainer from './table.js';
5
- import Selection$1 from './selection.js';
6
+ import Selection from './selection.js';
7
+ import 'core-js/modules/es.array.map.js';
6
8
  import 'classnames';
7
9
  import 'react-movable';
8
10
  import '../global/focus-sensor-hoc.js';
9
11
  import '../global/prop-types.js';
10
12
  import '../global/composeRefs.js';
13
+ import 'core-js/modules/es.object.to-string.js';
14
+ import 'core-js/modules/web.dom-collections.for-each.js';
11
15
  import '../global/get-uid.js';
16
+ import 'core-js/modules/es.regexp.to-string.js';
12
17
  import '../shortcuts/shortcuts.js';
13
18
  import '../shortcuts/core.js';
19
+ import 'core-js/modules/es.array.includes.js';
20
+ import 'core-js/modules/es.string.includes.js';
21
+ import 'core-js/modules/es.object.assign.js';
22
+ import 'core-js/modules/es.array.slice.js';
23
+ import 'core-js/modules/es.array.splice.js';
24
+ import 'core-js/modules/es.regexp.exec.js';
25
+ import 'core-js/modules/es.string.match.js';
26
+ import 'core-js/modules/es.array.find-index.js';
14
27
  import 'combokeys';
15
28
  import '../global/sniffer.js';
16
29
  import 'sniffr';
17
30
  import '../loader/loader.js';
18
31
  import '../global/data-tests.js';
32
+ import 'core-js/modules/es.array.reduce.js';
33
+ import 'core-js/modules/es.object.entries.js';
19
34
  import '../loader/loader__core.js';
35
+ import 'core-js/modules/es.array.fill.js';
36
+ import 'core-js/modules/es.array.filter.js';
20
37
  import '../global/dom.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.array.iterator.js';
41
+ import 'core-js/modules/es.set.js';
42
+ import 'core-js/modules/es.string.iterator.js';
43
+ import 'core-js/modules/web.dom-collections.iterator.js';
21
44
  import './header.js';
22
45
  import '../checkbox/checkbox.js';
23
46
  import '@jetbrains/icons/checkmark-14px';
@@ -27,13 +50,18 @@ import 'util-deprecate';
27
50
  import '../icon/icon__constants.js';
28
51
  import '../_helpers/icon.js';
29
52
  import '../icon/icon__svg.js';
53
+ import 'core-js/modules/es.string.replace.js';
54
+ import 'core-js/modules/es.string.starts-with.js';
30
55
  import '../global/memoize.js';
56
+ import 'core-js/modules/es.map.js';
57
+ import 'core-js/modules/es.weak-map.js';
31
58
  import '../_helpers/checkbox.js';
32
59
  import '../_helpers/table.js';
33
60
  import './header-cell.js';
34
61
  import '@jetbrains/icons/unsorted-10px';
35
62
  import '@jetbrains/icons/chevron-10px';
36
63
  import './selection-shortcuts-hoc.js';
64
+ import 'core-js/modules/es.array.index-of.js';
37
65
  import './disable-hover-hoc.js';
38
66
  import './row-with-focus-sensor.js';
39
67
  import './row.js';
@@ -50,62 +78,76 @@ import 'react-dom';
50
78
  import '../global/schedule-raf.js';
51
79
  import '../tab-trap/tab-trap.js';
52
80
  import '../popup/position.js';
81
+ import 'core-js/modules/es.array.sort.js';
53
82
  import '../popup/popup.consts.js';
54
83
  import '../popup/popup.target.js';
55
84
  import './cell.js';
56
85
 
57
86
  var _Table$propTypes;
58
- const {
59
- selection: __selection__,
60
- onSelect: __onSelect__,
61
- ...restPropTypes
62
- } = (_Table$propTypes = TableContainer.propTypes) !== null && _Table$propTypes !== void 0 ? _Table$propTypes : {};
63
- class SmartTable extends PureComponent {
64
- static propTypes = {
65
- onSelectionChange: PropTypes.func,
66
- isItemSelectable: PropTypes.func,
67
- ...restPropTypes
68
- };
69
- static defaultProps = {
70
- onSelectionChange: () => {}
71
- };
72
- state = {
73
- selection: new Selection$1({
74
- data: this.props.data,
75
- isItemSelectable: this.props.isItemSelectable
76
- })
77
- };
78
- UNSAFE_componentWillReceiveProps(nextProps) {
79
- const {
80
- data,
81
- isItemSelectable,
82
- selection
83
- } = nextProps;
84
- if (this.props.remoteSelection && this.props.selection !== selection) {
85
- this.setState({
86
- selection
87
- });
88
- } else if (this.props.data !== data || this.props.isItemSelectable !== isItemSelectable) {
89
- this.setState({
90
- selection: new Selection$1({
91
- data,
92
- isItemSelectable
93
- })
94
- });
87
+ var _ref = (_Table$propTypes = TableContainer.propTypes) !== null && _Table$propTypes !== void 0 ? _Table$propTypes : {};
88
+ _ref.selection;
89
+ _ref.onSelect;
90
+ var restPropTypes = _objectWithoutProperties(_ref, ["selection", "onSelect"]);
91
+ var SmartTable = /*#__PURE__*/function (_PureComponent) {
92
+ _inherits(SmartTable, _PureComponent);
93
+ var _super = _createSuper(SmartTable);
94
+ function SmartTable() {
95
+ var _this;
96
+ _classCallCheck(this, SmartTable);
97
+ for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
98
+ args[_key] = arguments[_key];
95
99
  }
96
- }
97
- onSelect = selection => {
98
- this.setState({
99
- selection
100
+ _this = _super.call.apply(_super, [this].concat(args));
101
+ _defineProperty(_assertThisInitialized(_this), "state", {
102
+ selection: new Selection({
103
+ data: _this.props.data,
104
+ isItemSelectable: _this.props.isItemSelectable
105
+ })
100
106
  });
101
- this.props.onSelectionChange(selection);
102
- };
103
- render() {
104
- return /*#__PURE__*/React.createElement(TableContainer, _extends({}, this.props, {
105
- selection: this.state.selection,
106
- onSelect: this.onSelect
107
- }));
107
+ _defineProperty(_assertThisInitialized(_this), "onSelect", function (selection) {
108
+ _this.setState({
109
+ selection: selection
110
+ });
111
+ _this.props.onSelectionChange(selection);
112
+ });
113
+ return _this;
108
114
  }
109
- }
115
+ _createClass(SmartTable, [{
116
+ key: "UNSAFE_componentWillReceiveProps",
117
+ value: function UNSAFE_componentWillReceiveProps(nextProps) {
118
+ var data = nextProps.data,
119
+ isItemSelectable = nextProps.isItemSelectable,
120
+ selection = nextProps.selection;
121
+ if (this.props.remoteSelection && this.props.selection !== selection) {
122
+ this.setState({
123
+ selection: selection
124
+ });
125
+ } else if (this.props.data !== data || this.props.isItemSelectable !== isItemSelectable) {
126
+ this.setState({
127
+ selection: new Selection({
128
+ data: data,
129
+ isItemSelectable: isItemSelectable
130
+ })
131
+ });
132
+ }
133
+ }
134
+ }, {
135
+ key: "render",
136
+ value: function render() {
137
+ return /*#__PURE__*/React.createElement(TableContainer, _extends({}, this.props, {
138
+ selection: this.state.selection,
139
+ onSelect: this.onSelect
140
+ }));
141
+ }
142
+ }]);
143
+ return SmartTable;
144
+ }(PureComponent);
145
+ _defineProperty(SmartTable, "propTypes", _objectSpread2({
146
+ onSelectionChange: PropTypes.func,
147
+ isItemSelectable: PropTypes.func
148
+ }, restPropTypes));
149
+ _defineProperty(SmartTable, "defaultProps", {
150
+ onSelectionChange: function onSelectionChange() {}
151
+ });
110
152
 
111
153
  export { SmartTable as default };