@jetbrains/ring-ui-built 6.0.5-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 (445) hide show
  1. package/LICENSE.txt +202 -0
  2. package/README.md +99 -0
  3. package/babel.config.js +25 -0
  4. package/components/_helpers/_rollupPluginBabelHelpers.js +648 -0
  5. package/components/_helpers/anchor.js +31 -0
  6. package/components/_helpers/badge.js +3 -0
  7. package/components/_helpers/button__classes.js +34 -0
  8. package/components/_helpers/caption.js +31 -0
  9. package/components/_helpers/card.js +132 -0
  10. package/components/_helpers/date-picker.js +3 -0
  11. package/components/_helpers/dialog__body-scroll-preventer.js +54 -0
  12. package/components/_helpers/grid.js +3 -0
  13. package/components/_helpers/header.js +3 -0
  14. package/components/_helpers/heading.js +3 -0
  15. package/components/_helpers/icon__svg.js +75 -0
  16. package/components/_helpers/input.js +235 -0
  17. package/components/_helpers/island.js +3 -0
  18. package/components/_helpers/link.js +3 -0
  19. package/components/_helpers/list.js +3 -0
  20. package/components/_helpers/query-assist__suggestions.js +102 -0
  21. package/components/_helpers/select__filter.js +94 -0
  22. package/components/_helpers/services-link.js +48 -0
  23. package/components/_helpers/sidebar.js +123 -0
  24. package/components/_helpers/tab-link.js +34 -0
  25. package/components/_helpers/table.js +3 -0
  26. package/components/_helpers/theme.js +95 -0
  27. package/components/_helpers/title.js +103 -0
  28. package/components/alert/alert.d.ts +113 -0
  29. package/components/alert/alert.js +292 -0
  30. package/components/alert/container.d.ts +15 -0
  31. package/components/alert/container.js +52 -0
  32. package/components/alert-service/alert-service.d.ts +36 -0
  33. package/components/alert-service/alert-service.js +218 -0
  34. package/components/analytics/analytics.d.ts +18 -0
  35. package/components/analytics/analytics.js +31 -0
  36. package/components/analytics/analytics__custom-plugin.d.ts +28 -0
  37. package/components/analytics/analytics__custom-plugin.js +90 -0
  38. package/components/auth/auth.d.ts +3 -0
  39. package/components/auth/auth.js +130 -0
  40. package/components/auth/auth__core.d.ts +236 -0
  41. package/components/auth/auth__core.js +1650 -0
  42. package/components/auth/background-flow.d.ts +31 -0
  43. package/components/auth/background-flow.js +146 -0
  44. package/components/auth/down-notification.d.ts +15 -0
  45. package/components/auth/down-notification.js +155 -0
  46. package/components/auth/iframe-flow.d.ts +20 -0
  47. package/components/auth/iframe-flow.js +192 -0
  48. package/components/auth/request-builder.d.ts +47 -0
  49. package/components/auth/request-builder.js +101 -0
  50. package/components/auth/response-parser.d.ts +70 -0
  51. package/components/auth/response-parser.js +137 -0
  52. package/components/auth/storage.d.ts +112 -0
  53. package/components/auth/storage.js +422 -0
  54. package/components/auth/token-validator.d.ts +93 -0
  55. package/components/auth/token-validator.js +267 -0
  56. package/components/auth/window-flow.d.ts +26 -0
  57. package/components/auth/window-flow.js +153 -0
  58. package/components/auth-dialog/auth-dialog.d.ts +60 -0
  59. package/components/auth-dialog/auth-dialog.js +219 -0
  60. package/components/auth-dialog-service/auth-dialog-service.d.ts +6 -0
  61. package/components/auth-dialog-service/auth-dialog-service.js +90 -0
  62. package/components/avatar/avatar-example-datauri.d.ts +1 -0
  63. package/components/avatar/avatar-example-datauri.js +4 -0
  64. package/components/avatar/avatar.d.ts +52 -0
  65. package/components/avatar/avatar.js +180 -0
  66. package/components/avatar/fallback-avatar.d.ts +17 -0
  67. package/components/avatar/fallback-avatar.js +150 -0
  68. package/components/badge/badge.d.ts +24 -0
  69. package/components/badge/badge.js +59 -0
  70. package/components/button/button.d.ts +67 -0
  71. package/components/button/button.js +131 -0
  72. package/components/button/button__classes.d.ts +2 -0
  73. package/components/button/button__classes.js +2 -0
  74. package/components/button-group/button-group.d.ts +18 -0
  75. package/components/button-group/button-group.js +48 -0
  76. package/components/button-group/caption.d.ts +8 -0
  77. package/components/button-group/caption.js +5 -0
  78. package/components/button-set/button-set.d.ts +16 -0
  79. package/components/button-set/button-set.js +47 -0
  80. package/components/button-toolbar/button-toolbar.d.ts +16 -0
  81. package/components/button-toolbar/button-toolbar.js +46 -0
  82. package/components/caret/caret.d.ts +66 -0
  83. package/components/caret/caret.js +258 -0
  84. package/components/checkbox/checkbox.d.ts +45 -0
  85. package/components/checkbox/checkbox.js +130 -0
  86. package/components/clipboard/clipboard-fallback.d.ts +2 -0
  87. package/components/clipboard/clipboard-fallback.js +42 -0
  88. package/components/clipboard/clipboard.d.ts +5 -0
  89. package/components/clipboard/clipboard.js +183 -0
  90. package/components/code/code.d.ts +43 -0
  91. package/components/code/code.js +192 -0
  92. package/components/confirm/confirm.d.ts +48 -0
  93. package/components/confirm/confirm.js +151 -0
  94. package/components/confirm-service/confirm-service.d.ts +21 -0
  95. package/components/confirm-service/confirm-service.js +139 -0
  96. package/components/content-layout/content-layout.d.ts +26 -0
  97. package/components/content-layout/content-layout.js +79 -0
  98. package/components/content-layout/sidebar.d.ts +31 -0
  99. package/components/content-layout/sidebar.js +7 -0
  100. package/components/contenteditable/contenteditable.d.ts +47 -0
  101. package/components/contenteditable/contenteditable.js +84 -0
  102. package/components/control-label/control-label.d.ts +11 -0
  103. package/components/control-label/control-label.js +36 -0
  104. package/components/data-list/data-list.d.ts +85 -0
  105. package/components/data-list/data-list.js +246 -0
  106. package/components/data-list/data-list.mock.d.ts +16 -0
  107. package/components/data-list/data-list.mock.js +192 -0
  108. package/components/data-list/item.d.ts +50 -0
  109. package/components/data-list/item.js +234 -0
  110. package/components/data-list/selection.d.ts +16 -0
  111. package/components/data-list/selection.js +146 -0
  112. package/components/data-list/title.d.ts +26 -0
  113. package/components/data-list/title.js +28 -0
  114. package/components/date-picker/consts.d.ts +98 -0
  115. package/components/date-picker/consts.js +46 -0
  116. package/components/date-picker/date-input.d.ts +47 -0
  117. package/components/date-picker/date-input.js +177 -0
  118. package/components/date-picker/date-picker.d.ts +77 -0
  119. package/components/date-picker/date-picker.js +402 -0
  120. package/components/date-picker/date-popup.d.ts +55 -0
  121. package/components/date-picker/date-popup.js +488 -0
  122. package/components/date-picker/day.d.ts +30 -0
  123. package/components/date-picker/day.js +133 -0
  124. package/components/date-picker/formats.d.ts +2 -0
  125. package/components/date-picker/formats.js +3 -0
  126. package/components/date-picker/month-names.d.ts +13 -0
  127. package/components/date-picker/month-names.js +110 -0
  128. package/components/date-picker/month-slider.d.ts +29 -0
  129. package/components/date-picker/month-slider.js +93 -0
  130. package/components/date-picker/month.d.ts +14 -0
  131. package/components/date-picker/month.js +58 -0
  132. package/components/date-picker/months.d.ts +11 -0
  133. package/components/date-picker/months.js +133 -0
  134. package/components/date-picker/weekdays.d.ts +13 -0
  135. package/components/date-picker/weekdays.js +39 -0
  136. package/components/date-picker/years.d.ts +25 -0
  137. package/components/date-picker/years.js +134 -0
  138. package/components/dialog/dialog.d.ts +64 -0
  139. package/components/dialog/dialog.js +238 -0
  140. package/components/dialog/dialog__body-scroll-preventer.d.ts +9 -0
  141. package/components/dialog/dialog__body-scroll-preventer.js +6 -0
  142. package/components/dropdown/anchor.d.ts +11 -0
  143. package/components/dropdown/anchor.js +24 -0
  144. package/components/dropdown/dropdown.d.ts +87 -0
  145. package/components/dropdown/dropdown.js +247 -0
  146. package/components/dropdown-menu/dropdown-menu.d.ts +36 -0
  147. package/components/dropdown-menu/dropdown-menu.js +194 -0
  148. package/components/editable-heading/editable-heading.d.ts +32 -0
  149. package/components/editable-heading/editable-heading.js +245 -0
  150. package/components/error-bubble/error-bubble.d.ts +18 -0
  151. package/components/error-bubble/error-bubble.js +86 -0
  152. package/components/error-message/error-message.d.ts +27 -0
  153. package/components/error-message/error-message.js +78 -0
  154. package/components/footer/footer.d.ts +28 -0
  155. package/components/footer/footer.js +118 -0
  156. package/components/global/compose.d.ts +7 -0
  157. package/components/global/compose.js +17 -0
  158. package/components/global/composeRefs.d.ts +3 -0
  159. package/components/global/composeRefs.js +19 -0
  160. package/components/global/controls-height.d.ts +9 -0
  161. package/components/global/controls-height.js +19 -0
  162. package/components/global/create-stateful-context.d.ts +27 -0
  163. package/components/global/create-stateful-context.js +49 -0
  164. package/components/global/data-tests.d.ts +3 -0
  165. package/components/global/data-tests.js +30 -0
  166. package/components/global/dom.d.ts +37 -0
  167. package/components/global/dom.js +150 -0
  168. package/components/global/focus-sensor-hoc.d.ts +19 -0
  169. package/components/global/focus-sensor-hoc.js +165 -0
  170. package/components/global/fuzzy-highlight.d.ts +11 -0
  171. package/components/global/fuzzy-highlight.js +90 -0
  172. package/components/global/get-event-key.d.ts +2 -0
  173. package/components/global/get-event-key.js +101 -0
  174. package/components/global/get-uid.d.ts +1 -0
  175. package/components/global/get-uid.js +22 -0
  176. package/components/global/inject-styles.d.ts +3 -0
  177. package/components/global/inject-styles.js +22 -0
  178. package/components/global/linear-function.d.ts +6 -0
  179. package/components/global/linear-function.js +15 -0
  180. package/components/global/listeners.d.ts +8 -0
  181. package/components/global/listeners.js +58 -0
  182. package/components/global/memoize.d.ts +1 -0
  183. package/components/global/memoize.js +23 -0
  184. package/components/global/normalize-indent.d.ts +1 -0
  185. package/components/global/normalize-indent.js +61 -0
  186. package/components/global/promise-with-timeout.d.ts +5 -0
  187. package/components/global/promise-with-timeout.js +19 -0
  188. package/components/global/prop-types.d.ts +4 -0
  189. package/components/global/prop-types.js +9 -0
  190. package/components/global/react-dom-renderer.d.ts +16 -0
  191. package/components/global/react-dom-renderer.js +53 -0
  192. package/components/global/react-render-adapter.d.ts +1 -0
  193. package/components/global/react-render-adapter.js +6 -0
  194. package/components/global/rerender-hoc.d.ts +10 -0
  195. package/components/global/rerender-hoc.js +46 -0
  196. package/components/global/schedule-raf.d.ts +1 -0
  197. package/components/global/schedule-raf.js +28 -0
  198. package/components/global/sniffer.d.ts +3 -0
  199. package/components/global/sniffer.js +6 -0
  200. package/components/global/theme.d.ts +21 -0
  201. package/components/global/theme.js +40 -0
  202. package/components/global/trivial-template-tag.d.ts +1 -0
  203. package/components/global/trivial-template-tag.js +21 -0
  204. package/components/global/typescript-utils.d.ts +2 -0
  205. package/components/global/typescript-utils.js +8 -0
  206. package/components/global/url.d.ts +57 -0
  207. package/components/global/url.js +141 -0
  208. package/components/global/use-event-callback.d.ts +1 -0
  209. package/components/global/use-event-callback.js +17 -0
  210. package/components/global/variables.d.ts +89 -0
  211. package/components/global/variables.js +1 -0
  212. package/components/grid/col.d.ts +31 -0
  213. package/components/grid/col.js +81 -0
  214. package/components/grid/grid.d.ts +14 -0
  215. package/components/grid/grid.js +47 -0
  216. package/components/grid/row.d.ts +40 -0
  217. package/components/grid/row.js +70 -0
  218. package/components/group/group.d.ts +12 -0
  219. package/components/group/group.js +39 -0
  220. package/components/header/header.d.ts +34 -0
  221. package/components/header/header.js +184 -0
  222. package/components/header/logo.d.ts +14 -0
  223. package/components/header/logo.js +51 -0
  224. package/components/header/profile.d.ts +75 -0
  225. package/components/header/profile.js +252 -0
  226. package/components/header/services-link.d.ts +25 -0
  227. package/components/header/services-link.js +13 -0
  228. package/components/header/services.d.ts +33 -0
  229. package/components/header/services.js +172 -0
  230. package/components/header/smart-profile.d.ts +36 -0
  231. package/components/header/smart-profile.js +298 -0
  232. package/components/header/smart-services.d.ts +26 -0
  233. package/components/header/smart-services.js +189 -0
  234. package/components/header/tray-icon.d.ts +32 -0
  235. package/components/header/tray-icon.js +57 -0
  236. package/components/header/tray.d.ts +9 -0
  237. package/components/header/tray.js +41 -0
  238. package/components/heading/heading.d.ts +25 -0
  239. package/components/heading/heading.js +69 -0
  240. package/components/http/http.d.ts +61 -0
  241. package/components/http/http.js +385 -0
  242. package/components/http/http.mock.d.ts +20 -0
  243. package/components/http/http.mock.js +112 -0
  244. package/components/hub-source/hub-source.d.ts +44 -0
  245. package/components/hub-source/hub-source.js +215 -0
  246. package/components/hub-source/hub-source__user.d.ts +4 -0
  247. package/components/hub-source/hub-source__user.js +59 -0
  248. package/components/hub-source/hub-source__users-groups.d.ts +24 -0
  249. package/components/hub-source/hub-source__users-groups.js +84 -0
  250. package/components/i18n/i18n-context.d.ts +13 -0
  251. package/components/i18n/i18n-context.js +27 -0
  252. package/components/i18n/i18n.d.ts +59 -0
  253. package/components/i18n/i18n.js +139 -0
  254. package/components/icon/icon.d.ts +43 -0
  255. package/components/icon/icon.js +109 -0
  256. package/components/icon/icon__constants.d.ts +30 -0
  257. package/components/icon/icon__constants.js +34 -0
  258. package/components/icon/icon__svg.d.ts +15 -0
  259. package/components/icon/icon__svg.js +14 -0
  260. package/components/icon/index.d.ts +2 -0
  261. package/components/icon/index.js +17 -0
  262. package/components/input/input.d.ts +77 -0
  263. package/components/input/input.js +35 -0
  264. package/components/island/adaptive-island-hoc.d.ts +61 -0
  265. package/components/island/adaptive-island-hoc.js +53 -0
  266. package/components/island/content.d.ts +43 -0
  267. package/components/island/content.js +151 -0
  268. package/components/island/header.d.ts +8 -0
  269. package/components/island/header.js +99 -0
  270. package/components/island/island.d.ts +78 -0
  271. package/components/island/island.js +60 -0
  272. package/components/island-legacy/content-legacy.d.ts +10 -0
  273. package/components/island-legacy/content-legacy.js +34 -0
  274. package/components/island-legacy/header-legacy.d.ts +10 -0
  275. package/components/island-legacy/header-legacy.js +36 -0
  276. package/components/island-legacy/island-legacy.d.ts +12 -0
  277. package/components/island-legacy/island-legacy.js +36 -0
  278. package/components/link/clickableLink.d.ts +20 -0
  279. package/components/link/clickableLink.js +69 -0
  280. package/components/link/link.d.ts +138 -0
  281. package/components/link/link.js +86 -0
  282. package/components/list/consts.d.ts +77 -0
  283. package/components/list/consts.js +27 -0
  284. package/components/list/list.d.ts +206 -0
  285. package/components/list/list.js +795 -0
  286. package/components/list/list__custom.d.ts +6 -0
  287. package/components/list/list__custom.js +92 -0
  288. package/components/list/list__hint.d.ts +15 -0
  289. package/components/list/list__hint.js +33 -0
  290. package/components/list/list__item.d.ts +8 -0
  291. package/components/list/list__item.js +234 -0
  292. package/components/list/list__link.d.ts +9 -0
  293. package/components/list/list__link.js +76 -0
  294. package/components/list/list__separator.d.ts +5 -0
  295. package/components/list/list__separator.js +39 -0
  296. package/components/list/list__title.d.ts +5 -0
  297. package/components/list/list__title.js +48 -0
  298. package/components/list/list__users-groups-source.d.ts +27 -0
  299. package/components/list/list__users-groups-source.js +190 -0
  300. package/components/loader/loader.d.ts +28 -0
  301. package/components/loader/loader.js +91 -0
  302. package/components/loader/loader__core.d.ts +75 -0
  303. package/components/loader/loader__core.js +313 -0
  304. package/components/loader-inline/loader-inline.d.ts +18 -0
  305. package/components/loader-inline/loader-inline.js +50 -0
  306. package/components/loader-screen/loader-screen.d.ts +17 -0
  307. package/components/loader-screen/loader-screen.js +62 -0
  308. package/components/login-dialog/login-dialog.d.ts +47 -0
  309. package/components/login-dialog/login-dialog.js +212 -0
  310. package/components/login-dialog/service.d.ts +2 -0
  311. package/components/login-dialog/service.js +94 -0
  312. package/components/markdown/markdown.d.ts +12 -0
  313. package/components/markdown/markdown.js +43 -0
  314. package/components/message/message.d.ts +55 -0
  315. package/components/message/message.js +265 -0
  316. package/components/old-browsers-message/old-browsers-message.d.ts +2 -0
  317. package/components/old-browsers-message/old-browsers-message.js +92 -0
  318. package/components/old-browsers-message/old-browsers-message__stop.d.ts +1 -0
  319. package/components/old-browsers-message/old-browsers-message__stop.js +11 -0
  320. package/components/old-browsers-message/white-list.d.ts +2 -0
  321. package/components/old-browsers-message/white-list.js +37 -0
  322. package/components/pager/pager.d.ts +78 -0
  323. package/components/pager/pager.js +385 -0
  324. package/components/panel/panel.d.ts +12 -0
  325. package/components/panel/panel.js +39 -0
  326. package/components/permissions/permissions.d.ts +111 -0
  327. package/components/permissions/permissions.js +220 -0
  328. package/components/permissions/permissions__cache.d.ts +93 -0
  329. package/components/permissions/permissions__cache.js +257 -0
  330. package/components/popup/popup.consts.d.ts +37 -0
  331. package/components/popup/popup.consts.js +44 -0
  332. package/components/popup/popup.d.ts +147 -0
  333. package/components/popup/popup.js +419 -0
  334. package/components/popup/popup.target.d.ts +7 -0
  335. package/components/popup/popup.target.js +24 -0
  336. package/components/popup/position.d.ts +30 -0
  337. package/components/popup/position.js +270 -0
  338. package/components/popup-menu/popup-menu.d.ts +80 -0
  339. package/components/popup-menu/popup-menu.js +136 -0
  340. package/components/progress-bar/progress-bar.d.ts +58 -0
  341. package/components/progress-bar/progress-bar.js +113 -0
  342. package/components/query-assist/query-assist.d.ts +306 -0
  343. package/components/query-assist/query-assist.js +1092 -0
  344. package/components/query-assist/query-assist__suggestions.d.ts +29 -0
  345. package/components/query-assist/query-assist__suggestions.js +70 -0
  346. package/components/radio/radio.d.ts +18 -0
  347. package/components/radio/radio.js +48 -0
  348. package/components/radio/radio__item.d.ts +28 -0
  349. package/components/radio/radio__item.js +88 -0
  350. package/components/select/select.d.ts +276 -0
  351. package/components/select/select.js +1285 -0
  352. package/components/select/select__filter.d.ts +19 -0
  353. package/components/select/select__filter.js +80 -0
  354. package/components/select/select__popup.d.ts +166 -0
  355. package/components/select/select__popup.js +626 -0
  356. package/components/shortcuts/core.d.ts +74 -0
  357. package/components/shortcuts/core.js +247 -0
  358. package/components/shortcuts/shortcut-title.d.ts +1 -0
  359. package/components/shortcuts/shortcut-title.js +56 -0
  360. package/components/shortcuts/shortcuts-hoc.d.ts +65 -0
  361. package/components/shortcuts/shortcuts-hoc.js +59 -0
  362. package/components/shortcuts/shortcuts.d.ts +28 -0
  363. package/components/shortcuts/shortcuts.js +90 -0
  364. package/components/storage/storage.d.ts +18 -0
  365. package/components/storage/storage.js +89 -0
  366. package/components/storage/storage__fallback.d.ts +79 -0
  367. package/components/storage/storage__fallback.js +251 -0
  368. package/components/storage/storage__local.d.ts +38 -0
  369. package/components/storage/storage__local.js +215 -0
  370. package/components/style.css +1 -0
  371. package/components/tab-trap/tab-trap.d.ts +43 -0
  372. package/components/tab-trap/tab-trap.js +179 -0
  373. package/components/table/cell.d.ts +13 -0
  374. package/components/table/cell.js +37 -0
  375. package/components/table/disable-hover-hoc.d.ts +64 -0
  376. package/components/table/disable-hover-hoc.js +62 -0
  377. package/components/table/header-cell.d.ts +43 -0
  378. package/components/table/header-cell.js +109 -0
  379. package/components/table/header.d.ts +56 -0
  380. package/components/table/header.js +151 -0
  381. package/components/table/multitable.d.ts +25 -0
  382. package/components/table/multitable.js +139 -0
  383. package/components/table/row-with-focus-sensor.d.ts +18 -0
  384. package/components/table/row-with-focus-sensor.js +115 -0
  385. package/components/table/row.d.ts +59 -0
  386. package/components/table/row.js +297 -0
  387. package/components/table/selection-adapter.d.ts +5 -0
  388. package/components/table/selection-adapter.js +14 -0
  389. package/components/table/selection-shortcuts-hoc.d.ts +17 -0
  390. package/components/table/selection-shortcuts-hoc.js +204 -0
  391. package/components/table/selection.d.ts +47 -0
  392. package/components/table/selection.js +256 -0
  393. package/components/table/smart-table.d.ts +64 -0
  394. package/components/table/smart-table.js +145 -0
  395. package/components/table/table.d.ts +159 -0
  396. package/components/table/table.js +459 -0
  397. package/components/tabs/collapsible-more.d.ts +29 -0
  398. package/components/tabs/collapsible-more.js +217 -0
  399. package/components/tabs/collapsible-tab.d.ts +16 -0
  400. package/components/tabs/collapsible-tab.js +88 -0
  401. package/components/tabs/collapsible-tabs.d.ts +43 -0
  402. package/components/tabs/collapsible-tabs.js +349 -0
  403. package/components/tabs/custom-item.d.ts +9 -0
  404. package/components/tabs/custom-item.js +11 -0
  405. package/components/tabs/dumb-tabs.d.ts +35 -0
  406. package/components/tabs/dumb-tabs.js +184 -0
  407. package/components/tabs/smart-tabs.d.ts +20 -0
  408. package/components/tabs/smart-tabs.js +136 -0
  409. package/components/tabs/tab-link.d.ts +18 -0
  410. package/components/tabs/tab-link.js +13 -0
  411. package/components/tabs/tab.d.ts +27 -0
  412. package/components/tabs/tab.js +41 -0
  413. package/components/tabs/tabs.d.ts +7 -0
  414. package/components/tabs/tabs.js +94 -0
  415. package/components/tag/tag.d.ts +64 -0
  416. package/components/tag/tag.js +213 -0
  417. package/components/tags-input/tags-input.d.ts +138 -0
  418. package/components/tags-input/tags-input.js +529 -0
  419. package/components/tags-list/tags-list.d.ts +46 -0
  420. package/components/tags-list/tags-list.js +102 -0
  421. package/components/text/text.d.ts +23 -0
  422. package/components/text/text.js +57 -0
  423. package/components/toggle/toggle.d.ts +39 -0
  424. package/components/toggle/toggle.js +86 -0
  425. package/components/tooltip/tooltip.d.ts +65 -0
  426. package/components/tooltip/tooltip.js +227 -0
  427. package/components/user-agreement/service.d.ts +69 -0
  428. package/components/user-agreement/service.js +484 -0
  429. package/components/user-agreement/toolbox.eula.d.ts +2 -0
  430. package/components/user-agreement/toolbox.eula.js +3 -0
  431. package/components/user-agreement/user-agreement.d.ts +60 -0
  432. package/components/user-agreement/user-agreement.js +170 -0
  433. package/components/user-card/card.d.ts +70 -0
  434. package/components/user-card/card.js +76 -0
  435. package/components/user-card/smart-user-card-tooltip.d.ts +20 -0
  436. package/components/user-card/smart-user-card-tooltip.js +168 -0
  437. package/components/user-card/tooltip.d.ts +36 -0
  438. package/components/user-card/tooltip.js +140 -0
  439. package/components/user-card/user-card.d.ts +11 -0
  440. package/components/user-card/user-card.js +81 -0
  441. package/jslint-xml.js +38 -0
  442. package/package.json +127 -0
  443. package/postcss.config.js +20 -0
  444. package/typings.d.ts +97 -0
  445. package/webpack.config.js +118 -0
@@ -0,0 +1,140 @@
1
+ import { _ as _defineProperty, a as _inherits, b as _createSuper, c as _classCallCheck, d as _createClass, e as _objectWithoutProperties, f as _extends, g as _objectSpread2 } from '../_helpers/_rollupPluginBabelHelpers.js';
2
+ import React, { Component } from 'react';
3
+ import classNames from 'classnames';
4
+ import PropTypes from 'prop-types';
5
+ import Dropdown from '../dropdown/dropdown.js';
6
+ import Popup from '../popup/popup.js';
7
+ import { m as modules_a4196c17, U as UserCard } from '../_helpers/card.js';
8
+ import 'core-js/modules/es.array.concat.js';
9
+ import '../global/data-tests.js';
10
+ import 'core-js/modules/es.array.reduce.js';
11
+ import 'core-js/modules/es.object.to-string.js';
12
+ import 'core-js/modules/es.object.entries.js';
13
+ import '../global/typescript-utils.js';
14
+ import '../_helpers/anchor.js';
15
+ import '@jetbrains/icons/chevron-10px';
16
+ import '../icon/icon.js';
17
+ import 'util-deprecate';
18
+ import '../icon/icon__constants.js';
19
+ import '../_helpers/icon__svg.js';
20
+ import 'core-js/modules/es.regexp.exec.js';
21
+ import 'core-js/modules/es.string.replace.js';
22
+ import 'core-js/modules/es.string.starts-with.js';
23
+ import '../global/memoize.js';
24
+ import 'core-js/modules/es.array.iterator.js';
25
+ import 'core-js/modules/es.map.js';
26
+ import 'core-js/modules/web.dom-collections.iterator.js';
27
+ import 'core-js/modules/es.weak-map.js';
28
+ import '../button/button.js';
29
+ import '../link/clickableLink.js';
30
+ import '../global/controls-height.js';
31
+ import '../_helpers/button__classes.js';
32
+ import 'core-js/modules/web.dom-collections.for-each.js';
33
+ import 'core-js/modules/es.regexp.to-string.js';
34
+ import 'react-dom';
35
+ import '../global/get-uid.js';
36
+ import '../global/schedule-raf.js';
37
+ import '../global/dom.js';
38
+ import 'core-js/modules/es.array.filter.js';
39
+ import 'core-js/modules/es.string.split.js';
40
+ import 'core-js/modules/es.set.js';
41
+ import '../shortcuts/shortcuts.js';
42
+ import 'core-js/modules/es.array.map.js';
43
+ import '../shortcuts/core.js';
44
+ import 'core-js/modules/es.array.includes.js';
45
+ import 'core-js/modules/es.string.includes.js';
46
+ import 'core-js/modules/es.array.slice.js';
47
+ import 'core-js/modules/es.array.splice.js';
48
+ import 'core-js/modules/es.string.match.js';
49
+ import 'combokeys';
50
+ import '../global/sniffer.js';
51
+ import 'sniffr';
52
+ import '../tab-trap/tab-trap.js';
53
+ import '../popup/position.js';
54
+ import 'core-js/modules/es.array.sort.js';
55
+ import '../popup/popup.consts.js';
56
+ import '../popup/popup.target.js';
57
+ import '@jetbrains/icons/copy';
58
+ import '../avatar/avatar.js';
59
+ import '../global/url.js';
60
+ import '../avatar/fallback-avatar.js';
61
+ import '../link/link.js';
62
+ import '../_helpers/link.js';
63
+ import '../clipboard/clipboard.js';
64
+ import 'core-js/modules/es.promise.js';
65
+ import '../alert-service/alert-service.js';
66
+ import 'react-dom/client';
67
+ import '../alert/alert.js';
68
+ import 'core-js/modules/es.object.values.js';
69
+ import '@jetbrains/icons/exception';
70
+ import '@jetbrains/icons/checkmark';
71
+ import '@jetbrains/icons/warning';
72
+ import '@jetbrains/icons/close';
73
+ import '../loader-inline/loader-inline.js';
74
+ import '../_helpers/theme.js';
75
+ import '../alert/container.js';
76
+ import '../clipboard/clipboard-fallback.js';
77
+ import '../_helpers/badge.js';
78
+ import '../i18n/i18n-context.js';
79
+ import '../i18n/i18n.js';
80
+
81
+ var _excluded = ["children", "renderUserCard", "renderNoUser", "dropdownProps", "user"],
82
+ _excluded2 = ["user"];
83
+ var DEFAULT_TIMEOUT = 300;
84
+ var UserCardTooltip = /*#__PURE__*/function (_Component) {
85
+ _inherits(UserCardTooltip, _Component);
86
+ var _super = _createSuper(UserCardTooltip);
87
+ function UserCardTooltip() {
88
+ _classCallCheck(this, UserCardTooltip);
89
+ return _super.apply(this, arguments);
90
+ }
91
+ _createClass(UserCardTooltip, [{
92
+ key: "render",
93
+ value: function render() {
94
+ var _this$props = this.props,
95
+ children = _this$props.children,
96
+ renderUserCard = _this$props.renderUserCard,
97
+ renderNoUser = _this$props.renderNoUser,
98
+ dropdownProps = _this$props.dropdownProps,
99
+ user = _this$props.user,
100
+ restProps = _objectWithoutProperties(_this$props, _excluded);
101
+ return /*#__PURE__*/React.createElement(Dropdown, _extends({
102
+ anchor: children,
103
+ hoverMode: true,
104
+ clickMode: false
105
+ }, dropdownProps), /*#__PURE__*/React.createElement(Popup, {
106
+ attached: false
107
+ }, user ? renderUserCard(_objectSpread2(_objectSpread2({}, restProps), {}, {
108
+ user,
109
+ className: classNames(modules_a4196c17.userCardSpaced, this.props.className)
110
+ })) : renderNoUser()));
111
+ }
112
+ }]);
113
+ return UserCardTooltip;
114
+ }(Component);
115
+ _defineProperty(UserCardTooltip, "propTypes", {
116
+ className: PropTypes.string,
117
+ children: PropTypes.oneOfType([PropTypes.node, PropTypes.func]),
118
+ dropdownProps: PropTypes.object,
119
+ user: PropTypes.object,
120
+ renderUserCard: PropTypes.func,
121
+ renderNoUser: PropTypes.func
122
+ });
123
+ _defineProperty(UserCardTooltip, "defaultProps", {
124
+ renderUserCard: function renderUserCard(props) {
125
+ var user = props.user,
126
+ restProps = _objectWithoutProperties(props, _excluded2);
127
+ return user && /*#__PURE__*/React.createElement(UserCard, _extends({
128
+ user: user
129
+ }, restProps));
130
+ },
131
+ renderNoUser: function renderNoUser() {
132
+ return '';
133
+ },
134
+ dropdownProps: {
135
+ hoverShowTimeOut: DEFAULT_TIMEOUT,
136
+ hoverHideTimeOut: DEFAULT_TIMEOUT
137
+ }
138
+ });
139
+
140
+ export { UserCardTooltip as default };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * @name User Card
3
+ * @category Components
4
+ * @tags Ring UI Language
5
+ * @framework React
6
+ * @constructor
7
+ * @description A component that displays user details.
8
+ */
9
+ export { default as UserCard } from './card';
10
+ export { default as UserCardTooltip } from './tooltip';
11
+ export { default as SmartUserCardTooltip } from './smart-user-card-tooltip';
@@ -0,0 +1,81 @@
1
+ export { U as UserCard } from '../_helpers/card.js';
2
+ export { default as UserCardTooltip } from './tooltip.js';
3
+ export { default as SmartUserCardTooltip } from './smart-user-card-tooltip.js';
4
+ import '../_helpers/_rollupPluginBabelHelpers.js';
5
+ import 'core-js/modules/es.array.concat.js';
6
+ import 'react';
7
+ import 'prop-types';
8
+ import 'classnames';
9
+ import '@jetbrains/icons/copy';
10
+ import '../avatar/avatar.js';
11
+ import '../global/url.js';
12
+ import 'core-js/modules/es.regexp.exec.js';
13
+ import 'core-js/modules/es.string.match.js';
14
+ import 'core-js/modules/es.string.replace.js';
15
+ import '../global/dom.js';
16
+ import 'core-js/modules/es.object.to-string.js';
17
+ import 'core-js/modules/web.dom-collections.for-each.js';
18
+ import 'core-js/modules/es.array.filter.js';
19
+ import 'core-js/modules/es.string.split.js';
20
+ import 'core-js/modules/es.object.entries.js';
21
+ import 'core-js/modules/es.array.iterator.js';
22
+ import 'core-js/modules/es.set.js';
23
+ import 'core-js/modules/web.dom-collections.iterator.js';
24
+ import '../avatar/fallback-avatar.js';
25
+ import 'core-js/modules/es.array.map.js';
26
+ import 'core-js/modules/es.array.slice.js';
27
+ import '../global/get-uid.js';
28
+ import 'core-js/modules/es.regexp.to-string.js';
29
+ import '../link/link.js';
30
+ import '../global/data-tests.js';
31
+ import 'core-js/modules/es.array.reduce.js';
32
+ import '../link/clickableLink.js';
33
+ import '../_helpers/link.js';
34
+ import '../clipboard/clipboard.js';
35
+ import 'core-js/modules/es.promise.js';
36
+ import '../alert-service/alert-service.js';
37
+ import 'react-dom/client';
38
+ import '../alert/alert.js';
39
+ import 'core-js/modules/es.object.values.js';
40
+ import '@jetbrains/icons/exception';
41
+ import '@jetbrains/icons/checkmark';
42
+ import '@jetbrains/icons/warning';
43
+ import '@jetbrains/icons/close';
44
+ import '../icon/icon.js';
45
+ import 'util-deprecate';
46
+ import '../icon/icon__constants.js';
47
+ import '../_helpers/icon__svg.js';
48
+ import 'core-js/modules/es.string.starts-with.js';
49
+ import '../global/memoize.js';
50
+ import 'core-js/modules/es.map.js';
51
+ import 'core-js/modules/es.weak-map.js';
52
+ import '../loader-inline/loader-inline.js';
53
+ import '../button/button.js';
54
+ import '@jetbrains/icons/chevron-10px';
55
+ import '../global/controls-height.js';
56
+ import '../_helpers/button__classes.js';
57
+ import '../_helpers/theme.js';
58
+ import 'react-dom';
59
+ import '../popup/popup.target.js';
60
+ import '../popup/popup.js';
61
+ import '../global/schedule-raf.js';
62
+ import '../shortcuts/shortcuts.js';
63
+ import '../shortcuts/core.js';
64
+ import 'core-js/modules/es.array.includes.js';
65
+ import 'core-js/modules/es.string.includes.js';
66
+ import 'core-js/modules/es.array.splice.js';
67
+ import 'combokeys';
68
+ import '../global/sniffer.js';
69
+ import 'sniffr';
70
+ import '../tab-trap/tab-trap.js';
71
+ import '../popup/position.js';
72
+ import 'core-js/modules/es.array.sort.js';
73
+ import '../popup/popup.consts.js';
74
+ import '../alert/container.js';
75
+ import '../clipboard/clipboard-fallback.js';
76
+ import '../_helpers/badge.js';
77
+ import '../i18n/i18n-context.js';
78
+ import '../i18n/i18n.js';
79
+ import '../dropdown/dropdown.js';
80
+ import '../global/typescript-utils.js';
81
+ import '../_helpers/anchor.js';
package/jslint-xml.js ADDED
@@ -0,0 +1,38 @@
1
+ // eslint-disable-next-line no-control-regex
2
+ const xmlEscape = s => (`${s}`).replace(/[<>&"'\x00-\x1F\x7F\u0080-\uFFFF]/g, c => {
3
+ switch (c) {
4
+ case '<':
5
+ return '&lt;';
6
+ case '>':
7
+ return '&gt;';
8
+ case '&':
9
+ return '&amp;';
10
+ case '"':
11
+ return '&quot;';
12
+ case '\'':
13
+ return '&apos;';
14
+ default:
15
+ return `&#${c.charCodeAt(0)};`;
16
+ }
17
+ });
18
+
19
+ module.exports = results => {
20
+ const files = results.map(file => {
21
+ const warnings = file.warnings.map(({column, line, text}) => {
22
+ const css = file._postcssResult && file._postcssResult.css;
23
+ const lines = css && css.split('\n') || [];
24
+ const evidence = lines[line - 1];
25
+
26
+ return [
27
+ `<issue line="${line}"`,
28
+ ` char="${column}"`,
29
+ ` evidence="${evidence ? xmlEscape(evidence) : ''}"`,
30
+ ` reason="${xmlEscape(text)}" />`
31
+ ].join('');
32
+ });
33
+
34
+ return `<file name="${file.source}">${warnings.join('')}</file>`;
35
+ });
36
+
37
+ return `<?xml version="1.0" encoding="utf-8"?><jslint>${files.join('')}</jslint>`;
38
+ };
package/package.json ADDED
@@ -0,0 +1,127 @@
1
+ {
2
+ "name": "@jetbrains/ring-ui-built",
3
+ "version": "6.0.5-beta.0",
4
+ "description": "JetBrains UI library",
5
+ "author": "JetBrains",
6
+ "license": "Apache-2.0",
7
+ "packageManager": "npm@8.11.0",
8
+ "files": [
9
+ "babel.config.js",
10
+ "components",
11
+ "dist",
12
+ "postcss.config.js",
13
+ "webpack.config.js",
14
+ "jslint-xml.js",
15
+ "typings.d.ts"
16
+ ],
17
+ "main": "src/index.js",
18
+ "workspaces": [
19
+ "packages/*"
20
+ ],
21
+ "lint-staged": {
22
+ "*.{js,ts,tsx}": [
23
+ "npm run lint:js -- --fix"
24
+ ],
25
+ "*.css": [
26
+ "stylelint --fix"
27
+ ]
28
+ },
29
+ "config": {
30
+ "clientId": "81a0bffb-6d0f-4a38-b93a-0a4d1e567698",
31
+ "hub": "https://hub.jetbrains.com",
32
+ "components": "./components/"
33
+ },
34
+ "scripts": {
35
+ "apply-resolutions": "npx npm-force-resolutions@0.0.10",
36
+ "_postinstall": "husky install",
37
+ "prepare": "webpack -c .storybook/custom-header/webpack.config.js",
38
+ "a11y-audit": "jest a11y-audit.test.js",
39
+ "a11y-audit-ci": "jest a11y-audit.test.js --reporters=jest-teamcity; node report-metadata.js",
40
+ "console-errors": "jest console-errors.test.js --watchAll",
41
+ "console-errors-ci": "jest console-errors.test.js --reporters=jest-teamcity",
42
+ "test": "karma start",
43
+ "hermione-gui": "npm --prefix packages/hermione run gui",
44
+ "hermione-test": "npm --prefix packages/hermione run test",
45
+ "hermione-test-ci": "npm --prefix packages/hermione run test-ci",
46
+ "hermione-gather": "npm --prefix packages/hermione run gather",
47
+ "build-stories": "storybook build --quiet -c .storybook -o storybook-dist",
48
+ "prebuild": "rimraf components && tsc --project tsconfig-build.json && cpy '**/*' '!**/*.ts' '!**/*.tsx' '!**/__mocks__/**' ../components --parents --cwd=src/",
49
+ "build": "./node_modules/.bin/rollup -c --bundleConfigAsCjs",
50
+ "postbuild": "cpy '**/*.d.ts' ../dist --parents --cwd=components/",
51
+ "serve": "npm --prefix packages/hermione run serve",
52
+ "start": "storybook dev -p 9999",
53
+ "storybook-debug": "node --inspect-brk node_modules/@storybook/react/bin -p 9999",
54
+ "lint:js": "eslint",
55
+ "lint": "npm run lint:js . && npm run stylelint",
56
+ "prelint-ci": "echo \"##teamcity[importData type='jslint' path='eslint-report.xml']\"",
57
+ "lint-ci": "eslint --format jslint-xml . > eslint-report.xml && npm run stylelint-ci",
58
+ "stylelint-ci": "stylelint --ignore-path .eslintignore --custom-formatter './jslint-xml.js' '**/*.css' | xmlappend eslint-report.xml",
59
+ "stylelint": "stylelint --ignore-path .eslintignore '**/*.css'",
60
+ "validate-tc-config": "mvn --file .teamcity/pom.xml org.jetbrains.teamcity:teamcity-configs-maven-plugin:generate -e",
61
+ "pretest-ci": "npm run lint-ci",
62
+ "test-ci": "karma start karma-ci.conf.js",
63
+ "test-watch": "karma start karma-watch.conf.js",
64
+ "typecheck": "tsc",
65
+ "typecheck-ci": "node tsc-teamcity",
66
+ "prerelease-ci": "git pull",
67
+ "release-ci": "npm version $NPM_VERSION_PARAMS && npm publish --access=public $NPM_PUBLISH_PARAMS",
68
+ "postrelease-ci": "git push --follow-tags",
69
+ "prerelease-built-ci": "node prepare-built-package.js",
70
+ "release-built-ci": "npm publish --access=public $NPM_PUBLISH_PARAMS",
71
+ "prepublishOnly": "pinst --disable",
72
+ "postpublish": "pinst --enable"
73
+ },
74
+ "repository": {
75
+ "type": "git",
76
+ "url": "ssh://github.com/JetBrains/ring-ui.git"
77
+ },
78
+ "readmeFilename": "README.md",
79
+ "devDependencies": {},
80
+ "peerDependencies": {
81
+ "@types/react": ">=16.8.0",
82
+ "@types/react-dom": ">=16.8.0",
83
+ "core-js": ">=3.0.0",
84
+ "react": ">=18.0.0",
85
+ "react-dom": ">=18.0.0",
86
+ "webpack": ">=5.0.0"
87
+ },
88
+ "peerDependenciesMeta": {
89
+ "@types/react": {
90
+ "optional": true
91
+ },
92
+ "@types/react-dom": {
93
+ "optional": true
94
+ },
95
+ "webpack": {
96
+ "optional": true
97
+ }
98
+ },
99
+ "dependencies": {
100
+ "@jetbrains/icons": "^3.22.0",
101
+ "@jetbrains/logos": "^2.2.23",
102
+ "change-case": "^4.1.1",
103
+ "classnames": "^2.3.2",
104
+ "combokeys": "^3.0.1",
105
+ "date-fns": "^2.30.0",
106
+ "deep-equal": "^2.2.2",
107
+ "element-resize-detector": "^1.2.4",
108
+ "es6-error": "^4.1.1",
109
+ "fastdom": "^1.0.11",
110
+ "focus-trap": "^7.5.4",
111
+ "highlight.js": "^10.7.2",
112
+ "just-debounce-it": "^3.2.0",
113
+ "memoize-one": "^6.0.0",
114
+ "prop-types": "^15.8.1",
115
+ "react-movable": "^3.0.4",
116
+ "react-virtualized": "^9.22.5",
117
+ "react-waypoint": "^10.3.0",
118
+ "scrollbar-width": "^3.1.1",
119
+ "simply-uuid": "^1.0.1",
120
+ "sniffr": "^1.2.1",
121
+ "util-deprecate": "^1.0.2"
122
+ },
123
+ "engines": {
124
+ "node": ">=14.0",
125
+ "npm": ">=6.0.0"
126
+ }
127
+ }
@@ -0,0 +1,20 @@
1
+ const EMBRACED_STAGE = 3; // See https://cssdb.org/#staging-process
2
+
3
+
4
+ module.exports = () => {
5
+ const plugins = [
6
+ require('postcss-modules-values-replace')(),
7
+ require('postcss-preset-env')({
8
+ stage: EMBRACED_STAGE,
9
+ features: {
10
+ 'nesting-rules': true
11
+ }
12
+ }),
13
+ require('postcss-font-family-system-ui')({browsers: ['last 2 versions']}),
14
+ require('postcss-flexbugs-fixes')(),
15
+ require('@jetbrains/postcss-require-hover')(),
16
+ require('postcss-calc')({mediaQueries: true})
17
+ ];
18
+
19
+ return {plugins};
20
+ };
package/typings.d.ts ADDED
@@ -0,0 +1,97 @@
1
+ declare module '*.css' {
2
+ const styles: Record<string, string>;
3
+ export default styles;
4
+ }
5
+
6
+ declare module '*.svg' {
7
+ const source: string;
8
+ export default source;
9
+ }
10
+ declare module '*.md' {
11
+ const source: string;
12
+ export default source;
13
+ }
14
+ declare module '*.txt' {
15
+ const source: string;
16
+ export default source;
17
+ }
18
+
19
+ declare module 'simply-uuid' {
20
+ export function generate(): string;
21
+ }
22
+
23
+ declare module 'highlight.js/lib/core.js' {
24
+ import hljs from 'highlight.js';
25
+
26
+ export default hljs;
27
+ }
28
+
29
+ declare module 'combokeys/test/lib/key-event' {
30
+ export function simulate(
31
+ charCode: number,
32
+ keyCode: number,
33
+ modifiers?: ('shift' | 'ctrl' | 'alt' | 'meta')[],
34
+ element?: Element,
35
+ repeat?: number
36
+ ): void;
37
+ }
38
+
39
+ declare module 'scrollbar-width' {
40
+ export default function getScrollbarWidth(
41
+ recalculate?: boolean
42
+ ): number | null;
43
+ }
44
+
45
+ declare module 'sniffr' {
46
+ enum Browser {
47
+ FIREFOX = 'firefox',
48
+ CHROME = 'chrome',
49
+ IE = 'ie',
50
+ SAFARI = 'safari',
51
+ EDGE = 'edge',
52
+ ANDROID = 'com.android.browser',
53
+ OPERA = 'opera',
54
+ OPERA_MINI = 'opera.mini',
55
+ BLACKBERRY = 'blackberry',
56
+ ICEWEASEL = 'iceweasel',
57
+ }
58
+
59
+ enum OS {
60
+ LINUX = 'linux',
61
+ MACOS = 'macos',
62
+ WINDOWS = 'windows',
63
+ IOS = 'ios',
64
+ OPENBSD = 'openbsd',
65
+ ANDROID = 'android',
66
+ FIREFOXOS = 'firefoxos',
67
+ WINDOWS_PHONE = 'windows.phone',
68
+ WINDOWS_MOBILE = 'windows.mobile',
69
+ BLACKBERRYOS = 'blackberryos',
70
+ }
71
+
72
+ enum Device {
73
+ IPAD = 'ipad',
74
+ IPHONE = 'iphone',
75
+ LUMIA = 'lumia',
76
+ HTC = 'htc',
77
+ NEXUS = 'nexus',
78
+ GALAXY_NEXUS = 'galaxy.nexus',
79
+ NOKIA = 'nokia',
80
+ GALAXY = 'galaxy',
81
+ XBOX = 'xbox',
82
+ BLACKBERRY = 'blackberry',
83
+ }
84
+
85
+ export interface SnifferProperty<T extends string> {
86
+ name: T | 'Unknown'
87
+ version: number[]
88
+ versionString: string
89
+ }
90
+
91
+ export default class Sniffer {
92
+ os: SnifferProperty<OS>;
93
+ device: SnifferProperty<Device>;
94
+ browser: SnifferProperty<Browser>;
95
+ sniff(userAgentString?: string): this
96
+ }
97
+ }
@@ -0,0 +1,118 @@
1
+ const path = require('path');
2
+
3
+ function loadersObjectToArray(loaders) {
4
+ return Object.keys(loaders).map(name => loaders[name]);
5
+ }
6
+
7
+ function createConfig() {
8
+ const componentsPath = [path.join(__dirname, 'components')];
9
+
10
+ const cssLoader = {
11
+ test: /\.css$/,
12
+ include: componentsPath,
13
+ use: [
14
+ {
15
+ loader: require.resolve('style-loader'),
16
+ options: {
17
+ esModule: false
18
+ }
19
+ },
20
+ {
21
+ loader: require.resolve('css-loader'),
22
+ options: {
23
+ modules: {
24
+ localIdentName: '[local]_[hash:4]'
25
+ },
26
+ importLoaders: 1
27
+ }
28
+ },
29
+ {
30
+ loader: require.resolve('postcss-loader'),
31
+ options: {
32
+ implementation: require('postcss')
33
+ }
34
+ }
35
+ ]
36
+ };
37
+
38
+ const externalCssLoader = {
39
+ test: /\.css$/,
40
+ include: [
41
+ path.dirname(require.resolve('highlight.js/package.json'))
42
+ ],
43
+ use: [
44
+ require.resolve('style-loader'),
45
+ require.resolve('css-loader')
46
+ ]
47
+ };
48
+
49
+ const babelLoader = {
50
+ test: /\.[jt]sx?$/,
51
+ sideEffects: false,
52
+ include: componentsPath,
53
+ loader: require.resolve('babel-loader'),
54
+ options: {
55
+ configFile: path.join(__dirname, 'babel.config.js'),
56
+ cacheDirectory: true
57
+ }
58
+ };
59
+
60
+ const gifLoader = {
61
+ test: /\.gif$/,
62
+ include: componentsPath,
63
+ loader: require.resolve('url-loader')
64
+ };
65
+
66
+ const loaders = {
67
+ cssLoader,
68
+ externalCssLoader,
69
+ babelLoader,
70
+ gifLoader
71
+ };
72
+
73
+ return {
74
+ // Minimal config for building components
75
+ config: {
76
+ module: {
77
+ rules: loadersObjectToArray(loaders)
78
+ },
79
+ resolve: {
80
+ extensions: ['.js', '.ts', '.tsx']
81
+ }
82
+ },
83
+ componentsPath,
84
+ loaders
85
+ };
86
+ }
87
+
88
+ const {config, componentsPath, loaders} = createConfig();
89
+
90
+ module.exports = {
91
+ createConfig,
92
+ config,
93
+ componentsPath,
94
+ loaders: {
95
+ ...loaders,
96
+ get svgInlineLoader() {
97
+ throw new Error('***Ring UI embedded "svgInlineLoader" removed in 4.0. Please install and use own instance if you need it.***');
98
+ },
99
+ get scssLoader() {
100
+ throw new Error('***Ring UI embedded "scssLoader" removed in 4.0. Please install and use own instance if you need it.***');
101
+ },
102
+ get svgLoader() {
103
+ throw new Error('***Ring UI embedded "svgLoader" removed in 4.0. Please install and use own instance if you need it.***');
104
+ },
105
+ get vfileLoader() {
106
+ throw new Error('***Ring UI embedded "vfileLoader" removed in 4.0. Please install and use own instance if you need it.***');
107
+ },
108
+ get htmlLoader() {
109
+ // eslint-disable-next-line no-console
110
+ console.warn('RingUI\'s "loaders.htmlLoader" is deprecated and will be removed soon. Please don\'t use it in your build');
111
+ return {
112
+ test: /-ng(\\|\/)\S*(-ng|-ng__)\S*\.html$/,
113
+ include: componentsPath,
114
+ loader: require.resolve('html-loader')
115
+ };
116
+ }
117
+ }
118
+ };