@jetbrains/ring-ui-built 6.1.1-beta.0 → 7.0.0-beta.10

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 (351) hide show
  1. package/components/_helpers/_rollupPluginBabelHelpers.js +1 -504
  2. package/components/_helpers/anchor.js +7 -10
  3. package/components/_helpers/button__classes.js +23 -20
  4. package/components/_helpers/caption.js +11 -21
  5. package/components/_helpers/card.js +91 -123
  6. package/components/_helpers/dialog__body-scroll-preventer.js +10 -17
  7. package/components/_helpers/header.js +1 -1
  8. package/components/_helpers/icon__svg.js +27 -29
  9. package/components/_helpers/input.js +151 -193
  10. package/components/_helpers/query-assist__suggestions.js +79 -94
  11. package/components/_helpers/select__filter.js +56 -75
  12. package/components/_helpers/services-link.js +23 -39
  13. package/components/_helpers/sidebar.js +91 -102
  14. package/components/_helpers/tab-link.js +8 -12
  15. package/components/_helpers/table.js +1 -1
  16. package/components/_helpers/theme.js +61 -51
  17. package/components/_helpers/title.js +59 -84
  18. package/components/alert/alert.d.ts +7 -24
  19. package/components/alert/alert.js +111 -179
  20. package/components/alert/container.d.ts +0 -5
  21. package/components/alert/container.js +32 -44
  22. package/components/alert-service/alert-service.js +104 -162
  23. package/components/analytics/analytics.js +12 -20
  24. package/components/analytics/analytics__custom-plugin.js +52 -68
  25. package/components/auth/auth.js +2 -31
  26. package/components/auth/auth__core.d.ts +1 -1
  27. package/components/auth/auth__core.js +754 -1440
  28. package/components/auth/background-flow.js +84 -121
  29. package/components/auth/down-notification.js +32 -79
  30. package/components/auth/iframe-flow.js +71 -125
  31. package/components/auth/request-builder.js +46 -77
  32. package/components/auth/response-parser.js +84 -112
  33. package/components/auth/storage.js +162 -324
  34. package/components/auth/token-validator.js +132 -227
  35. package/components/auth/window-flow.js +84 -121
  36. package/components/auth-dialog/auth-dialog.d.ts +0 -18
  37. package/components/auth-dialog/auth-dialog.js +107 -176
  38. package/components/auth-dialog-service/auth-dialog-service.js +12 -33
  39. package/components/avatar/avatar-example-datauri.js +1 -1
  40. package/components/avatar/avatar.d.ts +0 -13
  41. package/components/avatar/avatar.js +94 -136
  42. package/components/avatar/fallback-avatar.d.ts +1 -10
  43. package/components/avatar/fallback-avatar.js +20 -40
  44. package/components/badge/badge.d.ts +0 -10
  45. package/components/badge/badge.js +32 -48
  46. package/components/breadcrumbs/breadcrumbs.js +13 -17
  47. package/components/button/button.d.ts +0 -21
  48. package/components/button/button.js +68 -104
  49. package/components/button/button__classes.d.ts +1 -1
  50. package/components/button-group/button-group.d.ts +0 -5
  51. package/components/button-group/button-group.js +27 -41
  52. package/components/button-group/caption.d.ts +0 -4
  53. package/components/button-group/caption.js +0 -1
  54. package/components/button-set/button-set.d.ts +0 -6
  55. package/components/button-set/button-set.js +19 -33
  56. package/components/button-toolbar/button-toolbar.d.ts +0 -6
  57. package/components/button-toolbar/button-toolbar.js +17 -31
  58. package/components/caret/caret.js +184 -211
  59. package/components/checkbox/checkbox.d.ts +0 -19
  60. package/components/checkbox/checkbox.js +69 -104
  61. package/components/clipboard/clipboard-fallback.js +7 -7
  62. package/components/clipboard/clipboard.js +36 -129
  63. package/components/code/code.d.ts +0 -12
  64. package/components/code/code.js +83 -163
  65. package/components/collapse/collapse-content.js +42 -60
  66. package/components/collapse/collapse-context.js +2 -2
  67. package/components/collapse/collapse-control.js +12 -12
  68. package/components/collapse/collapse.js +12 -17
  69. package/components/collapse/consts.js +4 -4
  70. package/components/collapse/utils.js +1 -3
  71. package/components/confirm/confirm.d.ts +0 -14
  72. package/components/confirm/confirm.js +68 -112
  73. package/components/confirm-service/confirm-service.js +25 -47
  74. package/components/content-layout/content-layout.d.ts +0 -7
  75. package/components/content-layout/content-layout.js +41 -63
  76. package/components/content-layout/sidebar.d.ts +0 -9
  77. package/components/content-layout/sidebar.js +1 -2
  78. package/components/contenteditable/contenteditable.d.ts +1 -22
  79. package/components/contenteditable/contenteditable.js +37 -60
  80. package/components/control-help/control-help.js +5 -3
  81. package/components/control-label/control-label.js +9 -14
  82. package/components/data-list/data-list.d.ts +4 -6
  83. package/components/data-list/data-list.js +115 -179
  84. package/components/data-list/data-list.mock.js +3 -6
  85. package/components/data-list/item.js +119 -165
  86. package/components/data-list/selection.js +77 -135
  87. package/components/data-list/title.d.ts +2 -2
  88. package/components/data-list/title.js +2 -12
  89. package/components/date-picker/consts.d.ts +0 -2
  90. package/components/date-picker/consts.js +16 -24
  91. package/components/date-picker/date-input.d.ts +0 -20
  92. package/components/date-picker/date-input.js +100 -148
  93. package/components/date-picker/date-picker.d.ts +0 -29
  94. package/components/date-picker/date-picker.js +143 -224
  95. package/components/date-picker/date-popup.d.ts +0 -22
  96. package/components/date-picker/date-popup.js +282 -352
  97. package/components/date-picker/day.d.ts +0 -14
  98. package/components/date-picker/day.js +72 -109
  99. package/components/date-picker/month-names.d.ts +1 -11
  100. package/components/date-picker/month-names.js +42 -72
  101. package/components/date-picker/month-slider.d.ts +0 -9
  102. package/components/date-picker/month-slider.js +43 -71
  103. package/components/date-picker/month.d.ts +1 -9
  104. package/components/date-picker/month.js +18 -30
  105. package/components/date-picker/months.d.ts +1 -9
  106. package/components/date-picker/months.js +45 -55
  107. package/components/date-picker/weekdays.d.ts +2 -8
  108. package/components/date-picker/weekdays.js +12 -25
  109. package/components/date-picker/years.d.ts +0 -6
  110. package/components/date-picker/years.js +77 -104
  111. package/components/dialog/dialog.d.ts +0 -20
  112. package/components/dialog/dialog.js +153 -210
  113. package/components/dialog/dialog__body-scroll-preventer.js +0 -3
  114. package/components/dropdown/anchor.d.ts +1 -8
  115. package/components/dropdown/anchor.js +0 -7
  116. package/components/dropdown/dropdown.d.ts +4 -22
  117. package/components/dropdown/dropdown.js +134 -176
  118. package/components/dropdown-menu/dropdown-menu.js +51 -103
  119. package/components/editable-heading/editable-heading.js +69 -118
  120. package/components/error-bubble/error-bubble.d.ts +0 -6
  121. package/components/error-bubble/error-bubble.js +30 -60
  122. package/components/error-message/error-message.d.ts +0 -10
  123. package/components/error-message/error-message.js +34 -59
  124. package/components/footer/footer.js +28 -44
  125. package/components/form/form.js +1 -1
  126. package/components/global/compose.js +1 -8
  127. package/components/global/composeRefs.d.ts +0 -3
  128. package/components/global/composeRefs.js +8 -15
  129. package/components/global/controls-height.js +2 -2
  130. package/components/global/create-stateful-context.d.ts +0 -4
  131. package/components/global/create-stateful-context.js +14 -17
  132. package/components/global/data-tests.js +7 -12
  133. package/components/global/dom.js +49 -82
  134. package/components/global/focus-sensor-hoc.js +95 -122
  135. package/components/global/fuzzy-highlight.js +23 -34
  136. package/components/global/get-event-key.js +8 -8
  137. package/components/global/get-uid.js +3 -7
  138. package/components/global/inject-styles.js +7 -14
  139. package/components/global/listeners.js +28 -47
  140. package/components/global/memoize.js +6 -10
  141. package/components/global/normalize-indent.js +19 -46
  142. package/components/global/promise-with-timeout.js +6 -8
  143. package/components/global/react-dom-renderer.d.ts +0 -5
  144. package/components/global/react-dom-renderer.js +29 -45
  145. package/components/global/rerender-hoc.d.ts +2 -2
  146. package/components/global/rerender-hoc.js +16 -32
  147. package/components/global/schedule-raf.js +4 -4
  148. package/components/global/sniffer.js +1 -1
  149. package/components/global/theme.d.ts +8 -2
  150. package/components/global/theme.js +2 -20
  151. package/components/global/trivial-template-tag.js +4 -9
  152. package/components/global/typescript-utils.js +2 -6
  153. package/components/global/url.js +20 -23
  154. package/components/global/use-event-callback.js +7 -4
  155. package/components/grid/col.d.ts +0 -14
  156. package/components/grid/col.js +27 -53
  157. package/components/grid/grid.d.ts +0 -5
  158. package/components/grid/grid.js +20 -32
  159. package/components/grid/row.d.ts +0 -18
  160. package/components/grid/row.js +23 -47
  161. package/components/group/group.d.ts +0 -5
  162. package/components/group/group.js +18 -27
  163. package/components/header/header-icon.d.ts +10 -0
  164. package/components/header/header-icon.js +39 -0
  165. package/components/header/header.d.ts +3 -7
  166. package/components/header/header.js +32 -74
  167. package/components/header/links.d.ts +2 -0
  168. package/components/header/links.js +20 -0
  169. package/components/header/logo.d.ts +0 -4
  170. package/components/header/logo.js +15 -30
  171. package/components/header/profile.d.ts +1 -39
  172. package/components/header/profile.js +126 -190
  173. package/components/header/services-link.d.ts +0 -10
  174. package/components/header/services-link.js +1 -4
  175. package/components/header/services.d.ts +0 -14
  176. package/components/header/services.js +67 -112
  177. package/components/header/smart-profile.d.ts +0 -9
  178. package/components/header/smart-profile.js +116 -205
  179. package/components/header/smart-services.d.ts +0 -4
  180. package/components/header/smart-services.js +73 -142
  181. package/components/header/tray.d.ts +0 -5
  182. package/components/header/tray.js +21 -35
  183. package/components/heading/heading.d.ts +1 -4
  184. package/components/heading/heading.js +25 -42
  185. package/components/http/http.js +162 -319
  186. package/components/http/http.mock.js +50 -98
  187. package/components/hub-source/hub-source.js +77 -182
  188. package/components/hub-source/hub-source__user.js +9 -37
  189. package/components/hub-source/hub-source__users-groups.js +34 -60
  190. package/components/i18n/i18n-context.js +7 -8
  191. package/components/i18n/i18n.js +3 -6
  192. package/components/icon/icon.d.ts +0 -11
  193. package/components/icon/icon.js +60 -85
  194. package/components/icon/icon__svg.d.ts +0 -8
  195. package/components/icon/icon__svg.js +0 -6
  196. package/components/icon/index.js +0 -6
  197. package/components/input/input-legacy.js +1 -1
  198. package/components/input/input.js +2 -14
  199. package/components/input-size/input-size.js +1 -1
  200. package/components/island/adaptive-island-hoc.d.ts +4 -5
  201. package/components/island/adaptive-island-hoc.js +30 -39
  202. package/components/island/content.d.ts +0 -10
  203. package/components/island/content.js +99 -119
  204. package/components/island/header.js +55 -73
  205. package/components/island/island.d.ts +4 -13
  206. package/components/island/island.js +25 -41
  207. package/components/island-legacy/content-legacy.d.ts +0 -5
  208. package/components/island-legacy/content-legacy.js +16 -27
  209. package/components/island-legacy/header-legacy.d.ts +0 -5
  210. package/components/island-legacy/header-legacy.js +19 -30
  211. package/components/island-legacy/island-legacy.d.ts +0 -5
  212. package/components/island-legacy/island-legacy.js +16 -27
  213. package/components/link/clickableLink.d.ts +0 -9
  214. package/components/link/clickableLink.js +33 -51
  215. package/components/link/link.d.ts +8 -33
  216. package/components/link/link.js +47 -68
  217. package/components/list/consts.js +2 -2
  218. package/components/list/list.d.ts +0 -32
  219. package/components/list/list.js +399 -516
  220. package/components/list/list__custom.js +51 -78
  221. package/components/list/list__hint.d.ts +0 -4
  222. package/components/list/list__hint.js +8 -21
  223. package/components/list/list__item.js +147 -211
  224. package/components/list/list__link.js +39 -59
  225. package/components/list/list__separator.js +15 -30
  226. package/components/list/list__title.js +25 -41
  227. package/components/list/list__users-groups-source.js +55 -123
  228. package/components/loader/loader.d.ts +0 -10
  229. package/components/loader/loader.js +38 -70
  230. package/components/loader/loader__core.js +123 -184
  231. package/components/loader-inline/loader-inline.d.ts +0 -6
  232. package/components/loader-inline/loader-inline.js +24 -38
  233. package/components/loader-screen/loader-screen.d.ts +0 -6
  234. package/components/loader-screen/loader-screen.js +24 -46
  235. package/components/login-dialog/login-dialog.d.ts +0 -11
  236. package/components/login-dialog/login-dialog.js +94 -145
  237. package/components/login-dialog/service.js +11 -33
  238. package/components/markdown/markdown.js +16 -29
  239. package/components/message/message.js +171 -218
  240. package/components/old-browsers-message/old-browsers-message.js +11 -14
  241. package/components/old-browsers-message/old-browsers-message__stop.js +1 -4
  242. package/components/old-browsers-message/white-list.js +8 -13
  243. package/components/pager/pager.d.ts +1 -0
  244. package/components/pager/pager.js +211 -275
  245. package/components/panel/panel.d.ts +0 -5
  246. package/components/panel/panel.js +16 -27
  247. package/components/permissions/permissions.js +118 -161
  248. package/components/permissions/permissions__cache.js +191 -218
  249. package/components/popup/popup.consts.js +1 -1
  250. package/components/popup/popup.js +237 -329
  251. package/components/popup/popup.target.js +9 -12
  252. package/components/popup/position.js +94 -101
  253. package/components/popup-menu/popup-menu.js +31 -76
  254. package/components/progress-bar/progress-bar.d.ts +19 -33
  255. package/components/progress-bar/progress-bar.js +55 -99
  256. package/components/query-assist/query-assist.d.ts +63 -93
  257. package/components/query-assist/query-assist.js +585 -748
  258. package/components/query-assist/query-assist__suggestions.js +2 -28
  259. package/components/radio/radio.d.ts +0 -8
  260. package/components/radio/radio.js +15 -35
  261. package/components/radio/radio__item.d.ts +0 -9
  262. package/components/radio/radio__item.js +52 -72
  263. package/components/scrollable-section/scrollable-section.d.ts +2 -0
  264. package/components/scrollable-section/scrollable-section.js +53 -0
  265. package/components/select/select.d.ts +3 -0
  266. package/components/select/select.js +714 -863
  267. package/components/select/select__filter.js +2 -29
  268. package/components/select/select__popup.js +317 -465
  269. package/components/shortcuts/core.js +147 -195
  270. package/components/shortcuts/shortcut-title.js +6 -10
  271. package/components/shortcuts/shortcuts-hoc.d.ts +4 -9
  272. package/components/shortcuts/shortcuts-hoc.js +23 -46
  273. package/components/shortcuts/shortcuts.d.ts +0 -8
  274. package/components/shortcuts/shortcuts.js +41 -72
  275. package/components/slider/slider.js +93 -113
  276. package/components/slider/slider.utils.js +16 -23
  277. package/components/storage/storage.d.ts +2 -3
  278. package/components/storage/storage.js +2 -46
  279. package/components/storage/storage__local.js +89 -148
  280. package/components/style.css +1 -1
  281. package/components/tab-trap/tab-trap.js +35 -61
  282. package/components/table/cell.d.ts +0 -6
  283. package/components/table/cell.js +11 -27
  284. package/components/table/disable-hover-hoc.d.ts +4 -5
  285. package/components/table/disable-hover-hoc.js +27 -42
  286. package/components/table/header-cell.d.ts +0 -10
  287. package/components/table/header-cell.js +59 -85
  288. package/components/table/header.d.ts +1 -23
  289. package/components/table/header.js +89 -126
  290. package/components/table/multitable.d.ts +0 -4
  291. package/components/table/multitable.js +83 -93
  292. package/components/table/row-with-focus-sensor.d.ts +2 -2
  293. package/components/table/row-with-focus-sensor.js +26 -60
  294. package/components/table/row.js +170 -235
  295. package/components/table/selection-adapter.js +2 -2
  296. package/components/table/selection-shortcuts-hoc.js +102 -126
  297. package/components/table/selection.js +150 -217
  298. package/components/table/simple-table.d.ts +17 -0
  299. package/components/table/simple-table.js +83 -0
  300. package/components/table/smart-table.d.ts +0 -46
  301. package/components/table/smart-table.js +41 -83
  302. package/components/table/table.d.ts +9 -6
  303. package/components/table/table.js +270 -372
  304. package/components/tabs/collapsible-more.d.ts +1 -9
  305. package/components/tabs/collapsible-more.js +47 -97
  306. package/components/tabs/collapsible-tab.js +32 -44
  307. package/components/tabs/collapsible-tabs.d.ts +2 -29
  308. package/components/tabs/collapsible-tabs.js +89 -161
  309. package/components/tabs/custom-item.d.ts +1 -7
  310. package/components/tabs/custom-item.js +4 -7
  311. package/components/tabs/dumb-tabs.d.ts +0 -11
  312. package/components/tabs/dumb-tabs.js +60 -104
  313. package/components/tabs/smart-tabs.d.ts +0 -6
  314. package/components/tabs/smart-tabs.js +29 -68
  315. package/components/tabs/tab-link.d.ts +0 -8
  316. package/components/tabs/tab-link.js +1 -4
  317. package/components/tabs/tab.d.ts +0 -8
  318. package/components/tabs/tab.js +14 -32
  319. package/components/tabs/tabs.js +1 -28
  320. package/components/tag/tag.d.ts +0 -19
  321. package/components/tag/tag.js +120 -179
  322. package/components/tags-input/tags-input.d.ts +7 -33
  323. package/components/tags-input/tags-input.js +224 -339
  324. package/components/tags-list/tags-list.d.ts +0 -13
  325. package/components/tags-list/tags-list.js +45 -74
  326. package/components/text/text.d.ts +0 -7
  327. package/components/text/text.js +27 -43
  328. package/components/toggle/toggle.d.ts +0 -15
  329. package/components/toggle/toggle.js +53 -78
  330. package/components/tooltip/tooltip.d.ts +4 -10
  331. package/components/tooltip/tooltip.js +105 -137
  332. package/components/user-agreement/service.d.ts +2 -1
  333. package/components/user-agreement/service.js +260 -405
  334. package/components/user-agreement/user-agreement.d.ts +0 -18
  335. package/components/user-agreement/user-agreement.js +92 -138
  336. package/components/user-card/card.d.ts +0 -35
  337. package/components/user-card/card.js +2 -27
  338. package/components/user-card/smart-user-card-tooltip.d.ts +0 -5
  339. package/components/user-card/smart-user-card-tooltip.js +52 -108
  340. package/components/user-card/tooltip.d.ts +0 -9
  341. package/components/user-card/tooltip.js +35 -74
  342. package/components/user-card/user-card.js +1 -26
  343. package/package.json +5 -7
  344. package/components/global/prop-types.d.ts +0 -4
  345. package/components/global/prop-types.js +0 -9
  346. package/components/global/react-render-adapter.d.ts +0 -1
  347. package/components/global/react-render-adapter.js +0 -6
  348. package/components/header/tray-icon.d.ts +0 -32
  349. package/components/header/tray-icon.js +0 -56
  350. package/components/storage/storage__fallback.d.ts +0 -79
  351. package/components/storage/storage__fallback.js +0 -253
@@ -1,33 +1,16 @@
1
- import { b as _createClass, j as _toConsumableArray, e as _classCallCheck, _ as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.filter.js';
3
- import 'core-js/modules/es.array.index-of.js';
4
- import 'core-js/modules/es.array.iterator.js';
5
- import 'core-js/modules/es.object.to-string.js';
6
- import 'core-js/modules/es.set.js';
1
+ import { _ as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
7
2
  import 'core-js/modules/web.dom-collections.iterator.js';
8
3
 
9
- var Selection = /*#__PURE__*/function () {
10
- function Selection() {
11
- var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
12
- _ref$data = _ref.data,
13
- data = _ref$data === void 0 ? [] : _ref$data,
14
- _ref$selected = _ref.selected,
15
- selected = _ref$selected === void 0 ? new Set() : _ref$selected,
16
- _ref$focused = _ref.focused,
17
- focused = _ref$focused === void 0 ? null : _ref$focused,
18
- _ref$getKey = _ref.getKey,
19
- getKey = _ref$getKey === void 0 ? function (item) {
20
- return item.id;
21
- } : _ref$getKey,
22
- _ref$getChildren = _ref.getChildren,
23
- getChildren = _ref$getChildren === void 0 ? function () {
24
- return [];
25
- } : _ref$getChildren,
26
- _ref$isItemSelectable = _ref.isItemSelectable,
27
- isItemSelectable = _ref$isItemSelectable === void 0 ? function () {
28
- return true;
29
- } : _ref$isItemSelectable;
30
- _classCallCheck(this, Selection);
4
+ let Selection$1 = class Selection {
5
+ constructor() {
6
+ let {
7
+ data = [],
8
+ selected = new Set(),
9
+ focused = null,
10
+ getKey = item => item.id,
11
+ getChildren = () => [],
12
+ isItemSelectable = () => true
13
+ } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
31
14
  _defineProperty(this, "_rawData", void 0);
32
15
  _defineProperty(this, "_getChildren", void 0);
33
16
  _defineProperty(this, "_data", void 0);
@@ -43,214 +26,164 @@ var Selection = /*#__PURE__*/function () {
43
26
  this._getKey = getKey;
44
27
  this._isItemSelectable = isItemSelectable;
45
28
  }
46
- return _createClass(Selection, [{
47
- key: "_buildData",
48
- value: function _buildData(data) {
49
- return new Set(data);
50
- }
51
- }, {
52
- key: "_buildSelected",
53
- value: function _buildSelected(data, selected) {
54
- return new Set(selected);
55
- }
56
- }, {
57
- key: "cloneWith",
58
- value: function cloneWith(_ref2) {
59
- var _this = this;
60
- var data = _ref2.data,
61
- selected = _ref2.selected,
62
- focused = _ref2.focused;
63
- var newData = data || this._rawData;
64
- var newSelected;
65
- if (data && !selected) {
66
- newSelected = new Set(_toConsumableArray(this._buildData(newData)).filter(function (item) {
67
- return _toConsumableArray(_this._selected).some(function (it) {
68
- return _this._getKey(item) === _this._getKey(it);
69
- });
70
- }));
71
- newSelected = this._buildSelected(this._buildData(newData), newSelected);
72
- } else if (selected) {
73
- newSelected = selected;
74
- } else {
75
- newSelected = this._selected;
76
- }
77
- newSelected = new Set(_toConsumableArray(newSelected).filter(function (item) {
78
- return _this._isItemSelectable(item);
79
- }));
80
- var cloneFocus = function cloneFocus() {
81
- return _toConsumableArray(_this._buildData(data)).filter(function (item) {
82
- return _this._focused && _this._getKey(item) === _this._getKey(_this._focused);
83
- })[0];
84
- };
85
- var newFocused = focused === undefined ? this._focused : focused;
86
- return new this.constructor({
87
- data: newData,
88
- selected: newSelected,
89
- focused: data && !focused ? cloneFocus() : newFocused,
90
- getKey: this._getKey,
91
- getChildren: this._getChildren,
92
- isItemSelectable: this._isItemSelectable
93
- });
94
- }
95
- }, {
96
- key: "focus",
97
- value: function focus(value) {
29
+ _buildData(data) {
30
+ return new Set(data);
31
+ }
32
+ _buildSelected(data, selected) {
33
+ return new Set(selected);
34
+ }
35
+ cloneWith(_ref) {
36
+ let {
37
+ data,
38
+ selected,
39
+ focused
40
+ } = _ref;
41
+ const newData = data || this._rawData;
42
+ let newSelected;
43
+ if (data && !selected) {
44
+ newSelected = new Set([...this._buildData(newData)].filter(item => [...this._selected].some(it => this._getKey(item) === this._getKey(it))));
45
+ newSelected = this._buildSelected(this._buildData(newData), newSelected);
46
+ } else if (selected) {
47
+ newSelected = selected;
48
+ } else {
49
+ newSelected = this._selected;
50
+ }
51
+ newSelected = new Set([...newSelected].filter(item => this._isItemSelectable(item)));
52
+ const cloneFocus = () => [...this._buildData(data)].filter(item => this._focused && this._getKey(item) === this._getKey(this._focused))[0];
53
+ const newFocused = focused === undefined ? this._focused : focused;
54
+ return new this.constructor({
55
+ data: newData,
56
+ selected: newSelected,
57
+ focused: data && !focused ? cloneFocus() : newFocused,
58
+ getKey: this._getKey,
59
+ getChildren: this._getChildren,
60
+ isItemSelectable: this._isItemSelectable
61
+ });
62
+ }
63
+ focus(value) {
64
+ return this.cloneWith({
65
+ focused: value
66
+ });
67
+ }
68
+ moveUp() {
69
+ const focused = this._focused;
70
+ const data = [...this._data];
71
+ if (!focused) {
98
72
  return this.cloneWith({
99
- focused: value
73
+ focused: data[data.length - 1]
100
74
  });
101
75
  }
102
- }, {
103
- key: "moveUp",
104
- value: function moveUp() {
105
- var focused = this._focused;
106
- var data = _toConsumableArray(this._data);
107
- if (!focused) {
108
- return this.cloneWith({
109
- focused: data[data.length - 1]
110
- });
111
- }
112
- var nextItem = data[data.indexOf(focused) - 1];
113
- if (nextItem) {
114
- return this.cloneWith({
115
- focused: nextItem
116
- });
117
- }
118
- return undefined;
119
- }
120
- }, {
121
- key: "moveDown",
122
- value: function moveDown() {
123
- var focused = this._focused;
124
- var data = _toConsumableArray(this._data);
125
- if (!focused) {
126
- return this.cloneWith({
127
- focused: data[0]
128
- });
129
- }
130
- var nextItem = data[data.indexOf(focused) + 1];
131
- if (nextItem) {
132
- return this.cloneWith({
133
- focused: nextItem
134
- });
135
- }
136
- return undefined;
137
- }
138
- }, {
139
- key: "moveStart",
140
- value: function moveStart() {
141
- var data = _toConsumableArray(this._data);
142
- if (data.length) {
143
- return this.cloneWith({
144
- focused: data[0]
145
- });
146
- }
147
- return undefined;
148
- }
149
- }, {
150
- key: "moveEnd",
151
- value: function moveEnd() {
152
- var data = _toConsumableArray(this._data);
153
- if (data.length) {
154
- return this.cloneWith({
155
- focused: data.pop()
156
- });
157
- }
158
- return undefined;
159
- }
160
- }, {
161
- key: "select",
162
- value: function select() {
163
- var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
164
- if (!value || !this._isItemSelectable(value)) {
165
- return this;
166
- }
167
- var selected = new Set(this._selected);
168
- selected.add(value);
76
+ const nextItem = data[data.indexOf(focused) - 1];
77
+ if (nextItem) {
169
78
  return this.cloneWith({
170
- selected
79
+ focused: nextItem
171
80
  });
172
81
  }
173
- }, {
174
- key: "deselect",
175
- value: function deselect() {
176
- var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
177
- if (!value || !this._isItemSelectable(value)) {
178
- return this;
179
- }
180
- var selected = new Set(this._selected);
181
- selected.delete(value);
82
+ return undefined;
83
+ }
84
+ moveDown() {
85
+ const focused = this._focused;
86
+ const data = [...this._data];
87
+ if (!focused) {
182
88
  return this.cloneWith({
183
- selected
89
+ focused: data[0]
184
90
  });
185
91
  }
186
- }, {
187
- key: "toggleSelection",
188
- value: function toggleSelection() {
189
- var value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
190
- if (this.isSelected(value)) {
191
- return this.deselect(value);
192
- } else {
193
- return this.select(value);
194
- }
195
- }
196
- }, {
197
- key: "selectAll",
198
- value: function selectAll() {
92
+ const nextItem = data[data.indexOf(focused) + 1];
93
+ if (nextItem) {
199
94
  return this.cloneWith({
200
- selected: _toConsumableArray(this._data)
95
+ focused: nextItem
201
96
  });
202
97
  }
203
- }, {
204
- key: "resetFocus",
205
- value: function resetFocus() {
98
+ return undefined;
99
+ }
100
+ moveStart() {
101
+ const data = [...this._data];
102
+ if (data.length) {
206
103
  return this.cloneWith({
207
- focused: null
104
+ focused: data[0]
208
105
  });
209
106
  }
210
- }, {
211
- key: "resetSelection",
212
- value: function resetSelection() {
107
+ return undefined;
108
+ }
109
+ moveEnd() {
110
+ const data = [...this._data];
111
+ if (data.length) {
213
112
  return this.cloneWith({
214
- selected: new Set()
113
+ focused: data.pop()
215
114
  });
216
115
  }
217
- }, {
218
- key: "reset",
219
- value: function reset() {
220
- return this.resetFocus().resetSelection();
221
- }
222
- }, {
223
- key: "isFocused",
224
- value: function isFocused(value) {
225
- return this._focused === value;
226
- }
227
- }, {
228
- key: "isSelected",
229
- value: function isSelected(value) {
230
- return value != null && this._selected.has(value);
231
- }
232
- }, {
233
- key: "getFocused",
234
- value: function getFocused() {
235
- return this._focused;
116
+ return undefined;
117
+ }
118
+ select() {
119
+ let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
120
+ if (!value || !this._isItemSelectable(value)) {
121
+ return this;
122
+ }
123
+ const selected = new Set(this._selected);
124
+ selected.add(value);
125
+ return this.cloneWith({
126
+ selected
127
+ });
128
+ }
129
+ deselect() {
130
+ let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
131
+ if (!value || !this._isItemSelectable(value)) {
132
+ return this;
133
+ }
134
+ const selected = new Set(this._selected);
135
+ selected.delete(value);
136
+ return this.cloneWith({
137
+ selected
138
+ });
139
+ }
140
+ toggleSelection() {
141
+ let value = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : this._focused;
142
+ if (this.isSelected(value)) {
143
+ return this.deselect(value);
144
+ } else {
145
+ return this.select(value);
236
146
  }
237
- }, {
238
- key: "getSelected",
239
- value: function getSelected() {
147
+ }
148
+ selectAll() {
149
+ return this.cloneWith({
150
+ selected: [...this._data]
151
+ });
152
+ }
153
+ resetFocus() {
154
+ return this.cloneWith({
155
+ focused: null
156
+ });
157
+ }
158
+ resetSelection() {
159
+ return this.cloneWith({
160
+ selected: new Set()
161
+ });
162
+ }
163
+ reset() {
164
+ return this.resetFocus().resetSelection();
165
+ }
166
+ isFocused(value) {
167
+ return this._focused === value;
168
+ }
169
+ isSelected(value) {
170
+ return value != null && this._selected.has(value);
171
+ }
172
+ getFocused() {
173
+ return this._focused;
174
+ }
175
+ getSelected() {
176
+ return new Set(this._selected);
177
+ }
178
+ getActive() {
179
+ if (this._selected.size) {
240
180
  return new Set(this._selected);
181
+ } else if (this._focused) {
182
+ return new Set([this._focused]);
183
+ } else {
184
+ return new Set();
241
185
  }
242
- }, {
243
- key: "getActive",
244
- value: function getActive() {
245
- if (this._selected.size) {
246
- return new Set(this._selected);
247
- } else if (this._focused) {
248
- return new Set([this._focused]);
249
- } else {
250
- return new Set();
251
- }
252
- }
253
- }]);
254
- }();
186
+ }
187
+ };
255
188
 
256
- export { Selection as default };
189
+ export { Selection$1 as default };
@@ -0,0 +1,17 @@
1
+ import { PureComponent } from 'react';
2
+ import { TableAttrs } from './table';
3
+ import Selection, { SelectionItem } from './selection';
4
+ export interface SimpleTableProps<T extends SelectionItem> extends Omit<TableAttrs<T>, 'selection' | 'onSelect' | 'selectable'> {
5
+ }
6
+ declare class SimpleTable<T extends SelectionItem> extends PureComponent<SimpleTableProps<T>> {
7
+ static defaultProps: {
8
+ selectable: boolean;
9
+ wideFirstColumn: boolean;
10
+ };
11
+ state: {
12
+ selection: Selection<T>;
13
+ };
14
+ classes: string;
15
+ render(): import("react").JSX.Element;
16
+ }
17
+ export default SimpleTable;
@@ -0,0 +1,83 @@
1
+ import { _ as _defineProperty, b as _objectSpread2 } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/web.dom-collections.iterator.js';
3
+ import { PureComponent } from 'react';
4
+ import classNames from 'classnames';
5
+ import { m as modules_1db4bbca } from '../_helpers/table.js';
6
+ import TableContainer from './table.js';
7
+ import Selection$1 from './selection.js';
8
+ import { jsx } from 'react/jsx-runtime';
9
+ import 'react-movable';
10
+ import '../global/focus-sensor-hoc.js';
11
+ import '../global/composeRefs.js';
12
+ import 'memoize-one';
13
+ import '../global/get-uid.js';
14
+ import '../shortcuts/shortcuts.js';
15
+ import '../shortcuts/core.js';
16
+ import 'core-js/modules/es.regexp.exec.js';
17
+ import 'combokeys';
18
+ import '../global/sniffer.js';
19
+ import 'sniffr';
20
+ import '../loader/loader.js';
21
+ import '../global/data-tests.js';
22
+ import 'core-js/modules/es.array.reduce.js';
23
+ import '../loader/loader__core.js';
24
+ import '../global/dom.js';
25
+ import './header.js';
26
+ import '../checkbox/checkbox.js';
27
+ import '@jetbrains/icons/checkmark-12px';
28
+ import '@jetbrains/icons/remove-12px';
29
+ import '../icon/icon.js';
30
+ import 'util-deprecate';
31
+ import '../icon/icon__constants.js';
32
+ import '../_helpers/icon__svg.js';
33
+ import 'core-js/modules/es.string.replace.js';
34
+ import '../global/memoize.js';
35
+ import '../control-help/control-help.js';
36
+ import './header-cell.js';
37
+ import '@jetbrains/icons/unsorted-10px';
38
+ import '@jetbrains/icons/chevron-10px';
39
+ import './selection-shortcuts-hoc.js';
40
+ import './disable-hover-hoc.js';
41
+ import './row-with-focus-sensor.js';
42
+ import './row.js';
43
+ import '@jetbrains/icons/chevron-right';
44
+ import '@jetbrains/icons/chevron-down';
45
+ import '@jetbrains/icons/drag';
46
+ import '../button/button.js';
47
+ import '../link/clickableLink.js';
48
+ import '../global/controls-height.js';
49
+ import '../_helpers/button__classes.js';
50
+ import '../tooltip/tooltip.js';
51
+ import '../popup/popup.js';
52
+ import 'react-dom';
53
+ import '../global/schedule-raf.js';
54
+ import '../tab-trap/tab-trap.js';
55
+ import '../popup/position.js';
56
+ import 'core-js/modules/es.array.sort.js';
57
+ import '../popup/popup.consts.js';
58
+ import '../popup/popup.target.js';
59
+ import '../_helpers/theme.js';
60
+ import './cell.js';
61
+
62
+ class SimpleTable extends PureComponent {
63
+ constructor() {
64
+ super(...arguments);
65
+ _defineProperty(this, "state", {
66
+ selection: new Selection$1({
67
+ data: this.props.data
68
+ })
69
+ });
70
+ _defineProperty(this, "classes", classNames(modules_1db4bbca.disabledHover, this.props.className));
71
+ }
72
+ render() {
73
+ return /*#__PURE__*/jsx(TableContainer, _objectSpread2(_objectSpread2({}, this.props), {}, {
74
+ className: this.classes
75
+ }, this.state));
76
+ }
77
+ }
78
+ _defineProperty(SimpleTable, "defaultProps", {
79
+ selectable: false,
80
+ wideFirstColumn: false
81
+ });
82
+
83
+ export { SimpleTable as default };
@@ -1,5 +1,4 @@
1
1
  import { PureComponent } from 'react';
2
- import PropTypes from 'prop-types';
3
2
  import { TableAttrs } from './table';
4
3
  import Selection, { SelectionItem } from './selection';
5
4
  export interface SmartTableProps<T extends SelectionItem> extends Omit<TableAttrs<T>, 'selection' | 'onSelect'> {
@@ -7,51 +6,6 @@ export interface SmartTableProps<T extends SelectionItem> extends Omit<TableAttr
7
6
  selection?: Selection<T>;
8
7
  }
9
8
  declare class SmartTable<T extends SelectionItem> extends PureComponent<SmartTableProps<T>> {
10
- static propTypes: {
11
- className?: import("react").Validator<string | null | undefined> | undefined;
12
- onFocus?: import("react").Validator<(() => void) | null | undefined> | undefined;
13
- onBlur?: import("react").Validator<(() => void) | null | undefined> | undefined;
14
- caption?: import("react").Validator<string | null | undefined> | undefined;
15
- data?: import("react").Validator<readonly SelectionItem[]> | undefined;
16
- loading?: import("react").Validator<boolean | null | undefined> | undefined;
17
- draggable?: import("react").Validator<boolean | null | undefined> | undefined;
18
- columns?: import("react").Validator<readonly import("./header-cell").Column<SelectionItem>[] | ((item: SelectionItem | null) => readonly import("./header-cell").Column<SelectionItem>[])> | undefined;
19
- focused?: import("react").Validator<boolean | null | undefined> | undefined;
20
- isItemSelectable: PropTypes.Requireable<(...args: any[]) => any> | import("react").Validator<((item: SelectionItem) => boolean) | null | undefined>;
21
- innerRef?: import("react").Validator<import("react").Ref<HTMLTableRowElement> | undefined> | undefined;
22
- autofocus?: import("react").Validator<boolean | null | undefined> | undefined;
23
- scrollOnTableFocus?: import("react").Validator<boolean | null | undefined> | undefined;
24
- disabledHover?: import("react").Validator<boolean> | undefined;
25
- remoteSelection?: import("react").Validator<boolean | null | undefined> | undefined;
26
- onSort?: import("react").Validator<((params: import("./header-cell").SortParams) => void) | null | undefined> | undefined;
27
- sortKey?: import("react").Validator<string | null | undefined> | undefined;
28
- sortOrder?: import("react").Validator<boolean | null | undefined> | undefined;
29
- maxColSpan?: import("react").Validator<number | null | undefined> | undefined;
30
- alwaysShowDragHandle?: import("react").Validator<boolean | null | undefined> | undefined;
31
- dragHandleTitle?: import("react").Validator<string | null | undefined> | undefined;
32
- onReorder?: import("react").Validator<((params: import("./table").ReorderParams<SelectionItem>) => void) | null | undefined> | undefined;
33
- getItemKey?: import("react").Validator<((item: SelectionItem) => string | number) | null | undefined> | undefined;
34
- stickyHeader?: import("react").Validator<boolean | null | undefined> | undefined;
35
- getItemLevel?: import("react").Validator<((item: SelectionItem) => number) | null | undefined> | undefined;
36
- getItemClassName?: import("react").Validator<((item: SelectionItem) => string | null | undefined) | null | undefined> | undefined;
37
- getMetaColumnClassName?: import("react").Validator<((item: SelectionItem) => string | null | undefined) | null | undefined> | undefined;
38
- getItemDataTest?: import("react").Validator<((item: SelectionItem) => string | null | undefined) | null | undefined> | undefined;
39
- isItemCollapsible?: import("react").Validator<((item: SelectionItem) => boolean) | null | undefined> | undefined;
40
- isParentCollapsible?: import("react").Validator<((item: SelectionItem) => boolean) | null | undefined> | undefined;
41
- isItemCollapsed?: import("react").Validator<((item: SelectionItem) => boolean) | null | undefined> | undefined;
42
- onItemCollapse?: import("react").Validator<((item: SelectionItem) => void) | null | undefined> | undefined;
43
- onItemExpand?: import("react").Validator<((item: SelectionItem) => void) | null | undefined> | undefined;
44
- onItemDoubleClick?: import("react").Validator<((item: SelectionItem) => void) | null | undefined> | undefined;
45
- onItemClick?: import("react").Validator<((item: SelectionItem, e: import("react").MouseEvent<HTMLTableRowElement>) => void) | null | undefined> | undefined;
46
- isDisabledSelectionVisible?: import("react").Validator<((item: SelectionItem) => boolean) | null | undefined> | undefined;
47
- getCheckboxTooltip?: import("react").Validator<((item: SelectionItem) => string | undefined) | null | undefined> | undefined;
48
- loaderClassName?: import("react").Validator<string | null | undefined> | undefined;
49
- stickyHeaderOffset?: import("react").Validator<string | null | undefined> | undefined;
50
- renderEmpty?: import("react").Validator<(() => import("react").ReactNode) | null | undefined> | undefined;
51
- selectable?: import("react").Validator<boolean | null | undefined> | undefined;
52
- shortcuts?: import("react").Validator<import("../shortcuts/core").ShortcutsMap | null | undefined> | undefined;
53
- onSelectionChange: PropTypes.Requireable<(...args: any[]) => any>;
54
- };
55
9
  static defaultProps: {
56
10
  onSelectionChange: () => void;
57
11
  };