@jetbrains/ring-ui-built 7.0.0-beta.1 → 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 (349) 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/theme.js +61 -51
  16. package/components/_helpers/title.js +59 -84
  17. package/components/alert/alert.d.ts +7 -24
  18. package/components/alert/alert.js +111 -179
  19. package/components/alert/container.d.ts +0 -5
  20. package/components/alert/container.js +32 -44
  21. package/components/alert-service/alert-service.js +104 -162
  22. package/components/analytics/analytics.js +12 -20
  23. package/components/analytics/analytics__custom-plugin.js +52 -68
  24. package/components/auth/auth.js +2 -31
  25. package/components/auth/auth__core.d.ts +4 -4
  26. package/components/auth/auth__core.js +755 -1433
  27. package/components/auth/background-flow.js +84 -121
  28. package/components/auth/down-notification.js +32 -79
  29. package/components/auth/iframe-flow.js +71 -125
  30. package/components/auth/request-builder.js +46 -77
  31. package/components/auth/response-parser.js +84 -112
  32. package/components/auth/storage.js +162 -324
  33. package/components/auth/token-validator.js +132 -227
  34. package/components/auth/window-flow.js +84 -121
  35. package/components/auth-dialog/auth-dialog.d.ts +0 -18
  36. package/components/auth-dialog/auth-dialog.js +107 -176
  37. package/components/auth-dialog-service/auth-dialog-service.js +12 -33
  38. package/components/avatar/avatar-example-datauri.js +1 -1
  39. package/components/avatar/avatar.d.ts +0 -13
  40. package/components/avatar/avatar.js +94 -136
  41. package/components/avatar/fallback-avatar.d.ts +1 -10
  42. package/components/avatar/fallback-avatar.js +20 -40
  43. package/components/badge/badge.d.ts +0 -10
  44. package/components/badge/badge.js +32 -48
  45. package/components/breadcrumbs/breadcrumbs.js +13 -17
  46. package/components/button/button.d.ts +0 -21
  47. package/components/button/button.js +68 -104
  48. package/components/button/button__classes.d.ts +1 -1
  49. package/components/button-group/button-group.d.ts +0 -5
  50. package/components/button-group/button-group.js +27 -41
  51. package/components/button-group/caption.d.ts +0 -4
  52. package/components/button-group/caption.js +0 -1
  53. package/components/button-set/button-set.d.ts +0 -6
  54. package/components/button-set/button-set.js +19 -33
  55. package/components/button-toolbar/button-toolbar.d.ts +0 -6
  56. package/components/button-toolbar/button-toolbar.js +17 -31
  57. package/components/caret/caret.js +184 -211
  58. package/components/checkbox/checkbox.d.ts +0 -19
  59. package/components/checkbox/checkbox.js +69 -104
  60. package/components/clipboard/clipboard-fallback.js +7 -7
  61. package/components/clipboard/clipboard.js +36 -129
  62. package/components/code/code.d.ts +0 -12
  63. package/components/code/code.js +83 -163
  64. package/components/collapse/collapse-content.js +42 -60
  65. package/components/collapse/collapse-context.js +2 -2
  66. package/components/collapse/collapse-control.js +12 -12
  67. package/components/collapse/collapse.js +12 -17
  68. package/components/collapse/consts.js +4 -4
  69. package/components/collapse/utils.js +1 -3
  70. package/components/confirm/confirm.d.ts +0 -14
  71. package/components/confirm/confirm.js +68 -112
  72. package/components/confirm-service/confirm-service.js +25 -47
  73. package/components/content-layout/content-layout.d.ts +0 -7
  74. package/components/content-layout/content-layout.js +41 -63
  75. package/components/content-layout/sidebar.d.ts +0 -9
  76. package/components/content-layout/sidebar.js +1 -2
  77. package/components/contenteditable/contenteditable.d.ts +1 -22
  78. package/components/contenteditable/contenteditable.js +37 -60
  79. package/components/control-help/control-help.js +5 -3
  80. package/components/control-label/control-label.js +9 -14
  81. package/components/data-list/data-list.d.ts +0 -2
  82. package/components/data-list/data-list.js +115 -179
  83. package/components/data-list/data-list.mock.js +3 -6
  84. package/components/data-list/item.js +119 -165
  85. package/components/data-list/selection.js +77 -135
  86. package/components/data-list/title.d.ts +2 -2
  87. package/components/data-list/title.js +2 -12
  88. package/components/date-picker/consts.d.ts +0 -2
  89. package/components/date-picker/consts.js +16 -24
  90. package/components/date-picker/date-input.d.ts +0 -20
  91. package/components/date-picker/date-input.js +100 -148
  92. package/components/date-picker/date-picker.d.ts +0 -29
  93. package/components/date-picker/date-picker.js +143 -224
  94. package/components/date-picker/date-popup.d.ts +0 -22
  95. package/components/date-picker/date-popup.js +282 -352
  96. package/components/date-picker/day.d.ts +0 -14
  97. package/components/date-picker/day.js +72 -109
  98. package/components/date-picker/month-names.d.ts +1 -11
  99. package/components/date-picker/month-names.js +42 -72
  100. package/components/date-picker/month-slider.d.ts +0 -9
  101. package/components/date-picker/month-slider.js +43 -71
  102. package/components/date-picker/month.d.ts +1 -9
  103. package/components/date-picker/month.js +18 -30
  104. package/components/date-picker/months.d.ts +1 -9
  105. package/components/date-picker/months.js +45 -55
  106. package/components/date-picker/weekdays.d.ts +2 -8
  107. package/components/date-picker/weekdays.js +12 -25
  108. package/components/date-picker/years.d.ts +0 -6
  109. package/components/date-picker/years.js +77 -104
  110. package/components/dialog/dialog.d.ts +0 -20
  111. package/components/dialog/dialog.js +153 -211
  112. package/components/dialog/dialog__body-scroll-preventer.js +0 -3
  113. package/components/dropdown/anchor.d.ts +1 -8
  114. package/components/dropdown/anchor.js +0 -7
  115. package/components/dropdown/dropdown.d.ts +4 -22
  116. package/components/dropdown/dropdown.js +134 -176
  117. package/components/dropdown-menu/dropdown-menu.js +51 -103
  118. package/components/editable-heading/editable-heading.js +69 -118
  119. package/components/error-bubble/error-bubble.d.ts +0 -6
  120. package/components/error-bubble/error-bubble.js +30 -60
  121. package/components/error-message/error-message.d.ts +0 -10
  122. package/components/error-message/error-message.js +34 -59
  123. package/components/footer/footer.js +28 -44
  124. package/components/form/form.js +1 -1
  125. package/components/global/compose.js +1 -8
  126. package/components/global/composeRefs.d.ts +0 -3
  127. package/components/global/composeRefs.js +8 -15
  128. package/components/global/controls-height.js +2 -2
  129. package/components/global/create-stateful-context.d.ts +0 -4
  130. package/components/global/create-stateful-context.js +14 -17
  131. package/components/global/data-tests.js +7 -12
  132. package/components/global/dom.js +49 -82
  133. package/components/global/focus-sensor-hoc.js +95 -122
  134. package/components/global/fuzzy-highlight.js +23 -34
  135. package/components/global/get-event-key.js +8 -8
  136. package/components/global/get-uid.js +3 -7
  137. package/components/global/inject-styles.js +7 -14
  138. package/components/global/listeners.js +28 -47
  139. package/components/global/memoize.js +6 -10
  140. package/components/global/normalize-indent.js +19 -46
  141. package/components/global/promise-with-timeout.js +6 -8
  142. package/components/global/react-dom-renderer.d.ts +0 -5
  143. package/components/global/react-dom-renderer.js +29 -45
  144. package/components/global/rerender-hoc.d.ts +2 -2
  145. package/components/global/rerender-hoc.js +16 -32
  146. package/components/global/schedule-raf.js +4 -4
  147. package/components/global/sniffer.js +1 -1
  148. package/components/global/theme.d.ts +8 -2
  149. package/components/global/theme.js +2 -20
  150. package/components/global/trivial-template-tag.js +4 -9
  151. package/components/global/typescript-utils.js +2 -6
  152. package/components/global/url.js +20 -23
  153. package/components/global/use-event-callback.js +7 -4
  154. package/components/grid/col.d.ts +0 -14
  155. package/components/grid/col.js +27 -53
  156. package/components/grid/grid.d.ts +0 -5
  157. package/components/grid/grid.js +20 -32
  158. package/components/grid/row.d.ts +0 -18
  159. package/components/grid/row.js +23 -47
  160. package/components/group/group.d.ts +0 -5
  161. package/components/group/group.js +18 -27
  162. package/components/header/header-icon.d.ts +0 -22
  163. package/components/header/header-icon.js +20 -37
  164. package/components/header/header.d.ts +0 -7
  165. package/components/header/header.js +30 -74
  166. package/components/header/links.d.ts +2 -0
  167. package/components/header/links.js +20 -0
  168. package/components/header/logo.d.ts +0 -4
  169. package/components/header/logo.js +15 -30
  170. package/components/header/profile.d.ts +1 -39
  171. package/components/header/profile.js +126 -191
  172. package/components/header/services-link.d.ts +0 -10
  173. package/components/header/services-link.js +1 -4
  174. package/components/header/services.d.ts +0 -14
  175. package/components/header/services.js +65 -110
  176. package/components/header/smart-profile.d.ts +0 -9
  177. package/components/header/smart-profile.js +116 -205
  178. package/components/header/smart-services.d.ts +0 -4
  179. package/components/header/smart-services.js +72 -141
  180. package/components/header/tray.d.ts +0 -5
  181. package/components/header/tray.js +21 -35
  182. package/components/heading/heading.js +21 -26
  183. package/components/http/http.js +162 -319
  184. package/components/http/http.mock.js +50 -98
  185. package/components/hub-source/hub-source.js +77 -182
  186. package/components/hub-source/hub-source__user.js +9 -37
  187. package/components/hub-source/hub-source__users-groups.js +34 -60
  188. package/components/i18n/i18n-context.js +7 -8
  189. package/components/i18n/i18n.js +3 -6
  190. package/components/icon/icon.d.ts +0 -11
  191. package/components/icon/icon.js +60 -85
  192. package/components/icon/icon__svg.d.ts +0 -8
  193. package/components/icon/icon__svg.js +0 -6
  194. package/components/icon/index.js +0 -6
  195. package/components/input/input-legacy.js +1 -1
  196. package/components/input/input.js +2 -14
  197. package/components/input-size/input-size.js +1 -1
  198. package/components/island/adaptive-island-hoc.d.ts +0 -1
  199. package/components/island/adaptive-island-hoc.js +30 -39
  200. package/components/island/content.d.ts +0 -10
  201. package/components/island/content.js +99 -119
  202. package/components/island/header.js +55 -73
  203. package/components/island/island.d.ts +0 -9
  204. package/components/island/island.js +25 -41
  205. package/components/island-legacy/content-legacy.d.ts +0 -5
  206. package/components/island-legacy/content-legacy.js +16 -27
  207. package/components/island-legacy/header-legacy.d.ts +0 -5
  208. package/components/island-legacy/header-legacy.js +19 -30
  209. package/components/island-legacy/island-legacy.d.ts +0 -5
  210. package/components/island-legacy/island-legacy.js +16 -27
  211. package/components/link/clickableLink.d.ts +0 -9
  212. package/components/link/clickableLink.js +33 -51
  213. package/components/link/link.d.ts +0 -25
  214. package/components/link/link.js +47 -68
  215. package/components/list/consts.js +2 -2
  216. package/components/list/list.d.ts +0 -32
  217. package/components/list/list.js +399 -516
  218. package/components/list/list__custom.js +51 -78
  219. package/components/list/list__hint.d.ts +0 -4
  220. package/components/list/list__hint.js +8 -21
  221. package/components/list/list__item.js +147 -211
  222. package/components/list/list__link.js +39 -59
  223. package/components/list/list__separator.js +15 -30
  224. package/components/list/list__title.js +25 -41
  225. package/components/list/list__users-groups-source.js +55 -123
  226. package/components/loader/loader.d.ts +0 -10
  227. package/components/loader/loader.js +38 -70
  228. package/components/loader/loader__core.js +123 -184
  229. package/components/loader-inline/loader-inline.d.ts +0 -6
  230. package/components/loader-inline/loader-inline.js +24 -38
  231. package/components/loader-screen/loader-screen.d.ts +0 -6
  232. package/components/loader-screen/loader-screen.js +24 -46
  233. package/components/login-dialog/login-dialog.d.ts +0 -11
  234. package/components/login-dialog/login-dialog.js +94 -145
  235. package/components/login-dialog/service.js +11 -33
  236. package/components/markdown/markdown.js +16 -29
  237. package/components/message/message.js +171 -218
  238. package/components/old-browsers-message/old-browsers-message.js +11 -14
  239. package/components/old-browsers-message/old-browsers-message__stop.js +1 -4
  240. package/components/old-browsers-message/white-list.js +8 -13
  241. package/components/pager/pager.js +211 -275
  242. package/components/panel/panel.d.ts +0 -5
  243. package/components/panel/panel.js +16 -27
  244. package/components/permissions/permissions.js +118 -161
  245. package/components/permissions/permissions__cache.js +191 -218
  246. package/components/popup/popup.consts.js +1 -1
  247. package/components/popup/popup.js +237 -329
  248. package/components/popup/popup.target.js +9 -12
  249. package/components/popup/position.js +94 -101
  250. package/components/popup-menu/popup-menu.js +31 -76
  251. package/components/progress-bar/progress-bar.d.ts +19 -33
  252. package/components/progress-bar/progress-bar.js +55 -99
  253. package/components/query-assist/query-assist.d.ts +63 -93
  254. package/components/query-assist/query-assist.js +585 -748
  255. package/components/query-assist/query-assist__suggestions.js +2 -28
  256. package/components/radio/radio.d.ts +0 -8
  257. package/components/radio/radio.js +15 -35
  258. package/components/radio/radio__item.d.ts +0 -9
  259. package/components/radio/radio__item.js +52 -72
  260. package/components/scrollable-section/scrollable-section.js +53 -0
  261. package/components/select/select.d.ts +3 -0
  262. package/components/select/select.js +714 -863
  263. package/components/select/select__filter.js +2 -29
  264. package/components/select/select__popup.js +317 -465
  265. package/components/shortcuts/core.js +147 -195
  266. package/components/shortcuts/shortcut-title.js +6 -10
  267. package/components/shortcuts/shortcuts-hoc.d.ts +0 -5
  268. package/components/shortcuts/shortcuts-hoc.js +23 -46
  269. package/components/shortcuts/shortcuts.d.ts +0 -8
  270. package/components/shortcuts/shortcuts.js +41 -72
  271. package/components/slider/slider.js +93 -113
  272. package/components/slider/slider.utils.js +16 -23
  273. package/components/storage/storage.d.ts +2 -3
  274. package/components/storage/storage.js +2 -46
  275. package/components/storage/storage__local.js +89 -148
  276. package/components/style.css +1 -1
  277. package/components/tab-trap/tab-trap.js +35 -61
  278. package/components/table/cell.d.ts +0 -6
  279. package/components/table/cell.js +11 -27
  280. package/components/table/disable-hover-hoc.d.ts +0 -1
  281. package/components/table/disable-hover-hoc.js +27 -42
  282. package/components/table/header-cell.d.ts +0 -10
  283. package/components/table/header-cell.js +59 -85
  284. package/components/table/header.d.ts +1 -23
  285. package/components/table/header.js +89 -126
  286. package/components/table/multitable.d.ts +0 -4
  287. package/components/table/multitable.js +83 -93
  288. package/components/table/row-with-focus-sensor.d.ts +2 -2
  289. package/components/table/row-with-focus-sensor.js +26 -60
  290. package/components/table/row.js +170 -235
  291. package/components/table/selection-adapter.js +2 -2
  292. package/components/table/selection-shortcuts-hoc.js +102 -126
  293. package/components/table/selection.js +150 -217
  294. package/components/table/simple-table.d.ts +0 -44
  295. package/components/table/simple-table.js +18 -59
  296. package/components/table/smart-table.d.ts +0 -48
  297. package/components/table/smart-table.js +41 -83
  298. package/components/table/table.d.ts +0 -2
  299. package/components/table/table.js +269 -377
  300. package/components/tabs/collapsible-more.d.ts +1 -9
  301. package/components/tabs/collapsible-more.js +47 -97
  302. package/components/tabs/collapsible-tab.js +32 -44
  303. package/components/tabs/collapsible-tabs.d.ts +2 -29
  304. package/components/tabs/collapsible-tabs.js +89 -161
  305. package/components/tabs/custom-item.d.ts +1 -7
  306. package/components/tabs/custom-item.js +4 -7
  307. package/components/tabs/dumb-tabs.d.ts +0 -11
  308. package/components/tabs/dumb-tabs.js +60 -104
  309. package/components/tabs/smart-tabs.d.ts +0 -6
  310. package/components/tabs/smart-tabs.js +29 -68
  311. package/components/tabs/tab-link.d.ts +0 -8
  312. package/components/tabs/tab-link.js +1 -4
  313. package/components/tabs/tab.d.ts +0 -8
  314. package/components/tabs/tab.js +14 -32
  315. package/components/tabs/tabs.js +1 -28
  316. package/components/tag/tag.d.ts +0 -19
  317. package/components/tag/tag.js +120 -179
  318. package/components/tags-input/tags-input.d.ts +7 -33
  319. package/components/tags-input/tags-input.js +224 -339
  320. package/components/tags-list/tags-list.d.ts +0 -13
  321. package/components/tags-list/tags-list.js +45 -74
  322. package/components/text/text.d.ts +0 -7
  323. package/components/text/text.js +27 -43
  324. package/components/toggle/toggle.d.ts +0 -15
  325. package/components/toggle/toggle.js +52 -77
  326. package/components/tooltip/tooltip.d.ts +4 -10
  327. package/components/tooltip/tooltip.js +105 -137
  328. package/components/user-agreement/service.d.ts +2 -1
  329. package/components/user-agreement/service.js +260 -405
  330. package/components/user-agreement/user-agreement.d.ts +0 -18
  331. package/components/user-agreement/user-agreement.js +92 -138
  332. package/components/user-card/card.d.ts +0 -35
  333. package/components/user-card/card.js +2 -27
  334. package/components/user-card/smart-user-card-tooltip.d.ts +0 -5
  335. package/components/user-card/smart-user-card-tooltip.js +52 -108
  336. package/components/user-card/tooltip.d.ts +0 -9
  337. package/components/user-card/tooltip.js +35 -74
  338. package/components/user-card/user-card.js +1 -26
  339. package/package.json +4 -6
  340. package/components/global/prop-types.d.ts +0 -4
  341. package/components/global/prop-types.js +0 -9
  342. package/components/global/react-render-adapter.d.ts +0 -1
  343. package/components/global/react-render-adapter.js +0 -6
  344. package/components/header/scrollable-section.js +0 -47
  345. package/components/header/tray-icon.d.ts +0 -1
  346. package/components/header/tray-icon.js +0 -26
  347. package/components/storage/storage__fallback.d.ts +0 -79
  348. package/components/storage/storage__fallback.js +0 -253
  349. /package/components/{header → scrollable-section}/scrollable-section.d.ts +0 -0
@@ -1,8 +1,7 @@
1
- import { _ as _defineProperty, a as _inherits, b as _createClass, c as _objectWithoutProperties, d as _objectSpread2, e as _classCallCheck, f as _callSuper } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.concat.js';
1
+ import { _ as _defineProperty, a as _objectWithoutProperties, b as _objectSpread2 } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/web.dom-collections.iterator.js';
3
3
  import { PureComponent, createRef } from 'react';
4
4
  import { createPortal } from 'react-dom';
5
- import PropTypes from 'prop-types';
6
5
  import classNames from 'classnames';
7
6
  import closeIcon from '@jetbrains/icons/close';
8
7
  import { AdaptiveIsland } from '../island/island.js';
@@ -12,7 +11,7 @@ import Shortcuts from '../shortcuts/shortcuts.js';
12
11
  import TabTrap from '../tab-trap/tab-trap.js';
13
12
  import { Button } from '../button/button.js';
14
13
  import { PopupTarget } from '../popup/popup.target.js';
15
- import { m as modules_5e9b8c03, p as preventerFactory } from '../_helpers/dialog__body-scroll-preventer.js';
14
+ import { p as preventerFactory, m as modules_5e9b8c03 } from '../_helpers/dialog__body-scroll-preventer.js';
16
15
  import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
17
16
  import '../island/adaptive-island-hoc.js';
18
17
  import '../global/linear-function.js';
@@ -21,256 +20,199 @@ import '../island/header.js';
21
20
  import '../island/content.js';
22
21
  import 'element-resize-detector';
23
22
  import '../global/schedule-raf.js';
24
- import 'core-js/modules/es.object.to-string.js';
25
- import 'core-js/modules/es.regexp.to-string.js';
26
23
  import 'core-js/modules/es.array.reduce.js';
27
- import 'core-js/modules/es.object.entries.js';
28
- import 'core-js/modules/es.array.map.js';
29
24
  import '../shortcuts/core.js';
30
- import 'core-js/modules/es.array.find-index.js';
31
- import 'core-js/modules/es.array.includes.js';
32
- import 'core-js/modules/es.array.slice.js';
33
- import 'core-js/modules/es.array.splice.js';
34
- import 'core-js/modules/es.object.assign.js';
35
25
  import 'core-js/modules/es.regexp.exec.js';
36
- import 'core-js/modules/es.string.includes.js';
37
- import 'core-js/modules/es.string.match.js';
38
26
  import 'combokeys';
39
27
  import '../global/sniffer.js';
40
28
  import 'sniffr';
41
- import 'core-js/modules/es.array.filter.js';
42
29
  import '../global/dom.js';
43
- import 'core-js/modules/es.array.iterator.js';
44
- import 'core-js/modules/es.set.js';
45
- import 'core-js/modules/es.string.split.js';
46
- import 'core-js/modules/web.dom-collections.for-each.js';
47
- import 'core-js/modules/web.dom-collections.iterator.js';
48
30
  import '@jetbrains/icons/chevron-down';
49
- import '../icon/icon.js';
50
31
  import 'util-deprecate';
32
+ import '../icon/icon.js';
51
33
  import '../icon/icon__constants.js';
52
34
  import '../_helpers/icon__svg.js';
53
35
  import 'core-js/modules/es.string.replace.js';
54
- import 'core-js/modules/es.string.starts-with.js';
55
36
  import '../global/memoize.js';
56
- import 'core-js/modules/es.map.js';
57
- import 'core-js/modules/es.weak-map.js';
58
37
  import '../link/clickableLink.js';
59
38
  import '../global/controls-height.js';
60
39
  import '../_helpers/button__classes.js';
61
40
  import 'scrollbar-width';
62
41
 
63
- var _excluded = ["show", "showCloseButton", "onOverlayClick", "onCloseAttempt", "onEscPress", "onCloseClick", "children", "className", "contentClassName", "trapFocus", "data-test", "closeButtonInside", "portalTarget", "label", "closeButtonTitle", "dense", "shortcutOptions", "native", "modal"];
42
+ const _excluded = ["show", "showCloseButton", "onOverlayClick", "onCloseAttempt", "onEscPress", "onCloseClick", "children", "className", "contentClassName", "trapFocus", "data-test", "closeButtonInside", "portalTarget", "label", "closeButtonTitle", "dense", "shortcutOptions", "native", "modal"];
64
43
  function noop() {}
65
- var Dialog = /*#__PURE__*/function (_PureComponent) {
66
- function Dialog() {
67
- var _this;
68
- _classCallCheck(this, Dialog);
69
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
70
- args[_key] = arguments[_key];
71
- }
72
- _this = _callSuper(this, Dialog, [].concat(args));
73
- _defineProperty(_this, "state", {
44
+ class Dialog extends PureComponent {
45
+ constructor() {
46
+ super(...arguments);
47
+ _defineProperty(this, "state", {
74
48
  shortcutsScope: getUID('ring-dialog-')
75
49
  });
76
- _defineProperty(_this, "scrollPreventer", preventerFactory(getUID('preventer-')));
77
- _defineProperty(_this, "uid", getUID('dialog-'));
78
- _defineProperty(_this, "handleClick", function (event) {
79
- _this.props.onOverlayClick(event);
80
- _this.props.onCloseAttempt(event);
50
+ _defineProperty(this, "scrollPreventer", preventerFactory(getUID('preventer-')));
51
+ _defineProperty(this, "uid", getUID('dialog-'));
52
+ _defineProperty(this, "handleClick", event => {
53
+ this.props.onOverlayClick(event);
54
+ this.props.onCloseAttempt(event);
81
55
  });
82
- _defineProperty(_this, "onCloseClick", function (event) {
83
- _this.props.onCloseClick(event);
84
- _this.props.onCloseAttempt(event);
56
+ _defineProperty(this, "onCloseClick", event => {
57
+ this.props.onCloseClick(event);
58
+ this.props.onCloseAttempt(event);
85
59
  });
86
- _defineProperty(_this, "getShortcutsMap", function () {
87
- var onEscape = function onEscape(event) {
88
- if (_this.props.show) {
89
- _this.props.onEscPress(event);
90
- _this.props.onCloseAttempt(event);
60
+ _defineProperty(this, "getShortcutsMap", () => {
61
+ const onEscape = event => {
62
+ if (this.props.show) {
63
+ this.props.onEscPress(event);
64
+ this.props.onCloseAttempt(event);
91
65
  }
92
66
  };
93
67
  return {
94
68
  esc: onEscape
95
69
  };
96
70
  });
97
- _defineProperty(_this, "dialog", void 0);
98
- _defineProperty(_this, "dialogRef", function (tabTrap) {
99
- _this.dialog = tabTrap && tabTrap.node;
71
+ _defineProperty(this, "dialog", void 0);
72
+ _defineProperty(this, "dialogRef", tabTrap => {
73
+ this.dialog = tabTrap && tabTrap.node;
100
74
  });
101
- _defineProperty(_this, "nativeDialog", /*#__PURE__*/createRef());
102
- return _this;
75
+ _defineProperty(this, "nativeDialog", /*#__PURE__*/createRef());
103
76
  }
104
- _inherits(Dialog, _PureComponent);
105
- return _createClass(Dialog, [{
106
- key: "componentDidMount",
107
- value: function componentDidMount() {
108
- var _this$props = this.props,
109
- show = _this$props.show,
110
- native = _this$props.native;
111
- if (native && show) {
112
- this.toggleNativeDialog();
113
- }
114
- this.toggleScrollPreventer();
77
+ componentDidMount() {
78
+ const {
79
+ show,
80
+ native
81
+ } = this.props;
82
+ if (native && show) {
83
+ this.toggleNativeDialog();
115
84
  }
116
- }, {
117
- key: "componentDidUpdate",
118
- value: function componentDidUpdate(prevProps) {
119
- var _this$props2 = this.props,
120
- show = _this$props2.show,
121
- native = _this$props2.native;
122
- if (native && show !== prevProps.show) {
123
- this.toggleNativeDialog();
124
- }
125
- if (prevProps.show !== this.props.show) {
126
- this.toggleScrollPreventer();
127
- }
85
+ this.toggleScrollPreventer();
86
+ }
87
+ componentDidUpdate(prevProps) {
88
+ const {
89
+ show,
90
+ native
91
+ } = this.props;
92
+ if (native && show !== prevProps.show) {
93
+ this.toggleNativeDialog();
128
94
  }
129
- }, {
130
- key: "componentWillUnmount",
131
- value: function componentWillUnmount() {
132
- this.scrollPreventer.reset();
95
+ if (prevProps.show !== this.props.show) {
96
+ this.toggleScrollPreventer();
133
97
  }
134
- }, {
135
- key: "toggleNativeDialog",
136
- value: function toggleNativeDialog() {
137
- var _this$props3 = this.props,
138
- show = _this$props3.show,
139
- modal = _this$props3.modal;
140
- if (this.nativeDialog.current != null) {
141
- if (show) {
142
- this.nativeDialog.current.removeAttribute('open');
143
- modal ? this.nativeDialog.current.showModal() : this.nativeDialog.current.show();
98
+ }
99
+ componentWillUnmount() {
100
+ this.scrollPreventer.reset();
101
+ }
102
+ toggleNativeDialog() {
103
+ const {
104
+ show,
105
+ modal
106
+ } = this.props;
107
+ if (this.nativeDialog.current != null) {
108
+ if (show) {
109
+ this.nativeDialog.current.removeAttribute('open');
110
+ if (modal) {
111
+ this.nativeDialog.current.showModal();
144
112
  } else {
145
- this.nativeDialog.current.close();
113
+ this.nativeDialog.current.show();
146
114
  }
147
- }
148
- }
149
- }, {
150
- key: "toggleScrollPreventer",
151
- value: function toggleScrollPreventer() {
152
- if (this.props.show) {
153
- this.scrollPreventer.prevent();
154
115
  } else {
155
- this.scrollPreventer.reset();
116
+ this.nativeDialog.current.close();
156
117
  }
157
118
  }
158
- }, {
159
- key: "render",
160
- value: function render() {
161
- var _this2 = this;
162
- var _this$props4 = this.props,
163
- show = _this$props4.show,
164
- showCloseButton = _this$props4.showCloseButton,
165
- onOverlayClick = _this$props4.onOverlayClick,
166
- onCloseAttempt = _this$props4.onCloseAttempt;
167
- _this$props4.onEscPress;
168
- _this$props4.onCloseClick;
169
- var children = _this$props4.children,
170
- className = _this$props4.className,
171
- contentClassName = _this$props4.contentClassName,
172
- trapFocus = _this$props4.trapFocus,
173
- dataTest = _this$props4['data-test'],
174
- closeButtonInside = _this$props4.closeButtonInside,
175
- portalTarget = _this$props4.portalTarget,
176
- label = _this$props4.label,
177
- closeButtonTitle = _this$props4.closeButtonTitle,
178
- dense = _this$props4.dense;
179
- _this$props4.shortcutOptions;
180
- var native = _this$props4.native;
181
- _this$props4.modal;
182
- var restProps = _objectWithoutProperties(_this$props4, _excluded);
183
- var classes = classNames(modules_5e9b8c03.container, className);
184
- var shortcutsMap = this.getShortcutsMap();
185
- var content = /*#__PURE__*/jsxs(Fragment, {
186
- children: [/*#__PURE__*/jsx(Shortcuts, {
187
- map: shortcutsMap,
188
- scope: this.state.shortcutsScope,
189
- options: this.props.shortcutOptions
190
- }), (onOverlayClick !== noop || onCloseAttempt !== noop) && /*#__PURE__*/jsx("div", {
191
- // click handler is duplicated in close button
192
- role: "presentation",
193
- className: modules_5e9b8c03.clickableOverlay,
194
- onClick: this.handleClick
195
- }), /*#__PURE__*/jsx("div", {
196
- className: modules_5e9b8c03.innerContainer,
197
- children: /*#__PURE__*/jsxs(AdaptiveIsland, {
198
- className: classNames(modules_5e9b8c03.content, contentClassName, {
199
- [modules_5e9b8c03.dense]: dense
119
+ }
120
+ toggleScrollPreventer() {
121
+ if (this.props.show) {
122
+ this.scrollPreventer.prevent();
123
+ } else {
124
+ this.scrollPreventer.reset();
125
+ }
126
+ }
127
+ render() {
128
+ const _this$props = this.props,
129
+ {
130
+ show,
131
+ showCloseButton,
132
+ onOverlayClick,
133
+ onCloseAttempt,
134
+ onEscPress,
135
+ onCloseClick,
136
+ children,
137
+ className,
138
+ contentClassName,
139
+ trapFocus,
140
+ 'data-test': dataTest,
141
+ closeButtonInside,
142
+ portalTarget,
143
+ label,
144
+ closeButtonTitle,
145
+ dense,
146
+ shortcutOptions,
147
+ native,
148
+ modal
149
+ } = _this$props,
150
+ restProps = _objectWithoutProperties(_this$props, _excluded);
151
+ const classes = classNames(modules_5e9b8c03.container, className);
152
+ const shortcutsMap = this.getShortcutsMap();
153
+ const content = /*#__PURE__*/jsxs(Fragment, {
154
+ children: [/*#__PURE__*/jsx(Shortcuts, {
155
+ map: shortcutsMap,
156
+ scope: this.state.shortcutsScope,
157
+ options: this.props.shortcutOptions
158
+ }), (onOverlayClick !== noop || onCloseAttempt !== noop) && /*#__PURE__*/jsx("div", {
159
+ // click handler is duplicated in close button
160
+ role: "presentation",
161
+ className: modules_5e9b8c03.clickableOverlay,
162
+ onClick: this.handleClick,
163
+ "data-test": "ring-dialog-overlay"
164
+ }), /*#__PURE__*/jsx("div", {
165
+ className: modules_5e9b8c03.innerContainer,
166
+ children: /*#__PURE__*/jsxs(AdaptiveIsland, {
167
+ className: classNames(modules_5e9b8c03.content, contentClassName, {
168
+ [modules_5e9b8c03.dense]: dense
169
+ }),
170
+ "data-test": "ring-dialog",
171
+ role: "dialog",
172
+ "aria-label": label,
173
+ children: [children, showCloseButton && /*#__PURE__*/jsx(Button, {
174
+ icon: closeIcon,
175
+ "data-test": "ring-dialog-close-button",
176
+ className: classNames(modules_5e9b8c03.closeButton, {
177
+ [modules_5e9b8c03.closeButtonOutside]: !closeButtonInside,
178
+ [modules_5e9b8c03.closeButtonInside]: closeButtonInside
200
179
  }),
201
- "data-test": "ring-dialog",
202
- role: "dialog",
203
- "aria-label": label,
204
- children: [children, showCloseButton && /*#__PURE__*/jsx(Button, {
205
- icon: closeIcon,
206
- "data-test": "ring-dialog-close-button",
207
- className: classNames(modules_5e9b8c03.closeButton, {
208
- [modules_5e9b8c03.closeButtonOutside]: !closeButtonInside,
209
- [modules_5e9b8c03.closeButtonInside]: closeButtonInside
210
- }),
211
- iconClassName: modules_5e9b8c03.closeIcon,
212
- onClick: this.onCloseClick,
213
- title: closeButtonTitle,
214
- "aria-label": closeButtonTitle || 'close dialog'
215
- })]
180
+ iconClassName: modules_5e9b8c03.closeIcon,
181
+ onClick: this.onCloseClick,
182
+ title: closeButtonTitle,
183
+ "aria-label": closeButtonTitle || 'close dialog'
184
+ })]
185
+ })
186
+ })]
187
+ });
188
+ if (native) {
189
+ return /*#__PURE__*/jsx("dialog", {
190
+ className: classNames(modules_5e9b8c03.nativeDialog, className),
191
+ ref: this.nativeDialog,
192
+ children: /*#__PURE__*/jsx(PopupTarget, {
193
+ id: this.uid,
194
+ className: modules_5e9b8c03.popupTarget,
195
+ children: target => /*#__PURE__*/jsxs(Fragment, {
196
+ children: [content, target]
216
197
  })
217
- })]
198
+ })
218
199
  });
219
- if (native) {
220
- return /*#__PURE__*/jsx("dialog", {
221
- className: classNames(modules_5e9b8c03.nativeDialog, className),
222
- ref: this.nativeDialog,
223
- children: /*#__PURE__*/jsx(PopupTarget, {
224
- id: this.uid,
225
- className: modules_5e9b8c03.popupTarget,
226
- children: function children(target) {
227
- return /*#__PURE__*/jsxs(Fragment, {
228
- children: [content, target]
229
- });
230
- }
231
- })
232
- });
233
- }
234
- return show && /*#__PURE__*/createPortal( /*#__PURE__*/jsx(PopupTarget, {
235
- id: this.uid,
236
- className: modules_5e9b8c03.popupTarget,
237
- children: function children(target) {
238
- return /*#__PURE__*/jsxs(TabTrap, _objectSpread2(_objectSpread2({
239
- trapDisabled: !trapFocus,
240
- "data-test": joinDataTestAttributes('ring-dialog-container', dataTest),
241
- ref: _this2.dialogRef,
242
- className: classes,
243
- role: "presentation"
244
- }, restProps), {}, {
245
- children: [content, target]
246
- }));
247
- }
248
- }), portalTarget instanceof HTMLElement ? portalTarget : document.body);
249
200
  }
250
- }]);
251
- }(PureComponent);
252
- _defineProperty(Dialog, "propTypes", {
253
- label: PropTypes.string,
254
- className: PropTypes.string,
255
- contentClassName: PropTypes.string,
256
- children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),
257
- show: PropTypes.bool.isRequired,
258
- showCloseButton: PropTypes.bool,
259
- closeButtonInside: PropTypes.bool,
260
- closeButtonTitle: PropTypes.string,
261
- onOverlayClick: PropTypes.func,
262
- onEscPress: PropTypes.func,
263
- onCloseClick: PropTypes.func,
264
- shortcutOptions: PropTypes.object,
265
- // onCloseAttempt is a common callback for ESC pressing and overlay clicking.
266
- // Use it if you don't need different behaviors for this cases.
267
- onCloseAttempt: PropTypes.func,
268
- // focusTrap may break popups inside dialog, so use it carefully
269
- trapFocus: PropTypes.bool,
270
- portalTarget: PropTypes.instanceOf(HTMLElement),
271
- autoFocusFirst: PropTypes.bool,
272
- 'data-test': PropTypes.string
273
- });
201
+ return show && /*#__PURE__*/createPortal(/*#__PURE__*/jsx(PopupTarget, {
202
+ id: this.uid,
203
+ className: modules_5e9b8c03.popupTarget,
204
+ children: target => /*#__PURE__*/jsxs(TabTrap, _objectSpread2(_objectSpread2({
205
+ trapDisabled: !trapFocus,
206
+ "data-test": joinDataTestAttributes('ring-dialog-container', dataTest),
207
+ ref: this.dialogRef,
208
+ className: classes,
209
+ role: "presentation"
210
+ }, restProps), {}, {
211
+ children: [content, target]
212
+ }))
213
+ }), portalTarget instanceof HTMLElement ? portalTarget : document.body);
214
+ }
215
+ }
274
216
  _defineProperty(Dialog, "defaultProps", {
275
217
  label: 'Dialog',
276
218
  onOverlayClick: noop,
@@ -1,6 +1,3 @@
1
- import 'core-js/modules/es.array.iterator.js';
2
- import 'core-js/modules/es.object.to-string.js';
3
- import 'core-js/modules/es.set.js';
4
1
  import 'core-js/modules/web.dom-collections.iterator.js';
5
2
  import 'scrollbar-width';
6
3
  export { d as default, p as preventerFactory } from '../_helpers/dialog__body-scroll-preventer.js';
@@ -1,10 +1,3 @@
1
- import PropTypes from 'prop-types';
2
1
  import { ButtonAttrs } from '../button/button';
3
- declare const _default: import("react").MemoExoticComponent<{
4
- ({ children, className, ...restProps }: ButtonAttrs): import("react").JSX.Element;
5
- propTypes: {
6
- children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
7
- className: PropTypes.Requireable<string>;
8
- };
9
- }>;
2
+ declare const _default: import("react").MemoExoticComponent<({ children, className, ...restProps }: ButtonAttrs) => import("react").JSX.Element>;
10
3
  export default _default;
@@ -1,6 +1,5 @@
1
1
  import '../_helpers/_rollupPluginBabelHelpers.js';
2
2
  import 'react';
3
- import 'prop-types';
4
3
  import '@jetbrains/icons/chevron-10px';
5
4
  import 'classnames';
6
5
  import '../icon/icon.js';
@@ -12,14 +11,8 @@ import '../icon/icon__constants.js';
12
11
  import '../_helpers/icon__svg.js';
13
12
  import 'core-js/modules/es.regexp.exec.js';
14
13
  import 'core-js/modules/es.string.replace.js';
15
- import 'core-js/modules/es.string.starts-with.js';
16
14
  import '../global/memoize.js';
17
- import 'core-js/modules/es.array.iterator.js';
18
- import 'core-js/modules/es.map.js';
19
- import 'core-js/modules/es.object.to-string.js';
20
- import 'core-js/modules/es.weak-map.js';
21
15
  import 'core-js/modules/web.dom-collections.iterator.js';
22
- import 'core-js/modules/es.array.concat.js';
23
16
  import '@jetbrains/icons/chevron-down';
24
17
  import '../link/clickableLink.js';
25
18
  import '../global/controls-height.js';
@@ -1,6 +1,5 @@
1
1
  import { Component, HTMLAttributes, ReactNode, ReactElement } from 'react';
2
2
  import * as React from 'react';
3
- import PropTypes from 'prop-types';
4
3
  import { PopupAttrs } from '../popup/popup';
5
4
  import Anchor from './anchor';
6
5
  export interface AnchorProps {
@@ -15,6 +14,10 @@ export interface DropdownChildProps {
15
14
  dontCloseOnAnchorClick: boolean;
16
15
  }
17
16
  export interface DropdownProps extends Omit<HTMLAttributes<HTMLElement>, 'children'> {
17
+ /**
18
+ * Can be string, React element, or a function accepting an object with {active, pinned} properties and returning a React element
19
+ * React element should render some interactive HTML element like `button` or `a`
20
+ */
18
21
  anchor: ReactElement | readonly ReactElement[] | string | ((props: AnchorProps) => ReactNode);
19
22
  children: ReactElement<PopupAttrs> | ((props: Omit<PopupAttrs, 'children'>) => ReactNode);
20
23
  initShown: boolean;
@@ -36,27 +39,6 @@ interface DropdownState {
36
39
  * @name Dropdown
37
40
  */
38
41
  export default class Dropdown extends Component<DropdownProps, DropdownState> {
39
- static propTypes: {
40
- /**
41
- * Can be string, React element, or a function accepting an object with {active, pinned} properties and returning a React element
42
- * React element should render some interactive HTML element like `button` or `a`
43
- */
44
- anchor: PropTypes.Validator<NonNullable<NonNullable<PropTypes.ReactNodeLike | ((...args: any[]) => any)>>>;
45
- children: PropTypes.Validator<NonNullable<NonNullable<PropTypes.ReactElementLike | ((...args: any[]) => any) | null | undefined>>>;
46
- initShown: PropTypes.Requireable<boolean>;
47
- className: PropTypes.Requireable<string>;
48
- activeClassName: PropTypes.Requireable<string>;
49
- clickMode: PropTypes.Requireable<boolean>;
50
- hoverMode: PropTypes.Requireable<boolean>;
51
- hoverShowTimeOut: PropTypes.Requireable<number>;
52
- hoverHideTimeOut: PropTypes.Requireable<number>;
53
- disabled: PropTypes.Requireable<boolean>;
54
- onShow: PropTypes.Requireable<(...args: any[]) => any>;
55
- onHide: PropTypes.Requireable<(...args: any[]) => any>;
56
- onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
57
- onMouseLeave: PropTypes.Requireable<(...args: any[]) => any>;
58
- 'data-test': PropTypes.Requireable<string>;
59
- };
60
42
  static defaultProps: {
61
43
  initShown: boolean;
62
44
  clickMode: boolean;