@jetbrains/ring-ui 5.1.1 → 6.0.2-beta.0

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 (850) hide show
  1. package/README.md +1 -6
  2. package/babel.config.js +0 -1
  3. package/components/alert/alert.d.ts +1 -1
  4. package/components/alert/container.css +3 -0
  5. package/components/alert-service/alert-service.d.ts +2 -2
  6. package/components/analytics/analytics.d.ts +21 -7
  7. package/components/analytics/analytics.js +19 -24
  8. package/components/analytics/analytics__custom-plugin.d.ts +6 -16
  9. package/components/analytics/analytics__custom-plugin.js +12 -52
  10. package/components/analytics/analytics__fus-plugin.d.ts +15 -25
  11. package/components/analytics/analytics__fus-plugin.js +15 -73
  12. package/components/analytics/analytics__ga-plugin.d.ts +13 -3
  13. package/components/analytics/analytics__ga-plugin.js +35 -5
  14. package/components/analytics/analytics__plugin-utils.d.ts +16 -0
  15. package/components/analytics/analytics__plugin-utils.js +26 -1
  16. package/components/auth/auth__core.d.ts +5 -4
  17. package/components/auth/auth__core.js +44 -27
  18. package/components/auth-dialog/auth-dialog.d.ts +2 -2
  19. package/components/auth-dialog/auth-dialog.js +3 -1
  20. package/components/auth-dialog-service/auth-dialog-service.js +4 -1
  21. package/components/avatar/avatar.d.ts +3 -3
  22. package/components/avatar/fallback-avatar.d.ts +2 -2
  23. package/components/avatar/fallback-avatar.js +2 -1
  24. package/components/badge/badge.d.ts +2 -2
  25. package/components/button/button.css +7 -7
  26. package/components/button/button.d.ts +3 -4
  27. package/components/button/button.js +0 -1
  28. package/components/button-group/button-group.css +2 -2
  29. package/components/button-group/button-group.d.ts +2 -2
  30. package/components/button-group/caption.d.ts +2 -2
  31. package/components/button-set/button-set.d.ts +2 -2
  32. package/components/button-toolbar/button-toolbar.d.ts +2 -2
  33. package/components/checkbox/checkbox.css +2 -2
  34. package/components/checkbox/checkbox.d.ts +2 -2
  35. package/components/code/code.d.ts +1 -1
  36. package/components/confirm/confirm.d.ts +1 -1
  37. package/components/confirm/confirm.js +3 -3
  38. package/components/confirm-service/confirm-service.js +2 -2
  39. package/components/content-layout/content-layout.d.ts +2 -2
  40. package/components/content-layout/sidebar.d.ts +2 -2
  41. package/components/contenteditable/contenteditable.d.ts +3 -3
  42. package/components/control-label/control-label.css +23 -0
  43. package/components/control-label/control-label.d.ts +11 -0
  44. package/components/control-label/control-label.js +22 -0
  45. package/components/data-list/data-list.css +2 -1
  46. package/components/data-list/data-list.d.ts +3 -3
  47. package/components/data-list/data-list.mock.d.ts +2 -2
  48. package/components/data-list/item.d.ts +3 -3
  49. package/components/data-list/title.d.ts +1 -1
  50. package/components/date-picker/consts.d.ts +5 -5
  51. package/components/date-picker/date-input.d.ts +3 -12
  52. package/components/date-picker/date-input.js +9 -15
  53. package/components/date-picker/date-picker.css +1 -1
  54. package/components/date-picker/date-picker.d.ts +8 -6
  55. package/components/date-picker/date-picker.js +9 -15
  56. package/components/date-picker/date-popup.d.ts +1 -1
  57. package/components/date-picker/date-popup.js +2 -1
  58. package/components/date-picker/day.d.ts +2 -2
  59. package/components/date-picker/month-names.d.ts +2 -2
  60. package/components/date-picker/month-names.js +2 -2
  61. package/components/date-picker/month-slider.d.ts +2 -2
  62. package/components/date-picker/month.d.ts +2 -2
  63. package/components/date-picker/months.d.ts +2 -2
  64. package/components/date-picker/months.js +46 -29
  65. package/components/date-picker/weekdays.d.ts +2 -2
  66. package/components/date-picker/years.d.ts +6 -2
  67. package/components/date-picker/years.js +26 -14
  68. package/components/dialog/dialog.css +1 -1
  69. package/components/dialog/dialog.d.ts +4 -16
  70. package/components/dialog/dialog.js +4 -2
  71. package/components/dropdown/anchor.d.ts +1 -1
  72. package/components/dropdown/dropdown.d.ts +8 -1
  73. package/components/editable-heading/editable-heading.css +20 -7
  74. package/components/editable-heading/editable-heading.d.ts +2 -2
  75. package/components/editable-heading/editable-heading.js +39 -12
  76. package/components/error-bubble/error-bubble.d.ts +2 -2
  77. package/components/error-message/error-message.d.ts +2 -2
  78. package/components/footer/footer.js +1 -0
  79. package/components/form/form.examples.js +2 -11
  80. package/components/global/controls-height.d.ts +2 -0
  81. package/components/global/controls-height.js +8 -0
  82. package/components/global/create-stateful-context.d.ts +1 -1
  83. package/components/global/focus-sensor-hoc.d.ts +1 -0
  84. package/components/global/focus-sensor-hoc.js +5 -4
  85. package/components/global/react-dom-renderer.d.ts +4 -4
  86. package/components/global/react-dom-renderer.js +5 -5
  87. package/components/global/react-render-adapter.js +19 -31
  88. package/components/global/use-event-callback.d.ts +1 -0
  89. package/components/global/use-event-callback.js +14 -0
  90. package/components/global/variables_dark.css +2 -2
  91. package/components/grid/col.d.ts +2 -2
  92. package/components/grid/grid.d.ts +2 -2
  93. package/components/grid/row.d.ts +2 -2
  94. package/components/group/group.d.ts +2 -2
  95. package/components/header/header.d.ts +2 -2
  96. package/components/header/logo.d.ts +2 -2
  97. package/components/header/profile.d.ts +4 -2
  98. package/components/header/profile.js +15 -11
  99. package/components/header/services-link.d.ts +2 -2
  100. package/components/header/services.d.ts +2 -2
  101. package/components/header/smart-profile.d.ts +2 -2
  102. package/components/header/smart-services.d.ts +2 -2
  103. package/components/header/tray-icon.d.ts +2 -2
  104. package/components/header/tray.d.ts +2 -2
  105. package/components/heading/heading.css +8 -8
  106. package/components/http/http.d.ts +16 -6
  107. package/components/http/http.js +26 -0
  108. package/components/hub-source/hub-source__users-groups.d.ts +1 -1
  109. package/components/i18n/README.md +46 -0
  110. package/components/i18n/i18n-context.d.ts +13 -0
  111. package/components/i18n/i18n-context.js +14 -0
  112. package/components/i18n/i18n.d.ts +59 -0
  113. package/components/i18n/i18n.js +26 -0
  114. package/components/i18n/messages.json +53 -0
  115. package/components/icon/icon.d.ts +3 -3
  116. package/components/icon/icon__svg.d.ts +1 -1
  117. package/components/input/input-legacy.css +3 -3
  118. package/components/input/input.css +8 -21
  119. package/components/input/input.d.ts +7 -1
  120. package/components/input/input.js +18 -14
  121. package/components/input-size/input-size.examples.js +4 -150
  122. package/components/island/adaptive-island-hoc.d.ts +2 -2
  123. package/components/island/content.d.ts +1 -1
  124. package/components/island/header.d.ts +2 -2
  125. package/components/island/island.css +1 -1
  126. package/components/island/island.d.ts +3 -3
  127. package/components/island-legacy/content-legacy.d.ts +2 -2
  128. package/components/island-legacy/header-legacy.d.ts +2 -2
  129. package/components/island-legacy/island-legacy.d.ts +2 -2
  130. package/components/link/clickableLink.d.ts +1 -1
  131. package/components/link/link.css +1 -1
  132. package/components/link/link.d.ts +8 -9
  133. package/components/link/link.js +0 -1
  134. package/components/list/consts.js +3 -0
  135. package/components/list/list.css +2 -2
  136. package/components/list/list.d.ts +7 -7
  137. package/components/list/list.js +4 -1
  138. package/components/list/list__custom.d.ts +1 -1
  139. package/components/list/list__hint.d.ts +2 -2
  140. package/components/list/list__item.d.ts +2 -2
  141. package/components/list/list__link.d.ts +2 -2
  142. package/components/list/list__separator.d.ts +2 -2
  143. package/components/list/list__title.d.ts +2 -2
  144. package/components/loader/loader.d.ts +2 -2
  145. package/components/loader-inline/loader-inline.d.ts +2 -2
  146. package/components/loader-screen/loader-screen.d.ts +2 -2
  147. package/components/login-dialog/login-dialog.d.ts +2 -2
  148. package/components/login-dialog/service.js +4 -1
  149. package/components/markdown/code.d.ts +2 -2
  150. package/components/markdown/heading.d.ts +2 -2
  151. package/components/markdown/link.d.ts +2 -2
  152. package/components/markdown/markdown.d.ts +2 -2
  153. package/components/message/message.d.ts +3 -7
  154. package/components/message/message.js +17 -16
  155. package/components/pager/pager.d.ts +8 -13
  156. package/components/pager/pager.js +12 -14
  157. package/components/panel/panel.css +1 -1
  158. package/components/panel/panel.d.ts +2 -2
  159. package/components/popup/popup.d.ts +2 -2
  160. package/components/popup/popup.js +1 -1
  161. package/components/popup/position.d.ts +1 -1
  162. package/components/popup/position.js +43 -33
  163. package/components/popup-menu/popup-menu.d.ts +2 -2
  164. package/components/progress-bar/progress-bar.d.ts +2 -2
  165. package/components/query-assist/query-assist.css +16 -11
  166. package/components/query-assist/query-assist.d.ts +3 -7
  167. package/components/query-assist/query-assist.js +50 -31
  168. package/components/query-assist/query-assist__suggestions.d.ts +2 -2
  169. package/components/radio/radio.css +1 -1
  170. package/components/radio/radio.d.ts +1 -1
  171. package/components/radio/radio__item.d.ts +1 -1
  172. package/components/select/select-popup.css +2 -2
  173. package/components/select/select.css +9 -5
  174. package/components/select/select.d.ts +20 -9
  175. package/components/select/select.js +47 -23
  176. package/components/select/select__filter.d.ts +2 -3
  177. package/components/select/select__filter.js +4 -2
  178. package/components/select/select__popup.d.ts +48 -8
  179. package/components/select/select__popup.js +29 -8
  180. package/components/shortcuts/shortcuts-hoc.d.ts +2 -2
  181. package/components/shortcuts/shortcuts.d.ts +1 -1
  182. package/components/tab-trap/tab-trap.d.ts +1 -1
  183. package/components/table/cell.d.ts +2 -2
  184. package/components/table/disable-hover-hoc.d.ts +2 -2
  185. package/components/table/header-cell.d.ts +2 -2
  186. package/components/table/header.d.ts +3 -14
  187. package/components/table/header.js +5 -49
  188. package/components/table/multitable.d.ts +2 -2
  189. package/components/table/row-with-focus-sensor.d.ts +1 -1
  190. package/components/table/row.d.ts +2 -1
  191. package/components/table/row.js +4 -3
  192. package/components/table/smart-table.d.ts +3 -1
  193. package/components/table/table.css +9 -26
  194. package/components/table/table.d.ts +6 -4
  195. package/components/table/table.js +5 -3
  196. package/components/tabs/collapsible-more.d.ts +3 -3
  197. package/components/tabs/collapsible-tab.d.ts +1 -1
  198. package/components/tabs/collapsible-tabs.d.ts +2 -2
  199. package/components/tabs/dumb-tabs.d.ts +5 -3
  200. package/components/tabs/dumb-tabs.js +3 -2
  201. package/components/tabs/smart-tabs.d.ts +2 -2
  202. package/components/tabs/tab-link.d.ts +1 -1
  203. package/components/tabs/tab.d.ts +2 -2
  204. package/components/tabs/tab.js +3 -3
  205. package/components/tabs/tabs.css +4 -1
  206. package/components/tag/tag.css +3 -3
  207. package/components/tag/tag.d.ts +5 -5
  208. package/components/tags-input/tags-input.css +1 -1
  209. package/components/tags-input/tags-input.d.ts +9 -4
  210. package/components/tags-input/tags-input.js +7 -7
  211. package/components/tags-list/tags-list.d.ts +2 -2
  212. package/components/text/text.css +12 -0
  213. package/components/text/text.d.ts +8 -2
  214. package/components/text/text.js +12 -2
  215. package/components/toggle/toggle.css +1 -1
  216. package/components/toggle/toggle.d.ts +2 -2
  217. package/components/tooltip/tooltip.d.ts +1 -1
  218. package/components/user-agreement/service.js +4 -1
  219. package/components/user-agreement/user-agreement.d.ts +3 -11
  220. package/components/user-agreement/user-agreement.js +31 -30
  221. package/components/user-card/card.d.ts +22 -21
  222. package/components/user-card/card.js +29 -29
  223. package/components/user-card/smart-user-card-tooltip.d.ts +3 -3
  224. package/components/user-card/tooltip.d.ts +11 -6
  225. package/components/user-card/tooltip.js +1 -1
  226. package/components/user-card/user-card.css +10 -1
  227. package/dist/_helpers/_rollupPluginBabelHelpers.js +614 -1
  228. package/dist/_helpers/anchor.js +7 -8
  229. package/dist/_helpers/badge.js +1 -1
  230. package/dist/_helpers/button__classes.js +17 -29
  231. package/dist/_helpers/caption.js +31 -0
  232. package/dist/_helpers/card.js +100 -91
  233. package/dist/_helpers/date-picker.js +1 -1
  234. package/dist/_helpers/dialog__body-scroll-preventer.js +21 -12
  235. package/dist/_helpers/grid.js +1 -1
  236. package/dist/_helpers/header.js +1 -1
  237. package/dist/_helpers/icon__svg.js +73 -0
  238. package/dist/_helpers/input.js +228 -2
  239. package/dist/_helpers/island.js +1 -1
  240. package/dist/_helpers/list.js +1 -1
  241. package/dist/_helpers/query-assist__suggestions.js +92 -75
  242. package/dist/_helpers/select__filter.js +70 -43
  243. package/dist/_helpers/services-link.js +33 -21
  244. package/dist/_helpers/sidebar.js +87 -86
  245. package/dist/_helpers/tab-link.js +36 -0
  246. package/dist/_helpers/table.js +1 -1
  247. package/dist/_helpers/theme.js +43 -36
  248. package/dist/_helpers/title.js +66 -56
  249. package/dist/alert/alert.d.ts +1 -1
  250. package/dist/alert/alert.js +165 -130
  251. package/dist/alert/container.js +40 -29
  252. package/dist/alert-service/alert-service.d.ts +2 -2
  253. package/dist/alert-service/alert-service.js +170 -106
  254. package/dist/analytics/analytics.d.ts +21 -7
  255. package/dist/analytics/analytics.js +90 -71
  256. package/dist/analytics/analytics__custom-plugin.d.ts +6 -16
  257. package/dist/analytics/analytics__custom-plugin.js +74 -87
  258. package/dist/analytics/analytics__fus-plugin.d.ts +15 -25
  259. package/dist/analytics/analytics__fus-plugin.js +31 -89
  260. package/dist/analytics/analytics__ga-plugin.d.ts +13 -3
  261. package/dist/analytics/analytics__ga-plugin.js +76 -25
  262. package/dist/analytics/analytics__plugin-utils.d.ts +16 -0
  263. package/dist/analytics/analytics__plugin-utils.js +52 -21
  264. package/dist/auth/auth.js +40 -10
  265. package/dist/auth/auth__core.d.ts +5 -4
  266. package/dist/auth/auth__core.js +1460 -722
  267. package/dist/auth/background-flow.js +125 -84
  268. package/dist/auth/down-notification.js +77 -37
  269. package/dist/auth/iframe-flow.js +130 -73
  270. package/dist/auth/landing.js +94 -36
  271. package/dist/auth/request-builder.js +79 -45
  272. package/dist/auth/response-parser.js +117 -85
  273. package/dist/auth/storage.js +323 -164
  274. package/dist/auth/token-validator.js +239 -128
  275. package/dist/auth/window-flow.js +126 -83
  276. package/dist/auth-dialog/auth-dialog.d.ts +2 -2
  277. package/dist/auth-dialog/auth-dialog.js +153 -96
  278. package/dist/auth-dialog-service/auth-dialog-service.js +37 -12
  279. package/dist/avatar/avatar-example-datauri.js +1 -23
  280. package/dist/avatar/avatar.d.ts +3 -3
  281. package/dist/avatar/avatar.js +132 -99
  282. package/dist/avatar/fallback-avatar.d.ts +2 -2
  283. package/dist/avatar/fallback-avatar.js +44 -24
  284. package/dist/badge/badge.d.ts +2 -2
  285. package/dist/badge/badge.js +34 -26
  286. package/dist/button/button.d.ts +3 -4
  287. package/dist/button/button.js +90 -71
  288. package/dist/button/button__classes.js +1 -0
  289. package/dist/button-group/button-group.d.ts +2 -2
  290. package/dist/button-group/button-group.js +33 -17
  291. package/dist/button-group/caption.d.ts +2 -2
  292. package/dist/button-group/caption.js +5 -22
  293. package/dist/button-set/button-set.d.ts +2 -2
  294. package/dist/button-set/button-set.js +31 -16
  295. package/dist/button-toolbar/button-toolbar.d.ts +2 -2
  296. package/dist/button-toolbar/button-toolbar.js +30 -15
  297. package/dist/caret/caret.js +223 -188
  298. package/dist/checkbox/checkbox.d.ts +2 -2
  299. package/dist/checkbox/checkbox.js +86 -61
  300. package/dist/clipboard/clipboard-fallback.js +10 -10
  301. package/dist/clipboard/clipboard.js +132 -38
  302. package/dist/code/code.d.ts +1 -1
  303. package/dist/code/code.js +153 -81
  304. package/dist/confirm/confirm.d.ts +1 -1
  305. package/dist/confirm/confirm.js +86 -50
  306. package/dist/confirm-service/confirm-service.js +68 -47
  307. package/dist/content-layout/content-layout.d.ts +2 -2
  308. package/dist/content-layout/content-layout.js +53 -35
  309. package/dist/content-layout/sidebar.d.ts +2 -2
  310. package/dist/content-layout/sidebar.js +1 -0
  311. package/dist/contenteditable/contenteditable.d.ts +3 -3
  312. package/dist/contenteditable/contenteditable.js +54 -43
  313. package/dist/control-label/control-label.d.ts +11 -0
  314. package/dist/control-label/control-label.js +32 -0
  315. package/dist/data-list/data-list.d.ts +3 -3
  316. package/dist/data-list/data-list.js +166 -120
  317. package/dist/data-list/data-list.mock.d.ts +2 -2
  318. package/dist/data-list/data-list.mock.js +11 -4
  319. package/dist/data-list/item.d.ts +3 -3
  320. package/dist/data-list/item.js +141 -118
  321. package/dist/data-list/selection.js +139 -77
  322. package/dist/data-list/title.d.ts +1 -1
  323. package/dist/data-list/title.js +13 -3
  324. package/dist/date-picker/consts.d.ts +5 -5
  325. package/dist/date-picker/consts.js +18 -15
  326. package/dist/date-picker/date-input.d.ts +3 -12
  327. package/dist/date-picker/date-input.js +132 -111
  328. package/dist/date-picker/date-picker.d.ts +8 -6
  329. package/dist/date-picker/date-picker.js +215 -165
  330. package/dist/date-picker/date-popup.d.ts +1 -1
  331. package/dist/date-picker/date-popup.js +341 -301
  332. package/dist/date-picker/day.d.ts +2 -2
  333. package/dist/date-picker/day.js +78 -68
  334. package/dist/date-picker/month-names.d.ts +2 -2
  335. package/dist/date-picker/month-names.js +59 -41
  336. package/dist/date-picker/month-slider.d.ts +2 -2
  337. package/dist/date-picker/month-slider.js +59 -40
  338. package/dist/date-picker/month.d.ts +2 -2
  339. package/dist/date-picker/month.js +21 -15
  340. package/dist/date-picker/months.d.ts +2 -2
  341. package/dist/date-picker/months.js +80 -56
  342. package/dist/date-picker/weekdays.d.ts +2 -2
  343. package/dist/date-picker/weekdays.js +18 -12
  344. package/dist/date-picker/years.d.ts +6 -2
  345. package/dist/date-picker/years.js +102 -66
  346. package/dist/dialog/dialog.d.ts +4 -16
  347. package/dist/dialog/dialog.js +149 -100
  348. package/dist/dialog/dialog__body-scroll-preventer.js +5 -0
  349. package/dist/dropdown/anchor.d.ts +1 -1
  350. package/dist/dropdown/anchor.js +11 -3
  351. package/dist/dropdown/dropdown.d.ts +8 -1
  352. package/dist/dropdown/dropdown.js +159 -132
  353. package/dist/dropdown-menu/dropdown-menu.js +103 -77
  354. package/dist/editable-heading/editable-heading.d.ts +2 -2
  355. package/dist/editable-heading/editable-heading.js +134 -66
  356. package/dist/error-bubble/error-bubble.d.ts +2 -2
  357. package/dist/error-bubble/error-bubble.js +60 -27
  358. package/dist/error-message/error-message.d.ts +2 -2
  359. package/dist/error-message/error-message.js +55 -32
  360. package/dist/footer/footer.js +115 -8
  361. package/dist/global/compose.js +10 -1
  362. package/dist/global/composeRefs.js +12 -7
  363. package/dist/global/controls-height.d.ts +2 -0
  364. package/dist/global/controls-height.js +10 -2
  365. package/dist/global/create-stateful-context.d.ts +1 -1
  366. package/dist/global/create-stateful-context.js +19 -19
  367. package/dist/global/data-tests.js +15 -7
  368. package/dist/global/dom.js +93 -55
  369. package/dist/global/focus-sensor-hoc.d.ts +1 -0
  370. package/dist/global/focus-sensor-hoc.js +118 -102
  371. package/dist/global/fuzzy-highlight.js +41 -27
  372. package/dist/global/get-event-key.js +8 -8
  373. package/dist/global/get-uid.js +8 -4
  374. package/dist/global/inject-styles.js +15 -10
  375. package/dist/global/linear-function.js +2 -2
  376. package/dist/global/listeners.js +50 -28
  377. package/dist/global/memoize.js +13 -6
  378. package/dist/global/normalize-indent.js +51 -19
  379. package/dist/global/promise-with-timeout.js +8 -6
  380. package/dist/global/prop-types.js +5 -3
  381. package/dist/global/react-dom-renderer.d.ts +4 -4
  382. package/dist/global/react-dom-renderer.js +44 -28
  383. package/dist/global/react-render-adapter.js +21 -15
  384. package/dist/global/rerender-hoc.js +40 -19
  385. package/dist/global/schedule-raf.js +6 -5
  386. package/dist/global/sniffer.js +1 -1
  387. package/dist/global/theme.js +24 -0
  388. package/dist/global/trivial-template-tag.js +10 -3
  389. package/dist/global/typescript-utils.js +6 -2
  390. package/dist/global/url.js +27 -21
  391. package/dist/global/use-event-callback.d.ts +1 -0
  392. package/dist/global/use-event-callback.js +17 -0
  393. package/dist/grid/col.d.ts +2 -2
  394. package/dist/grid/col.js +42 -23
  395. package/dist/grid/grid.d.ts +2 -2
  396. package/dist/grid/grid.js +32 -13
  397. package/dist/grid/row.d.ts +2 -2
  398. package/dist/grid/row.js +32 -20
  399. package/dist/group/group.d.ts +2 -2
  400. package/dist/group/group.js +25 -14
  401. package/dist/header/header.d.ts +2 -2
  402. package/dist/header/header.js +76 -31
  403. package/dist/header/logo.d.ts +2 -2
  404. package/dist/header/logo.js +32 -14
  405. package/dist/header/profile.d.ts +4 -2
  406. package/dist/header/profile.js +155 -109
  407. package/dist/header/services-link.d.ts +2 -2
  408. package/dist/header/services-link.js +9 -2
  409. package/dist/header/services.d.ts +2 -2
  410. package/dist/header/services.js +105 -66
  411. package/dist/header/smart-profile.d.ts +2 -2
  412. package/dist/header/smart-profile.js +195 -104
  413. package/dist/header/smart-services.d.ts +2 -2
  414. package/dist/header/smart-services.js +112 -64
  415. package/dist/header/tray-icon.d.ts +2 -2
  416. package/dist/header/tray-icon.js +37 -22
  417. package/dist/header/tray.d.ts +2 -2
  418. package/dist/header/tray.js +30 -17
  419. package/dist/heading/heading.js +26 -27
  420. package/dist/http/http.d.ts +16 -6
  421. package/dist/http/http.js +357 -170
  422. package/dist/http/http.mock.js +105 -50
  423. package/dist/hub-source/hub-source.js +183 -77
  424. package/dist/hub-source/hub-source__user.js +45 -12
  425. package/dist/hub-source/hub-source__users-groups.d.ts +1 -1
  426. package/dist/hub-source/hub-source__users-groups.js +63 -34
  427. package/dist/i18n/i18n-context.d.ts +13 -0
  428. package/dist/i18n/i18n-context.js +28 -0
  429. package/dist/i18n/i18n.d.ts +59 -0
  430. package/dist/i18n/i18n.js +140 -0
  431. package/dist/icon/icon.d.ts +3 -3
  432. package/dist/icon/icon.js +78 -61
  433. package/dist/icon/icon__svg.d.ts +1 -1
  434. package/dist/icon/icon__svg.js +15 -71
  435. package/dist/icon/index.js +10 -2
  436. package/dist/input/input.d.ts +7 -1
  437. package/dist/input/input.js +30 -197
  438. package/dist/island/adaptive-island-hoc.d.ts +2 -2
  439. package/dist/island/adaptive-island-hoc.js +38 -27
  440. package/dist/island/content.d.ts +1 -1
  441. package/dist/island/content.js +104 -92
  442. package/dist/island/header.d.ts +2 -2
  443. package/dist/island/header.js +60 -47
  444. package/dist/island/island.d.ts +3 -3
  445. package/dist/island/island.js +33 -21
  446. package/dist/island-legacy/content-legacy.d.ts +2 -2
  447. package/dist/island-legacy/content-legacy.js +23 -13
  448. package/dist/island-legacy/header-legacy.d.ts +2 -2
  449. package/dist/island-legacy/header-legacy.js +25 -15
  450. package/dist/island-legacy/island-legacy.d.ts +2 -2
  451. package/dist/island-legacy/island-legacy.js +23 -13
  452. package/dist/link/clickableLink.d.ts +1 -1
  453. package/dist/link/clickableLink.js +43 -29
  454. package/dist/link/link.d.ts +8 -9
  455. package/dist/link/link.js +74 -63
  456. package/dist/list/consts.js +4 -1
  457. package/dist/list/list.d.ts +7 -7
  458. package/dist/list/list.js +500 -406
  459. package/dist/list/list__custom.d.ts +1 -1
  460. package/dist/list/list__custom.js +60 -47
  461. package/dist/list/list__hint.d.ts +2 -2
  462. package/dist/list/list__hint.js +18 -8
  463. package/dist/list/list__item.d.ts +2 -2
  464. package/dist/list/list__item.js +168 -135
  465. package/dist/list/list__link.d.ts +2 -2
  466. package/dist/list/list__link.js +54 -39
  467. package/dist/list/list__separator.d.ts +2 -2
  468. package/dist/list/list__separator.js +24 -14
  469. package/dist/list/list__title.d.ts +2 -2
  470. package/dist/list/list__title.js +32 -22
  471. package/dist/list/list__users-groups-source.js +131 -58
  472. package/dist/loader/loader.d.ts +2 -2
  473. package/dist/loader/loader.js +66 -34
  474. package/dist/loader/loader__core.js +197 -129
  475. package/dist/loader-inline/loader-inline.d.ts +2 -2
  476. package/dist/loader-inline/loader-inline.js +34 -19
  477. package/dist/loader-screen/loader-screen.d.ts +2 -2
  478. package/dist/loader-screen/loader-screen.js +45 -21
  479. package/dist/login-dialog/login-dialog.d.ts +2 -2
  480. package/dist/login-dialog/login-dialog.js +126 -81
  481. package/dist/login-dialog/service.js +40 -13
  482. package/dist/markdown/code.d.ts +2 -2
  483. package/dist/markdown/code.js +30 -9
  484. package/dist/markdown/heading.d.ts +2 -2
  485. package/dist/markdown/heading.js +3 -5
  486. package/dist/markdown/link.d.ts +2 -2
  487. package/dist/markdown/link.js +13 -8
  488. package/dist/markdown/markdown.d.ts +2 -2
  489. package/dist/markdown/markdown.js +67 -36
  490. package/dist/message/message.d.ts +3 -7
  491. package/dist/message/message.js +154 -121
  492. package/dist/old-browsers-message/old-browsers-message.js +19 -11
  493. package/dist/old-browsers-message/old-browsers-message__stop.js +8 -0
  494. package/dist/old-browsers-message/white-list.js +17 -10
  495. package/dist/pager/pager.d.ts +8 -13
  496. package/dist/pager/pager.js +260 -197
  497. package/dist/panel/panel.d.ts +2 -2
  498. package/dist/panel/panel.js +25 -14
  499. package/dist/permissions/permissions.js +166 -122
  500. package/dist/permissions/permissions__cache.js +220 -191
  501. package/dist/popup/popup.consts.js +1 -1
  502. package/dist/popup/popup.d.ts +2 -2
  503. package/dist/popup/popup.js +299 -236
  504. package/dist/popup/popup.target.js +8 -9
  505. package/dist/popup/position.d.ts +1 -1
  506. package/dist/popup/position.js +175 -154
  507. package/dist/popup-menu/popup-menu.d.ts +2 -2
  508. package/dist/popup-menu/popup-menu.js +81 -46
  509. package/dist/progress-bar/progress-bar.d.ts +2 -2
  510. package/dist/progress-bar/progress-bar.js +66 -52
  511. package/dist/query-assist/query-assist.d.ts +3 -7
  512. package/dist/query-assist/query-assist.js +679 -575
  513. package/dist/query-assist/query-assist__suggestions.d.ts +2 -2
  514. package/dist/query-assist/query-assist__suggestions.js +34 -6
  515. package/dist/radio/radio.d.ts +1 -1
  516. package/dist/radio/radio.js +28 -15
  517. package/dist/radio/radio__item.d.ts +1 -1
  518. package/dist/radio/radio__item.js +62 -45
  519. package/dist/select/select.d.ts +20 -9
  520. package/dist/select/select.js +832 -706
  521. package/dist/select/select__filter.d.ts +2 -3
  522. package/dist/select/select__filter.js +38 -8
  523. package/dist/select/select__popup.d.ts +48 -8
  524. package/dist/select/select__popup.js +430 -299
  525. package/dist/shortcuts/core.js +197 -146
  526. package/dist/shortcuts/shortcut-title.js +11 -6
  527. package/dist/shortcuts/shortcuts-hoc.d.ts +2 -2
  528. package/dist/shortcuts/shortcuts-hoc.js +43 -19
  529. package/dist/shortcuts/shortcuts.d.ts +1 -1
  530. package/dist/shortcuts/shortcuts.js +69 -43
  531. package/dist/storage/storage.js +35 -7
  532. package/dist/storage/storage__fallback.js +217 -143
  533. package/dist/storage/storage__local.js +156 -93
  534. package/dist/style.css +1 -1
  535. package/dist/tab-trap/tab-trap.d.ts +1 -1
  536. package/dist/tab-trap/tab-trap.js +117 -84
  537. package/dist/table/cell.d.ts +2 -2
  538. package/dist/table/cell.js +23 -9
  539. package/dist/table/disable-hover-hoc.d.ts +2 -2
  540. package/dist/table/disable-hover-hoc.js +44 -26
  541. package/dist/table/header-cell.d.ts +2 -2
  542. package/dist/table/header-cell.js +75 -56
  543. package/dist/table/header.d.ts +3 -14
  544. package/dist/table/header.js +103 -134
  545. package/dist/table/multitable.d.ts +2 -2
  546. package/dist/table/multitable.js +102 -86
  547. package/dist/table/row-with-focus-sensor.d.ts +1 -1
  548. package/dist/table/row-with-focus-sensor.js +70 -27
  549. package/dist/table/row.d.ts +2 -1
  550. package/dist/table/row.js +192 -158
  551. package/dist/table/selection-adapter.js +3 -1
  552. package/dist/table/selection-shortcuts-hoc.js +132 -131
  553. package/dist/table/selection.js +220 -150
  554. package/dist/table/smart-table.d.ts +3 -1
  555. package/dist/table/smart-table.js +88 -53
  556. package/dist/table/table.d.ts +6 -4
  557. package/dist/table/table.js +312 -250
  558. package/dist/tabs/collapsible-more.d.ts +3 -3
  559. package/dist/tabs/collapsible-more.js +91 -59
  560. package/dist/tabs/collapsible-tab.d.ts +1 -1
  561. package/dist/tabs/collapsible-tab.js +46 -42
  562. package/dist/tabs/collapsible-tabs.d.ts +2 -2
  563. package/dist/tabs/collapsible-tabs.js +167 -105
  564. package/dist/tabs/custom-item.js +2 -4
  565. package/dist/tabs/dumb-tabs.d.ts +5 -3
  566. package/dist/tabs/dumb-tabs.js +103 -62
  567. package/dist/tabs/smart-tabs.d.ts +2 -2
  568. package/dist/tabs/smart-tabs.js +72 -31
  569. package/dist/tabs/tab-link.d.ts +1 -1
  570. package/dist/tabs/tab-link.js +13 -35
  571. package/dist/tabs/tab.d.ts +2 -2
  572. package/dist/tabs/tab.js +26 -15
  573. package/dist/tabs/tabs.js +37 -7
  574. package/dist/tag/tag.d.ts +5 -5
  575. package/dist/tag/tag.js +147 -115
  576. package/dist/tags-input/tags-input.d.ts +9 -4
  577. package/dist/tags-input/tags-input.js +328 -227
  578. package/dist/tags-list/tags-list.d.ts +2 -2
  579. package/dist/tags-list/tags-list.js +62 -40
  580. package/dist/text/text.d.ts +8 -2
  581. package/dist/text/text.js +38 -17
  582. package/dist/toggle/toggle.d.ts +2 -2
  583. package/dist/toggle/toggle.js +55 -39
  584. package/dist/tooltip/tooltip.d.ts +1 -1
  585. package/dist/tooltip/tooltip.js +145 -102
  586. package/dist/user-agreement/service.js +411 -264
  587. package/dist/user-agreement/toolbox.eula.js +1 -160
  588. package/dist/user-agreement/user-agreement.d.ts +3 -11
  589. package/dist/user-agreement/user-agreement.js +107 -72
  590. package/dist/user-card/card.d.ts +22 -21
  591. package/dist/user-card/card.js +35 -5
  592. package/dist/user-card/smart-user-card-tooltip.d.ts +3 -3
  593. package/dist/user-card/smart-user-card-tooltip.js +138 -78
  594. package/dist/user-card/tooltip.d.ts +11 -6
  595. package/dist/user-card/tooltip.js +76 -36
  596. package/dist/user-card/user-card.js +35 -5
  597. package/package.json +86 -86
  598. package/components/auth-ng/auth-ng.examples.js +0 -41
  599. package/components/auth-ng/auth-ng.js +0 -143
  600. package/components/auth-ng/auth-ng.mock.js +0 -28
  601. package/components/autofocus-ng/autofocus-ng.examples.js +0 -41
  602. package/components/autofocus-ng/autofocus-ng.js +0 -51
  603. package/components/autofocus-ng/autofocus-ng.test.js +0 -49
  604. package/components/avatar-editor-ng/avatar-editor-ng.css +0 -104
  605. package/components/avatar-editor-ng/avatar-editor-ng.examples.js +0 -41
  606. package/components/avatar-editor-ng/avatar-editor-ng.js +0 -133
  607. package/components/avatar-editor-ng/avatar-editor-ng__template.js +0 -28
  608. package/components/avatar-ng/avatar-ng.examples.js +0 -33
  609. package/components/avatar-ng/avatar-ng.js +0 -7
  610. package/components/badge-ng/badge-ng.examples.js +0 -32
  611. package/components/badge-ng/badge-ng.js +0 -8
  612. package/components/breadcrumb-ng/breadcrumb-ng.examples.js +0 -33
  613. package/components/breadcrumb-ng/breadcrumb-ng.js +0 -60
  614. package/components/breadcrumb-ng/breadcrumb.css +0 -70
  615. package/components/button-group-ng/button-group-ng.css +0 -4
  616. package/components/button-group-ng/button-group-ng.examples.js +0 -30
  617. package/components/button-group-ng/button-group-ng.js +0 -43
  618. package/components/button-ng/button-ng.css +0 -23
  619. package/components/button-ng/button-ng.examples.js +0 -114
  620. package/components/button-ng/button-ng.js +0 -192
  621. package/components/button-ng/button-ng.test.js +0 -95
  622. package/components/button-set-ng/button-set-ng.examples.js +0 -30
  623. package/components/button-set-ng/button-set-ng.js +0 -22
  624. package/components/button-toolbar-ng/button-toolbar-ng.examples.js +0 -35
  625. package/components/button-toolbar-ng/button-toolbar-ng.js +0 -23
  626. package/components/checkbox-ng/checkbox-ng.examples.js +0 -80
  627. package/components/checkbox-ng/checkbox-ng.js +0 -64
  628. package/components/checkbox-ng/checkbox-ng.test.js +0 -61
  629. package/components/compiler-ng/compiler-ng.examples.js +0 -32
  630. package/components/compiler-ng/compiler-ng.js +0 -63
  631. package/components/compiler-ng/compiler-ng.test.js +0 -207
  632. package/components/confirm-ng/confirm-ng.examples.js +0 -43
  633. package/components/confirm-ng/confirm-ng.js +0 -30
  634. package/components/data-list-ng/data-list-ng.examples.js +0 -54
  635. package/components/data-list-ng/data-list-ng.js +0 -7
  636. package/components/dialog-ng/dialog-ng.css +0 -98
  637. package/components/dialog-ng/dialog-ng.examples.js +0 -240
  638. package/components/dialog-ng/dialog-ng.js +0 -607
  639. package/components/dialog-ng/dialog-ng.test.js +0 -829
  640. package/components/dialog-ng/dialog-ng__template.js +0 -70
  641. package/components/docked-panel-ng/docked-panel-ng.css +0 -28
  642. package/components/docked-panel-ng/docked-panel-ng.examples.js +0 -39
  643. package/components/docked-panel-ng/docked-panel-ng.js +0 -169
  644. package/components/error-message-ng/error-message-ng.examples.js +0 -33
  645. package/components/error-message-ng/error-message-ng.js +0 -50
  646. package/components/error-page-ng/error-page-ng.css +0 -6
  647. package/components/error-page-ng/error-page-ng.examples.js +0 -31
  648. package/components/error-page-ng/error-page-ng.js +0 -269
  649. package/components/error-page-ng/error-page-ng.test.js +0 -138
  650. package/components/footer-ng/footer-ng.examples.js +0 -35
  651. package/components/footer-ng/footer-ng.js +0 -61
  652. package/components/footer-ng/footer-ng.test.js +0 -41
  653. package/components/form-ng/error-bubble-ng.css +0 -7
  654. package/components/form-ng/form-ng.examples.js +0 -73
  655. package/components/form-ng/form-ng.js +0 -176
  656. package/components/global/angular-component-factory.js +0 -87
  657. package/components/global/angular-component-factory.test.js +0 -118
  658. package/components/global/ring-angular-component.js +0 -15
  659. package/components/global/ring-angular-component.test.js +0 -31
  660. package/components/group-ng/group-ng.js +0 -16
  661. package/components/group-ng/group.examples.js +0 -29
  662. package/components/heading-ng/heading-ng.examples.js +0 -29
  663. package/components/heading-ng/heading-ng.js +0 -8
  664. package/components/icon-ng/icon-ng.examples.js +0 -34
  665. package/components/icon-ng/icon-ng.js +0 -89
  666. package/components/input/input-label.d.ts +0 -10
  667. package/components/input/input-label.js +0 -18
  668. package/components/input-ng/input-ng.css +0 -7
  669. package/components/input-ng/input-ng.examples.js +0 -125
  670. package/components/input-ng/input-ng.js +0 -159
  671. package/components/input-ng/input-ng.test.js +0 -32
  672. package/components/island-ng/island-content-ng.js +0 -56
  673. package/components/island-ng/island-header-ng.js +0 -34
  674. package/components/island-ng/island-ng-class-fixer.js +0 -7
  675. package/components/island-ng/island-ng.examples.js +0 -54
  676. package/components/island-ng/island-ng.js +0 -35
  677. package/components/link-ng/link-ng.examples.js +0 -22
  678. package/components/link-ng/link-ng.js +0 -26
  679. package/components/link-ng/link-ng.test.js +0 -29
  680. package/components/loader-inline-ng/loader-inline-ng.examples.js +0 -28
  681. package/components/loader-inline-ng/loader-inline-ng.js +0 -17
  682. package/components/loader-inline-ng/loader-inline-ng.test.js +0 -28
  683. package/components/loader-ng/loader-ng.examples.js +0 -27
  684. package/components/loader-ng/loader-ng.js +0 -37
  685. package/components/loader-ng/loader-ng.test.js +0 -41
  686. package/components/loader-screen-ng/loader-screen-ng.examples.js +0 -30
  687. package/components/loader-screen-ng/loader-screen-ng.js +0 -95
  688. package/components/message-bundle-ng/message-bundle-ng.js +0 -67
  689. package/components/pager-ng/pager-ng.examples.js +0 -37
  690. package/components/pager-ng/pager-ng.js +0 -7
  691. package/components/palette/palette.examples.js +0 -63
  692. package/components/panel-ng/panel-ng.js +0 -20
  693. package/components/permissions-ng/permissions-ng.css +0 -5
  694. package/components/permissions-ng/permissions-ng.examples.js +0 -49
  695. package/components/permissions-ng/permissions-ng.js +0 -246
  696. package/components/permissions-ng/permissions-ng.test.js +0 -82
  697. package/components/place-under-ng/place-under-ng.examples.js +0 -94
  698. package/components/place-under-ng/place-under-ng.js +0 -190
  699. package/components/place-under-ng/place-under-ng.test.js +0 -182
  700. package/components/progress-bar-ng/progress-bar-ng.examples.js +0 -52
  701. package/components/progress-bar-ng/progress-bar-ng.js +0 -7
  702. package/components/promised-click-ng/promised-click-ng.examples.js +0 -42
  703. package/components/promised-click-ng/promised-click-ng.js +0 -118
  704. package/components/promised-click-ng/promised-click-ng.test.js +0 -166
  705. package/components/proxy-attrs/proxy-attrs.js +0 -24
  706. package/components/proxy-attrs/proxy-attrs.test.js +0 -102
  707. package/components/query-assist-ng/query-assist-ng.examples.js +0 -89
  708. package/components/query-assist-ng/query-assist-ng.js +0 -7
  709. package/components/radio-ng/radio-ng.examples.js +0 -31
  710. package/components/radio-ng/radio-ng.js +0 -61
  711. package/components/radio-ng/radio-ng.test.js +0 -55
  712. package/components/save-field-ng/save-field-ng.css +0 -13
  713. package/components/save-field-ng/save-field-ng.examples.js +0 -221
  714. package/components/save-field-ng/save-field-ng.js +0 -358
  715. package/components/save-field-ng/save-field-ng__template.js +0 -32
  716. package/components/select-ng/select-ng.examples.js +0 -483
  717. package/components/select-ng/select-ng.js +0 -561
  718. package/components/select-ng/select-ng.test.js +0 -620
  719. package/components/select-ng/select-ng__lazy.js +0 -83
  720. package/components/select-ng/select-ng__lazy.test.js +0 -81
  721. package/components/select-ng/select-ng__options.js +0 -147
  722. package/components/shortcuts-hint-ng/shortcuts-hint-ng.css +0 -116
  723. package/components/shortcuts-hint-ng/shortcuts-hint-ng.examples.js +0 -126
  724. package/components/shortcuts-hint-ng/shortcuts-hint-ng.js +0 -102
  725. package/components/shortcuts-hint-ng/shortcuts-hint-ng.test.js +0 -113
  726. package/components/shortcuts-hint-ng/shortcuts-hint-ng__template.js +0 -48
  727. package/components/shortcuts-ng/shortcuts-ng.js +0 -285
  728. package/components/sidebar-ng/sidebar-ng.examples.js +0 -94
  729. package/components/sidebar-ng/sidebar-ng.js +0 -100
  730. package/components/sidebar-ng/sidebar-ng.test.js +0 -37
  731. package/components/sidebar-ng/sidebar-ng__button-template.js +0 -18
  732. package/components/sidebar-ng/sidebar-ng__template.js +0 -10
  733. package/components/table-legacy-ng/table-legacy-ng.examples.js +0 -192
  734. package/components/table-legacy-ng/table-legacy-ng.js +0 -433
  735. package/components/table-legacy-ng/table-legacy-ng.test.js +0 -296
  736. package/components/table-legacy-ng/table-legacy-ng__pager.js +0 -32
  737. package/components/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +0 -105
  738. package/components/table-legacy-ng/table-legacy-ng__selection.js +0 -165
  739. package/components/table-legacy-ng/table-legacy-ng__toolbar.js +0 -58
  740. package/components/table-ng/smart-table-ng.js +0 -7
  741. package/components/table-ng/table-ng.examples.js +0 -84
  742. package/components/table-ng/table-ng.js +0 -7
  743. package/components/tabs-ng/tabs-ng.examples.js +0 -30
  744. package/components/tabs-ng/tabs-ng.js +0 -206
  745. package/components/tabs-ng/tabs-ng.test.js +0 -76
  746. package/components/tabs-ng/tabs-ng__template.js +0 -38
  747. package/components/tags-input-ng/tags-input-ng.examples.js +0 -41
  748. package/components/tags-input-ng/tags-input-ng.js +0 -7
  749. package/components/template-ng/template-ng.examples.js +0 -32
  750. package/components/template-ng/template-ng.js +0 -58
  751. package/components/template-ng/template-ng.test.js +0 -97
  752. package/components/title-ng/title-ng.examples.js +0 -30
  753. package/components/title-ng/title-ng.js +0 -120
  754. package/components/title-ng/title-ng.test.js +0 -47
  755. package/components/toggle-ng/toggle-ng.examples.js +0 -22
  756. package/components/toggle-ng/toggle-ng.js +0 -8
  757. package/components/tooltip-ng/tooltip-ng.css +0 -25
  758. package/components/tooltip-ng/tooltip-ng.examples.js +0 -36
  759. package/components/tooltip-ng/tooltip-ng.js +0 -100
  760. package/components/tooltip-ng/tooltip-ng.test.js +0 -69
  761. package/components/user-card-ng/user-card-ng.examples.js +0 -66
  762. package/components/user-card-ng/user-card-ng.js +0 -16
  763. package/dist/_helpers/button-group.js +0 -3
  764. package/dist/_helpers/button-set.js +0 -3
  765. package/dist/_helpers/button-toolbar.js +0 -3
  766. package/dist/_helpers/checkbox.js +0 -3
  767. package/dist/_helpers/error-message.js +0 -3
  768. package/dist/_helpers/footer.js +0 -110
  769. package/dist/_helpers/group.js +0 -3
  770. package/dist/_helpers/icon.js +0 -3
  771. package/dist/_helpers/link.js +0 -3
  772. package/dist/_helpers/loader-inline.js +0 -3
  773. package/dist/_helpers/loader-screen.js +0 -3
  774. package/dist/_helpers/panel.js +0 -3
  775. package/dist/_helpers/radio.js +0 -3
  776. package/dist/_helpers/tabs.js +0 -3
  777. package/dist/auth-ng/auth-ng.js +0 -198
  778. package/dist/auth-ng/auth-ng.mock.js +0 -29
  779. package/dist/autofocus-ng/autofocus-ng.js +0 -45
  780. package/dist/avatar-editor-ng/avatar-editor-ng.js +0 -161
  781. package/dist/avatar-editor-ng/avatar-editor-ng__template.js +0 -30
  782. package/dist/avatar-ng/avatar-ng.js +0 -19
  783. package/dist/badge-ng/badge-ng.js +0 -17
  784. package/dist/breadcrumb-ng/breadcrumb-ng.js +0 -61
  785. package/dist/button-group-ng/button-group-ng.js +0 -39
  786. package/dist/button-ng/button-ng.js +0 -180
  787. package/dist/button-set-ng/button-set-ng.js +0 -17
  788. package/dist/button-toolbar-ng/button-toolbar-ng.js +0 -21
  789. package/dist/checkbox-ng/checkbox-ng.js +0 -63
  790. package/dist/compiler-ng/compiler-ng.js +0 -48
  791. package/dist/confirm-ng/confirm-ng.js +0 -67
  792. package/dist/data-list-ng/data-list-ng.js +0 -57
  793. package/dist/dialog-ng/dialog-ng.js +0 -512
  794. package/dist/dialog-ng/dialog-ng__template.js +0 -72
  795. package/dist/docked-panel-ng/docked-panel-ng.js +0 -147
  796. package/dist/error-message-ng/error-message-ng.js +0 -53
  797. package/dist/footer-ng/footer-ng.js +0 -62
  798. package/dist/form-ng/form-ng.js +0 -148
  799. package/dist/global/angular-component-factory.js +0 -73
  800. package/dist/global/ring-angular-component.js +0 -19
  801. package/dist/group-ng/group-ng.js +0 -11
  802. package/dist/heading-ng/heading-ng.js +0 -16
  803. package/dist/icon-ng/icon-ng.js +0 -84
  804. package/dist/input/input-label.d.ts +0 -10
  805. package/dist/input/input-label.js +0 -27
  806. package/dist/input-ng/input-ng.js +0 -146
  807. package/dist/island-ng/island-content-ng.js +0 -53
  808. package/dist/island-ng/island-header-ng.js +0 -32
  809. package/dist/island-ng/island-ng-class-fixer.js +0 -9
  810. package/dist/island-ng/island-ng.js +0 -31
  811. package/dist/link-ng/link-ng.js +0 -23
  812. package/dist/loader-inline-ng/loader-inline-ng.js +0 -14
  813. package/dist/loader-ng/loader-ng.js +0 -36
  814. package/dist/loader-screen-ng/loader-screen-ng.js +0 -87
  815. package/dist/message-bundle-ng/message-bundle-ng.js +0 -68
  816. package/dist/pager-ng/pager-ng.js +0 -97
  817. package/dist/panel-ng/panel-ng.js +0 -16
  818. package/dist/permissions-ng/permissions-ng.js +0 -277
  819. package/dist/place-under-ng/place-under-ng.js +0 -138
  820. package/dist/progress-bar-ng/progress-bar-ng.js +0 -15
  821. package/dist/promised-click-ng/promised-click-ng.js +0 -107
  822. package/dist/proxy-attrs/proxy-attrs.js +0 -19
  823. package/dist/query-assist-ng/query-assist-ng.js +0 -83
  824. package/dist/radio-ng/radio-ng.js +0 -59
  825. package/dist/save-field-ng/save-field-ng.js +0 -291
  826. package/dist/save-field-ng/save-field-ng__template.js +0 -34
  827. package/dist/select-ng/select-ng.js +0 -577
  828. package/dist/select-ng/select-ng__lazy.js +0 -153
  829. package/dist/select-ng/select-ng__options.js +0 -119
  830. package/dist/shortcuts-hint-ng/shortcuts-hint-ng.js +0 -107
  831. package/dist/shortcuts-hint-ng/shortcuts-hint-ng__template.js +0 -50
  832. package/dist/shortcuts-ng/shortcuts-ng.js +0 -231
  833. package/dist/sidebar-ng/sidebar-ng.js +0 -101
  834. package/dist/sidebar-ng/sidebar-ng__button-template.js +0 -20
  835. package/dist/sidebar-ng/sidebar-ng__template.js +0 -12
  836. package/dist/table-legacy-ng/table-legacy-ng.js +0 -472
  837. package/dist/table-legacy-ng/table-legacy-ng__pager.js +0 -123
  838. package/dist/table-legacy-ng/table-legacy-ng__selection-navigate-actions.js +0 -92
  839. package/dist/table-legacy-ng/table-legacy-ng__selection.js +0 -147
  840. package/dist/table-legacy-ng/table-legacy-ng__toolbar.js +0 -53
  841. package/dist/table-ng/smart-table-ng.js +0 -67
  842. package/dist/table-ng/table-ng.js +0 -66
  843. package/dist/tabs-ng/tabs-ng.js +0 -172
  844. package/dist/tabs-ng/tabs-ng__template.js +0 -40
  845. package/dist/tags-input-ng/tags-input-ng.js +0 -90
  846. package/dist/template-ng/template-ng.js +0 -58
  847. package/dist/title-ng/title-ng.js +0 -103
  848. package/dist/toggle-ng/toggle-ng.js +0 -16
  849. package/dist/tooltip-ng/tooltip-ng.js +0 -96
  850. package/dist/user-card-ng/user-card-ng.js +0 -67
@@ -1,4 +1,20 @@
1
- import { _ as _defineProperty } from '../_helpers/_rollupPluginBabelHelpers.js';
1
+ import { _ as _defineProperty, a as _inherits, b as _createSuper, c as _classCallCheck, k as _assertThisInitialized, l as _typeof, m as _toConsumableArray, o as _get, p as _getPrototypeOf, e as _objectWithoutProperties, d as _createClass } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import 'core-js/modules/es.regexp.exec.js';
3
+ import 'core-js/modules/es.string.replace.js';
4
+ import 'core-js/modules/es.number.is-integer.js';
5
+ import 'core-js/modules/es.number.constructor.js';
6
+ import 'core-js/modules/es.array.find.js';
7
+ import 'core-js/modules/es.object.to-string.js';
8
+ import 'core-js/modules/web.dom-collections.for-each.js';
9
+ import 'core-js/modules/es.array.filter.js';
10
+ import 'core-js/modules/es.array.splice.js';
11
+ import 'core-js/modules/es.promise.js';
12
+ import 'core-js/modules/es.object.assign.js';
13
+ import 'core-js/modules/es.symbol.js';
14
+ import 'core-js/modules/es.symbol.description.js';
15
+ import 'core-js/modules/es.array.map.js';
16
+ import 'core-js/modules/es.array.from.js';
17
+ import 'core-js/modules/es.string.iterator.js';
2
18
  import React, { Component } from 'react';
3
19
  import PropTypes from 'prop-types';
4
20
  import debounce from 'just-debounce-it';
@@ -18,22 +34,32 @@ import rerenderHOC from '../global/rerender-hoc.js';
18
34
  import { Button } from '../button/button.js';
19
35
  import Icon from '../icon/icon.js';
20
36
  import { ControlsHeightContext, ControlsHeight } from '../global/controls-height.js';
21
- import { Size } from '../input/input.js';
22
- import { m as modules_88cfaf40 } from '../_helpers/input.js';
37
+ import { S as Size, m as modules_88cfaf40 } from '../_helpers/input.js';
38
+ import { I18nContext } from '../i18n/i18n-context.js';
23
39
  import { Q as QueryAssistSuggestions, m as modules_da7ab055 } from '../_helpers/query-assist__suggestions.js';
40
+ import 'core-js/modules/es.regexp.to-string.js';
41
+ import 'core-js/modules/es.array.concat.js';
42
+ import 'core-js/modules/es.array.reduce.js';
43
+ import 'core-js/modules/es.object.entries.js';
44
+ import 'core-js/modules/es.string.split.js';
45
+ import 'core-js/modules/es.object.keys.js';
46
+ import 'core-js/modules/es.array.iterator.js';
47
+ import 'core-js/modules/es.set.js';
48
+ import 'core-js/modules/web.dom-collections.iterator.js';
24
49
  import 'react-dom/server';
50
+ import 'core-js/modules/es.parse-float.js';
25
51
  import '../popup/popup.js';
26
52
  import 'react-dom';
27
53
  import '../global/schedule-raf.js';
28
54
  import '../tab-trap/tab-trap.js';
29
55
  import '../popup/position.js';
56
+ import 'core-js/modules/es.array.includes.js';
57
+ import 'core-js/modules/es.string.includes.js';
58
+ import 'core-js/modules/es.array.sort.js';
30
59
  import '../popup/popup.consts.js';
31
60
  import '../popup/popup.target.js';
32
- import '../shortcuts/core.js';
33
- import 'combokeys';
34
- import '../global/sniffer.js';
35
- import 'sniffr';
36
61
  import '../list/list.js';
62
+ import 'core-js/modules/es.array.find-index.js';
37
63
  import 'react-virtualized/dist/es/List';
38
64
  import 'react-virtualized/dist/es/AutoSizer';
39
65
  import 'react-virtualized/dist/es/WindowScroller';
@@ -41,40 +67,48 @@ import 'react-virtualized/dist/es/CellMeasurer';
41
67
  import 'util-deprecate';
42
68
  import 'memoize-one';
43
69
  import '../global/memoize.js';
70
+ import 'core-js/modules/es.map.js';
71
+ import 'core-js/modules/es.weak-map.js';
44
72
  import '../global/create-stateful-context.js';
45
73
  import '../list/list__link.js';
46
74
  import '../link/link.js';
47
- import 'focus-visible';
48
75
  import '../link/clickableLink.js';
49
- import '../_helpers/link.js';
50
76
  import '../_helpers/list.js';
51
77
  import '../list/list__item.js';
78
+ import 'core-js/modules/es.array.index-of.js';
52
79
  import '../avatar/avatar.js';
53
80
  import '../global/url.js';
81
+ import 'core-js/modules/es.string.match.js';
54
82
  import '../avatar/fallback-avatar.js';
83
+ import 'core-js/modules/es.array.slice.js';
55
84
  import '../checkbox/checkbox.js';
56
85
  import '@jetbrains/icons/checkmark-14px';
57
86
  import '@jetbrains/icons/remove-14px';
58
87
  import '../global/prop-types.js';
59
88
  import '../global/composeRefs.js';
60
- import '../_helpers/checkbox.js';
61
- import '../icon/icon__constants.js';
62
- import '../_helpers/icon.js';
63
- import '../icon/icon__svg.js';
64
89
  import '../list/list__custom.js';
65
90
  import '../global/get-event-key.js';
66
91
  import '../list/list__title.js';
67
92
  import '../list/list__separator.js';
68
93
  import '../list/list__hint.js';
69
94
  import '../list/consts.js';
70
- import '../_helpers/loader-inline.js';
95
+ import '../shortcuts/core.js';
96
+ import 'combokeys';
97
+ import '../global/sniffer.js';
98
+ import 'sniffr';
99
+ import '../icon/icon__constants.js';
100
+ import '../_helpers/icon__svg.js';
101
+ import 'core-js/modules/es.string.starts-with.js';
71
102
  import '../global/react-render-adapter.js';
72
103
  import '@jetbrains/icons/chevron-10px';
73
104
  import '../_helpers/button__classes.js';
74
- import '../input/input-label.js';
105
+ import 'core-js/modules/es.object.values.js';
106
+ import '../control-label/control-label.js';
107
+ import '../i18n/i18n.js';
75
108
 
76
- const POPUP_COMPENSATION = PopupMenu.ListProps.Dimension.ITEM_PADDING + PopupMenu.PopupProps.Dimension.BORDER_WIDTH;
77
- const ngModelStateField = 'query';
109
+ var _excluded = ["suggestions"];
110
+ var POPUP_COMPENSATION = PopupMenu.ListProps.Dimension.ITEM_PADDING + PopupMenu.PopupProps.Dimension.BORDER_WIDTH;
111
+ var ngModelStateField = 'query';
78
112
  function noop() {}
79
113
  function cleanText(text) {
80
114
  return text.replace(/([\n\r])+/g, ' ');
@@ -118,215 +152,230 @@ function cleanText(text) {
118
152
  + __group__ \`string=\` Group title. Options with the same title are grouped under it
119
153
  + __icon__ \`string=\` Icon URI, Data URI is possible
120
154
  */
121
- class QueryAssist extends Component {
122
- static getDerivedStateFromProps(_ref, _ref2) {
123
- let {
124
- query
125
- } = _ref;
126
- let {
127
- prevQuery
128
- } = _ref2;
129
- const nextState = {
130
- prevQuery: query
131
- };
132
- if (typeof query === 'string' && query !== prevQuery) {
133
- nextState.query = query;
134
- nextState.placeholderEnabled = !query;
135
- }
136
- return nextState;
137
- }
138
- constructor(_props) {
139
- var _this;
140
- super(_props);
141
- _this = this;
142
- _defineProperty(this, "state", {
143
- dirty: !this.props.query,
144
- query: this.props.query,
145
- placeholderEnabled: !this.props.query,
146
- shortcuts: !!this.props.focus,
155
+ var QueryAssist = /*#__PURE__*/function (_Component) {
156
+ _inherits(QueryAssist, _Component);
157
+ var _super = _createSuper(QueryAssist);
158
+ function QueryAssist(_props) {
159
+ var _thisSuper, _this;
160
+ _classCallCheck(this, QueryAssist);
161
+ _this = _super.call(this, _props);
162
+ _defineProperty(_assertThisInitialized(_this), "state", {
163
+ dirty: !_this.props.query,
164
+ query: _this.props.query,
165
+ placeholderEnabled: !_this.props.query,
166
+ shortcuts: !!_this.props.focus,
147
167
  suggestions: [],
148
168
  showPopup: false
149
169
  });
150
- _defineProperty(this, "immediateState", void 0);
151
- _defineProperty(this, "requestData", void 0);
152
- _defineProperty(this, "ngModelStateField", ngModelStateField);
153
- _defineProperty(this, "historyStack", []);
154
- _defineProperty(this, "mouseIsDownOnPopup", void 0);
155
- _defineProperty(this, "handleFocusChange", e => {
170
+ _defineProperty(_assertThisInitialized(_this), "immediateState", void 0);
171
+ _defineProperty(_assertThisInitialized(_this), "requestData", void 0);
172
+ _defineProperty(_assertThisInitialized(_this), "ngModelStateField", ngModelStateField);
173
+ // An array of {query: string; caret: number}[]
174
+ _defineProperty(_assertThisInitialized(_this), "historyStack", []);
175
+ _defineProperty(_assertThisInitialized(_this), "mouseIsDownOnPopup", void 0);
176
+ _defineProperty(_assertThisInitialized(_this), "handleFocusChange", function (e) {
156
177
  // otherwise it's blur and false
157
- const focus = e.type === 'focus';
158
- this.immediateState.focus = focus;
178
+ var focus = e.type === 'focus';
179
+ _this.immediateState.focus = focus;
159
180
  if (!focus) {
160
- this.blurInput();
181
+ _this.blurInput();
161
182
  // Close popup on blur by keyboard (mostly shift+tab)
162
- if (!this.mouseIsDownOnPopup) {
163
- this.closePopup();
183
+ if (!_this.mouseIsDownOnPopup) {
184
+ _this.closePopup();
164
185
  }
165
186
  } else {
166
- this.setCaretPosition();
187
+ _this.setCaretPosition();
167
188
  }
168
- if (!this.mouseIsDownOnPopup) {
169
- this.props.onFocusChange({
170
- focus
189
+ if (!_this.mouseIsDownOnPopup) {
190
+ _this.props.onFocusChange({
191
+ focus: focus
171
192
  });
172
193
  }
173
- this.setState({
194
+ _this.setState({
174
195
  shortcuts: focus
175
196
  });
176
197
  });
177
- _defineProperty(this, "node", void 0);
178
- _defineProperty(this, "nodeRef", node => {
179
- this.node = node;
198
+ _defineProperty(_assertThisInitialized(_this), "node", void 0);
199
+ _defineProperty(_assertThisInitialized(_this), "nodeRef", function (node) {
200
+ _this.node = node;
180
201
  });
181
- _defineProperty(this, "setCaretPosition", function () {
182
- let params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
183
- const queryLength = _this.immediateState.query != null ? _this.immediateState.query.length : 0;
184
- const newCaretPosition = _this.immediateState.caret < queryLength ? _this.immediateState.caret : queryLength;
202
+ _defineProperty(_assertThisInitialized(_this), "setCaretPosition", function () {
203
+ var params = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
204
+ var queryLength = _this.immediateState.query != null ? _this.immediateState.query.length : 0;
205
+ var newCaretPosition = _this.immediateState.caret < queryLength ? _this.immediateState.caret : queryLength;
185
206
  if (params.fromContentEditable) {
186
207
  _this.immediateState.selection = _this.immediateState.selection ? _this.immediateState.selection : _this.state.query && _this.state.query.length || null;
187
208
  }
188
209
  if (_this.immediateState.focus && !_this.props.disabled) {
189
210
  if (typeof _this.immediateState.selection === 'number' && Number.isInteger(_this.immediateState.selection) && _this.immediateState.selection > -1) {
211
+ var _this$caret;
190
212
  // Set to end of field value if newCaretPosition is inappropriate
191
- _this.caret?.setPosition(newCaretPosition >= 0 ? newCaretPosition : -1);
213
+ (_this$caret = _this.caret) === null || _this$caret === void 0 ? void 0 : _this$caret.setPosition(newCaretPosition >= 0 ? newCaretPosition : -1);
192
214
  _this.scrollInput();
193
- } else if (_this.immediateState.selection && typeof _this.immediateState.selection === 'object' && _this.immediateState.selection.startOffset !== undefined) {
194
- _this.caret?.setPosition(_this.immediateState.selection);
195
- } else if (!_this.immediateState.selection || params.forceSetCaret) {
196
- _this.caret?.setPosition(-1);
215
+ } else if (_this.immediateState.selection && _typeof(_this.immediateState.selection) === 'object' && _this.immediateState.selection.startOffset !== undefined) {
216
+ var _this$caret2;
217
+ (_this$caret2 = _this.caret) === null || _this$caret2 === void 0 ? void 0 : _this$caret2.setPosition(_this.immediateState.selection);
218
+ } else if (_this.immediateState.selection === undefined || params.forceSetCaret) {
219
+ var _this$caret3;
220
+ (_this$caret3 = _this.caret) === null || _this$caret3 === void 0 ? void 0 : _this$caret3.setPosition(-1);
197
221
  }
198
222
  }
199
223
  });
200
- _defineProperty(this, "togglePlaceholder", () => {
201
- const query = this.getQuery();
202
- const currentQueryIsEmpty = this.immediateState.query === '';
203
- const newQueryIsEmpty = query === '';
224
+ _defineProperty(_assertThisInitialized(_this), "togglePlaceholder", function () {
225
+ var query = _this.getQuery();
226
+ var currentQueryIsEmpty = _this.immediateState.query === '';
227
+ var newQueryIsEmpty = query === '';
204
228
  if (newQueryIsEmpty !== currentQueryIsEmpty) {
205
- this.setState({
229
+ _this.setState({
206
230
  placeholderEnabled: newQueryIsEmpty
207
231
  });
208
232
  }
209
233
  });
210
- _defineProperty(this, "isComposing", void 0);
211
- _defineProperty(this, "handleInput", e => {
212
- var _currentCaret$positio;
213
- this.togglePlaceholder();
214
- const currentCaret = this.caret?.getPosition();
215
- const props = {
234
+ _defineProperty(_assertThisInitialized(_this), "isComposing", void 0);
235
+ _defineProperty(_assertThisInitialized(_this), "handleInput", function (e) {
236
+ var _this$caret4, _currentCaret$positio;
237
+ _this.togglePlaceholder();
238
+ var currentCaret = (_this$caret4 = _this.caret) === null || _this$caret4 === void 0 ? void 0 : _this$caret4.getPosition();
239
+ var props = {
216
240
  dirty: true,
217
- query: this.getQuery(),
218
- caret: typeof currentCaret === 'number' ? currentCaret : (_currentCaret$positio = currentCaret?.position) !== null && _currentCaret$positio !== void 0 ? _currentCaret$positio : 0,
241
+ query: _this.getQuery(),
242
+ caret: typeof currentCaret === 'number' ? currentCaret : (_currentCaret$positio = currentCaret === null || currentCaret === void 0 ? void 0 : currentCaret.position) !== null && _currentCaret$positio !== void 0 ? _currentCaret$positio : 0,
219
243
  focus: true
220
244
  };
221
- if (this.immediateState.query === props.query && !this.isComposing) {
222
- this.handleCaretMove(e);
245
+ if (_this.immediateState.query === props.query && !_this.isComposing) {
246
+ _this.handleCaretMove(e);
223
247
  return;
224
248
  }
225
- if (this.isComposing) {
249
+ if (_this.isComposing) {
226
250
  return;
227
251
  }
228
- this.immediateState = props;
229
- this.props.onChange(props);
230
- if (this.props.autoOpen === 'force' || props.query.length > 0) {
231
- this.requestData?.();
252
+ _this.immediateState = props;
253
+ if (_this.state.query) {
254
+ var _this$state$styleRang;
255
+ var i = 0;
256
+ while (_this.state.query[i] === _this.immediateState.query[i] && i < _this.state.query.length - 1) {
257
+ i++;
258
+ }
259
+ var diff = _this.immediateState.query.length - _this.state.query.length;
260
+ var originalIndex = _this.immediateState.caret - diff;
261
+ var ranges = _toConsumableArray((_this$state$styleRang = _this.state.styleRanges) !== null && _this$state$styleRang !== void 0 ? _this$state$styleRang : []);
262
+ var range = ranges.find(function (r) {
263
+ return originalIndex >= r.start && originalIndex <= r.start + r.length;
264
+ });
265
+ if (range) {
266
+ range.length += diff;
267
+ }
268
+ ranges.filter(function (r) {
269
+ return r.start > originalIndex;
270
+ }).forEach(function (r) {
271
+ r.start += diff;
272
+ });
273
+ }
274
+ _this.props.onChange(props);
275
+ if (_this.props.autoOpen === 'force' || props.query.length > 0) {
276
+ var _this$requestData, _this2;
277
+ (_this$requestData = (_this2 = _this).requestData) === null || _this$requestData === void 0 ? void 0 : _this$requestData.call(_this2);
232
278
  }
233
279
  });
234
- _defineProperty(this, "handleEnter", e => {
280
+ // It's necessary to prevent new element creation before any other hooks
281
+ _defineProperty(_assertThisInitialized(_this), "handleEnter", function (e) {
235
282
  if (e.key === 'Enter') {
236
283
  preventDefault(e);
237
284
  }
238
285
  });
239
- _defineProperty(this, "handleTab", e => {
240
- const list = this._popup && this._popup.list;
241
- const suggestion = list && (list.getSelected() || list.getFirst());
242
- if (suggestion && this.state.showPopup) {
286
+ _defineProperty(_assertThisInitialized(_this), "handleTab", function (e) {
287
+ var list = _this._popup && _this._popup.list;
288
+ var suggestion = list && (list.getSelected() || list.getFirst());
289
+ if (suggestion && _this.state.showPopup) {
243
290
  preventDefault(e);
244
- if (this.getQuery() !== this.immediateState.suggestionsQuery) {
291
+ if (_this.getQuery() !== _this.immediateState.suggestionsQuery) {
245
292
  return false;
246
293
  }
247
- return this.handleComplete(suggestion, true);
294
+ return _this.handleComplete(suggestion, true);
248
295
  }
249
- if (this.state.loading) {
296
+ if (_this.state.loading) {
250
297
  preventDefault(e);
251
298
  return false;
252
299
  }
253
300
  return true;
254
301
  });
255
- _defineProperty(this, "setState", (state, resolve) => {
256
- super.setState(state, () => {
257
- this._pushHistory(state);
258
- resolve?.();
302
+ _defineProperty(_assertThisInitialized(_this), "setState", function (state, resolve) {
303
+ _get((_thisSuper = _assertThisInitialized(_this), _getPrototypeOf(QueryAssist.prototype)), "setState", _thisSuper).call(_thisSuper, state, function () {
304
+ _this._pushHistory(state);
305
+ resolve === null || resolve === void 0 ? void 0 : resolve();
259
306
  });
260
307
  });
261
- _defineProperty(this, "undo", e => {
262
- const previous = this.historyStack.splice(0, 2)[1];
308
+ _defineProperty(_assertThisInitialized(_this), "undo", function (e) {
309
+ var previous = _this.historyStack.splice(0, 2)[1];
263
310
  if (!previous) {
264
311
  return;
265
312
  }
266
- this.setState({
313
+ _this.setState({
267
314
  query: previous.query
268
- }, () => {
269
- this.caret?.setPosition(previous.caret);
270
- this.handleInput(e);
315
+ }, function () {
316
+ var _this$caret5;
317
+ (_this$caret5 = _this.caret) === null || _this$caret5 === void 0 ? void 0 : _this$caret5.setPosition(previous.caret);
318
+ _this.handleInput(e);
271
319
  });
272
320
  });
273
- _defineProperty(this, "handlePaste", e => {
274
- const INSERT_COMMAND = 'insertText';
321
+ _defineProperty(_assertThisInitialized(_this), "handlePaste", function (e) {
322
+ var INSERT_COMMAND = 'insertText';
275
323
  if (e.clipboardData && document.queryCommandSupported(INSERT_COMMAND)) {
276
324
  preventDefault(e);
277
- const text = cleanText(e.clipboardData.getData('text/plain'));
325
+ var text = cleanText(e.clipboardData.getData('text/plain'));
278
326
  document.execCommand(INSERT_COMMAND, false, text);
279
- this.handleInput(e);
327
+ _this.handleInput(e);
280
328
  }
281
329
  });
282
- _defineProperty(this, "handleCaretMove", e => {
283
- var _currentCaret$positio2;
284
- if (this.isComposing) {
330
+ _defineProperty(_assertThisInitialized(_this), "handleCaretMove", function (e) {
331
+ var _this$caret6, _currentCaret$positio2;
332
+ if (_this.isComposing) {
285
333
  return;
286
334
  }
287
- const currentCaret = this.caret?.getPosition();
288
- const caret = typeof currentCaret === 'number' ? currentCaret : (_currentCaret$positio2 = currentCaret?.position) !== null && _currentCaret$positio2 !== void 0 ? _currentCaret$positio2 : 0;
289
- const popupHidden = !this.state.showPopup && e.type === 'click';
290
- if (!this.props.disabled && (caret !== this.immediateState.caret || popupHidden)) {
291
- this.immediateState.caret = caret;
292
- this.scrollInput();
293
- if (this.immediateState.query.length > 0) {
294
- this.requestData?.();
335
+ var currentCaret = (_this$caret6 = _this.caret) === null || _this$caret6 === void 0 ? void 0 : _this$caret6.getPosition();
336
+ var caret = typeof currentCaret === 'number' ? currentCaret : (_currentCaret$positio2 = currentCaret === null || currentCaret === void 0 ? void 0 : currentCaret.position) !== null && _currentCaret$positio2 !== void 0 ? _currentCaret$positio2 : 0;
337
+ var popupHidden = !_this.state.showPopup && e.type === 'click';
338
+ if (!_this.props.disabled && (caret !== _this.immediateState.caret || popupHidden)) {
339
+ _this.immediateState.caret = caret;
340
+ _this.scrollInput();
341
+ if (_this.immediateState.query.length > 0) {
342
+ var _this$requestData2, _this3;
343
+ (_this$requestData2 = (_this3 = _this).requestData) === null || _this$requestData2 === void 0 ? void 0 : _this$requestData2.call(_this3);
295
344
  }
296
345
  }
297
- if (this.immediateState.query.length < 1) {
298
- this.setState({
346
+ if (_this.immediateState.query.length < 1) {
347
+ _this.setState({
299
348
  showPopup: false
300
349
  });
301
350
  }
302
351
  });
303
- _defineProperty(this, "handleStyleRangesResponse", _ref3 => {
304
- let {
305
- suggestions,
306
- ...restProps
307
- } = _ref3;
308
- return this.handleResponse(restProps);
352
+ _defineProperty(_assertThisInitialized(_this), "handleStyleRangesResponse", function (_ref) {
353
+ _ref.suggestions;
354
+ var restProps = _objectWithoutProperties(_ref, _excluded);
355
+ return _this.handleResponse(restProps);
309
356
  });
310
- _defineProperty(this, "handleResponse", function (_ref4) {
311
- let {
312
- query = '',
313
- caret = 0,
314
- styleRanges,
315
- suggestions = []
316
- } = _ref4;
317
- let afterCompletion = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
318
- return new Promise((resolve, reject) => {
357
+ _defineProperty(_assertThisInitialized(_this), "handleResponse", function (_ref2) {
358
+ var _ref2$query = _ref2.query,
359
+ query = _ref2$query === void 0 ? '' : _ref2$query,
360
+ _ref2$caret = _ref2.caret,
361
+ caret = _ref2$caret === void 0 ? 0 : _ref2$caret,
362
+ styleRanges = _ref2.styleRanges,
363
+ _ref2$suggestions = _ref2.suggestions,
364
+ suggestions = _ref2$suggestions === void 0 ? [] : _ref2$suggestions;
365
+ var afterCompletion = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
366
+ return new Promise(function (resolve, reject) {
319
367
  if (query === _this.getQuery() && (caret === _this.immediateState.caret || _this.immediateState.caret === undefined)) {
368
+ var _this$caret7;
320
369
  // Do not setState on unmounted component
321
370
  if (!_this.node) {
322
371
  return;
323
372
  }
324
- const state = {
373
+ var state = {
325
374
  dirty: _this.immediateState.dirty,
326
375
  loading: false,
327
376
  placeholderEnabled: !query,
328
- query,
329
- suggestions,
377
+ query: query,
378
+ suggestions: suggestions,
330
379
  showPopup: !!suggestions.length && !afterCompletion
331
380
  };
332
381
  _this.immediateState.suggestionsQuery = query;
@@ -334,7 +383,7 @@ class QueryAssist extends Component {
334
383
  if (!deepEqual(_this.state.styleRanges, styleRanges)) {
335
384
  state.styleRanges = styleRanges;
336
385
  }
337
- _this.immediateState.selection = _this.caret?.getPosition({
386
+ _this.immediateState.selection = (_this$caret7 = _this.caret) === null || _this$caret7 === void 0 ? void 0 : _this$caret7.getPosition({
338
387
  avoidFocus: true
339
388
  });
340
389
  _this.setState(state, resolve);
@@ -343,529 +392,588 @@ class QueryAssist extends Component {
343
392
  }
344
393
  });
345
394
  });
346
- _defineProperty(this, "handleApply", () => {
347
- this.closePopup();
348
- this.immediateState.dirty = false;
395
+ _defineProperty(_assertThisInitialized(_this), "handleApply", function () {
396
+ _this.closePopup();
397
+ _this.immediateState.dirty = false;
349
398
  // Only set dirty to false when query is saved already
350
- if (this.immediateState.query === this.state.query) {
351
- this.setState({
399
+ if (_this.immediateState.query === _this.state.query) {
400
+ _this.setState({
352
401
  dirty: false
353
402
  });
354
403
  }
355
- return this.props.onApply(this.immediateState);
404
+ return _this.props.onApply(_this.immediateState);
356
405
  });
357
- _defineProperty(this, "handleComplete", (data, replace) => {
358
- var _suggestion$caret, _suggestion$caret2;
406
+ _defineProperty(_assertThisInitialized(_this), "handleComplete", function (data, replace) {
407
+ var _suggestion$caret, _suggestion$caret2, _this$requestData3, _this4;
359
408
  if (!data || !data.data) {
360
- this.handleApply();
409
+ _this.handleApply();
361
410
  return;
362
411
  }
363
- const query = this.getQuery();
364
- const currentCaret = this.immediateState.caret;
365
- const suggestion = data.data;
366
- const prefix = suggestion.prefix || '';
367
- const suffix = suggestion.suffix || '';
368
- const state = {
412
+ var query = _this.getQuery();
413
+ var currentCaret = _this.immediateState.caret;
414
+ var suggestion = data.data;
415
+ var prefix = suggestion.prefix || '';
416
+ var suffix = suggestion.suffix || '';
417
+ var state = {
369
418
  caret: (_suggestion$caret = suggestion.caret) !== null && _suggestion$caret !== void 0 ? _suggestion$caret : 0,
370
419
  selection: (_suggestion$caret2 = suggestion.caret) !== null && _suggestion$caret2 !== void 0 ? _suggestion$caret2 : 0,
371
420
  query: query.substr(0, suggestion.completionStart) + prefix + suggestion.option + suffix
372
421
  };
373
422
  if (typeof replace === 'boolean' && replace) {
374
423
  var _suggestion$completio;
375
- state.query += this.immediateState.query.substr((_suggestion$completio = suggestion.completionEnd) !== null && _suggestion$completio !== void 0 ? _suggestion$completio : 0);
424
+ state.query += _this.immediateState.query.substr((_suggestion$completio = suggestion.completionEnd) !== null && _suggestion$completio !== void 0 ? _suggestion$completio : 0);
376
425
  } else {
377
- state.query += this.immediateState.query.substr(this.immediateState.caret);
426
+ state.query += _this.immediateState.query.substr(_this.immediateState.caret);
378
427
  }
379
- this.props.onChange(state);
380
- this.props.onApplySuggestion(data.data, state);
381
- const focusState = {
428
+ _this.props.onChange(state);
429
+ _this.props.onApplySuggestion(data.data, state);
430
+ var focusState = {
382
431
  focus: true
383
432
  };
384
- this.props.onFocusChange(focusState);
385
- if (state.query !== this.immediateState.query) {
386
- this.setState({
433
+ _this.props.onFocusChange(focusState);
434
+ if (state.query !== _this.immediateState.query) {
435
+ _this.setState({
387
436
  placeholderEnabled: !state.query,
388
437
  query: state.query
389
438
  });
390
439
  }
391
- this.immediateState = Object.assign(state, focusState);
392
- if (this.immediateState.caret !== currentCaret) {
393
- this.setCaretPosition();
440
+ _this.immediateState = Object.assign(state, focusState);
441
+ if (_this.immediateState.caret !== currentCaret) {
442
+ _this.setCaretPosition();
394
443
  }
395
- this.closePopup();
396
- this.requestData?.(true);
444
+ _this.closePopup();
445
+ (_this$requestData3 = (_this4 = _this).requestData) === null || _this$requestData3 === void 0 ? void 0 : _this$requestData3.call(_this4, true);
397
446
  });
398
- _defineProperty(this, "requestStyleRanges", () => {
399
- const {
400
- query,
401
- caret
402
- } = this.immediateState;
447
+ _defineProperty(_assertThisInitialized(_this), "requestStyleRanges", function () {
448
+ var _this$immediateState = _this.immediateState,
449
+ query = _this$immediateState.query,
450
+ caret = _this$immediateState.caret;
403
451
  if (!query) {
404
452
  return Promise.reject(new Error('Query is empty'));
405
453
  }
406
- return this.sendRequest({
407
- query,
408
- caret,
454
+ return _this.sendRequest({
455
+ query: query,
456
+ caret: caret,
409
457
  omitSuggestions: true
410
- }).then(this.handleStyleRangesResponse).catch(noop);
458
+ }).then(_this.handleStyleRangesResponse).catch(noop);
411
459
  });
412
- _defineProperty(this, "requestHandler", function () {
413
- let afterCompletion = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
460
+ _defineProperty(_assertThisInitialized(_this), "requestHandler", function () {
461
+ var afterCompletion = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
414
462
  if (_this.props.disabled) {
415
463
  return Promise.reject(new Error('QueryAssist(@jetbrains/ring-ui): null exception'));
416
464
  }
417
- const {
418
- query,
419
- caret
420
- } = _this.immediateState;
465
+ var _this$immediateState2 = _this.immediateState,
466
+ query = _this$immediateState2.query,
467
+ caret = _this$immediateState2.caret;
421
468
  return _this.sendRequest({
422
- query,
423
- caret
424
- }).then(data => _this.handleResponse(data, afterCompletion)).catch(noop);
469
+ query: query,
470
+ caret: caret
471
+ }).then(function (data) {
472
+ return _this.handleResponse(data, afterCompletion);
473
+ }).catch(noop);
425
474
  });
426
- _defineProperty(this, "handleCtrlSpace", e => {
475
+ _defineProperty(_assertThisInitialized(_this), "handleCtrlSpace", function (e) {
427
476
  preventDefault(e);
428
- if (!this.state.showPopup) {
429
- this.requestData?.();
477
+ if (!_this.state.showPopup) {
478
+ var _this$requestData4, _this5;
479
+ (_this$requestData4 = (_this5 = _this).requestData) === null || _this$requestData4 === void 0 ? void 0 : _this$requestData4.call(_this5);
430
480
  }
431
481
  });
432
- _defineProperty(this, "trackPopupMouseState", e => {
433
- this.mouseIsDownOnPopup = e.type === 'mousedown';
482
+ _defineProperty(_assertThisInitialized(_this), "trackPopupMouseState", function (e) {
483
+ _this.mouseIsDownOnPopup = e.type === 'mousedown';
434
484
  });
435
- _defineProperty(this, "trackCompositionState", e => {
436
- this.isComposing = e.type !== 'compositionend';
485
+ _defineProperty(_assertThisInitialized(_this), "trackCompositionState", function (e) {
486
+ _this.isComposing = e.type !== 'compositionend';
437
487
  });
438
- _defineProperty(this, "closePopup", () => {
439
- if (this.node) {
440
- this.setState({
488
+ _defineProperty(_assertThisInitialized(_this), "closePopup", function () {
489
+ if (_this.node) {
490
+ _this.setState({
441
491
  showPopup: false
442
492
  });
443
493
  }
444
494
  });
445
- _defineProperty(this, "clearQuery", () => {
446
- const state = {
495
+ _defineProperty(_assertThisInitialized(_this), "clearQuery", function () {
496
+ var state = {
447
497
  dirty: false,
448
498
  caret: 0,
449
499
  query: '',
450
500
  focus: true
451
501
  };
452
- this.props.onChange(state);
453
- this.props.onClear();
454
- this.immediateState = state;
455
- this.setState({
502
+ _this.props.onChange(state);
503
+ _this.props.onClear();
504
+ _this.immediateState = state;
505
+ _this.setState({
456
506
  dirty: false,
457
507
  query: '',
458
508
  placeholderEnabled: true,
459
509
  loading: false
460
510
  });
461
511
  });
462
- _defineProperty(this, "input", void 0);
463
- _defineProperty(this, "caret", void 0);
464
- _defineProperty(this, "inputRef", node => {
512
+ _defineProperty(_assertThisInitialized(_this), "input", void 0);
513
+ _defineProperty(_assertThisInitialized(_this), "caret", void 0);
514
+ _defineProperty(_assertThisInitialized(_this), "inputRef", function (node) {
465
515
  if (!node) {
466
516
  return;
467
517
  }
468
- this.input = node;
469
- this.caret = new Caret(this.input);
518
+ _this.input = node;
519
+ _this.caret = new Caret(_this.input);
470
520
  });
471
- _defineProperty(this, "_popup", void 0);
472
- _defineProperty(this, "popupRef", node => {
473
- this._popup = node;
521
+ _defineProperty(_assertThisInitialized(_this), "_popup", void 0);
522
+ _defineProperty(_assertThisInitialized(_this), "popupRef", function (node) {
523
+ _this._popup = node;
474
524
  });
475
- _defineProperty(this, "placeholder", void 0);
476
- _defineProperty(this, "placeholderRef", node => {
477
- this.placeholder = node;
525
+ _defineProperty(_assertThisInitialized(_this), "placeholder", void 0);
526
+ _defineProperty(_assertThisInitialized(_this), "placeholderRef", function (node) {
527
+ _this.placeholder = node;
478
528
  });
479
- _defineProperty(this, "glass", void 0);
480
- _defineProperty(this, "glassRef", node => {
481
- this.glass = node;
529
+ _defineProperty(_assertThisInitialized(_this), "glass", void 0);
530
+ _defineProperty(_assertThisInitialized(_this), "glassRef", function (node) {
531
+ _this.glass = node;
482
532
  });
483
- _defineProperty(this, "loader", void 0);
484
- _defineProperty(this, "loaderRef", node => {
485
- this.loader = node;
533
+ _defineProperty(_assertThisInitialized(_this), "loader", void 0);
534
+ _defineProperty(_assertThisInitialized(_this), "loaderRef", function (node) {
535
+ _this.loader = node;
486
536
  });
487
- _defineProperty(this, "clear", void 0);
488
- _defineProperty(this, "clearRef", node => {
489
- this.clear = node;
537
+ _defineProperty(_assertThisInitialized(_this), "clear", void 0);
538
+ _defineProperty(_assertThisInitialized(_this), "clearRef", function (node) {
539
+ _this.clear = node;
490
540
  });
491
- _defineProperty(this, "shortcutsScope", getUID('ring-query-assist-'));
492
- _defineProperty(this, "shortcutsMap", {
541
+ _defineProperty(_assertThisInitialized(_this), "shortcutsScope", getUID('ring-query-assist-'));
542
+ _defineProperty(_assertThisInitialized(_this), "shortcutsMap", {
493
543
  del: noop,
494
- enter: () => this.handleComplete(),
495
- 'command+enter': () => this.handleComplete(),
496
- 'ctrl+enter': () => this.handleComplete(),
497
- 'ctrl+space': this.handleCtrlSpace,
498
- tab: this.handleTab,
499
- 'meta+z': this.undo,
544
+ enter: function enter() {
545
+ return _this.handleComplete();
546
+ },
547
+ 'command+enter': function commandEnter() {
548
+ return _this.handleComplete();
549
+ },
550
+ 'ctrl+enter': function ctrlEnter() {
551
+ return _this.handleComplete();
552
+ },
553
+ 'ctrl+space': _this.handleCtrlSpace,
554
+ tab: _this.handleTab,
555
+ 'meta+z': _this.undo,
500
556
  right: noop,
501
557
  left: noop,
502
558
  space: noop,
503
559
  home: noop,
504
560
  end: noop
505
561
  });
506
- const _query = _props.query || '';
507
- this.immediateState = {
562
+ var _query = _props.query || '';
563
+ _this.immediateState = {
508
564
  query: _query,
509
565
  caret: typeof _props.caret === 'number' && Number.isFinite(_props.caret) ? _props.caret : _query.length,
510
566
  focus: Boolean(_props.autoOpen || _props.focus)
511
567
  };
568
+ return _this;
512
569
  }
513
- componentDidMount() {
514
- const query = this.props.query || '';
515
- this.immediateState = {
516
- query,
517
- caret: typeof this.props.caret === 'number' && Number.isFinite(this.props.caret) ? this.props.caret : query.length,
518
- focus: Boolean(this.props.autoOpen || this.props.focus)
519
- };
520
- this.setupRequestHandler(this.props.delay);
521
- if (this.props.autoOpen === 'force' || this.props.autoOpen && query.length > 0) {
522
- this.requestHandler().catch(noop);
523
- } else {
524
- this.requestStyleRanges().catch(noop);
570
+ _createClass(QueryAssist, [{
571
+ key: "componentDidMount",
572
+ value: function componentDidMount() {
573
+ var query = this.props.query || '';
574
+ this.immediateState = {
575
+ query: query,
576
+ caret: typeof this.props.caret === 'number' && Number.isFinite(this.props.caret) ? this.props.caret : query.length,
577
+ focus: Boolean(this.props.autoOpen || this.props.focus)
578
+ };
579
+ this.setupRequestHandler(this.props.delay);
580
+ if (this.props.autoOpen === 'force' || this.props.autoOpen && query.length > 0) {
581
+ this.requestHandler().catch(noop);
582
+ } else {
583
+ this.requestStyleRanges().catch(noop);
584
+ }
585
+ this.setCaretPosition();
586
+ this._pushHistory(this.state);
525
587
  }
526
- this.setCaretPosition();
527
- this._pushHistory(this.state);
528
- }
529
- shouldComponentUpdate(props, state) {
530
- return state.query !== this.state.query || state.dirty !== this.state.dirty || state.loading !== this.state.loading || state.showPopup !== this.state.showPopup || state.suggestions !== this.state.suggestions || state.styleRanges !== this.state.styleRanges || state.placeholderEnabled !== this.state.placeholderEnabled || props.placeholder !== this.props.placeholder || props.disabled !== this.props.disabled || props.clear !== this.props.clear || props.focus !== this.props.focus || props.actions !== this.props.actions || props.loader !== this.props.loader || props.glass !== this.props.glass;
531
- }
532
- componentDidUpdate(prevProps) {
533
- const {
534
- caret,
535
- delay,
536
- query
537
- } = this.props;
538
- const queryChanged = query !== prevProps.query;
539
- this.updateFocus(prevProps);
540
- this.setupRequestHandler(delay);
541
- const shouldSetCaret = typeof caret === 'number' && caret !== prevProps.caret;
542
- if (shouldSetCaret) {
543
- this.immediateState.caret = caret;
588
+ }, {
589
+ key: "shouldComponentUpdate",
590
+ value: function shouldComponentUpdate(props, state) {
591
+ return state.query !== this.state.query || state.dirty !== this.state.dirty || state.loading !== this.state.loading || state.showPopup !== this.state.showPopup || state.suggestions !== this.state.suggestions || state.styleRanges !== this.state.styleRanges || state.placeholderEnabled !== this.state.placeholderEnabled || props.placeholder !== this.props.placeholder || props.disabled !== this.props.disabled || props.clear !== this.props.clear || props.focus !== this.props.focus || props.actions !== this.props.actions || props.loader !== this.props.loader || props.glass !== this.props.glass;
544
592
  }
545
- if (typeof query === 'string' && queryChanged && query !== this.immediateState.query) {
546
- this.immediateState.query = query;
547
- if (prevProps.autoOpen && query?.length > 0) {
548
- this.requestData?.();
549
- } else if (query) {
550
- this.requestStyleRanges();
593
+ }, {
594
+ key: "componentDidUpdate",
595
+ value: function componentDidUpdate(prevProps) {
596
+ var _this$props = this.props,
597
+ caret = _this$props.caret,
598
+ delay = _this$props.delay,
599
+ query = _this$props.query;
600
+ var queryChanged = query !== prevProps.query;
601
+ this.updateFocus(prevProps);
602
+ this.setupRequestHandler(delay);
603
+ var shouldSetCaret = typeof caret === 'number' && caret !== prevProps.caret;
604
+ if (shouldSetCaret) {
605
+ this.immediateState.caret = caret;
606
+ }
607
+ if (typeof query === 'string' && queryChanged && query !== this.immediateState.query) {
608
+ this.immediateState.query = query;
609
+ if (prevProps.autoOpen && (query === null || query === void 0 ? void 0 : query.length) > 0) {
610
+ var _this$requestData5;
611
+ (_this$requestData5 = this.requestData) === null || _this$requestData5 === void 0 ? void 0 : _this$requestData5.call(this);
612
+ } else if (query) {
613
+ this.requestStyleRanges();
614
+ }
551
615
  }
552
616
  }
553
- }
554
- updateFocus(_ref5) {
555
- let {
556
- focus,
557
- caret
558
- } = _ref5;
559
- const isCaretChanged = caret !== this.props.caret;
560
- const isFocusChanged = focus !== this.props.focus;
561
- if (isFocusChanged || isCaretChanged) {
562
- const focusValue = isFocusChanged ? this.props.focus : true;
563
- this.setFocus(focusValue);
617
+ }, {
618
+ key: "updateFocus",
619
+ value: function updateFocus(_ref3) {
620
+ var focus = _ref3.focus,
621
+ caret = _ref3.caret;
622
+ var isCaretChanged = caret !== this.props.caret;
623
+ var isFocusChanged = focus !== this.props.focus;
624
+ if (isFocusChanged || isCaretChanged) {
625
+ var focusValue = isFocusChanged ? this.props.focus : true;
626
+ this.setFocus(focusValue);
627
+ }
564
628
  }
565
- }
566
- scrollInput() {
567
- const caretOffset = this.caret?.getOffset();
568
- if (this.input?.clientWidth !== this.input?.scrollWidth && caretOffset != null && this.input?.clientWidth != null && caretOffset > this.input.clientWidth) {
569
- this.input.scrollLeft += caretOffset;
629
+ }, {
630
+ key: "scrollInput",
631
+ value: function scrollInput() {
632
+ var _this$caret8, _this$input, _this$input2, _this$input3;
633
+ var caretOffset = (_this$caret8 = this.caret) === null || _this$caret8 === void 0 ? void 0 : _this$caret8.getOffset();
634
+ if (((_this$input = this.input) === null || _this$input === void 0 ? void 0 : _this$input.clientWidth) !== ((_this$input2 = this.input) === null || _this$input2 === void 0 ? void 0 : _this$input2.scrollWidth) && caretOffset != null && ((_this$input3 = this.input) === null || _this$input3 === void 0 ? void 0 : _this$input3.clientWidth) != null && caretOffset > this.input.clientWidth) {
635
+ this.input.scrollLeft += caretOffset;
636
+ }
570
637
  }
571
- }
572
- getQuery() {
573
- var _this$input$textConte;
574
- return (_this$input$textConte = this.input?.textContent?.replace(/\s/g, ' ')) !== null && _this$input$textConte !== void 0 ? _this$input$textConte : '';
575
- }
576
- isRenderingGlassOrLoader() {
577
- const renderLoader = this.props.loader !== false && this.state.loading;
578
- return this.props.glass || renderLoader;
579
- }
580
- _pushHistory(state) {
581
- const queryIsSet = ('query' in state);
582
- const queryIsSame = this.historyStack[0]?.query === state.query;
583
- if (queryIsSet && !queryIsSame) {
584
- var _this$caret$getPositi;
585
- this.historyStack.unshift({
586
- query: state.query,
587
- caret: (_this$caret$getPositi = this.caret?.getPosition({
588
- avoidFocus: true
589
- })) !== null && _this$caret$getPositi !== void 0 ? _this$caret$getPositi : -1
590
- });
638
+ }, {
639
+ key: "getQuery",
640
+ value: function getQuery() {
641
+ var _this$input$textConte, _this$input4;
642
+ return (_this$input$textConte = (_this$input4 = this.input) === null || _this$input4 === void 0 || (_this$input4 = _this$input4.textContent) === null || _this$input4 === void 0 ? void 0 : _this$input4.replace(/\s/g, ' ')) !== null && _this$input$textConte !== void 0 ? _this$input$textConte : '';
591
643
  }
592
- }
593
- sendRequest(params) {
594
- const value = this.props.dataSource(params);
595
- const dataPromise = Promise.resolve(value);
596
- const CLOSE_POPUP_TIMEOUT = 500;
597
- // Close popup after timeout between long requests
598
- const timeout = window.setTimeout(() => {
599
- if (this.node) {
600
- this.setState({
601
- loading: true
644
+ }, {
645
+ key: "isRenderingGlassOrLoader",
646
+ value: function isRenderingGlassOrLoader() {
647
+ var renderLoader = this.props.loader !== false && this.state.loading;
648
+ return this.props.glass || renderLoader;
649
+ }
650
+ }, {
651
+ key: "_pushHistory",
652
+ value: function _pushHistory(state) {
653
+ var _this$historyStack$;
654
+ var queryIsSet = ('query' in state);
655
+ var queryIsSame = ((_this$historyStack$ = this.historyStack[0]) === null || _this$historyStack$ === void 0 ? void 0 : _this$historyStack$.query) === state.query;
656
+ if (queryIsSet && !queryIsSame) {
657
+ var _this$caret$getPositi, _this$caret9;
658
+ this.historyStack.unshift({
659
+ query: state.query,
660
+ caret: (_this$caret$getPositi = (_this$caret9 = this.caret) === null || _this$caret9 === void 0 ? void 0 : _this$caret9.getPosition({
661
+ avoidFocus: true
662
+ })) !== null && _this$caret$getPositi !== void 0 ? _this$caret$getPositi : -1
602
663
  });
603
664
  }
604
- if (params.query === this.immediateState.query) {
605
- this.closePopup();
606
- }
607
- }, CLOSE_POPUP_TIMEOUT);
608
- dataPromise.then(() => window.clearTimeout(timeout)).catch(() => {
609
- window.clearTimeout(timeout);
610
- this.setState({
611
- loading: false
665
+ }
666
+ }, {
667
+ key: "sendRequest",
668
+ value: function sendRequest(params) {
669
+ var _this6 = this;
670
+ var value = this.props.dataSource(params);
671
+ var dataPromise = Promise.resolve(value);
672
+ var CLOSE_POPUP_TIMEOUT = 500;
673
+ // Close popup after timeout between long requests
674
+ var timeout = window.setTimeout(function () {
675
+ if (_this6.node) {
676
+ _this6.setState({
677
+ loading: true
678
+ });
679
+ }
680
+ if (params.query === _this6.immediateState.query) {
681
+ _this6.closePopup();
682
+ }
683
+ }, CLOSE_POPUP_TIMEOUT);
684
+ dataPromise.then(function () {
685
+ return window.clearTimeout(timeout);
686
+ }).catch(function () {
687
+ window.clearTimeout(timeout);
688
+ _this6.setState({
689
+ loading: false
690
+ });
612
691
  });
613
- });
614
- return dataPromise;
615
- }
616
- getPopupOffset(suggestions) {
617
- const ICON_SPACING = 12;
618
- const minOffset = this.isRenderingGlassOrLoader() ? ICON_SPACING : 0;
619
- if (!this.input) {
620
- return minOffset;
692
+ return dataPromise;
621
693
  }
622
- // First suggestion should be enough?
623
- const suggestion = suggestions && suggestions[0];
624
- // Check if suggestion begins not from the end
625
- const completionStart = suggestion && suggestion.completionStart !== suggestion.completionEnd && suggestion.completionStart;
626
- const inputChildren = this.input.firstChild instanceof Element && this.input.firstChild.children;
627
- const completionStartNode = inputChildren && typeof completionStart === 'number' && inputChildren[Math.min(completionStart, inputChildren.length - 1)];
628
- let offset = completionStartNode && getRect(completionStartNode).right - getRect(this.input).left;
629
- if (!offset) {
630
- var _this$caret$getOffset;
631
- const caret = (_this$caret$getOffset = this.caret?.getOffset()) !== null && _this$caret$getOffset !== void 0 ? _this$caret$getOffset : 0;
632
- // Do not compensate caret in the beginning of field
633
- if (caret === 0) {
694
+ }, {
695
+ key: "getPopupOffset",
696
+ value: function getPopupOffset(suggestions) {
697
+ var ICON_SPACING = 12;
698
+ var minOffset = this.isRenderingGlassOrLoader() ? ICON_SPACING : 0;
699
+ if (!this.input) {
634
700
  return minOffset;
635
- } else {
636
- offset = caret;
637
701
  }
702
+ // First suggestion should be enough?
703
+ var suggestion = suggestions && suggestions[0];
704
+ // Check if suggestion begins not from the end
705
+ var completionStart = suggestion && suggestion.completionStart !== suggestion.completionEnd && suggestion.completionStart;
706
+ var inputChildren = this.input.firstChild instanceof Element && this.input.firstChild.children;
707
+ var completionStartNode = inputChildren && typeof completionStart === 'number' && inputChildren[Math.min(completionStart, inputChildren.length - 1)];
708
+ var offset = completionStartNode && getRect(completionStartNode).right - getRect(this.input).left;
709
+ if (!offset) {
710
+ var _this$caret$getOffset, _this$caret10;
711
+ var caret = (_this$caret$getOffset = (_this$caret10 = this.caret) === null || _this$caret10 === void 0 ? void 0 : _this$caret10.getOffset()) !== null && _this$caret$getOffset !== void 0 ? _this$caret$getOffset : 0;
712
+ // Do not compensate caret in the beginning of field
713
+ if (caret === 0) {
714
+ return minOffset;
715
+ } else {
716
+ offset = caret;
717
+ }
718
+ }
719
+ var result = offset - POPUP_COMPENSATION;
720
+ return result < minOffset ? minOffset : result;
638
721
  }
639
- const result = offset - POPUP_COMPENSATION;
640
- return result < minOffset ? minOffset : result;
641
- }
642
- blurInput() {
643
- this.immediateState.selection = null;
644
- if (!this.props.focus) {
645
- this.caret?.target.blur();
722
+ }, {
723
+ key: "blurInput",
724
+ value: function blurInput() {
725
+ this.immediateState.selection = null;
726
+ if (!this.props.focus) {
727
+ var _this$caret11;
728
+ (_this$caret11 = this.caret) === null || _this$caret11 === void 0 ? void 0 : _this$caret11.target.blur();
729
+ }
646
730
  }
647
- }
648
- /**
649
- * Optionally setup data request delay. For each component create a separate
650
- * instance of the delayed function. This may help reduce the load on the server
651
- * when the user quickly inputs data.
652
- */
653
- setupRequestHandler(delay) {
654
- const needDelay = typeof delay === 'number';
655
- const hasDelay = this.requestData !== this.requestHandler;
656
- if (!this.requestData || hasDelay !== needDelay) {
657
- if (needDelay) {
658
- this.requestData = debounce(this.requestHandler, delay);
659
- } else {
660
- this.requestData = this.requestHandler;
731
+ /**
732
+ * Optionally setup data request delay. For each component create a separate
733
+ * instance of the delayed function. This may help reduce the load on the server
734
+ * when the user quickly inputs data.
735
+ */
736
+ }, {
737
+ key: "setupRequestHandler",
738
+ value: function setupRequestHandler(delay) {
739
+ var needDelay = typeof delay === 'number';
740
+ var hasDelay = this.requestData !== this.requestHandler;
741
+ if (!this.requestData || hasDelay !== needDelay) {
742
+ if (needDelay) {
743
+ this.requestData = debounce(this.requestHandler, delay);
744
+ } else {
745
+ this.requestData = this.requestHandler;
746
+ }
661
747
  }
662
748
  }
663
- }
664
- _renderSuggestion(suggestion) {
665
- const {
666
- ITEM
667
- } = PopupMenu.ListProps.Type;
668
- const {
669
- description,
670
- icon,
671
- group
672
- } = suggestion;
673
- const key = QueryAssistSuggestions.createKey(suggestion);
674
- const label = QueryAssistSuggestions.renderLabel(suggestion);
675
- return {
676
- key,
677
- icon,
678
- label,
679
- description,
680
- group,
681
- rgItemType: ITEM,
682
- data: suggestion
683
- };
684
- }
685
- renderSuggestions() {
686
- const {
687
- suggestions
688
- } = this.state;
689
- if (!suggestions || !suggestions.length) {
690
- return [];
749
+ }, {
750
+ key: "_renderSuggestion",
751
+ value: function _renderSuggestion(suggestion) {
752
+ var ITEM = PopupMenu.ListProps.Type.ITEM;
753
+ var description = suggestion.description,
754
+ icon = suggestion.icon,
755
+ group = suggestion.group;
756
+ var key = QueryAssistSuggestions.createKey(suggestion);
757
+ var label = QueryAssistSuggestions.renderLabel(suggestion);
758
+ return {
759
+ key: key,
760
+ icon: icon,
761
+ label: label,
762
+ description: description,
763
+ group: group,
764
+ rgItemType: ITEM,
765
+ data: suggestion
766
+ };
691
767
  }
692
- return QueryAssistSuggestions.renderList(suggestions, this._renderSuggestion);
693
- }
694
- renderQuery() {
695
- const {
696
- dirty,
697
- styleRanges,
698
- query
699
- } = this.state;
700
- const classes = [];
701
- const LETTER_CLASS = 'letter';
702
- const LETTER_DEFAULT_CLASS = modules_da7ab055.letterDefault;
703
- if (styleRanges && styleRanges.length) {
704
- styleRanges.forEach((item, index) => {
705
- if (dirty && index === styleRanges.length - 1 && item.style === 'text') {
706
- return;
707
- }
708
- const styleName = `${LETTER_CLASS}-${item.style.replace('_', '-')}`;
709
- for (let i = item.start; i < item.start + item.length; i++) {
710
- classes[i] = modules_da7ab055[styleName];
711
- }
768
+ }, {
769
+ key: "renderSuggestions",
770
+ value: function renderSuggestions() {
771
+ var suggestions = this.state.suggestions;
772
+ if (!suggestions || !suggestions.length) {
773
+ return [];
774
+ }
775
+ return QueryAssistSuggestions.renderList(suggestions, this._renderSuggestion);
776
+ }
777
+ }, {
778
+ key: "renderQuery",
779
+ value: function renderQuery() {
780
+ var _this$state = this.state,
781
+ dirty = _this$state.dirty,
782
+ styleRanges = _this$state.styleRanges,
783
+ query = _this$state.query;
784
+ var classes = [];
785
+ var LETTER_CLASS = 'letter';
786
+ var LETTER_DEFAULT_CLASS = modules_da7ab055.letterDefault;
787
+ if (styleRanges && styleRanges.length) {
788
+ styleRanges.forEach(function (item, index) {
789
+ if (dirty && index === styleRanges.length - 1 && item.style === 'text') {
790
+ return;
791
+ }
792
+ var styleName = "".concat(LETTER_CLASS, "-").concat(item.style.replace('_', '-'));
793
+ for (var i = item.start; i < item.start + item.length; i++) {
794
+ classes[i] = modules_da7ab055[styleName];
795
+ }
796
+ });
797
+ }
798
+ return query && Array.from(query).map(function (letter, index, letters) {
799
+ var className = classNames(modules_da7ab055.letter, classes[index] || LETTER_DEFAULT_CLASS);
800
+ var dataTest = letters.length - 1 === index ? 'ring-query-assist-last-letter' : null;
801
+ // \u00a0 === &nbsp;
802
+ return /*#__PURE__*/React.createElement("span", {
803
+ // eslint-disable-next-line react/no-array-index-key
804
+ key: index + letter,
805
+ className: className,
806
+ "data-test": dataTest
807
+ }, letter === ' ' ? "\xA0" : letter);
712
808
  });
713
809
  }
714
- return query && Array.from(query).map((letter, index, letters) => {
715
- const className = classNames(modules_da7ab055.letter, classes[index] || LETTER_DEFAULT_CLASS);
716
- const dataTest = letters.length - 1 === index ? 'ring-query-assist-last-letter' : null;
717
- // \u00a0 === &nbsp;
718
- return /*#__PURE__*/React.createElement("span", {
719
- // eslint-disable-next-line react/no-array-index-key
720
- key: index + letter,
721
- className: className,
722
- "data-test": dataTest
723
- }, letter === ' ' ? '\u00a0' : letter);
724
- });
725
- }
726
- setFocus(focus) {
727
- this.setState({
728
- shortcuts: !!focus
729
- });
730
- const isComponentFocused = Boolean(this.immediateState.focus);
731
- if (focus === false && isComponentFocused) {
732
- this.immediateState.focus = focus;
733
- this.blurInput();
734
- } else if (focus === true && !isComponentFocused) {
735
- this.immediateState.focus = focus;
736
- this.setCaretPosition({
737
- forceSetCaret: true
810
+ }, {
811
+ key: "setFocus",
812
+ value: function setFocus(focus) {
813
+ this.setState({
814
+ shortcuts: !!focus
738
815
  });
816
+ var isComponentFocused = Boolean(this.immediateState.focus);
817
+ if (focus === false && isComponentFocused) {
818
+ this.immediateState.focus = focus;
819
+ this.blurInput();
820
+ } else if (focus === true && !isComponentFocused) {
821
+ this.immediateState.focus = focus;
822
+ this.setCaretPosition({
823
+ forceSetCaret: true
824
+ });
825
+ }
739
826
  }
740
- }
741
- renderActions() {
742
- const actions = [...(this.props.actions || [])];
743
- const renderClear = this.props.clear && !!this.state.query;
744
- if (renderClear) {
745
- actions.push( /*#__PURE__*/React.createElement(Button, {
746
- icon: closeIcon,
747
- key: 'clearAction',
748
- className: modules_da7ab055.clear,
749
- title: this.props.translations.clearTitle,
750
- ref: this.clearRef,
751
- onClick: this.clearQuery,
752
- "data-test": "query-assist-clear-icon"
827
+ }, {
828
+ key: "renderActions",
829
+ value: function renderActions() {
830
+ var _this7 = this;
831
+ var actions = _toConsumableArray(this.props.actions || []);
832
+ var renderClear = this.props.clear && !!this.state.query;
833
+ if (renderClear) {
834
+ actions.push( /*#__PURE__*/React.createElement(I18nContext.Consumer, {
835
+ key: 'clearAction'
836
+ }, function (_ref4) {
837
+ var _this7$props$translat, _this7$props$translat2;
838
+ var translate = _ref4.translate;
839
+ return /*#__PURE__*/React.createElement(Button, {
840
+ icon: closeIcon,
841
+ className: modules_da7ab055.clear,
842
+ title: (_this7$props$translat = (_this7$props$translat2 = _this7.props.translations) === null || _this7$props$translat2 === void 0 ? void 0 : _this7$props$translat2.clearTitle) !== null && _this7$props$translat !== void 0 ? _this7$props$translat : translate('clearTitle'),
843
+ ref: _this7.clearRef,
844
+ onClick: _this7.clearQuery,
845
+ "data-test": "query-assist-clear-icon"
846
+ });
847
+ }));
848
+ }
849
+ return actions;
850
+ }
851
+ }, {
852
+ key: "render",
853
+ value: function render() {
854
+ var _classNames,
855
+ _classNames2,
856
+ _classNames3,
857
+ _this8 = this;
858
+ var _this$props2 = this.props,
859
+ glass = _this$props2.glass,
860
+ dataTest = _this$props2['data-test'],
861
+ className = _this$props2.className,
862
+ useCustomItemRender = _this$props2.useCustomItemRender,
863
+ huge = _this$props2.huge,
864
+ size = _this$props2.size,
865
+ translations = _this$props2.translations;
866
+ var renderPlaceholder = !!this.props.placeholder && this.state.placeholderEnabled;
867
+ var renderLoader = this.props.loader !== false && this.state.loading;
868
+ var renderGlass = glass && !renderLoader;
869
+ var actions = this.renderActions();
870
+ var containerClasses = classNames(className, modules_88cfaf40["size".concat(huge ? Size.FULL : size)], (_classNames = {}, _defineProperty(_classNames, modules_da7ab055.queryAssist, true), _defineProperty(_classNames, modules_da7ab055.withIcon, renderGlass && !huge || renderLoader), _defineProperty(_classNames, modules_da7ab055.huge, huge), _defineProperty(_classNames, modules_da7ab055.queryAssistDisabled, this.props.disabled), _classNames));
871
+ var inputClasses = classNames(this.props.inputClassName, (_classNames2 = {}, _defineProperty(_classNames2, "".concat(modules_da7ab055.input, " ring-js-shortcuts"), true), _defineProperty(_classNames2, modules_da7ab055.inputGap, actions.length || this.isRenderingGlassOrLoader() && !glass), _defineProperty(_classNames2, modules_da7ab055.inputGap2, actions.length === 2), _defineProperty(_classNames2, modules_da7ab055.inputRevertOrder, !glass || huge), _classNames2));
872
+ var placeholderStyles = classNames((_classNames3 = {}, _defineProperty(_classNames3, modules_da7ab055.placeholder, true), _defineProperty(_classNames3, modules_da7ab055.hugePlaceholder, huge), _defineProperty(_classNames3, modules_da7ab055.withoutGlass, !glass || !renderLoader && huge), _classNames3));
873
+ return /*#__PURE__*/React.createElement(ControlsHeightContext.Provider, {
874
+ value: ControlsHeight.M
875
+ }, /*#__PURE__*/React.createElement(I18nContext.Consumer, null, function (_ref5) {
876
+ var _translations$searchT, _classNames4, _translations$searchT2, _translations$searchT3;
877
+ var translate = _ref5.translate;
878
+ return /*#__PURE__*/React.createElement("div", {
879
+ "data-test": joinDataTestAttributes('ring-query-assist', dataTest),
880
+ className: containerClasses,
881
+ role: "presentation",
882
+ ref: _this8.nodeRef
883
+ }, _this8.state.shortcuts && /*#__PURE__*/React.createElement(Shortcuts, {
884
+ map: _this8.shortcutsMap,
885
+ scope: _this8.shortcutsScope
886
+ }), renderGlass && !huge && /*#__PURE__*/React.createElement(Icon, {
887
+ glyph: searchIcon,
888
+ className: modules_da7ab055.icon,
889
+ title: (_translations$searchT = translations === null || translations === void 0 ? void 0 : translations.searchTitle) !== null && _translations$searchT !== void 0 ? _translations$searchT : translate('searchTitle'),
890
+ ref: _this8.glassRef,
891
+ "data-test": "query-assist-search-icon"
892
+ }), renderLoader && /*#__PURE__*/React.createElement("div", {
893
+ className: classNames(modules_da7ab055.icon, modules_da7ab055.loader, (_classNames4 = {}, _defineProperty(_classNames4, modules_da7ab055.loaderOnTheRight, !glass && !huge), _defineProperty(_classNames4, modules_da7ab055.loaderActive, renderLoader), _classNames4)),
894
+ ref: _this8.loaderRef
895
+ }, /*#__PURE__*/React.createElement(LoaderInline, null)), /*#__PURE__*/React.createElement(ContentEditable, {
896
+ "aria-label": (_translations$searchT2 = translations === null || translations === void 0 ? void 0 : translations.searchTitle) !== null && _translations$searchT2 !== void 0 ? _translations$searchT2 : translate('searchTitle'),
897
+ className: inputClasses,
898
+ "data-test": "ring-query-assist-input",
899
+ inputRef: _this8.inputRef,
900
+ disabled: _this8.props.disabled,
901
+ onComponentUpdate: function onComponentUpdate() {
902
+ return _this8.setCaretPosition({
903
+ fromContentEditable: true
904
+ });
905
+ },
906
+ onBlur: _this8.handleFocusChange,
907
+ onClick: _this8.handleCaretMove,
908
+ onCompositionStart: _this8.trackCompositionState,
909
+ onCompositionEnd: _this8.trackCompositionState,
910
+ onFocus: _this8.handleFocusChange,
911
+ onInput: _this8.handleInput // To support IE use the same method
912
+ ,
913
+ onKeyUp: _this8.handleInput // to handle input and key up
914
+ ,
915
+ onKeyDown: _this8.handleEnter,
916
+ onPaste: _this8.handlePaste,
917
+ spellCheck: "false"
918
+ }, _this8.state.query && /*#__PURE__*/React.createElement("span", null, _this8.renderQuery())), renderPlaceholder && /*#__PURE__*/React.createElement("button", {
919
+ type: "button",
920
+ className: placeholderStyles,
921
+ ref: _this8.placeholderRef,
922
+ onClick: _this8.handleCaretMove,
923
+ "data-test": "query-assist-placeholder"
924
+ }, _this8.props.placeholder), actions.length ? /*#__PURE__*/React.createElement("div", {
925
+ "data-test": "ring-query-assist-actions",
926
+ className: modules_da7ab055.actions
927
+ }, actions) : null, /*#__PURE__*/React.createElement(PopupMenu, {
928
+ hidden: !_this8.state.showPopup,
929
+ onCloseAttempt: _this8.closePopup,
930
+ ref: _this8.popupRef,
931
+ anchorElement: _this8.node,
932
+ keepMounted: true,
933
+ attached: true,
934
+ className: _this8.props.popupClassName,
935
+ directions: [PopupMenu.PopupProps.Directions.BOTTOM_RIGHT],
936
+ data: useCustomItemRender ? _this8.state.suggestions : _this8.renderSuggestions(),
937
+ "data-test": "ring-query-assist-popup",
938
+ hint: _this8.props.hint,
939
+ hintOnSelection: _this8.props.hintOnSelection,
940
+ left: _this8.getPopupOffset(_this8.state.suggestions),
941
+ maxHeight: PopupMenu.PopupProps.MaxHeight.SCREEN,
942
+ onMouseDown: _this8.trackPopupMouseState,
943
+ onMouseUp: _this8.trackPopupMouseState,
944
+ onSelect: function onSelect(item) {
945
+ return _this8.handleComplete(item);
946
+ }
947
+ }), glass && huge && /*#__PURE__*/React.createElement("div", {
948
+ className: modules_da7ab055.rightSearchButton,
949
+ "data-test": "query-assist-search-button"
950
+ }, /*#__PURE__*/React.createElement(Icon, {
951
+ glyph: searchIcon,
952
+ className: modules_da7ab055.rightSearchIcon,
953
+ title: (_translations$searchT3 = translations === null || translations === void 0 ? void 0 : translations.searchTitle) !== null && _translations$searchT3 !== void 0 ? _translations$searchT3 : translate('searchTitle'),
954
+ onClick: _this8.handleApply,
955
+ ref: _this8.glassRef,
956
+ "data-test": "query-assist-search-icon"
957
+ })));
753
958
  }));
754
959
  }
755
- return actions;
756
- }
757
- render() {
758
- const {
759
- glass,
760
- 'data-test': dataTest,
761
- className,
762
- useCustomItemRender,
763
- huge,
764
- size
765
- } = this.props;
766
- const renderPlaceholder = !!this.props.placeholder && this.state.placeholderEnabled;
767
- const renderLoader = this.props.loader !== false && this.state.loading;
768
- const renderGlass = glass && !renderLoader;
769
- const actions = this.renderActions();
770
- const containerClasses = classNames(className, modules_88cfaf40[`size${huge ? Size.FULL : size}`], {
771
- [modules_da7ab055.queryAssist]: true,
772
- [modules_da7ab055.withIcon]: renderGlass && !huge || renderLoader,
773
- [modules_da7ab055.huge]: huge,
774
- [modules_da7ab055.queryAssistDisabled]: this.props.disabled
775
- });
776
- const inputClasses = classNames(this.props.inputClassName, {
777
- [`${modules_da7ab055.input} ring-js-shortcuts`]: true,
778
- [modules_da7ab055.inputGap]: actions.length || this.isRenderingGlassOrLoader() && !glass,
779
- [modules_da7ab055.inputGap2]: actions.length === 2,
780
- [modules_da7ab055.inputRevertOrder]: !glass
781
- });
782
- const placeholderStyles = classNames({
783
- [modules_da7ab055.placeholder]: true,
784
- [modules_da7ab055.withoutGlass]: !glass || !renderLoader && huge
785
- });
786
- return /*#__PURE__*/React.createElement(ControlsHeightContext.Provider, {
787
- value: ControlsHeight.M
788
- }, /*#__PURE__*/React.createElement("div", {
789
- "data-test": joinDataTestAttributes('ring-query-assist', dataTest),
790
- className: containerClasses,
791
- role: "presentation",
792
- ref: this.nodeRef
793
- }, this.state.shortcuts && /*#__PURE__*/React.createElement(Shortcuts, {
794
- map: this.shortcutsMap,
795
- scope: this.shortcutsScope
796
- }), renderGlass && !huge && /*#__PURE__*/React.createElement(Icon, {
797
- glyph: searchIcon,
798
- className: modules_da7ab055.icon,
799
- title: this.props.translations.searchTitle,
800
- ref: this.glassRef,
801
- "data-test": "query-assist-search-icon"
802
- }), renderLoader && /*#__PURE__*/React.createElement("div", {
803
- className: classNames(modules_da7ab055.icon, modules_da7ab055.loader, {
804
- [modules_da7ab055.loaderOnTheRight]: !glass,
805
- [modules_da7ab055.loaderActive]: renderLoader
806
- }),
807
- ref: this.loaderRef
808
- }, /*#__PURE__*/React.createElement(LoaderInline, null)), /*#__PURE__*/React.createElement(ContentEditable, {
809
- "aria-label": this.props.translations.searchTitle,
810
- className: inputClasses,
811
- "data-test": "ring-query-assist-input",
812
- inputRef: this.inputRef,
813
- disabled: this.props.disabled,
814
- onComponentUpdate: () => this.setCaretPosition({
815
- fromContentEditable: true
816
- }),
817
- onBlur: this.handleFocusChange,
818
- onClick: this.handleCaretMove,
819
- onCompositionStart: this.trackCompositionState,
820
- onCompositionEnd: this.trackCompositionState,
821
- onFocus: this.handleFocusChange,
822
- onInput: this.handleInput // To support IE use the same method
823
- ,
824
- onKeyUp: this.handleInput // to handle input and key up
825
- ,
826
- onKeyDown: this.handleEnter,
827
- onPaste: this.handlePaste,
828
- spellCheck: "false"
829
- }, this.state.query && /*#__PURE__*/React.createElement("span", null, this.renderQuery())), renderPlaceholder && /*#__PURE__*/React.createElement("button", {
830
- type: "button",
831
- className: placeholderStyles,
832
- ref: this.placeholderRef,
833
- onClick: this.handleCaretMove,
834
- "data-test": "query-assist-placeholder"
835
- }, this.props.placeholder), actions.length ? /*#__PURE__*/React.createElement("div", {
836
- "data-test": "ring-query-assist-actions",
837
- className: modules_da7ab055.actions
838
- }, actions) : null, /*#__PURE__*/React.createElement(PopupMenu, {
839
- hidden: !this.state.showPopup,
840
- onCloseAttempt: this.closePopup,
841
- ref: this.popupRef,
842
- anchorElement: this.node,
843
- keepMounted: true,
844
- attached: true,
845
- className: this.props.popupClassName,
846
- directions: [PopupMenu.PopupProps.Directions.BOTTOM_RIGHT],
847
- data: useCustomItemRender ? this.state.suggestions : this.renderSuggestions(),
848
- "data-test": "ring-query-assist-popup",
849
- hint: this.props.hint,
850
- hintOnSelection: this.props.hintOnSelection,
851
- left: this.getPopupOffset(this.state.suggestions),
852
- maxHeight: PopupMenu.PopupProps.MaxHeight.SCREEN,
853
- onMouseDown: this.trackPopupMouseState,
854
- onMouseUp: this.trackPopupMouseState,
855
- onSelect: item => this.handleComplete(item)
856
- }), glass && huge && /*#__PURE__*/React.createElement("div", {
857
- className: modules_da7ab055.rightSearchButton,
858
- "data-test": "query-assist-search-button"
859
- }, /*#__PURE__*/React.createElement(Icon, {
860
- glyph: searchIcon,
861
- className: modules_da7ab055.rightSearchIcon,
862
- title: this.props.translations.searchTitle,
863
- onClick: this.handleApply,
864
- ref: this.glassRef,
865
- "data-test": "query-assist-search-icon"
866
- }))));
867
- }
868
- }
960
+ }], [{
961
+ key: "getDerivedStateFromProps",
962
+ value: function getDerivedStateFromProps(_ref6, _ref7) {
963
+ var query = _ref6.query;
964
+ var prevQuery = _ref7.prevQuery;
965
+ var nextState = {
966
+ prevQuery: query
967
+ };
968
+ if (typeof query === 'string' && query !== prevQuery) {
969
+ nextState.query = query;
970
+ nextState.placeholderEnabled = !query;
971
+ }
972
+ return nextState;
973
+ }
974
+ }]);
975
+ return QueryAssist;
976
+ }(Component);
869
977
  _defineProperty(QueryAssist, "propTypes", {
870
978
  /**
871
979
  * Open suggestions popup during the initial render
@@ -964,13 +1072,9 @@ _defineProperty(QueryAssist, "defaultProps", {
964
1072
  onApplySuggestion: noop,
965
1073
  onClear: noop,
966
1074
  onFocusChange: noop,
967
- size: Size.L,
968
- translations: {
969
- searchTitle: 'Search',
970
- clearTitle: 'Clear search input'
971
- }
1075
+ size: Size.L
972
1076
  });
973
1077
  _defineProperty(QueryAssist, "ngModelStateField", ngModelStateField);
974
- const RerenderableQueryAssist = rerenderHOC(QueryAssist);
1078
+ var RerenderableQueryAssist = rerenderHOC(QueryAssist);
975
1079
 
976
1080
  export { RerenderableQueryAssist, QueryAssist as default };