@jetbrains/ring-ui 5.0.156 → 5.0.158

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 (304) hide show
  1. package/components/control-label/control-label.css +1 -1
  2. package/components/control-label/control-label.d.ts +1 -1
  3. package/components/control-label/control-label.js +2 -2
  4. package/components/select/select__popup.d.ts +36 -0
  5. package/components/select/select__popup.js +7 -1
  6. package/dist/_helpers/_rollupPluginBabelHelpers.js +642 -1
  7. package/dist/_helpers/anchor.js +6 -7
  8. package/dist/_helpers/button__classes.js +16 -28
  9. package/dist/_helpers/card.js +107 -95
  10. package/dist/_helpers/control-label.js +1 -1
  11. package/dist/_helpers/dialog__body-scroll-preventer.js +20 -11
  12. package/dist/_helpers/footer.js +29 -34
  13. package/dist/_helpers/query-assist__suggestions.js +91 -74
  14. package/dist/_helpers/select__filter.js +71 -48
  15. package/dist/_helpers/services-link.js +41 -29
  16. package/dist/_helpers/sidebar.js +103 -99
  17. package/dist/_helpers/theme.js +42 -35
  18. package/dist/_helpers/title.js +71 -57
  19. package/dist/alert/alert.js +199 -158
  20. package/dist/alert/container.js +43 -32
  21. package/dist/alert-service/alert-service.js +172 -104
  22. package/dist/analytics/analytics.js +92 -68
  23. package/dist/analytics/analytics__custom-plugin.js +84 -60
  24. package/dist/analytics/analytics__fus-plugin.js +28 -15
  25. package/dist/analytics/analytics__ga-plugin.js +60 -43
  26. package/dist/analytics/analytics__plugin-utils.js +28 -22
  27. package/dist/auth/auth.js +36 -4
  28. package/dist/auth/auth__core.js +1458 -732
  29. package/dist/auth/background-flow.js +129 -87
  30. package/dist/auth/down-notification.js +75 -30
  31. package/dist/auth/iframe-flow.js +136 -75
  32. package/dist/auth/landing.js +90 -30
  33. package/dist/auth/request-builder.js +82 -46
  34. package/dist/auth/response-parser.js +119 -86
  35. package/dist/auth/storage.js +333 -171
  36. package/dist/auth/token-validator.js +244 -137
  37. package/dist/auth/window-flow.js +136 -92
  38. package/dist/auth-dialog/auth-dialog.js +176 -114
  39. package/dist/auth-dialog-service/auth-dialog-service.js +32 -7
  40. package/dist/auth-ng/auth-ng.js +70 -34
  41. package/dist/auth-ng/auth-ng.mock.js +6 -6
  42. package/dist/autofocus-ng/autofocus-ng.js +23 -8
  43. package/dist/avatar/avatar-example-datauri.js +1 -23
  44. package/dist/avatar/avatar.js +155 -119
  45. package/dist/avatar/fallback-avatar.js +41 -22
  46. package/dist/avatar-editor-ng/avatar-editor-ng.js +56 -23
  47. package/dist/avatar-editor-ng/avatar-editor-ng__template.js +1 -28
  48. package/dist/avatar-ng/avatar-ng.js +23 -1
  49. package/dist/badge/badge.js +43 -35
  50. package/dist/badge-ng/badge-ng.js +13 -1
  51. package/dist/breadcrumb-ng/breadcrumb-ng.js +15 -29
  52. package/dist/button/button.js +111 -87
  53. package/dist/button/button__classes.js +1 -0
  54. package/dist/button-group/button-group.js +35 -19
  55. package/dist/button-group/caption.js +22 -14
  56. package/dist/button-group-ng/button-group-ng.js +13 -7
  57. package/dist/button-ng/button-ng.js +154 -133
  58. package/dist/button-set/button-set.js +34 -20
  59. package/dist/button-set-ng/button-set-ng.js +2 -2
  60. package/dist/button-toolbar/button-toolbar.js +33 -19
  61. package/dist/button-toolbar-ng/button-toolbar-ng.js +5 -3
  62. package/dist/caret/caret.js +225 -188
  63. package/dist/checkbox/checkbox.js +104 -76
  64. package/dist/checkbox-ng/checkbox-ng.js +18 -27
  65. package/dist/clipboard/clipboard-fallback.js +10 -10
  66. package/dist/clipboard/clipboard.js +131 -34
  67. package/dist/code/code.js +168 -92
  68. package/dist/compiler-ng/compiler-ng.js +18 -15
  69. package/dist/confirm/confirm.js +108 -66
  70. package/dist/confirm-ng/confirm-ng.js +33 -4
  71. package/dist/confirm-service/confirm-service.js +66 -42
  72. package/dist/content-layout/content-layout.js +64 -43
  73. package/dist/content-layout/sidebar.js +1 -0
  74. package/dist/contenteditable/contenteditable.js +61 -50
  75. package/dist/control-label/control-label.d.ts +1 -1
  76. package/dist/control-label/control-label.js +12 -16
  77. package/dist/data-list/data-list.js +184 -128
  78. package/dist/data-list/data-list.mock.js +11 -2
  79. package/dist/data-list/item.js +174 -143
  80. package/dist/data-list/selection.js +139 -76
  81. package/dist/data-list/title.js +13 -1
  82. package/dist/data-list-ng/data-list-ng.js +31 -1
  83. package/dist/date-picker/consts.js +18 -15
  84. package/dist/date-picker/date-input.js +147 -115
  85. package/dist/date-picker/date-picker.js +285 -228
  86. package/dist/date-picker/date-popup.js +397 -356
  87. package/dist/date-picker/day.js +98 -84
  88. package/dist/date-picker/month-names.js +64 -43
  89. package/dist/date-picker/month-slider.js +74 -51
  90. package/dist/date-picker/month.js +21 -15
  91. package/dist/date-picker/months.js +48 -43
  92. package/dist/date-picker/weekdays.js +18 -12
  93. package/dist/date-picker/years.js +109 -84
  94. package/dist/dialog/dialog.js +189 -141
  95. package/dist/dialog/dialog__body-scroll-preventer.js +5 -0
  96. package/dist/dialog-ng/dialog-ng.js +401 -287
  97. package/dist/dialog-ng/dialog-ng__template.js +1 -70
  98. package/dist/docked-panel-ng/docked-panel-ng.js +33 -18
  99. package/dist/dropdown/anchor.js +10 -0
  100. package/dist/dropdown/dropdown.js +214 -182
  101. package/dist/dropdown-menu/dropdown-menu.js +102 -72
  102. package/dist/editable-heading/editable-heading.js +100 -58
  103. package/dist/error-bubble/error-bubble.js +64 -31
  104. package/dist/error-message/error-message.js +61 -38
  105. package/dist/error-message-ng/error-message-ng.js +11 -22
  106. package/dist/footer/footer.js +11 -1
  107. package/dist/footer-ng/footer-ng.js +64 -36
  108. package/dist/form-ng/form-ng.js +66 -56
  109. package/dist/global/angular-component-factory.js +76 -53
  110. package/dist/global/compose.js +10 -1
  111. package/dist/global/composeRefs.js +12 -7
  112. package/dist/global/controls-height.js +2 -2
  113. package/dist/global/create-stateful-context.js +19 -19
  114. package/dist/global/data-tests.js +15 -7
  115. package/dist/global/dom.js +95 -53
  116. package/dist/global/focus-sensor-hoc.js +134 -122
  117. package/dist/global/fuzzy-highlight.js +41 -27
  118. package/dist/global/get-event-key.js +8 -8
  119. package/dist/global/get-uid.js +8 -4
  120. package/dist/global/inject-styles.js +15 -10
  121. package/dist/global/linear-function.js +2 -2
  122. package/dist/global/listeners.js +53 -27
  123. package/dist/global/memoize.js +13 -6
  124. package/dist/global/normalize-indent.js +51 -19
  125. package/dist/global/promise-with-timeout.js +8 -6
  126. package/dist/global/prop-types.js +5 -3
  127. package/dist/global/react-dom-renderer.js +47 -28
  128. package/dist/global/react-render-adapter.js +19 -13
  129. package/dist/global/rerender-hoc.js +41 -16
  130. package/dist/global/ring-angular-component.js +20 -10
  131. package/dist/global/schedule-raf.js +6 -5
  132. package/dist/global/sniffer.js +1 -1
  133. package/dist/global/theme.js +24 -0
  134. package/dist/global/trivial-template-tag.js +10 -3
  135. package/dist/global/typescript-utils.js +6 -2
  136. package/dist/global/url.js +27 -21
  137. package/dist/global/use-event-callback.js +4 -6
  138. package/dist/grid/col.js +55 -35
  139. package/dist/grid/grid.js +36 -17
  140. package/dist/grid/row.js +48 -35
  141. package/dist/group/group.js +27 -17
  142. package/dist/group-ng/group-ng.js +2 -2
  143. package/dist/header/header.js +80 -33
  144. package/dist/header/logo.js +39 -20
  145. package/dist/header/profile.js +188 -150
  146. package/dist/header/services-link.js +9 -0
  147. package/dist/header/services.js +118 -73
  148. package/dist/header/smart-profile.js +207 -111
  149. package/dist/header/smart-services.js +115 -62
  150. package/dist/header/tray-icon.js +38 -21
  151. package/dist/header/tray.js +34 -21
  152. package/dist/heading/heading.js +25 -26
  153. package/dist/heading-ng/heading-ng.js +11 -1
  154. package/dist/http/http.js +368 -215
  155. package/dist/http/http.mock.js +104 -49
  156. package/dist/hub-source/hub-source.js +191 -83
  157. package/dist/hub-source/hub-source__user.js +45 -11
  158. package/dist/hub-source/hub-source__users-groups.js +67 -37
  159. package/dist/i18n/i18n-context.js +14 -10
  160. package/dist/i18n/i18n.js +11 -7
  161. package/dist/icon/icon.js +94 -76
  162. package/dist/icon/icon__svg.js +31 -24
  163. package/dist/icon/index.js +9 -0
  164. package/dist/icon-ng/icon-ng.js +27 -15
  165. package/dist/input/input.js +184 -145
  166. package/dist/input-ng/input-ng.js +96 -118
  167. package/dist/island/adaptive-island-hoc.js +45 -30
  168. package/dist/island/content.js +130 -115
  169. package/dist/island/header.js +69 -56
  170. package/dist/island/island.js +40 -28
  171. package/dist/island-legacy/content-legacy.js +27 -17
  172. package/dist/island-legacy/header-legacy.js +29 -19
  173. package/dist/island-legacy/island-legacy.js +27 -17
  174. package/dist/island-ng/island-content-ng.js +17 -26
  175. package/dist/island-ng/island-header-ng.js +9 -12
  176. package/dist/island-ng/island-ng-class-fixer.js +3 -0
  177. package/dist/island-ng/island-ng.js +6 -10
  178. package/dist/link/clickableLink.js +61 -44
  179. package/dist/link/link.js +85 -74
  180. package/dist/link-ng/link-ng.js +3 -5
  181. package/dist/list/consts.js +1 -1
  182. package/dist/list/list.js +696 -602
  183. package/dist/list/list__custom.js +61 -44
  184. package/dist/list/list__hint.js +21 -10
  185. package/dist/list/list__item.js +167 -129
  186. package/dist/list/list__link.js +54 -37
  187. package/dist/list/list__separator.js +24 -14
  188. package/dist/list/list__title.js +32 -22
  189. package/dist/list/list__users-groups-source.js +131 -54
  190. package/dist/loader/loader.js +78 -43
  191. package/dist/loader/loader__core.js +257 -189
  192. package/dist/loader-inline/loader-inline.js +37 -23
  193. package/dist/loader-inline-ng/loader-inline-ng.js +2 -2
  194. package/dist/loader-ng/loader-ng.js +46 -19
  195. package/dist/loader-screen/loader-screen.js +48 -25
  196. package/dist/loader-screen-ng/loader-screen-ng.js +46 -30
  197. package/dist/login-dialog/login-dialog.js +162 -111
  198. package/dist/login-dialog/service.js +35 -7
  199. package/dist/markdown/code.js +31 -9
  200. package/dist/markdown/heading.js +3 -5
  201. package/dist/markdown/link.js +13 -6
  202. package/dist/markdown/markdown.js +66 -33
  203. package/dist/message/message.js +157 -125
  204. package/dist/message-bundle-ng/message-bundle-ng.js +128 -44
  205. package/dist/old-browsers-message/old-browsers-message.js +19 -11
  206. package/dist/old-browsers-message/old-browsers-message__stop.js +8 -0
  207. package/dist/old-browsers-message/white-list.js +16 -9
  208. package/dist/pager/pager.js +275 -210
  209. package/dist/pager-ng/pager-ng.js +36 -1
  210. package/dist/panel/panel.js +27 -17
  211. package/dist/panel-ng/panel-ng.js +14 -1
  212. package/dist/permissions/permissions.js +173 -127
  213. package/dist/permissions/permissions__cache.js +225 -194
  214. package/dist/permissions-ng/permissions-ng.js +86 -35
  215. package/dist/place-under-ng/place-under-ng.js +68 -45
  216. package/dist/popup/popup.consts.js +1 -1
  217. package/dist/popup/popup.js +342 -280
  218. package/dist/popup/popup.target.js +8 -9
  219. package/dist/popup/position.js +153 -153
  220. package/dist/popup-menu/popup-menu.js +86 -44
  221. package/dist/progress-bar/progress-bar.js +97 -80
  222. package/dist/progress-bar-ng/progress-bar-ng.js +11 -1
  223. package/dist/promised-click-ng/promised-click-ng.js +92 -58
  224. package/dist/proxy-attrs/proxy-attrs.js +18 -9
  225. package/dist/query-assist/query-assist.js +903 -832
  226. package/dist/query-assist/query-assist__suggestions.js +33 -1
  227. package/dist/query-assist-ng/query-assist-ng.js +38 -1
  228. package/dist/radio/radio.js +36 -19
  229. package/dist/radio/radio__item.js +71 -52
  230. package/dist/radio-ng/radio-ng.js +14 -25
  231. package/dist/save-field-ng/save-field-ng.js +86 -52
  232. package/dist/save-field-ng/save-field-ng__template.js +1 -32
  233. package/dist/select/select.js +937 -835
  234. package/dist/select/select__filter.js +33 -0
  235. package/dist/select/select__popup.d.ts +36 -0
  236. package/dist/select/select__popup.js +480 -358
  237. package/dist/select-ng/select-ng.js +125 -74
  238. package/dist/select-ng/select-ng__lazy.js +101 -50
  239. package/dist/select-ng/select-ng__options.js +107 -81
  240. package/dist/shortcuts/core.js +218 -166
  241. package/dist/shortcuts/shortcut-title.js +11 -6
  242. package/dist/shortcuts/shortcuts-hoc.js +47 -19
  243. package/dist/shortcuts/shortcuts.js +77 -50
  244. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +104 -53
  245. package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +1 -48
  246. package/dist/shortcuts-ng/shortcuts-ng.js +86 -51
  247. package/dist/sidebar-ng/sidebar-ng.js +53 -22
  248. package/dist/sidebar-ng/sidebar-ng__button-template.js +1 -18
  249. package/dist/sidebar-ng/sidebar-ng__template.js +1 -10
  250. package/dist/storage/storage.js +35 -4
  251. package/dist/storage/storage__fallback.js +224 -149
  252. package/dist/storage/storage__local.js +156 -90
  253. package/dist/style.css +1 -1
  254. package/dist/tab-trap/tab-trap.js +157 -122
  255. package/dist/table/cell.js +28 -14
  256. package/dist/table/disable-hover-hoc.js +53 -33
  257. package/dist/table/header-cell.js +87 -64
  258. package/dist/table/header.js +126 -98
  259. package/dist/table/multitable.js +127 -107
  260. package/dist/table/row-with-focus-sensor.js +73 -25
  261. package/dist/table/row.js +208 -170
  262. package/dist/table/selection-adapter.js +3 -1
  263. package/dist/table/selection-shortcuts-hoc.js +184 -181
  264. package/dist/table/selection.js +228 -156
  265. package/dist/table/smart-table.js +93 -51
  266. package/dist/table/table.js +348 -281
  267. package/dist/table-legacy-ng/table-legacy-ng.js +117 -102
  268. package/dist/table-legacy-ng/table-legacy-ng__pager.js +42 -10
  269. package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +92 -69
  270. package/dist/table-legacy-ng/table-legacy-ng__selection.js +169 -119
  271. package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +36 -21
  272. package/dist/table-ng/smart-table-ng.js +31 -1
  273. package/dist/table-ng/table-ng.js +31 -1
  274. package/dist/tabs/collapsible-more.js +87 -50
  275. package/dist/tabs/collapsible-tab.js +45 -38
  276. package/dist/tabs/collapsible-tabs.js +161 -94
  277. package/dist/tabs/custom-item.js +2 -4
  278. package/dist/tabs/dumb-tabs.js +122 -75
  279. package/dist/tabs/smart-tabs.js +75 -29
  280. package/dist/tabs/tab-link.js +29 -19
  281. package/dist/tabs/tab.js +33 -19
  282. package/dist/tabs/tabs.js +35 -0
  283. package/dist/tabs-ng/tabs-ng.js +38 -24
  284. package/dist/tabs-ng/tabs-ng__template.js +1 -38
  285. package/dist/tag/tag.js +170 -133
  286. package/dist/tags-input/tags-input.js +428 -327
  287. package/dist/tags-input-ng/tags-input-ng.js +37 -1
  288. package/dist/tags-list/tags-list.js +80 -56
  289. package/dist/template-ng/template-ng.js +50 -39
  290. package/dist/text/text.js +38 -28
  291. package/dist/title-ng/title-ng.js +28 -23
  292. package/dist/toggle/toggle.js +72 -56
  293. package/dist/toggle-ng/toggle-ng.js +14 -1
  294. package/dist/tooltip/tooltip.js +192 -146
  295. package/dist/tooltip-ng/tooltip-ng.js +51 -25
  296. package/dist/user-agreement/service.js +374 -227
  297. package/dist/user-agreement/toolbox.eula.js +1 -160
  298. package/dist/user-agreement/user-agreement.js +128 -86
  299. package/dist/user-card/card.js +32 -0
  300. package/dist/user-card/smart-user-card-tooltip.js +116 -51
  301. package/dist/user-card/tooltip.js +90 -48
  302. package/dist/user-card/user-card.js +32 -0
  303. package/dist/user-card-ng/user-card-ng.js +34 -2
  304. package/package.json +8 -8
@@ -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 };