@jetbrains/ring-ui 4.1.12 → 5.0.0-beta.11

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 (1108) hide show
  1. package/CHANGELOG.md +54 -0
  2. package/README.md +0 -11
  3. package/babel.config.js +2 -12
  4. package/components/alert/alert.css +4 -14
  5. package/components/alert/alert.d.ts +113 -0
  6. package/components/alert/alert.js +140 -196
  7. package/components/alert/container.css +0 -2
  8. package/components/alert/container.d.ts +15 -0
  9. package/components/alert/container.js +24 -41
  10. package/components/alert-service/alert-service.d.ts +34 -0
  11. package/components/alert-service/alert-service.examples.css +5 -3
  12. package/components/alert-service/alert-service.js +94 -124
  13. package/components/analytics/analytics.d.ts +24 -0
  14. package/components/analytics/analytics.js +75 -89
  15. package/components/analytics/analytics__custom-plugin.d.ts +39 -0
  16. package/components/analytics/analytics__custom-plugin.js +90 -111
  17. package/components/analytics/analytics__fus-plugin.d.ts +62 -0
  18. package/components/analytics/analytics__fus-plugin.js +62 -75
  19. package/components/analytics/analytics__ga-plugin.d.ts +17 -0
  20. package/components/analytics/analytics__ga-plugin.js +40 -43
  21. package/components/analytics/analytics__plugin-utils.d.ts +15 -0
  22. package/components/analytics/analytics__plugin-utils.js +61 -68
  23. package/components/analytics-ng/analytics-ng.examples.js +2 -2
  24. package/components/auth/auth.d.ts +3 -0
  25. package/components/auth/auth.js +3 -6
  26. package/components/auth/auth__core.d.ts +235 -0
  27. package/components/auth/auth__core.js +780 -878
  28. package/components/auth/background-flow.d.ts +31 -0
  29. package/components/auth/background-flow.js +91 -108
  30. package/components/auth/down-notification.css +1 -1
  31. package/components/auth/down-notification.d.ts +15 -0
  32. package/components/auth/down-notification.js +32 -52
  33. package/components/auth/iframe-flow.d.ts +20 -0
  34. package/components/auth/iframe-flow.js +71 -89
  35. package/components/auth/landing-entry.d.ts +3 -0
  36. package/components/auth/landing-entry.js +0 -1
  37. package/components/auth/landing.d.ts +2 -0
  38. package/components/auth/landing.html +1 -1
  39. package/components/auth/landing.js +19 -23
  40. package/components/auth/request-builder.d.ts +47 -0
  41. package/components/auth/request-builder.js +61 -68
  42. package/components/auth/response-parser.d.ts +70 -0
  43. package/components/auth/response-parser.js +84 -94
  44. package/components/auth/storage.d.ts +112 -0
  45. package/components/auth/storage.js +199 -214
  46. package/components/auth/token-validator.d.ts +93 -0
  47. package/components/auth/token-validator.js +160 -172
  48. package/components/auth/window-flow.d.ts +26 -0
  49. package/components/auth/window-flow.js +91 -112
  50. package/components/auth-dialog/auth-dialog.d.ts +60 -0
  51. package/components/auth-dialog/auth-dialog.js +72 -139
  52. package/components/auth-dialog-service/auth-dialog-service.d.ts +5 -0
  53. package/components/auth-dialog-service/auth-dialog-service.js +9 -15
  54. package/components/auth-ng/auth-ng.examples.js +1 -1
  55. package/components/autofocus-ng/autofocus-ng.examples.js +3 -3
  56. package/components/autofocus-ng/autofocus-ng.js +1 -1
  57. package/components/autofocus-ng/autofocus-ng.test.js +1 -1
  58. package/components/avatar/avatar-example-datauri.d.ts +1 -0
  59. package/components/avatar/avatar-example-datauri.js +0 -1
  60. package/components/avatar/avatar.d.ts +51 -0
  61. package/components/avatar/avatar.js +86 -157
  62. package/components/avatar/fallback-avatar.d.ts +17 -0
  63. package/components/avatar/fallback-avatar.js +84 -108
  64. package/components/avatar-editor-ng/avatar-editor-ng.examples.js +1 -1
  65. package/components/avatar-ng/avatar-ng.examples.js +3 -3
  66. package/components/badge/badge.d.ts +24 -0
  67. package/components/badge/badge.js +25 -49
  68. package/components/badge-ng/badge-ng.examples.js +2 -2
  69. package/components/breadcrumb-ng/breadcrumb-ng.examples.js +1 -1
  70. package/components/button/button.css +95 -206
  71. package/components/button/button.d.ts +67 -0
  72. package/components/button/button.js +56 -107
  73. package/components/button/button__classes.d.ts +2 -0
  74. package/components/button/button__classes.js +15 -37
  75. package/components/button-group/button-group.css +136 -19
  76. package/components/button-group/button-group.d.ts +17 -0
  77. package/components/button-group/button-group.js +11 -21
  78. package/components/button-group/caption.d.ts +8 -0
  79. package/components/button-group/caption.js +9 -18
  80. package/components/button-group-ng/button-group-ng.css +1 -0
  81. package/components/button-group-ng/button-group-ng.examples.js +3 -3
  82. package/components/button-ng/button-ng.examples.js +11 -12
  83. package/components/button-ng/button-ng.js +6 -25
  84. package/components/button-set/button-set.css +1 -0
  85. package/components/button-set/button-set.d.ts +12 -0
  86. package/components/button-set/button-set.js +10 -18
  87. package/components/button-set-ng/button-set-ng.examples.js +2 -2
  88. package/components/button-toolbar/button-toolbar.css +2 -0
  89. package/components/button-toolbar/button-toolbar.d.ts +12 -0
  90. package/components/button-toolbar/button-toolbar.js +10 -21
  91. package/components/button-toolbar-ng/button-toolbar-ng.examples.js +3 -3
  92. package/components/caret/caret.d.ts +66 -0
  93. package/components/caret/caret.js +200 -209
  94. package/components/checkbox/checkbox.css +10 -4
  95. package/components/checkbox/checkbox.d.ts +41 -0
  96. package/components/checkbox/checkbox.js +47 -81
  97. package/components/checkbox-ng/checkbox-ng.examples.js +2 -2
  98. package/components/code/code.d.ts +43 -0
  99. package/components/code/code.js +74 -98
  100. package/components/compiler-ng/compiler-ng.examples.js +1 -1
  101. package/components/confirm/confirm.d.ts +48 -0
  102. package/components/confirm/confirm.js +39 -81
  103. package/components/confirm-ng/confirm-ng.examples.js +2 -2
  104. package/components/confirm-service/confirm-service.d.ts +15 -0
  105. package/components/confirm-service/confirm-service.js +35 -51
  106. package/components/content-layout/content-layout.d.ts +26 -0
  107. package/components/content-layout/content-layout.js +33 -52
  108. package/components/content-layout/sidebar.d.ts +31 -0
  109. package/components/content-layout/sidebar.js +62 -91
  110. package/components/contenteditable/contenteditable.d.ts +47 -0
  111. package/components/contenteditable/contenteditable.js +36 -55
  112. package/components/data-list/data-list.d.ts +89 -0
  113. package/components/data-list/data-list.js +95 -146
  114. package/components/data-list/data-list.mock.d.ts +16 -0
  115. package/components/data-list/data-list.mock.js +166 -207
  116. package/components/data-list/item.d.ts +50 -0
  117. package/components/data-list/item.js +87 -187
  118. package/components/data-list/selection.d.ts +16 -0
  119. package/components/data-list/selection.js +75 -90
  120. package/components/data-list/title.d.ts +26 -0
  121. package/components/data-list/title.js +48 -79
  122. package/components/data-list-ng/data-list-ng.examples.js +3 -3
  123. package/components/date-picker/consts.d.ts +99 -0
  124. package/components/date-picker/consts.js +26 -53
  125. package/components/date-picker/date-input.d.ts +57 -0
  126. package/components/date-picker/date-input.js +88 -122
  127. package/components/date-picker/date-picker.css +2 -1
  128. package/components/date-picker/date-picker.d.ts +70 -0
  129. package/components/date-picker/date-picker.js +180 -260
  130. package/components/date-picker/date-popup.d.ts +56 -0
  131. package/components/date-picker/date-popup.js +308 -405
  132. package/components/date-picker/day.d.ts +30 -0
  133. package/components/date-picker/day.js +71 -104
  134. package/components/date-picker/formats.d.ts +2 -0
  135. package/components/date-picker/month-names.d.ts +13 -0
  136. package/components/date-picker/month-names.js +44 -86
  137. package/components/date-picker/month-slider.d.ts +29 -0
  138. package/components/date-picker/month-slider.js +44 -71
  139. package/components/date-picker/month.d.ts +14 -0
  140. package/components/date-picker/month.js +18 -33
  141. package/components/date-picker/months.d.ts +11 -0
  142. package/components/date-picker/months.js +52 -79
  143. package/components/date-picker/weekdays.d.ts +13 -0
  144. package/components/date-picker/weekdays.js +12 -28
  145. package/components/date-picker/years.d.ts +21 -0
  146. package/components/date-picker/years.js +55 -91
  147. package/components/dialog/dialog.css +10 -3
  148. package/components/dialog/dialog.d.ts +73 -0
  149. package/components/dialog/dialog.js +100 -158
  150. package/components/dialog/dialog__body-scroll-preventer.d.ts +9 -0
  151. package/components/dialog/dialog__body-scroll-preventer.js +35 -51
  152. package/components/dialog-ng/dialog-ng.examples.js +5 -5
  153. package/components/dialog-ng/dialog-ng__template.js +1 -0
  154. package/components/docked-panel-ng/docked-panel-ng.examples.js +3 -3
  155. package/components/dropdown/anchor.d.ts +11 -0
  156. package/components/dropdown/anchor.js +6 -22
  157. package/components/dropdown/dropdown.d.ts +77 -0
  158. package/components/dropdown/dropdown.js +131 -168
  159. package/components/dropdown-menu/dropdown-menu.d.ts +26 -0
  160. package/components/dropdown-menu/dropdown-menu.js +43 -104
  161. package/components/error-bubble/error-bubble-legacy.css +1 -1
  162. package/components/error-bubble/error-bubble.css +1 -1
  163. package/components/error-bubble/error-bubble.d.ts +18 -0
  164. package/components/error-bubble/error-bubble.js +17 -39
  165. package/components/error-message/error-message.d.ts +25 -0
  166. package/components/error-message/error-message.js +19 -38
  167. package/components/error-message-ng/error-message-ng.examples.js +1 -1
  168. package/components/error-page-ng/error-page-ng.examples.js +2 -2
  169. package/components/footer/footer.d.ts +28 -0
  170. package/components/footer/footer.js +61 -103
  171. package/components/footer-ng/footer-ng.examples.js +2 -2
  172. package/components/form/form.examples.js +4 -4
  173. package/components/form-ng/form-ng.examples.js +6 -6
  174. package/components/global/compose.d.ts +7 -0
  175. package/components/global/compose.js +3 -3
  176. package/components/global/composeRefs.d.ts +3 -0
  177. package/components/global/composeRefs.js +7 -6
  178. package/components/global/controls-height.d.ts +7 -0
  179. package/components/global/controls-height.js +8 -0
  180. package/components/global/create-stateful-context.d.ts +27 -0
  181. package/components/global/create-stateful-context.js +32 -40
  182. package/components/global/data-tests.d.ts +3 -0
  183. package/components/global/data-tests.js +12 -12
  184. package/components/global/dom.d.ts +37 -0
  185. package/components/global/dom.js +51 -73
  186. package/components/global/focus-sensor-hoc.d.ts +18 -0
  187. package/components/global/focus-sensor-hoc.js +94 -105
  188. package/components/global/fuzzy-highlight.d.ts +5 -0
  189. package/components/global/fuzzy-highlight.js +38 -40
  190. package/components/global/get-event-key.d.ts +2 -0
  191. package/components/global/get-event-key.js +88 -100
  192. package/components/global/get-uid.d.ts +1 -0
  193. package/components/global/get-uid.js +8 -12
  194. package/components/global/inject-styles.d.ts +3 -0
  195. package/components/global/inject-styles.js +7 -9
  196. package/components/global/linear-function.d.ts +6 -0
  197. package/components/global/linear-function.js +9 -12
  198. package/components/global/listeners.d.ts +8 -0
  199. package/components/global/listeners.js +22 -33
  200. package/components/global/memoize.d.ts +1 -0
  201. package/components/global/memoize.js +13 -12
  202. package/components/global/normalize-indent.d.ts +1 -0
  203. package/components/global/normalize-indent.js +26 -30
  204. package/components/global/promise-with-timeout.d.ts +4 -0
  205. package/components/global/promise-with-timeout.js +5 -7
  206. package/components/global/prop-types.d.ts +4 -0
  207. package/components/global/prop-types.js +4 -0
  208. package/components/global/react-dom-renderer.d.ts +16 -0
  209. package/components/global/react-dom-renderer.js +21 -30
  210. package/components/global/rerender-hoc.d.ts +45 -0
  211. package/components/global/rerender-hoc.js +18 -27
  212. package/components/global/schedule-raf.d.ts +1 -0
  213. package/components/global/schedule-raf.js +24 -24
  214. package/components/global/sniffer.d.ts +3 -0
  215. package/components/global/sniffer.js +0 -2
  216. package/components/global/theme.d.ts +13 -0
  217. package/components/global/theme.js +31 -49
  218. package/components/global/trivial-template-tag.d.ts +1 -0
  219. package/components/global/trivial-template-tag.js +6 -8
  220. package/components/global/typescript-utils.d.ts +2 -0
  221. package/components/global/typescript-utils.js +2 -0
  222. package/components/global/url.d.ts +57 -0
  223. package/components/global/url.js +58 -84
  224. package/components/global/variables.css +30 -25
  225. package/components/global/variables.d.ts +90 -0
  226. package/components/global/variables.js +1 -0
  227. package/components/global/variables_dark.css +68 -0
  228. package/components/grid/col.d.ts +31 -0
  229. package/components/grid/col.js +33 -42
  230. package/components/grid/grid.d.ts +14 -0
  231. package/components/grid/grid.js +13 -24
  232. package/components/grid/row.d.ts +40 -0
  233. package/components/grid/row.js +35 -44
  234. package/components/group/group.d.ts +12 -0
  235. package/components/group/group.js +11 -21
  236. package/components/group-ng/group.examples.js +2 -2
  237. package/components/header/header.css +19 -10
  238. package/components/header/header.d.ts +34 -0
  239. package/components/header/header.js +30 -44
  240. package/components/header/logo.d.ts +14 -0
  241. package/components/header/logo.js +16 -25
  242. package/components/header/profile.d.ts +73 -0
  243. package/components/header/profile.js +102 -168
  244. package/components/header/services-link.d.ts +25 -0
  245. package/components/header/services-link.js +20 -37
  246. package/components/header/services.css +3 -3
  247. package/components/header/services.d.ts +33 -0
  248. package/components/header/services.js +49 -102
  249. package/components/header/smart-profile.d.ts +36 -0
  250. package/components/header/smart-profile.js +76 -111
  251. package/components/header/smart-services.d.ts +25 -0
  252. package/components/header/smart-services.js +42 -66
  253. package/components/header/tray-icon.d.ts +32 -0
  254. package/components/header/tray-icon.js +14 -27
  255. package/components/header/tray.d.ts +9 -0
  256. package/components/header/tray.js +12 -24
  257. package/components/heading/heading.css +4 -1
  258. package/components/heading/heading.d.ts +25 -0
  259. package/components/heading/heading.js +33 -63
  260. package/components/http/http.d.ts +49 -0
  261. package/components/http/http.js +144 -174
  262. package/components/http/http.mock.d.ts +20 -0
  263. package/components/http/http.mock.js +46 -56
  264. package/components/hub-source/hub-source.d.ts +42 -0
  265. package/components/hub-source/hub-source.js +89 -105
  266. package/components/hub-source/hub-source__user.d.ts +4 -0
  267. package/components/hub-source/hub-source__user.js +14 -21
  268. package/components/hub-source/hub-source__users-groups.d.ts +24 -0
  269. package/components/hub-source/hub-source__users-groups.js +46 -53
  270. package/components/icon/icon.css +1 -1
  271. package/components/icon/icon.d.ts +43 -0
  272. package/components/icon/icon.js +55 -83
  273. package/components/icon/icon__constants.d.ts +30 -0
  274. package/components/icon/icon__constants.js +25 -24
  275. package/components/icon/icon__svg.d.ts +15 -0
  276. package/components/icon/icon__svg.js +39 -58
  277. package/components/icon/index.d.ts +2 -0
  278. package/components/icon/index.js +1 -1
  279. package/components/icon-ng/icon-ng.examples.js +1 -1
  280. package/components/input/input.css +87 -149
  281. package/components/input/input.d.ts +69 -0
  282. package/components/input/input.js +136 -203
  283. package/components/input-ng/input-ng.examples.js +2 -2
  284. package/components/input-ng/input-ng.js +45 -49
  285. package/components/input-size/input-size.examples.js +5 -5
  286. package/components/island/adaptive-island-hoc.d.ts +65 -0
  287. package/components/island/adaptive-island-hoc.js +21 -31
  288. package/components/island/content.d.ts +12 -0
  289. package/components/island/content.js +81 -123
  290. package/components/island/header.d.ts +8 -0
  291. package/components/island/header.js +60 -84
  292. package/components/island/island.css +8 -5
  293. package/components/island/island.d.ts +82 -0
  294. package/components/island/island.js +19 -41
  295. package/components/island-legacy/content-legacy.d.ts +10 -0
  296. package/components/island-legacy/content-legacy.js +11 -20
  297. package/components/island-legacy/header-legacy.d.ts +10 -0
  298. package/components/island-legacy/header-legacy.js +11 -20
  299. package/components/island-legacy/island-legacy.css +1 -1
  300. package/components/island-legacy/island-legacy.d.ts +12 -0
  301. package/components/island-legacy/island-legacy.js +13 -23
  302. package/components/island-ng/island-ng.examples.js +1 -1
  303. package/components/link/clickableLink.d.ts +20 -0
  304. package/components/link/clickableLink.js +27 -42
  305. package/components/link/link.css +0 -2
  306. package/components/link/link.d.ts +157 -0
  307. package/components/link/link.js +56 -101
  308. package/components/link-ng/link-ng.examples.js +1 -1
  309. package/components/list/consts.d.ts +74 -0
  310. package/components/list/consts.js +22 -22
  311. package/components/list/list.d.ts +191 -0
  312. package/components/list/list.js +505 -691
  313. package/components/list/list__custom.d.ts +6 -0
  314. package/components/list/list__custom.js +37 -75
  315. package/components/list/list__hint.d.ts +15 -0
  316. package/components/list/list__hint.js +7 -15
  317. package/components/list/list__item.d.ts +8 -0
  318. package/components/list/list__item.js +81 -185
  319. package/components/list/list__link.d.ts +9 -0
  320. package/components/list/list__link.js +25 -54
  321. package/components/list/list__separator.d.ts +5 -0
  322. package/components/list/list__separator.js +13 -22
  323. package/components/list/list__title.d.ts +5 -0
  324. package/components/list/list__title.js +18 -34
  325. package/components/list/list__users-groups-source.d.ts +27 -0
  326. package/components/list/list__users-groups-source.js +63 -78
  327. package/components/loader/loader.d.ts +28 -0
  328. package/components/loader/loader.js +31 -51
  329. package/components/loader/loader__core.d.ts +75 -0
  330. package/components/loader/loader__core.js +208 -240
  331. package/components/loader-inline/loader-inline.css +14 -0
  332. package/components/loader-inline/loader-inline.d.ts +18 -0
  333. package/components/loader-inline/loader-inline.js +16 -46
  334. package/components/loader-inline-ng/loader-inline-ng.examples.js +1 -1
  335. package/components/loader-inline-ng/loader-inline-ng.js +1 -17
  336. package/components/loader-inline-ng/loader-inline-ng.test.js +0 -11
  337. package/components/loader-ng/loader-ng.examples.js +1 -1
  338. package/components/loader-screen/loader-screen.d.ts +17 -0
  339. package/components/loader-screen/loader-screen.js +16 -29
  340. package/components/loader-screen-ng/loader-screen-ng.examples.js +1 -1
  341. package/components/login-dialog/login-dialog.d.ts +47 -0
  342. package/components/login-dialog/login-dialog.js +63 -104
  343. package/components/login-dialog/service.d.ts +2 -0
  344. package/components/login-dialog/service.js +11 -15
  345. package/components/markdown/code.d.ts +9 -0
  346. package/components/markdown/code.js +4 -14
  347. package/components/markdown/heading.d.ts +11 -0
  348. package/components/markdown/heading.js +3 -7
  349. package/components/markdown/link.d.ts +12 -0
  350. package/components/markdown/link.js +4 -8
  351. package/components/markdown/markdown.d.ts +14 -0
  352. package/components/markdown/markdown.js +26 -40
  353. package/components/message/message.css +7 -3
  354. package/components/message/message.d.ts +59 -0
  355. package/components/message/message.js +84 -127
  356. package/components/old-browsers-message/old-browsers-message.d.ts +2 -0
  357. package/components/old-browsers-message/old-browsers-message.js +57 -73
  358. package/components/old-browsers-message/old-browsers-message__stop.d.ts +1 -0
  359. package/components/old-browsers-message/old-browsers-message__stop.js +1 -1
  360. package/components/old-browsers-message/white-list.d.ts +2 -0
  361. package/components/old-browsers-message/white-list.js +9 -16
  362. package/components/pager/pager.d.ts +83 -0
  363. package/components/pager/pager.js +184 -291
  364. package/components/pager-ng/pager-ng.examples.js +1 -1
  365. package/components/palette/palette.examples.js +1 -1
  366. package/components/panel/panel.d.ts +12 -0
  367. package/components/panel/panel.js +11 -19
  368. package/components/permissions/permissions.d.ts +111 -0
  369. package/components/permissions/permissions.js +144 -160
  370. package/components/permissions/permissions__cache.d.ts +93 -0
  371. package/components/permissions/permissions__cache.js +200 -231
  372. package/components/permissions-ng/permissions-ng.examples.js +2 -2
  373. package/components/place-under-ng/place-under-ng.examples.js +2 -2
  374. package/components/popup/popup.consts.d.ts +37 -0
  375. package/components/popup/popup.consts.js +36 -36
  376. package/components/popup/popup.css +1 -1
  377. package/components/popup/popup.d.ts +141 -0
  378. package/components/popup/popup.js +262 -346
  379. package/components/popup/popup.target.d.ts +7 -0
  380. package/components/popup/popup.target.js +12 -24
  381. package/components/popup/position.d.ts +30 -0
  382. package/components/popup/position.js +172 -225
  383. package/components/popup-menu/popup-menu.d.ts +59 -0
  384. package/components/popup-menu/popup-menu.js +30 -47
  385. package/components/progress-bar/progress-bar.css +8 -12
  386. package/components/progress-bar/progress-bar.d.ts +58 -0
  387. package/components/progress-bar/progress-bar.js +60 -93
  388. package/components/progress-bar-ng/progress-bar-ng.examples.js +4 -3
  389. package/components/promised-click-ng/promised-click-ng.examples.js +2 -2
  390. package/components/query-assist/query-assist.css +48 -64
  391. package/components/query-assist/query-assist.d.ts +327 -0
  392. package/components/query-assist/query-assist.js +706 -905
  393. package/components/query-assist/query-assist__suggestions.d.ts +29 -0
  394. package/components/query-assist/query-assist__suggestions.js +51 -91
  395. package/components/query-assist-ng/query-assist-ng.examples.js +2 -2
  396. package/components/radio/radio.css +10 -4
  397. package/components/radio/radio.d.ts +18 -0
  398. package/components/radio/radio.js +19 -29
  399. package/components/radio/radio__item.d.ts +28 -0
  400. package/components/radio/radio__item.js +28 -56
  401. package/components/radio-ng/radio-ng.examples.js +1 -1
  402. package/components/save-field-ng/save-field-ng.examples.js +2 -2
  403. package/components/select/select-popup.css +5 -1
  404. package/components/select/select.css +19 -37
  405. package/components/select/select.d.ts +289 -0
  406. package/components/select/select.js +806 -1191
  407. package/components/select/select__filter.d.ts +20 -0
  408. package/components/select/select__filter.js +37 -59
  409. package/components/select/select__popup.d.ts +123 -0
  410. package/components/select/select__popup.js +324 -498
  411. package/components/select-ng/select-ng.examples.js +4 -3
  412. package/components/select-ng/select-ng.js +3 -1
  413. package/components/select-ng/select-ng.test.js +1 -1
  414. package/components/select-ng/select-ng__lazy.js +3 -3
  415. package/components/shortcuts/core.d.ts +74 -0
  416. package/components/shortcuts/core.js +185 -226
  417. package/components/shortcuts/shortcut-title.d.ts +1 -0
  418. package/components/shortcuts/shortcut-title.js +43 -49
  419. package/components/shortcuts/shortcuts-hoc.d.ts +69 -0
  420. package/components/shortcuts/shortcuts-hoc.js +12 -26
  421. package/components/shortcuts/shortcuts.d.ts +28 -0
  422. package/components/shortcuts/shortcuts.js +39 -48
  423. package/components/shortcuts-hint-ng/shortcuts-hint-ng.css +1 -1
  424. package/components/shortcuts-hint-ng/shortcuts-hint-ng.examples.js +2 -2
  425. package/components/sidebar-ng/sidebar-ng.examples.js +3 -3
  426. package/components/storage/storage.d.ts +18 -0
  427. package/components/storage/storage.js +6 -9
  428. package/components/storage/storage__fallback.d.ts +79 -0
  429. package/components/storage/storage__fallback.js +160 -178
  430. package/components/storage/storage__local.d.ts +38 -0
  431. package/components/storage/storage__local.js +108 -104
  432. package/components/tab-trap/tab-trap.d.ts +43 -0
  433. package/components/tab-trap/tab-trap.js +113 -163
  434. package/components/table/cell.d.ts +13 -0
  435. package/components/table/cell.js +10 -20
  436. package/components/table/disable-hover-hoc.d.ts +68 -0
  437. package/components/table/disable-hover-hoc.js +29 -41
  438. package/components/table/header-cell.d.ts +43 -0
  439. package/components/table/header-cell.js +40 -61
  440. package/components/table/header.d.ts +60 -0
  441. package/components/table/header.js +89 -156
  442. package/components/table/multitable.d.ts +25 -0
  443. package/components/table/multitable.js +76 -94
  444. package/components/table/row-with-focus-sensor.d.ts +18 -0
  445. package/components/table/row-with-focus-sensor.js +21 -35
  446. package/components/table/row.d.ts +56 -0
  447. package/components/table/row.js +110 -199
  448. package/components/table/selection-adapter.d.ts +5 -0
  449. package/components/table/selection-adapter.js +8 -8
  450. package/components/table/selection-shortcuts-hoc.d.ts +17 -0
  451. package/components/table/selection-shortcuts-hoc.js +140 -171
  452. package/components/table/selection.d.ts +47 -0
  453. package/components/table/selection.js +148 -183
  454. package/components/table/smart-table.d.ts +60 -0
  455. package/components/table/smart-table.js +29 -48
  456. package/components/table/table.d.ts +160 -0
  457. package/components/table/table.js +170 -256
  458. package/components/table-legacy-ng/table-legacy-ng.examples.js +4 -4
  459. package/components/table-ng/table-ng.examples.js +4 -4
  460. package/components/tabs/collapsible-more.d.ts +29 -0
  461. package/components/tabs/collapsible-more.js +72 -158
  462. package/components/tabs/collapsible-tab.d.ts +16 -0
  463. package/components/tabs/collapsible-tab.js +24 -80
  464. package/components/tabs/collapsible-tabs.d.ts +43 -0
  465. package/components/tabs/collapsible-tabs.js +176 -294
  466. package/components/tabs/custom-item.d.ts +9 -0
  467. package/components/tabs/custom-item.js +2 -3
  468. package/components/tabs/dumb-tabs.d.ts +33 -0
  469. package/components/tabs/dumb-tabs.js +42 -94
  470. package/components/tabs/smart-tabs.d.ts +20 -0
  471. package/components/tabs/smart-tabs.js +14 -27
  472. package/components/tabs/tab-link.d.ts +18 -0
  473. package/components/tabs/tab-link.js +12 -22
  474. package/components/tabs/tab.d.ts +27 -0
  475. package/components/tabs/tab.js +13 -19
  476. package/components/tabs/tabs.css +17 -28
  477. package/components/tabs/tabs.d.ts +7 -0
  478. package/components/tabs/tabs.js +4 -5
  479. package/components/tabs-ng/tabs-ng.examples.js +12 -4
  480. package/components/tabs-ng/tabs-ng.js +1 -4
  481. package/components/tabs-ng/tabs-ng__template.js +1 -1
  482. package/components/tag/tag.css +31 -8
  483. package/components/tag/tag.d.ts +64 -0
  484. package/components/tag/tag.js +103 -155
  485. package/components/tags-input/tags-input.css +10 -4
  486. package/components/tags-input/tags-input.d.ts +154 -0
  487. package/components/tags-input/tags-input.js +233 -315
  488. package/components/tags-input-ng/tags-input-ng.examples.js +1 -1
  489. package/components/tags-list/tags-list.d.ts +46 -0
  490. package/components/tags-list/tags-list.js +35 -83
  491. package/components/template-ng/template-ng.examples.js +1 -1
  492. package/components/text/text.d.ts +17 -0
  493. package/components/text/text.js +13 -21
  494. package/components/title-ng/title-ng.examples.js +1 -1
  495. package/components/toggle/toggle.css +61 -35
  496. package/components/toggle/toggle.d.ts +39 -0
  497. package/components/toggle/toggle.js +31 -62
  498. package/components/toggle-ng/toggle-ng.examples.js +1 -1
  499. package/components/tooltip/tooltip.css +7 -0
  500. package/components/tooltip/tooltip.d.ts +65 -0
  501. package/components/tooltip/tooltip.js +109 -151
  502. package/components/tooltip-ng/tooltip-ng.examples.js +2 -2
  503. package/components/user-agreement/service.d.ts +161 -0
  504. package/components/user-agreement/service.js +216 -270
  505. package/components/user-agreement/toolbox.eula.d.ts +2 -0
  506. package/components/user-agreement/user-agreement.d.ts +69 -0
  507. package/components/user-agreement/user-agreement.js +55 -98
  508. package/components/user-card/card.d.ts +52 -0
  509. package/components/user-card/card.js +42 -78
  510. package/components/user-card/smart-user-card-tooltip.d.ts +20 -0
  511. package/components/user-card/smart-user-card-tooltip.js +39 -58
  512. package/components/user-card/tooltip.d.ts +31 -0
  513. package/components/user-card/tooltip.js +25 -46
  514. package/components/user-card/user-card.d.ts +11 -0
  515. package/components/user-card/user-card.js +3 -5
  516. package/components/user-card-ng/user-card-ng.examples.js +4 -4
  517. package/dist/_helpers/anchor.js +2 -2
  518. package/dist/_helpers/badge.js +1 -1
  519. package/dist/_helpers/button-group.js +1 -1
  520. package/dist/_helpers/button-set.js +1 -1
  521. package/dist/_helpers/button-toolbar.js +1 -1
  522. package/dist/_helpers/button__classes.js +5 -8
  523. package/dist/_helpers/card.js +1 -1
  524. package/dist/_helpers/checkbox.js +1 -1
  525. package/dist/_helpers/date-picker.js +1 -1
  526. package/dist/_helpers/dialog__body-scroll-preventer.js +2 -2
  527. package/dist/_helpers/error-message.js +1 -1
  528. package/dist/_helpers/footer.js +3 -3
  529. package/dist/_helpers/grid.js +1 -1
  530. package/dist/_helpers/group.js +1 -1
  531. package/dist/_helpers/header.js +1 -1
  532. package/dist/_helpers/icon.js +1 -1
  533. package/dist/_helpers/input.js +1 -1
  534. package/dist/_helpers/island.js +1 -1
  535. package/dist/_helpers/link.js +1 -1
  536. package/dist/_helpers/list.js +1 -1
  537. package/dist/_helpers/loader-inline.js +3 -0
  538. package/dist/_helpers/loader-screen.js +1 -1
  539. package/dist/_helpers/panel.js +1 -1
  540. package/dist/_helpers/query-assist__suggestions.js +3 -3
  541. package/dist/_helpers/radio.js +1 -1
  542. package/dist/_helpers/select__filter.js +13 -9
  543. package/dist/_helpers/services-link.js +1 -1
  544. package/dist/_helpers/sidebar.js +7 -4
  545. package/dist/_helpers/table.js +1 -1
  546. package/dist/_helpers/tabs.js +1 -1
  547. package/dist/_helpers/theme.js +50 -0
  548. package/dist/_helpers/title.js +14 -14
  549. package/dist/alert/alert.d.ts +113 -0
  550. package/dist/alert/alert.js +56 -50
  551. package/dist/alert/container.d.ts +15 -0
  552. package/dist/alert/container.js +6 -8
  553. package/dist/alert-service/alert-service.d.ts +34 -0
  554. package/dist/alert-service/alert-service.js +9 -7
  555. package/dist/analytics/analytics.d.ts +24 -0
  556. package/dist/analytics/analytics.js +10 -15
  557. package/dist/analytics/analytics__custom-plugin.d.ts +39 -0
  558. package/dist/analytics/analytics__custom-plugin.js +30 -9
  559. package/dist/analytics/analytics__fus-plugin.d.ts +62 -0
  560. package/dist/analytics/analytics__fus-plugin.js +23 -6
  561. package/dist/analytics/analytics__ga-plugin.d.ts +17 -0
  562. package/dist/analytics/analytics__ga-plugin.js +12 -6
  563. package/dist/analytics/analytics__plugin-utils.d.ts +15 -0
  564. package/dist/analytics/analytics__plugin-utils.js +58 -59
  565. package/dist/analytics-ng/analytics-ng.js +1 -0
  566. package/dist/auth/auth.d.ts +3 -0
  567. package/dist/auth/auth.js +9 -9
  568. package/dist/auth/auth__core.d.ts +235 -0
  569. package/dist/auth/auth__core.js +219 -125
  570. package/dist/auth/background-flow.d.ts +31 -0
  571. package/dist/auth/background-flow.js +9 -1
  572. package/dist/auth/down-notification.d.ts +15 -0
  573. package/dist/auth/down-notification.js +8 -8
  574. package/dist/auth/iframe-flow.d.ts +20 -0
  575. package/dist/auth/iframe-flow.js +20 -6
  576. package/dist/auth/landing-entry.d.ts +3 -0
  577. package/dist/auth/landing.d.ts +2 -0
  578. package/dist/auth/landing.js +22 -16
  579. package/dist/auth/request-builder.d.ts +47 -0
  580. package/dist/auth/request-builder.js +7 -1
  581. package/dist/auth/response-parser.d.ts +70 -0
  582. package/dist/auth/response-parser.js +25 -13
  583. package/dist/auth/storage.d.ts +112 -0
  584. package/dist/auth/storage.js +50 -17
  585. package/dist/auth/token-validator.d.ts +93 -0
  586. package/dist/auth/token-validator.js +32 -12
  587. package/dist/auth/window-flow.d.ts +26 -0
  588. package/dist/auth/window-flow.js +24 -11
  589. package/dist/auth-dialog/auth-dialog.d.ts +60 -0
  590. package/dist/auth-dialog/auth-dialog.js +5 -8
  591. package/dist/auth-dialog-service/auth-dialog-service.d.ts +5 -0
  592. package/dist/auth-dialog-service/auth-dialog-service.js +1 -1
  593. package/dist/auth-ng/auth-ng.js +9 -9
  594. package/dist/autofocus-ng/autofocus-ng.js +1 -1
  595. package/dist/avatar/avatar-example-datauri.d.ts +1 -0
  596. package/dist/avatar/avatar.d.ts +51 -0
  597. package/dist/avatar/avatar.js +14 -11
  598. package/dist/avatar/fallback-avatar.d.ts +17 -0
  599. package/dist/avatar-editor-ng/avatar-editor-ng.js +9 -7
  600. package/dist/badge/badge.d.ts +24 -0
  601. package/dist/breadcrumb-ng/breadcrumb-ng.js +1 -1
  602. package/dist/button/button.d.ts +67 -0
  603. package/dist/button/button.js +17 -18
  604. package/dist/button/button__classes.d.ts +2 -0
  605. package/dist/button/button__classes.js +0 -3
  606. package/dist/button-group/button-group.d.ts +17 -0
  607. package/dist/button-group/button-group.js +5 -3
  608. package/dist/button-group/caption.d.ts +8 -0
  609. package/dist/button-group-ng/button-group-ng.js +1 -1
  610. package/dist/button-ng/button-ng.js +6 -31
  611. package/dist/button-set/button-set.d.ts +12 -0
  612. package/dist/button-toolbar/button-toolbar.d.ts +12 -0
  613. package/dist/caret/caret.d.ts +66 -0
  614. package/dist/caret/caret.js +35 -19
  615. package/dist/checkbox/checkbox.d.ts +41 -0
  616. package/dist/checkbox/checkbox.js +6 -0
  617. package/dist/code/code.d.ts +43 -0
  618. package/dist/code/code.js +13 -9
  619. package/dist/confirm/confirm.d.ts +48 -0
  620. package/dist/confirm/confirm.js +4 -4
  621. package/dist/confirm-ng/confirm-ng.js +1 -1
  622. package/dist/confirm-service/confirm-service.d.ts +15 -0
  623. package/dist/confirm-service/confirm-service.js +1 -1
  624. package/dist/content-layout/content-layout.d.ts +26 -0
  625. package/dist/content-layout/content-layout.js +4 -2
  626. package/dist/content-layout/sidebar.d.ts +31 -0
  627. package/dist/contenteditable/contenteditable.d.ts +47 -0
  628. package/dist/contenteditable/contenteditable.js +6 -4
  629. package/dist/data-list/data-list.d.ts +89 -0
  630. package/dist/data-list/data-list.js +54 -30
  631. package/dist/data-list/data-list.mock.d.ts +16 -0
  632. package/dist/data-list/data-list.mock.js +2 -2
  633. package/dist/data-list/item.d.ts +50 -0
  634. package/dist/data-list/item.js +33 -32
  635. package/dist/data-list/selection.d.ts +16 -0
  636. package/dist/data-list/selection.js +13 -0
  637. package/dist/data-list/title.d.ts +26 -0
  638. package/dist/data-list/title.js +1 -0
  639. package/dist/data-list-ng/data-list-ng.js +6 -9
  640. package/dist/date-picker/consts.d.ts +99 -0
  641. package/dist/date-picker/consts.js +2 -21
  642. package/dist/date-picker/date-input.d.ts +57 -0
  643. package/dist/date-picker/date-input.js +8 -3
  644. package/dist/date-picker/date-picker.d.ts +70 -0
  645. package/dist/date-picker/date-picker.js +39 -39
  646. package/dist/date-picker/date-popup.d.ts +56 -0
  647. package/dist/date-picker/date-popup.js +44 -27
  648. package/dist/date-picker/day.d.ts +30 -0
  649. package/dist/date-picker/day.js +8 -4
  650. package/dist/date-picker/formats.d.ts +2 -0
  651. package/dist/date-picker/month-names.d.ts +13 -0
  652. package/dist/date-picker/month-names.js +6 -5
  653. package/dist/date-picker/month-slider.d.ts +29 -0
  654. package/dist/date-picker/month-slider.js +2 -2
  655. package/dist/date-picker/month.d.ts +14 -0
  656. package/dist/date-picker/months.d.ts +11 -0
  657. package/dist/date-picker/months.js +3 -3
  658. package/dist/date-picker/weekdays.d.ts +13 -0
  659. package/dist/date-picker/weekdays.js +1 -1
  660. package/dist/date-picker/years.d.ts +21 -0
  661. package/dist/date-picker/years.js +8 -6
  662. package/dist/dialog/dialog.d.ts +73 -0
  663. package/dist/dialog/dialog.js +4 -2
  664. package/dist/dialog/dialog__body-scroll-preventer.d.ts +9 -0
  665. package/dist/dialog-ng/dialog-ng.js +3 -3
  666. package/dist/dialog-ng/dialog-ng__template.js +1 -0
  667. package/dist/docked-panel-ng/docked-panel-ng.js +1 -1
  668. package/dist/dropdown/anchor.d.ts +11 -0
  669. package/dist/dropdown/anchor.js +1 -1
  670. package/dist/dropdown/dropdown.d.ts +77 -0
  671. package/dist/dropdown/dropdown.js +14 -7
  672. package/dist/dropdown-menu/dropdown-menu.d.ts +26 -0
  673. package/dist/dropdown-menu/dropdown-menu.js +9 -6
  674. package/dist/error-bubble/error-bubble.d.ts +18 -0
  675. package/dist/error-bubble/error-bubble.js +4 -2
  676. package/dist/error-message/error-message.d.ts +25 -0
  677. package/dist/footer/footer.d.ts +28 -0
  678. package/dist/global/compose.d.ts +7 -0
  679. package/dist/global/compose.js +2 -2
  680. package/dist/global/composeRefs.d.ts +3 -0
  681. package/dist/global/controls-height.d.ts +7 -0
  682. package/dist/global/controls-height.js +13 -0
  683. package/dist/global/create-stateful-context.d.ts +27 -0
  684. package/dist/global/data-tests.d.ts +3 -0
  685. package/dist/global/data-tests.js +5 -1
  686. package/dist/global/dom.d.ts +37 -0
  687. package/dist/global/dom.js +4 -4
  688. package/dist/global/focus-sensor-hoc.d.ts +18 -0
  689. package/dist/global/focus-sensor-hoc.js +58 -20
  690. package/dist/global/fuzzy-highlight.d.ts +5 -0
  691. package/dist/global/get-event-key.d.ts +2 -0
  692. package/dist/global/get-event-key.js +0 -1
  693. package/dist/global/get-uid.d.ts +1 -0
  694. package/dist/global/inject-styles.d.ts +3 -0
  695. package/dist/global/linear-function.d.ts +6 -0
  696. package/dist/global/listeners.d.ts +8 -0
  697. package/dist/global/listeners.js +10 -2
  698. package/dist/global/memoize.d.ts +1 -0
  699. package/dist/global/memoize.js +7 -6
  700. package/dist/global/normalize-indent.d.ts +1 -0
  701. package/dist/global/normalize-indent.js +5 -1
  702. package/dist/global/promise-with-timeout.d.ts +4 -0
  703. package/dist/global/prop-types.d.ts +4 -0
  704. package/dist/global/prop-types.js +7 -0
  705. package/dist/global/react-dom-renderer.d.ts +16 -0
  706. package/dist/global/react-dom-renderer.js +2 -0
  707. package/dist/global/rerender-hoc.d.ts +45 -0
  708. package/dist/global/rerender-hoc.js +5 -14
  709. package/dist/global/schedule-raf.d.ts +1 -0
  710. package/dist/global/schedule-raf.js +3 -1
  711. package/dist/global/sniffer.d.ts +3 -0
  712. package/dist/global/theme.d.ts +13 -0
  713. package/dist/global/theme.js +7 -54
  714. package/dist/global/trivial-template-tag.d.ts +1 -0
  715. package/dist/global/typescript-utils.d.ts +2 -0
  716. package/dist/global/typescript-utils.js +4 -0
  717. package/dist/global/url.d.ts +57 -0
  718. package/dist/global/url.js +1 -1
  719. package/dist/global/variables.d.ts +90 -0
  720. package/dist/global/variables.js +1 -0
  721. package/dist/grid/col.d.ts +31 -0
  722. package/dist/grid/col.js +7 -1
  723. package/dist/grid/grid.d.ts +14 -0
  724. package/dist/grid/row.d.ts +40 -0
  725. package/dist/grid/row.js +1 -4
  726. package/dist/group/group.d.ts +12 -0
  727. package/dist/header/header.d.ts +34 -0
  728. package/dist/header/header.js +14 -19
  729. package/dist/header/logo.d.ts +14 -0
  730. package/dist/header/profile.d.ts +73 -0
  731. package/dist/header/profile.js +4 -4
  732. package/dist/header/services-link.d.ts +25 -0
  733. package/dist/header/services.d.ts +33 -0
  734. package/dist/header/services.js +12 -3
  735. package/dist/header/smart-profile.d.ts +36 -0
  736. package/dist/header/smart-profile.js +11 -14
  737. package/dist/header/smart-services.d.ts +25 -0
  738. package/dist/header/smart-services.js +21 -16
  739. package/dist/header/tray-icon.d.ts +32 -0
  740. package/dist/header/tray-icon.js +2 -5
  741. package/dist/header/tray.d.ts +9 -0
  742. package/dist/heading/heading.d.ts +25 -0
  743. package/dist/heading/heading.js +15 -14
  744. package/dist/http/http.d.ts +49 -0
  745. package/dist/http/http.js +47 -12
  746. package/dist/http/http.mock.d.ts +20 -0
  747. package/dist/http/http.mock.js +12 -5
  748. package/dist/hub-source/hub-source.d.ts +42 -0
  749. package/dist/hub-source/hub-source.js +14 -1
  750. package/dist/hub-source/hub-source__user.d.ts +4 -0
  751. package/dist/hub-source/hub-source__user.js +4 -2
  752. package/dist/hub-source/hub-source__users-groups.d.ts +24 -0
  753. package/dist/hub-source/hub-source__users-groups.js +9 -1
  754. package/dist/icon/icon.d.ts +43 -0
  755. package/dist/icon/icon.js +2 -2
  756. package/dist/icon/icon__constants.d.ts +30 -0
  757. package/dist/icon/icon__constants.js +28 -23
  758. package/dist/icon/icon__svg.d.ts +15 -0
  759. package/dist/icon/index.d.ts +2 -0
  760. package/dist/icon/index.js +1 -1
  761. package/dist/input/input.d.ts +69 -0
  762. package/dist/input/input.js +93 -87
  763. package/dist/input-ng/input-ng.js +46 -49
  764. package/dist/island/adaptive-island-hoc.d.ts +65 -0
  765. package/dist/island/adaptive-island-hoc.js +6 -4
  766. package/dist/island/content.d.ts +12 -0
  767. package/dist/island/content.js +8 -6
  768. package/dist/island/header.d.ts +8 -0
  769. package/dist/island/header.js +16 -8
  770. package/dist/island/island.d.ts +82 -0
  771. package/dist/island-legacy/content-legacy.d.ts +10 -0
  772. package/dist/island-legacy/header-legacy.d.ts +10 -0
  773. package/dist/island-legacy/island-legacy.d.ts +12 -0
  774. package/dist/link/clickableLink.d.ts +20 -0
  775. package/dist/link/link.d.ts +157 -0
  776. package/dist/link/link.js +9 -5
  777. package/dist/list/consts.d.ts +74 -0
  778. package/dist/list/consts.js +26 -20
  779. package/dist/list/list.d.ts +191 -0
  780. package/dist/list/list.js +32 -26
  781. package/dist/list/list__custom.d.ts +6 -0
  782. package/dist/list/list__custom.js +8 -13
  783. package/dist/list/list__hint.d.ts +15 -0
  784. package/dist/list/list__item.d.ts +8 -0
  785. package/dist/list/list__item.js +3 -4
  786. package/dist/list/list__link.d.ts +9 -0
  787. package/dist/list/list__link.js +5 -6
  788. package/dist/list/list__separator.d.ts +5 -0
  789. package/dist/list/list__separator.js +2 -4
  790. package/dist/list/list__title.d.ts +5 -0
  791. package/dist/list/list__title.js +2 -4
  792. package/dist/list/list__users-groups-source.d.ts +27 -0
  793. package/dist/list/list__users-groups-source.js +22 -12
  794. package/dist/loader/loader.d.ts +28 -0
  795. package/dist/loader/loader.js +5 -1
  796. package/dist/loader/loader__core.d.ts +75 -0
  797. package/dist/loader/loader__core.js +90 -48
  798. package/dist/loader-inline/loader-inline.d.ts +18 -0
  799. package/dist/loader-inline/loader-inline.js +3 -21
  800. package/dist/loader-inline-ng/loader-inline-ng.js +2 -30
  801. package/dist/loader-screen/loader-screen.d.ts +17 -0
  802. package/dist/login-dialog/login-dialog.d.ts +47 -0
  803. package/dist/login-dialog/login-dialog.js +5 -3
  804. package/dist/login-dialog/service.d.ts +2 -0
  805. package/dist/login-dialog/service.js +6 -2
  806. package/dist/markdown/code.d.ts +9 -0
  807. package/dist/markdown/code.js +3 -3
  808. package/dist/markdown/heading.d.ts +11 -0
  809. package/dist/markdown/heading.js +2 -2
  810. package/dist/markdown/link.d.ts +12 -0
  811. package/dist/markdown/link.js +3 -3
  812. package/dist/markdown/markdown.d.ts +14 -0
  813. package/dist/markdown/markdown.js +19 -21
  814. package/dist/message/message.d.ts +59 -0
  815. package/dist/message/message.js +36 -27
  816. package/dist/old-browsers-message/old-browsers-message.d.ts +2 -0
  817. package/dist/old-browsers-message/old-browsers-message.js +10 -6
  818. package/dist/old-browsers-message/old-browsers-message__stop.d.ts +1 -0
  819. package/dist/old-browsers-message/white-list.d.ts +2 -0
  820. package/dist/old-browsers-message/white-list.js +3 -3
  821. package/dist/pager/pager.d.ts +83 -0
  822. package/dist/pager/pager.js +44 -37
  823. package/dist/pager-ng/pager-ng.js +6 -7
  824. package/dist/panel/panel.d.ts +12 -0
  825. package/dist/permissions/permissions.d.ts +111 -0
  826. package/dist/permissions/permissions.js +23 -4
  827. package/dist/permissions/permissions__cache.d.ts +93 -0
  828. package/dist/permissions/permissions__cache.js +10 -3
  829. package/dist/permissions-ng/permissions-ng.js +9 -9
  830. package/dist/popup/popup.consts.d.ts +37 -0
  831. package/dist/popup/popup.consts.js +43 -29
  832. package/dist/popup/popup.d.ts +141 -0
  833. package/dist/popup/popup.js +84 -54
  834. package/dist/popup/popup.target.d.ts +7 -0
  835. package/dist/popup/popup.target.js +3 -4
  836. package/dist/popup/position.d.ts +30 -0
  837. package/dist/popup/position.js +11 -6
  838. package/dist/popup-menu/popup-menu.d.ts +59 -0
  839. package/dist/popup-menu/popup-menu.js +7 -6
  840. package/dist/progress-bar/progress-bar.d.ts +58 -0
  841. package/dist/progress-bar/progress-bar.js +6 -8
  842. package/dist/progress-bar-ng/progress-bar-ng.js +0 -1
  843. package/dist/promised-click-ng/promised-click-ng.js +2 -2
  844. package/dist/query-assist/query-assist.d.ts +327 -0
  845. package/dist/query-assist/query-assist.js +136 -88
  846. package/dist/query-assist/query-assist__suggestions.d.ts +29 -0
  847. package/dist/query-assist-ng/query-assist-ng.js +2 -7
  848. package/dist/radio/radio.d.ts +18 -0
  849. package/dist/radio/radio__item.d.ts +28 -0
  850. package/dist/radio/radio__item.js +5 -2
  851. package/dist/save-field-ng/save-field-ng.js +2 -9
  852. package/dist/select/select.d.ts +289 -0
  853. package/dist/select/select.js +191 -218
  854. package/dist/select/select__filter.d.ts +20 -0
  855. package/dist/select/select__filter.js +3 -1
  856. package/dist/select/select__popup.d.ts +123 -0
  857. package/dist/select/select__popup.js +96 -77
  858. package/dist/select-ng/select-ng.js +8 -9
  859. package/dist/select-ng/select-ng__lazy.js +11 -16
  860. package/dist/shortcuts/core.d.ts +74 -0
  861. package/dist/shortcuts/core.js +16 -10
  862. package/dist/shortcuts/shortcut-title.d.ts +1 -0
  863. package/dist/shortcuts/shortcuts-hoc.d.ts +69 -0
  864. package/dist/shortcuts/shortcuts.d.ts +28 -0
  865. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +2 -2
  866. package/dist/sidebar-ng/sidebar-ng.js +2 -2
  867. package/dist/storage/storage.d.ts +18 -0
  868. package/dist/storage/storage.js +10 -8
  869. package/dist/storage/storage__fallback.d.ts +79 -0
  870. package/dist/storage/storage__fallback.js +31 -19
  871. package/dist/storage/storage__local.d.ts +38 -0
  872. package/dist/storage/storage__local.js +43 -26
  873. package/dist/style.css +1 -1
  874. package/dist/tab-trap/tab-trap.d.ts +43 -0
  875. package/dist/tab-trap/tab-trap.js +17 -5
  876. package/dist/table/cell.d.ts +13 -0
  877. package/dist/table/disable-hover-hoc.d.ts +68 -0
  878. package/dist/table/disable-hover-hoc.js +1 -1
  879. package/dist/table/header-cell.d.ts +43 -0
  880. package/dist/table/header-cell.js +4 -0
  881. package/dist/table/header.d.ts +60 -0
  882. package/dist/table/header.js +9 -5
  883. package/dist/table/multitable.d.ts +25 -0
  884. package/dist/table/multitable.js +21 -7
  885. package/dist/table/row-with-focus-sensor.d.ts +18 -0
  886. package/dist/table/row-with-focus-sensor.js +8 -5
  887. package/dist/table/row.d.ts +56 -0
  888. package/dist/table/row.js +27 -25
  889. package/dist/table/selection-adapter.d.ts +5 -0
  890. package/dist/table/selection-shortcuts-hoc.d.ts +17 -0
  891. package/dist/table/selection-shortcuts-hoc.js +44 -19
  892. package/dist/table/selection.d.ts +47 -0
  893. package/dist/table/selection.js +18 -1
  894. package/dist/table/smart-table.d.ts +60 -0
  895. package/dist/table/smart-table.js +6 -4
  896. package/dist/table/table.d.ts +160 -0
  897. package/dist/table/table.js +59 -39
  898. package/dist/table-legacy-ng/table-legacy-ng.js +6 -7
  899. package/dist/table-legacy-ng/table-legacy-ng__pager.js +6 -7
  900. package/dist/table-ng/smart-table-ng.js +2 -1
  901. package/dist/table-ng/table-ng.js +4 -3
  902. package/dist/tabs/collapsible-more.d.ts +29 -0
  903. package/dist/tabs/collapsible-more.js +2 -1
  904. package/dist/tabs/collapsible-tab.d.ts +16 -0
  905. package/dist/tabs/collapsible-tab.js +9 -10
  906. package/dist/tabs/collapsible-tabs.d.ts +43 -0
  907. package/dist/tabs/collapsible-tabs.js +58 -107
  908. package/dist/tabs/custom-item.d.ts +9 -0
  909. package/dist/tabs/dumb-tabs.d.ts +33 -0
  910. package/dist/tabs/dumb-tabs.js +7 -12
  911. package/dist/tabs/smart-tabs.d.ts +20 -0
  912. package/dist/tabs/smart-tabs.js +2 -1
  913. package/dist/tabs/tab-link.d.ts +18 -0
  914. package/dist/tabs/tab.d.ts +27 -0
  915. package/dist/tabs/tabs.d.ts +7 -0
  916. package/dist/tabs/tabs.js +2 -1
  917. package/dist/tabs-ng/tabs-ng.js +1 -6
  918. package/dist/tabs-ng/tabs-ng__template.js +1 -1
  919. package/dist/tag/tag.d.ts +64 -0
  920. package/dist/tag/tag.js +9 -4
  921. package/dist/tags-input/tags-input.d.ts +154 -0
  922. package/dist/tags-input/tags-input.js +68 -39
  923. package/dist/tags-input-ng/tags-input-ng.js +7 -8
  924. package/dist/tags-list/tags-list.d.ts +46 -0
  925. package/dist/tags-list/tags-list.js +2 -8
  926. package/dist/text/text.d.ts +17 -0
  927. package/dist/text/text.js +1 -1
  928. package/dist/toggle/toggle.d.ts +39 -0
  929. package/dist/toggle/toggle.js +7 -10
  930. package/dist/toggle-ng/toggle-ng.js +0 -1
  931. package/dist/tooltip/tooltip.d.ts +65 -0
  932. package/dist/tooltip/tooltip.js +19 -7
  933. package/dist/user-agreement/service.d.ts +161 -0
  934. package/dist/user-agreement/service.js +29 -26
  935. package/dist/user-agreement/toolbox.eula.d.ts +2 -0
  936. package/dist/user-agreement/user-agreement.d.ts +69 -0
  937. package/dist/user-agreement/user-agreement.js +4 -7
  938. package/dist/user-card/card.d.ts +52 -0
  939. package/dist/user-card/smart-user-card-tooltip.d.ts +20 -0
  940. package/dist/user-card/smart-user-card-tooltip.js +5 -9
  941. package/dist/user-card/tooltip.d.ts +31 -0
  942. package/dist/user-card/tooltip.js +6 -2
  943. package/dist/user-card/user-card.d.ts +11 -0
  944. package/dist/user-card/user-card.js +3 -7
  945. package/dist/user-card-ng/user-card-ng.js +5 -9
  946. package/package.json +77 -52
  947. package/typings.d.ts +97 -0
  948. package/webpack.config.js +4 -12
  949. package/components/alert/alert.examples.js +0 -143
  950. package/components/alert/alert.test.js +0 -61
  951. package/components/alert/container.test.js +0 -12
  952. package/components/alert-service/alert-service.examples.js +0 -91
  953. package/components/alert-service/alert-service.test.js +0 -88
  954. package/components/analytics/analytics.examples.js +0 -47
  955. package/components/analytics/analytics.test.js +0 -419
  956. package/components/auth/auth.examples.js +0 -122
  957. package/components/auth/auth.test.js +0 -772
  958. package/components/auth/request-builder.test.js +0 -64
  959. package/components/auth/response-parser.test.js +0 -89
  960. package/components/auth/storage.test.js +0 -178
  961. package/components/auth/token-validator.test.js +0 -199
  962. package/components/auth-dialog/auth-dialog.examples.js +0 -75
  963. package/components/auth-dialog/auth-dialog.test.js +0 -11
  964. package/components/auth-dialog-service/auth-dialog-service.examples.js +0 -66
  965. package/components/auth-dialog-service/auth-dialog-service.test.js +0 -75
  966. package/components/avatar/avatar.examples.js +0 -46
  967. package/components/avatar/avatar.test.js +0 -59
  968. package/components/badge/badge.examples.js +0 -26
  969. package/components/badge/badge.test.js +0 -34
  970. package/components/button/button.examples.js +0 -219
  971. package/components/button/button.test.js +0 -64
  972. package/components/button-group/button-group.examples.js +0 -58
  973. package/components/button-group/button-group.test.js +0 -10
  974. package/components/button-set/button-set.examples.js +0 -24
  975. package/components/button-set/button-set.test.js +0 -10
  976. package/components/button-toolbar/button-toolbar.examples.js +0 -31
  977. package/components/button-toolbar/button-toolbar.test.js +0 -21
  978. package/components/caret/caret.examples.js +0 -39
  979. package/components/caret/caret.test.js +0 -137
  980. package/components/checkbox/checkbox.examples.js +0 -67
  981. package/components/checkbox/checkbox.test.js +0 -78
  982. package/components/code/code.examples.js +0 -92
  983. package/components/code/code.test.js +0 -100
  984. package/components/confirm/confirm.examples.js +0 -93
  985. package/components/confirm/confirm.test.js +0 -28
  986. package/components/confirm-service/confirm-service.examples.js +0 -61
  987. package/components/confirm-service/confirm-service.test.js +0 -59
  988. package/components/content-layout/content-layout.examples.js +0 -188
  989. package/components/content-layout/content-layout.test.js +0 -41
  990. package/components/contenteditable/contenteditable.examples.js +0 -45
  991. package/components/contenteditable/contenteditable.test.js +0 -73
  992. package/components/data-list/data-list.examples.js +0 -116
  993. package/components/data-list/data-list.test.js +0 -40
  994. package/components/date-picker/date-picker.examples.js +0 -345
  995. package/components/date-picker/date-picker.test.js +0 -89
  996. package/components/dialog/dialog.examples.js +0 -209
  997. package/components/dialog/dialog.test.js +0 -62
  998. package/components/dropdown/dropdown.examples.js +0 -151
  999. package/components/dropdown/dropdown.test.js +0 -175
  1000. package/components/dropdown-menu/dropdown-menu.examples.js +0 -47
  1001. package/components/dropdown-menu/dropdown-menu.test.js +0 -76
  1002. package/components/error-bubble/error-bubble.examples.js +0 -96
  1003. package/components/error-bubble/error-bubble.test.js +0 -41
  1004. package/components/error-message/error-message.examples.js +0 -33
  1005. package/components/error-message/error-message.test.js +0 -21
  1006. package/components/footer/footer.examples.js +0 -56
  1007. package/components/footer/footer.test.js +0 -78
  1008. package/components/global/conic-gradient.js +0 -31
  1009. package/components/global/data-tests.test.js +0 -18
  1010. package/components/global/dom.examples.js +0 -39
  1011. package/components/global/dom.test.js +0 -99
  1012. package/components/global/fuzzy-highlight.test.js +0 -52
  1013. package/components/global/get-uid.test.js +0 -21
  1014. package/components/global/listeners.test.js +0 -78
  1015. package/components/global/radial-gradient-mask.js +0 -43
  1016. package/components/global/supports-css.js +0 -17
  1017. package/components/global/url.test.js +0 -138
  1018. package/components/global/variables.examples.js +0 -160
  1019. package/components/global/variables_dark.js +0 -55
  1020. package/components/grid/grid.examples.js +0 -291
  1021. package/components/grid/grid.test.js +0 -72
  1022. package/components/group/group.examples.js +0 -27
  1023. package/components/group/group.test.js +0 -21
  1024. package/components/header/header.examples.js +0 -118
  1025. package/components/header/header.test.js +0 -21
  1026. package/components/heading/heading.examples.js +0 -64
  1027. package/components/heading/heading.test.js +0 -29
  1028. package/components/http/http.examples.js +0 -34
  1029. package/components/http/http.test.js +0 -187
  1030. package/components/hub-source/hub-source.test.js +0 -200
  1031. package/components/hub-source/hub-source__users-groups.test.js +0 -91
  1032. package/components/icon/icon.examples.js +0 -146
  1033. package/components/icon/icon.test.js +0 -51
  1034. package/components/input/input.examples.js +0 -140
  1035. package/components/input/input.test.js +0 -40
  1036. package/components/island/island.examples.js +0 -74
  1037. package/components/island/island.test.js +0 -59
  1038. package/components/island-legacy/island-legacy.examples.js +0 -33
  1039. package/components/island-legacy/island-legacy.test.js +0 -21
  1040. package/components/link/link.examples.js +0 -86
  1041. package/components/link/link.test.js +0 -182
  1042. package/components/list/list.examples.js +0 -271
  1043. package/components/list/list.test.js +0 -428
  1044. package/components/list/list__item.test.js +0 -60
  1045. package/components/list/list__users-groups-source.test.js +0 -125
  1046. package/components/loader/loader.examples.js +0 -22
  1047. package/components/loader/loader__core.test.js +0 -232
  1048. package/components/loader-inline/inject-styles.js +0 -28
  1049. package/components/loader-inline/loader-inline.examples.js +0 -106
  1050. package/components/loader-inline/loader-inline.test.js +0 -21
  1051. package/components/loader-screen/loader-screen.examples.js +0 -40
  1052. package/components/markdown/markdown.examples.js +0 -110
  1053. package/components/markdown/markdown.test.js +0 -60
  1054. package/components/message/message.examples.js +0 -78
  1055. package/components/message/message.test.js +0 -26
  1056. package/components/old-browsers-message/old-browsers-message.examples.js +0 -37
  1057. package/components/pager/pager.examples.js +0 -291
  1058. package/components/pager/pager.test.js +0 -56
  1059. package/components/panel/panel.examples.js +0 -33
  1060. package/components/panel/panel.test.js +0 -20
  1061. package/components/permissions/permissions.test.js +0 -435
  1062. package/components/permissions/permissions__cache.test.js +0 -75
  1063. package/components/popup/popup.examples.js +0 -340
  1064. package/components/popup/popup.test.js +0 -242
  1065. package/components/popup/position.test.js +0 -192
  1066. package/components/popup-menu/popup-menu.examples.js +0 -38
  1067. package/components/popup-menu/popup-menu.test.js +0 -29
  1068. package/components/progress-bar/progress-bar.examples.js +0 -56
  1069. package/components/progress-bar/progress-bar.test.js +0 -114
  1070. package/components/query-assist/query-assist.examples.js +0 -305
  1071. package/components/query-assist/query-assist.test.js +0 -690
  1072. package/components/radio/radio.examples.js +0 -58
  1073. package/components/radio/radio.test.js +0 -90
  1074. package/components/radio/radio__item.test.js +0 -98
  1075. package/components/select/select.examples.js +0 -1023
  1076. package/components/select/select.test.js +0 -1201
  1077. package/components/select/select__popup.test.js +0 -156
  1078. package/components/shortcuts/core.test.js +0 -282
  1079. package/components/shortcuts/shortcuts-hoc.test.js +0 -53
  1080. package/components/shortcuts/shortcuts.test.js +0 -45
  1081. package/components/storage/storage.examples.js +0 -37
  1082. package/components/storage/storage.test.js +0 -248
  1083. package/components/tab-trap/tab-trap.examples.js +0 -49
  1084. package/components/table/table.examples.js +0 -346
  1085. package/components/tabs/tabs.examples.js +0 -275
  1086. package/components/tabs/tabs.test.js +0 -26
  1087. package/components/tag/tag.examples.js +0 -50
  1088. package/components/tag/tag.test.js +0 -21
  1089. package/components/tags-input/tag-input.examples.js +0 -133
  1090. package/components/tags-input/tags-input.test.js +0 -234
  1091. package/components/tags-list/tags-list.examples.js +0 -41
  1092. package/components/tags-list/tags-list.test.js +0 -43
  1093. package/components/text/text.examples.js +0 -25
  1094. package/components/text/text.test.js +0 -25
  1095. package/components/toggle/toggle.examples.js +0 -79
  1096. package/components/toggle/toggle.test.js +0 -34
  1097. package/components/tooltip/tooltip.examples.js +0 -118
  1098. package/components/tooltip/tooltip.test.js +0 -128
  1099. package/components/user-agreement/user-agreement.examples.js +0 -112
  1100. package/components/user-card/user-card.examples.js +0 -88
  1101. package/components/user-card/user-card.test.js +0 -102
  1102. package/components/welcome.examples.js +0 -25
  1103. package/dist/_helpers/inject-styles.js +0 -22
  1104. package/dist/global/conic-gradient.js +0 -35
  1105. package/dist/global/radial-gradient-mask.js +0 -49
  1106. package/dist/global/supports-css.js +0 -20
  1107. package/dist/global/variables_dark.js +0 -57
  1108. package/dist/loader-inline/inject-styles.js +0 -11
@@ -2,24 +2,26 @@ import { _ as _defineProperty, a as _extends } from '../_helpers/_rollupPluginBa
2
2
  import React, { Component, Fragment } from 'react';
3
3
  import classNames from 'classnames';
4
4
  import PropTypes from 'prop-types';
5
- import chevronDown from '@jetbrains/icons/chevron-10px';
5
+ import chevronDownIcon from '@jetbrains/icons/chevron-down';
6
6
  import closeIcon from '@jetbrains/icons/close';
7
7
  import deepEqual from 'deep-equal';
8
8
  import '../dropdown/dropdown.js';
9
9
  import Avatar, { Size as Size$1 } from '../avatar/avatar.js';
10
10
  import Popup from '../popup/popup.js';
11
11
  import List, { ActiveItemContext } from '../list/list.js';
12
- import Input, { Size } from '../input/input.js';
12
+ import { Size, Input } from '../input/input.js';
13
13
  import Shortcuts from '../shortcuts/shortcuts.js';
14
- import Button from '../button/button.js';
14
+ import { Button } from '../button/button.js';
15
15
  import joinDataTestAttributes from '../global/data-tests.js';
16
16
  import getUID from '../global/get-uid.js';
17
17
  import rerenderHOC from '../global/rerender-hoc.js';
18
18
  import fuzzyHighlight from '../global/fuzzy-highlight.js';
19
- import Theme from '../global/theme.js';
20
19
  import memoize from '../global/memoize.js';
20
+ import { isArray } from '../global/typescript-utils.js';
21
+ import { ControlsHeightContext } from '../global/controls-height.js';
21
22
  import SelectPopup from './select__popup.js';
22
23
  import { A as Anchor } from '../_helpers/anchor.js';
24
+ import '@jetbrains/icons/chevron-10px';
23
25
  import '../icon/icon.js';
24
26
  import 'util-deprecate';
25
27
  import '../icon/icon__constants.js';
@@ -62,15 +64,12 @@ import '../list/list__title.js';
62
64
  import '../list/list__separator.js';
63
65
  import '../list/list__hint.js';
64
66
  import '../list/consts.js';
67
+ import '../global/prop-types.js';
68
+ import '../global/composeRefs.js';
65
69
  import '../_helpers/input.js';
66
70
  import '@jetbrains/icons/search';
67
71
  import '../loader-inline/loader-inline.js';
68
- import '../_helpers/inject-styles.js';
69
- import '../global/conic-gradient.js';
70
- import 'conic-gradient';
71
- import '../global/supports-css.js';
72
- import '../global/inject-styles.js';
73
- import '../global/radial-gradient-mask.js';
72
+ import '../_helpers/loader-inline.js';
74
73
  import '../shortcuts/shortcuts-hoc.js';
75
74
  import '../tags-list/tags-list.js';
76
75
  import '../tag/tag.js';
@@ -78,7 +77,7 @@ import '../caret/caret.js';
78
77
  import '../text/text.js';
79
78
  import '../_helpers/select__filter.js';
80
79
 
81
- var modules_9d0de074 = {"unit":"8px","select":"select_rui_9815","value":"value_rui_9815 ellipsis_rui_750f font_rui_750f","icons":"icons_rui_9815","toolbar":"toolbar_rui_9815","button":"button_rui_9815","buttonSpaced":"buttonSpaced_rui_9815","inputMode":"inputMode_rui_9815","buttonMode":"buttonMode_rui_9815","selectedIcon":"selectedIcon_rui_9815 resetButton_rui_750f","clearIcon":"clearIcon_rui_9815","sizeS":"sizeS_rui_9815","sizeM":"sizeM_rui_9815","sizeL":"sizeL_rui_9815","sizeFULL":"sizeFULL_rui_9815","sizeAUTO":"sizeAUTO_rui_9815","materialMode":"materialMode_rui_9815","open":"open_rui_9815","buttonContainer":"buttonContainer_rui_9815","buttonValue":"buttonValue_rui_9815 ellipsis_rui_750f","buttonValueOpen":"buttonValueOpen_rui_9815","label":"label_rui_9815","disabled":"disabled_rui_9815","selectedLabel":"selectedLabel_rui_9815","avatar":"avatar_rui_9815","popup":"popup_rui_9815","chevron":"chevron_rui_9815","chevronIcon":"chevronIcon_rui_9815"};
80
+ var modules_9d0de074 = {"unit":"8px","button-shadow":"inset 0 0 0 1px","select":"select_rui_bf62","value":"value_rui_bf62 ellipsis_rui_750f font_rui_750f","icons":"icons_rui_bf62","toolbar":"toolbar_rui_bf62","button":"button_rui_bf62","buttonSpaced":"buttonSpaced_rui_bf62","inputMode":"inputMode_rui_bf62","selectedIcon":"selectedIcon_rui_bf62 resetButton_rui_750f","clearIcon":"clearIcon_rui_bf62","sizeS":"sizeS_rui_bf62","sizeM":"sizeM_rui_bf62","sizeL":"sizeL_rui_bf62","sizeFULL":"sizeFULL_rui_bf62","sizeAUTO":"sizeAUTO_rui_bf62","buttonMode":"buttonMode_rui_bf62","open":"open_rui_bf62","buttonContainer":"buttonContainer_rui_bf62","buttonValue":"buttonValue_rui_bf62 ellipsis_rui_750f","buttonValueOpen":"buttonValueOpen_rui_bf62","label":"label_rui_bf62","disabled":"disabled_rui_bf62","avatar":"avatar_rui_bf62","popup":"popup_rui_bf62","chevron":"chevron_rui_bf62","chevronIcon":"chevronIcon_rui_bf62","heightS":"heightS_rui_bf62"};
82
81
 
83
82
  /**
84
83
  * @name Select
@@ -90,23 +89,26 @@ function noop() {}
90
89
  */
91
90
 
92
91
 
93
- const Type = {
94
- BUTTON: 'BUTTON',
95
- INPUT: 'INPUT',
96
- CUSTOM: 'CUSTOM',
97
- INLINE: 'INLINE',
98
- MATERIAL: 'MATERIAL',
99
- INPUT_WITHOUT_CONTROLS: 'INPUT_WITHOUT_CONTROLS'
100
- };
92
+ var Type;
93
+
94
+ (function (Type) {
95
+ Type["BUTTON"] = "BUTTON";
96
+ Type["INPUT"] = "INPUT";
97
+ Type["CUSTOM"] = "CUSTOM";
98
+ Type["INLINE"] = "INLINE";
99
+ Type["INPUT_WITHOUT_CONTROLS"] = "INPUT_WITHOUT_CONTROLS";
100
+ })(Type || (Type = {}));
101
+
102
+ const ICONS_OFFSET = 12;
101
103
  const ICON_WIDTH = 20;
102
104
  const getStyle = memoize(iconsLength => ({
103
- paddingRight: iconsLength * ICON_WIDTH
105
+ paddingRight: ICONS_OFFSET + iconsLength * ICON_WIDTH
104
106
  }));
105
107
 
106
108
  const isInputMode = type => type === Type.INPUT || type === Type.INPUT_WITHOUT_CONTROLS;
107
109
 
108
110
  function getLowerCaseLabel(item) {
109
- if (List.isItemType(List.ListProps.Type.SEPARATOR, item) || List.isItemType(List.ListProps.Type.HINT, item) || item.label == null) {
111
+ if (List.isItemType(List.ListProps.Type.SEPARATOR, item) || List.isItemType(List.ListProps.Type.HINT, item) || typeof item.label !== 'string') {
110
112
  return null;
111
113
  }
112
114
 
@@ -124,27 +126,31 @@ function doesLabelMatch(itemToCheck, fn) {
124
126
  }
125
127
 
126
128
  function getFilterFn(filter) {
127
- if (filter.fn) {
128
- return filter.fn;
129
- }
129
+ if (typeof filter === 'object') {
130
+ if (filter.fn) {
131
+ return filter.fn;
132
+ }
130
133
 
131
- if (filter.fuzzy) {
132
- return (itemToCheck, checkString) => doesLabelMatch(itemToCheck, lowerCaseLabel => fuzzyHighlight(checkString, lowerCaseLabel).matched);
134
+ if (filter.fuzzy) {
135
+ return (itemToCheck, checkString) => doesLabelMatch(itemToCheck, lowerCaseLabel => fuzzyHighlight(checkString, lowerCaseLabel).matched);
136
+ }
133
137
  }
134
138
 
135
139
  return (itemToCheck, checkString) => doesLabelMatch(itemToCheck, lowerCaseLabel => lowerCaseLabel.indexOf(checkString) >= 0);
136
140
  }
137
141
 
138
- const buildMultipleMap = selected => selected.reduce((acc, item) => {
139
- acc[item.key] = true;
140
- return acc;
141
- }, {});
142
+ function buildMultipleMap(selected) {
143
+ return selected.reduce((acc, item) => {
144
+ acc[item.key] = true;
145
+ return acc;
146
+ }, {});
147
+ }
142
148
 
143
149
  function getListItems(props, state, rawFilterString) {
144
150
  let data = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : props.data;
145
151
  let filterString = rawFilterString.trim();
146
152
 
147
- if (isInputMode(props.type) && state.selected && filterString === state.selected.label) {
153
+ if (isInputMode(props.type) && !props.allowAny && state.selected && !Array.isArray(state.selected) && filterString === state.selected.label) {
148
154
  filterString = ''; // ignore multiple if it is exactly the selected item
149
155
  }
150
156
 
@@ -158,18 +164,22 @@ function getListItems(props, state, rawFilterString) {
158
164
  };
159
165
 
160
166
  if (check(item, lowerCaseString, data)) {
167
+ var _state$multipleMap2;
168
+
161
169
  exactMatch = item.label === filterString;
162
170
 
163
- if (props.multiple && !props.multiple.removeSelectedItems) {
164
- item.checkbox = !!state.multipleMap[item.key];
171
+ if (props.multiple && !(typeof props.multiple === 'object' && props.multiple.removeSelectedItems)) {
172
+ var _state$multipleMap;
173
+
174
+ item.checkbox = !!((_state$multipleMap = state.multipleMap) !== null && _state$multipleMap !== void 0 && _state$multipleMap[item.key]);
165
175
  }
166
176
 
167
- if (props.multiple && props.multiple.limit) {
177
+ if (props.multiple && typeof props.multiple === 'object' && props.multiple.limit && Array.isArray(state.selected)) {
168
178
  item.disabled = props.multiple.limit === state.selected.length && !state.selected.find(selectedItem => selectedItem.key === item.key);
169
179
  } // Ignore item if it's multiple and is already selected
170
180
 
171
181
 
172
- if (!(props.multiple && props.multiple.removeSelectedItems && state.multipleMap[item.key])) {
182
+ if (!(props.multiple && typeof props.multiple === 'object' && props.multiple.removeSelectedItems && (_state$multipleMap2 = state.multipleMap) !== null && _state$multipleMap2 !== void 0 && _state$multipleMap2[item.key])) {
173
183
  filteredData.push(item);
174
184
  }
175
185
  }
@@ -182,6 +192,8 @@ function getListItems(props, state, rawFilterString) {
182
192
 
183
193
  if (add && filterString && !exactMatch || add && add.alwaysVisible) {
184
194
  if (!(add.regexp && !add.regexp.test(filterString)) && !(add.minlength && filterString.length < +add.minlength) || add.alwaysVisible) {
195
+ var _add$delayed;
196
+
185
197
  let label;
186
198
 
187
199
  if (add.label) {
@@ -193,7 +205,7 @@ function getListItems(props, state, rawFilterString) {
193
205
  addButton = {
194
206
  prefix: add.prefix,
195
207
  label,
196
- delayed: add.hasOwnProperty('delayed') ? add.delayed : true
208
+ delayed: (_add$delayed = add.delayed) !== null && _add$delayed !== void 0 ? _add$delayed : true
197
209
  };
198
210
  }
199
211
  }
@@ -204,8 +216,8 @@ function getListItems(props, state, rawFilterString) {
204
216
  };
205
217
  }
206
218
 
207
- function getSelectedIndex(selected, data, multiple) {
208
- const firstSelected = multiple ? selected[0] : selected;
219
+ function getSelectedIndex(selected, data) {
220
+ const firstSelected = Array.isArray(selected) ? selected[0] : selected;
209
221
 
210
222
  if (firstSelected == null) {
211
223
  return null;
@@ -231,10 +243,15 @@ const getItemLabel = _ref => {
231
243
  selectedLabel,
232
244
  label
233
245
  } = _ref;
234
- return selectedLabel != null ? selectedLabel : label;
246
+
247
+ if (selectedLabel != null) {
248
+ return selectedLabel;
249
+ }
250
+
251
+ return typeof label === 'string' ? label : '';
235
252
  };
236
253
 
237
- const getValueForFilter = (selected, type, filterValue) => selected && isInputMode(type) ? getItemLabel(selected) : filterValue;
254
+ const getValueForFilter = (selected, type, filterValue) => selected && !isArray(selected) && isInputMode(type) ? getItemLabel(selected) : filterValue;
238
255
 
239
256
  function isSameSelected(prevSelected, selected) {
240
257
  if (!prevSelected || !selected || prevSelected.length !== selected.length) {
@@ -270,7 +287,7 @@ class Select extends Component {
270
287
  shownData: [],
271
288
  selected: this.props.multiple ? [] : null,
272
289
  selectedIndex: null,
273
- filterValue: this.props.filter && this.props.filter.value || '',
290
+ filterValue: this.props.filter && typeof this.props.filter === 'object' && this.props.filter.value || '',
274
291
  shortcutsEnabled: false,
275
292
  popupShortcuts: false,
276
293
  showPopup: false,
@@ -287,8 +304,8 @@ class Select extends Component {
287
304
 
288
305
  _defineProperty(this, "listId", `${this.id}:list`);
289
306
 
290
- _defineProperty(this, "_focusHandler", () => {
291
- this.props.onFocus();
307
+ _defineProperty(this, "_focusHandler", e => {
308
+ this.props.onFocus(e);
292
309
  this.setState({
293
310
  shortcutsEnabled: true,
294
311
  focused: true
@@ -296,6 +313,8 @@ class Select extends Component {
296
313
  });
297
314
 
298
315
  _defineProperty(this, "_blurHandler", () => {
316
+ var _this$_popup;
317
+
299
318
  this.props.onBlur();
300
319
 
301
320
  if (this._popup && this._popup.isVisible() && !this._popup.isClickingPopup) {
@@ -306,7 +325,7 @@ class Select extends Component {
306
325
  });
307
326
  }
308
327
 
309
- if (!this._popup.isClickingPopup) {
328
+ if (!((_this$_popup = this._popup) !== null && _this$_popup !== void 0 && _this$_popup.isClickingPopup)) {
310
329
  this.setState({
311
330
  shortcutsEnabled: false,
312
331
  focused: false
@@ -314,6 +333,8 @@ class Select extends Component {
314
333
  }
315
334
  });
316
335
 
336
+ _defineProperty(this, "node", void 0);
337
+
317
338
  _defineProperty(this, "nodeRef", el => {
318
339
  this.node = el;
319
340
  });
@@ -327,13 +348,15 @@ class Select extends Component {
327
348
  });
328
349
 
329
350
  _defineProperty(this, "_onEnter", () => {
351
+ var _this$_popup2;
352
+
330
353
  if (this.state.addButton && this.state.shownData.length === 0) {
331
354
  this.addHandler();
332
355
  }
333
356
 
334
357
  this.props.onDone();
335
358
 
336
- if (!this._popup.isVisible() && this.props.allowAny) {
359
+ if (!((_this$_popup2 = this._popup) !== null && _this$_popup2 !== void 0 && _this$_popup2.isVisible()) && this.props.allowAny) {
337
360
  return true;
338
361
  }
339
362
 
@@ -341,7 +364,9 @@ class Select extends Component {
341
364
  });
342
365
 
343
366
  _defineProperty(this, "_onEsc", event => {
344
- if (!this._popup.isVisible()) {
367
+ var _this$_popup3;
368
+
369
+ if (!((_this$_popup3 = this._popup) !== null && _this$_popup3 !== void 0 && _this$_popup3.isVisible())) {
345
370
  return true;
346
371
  } else if (this.props.multiple || !this.props.getInitial) {
347
372
  return false;
@@ -367,6 +392,10 @@ class Select extends Component {
367
392
  }
368
393
  });
369
394
 
395
+ _defineProperty(this, "popupRef", el => {
396
+ this._popup = el;
397
+ });
398
+
370
399
  _defineProperty(this, "addHandler", () => {
371
400
  const value = this.filterValue();
372
401
 
@@ -402,53 +431,48 @@ class Select extends Component {
402
431
  });
403
432
 
404
433
  _defineProperty(this, "_filterChangeHandler", e => {
405
- this._setFilter(e.target.value, e);
434
+ this._setFilter(e.currentTarget.value, e);
406
435
  });
407
436
 
408
- _defineProperty(this, "_setFilter", function (value) {
409
- let event = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
437
+ _defineProperty(this, "_setFilter", (value, event) => {
438
+ var _this$_popup4;
410
439
 
411
- if (_this.isInputMode() && !_this.state.focused) {
440
+ if (this.isInputMode() && !this.state.focused) {
412
441
  return;
413
442
  }
414
443
 
415
- if (value === _this.state.filterValue) {
444
+ if (value === this.state.filterValue) {
416
445
  return;
417
446
  }
418
447
 
419
448
  const filterValue = value.replace(/^\s+/g, '');
449
+ this.props.onFilter(filterValue);
420
450
 
421
- _this.props.onFilter(filterValue);
422
-
423
- if (_this.props.allowAny) {
451
+ if (this.props.allowAny) {
424
452
  const fakeSelected = {
425
453
  key: Math.random(),
426
454
  label: filterValue
427
455
  };
428
-
429
- _this.setState({
456
+ this.setState({
430
457
  selected: filterValue === '' ? null : fakeSelected,
431
458
  selectedIndex: null
432
459
  }, () => {
433
- _this.props.onSelect(fakeSelected, event);
434
-
435
- _this.props.onChange(fakeSelected, event);
460
+ this.props.onSelect(fakeSelected, event);
461
+ this.props.onChange(fakeSelected, event);
436
462
  });
437
463
  }
438
464
 
439
- !_this._popup.isVisible() && _this.props.onBeforeOpen();
440
-
441
- _this.setState({
465
+ !((_this$_popup4 = this._popup) !== null && _this$_popup4 !== void 0 && _this$_popup4.isVisible()) && this.props.onBeforeOpen();
466
+ this.setState({
442
467
  filterValue
443
468
  }, () => {
444
- _this._showPopup();
469
+ this._showPopup();
445
470
  });
446
471
  });
447
472
 
448
473
  _defineProperty(this, "_redrawPopup", () => {
449
474
  if (this.props.multiple) {
450
475
  setTimeout(() => {
451
- //setTimeout solves events order and bubbling issue
452
476
  this.isInputMode() && this.clearFilter();
453
477
 
454
478
  this._showPopup();
@@ -458,8 +482,11 @@ class Select extends Component {
458
482
 
459
483
  _defineProperty(this, "_listSelectHandler", function (selected, event) {
460
484
  let opts = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
461
- const isItem = List.isItemType.bind(null, List.ListProps.Type.ITEM);
462
- const isCustomItem = List.isItemType.bind(null, List.ListProps.Type.CUSTOM);
485
+
486
+ const isItem = item => List.isItemType(List.ListProps.Type.ITEM, item);
487
+
488
+ const isCustomItem = item => List.isItemType(List.ListProps.Type.CUSTOM, item);
489
+
463
490
  const isSelectItemEvent = event && (event.type === 'select' || event.type === 'keydown');
464
491
 
465
492
  if (isSelectItemEvent) {
@@ -519,7 +546,7 @@ class Select extends Component {
519
546
  selectedIndex: _this._getSelectedIndex(selected, _this.props.data)
520
547
  };
521
548
 
522
- if (_this.props.multiple.limit && nextSelection.length === _this.props.multiple.limit) {
549
+ if (typeof _this.props.multiple === 'object' && _this.props.multiple.limit && nextSelection.length === _this.props.multiple.limit) {
523
550
  nextState.shownData = prevState.shownData.map(item => nextSelection.find(selectedItem => selectedItem.key === item.key) ? item : { ...item,
524
551
  disabled: true
525
552
  });
@@ -537,7 +564,9 @@ class Select extends Component {
537
564
  nextState.multipleMap = restMultipleMap;
538
565
  }
539
566
 
540
- return nextState;
567
+ return { ...prevState,
568
+ ...nextState
569
+ };
541
570
  }, () => {
542
571
  if (tryKeepOpen) {
543
572
  _this._redrawPopup();
@@ -548,8 +577,10 @@ class Select extends Component {
548
577
 
549
578
  _defineProperty(this, "_listSelectAllHandler", function () {
550
579
  let isSelectAll = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
551
- const isItem = List.isItemType.bind(null, List.ListProps.Type.ITEM);
552
- const isCustomItem = List.isItemType.bind(null, List.ListProps.Type.CUSTOM);
580
+
581
+ const isItem = item => List.isItemType(List.ListProps.Type.ITEM, item);
582
+
583
+ const isCustomItem = item => List.isItemType(List.ListProps.Type.CUSTOM, item);
553
584
 
554
585
  _this.setState(prevState => {
555
586
  const currentSelection = prevState.selected;
@@ -586,13 +617,13 @@ class Select extends Component {
586
617
  if (!this.props.allowAny) {
587
618
  if (this.props.hideSelected || !this.state.selected || this.props.multiple) {
588
619
  this.clearFilter();
589
- } else if (this.state.selected) {
620
+ } else if (this.state.selected && !Array.isArray(this.state.selected)) {
590
621
  this.filterValue(getItemLabel(this.state.selected));
591
622
  }
592
623
  }
593
624
  }
594
625
 
595
- const isTagRemoved = this.props.tags && event && event.target && event.target.matches('[data-test="ring-tag-remove"]');
626
+ const isTagRemoved = this.props.tags && event && event.target && event.target instanceof Element && event.target.matches('[data-test="ring-tag-remove"]');
596
627
 
597
628
  if (!isTagRemoved) {
598
629
  this._hidePopup(isEsc);
@@ -608,8 +639,7 @@ class Select extends Component {
608
639
  event.stopPropagation();
609
640
  }
610
641
 
611
- const empty = Select._getEmptyValue(this.props.multiple);
612
-
642
+ const empty = this.props.multiple ? [] : null;
613
643
  this.setState({
614
644
  selected: empty,
615
645
  selectedIndex: null,
@@ -622,23 +652,13 @@ class Select extends Component {
622
652
  return false;
623
653
  });
624
654
 
625
- _defineProperty(this, "popupRef", el => {
626
- this._popup = el;
627
- });
628
-
629
- _defineProperty(this, "buttonRef", el => {
630
- this.button = el;
631
- });
655
+ _defineProperty(this, "filter", void 0);
632
656
 
633
657
  _defineProperty(this, "filterRef", el => {
634
658
  this.filter = el;
635
659
  });
636
660
  }
637
661
 
638
- static _getEmptyValue(multiple) {
639
- return multiple ? [] : null;
640
- }
641
-
642
662
  static getDerivedStateFromProps(nextProps, prevState) {
643
663
  const {
644
664
  multiple,
@@ -669,22 +689,21 @@ class Select extends Component {
669
689
 
670
690
  if (prevState.selected) {
671
691
  Object.assign(nextState, {
672
- selectedIndex: getSelectedIndex(prevState.selected, data, multiple),
692
+ selectedIndex: getSelectedIndex(prevState.selected, data),
673
693
  prevFilterValue: getValueForFilter(prevState.selected, type, filterValue)
674
694
  });
675
695
  }
676
696
  }
677
697
 
678
698
  if ('selected' in nextProps && nextProps.selected !== prevSelected) {
679
- const selected = nextProps.selected || Select._getEmptyValue(multiple);
680
-
681
- const selectedIndex = getSelectedIndex(selected, data || prevData, multiple);
699
+ const selected = nextProps.selected || (multiple ? [] : null);
700
+ const selectedIndex = getSelectedIndex(selected, data || prevData);
682
701
  Object.assign(nextState, {
683
702
  selected,
684
703
  prevFilterValue: getValueForFilter(selected, type, filterValue)
685
704
  });
686
705
 
687
- if (!multiple || !isSameSelected(prevSelected, selected)) {
706
+ if (!Array.isArray(prevSelected) || !Array.isArray(selected) || !isSameSelected(prevSelected, selected)) {
688
707
  Object.assign(nextState, {
689
708
  selectedIndex
690
709
  });
@@ -692,7 +711,7 @@ class Select extends Component {
692
711
  }
693
712
 
694
713
  if (prevMultiple !== multiple && !deepEqual(prevMultiple, multiple)) {
695
- nextState.selected = Select._getEmptyValue(multiple);
714
+ nextState.selected = multiple ? [] : null;
696
715
  }
697
716
 
698
717
  const {
@@ -701,7 +720,7 @@ class Select extends Component {
701
720
  ...nextState
702
721
  };
703
722
 
704
- if (selected && multiple) {
723
+ if (selected && Array.isArray(selected)) {
705
724
  nextState.multipleMap = buildMultipleMap(selected);
706
725
  const {
707
726
  filteredData,
@@ -744,21 +763,17 @@ class Select extends Component {
744
763
  }
745
764
 
746
765
  _getSelectedIndex(selected, data) {
747
- return getSelectedIndex(selected, data, this.props.multiple);
766
+ return getSelectedIndex(selected, data);
748
767
  }
749
768
 
750
769
  _getResetOption() {
751
- const isOptionsSelected = this.state.selected && this.state.selected.length;
752
- const hasTagsResetProp = this.props.tags && this.props.tags.reset;
770
+ const isOptionsSelected = Array.isArray(this.state.selected) && this.state.selected.length;
771
+ const reset = this.props.tags && typeof this.props.tags === 'object' ? this.props.tags.reset : null;
753
772
 
754
- if (!isOptionsSelected || !hasTagsResetProp) {
773
+ if (!isOptionsSelected || !reset) {
755
774
  return null;
756
775
  }
757
776
 
758
- const {
759
- reset
760
- } = this.props.tags;
761
-
762
777
  const resetHandler = (item, event) => {
763
778
  this.clear(event);
764
779
  this.clearFilter();
@@ -817,7 +832,7 @@ class Select extends Component {
817
832
 
818
833
  const _shownData = this._prependResetOption(shownData);
819
834
 
820
- let message = null;
835
+ let message;
821
836
 
822
837
  if (this.props.loading) {
823
838
  message = this.props.loadingMessage;
@@ -879,10 +894,10 @@ class Select extends Component {
879
894
 
880
895
  _hidePopup(tryFocusAnchor) {
881
896
  if (this.node && this.state.showPopup) {
882
- this.setState({
897
+ this.setState(prevState => ({
883
898
  showPopup: false,
884
- filterValue: ''
885
- });
899
+ filterValue: this.props.allowAny ? prevState.filterValue : ''
900
+ }));
886
901
 
887
902
  if (tryFocusAnchor) {
888
903
  const restoreFocusNode = this.props.targetElement || this.node.querySelector('[data-test~=ring-select__focus]');
@@ -946,19 +961,18 @@ class Select extends Component {
946
961
  this.setState({
947
962
  filterValue: setValue
948
963
  });
964
+ return undefined;
949
965
  } else {
950
966
  return this.state.filterValue;
951
967
  }
952
-
953
- return undefined;
954
968
  }
955
969
 
956
970
  isInputMode() {
957
971
  return isInputMode(this.props.type);
958
972
  }
959
973
 
960
- _rebuildMultipleMap(selected, multiple) {
961
- if (selected && multiple) {
974
+ _rebuildMultipleMap(selected) {
975
+ if (Array.isArray(selected)) {
962
976
  this.setState({
963
977
  multipleMap: buildMultipleMap(selected)
964
978
  });
@@ -966,15 +980,17 @@ class Select extends Component {
966
980
  }
967
981
 
968
982
  _selectionIsEmpty() {
969
- return this.props.multiple && !this.state.selected.length || !this.state.selected;
983
+ return Array.isArray(this.state.selected) && !this.state.selected.length || !this.state.selected;
970
984
  }
971
985
 
972
986
  _getLabel() {
973
- return this.props.label || this.props.selectedLabel || 'Select an option';
987
+ var _ref2, _this$props$label;
988
+
989
+ return (_ref2 = (_this$props$label = this.props.label) !== null && _this$props$label !== void 0 ? _this$props$label : this.props.selectedLabel) !== null && _ref2 !== void 0 ? _ref2 : 'Select an option';
974
990
  }
975
991
 
976
992
  _getSelectedString() {
977
- if (this.props.multiple) {
993
+ if (Array.isArray(this.state.selected)) {
978
994
  const labels = [];
979
995
 
980
996
  for (let i = 0; i < this.state.selected.length; i++) {
@@ -983,7 +999,7 @@ class Select extends Component {
983
999
 
984
1000
  return labels.filter(Boolean).join(', ');
985
1001
  } else {
986
- return getItemLabel(this.state.selected);
1002
+ return this.state.selected != null ? getItemLabel(this.state.selected) : null;
987
1003
  }
988
1004
  }
989
1005
 
@@ -998,7 +1014,7 @@ class Select extends Component {
998
1014
  } = this.props;
999
1015
  const icons = [];
1000
1016
 
1001
- if (selected !== null && selected !== void 0 && selected.icon) {
1017
+ if (!Array.isArray(selected) && selected !== null && selected !== void 0 && selected.icon) {
1002
1018
  icons.push( /*#__PURE__*/React.createElement("button", {
1003
1019
  title: "Toggle options popup",
1004
1020
  type: "button",
@@ -1029,7 +1045,7 @@ class Select extends Component {
1029
1045
  title: "Toggle options popup",
1030
1046
  className: modules_9d0de074.chevron,
1031
1047
  iconClassName: modules_9d0de074.chevronIcon,
1032
- icon: chevronDown,
1048
+ icon: chevronDownIcon,
1033
1049
  key: "hide",
1034
1050
  disabled: this.props.disabled,
1035
1051
  onClick: this._clickHandler
@@ -1040,7 +1056,9 @@ class Select extends Component {
1040
1056
  }
1041
1057
 
1042
1058
  _getAvatar() {
1043
- return this.state.selected && (this.state.selected.avatar || this.state.selected.showGeneratedAvatar) && /*#__PURE__*/React.createElement(Avatar, {
1059
+ var _this$state$selected, _this$state$selected2;
1060
+
1061
+ return !Array.isArray(this.state.selected) && (((_this$state$selected = this.state.selected) === null || _this$state$selected === void 0 ? void 0 : _this$state$selected.avatar) || ((_this$state$selected2 = this.state.selected) === null || _this$state$selected2 === void 0 ? void 0 : _this$state$selected2.showGeneratedAvatar)) && /*#__PURE__*/React.createElement(Avatar, {
1044
1062
  className: modules_9d0de074.avatar,
1045
1063
  url: this.state.selected.avatar,
1046
1064
  username: this.state.selected.username,
@@ -1063,13 +1081,13 @@ class Select extends Component {
1063
1081
  }
1064
1082
 
1065
1083
  renderSelect(activeItemId) {
1066
- var _this$_popup, _this$_popup$list;
1084
+ var _this$_popup5, _this$_popup5$list;
1067
1085
 
1068
1086
  const dataTest = this.props['data-test'];
1069
1087
  const {
1070
1088
  shortcutsEnabled
1071
1089
  } = this.state;
1072
- const classes = classNames(modules_9d0de074.select, 'ring-js-shortcuts', this.props.className, {
1090
+ const classes = classNames(modules_9d0de074.select, 'ring-js-shortcuts', this.props.className, modules_9d0de074[`height${this.props.height || this.context}`], {
1073
1091
  [modules_9d0de074[`size${this.props.size}`]]: this.props.type !== Type.INLINE,
1074
1092
  [modules_9d0de074.disabled]: this.props.disabled
1075
1093
  });
@@ -1096,6 +1114,7 @@ class Select extends Component {
1096
1114
  map: this.getShortcutsMap(),
1097
1115
  scope: this.shortcutsScope
1098
1116
  }), /*#__PURE__*/React.createElement(Input, _extends({}, ariaProps, {
1117
+ height: this.props.height,
1099
1118
  autoComplete: "off",
1100
1119
  id: this.props.id,
1101
1120
  onClick: this._clickHandler,
@@ -1113,9 +1132,10 @@ class Select extends Component {
1113
1132
  onKeyDown: this.props.onKeyDown,
1114
1133
  "data-test": "ring-select__focus",
1115
1134
  enableShortcuts: shortcutsEnabled ? Object.keys({ ...this.getShortcutsMap(),
1116
- ...((_this$_popup = this._popup) === null || _this$_popup === void 0 ? void 0 : (_this$_popup$list = _this$_popup.list) === null || _this$_popup$list === void 0 ? void 0 : _this$_popup$list.shortcutsMap)
1117
- }) : undefined
1118
- })), this.props.type === Type.INPUT && iconsNode, this._renderPopup());
1135
+ ...((_this$_popup5 = this._popup) === null || _this$_popup5 === void 0 ? void 0 : (_this$_popup5$list = _this$_popup5.list) === null || _this$_popup5$list === void 0 ? void 0 : _this$_popup5$list.shortcutsMap)
1136
+ }) : undefined,
1137
+ afterInput: this.props.type === Type.INPUT && iconsNode
1138
+ })), this._renderPopup());
1119
1139
 
1120
1140
  case Type.BUTTON:
1121
1141
  return /*#__PURE__*/React.createElement("div", {
@@ -1128,6 +1148,7 @@ class Select extends Component {
1128
1148
  }), /*#__PURE__*/React.createElement("div", {
1129
1149
  className: modules_9d0de074.buttonContainer
1130
1150
  }, /*#__PURE__*/React.createElement(Button, _extends({}, ariaProps, {
1151
+ height: this.props.height,
1131
1152
  id: this.props.id,
1132
1153
  onClick: this._clickHandler,
1133
1154
  className: classNames(this.props.buttonClassName, modules_9d0de074.buttonValue, {
@@ -1138,31 +1159,6 @@ class Select extends Component {
1138
1159
  "data-test": "ring-select__button ring-select__focus"
1139
1160
  }), this._getAvatar(), this._selectionIsEmpty() ? this._getLabel() : this._getSelectedString()), iconsNode), this._renderPopup());
1140
1161
 
1141
- case Type.MATERIAL:
1142
- return /*#__PURE__*/React.createElement("div", {
1143
- ref: this.nodeRef,
1144
- className: classNames(classes, modules_9d0de074.materialMode),
1145
- "data-test": joinDataTestAttributes('ring-select', dataTest)
1146
- }, shortcutsEnabled && /*#__PURE__*/React.createElement(Shortcuts, {
1147
- map: this.getShortcutsMap(),
1148
- scope: this.shortcutsScope
1149
- }), !this._selectionIsEmpty() && this.props.selectedLabel && /*#__PURE__*/React.createElement("span", {
1150
- className: modules_9d0de074.selectedLabel
1151
- }, this.props.selectedLabel), /*#__PURE__*/React.createElement("button", _extends({}, ariaProps, {
1152
- id: this.props.id,
1153
- onClick: this._clickHandler,
1154
- type: "button",
1155
- disabled: this.props.disabled,
1156
- className: classNames(this.props.buttonClassName, modules_9d0de074.value, {
1157
- [modules_9d0de074.open]: this.state.showPopup,
1158
- [modules_9d0de074.label]: this._selectionIsEmpty()
1159
- }),
1160
- "aria-label": this._getLabel(),
1161
- style: style,
1162
- "data-test": "ring-select__focus",
1163
- ref: this.buttonRef
1164
- }), this._getAvatar(), this._selectionIsEmpty() ? this._getLabel() : this._getSelectedString()), iconsNode, this._renderPopup());
1165
-
1166
1162
  case Type.INLINE:
1167
1163
  return /*#__PURE__*/React.createElement("div", {
1168
1164
  className: classes,
@@ -1214,7 +1210,55 @@ class Select extends Component {
1214
1210
 
1215
1211
  }
1216
1212
 
1217
- _defineProperty(Select, "propTypes", {
1213
+ _defineProperty(Select, "defaultProps", {
1214
+ data: [],
1215
+ filter: false,
1216
+ multiple: false,
1217
+ clear: false,
1218
+ loading: false,
1219
+ disabled: false,
1220
+ loadingMessage: 'Loading...',
1221
+ notFoundMessage: 'No options found',
1222
+ type: Type.BUTTON,
1223
+ size: Size.M,
1224
+ targetElement: null,
1225
+ hideSelected: false,
1226
+ allowAny: false,
1227
+ hideArrow: false,
1228
+ maxHeight: 600,
1229
+ directions: [Popup.PopupProps.Directions.BOTTOM_RIGHT, Popup.PopupProps.Directions.BOTTOM_LEFT, Popup.PopupProps.Directions.TOP_LEFT, Popup.PopupProps.Directions.TOP_RIGHT],
1230
+ selected: null,
1231
+ label: null,
1232
+ selectedLabel: null,
1233
+ inputPlaceholder: '',
1234
+ hint: null,
1235
+ shortcutsEnabled: false,
1236
+ onBeforeOpen: noop,
1237
+ onLoadMore: noop,
1238
+ onOpen: noop,
1239
+ onClose: noop,
1240
+ onFilter: noop,
1241
+ onFocus: noop,
1242
+ onBlur: noop,
1243
+ onKeyDown: noop,
1244
+ onSelect: noop,
1245
+ onDeselect: noop,
1246
+ onChange: noop,
1247
+ onAdd: noop,
1248
+ onDone: noop,
1249
+ onReset: noop,
1250
+ tags: null,
1251
+ ringPopupTarget: null,
1252
+ dir: 'ltr'
1253
+ });
1254
+
1255
+ _defineProperty(Select, "contextType", ControlsHeightContext);
1256
+
1257
+ _defineProperty(Select, "Type", Type);
1258
+
1259
+ _defineProperty(Select, "Size", Size);
1260
+
1261
+ Select.propTypes = {
1218
1262
  className: PropTypes.string,
1219
1263
  buttonClassName: PropTypes.string,
1220
1264
  id: PropTypes.string,
@@ -1264,83 +1308,12 @@ _defineProperty(Select, "propTypes", {
1264
1308
  hideArrow: PropTypes.bool,
1265
1309
  compact: PropTypes.bool,
1266
1310
  size: PropTypes.oneOf(Object.values(Size)),
1267
- theme: PropTypes.string,
1268
1311
  customAnchor: PropTypes.func,
1269
1312
  disableMoveOverflow: PropTypes.bool,
1270
1313
  disableScrollToActive: PropTypes.bool,
1271
1314
  dir: PropTypes.oneOf(['ltr', 'rtl']),
1272
1315
  'data-test': PropTypes.string
1273
- });
1274
-
1275
- _defineProperty(Select, "defaultProps", {
1276
- data: [],
1277
- filter: false,
1278
- // enable filter (not in INPUT modes)
1279
- multiple: false,
1280
- // multiple can be an object - see demo for more information
1281
- clear: false,
1282
- // enable clear button that clears the "selected" state
1283
- loading: false,
1284
- // show a loading indicator while data is loading
1285
- disabled: false,
1286
- // disable select
1287
- loadingMessage: 'Loading...',
1288
- notFoundMessage: 'No options found',
1289
- type: Type.MATERIAL,
1290
- size: Size.M,
1291
- targetElement: null,
1292
- // element to bind the popup to (select BUTTON or INPUT by default)
1293
- hideSelected: false,
1294
- // INPUT mode: clears the input after an option is selected (useful when the selection is displayed in some custom way elsewhere)
1295
- allowAny: false,
1296
- // INPUT mode: allows any value to be entered, hides the dropdown icon
1297
- hideArrow: false,
1298
- // hide dropdown arrow icon
1299
- maxHeight: 600,
1300
- // height of the options list, including the filter and the 'Add' button
1301
- directions: [Popup.PopupProps.Directions.BOTTOM_RIGHT, Popup.PopupProps.Directions.BOTTOM_LEFT, Popup.PopupProps.Directions.TOP_LEFT, Popup.PopupProps.Directions.TOP_RIGHT],
1302
- selected: null,
1303
- // current selection (item / array of items)
1304
- label: '',
1305
- // BUTTON or INPUT label (nothing selected)
1306
- selectedLabel: '',
1307
- // BUTTON or INPUT label (something selected)
1308
- inputPlaceholder: '',
1309
- // Placeholder for input modes
1310
- hint: null,
1311
- // hint text to display under the list
1312
- shortcutsEnabled: false,
1313
- onBeforeOpen: noop,
1314
- onLoadMore: noop,
1315
- onOpen: noop,
1316
- onClose: noop,
1317
- onFilter: noop,
1318
- // search string as first argument
1319
- onFocus: noop,
1320
- onBlur: noop,
1321
- onKeyDown: noop,
1322
- onSelect: noop,
1323
- // single + multi
1324
- onDeselect: noop,
1325
- // multi
1326
- onChange: noop,
1327
- // multi
1328
- onAdd: noop,
1329
- // search string as first argument
1330
- onDone: noop,
1331
- onReset: noop,
1332
- tags: null,
1333
- onRemoveTag: noop,
1334
- ringPopupTarget: null,
1335
- dir: 'ltr'
1336
- });
1337
-
1338
- _defineProperty(Select, "Type", Type);
1339
-
1340
- _defineProperty(Select, "Size", Size);
1341
-
1342
- _defineProperty(Select, "Theme", Theme);
1343
-
1316
+ };
1344
1317
  const RerenderableSelect = rerenderHOC(Select);
1345
1318
 
1346
1319
  export { RerenderableSelect, Select as default };