@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,48 +1,29 @@
1
- import { i as _slicedToArray, j as _toConsumableArray } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.filter.js';
3
- import 'core-js/modules/es.array.find.js';
4
- import 'core-js/modules/es.array.find-index.js';
5
- import 'core-js/modules/es.array.map.js';
6
1
  import 'core-js/modules/es.array.reduce.js';
7
- import 'core-js/modules/es.array.slice.js';
8
- import 'core-js/modules/es.object.to-string.js';
9
2
  import 'core-js/modules/es.regexp.exec.js';
10
3
  import 'core-js/modules/es.string.replace.js';
11
- import 'core-js/modules/web.dom-collections.for-each.js';
4
+ import 'core-js/modules/web.dom-collections.iterator.js';
12
5
  import { memo, useState, useRef, useMemo, useCallback, useEffect } from 'react';
13
- import PropTypes from 'prop-types';
14
6
  import classNames from 'classnames';
15
7
  import fastdom from 'fastdom';
16
8
  import { m as modules_02138f4a } from '../_helpers/tab-link.js';
17
9
  import { MoreButton, FakeMoreButton } from './collapsible-more.js';
18
10
  import getTabTitles from './collapsible-tab.js';
19
11
  import { jsxs, jsx } from 'react/jsx-runtime';
12
+ import '../_helpers/_rollupPluginBabelHelpers.js';
20
13
  import '../link/link.js';
21
14
  import '../global/data-tests.js';
22
- import 'core-js/modules/es.array.concat.js';
23
- import 'core-js/modules/es.object.entries.js';
24
15
  import '../link/clickableLink.js';
25
16
  import '../_helpers/link.js';
26
17
  import '@jetbrains/icons/chevron-10px';
27
18
  import '../popup/popup.consts.js';
28
19
  import '../popup-menu/popup-menu.js';
29
20
  import '../popup/popup.js';
30
- import 'core-js/modules/es.regexp.to-string.js';
31
21
  import 'react-dom';
32
22
  import '../global/get-uid.js';
33
23
  import '../global/schedule-raf.js';
34
24
  import '../global/dom.js';
35
- import 'core-js/modules/es.array.iterator.js';
36
- import 'core-js/modules/es.object.assign.js';
37
- import 'core-js/modules/es.set.js';
38
- import 'core-js/modules/es.string.split.js';
39
- import 'core-js/modules/web.dom-collections.iterator.js';
40
25
  import '../shortcuts/shortcuts.js';
41
26
  import '../shortcuts/core.js';
42
- import 'core-js/modules/es.array.includes.js';
43
- import 'core-js/modules/es.array.splice.js';
44
- import 'core-js/modules/es.string.includes.js';
45
- import 'core-js/modules/es.string.match.js';
46
27
  import 'combokeys';
47
28
  import '../global/sniffer.js';
48
29
  import 'sniffr';
@@ -51,7 +32,6 @@ import '../popup/position.js';
51
32
  import 'core-js/modules/es.array.sort.js';
52
33
  import '../popup/popup.target.js';
53
34
  import '../list/list.js';
54
- import 'core-js/modules/es.symbol.js';
55
35
  import 'core-js/modules/es.symbol.description.js';
56
36
  import 'react-virtualized/dist/es/List';
57
37
  import 'react-virtualized/dist/es/AutoSizer';
@@ -60,25 +40,19 @@ import 'react-virtualized/dist/es/CellMeasurer';
60
40
  import 'util-deprecate';
61
41
  import 'memoize-one';
62
42
  import '../global/memoize.js';
63
- import 'core-js/modules/es.map.js';
64
- import 'core-js/modules/es.weak-map.js';
65
43
  import '../global/create-stateful-context.js';
66
44
  import '../list/list__link.js';
67
45
  import '../_helpers/list.js';
68
46
  import '../list/list__item.js';
69
- import 'core-js/modules/es.array.index-of.js';
70
47
  import '../avatar/avatar.js';
71
48
  import '../global/url.js';
72
49
  import '../avatar/fallback-avatar.js';
73
- import 'core-js/modules/es.array.from.js';
74
50
  import '../checkbox/checkbox.js';
75
51
  import '@jetbrains/icons/checkmark-12px';
76
52
  import '@jetbrains/icons/remove-12px';
77
53
  import '../icon/icon.js';
78
54
  import '../icon/icon__constants.js';
79
55
  import '../_helpers/icon__svg.js';
80
- import 'core-js/modules/es.string.starts-with.js';
81
- import '../global/prop-types.js';
82
56
  import '../global/composeRefs.js';
83
57
  import '../control-help/control-help.js';
84
58
  import '../list/list__custom.js';
@@ -96,57 +70,44 @@ import '../global/controls-height.js';
96
70
  import '../_helpers/button__classes.js';
97
71
  import './custom-item.js';
98
72
 
99
- var DEFAULT_DEBOUNCE_INTERVAL = 100;
100
- var MEASURE_TOLERANCE = 0.5;
101
- var CollapsibleTabs = function CollapsibleTabs(_ref) {
102
- var children = _ref.children,
103
- selected = _ref.selected,
104
- onSelect = _ref.onSelect,
105
- moreClassName = _ref.moreClassName,
106
- moreActiveClassName = _ref.moreActiveClassName,
107
- morePopupClassName = _ref.morePopupClassName,
108
- morePopupBeforeEnd = _ref.morePopupBeforeEnd,
109
- morePopupItemClassName = _ref.morePopupItemClassName,
110
- initialVisibleItems = _ref.initialVisibleItems;
111
- var _useState = useState({
112
- tabs: [],
113
- more: undefined
114
- }),
115
- _useState2 = _slicedToArray(_useState, 2),
116
- sizes = _useState2[0],
117
- setSizes = _useState2[1];
118
- var _useState3 = useState(null),
119
- _useState4 = _slicedToArray(_useState3, 2),
120
- lastVisibleIndex = _useState4[0],
121
- setLastVisibleIndex = _useState4[1];
122
- var elements = {
73
+ const DEFAULT_DEBOUNCE_INTERVAL = 100;
74
+ const MEASURE_TOLERANCE = 0.5;
75
+ const CollapsibleTabs = _ref => {
76
+ let {
77
+ children,
78
+ selected,
79
+ onSelect,
80
+ moreClassName,
81
+ moreActiveClassName,
82
+ morePopupClassName,
83
+ morePopupBeforeEnd,
84
+ morePopupItemClassName,
85
+ initialVisibleItems
86
+ } = _ref;
87
+ const [sizes, setSizes] = useState({
88
+ tabs: [],
89
+ more: undefined
90
+ });
91
+ const [lastVisibleIndex, setLastVisibleIndex] = useState(null);
92
+ const elements = {
123
93
  sizes,
124
94
  lastVisibleIndex
125
95
  };
126
- var _useState5 = useState({
127
- visible: [],
128
- hidden: []
129
- }),
130
- _useState6 = _slicedToArray(_useState5, 2),
131
- preparedElements = _useState6[0],
132
- setPreparedElements = _useState6[1];
133
- var measureRef = useRef(null);
134
- var selectedIndex = useMemo(function () {
96
+ const [preparedElements, setPreparedElements] = useState({
97
+ visible: [],
98
+ hidden: []
99
+ });
100
+ const measureRef = useRef(null);
101
+ const selectedIndex = useMemo(() => {
135
102
  var _children$filter$find;
136
- return (_children$filter$find = children.filter(function (tab) {
137
- return tab.props.alwaysHidden !== true;
138
- }).findIndex(function (tab) {
139
- return tab.props.id === selected;
140
- })) !== null && _children$filter$find !== void 0 ? _children$filter$find : null;
103
+ return (_children$filter$find = children.filter(tab => tab.props.alwaysHidden !== true).findIndex(tab => tab.props.id === selected)) !== null && _children$filter$find !== void 0 ? _children$filter$find : null;
141
104
  }, [children, selected]);
142
- var visibleElements = useMemo(function () {
143
- var items;
105
+ const visibleElements = useMemo(() => {
106
+ let items;
144
107
  if (preparedElements.ready) {
145
108
  items = preparedElements.visible;
146
109
  } else {
147
- items = initialVisibleItems ? children.filter(function (item) {
148
- return item.props.alwaysHidden !== true;
149
- }).slice(0, initialVisibleItems) : [];
110
+ items = initialVisibleItems ? children.filter(item => item.props.alwaysHidden !== true).slice(0, initialVisibleItems) : [];
150
111
  }
151
112
  return getTabTitles({
152
113
  items,
@@ -154,18 +115,16 @@ var CollapsibleTabs = function CollapsibleTabs(_ref) {
154
115
  onSelect
155
116
  });
156
117
  }, [initialVisibleItems, children, preparedElements.ready, preparedElements.visible, onSelect, selected]);
157
- var adjustTabs = useCallback(function (entry) {
158
- var containerWidth = entry.contentRect.width;
159
- var _elements$sizes = elements.sizes,
160
- tabsSizes = _elements$sizes.tabs,
161
- _elements$sizes$more = _elements$sizes.more,
162
- more = _elements$sizes$more === void 0 ? 0 : _elements$sizes$more;
163
- var renderMore = children.some(function (tab) {
164
- return tab.props.alwaysHidden;
165
- });
166
- var tabsToRender = [];
167
- var filledWidth = renderMore ? more !== null && more !== void 0 ? more : 0 : 0;
168
- for (var i = 0; i < tabsSizes.length; i++) {
118
+ const adjustTabs = useCallback(entry => {
119
+ const containerWidth = entry.contentRect.width;
120
+ const {
121
+ tabs: tabsSizes,
122
+ more = 0
123
+ } = elements.sizes;
124
+ let renderMore = children.some(tab => tab.props.alwaysHidden);
125
+ const tabsToRender = [];
126
+ let filledWidth = renderMore ? more !== null && more !== void 0 ? more : 0 : 0;
127
+ for (let i = 0; i < tabsSizes.length; i++) {
169
128
  if (filledWidth + tabsSizes[i] < containerWidth + MEASURE_TOLERANCE) {
170
129
  filledWidth += tabsSizes[i];
171
130
  tabsToRender.push(tabsSizes[i]);
@@ -174,25 +133,25 @@ var CollapsibleTabs = function CollapsibleTabs(_ref) {
174
133
  }
175
134
  }
176
135
  if (tabsToRender.length < tabsSizes.length && !renderMore) {
177
- for (var _i = tabsToRender.length - 1; _i >= 0; _i--) {
136
+ for (let i = tabsToRender.length - 1; i >= 0; i--) {
178
137
  if (filledWidth + more < containerWidth + MEASURE_TOLERANCE) {
179
138
  filledWidth += more;
180
139
  renderMore = true;
181
140
  break;
182
141
  } else {
183
- filledWidth -= tabsToRender[_i];
142
+ filledWidth -= tabsToRender[i];
184
143
  tabsToRender.pop();
185
144
  }
186
145
  }
187
146
  }
188
147
  if (selectedIndex > tabsToRender.length - 1) {
189
- var selectedWidth = tabsSizes[selectedIndex];
190
- for (var _i2 = tabsToRender.length - 1; _i2 >= 0; _i2--) {
148
+ const selectedWidth = tabsSizes[selectedIndex];
149
+ for (let i = tabsToRender.length - 1; i >= 0; i--) {
191
150
  if (filledWidth + selectedWidth < containerWidth + MEASURE_TOLERANCE) {
192
151
  filledWidth += selectedWidth;
193
152
  break;
194
153
  } else {
195
- filledWidth -= tabsToRender[_i2];
154
+ filledWidth -= tabsToRender[i];
196
155
  tabsToRender.pop();
197
156
  }
198
157
  }
@@ -202,10 +161,10 @@ var CollapsibleTabs = function CollapsibleTabs(_ref) {
202
161
  }
203
162
  }, [children, elements.lastVisibleIndex, elements.sizes, selectedIndex]);
204
163
  // Prepare list of visible and hidden elements
205
- useEffect(function () {
206
- var timeout = setTimeout(function () {
164
+ useEffect(() => {
165
+ const timeout = setTimeout(() => {
207
166
  var _elements$lastVisible2;
208
- var res = children.reduce(function (accumulator, tab) {
167
+ const res = children.reduce((accumulator, tab) => {
209
168
  var _elements$lastVisible;
210
169
  if (tab.props.alwaysHidden !== true && accumulator.visible.length - 1 < ((_elements$lastVisible = elements.lastVisibleIndex) !== null && _elements$lastVisible !== void 0 ? _elements$lastVisible : 0)) {
211
170
  accumulator.visible.push(tab);
@@ -219,104 +178,86 @@ var CollapsibleTabs = function CollapsibleTabs(_ref) {
219
178
  ready: elements.lastVisibleIndex !== null
220
179
  });
221
180
  if (selectedIndex > ((_elements$lastVisible2 = elements.lastVisibleIndex) !== null && _elements$lastVisible2 !== void 0 ? _elements$lastVisible2 : 0)) {
222
- var selectedItem = children.find(function (tab) {
223
- return !tab.props.alwaysHidden && tab.props.id === selected;
224
- });
181
+ const selectedItem = children.find(tab => !tab.props.alwaysHidden && tab.props.id === selected);
225
182
  if (selectedItem != null) {
226
183
  res.visible.push(selectedItem);
227
184
  }
228
185
  }
229
- var allVisibleTheSame = res.visible.length === preparedElements.visible.length && res.visible.every(function (item, index) {
230
- return item === preparedElements.visible[index];
231
- });
232
- var allHiddenTheSame = res.hidden.length === preparedElements.hidden.length && res.hidden.every(function (item, index) {
233
- return item === preparedElements.hidden[index];
234
- });
186
+ const allVisibleTheSame = res.visible.length === preparedElements.visible.length && res.visible.every((item, index) => item === preparedElements.visible[index]);
187
+ const allHiddenTheSame = res.hidden.length === preparedElements.hidden.length && res.hidden.every((item, index) => item === preparedElements.hidden[index]);
235
188
  if (!allVisibleTheSame || !allHiddenTheSame || preparedElements.ready !== res.ready) {
236
- fastdom.mutate(function () {
237
- return setPreparedElements(res);
238
- });
189
+ fastdom.mutate(() => setPreparedElements(res));
239
190
  }
240
191
  }, DEFAULT_DEBOUNCE_INTERVAL);
241
- return function () {
192
+ return () => {
242
193
  clearTimeout(timeout);
243
194
  };
244
195
  }, [children, elements.lastVisibleIndex, preparedElements, selected, selectedIndex]);
245
196
  // Get list of all possibly visible elements to render in a measure container
246
- var childrenToMeasure = useMemo(function () {
247
- var items = children.filter(function (tab) {
248
- return tab.props.alwaysHidden !== true;
249
- });
197
+ const childrenToMeasure = useMemo(() => {
198
+ const items = children.filter(tab => tab.props.alwaysHidden !== true);
250
199
  return getTabTitles({
251
200
  items,
252
201
  tabIndex: -1
253
202
  });
254
203
  }, [children]);
255
204
  // Initial measure for tabs and more button sizes
256
- useEffect(function () {
205
+ useEffect(() => {
257
206
  if (measureRef.current == null) {
258
207
  return undefined;
259
208
  }
260
- var measureTask = fastdom.measure(function () {
209
+ const measureTask = fastdom.measure(() => {
261
210
  var _container$children, _moreButton$offsetWid;
262
- var container = measureRef.current;
263
- var descendants = _toConsumableArray((_container$children = container === null || container === void 0 ? void 0 : container.children) !== null && _container$children !== void 0 ? _container$children : []);
264
- var moreButton = descendants.pop();
265
- var moreButtonWidth = (_moreButton$offsetWid = moreButton === null || moreButton === void 0 ? void 0 : moreButton.offsetWidth) !== null && _moreButton$offsetWid !== void 0 ? _moreButton$offsetWid : 0;
266
- var _ref2 = moreButton ? getComputedStyle(moreButton) : {},
267
- _ref2$marginLeft = _ref2.marginLeft,
268
- moreButtonMarginLeft = _ref2$marginLeft === void 0 ? '0' : _ref2$marginLeft,
269
- _ref2$marginRight = _ref2.marginRight,
270
- moreButtonMarginRight = _ref2$marginRight === void 0 ? '0' : _ref2$marginRight;
211
+ const container = measureRef.current;
212
+ const descendants = [...((_container$children = container === null || container === void 0 ? void 0 : container.children) !== null && _container$children !== void 0 ? _container$children : [])];
213
+ const moreButton = descendants.pop();
214
+ let moreButtonWidth = (_moreButton$offsetWid = moreButton === null || moreButton === void 0 ? void 0 : moreButton.offsetWidth) !== null && _moreButton$offsetWid !== void 0 ? _moreButton$offsetWid : 0;
215
+ const {
216
+ marginLeft: moreButtonMarginLeft = '0',
217
+ marginRight: moreButtonMarginRight = '0'
218
+ } = moreButton ? getComputedStyle(moreButton) : {};
271
219
  moreButtonWidth += +moreButtonMarginLeft.replace('px', '') + +moreButtonMarginRight.replace('px', '');
272
- var tabsWidth = descendants.map(function (node) {
273
- var _getComputedStyle = getComputedStyle(node),
274
- marginLeft = _getComputedStyle.marginLeft,
275
- marginRight = _getComputedStyle.marginRight;
276
- var width = node.getBoundingClientRect().width;
220
+ const tabsWidth = descendants.map(node => {
221
+ const {
222
+ marginLeft,
223
+ marginRight
224
+ } = getComputedStyle(node);
225
+ const width = node.getBoundingClientRect().width;
277
226
  return width + +marginLeft.replace('px', '') + +marginRight.replace('px', '');
278
227
  });
279
- var newSummaryWidth = tabsWidth.reduce(function (acc, curr) {
280
- return acc + curr;
281
- }, 0);
282
- var oldSummaryWidth = elements.sizes.tabs.reduce(function (acc, curr) {
283
- return acc + curr;
284
- }, 0);
228
+ const newSummaryWidth = tabsWidth.reduce((acc, curr) => acc + curr, 0);
229
+ const oldSummaryWidth = elements.sizes.tabs.reduce((acc, curr) => acc + curr, 0);
285
230
  if (elements.sizes.more !== moreButtonWidth || newSummaryWidth !== oldSummaryWidth) {
286
- fastdom.mutate(function () {
287
- return setSizes({
288
- more: moreButtonWidth,
289
- tabs: tabsWidth
290
- });
291
- });
231
+ fastdom.mutate(() => setSizes({
232
+ more: moreButtonWidth,
233
+ tabs: tabsWidth
234
+ }));
292
235
  }
293
236
  });
294
- return function () {
237
+ return () => {
295
238
  fastdom.clear(measureTask);
296
239
  };
297
240
  }, [children, elements.sizes.more, elements.sizes.tabs]);
298
241
  // Start observers to listen resizing and mutation
299
- useEffect(function () {
242
+ useEffect(() => {
300
243
  if (measureRef.current === null) {
301
244
  return undefined;
302
245
  }
303
- var measureTask = function measureTask() {};
304
- var resizeObserver = new ResizeObserver(function (entries) {
305
- entries.forEach(function (entry) {
246
+ let measureTask = () => {};
247
+ const resizeObserver = new ResizeObserver(entries => {
248
+ entries.forEach(entry => {
306
249
  fastdom.clear(measureTask);
307
- measureTask = fastdom.mutate(function () {
308
- return adjustTabs(entry);
309
- });
250
+ measureTask = fastdom.mutate(() => adjustTabs(entry));
310
251
  });
311
252
  });
312
253
  resizeObserver.observe(measureRef.current);
313
- return function () {
254
+ return () => {
314
255
  fastdom.clear(measureTask);
315
256
  resizeObserver.disconnect();
316
257
  };
317
258
  }, [adjustTabs]);
318
- var isAdjusted = elements.lastVisibleIndex !== null && preparedElements.ready === true || initialVisibleItems;
319
- var className = classNames(modules_02138f4a.titles, modules_02138f4a.autoCollapse, isAdjusted && modules_02138f4a.adjusted);
259
+ const isAdjusted = elements.lastVisibleIndex !== null && preparedElements.ready === true || initialVisibleItems;
260
+ const className = classNames(modules_02138f4a.titles, modules_02138f4a.autoCollapse, isAdjusted && modules_02138f4a.adjusted);
320
261
  return /*#__PURE__*/jsxs("div", {
321
262
  className: modules_02138f4a.autoCollapseContainer,
322
263
  children: [/*#__PURE__*/jsxs("div", {
@@ -335,26 +276,13 @@ var CollapsibleTabs = function CollapsibleTabs(_ref) {
335
276
  ref: measureRef,
336
277
  className: classNames(className, modules_02138f4a.measure),
337
278
  children: [childrenToMeasure, /*#__PURE__*/jsx(FakeMoreButton, {
338
- hasActiveChildren: preparedElements.hidden.some(function (item) {
339
- return item.props.alwaysHidden && item.props.id === selected;
340
- }),
279
+ hasActiveChildren: preparedElements.hidden.some(item => item.props.alwaysHidden && item.props.id === selected),
341
280
  moreClassName: moreClassName,
342
281
  moreActiveClassName: moreActiveClassName
343
282
  })]
344
283
  })]
345
284
  });
346
285
  };
347
- CollapsibleTabs.propTypes = {
348
- children: PropTypes.node.isRequired,
349
- selected: PropTypes.string,
350
- onSelect: PropTypes.func.isRequired,
351
- moreClassName: PropTypes.string,
352
- moreActiveClassName: PropTypes.string,
353
- morePopupClassName: PropTypes.string,
354
- morePopupItemClassName: PropTypes.string,
355
- initialVisibleItems: PropTypes.number,
356
- morePopupBeforeEnd: PropTypes.element
357
- };
358
286
  var CollapsibleTabs$1 = /*#__PURE__*/memo(CollapsibleTabs);
359
287
 
360
288
  export { CollapsibleTabs, CollapsibleTabs$1 as default };
@@ -1,9 +1,3 @@
1
- import PropTypes from 'prop-types';
2
1
  import { ReactElement } from 'react';
3
2
  import { TabProps } from './tab';
4
- export declare const CustomItem: {
5
- ({ children }: TabProps): ReactElement;
6
- propTypes: {
7
- children: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
8
- };
9
- };
3
+ export declare const CustomItem: ({ children }: TabProps) => ReactElement;
@@ -1,11 +1,8 @@
1
- import PropTypes from 'prop-types';
2
-
3
- var CustomItem = function CustomItem(_ref) {
4
- var children = _ref.children;
1
+ const CustomItem = _ref => {
2
+ let {
3
+ children
4
+ } = _ref;
5
5
  return children;
6
6
  };
7
- CustomItem.propTypes = {
8
- children: PropTypes.node.isRequired
9
- };
10
7
 
11
8
  export { CustomItem };
@@ -1,6 +1,5 @@
1
1
  import { PureComponent, ReactElement } from 'react';
2
2
  import * as React from 'react';
3
- import PropTypes from 'prop-types';
4
3
  import { CollapsibleTabsProps } from './collapsible-tabs';
5
4
  import { CustomItem } from './custom-item';
6
5
  import { TabProps } from './tab';
@@ -15,16 +14,6 @@ export interface TabsProps extends Omit<CollapsibleTabsProps, 'onSelect' | 'chil
15
14
  'data-test'?: string | null | undefined;
16
15
  }
17
16
  declare class Tabs extends PureComponent<TabsProps> {
18
- static propTypes: {
19
- selected: PropTypes.Requireable<string>;
20
- className: PropTypes.Requireable<string>;
21
- tabContainerClassName: PropTypes.Requireable<string>;
22
- href: PropTypes.Requireable<string>;
23
- children: PropTypes.Validator<NonNullable<PropTypes.ReactNodeLike>>;
24
- onSelect: PropTypes.Requireable<(...args: any[]) => any>;
25
- 'data-test': PropTypes.Requireable<string>;
26
- autoCollapse: PropTypes.Requireable<boolean>;
27
- };
28
17
  static defaultProps: {
29
18
  onSelect(): void;
30
19
  };