@jetbrains/ring-ui 6.0.3-beta.0 → 6.0.3

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 (607) hide show
  1. package/README.md +10 -6
  2. package/components/alert/alert.css +12 -13
  3. package/components/alert/container.css +4 -6
  4. package/components/alert-service/alert-service.d.ts +4 -2
  5. package/components/alert-service/alert-service.js +3 -2
  6. package/components/alert-service/alert-service.stories.css +0 -3
  7. package/components/analytics/analytics.d.ts +0 -20
  8. package/components/analytics/analytics.js +0 -64
  9. package/components/analytics/analytics__custom-plugin.d.ts +0 -1
  10. package/components/analytics/analytics__custom-plugin.js +0 -3
  11. package/components/auth/down-notification.css +2 -4
  12. package/components/auth/request-builder.d.ts +1 -0
  13. package/components/auth-dialog/auth-dialog.css +10 -12
  14. package/components/auth-dialog-service/auth-dialog-service.d.ts +1 -0
  15. package/components/auth-dialog-service/auth-dialog-service.js +4 -3
  16. package/components/badge/badge.css +1 -3
  17. package/components/button/button.css +13 -14
  18. package/components/button-group/button-group.css +22 -5
  19. package/components/button-set/button-set.css +1 -2
  20. package/components/button-toolbar/button-toolbar.css +1 -2
  21. package/components/checkbox/checkbox.css +3 -4
  22. package/components/code/code.css +3 -5
  23. package/components/code/code.d.ts +1 -0
  24. package/components/confirm/confirm.css +1 -3
  25. package/components/confirm-service/confirm-service.d.ts +1 -1
  26. package/components/confirm-service/confirm-service.js +5 -4
  27. package/components/content-layout/content-layout.css +7 -7
  28. package/components/data-list/data-list.css +4 -5
  29. package/components/date-picker/consts.d.ts +0 -1
  30. package/components/date-picker/date-input.d.ts +0 -1
  31. package/components/date-picker/date-input.js +2 -3
  32. package/components/date-picker/date-picker.css +40 -41
  33. package/components/date-picker/date-picker.js +2 -2
  34. package/components/date-picker/date-popup.d.ts +0 -1
  35. package/components/date-picker/date-popup.js +3 -4
  36. package/components/dialog/dialog.css +15 -12
  37. package/components/dropdown-menu/dropdown-menu.d.ts +11 -1
  38. package/components/editable-heading/editable-heading.css +35 -8
  39. package/components/editable-heading/editable-heading.d.ts +2 -1
  40. package/components/editable-heading/editable-heading.js +45 -6
  41. package/components/error-bubble/error-bubble-legacy.css +6 -8
  42. package/components/error-bubble/error-bubble.css +6 -8
  43. package/components/footer/footer.css +6 -8
  44. package/components/form/form.css +31 -33
  45. package/components/form/form.stories.js +109 -89
  46. package/components/global/global.css +1 -7
  47. package/components/global/react-render-adapter.d.ts +1 -29
  48. package/components/global/react-render-adapter.js +3 -24
  49. package/components/global/rerender-hoc.d.ts +4 -35
  50. package/components/global/rerender-hoc.js +10 -24
  51. package/components/global/variables.css +1 -3
  52. package/components/global/variables.d.ts +0 -1
  53. package/components/global/variables_dark.css +2 -4
  54. package/components/grid/grid.css +6 -6
  55. package/components/grid/row.js +3 -3
  56. package/components/group/group.css +1 -3
  57. package/components/header/header.css +12 -14
  58. package/components/header/profile.js +1 -1
  59. package/components/header/services-link.js +3 -5
  60. package/components/header/services.css +12 -14
  61. package/components/header/smart-services.d.ts +2 -1
  62. package/components/heading/heading.css +24 -6
  63. package/components/http/http.d.ts +6 -6
  64. package/components/http/http.js +0 -12
  65. package/components/hub-source/hub-source.d.ts +8 -6
  66. package/components/icon/icon.css +2 -4
  67. package/components/input/input-legacy.css +2 -4
  68. package/components/input/input.css +8 -10
  69. package/components/input-size/input-size.css +4 -6
  70. package/components/input-size/input-size.stories.js +50 -49
  71. package/components/island/header.js +1 -1
  72. package/components/island/island.css +6 -7
  73. package/components/island-legacy/island-legacy.css +6 -8
  74. package/components/line/line.css +1 -3
  75. package/components/link/link.css +15 -39
  76. package/components/link/link.d.ts +6 -16
  77. package/components/link/link.js +6 -35
  78. package/components/list/consts.d.ts +13 -12
  79. package/components/list/consts.js +11 -15
  80. package/components/list/list.css +17 -20
  81. package/components/list/list.d.ts +15 -4
  82. package/components/list/list.js +9 -7
  83. package/components/list/list__item.js +3 -2
  84. package/components/loader/loader.css +1 -3
  85. package/components/loader/loader__core.js +6 -6
  86. package/components/loader-inline/loader-inline.css +5 -6
  87. package/components/login-dialog/login-dialog.css +1 -3
  88. package/components/login-dialog/service.js +5 -4
  89. package/components/markdown/markdown.css +53 -3
  90. package/components/markdown/markdown.d.ts +4 -7
  91. package/components/markdown/markdown.js +8 -27
  92. package/components/message/message.css +5 -8
  93. package/components/old-browsers-message/old-browsers-message.css +2 -4
  94. package/components/pager/pager.css +2 -4
  95. package/components/pager/pager.js +2 -8
  96. package/components/panel/panel.css +3 -5
  97. package/components/popup/popup.js +3 -3
  98. package/components/popup/position.js +4 -1
  99. package/components/popup-menu/popup-menu.d.ts +22 -2
  100. package/components/progress-bar/progress-bar.css +9 -4
  101. package/components/progress-bar/progress-bar.d.ts +6 -0
  102. package/components/progress-bar/progress-bar.js +9 -3
  103. package/components/query-assist/query-assist.css +3 -4
  104. package/components/query-assist/query-assist.d.ts +3 -28
  105. package/components/query-assist/query-assist.js +12 -5
  106. package/components/radio/radio.css +7 -10
  107. package/components/select/select-popup.css +23 -11
  108. package/components/select/select.css +13 -14
  109. package/components/select/select.d.ts +1 -28
  110. package/components/select/select.js +22 -22
  111. package/components/select/select__popup.js +5 -2
  112. package/components/sidebar/sidebar.css +13 -15
  113. package/components/table/table.css +15 -17
  114. package/components/table/table.js +1 -1
  115. package/components/table-legacy/table-legacy.css +22 -24
  116. package/components/table-legacy/table-legacy__toolbar.css +2 -4
  117. package/components/tabs/collapsible-more.js +1 -1
  118. package/components/tabs/collapsible-tab.js +1 -1
  119. package/components/tabs/collapsible-tabs.js +2 -2
  120. package/components/tabs/dumb-tabs.js +1 -1
  121. package/components/tabs/tab-link.js +7 -7
  122. package/components/tabs/tabs.css +3 -4
  123. package/components/tag/tag.css +12 -13
  124. package/components/tags-input/tags-input.css +1 -2
  125. package/components/tags-input/tags-input.d.ts +1 -28
  126. package/components/toggle/toggle.css +21 -22
  127. package/components/tooltip/tooltip.css +3 -5
  128. package/components/user-agreement/service.d.ts +3 -1
  129. package/components/user-agreement/service.js +8 -7
  130. package/components/user-agreement/user-agreement.css +2 -2
  131. package/components/user-agreement/user-agreement.d.ts +2 -3
  132. package/components/user-agreement/user-agreement.js +2 -4
  133. package/components/user-card/card.d.ts +2 -3
  134. package/components/user-card/card.js +8 -8
  135. package/components/user-card/user-card.css +3 -5
  136. package/package.json +89 -96
  137. package/typings.d.ts +0 -54
  138. package/webpack.config.js +1 -24
  139. package/components/analytics/analytics__fus-plugin.d.ts +0 -52
  140. package/components/analytics/analytics__fus-plugin.js +0 -22
  141. package/components/analytics/analytics__ga-plugin.d.ts +0 -27
  142. package/components/analytics/analytics__ga-plugin.js +0 -89
  143. package/components/analytics/analytics__plugin-utils.d.ts +0 -31
  144. package/components/analytics/analytics__plugin-utils.js +0 -92
  145. package/components/auth/landing-entry.d.ts +0 -3
  146. package/components/auth/landing-entry.js +0 -2
  147. package/components/auth/landing.d.ts +0 -2
  148. package/components/auth/landing.html +0 -12
  149. package/components/auth/landing.js +0 -26
  150. package/components/link/link__legacy.css +0 -29
  151. package/components/markdown/code.d.ts +0 -7
  152. package/components/markdown/code.js +0 -17
  153. package/components/markdown/heading.d.ts +0 -11
  154. package/components/markdown/heading.js +0 -9
  155. package/components/markdown/link.d.ts +0 -12
  156. package/components/markdown/link.js +0 -10
  157. package/dist/_helpers/_rollupPluginBabelHelpers.js +0 -657
  158. package/dist/_helpers/anchor.js +0 -31
  159. package/dist/_helpers/badge.js +0 -3
  160. package/dist/_helpers/button__classes.js +0 -24
  161. package/dist/_helpers/caption.js +0 -31
  162. package/dist/_helpers/card.js +0 -132
  163. package/dist/_helpers/date-picker.js +0 -3
  164. package/dist/_helpers/dialog__body-scroll-preventer.js +0 -55
  165. package/dist/_helpers/grid.js +0 -3
  166. package/dist/_helpers/header.js +0 -3
  167. package/dist/_helpers/icon__svg.js +0 -73
  168. package/dist/_helpers/input.js +0 -229
  169. package/dist/_helpers/island.js +0 -3
  170. package/dist/_helpers/list.js +0 -3
  171. package/dist/_helpers/query-assist__suggestions.js +0 -102
  172. package/dist/_helpers/select__filter.js +0 -94
  173. package/dist/_helpers/services-link.js +0 -50
  174. package/dist/_helpers/sidebar.js +0 -117
  175. package/dist/_helpers/tab-link.js +0 -36
  176. package/dist/_helpers/table.js +0 -3
  177. package/dist/_helpers/theme.js +0 -93
  178. package/dist/_helpers/title.js +0 -100
  179. package/dist/alert/alert.d.ts +0 -113
  180. package/dist/alert/alert.js +0 -281
  181. package/dist/alert/container.d.ts +0 -15
  182. package/dist/alert/container.js +0 -52
  183. package/dist/alert-service/alert-service.d.ts +0 -34
  184. package/dist/alert-service/alert-service.js +0 -221
  185. package/dist/analytics/analytics.d.ts +0 -38
  186. package/dist/analytics/analytics.js +0 -108
  187. package/dist/analytics/analytics__custom-plugin.d.ts +0 -29
  188. package/dist/analytics/analytics__custom-plugin.js +0 -95
  189. package/dist/analytics/analytics__fus-plugin.d.ts +0 -52
  190. package/dist/analytics/analytics__fus-plugin.js +0 -38
  191. package/dist/analytics/analytics__ga-plugin.d.ts +0 -27
  192. package/dist/analytics/analytics__ga-plugin.js +0 -118
  193. package/dist/analytics/analytics__plugin-utils.d.ts +0 -31
  194. package/dist/analytics/analytics__plugin-utils.js +0 -101
  195. package/dist/auth/auth.d.ts +0 -3
  196. package/dist/auth/auth.js +0 -135
  197. package/dist/auth/auth__core.d.ts +0 -236
  198. package/dist/auth/auth__core.js +0 -1656
  199. package/dist/auth/background-flow.d.ts +0 -31
  200. package/dist/auth/background-flow.js +0 -148
  201. package/dist/auth/down-notification.d.ts +0 -15
  202. package/dist/auth/down-notification.js +0 -158
  203. package/dist/auth/iframe-flow.d.ts +0 -20
  204. package/dist/auth/iframe-flow.js +0 -197
  205. package/dist/auth/landing-entry.d.ts +0 -3
  206. package/dist/auth/landing-entry.js +0 -5
  207. package/dist/auth/landing.d.ts +0 -2
  208. package/dist/auth/landing.js +0 -157
  209. package/dist/auth/request-builder.d.ts +0 -47
  210. package/dist/auth/request-builder.js +0 -103
  211. package/dist/auth/response-parser.d.ts +0 -70
  212. package/dist/auth/response-parser.js +0 -139
  213. package/dist/auth/storage.d.ts +0 -112
  214. package/dist/auth/storage.js +0 -427
  215. package/dist/auth/token-validator.d.ts +0 -93
  216. package/dist/auth/token-validator.js +0 -269
  217. package/dist/auth/window-flow.d.ts +0 -26
  218. package/dist/auth/window-flow.js +0 -155
  219. package/dist/auth-dialog/auth-dialog.d.ts +0 -60
  220. package/dist/auth-dialog/auth-dialog.js +0 -222
  221. package/dist/auth-dialog-service/auth-dialog-service.d.ts +0 -5
  222. package/dist/auth-dialog-service/auth-dialog-service.js +0 -92
  223. package/dist/avatar/avatar-example-datauri.d.ts +0 -1
  224. package/dist/avatar/avatar-example-datauri.js +0 -4
  225. package/dist/avatar/avatar.d.ts +0 -52
  226. package/dist/avatar/avatar.js +0 -184
  227. package/dist/avatar/fallback-avatar.d.ts +0 -17
  228. package/dist/avatar/fallback-avatar.js +0 -154
  229. package/dist/badge/badge.d.ts +0 -24
  230. package/dist/badge/badge.js +0 -55
  231. package/dist/button/button.d.ts +0 -67
  232. package/dist/button/button.js +0 -132
  233. package/dist/button/button__classes.d.ts +0 -2
  234. package/dist/button/button__classes.js +0 -3
  235. package/dist/button-group/button-group.d.ts +0 -18
  236. package/dist/button-group/button-group.js +0 -48
  237. package/dist/button-group/caption.d.ts +0 -8
  238. package/dist/button-group/caption.js +0 -5
  239. package/dist/button-set/button-set.d.ts +0 -16
  240. package/dist/button-set/button-set.js +0 -47
  241. package/dist/button-toolbar/button-toolbar.d.ts +0 -16
  242. package/dist/button-toolbar/button-toolbar.js +0 -46
  243. package/dist/caret/caret.d.ts +0 -66
  244. package/dist/caret/caret.js +0 -261
  245. package/dist/checkbox/checkbox.d.ts +0 -45
  246. package/dist/checkbox/checkbox.js +0 -131
  247. package/dist/clipboard/clipboard-fallback.d.ts +0 -2
  248. package/dist/clipboard/clipboard-fallback.js +0 -42
  249. package/dist/clipboard/clipboard.d.ts +0 -5
  250. package/dist/clipboard/clipboard.js +0 -185
  251. package/dist/code/code.d.ts +0 -43
  252. package/dist/code/code.js +0 -191
  253. package/dist/confirm/confirm.d.ts +0 -48
  254. package/dist/confirm/confirm.js +0 -155
  255. package/dist/confirm-service/confirm-service.d.ts +0 -21
  256. package/dist/confirm-service/confirm-service.js +0 -142
  257. package/dist/content-layout/content-layout.d.ts +0 -26
  258. package/dist/content-layout/content-layout.js +0 -77
  259. package/dist/content-layout/sidebar.d.ts +0 -31
  260. package/dist/content-layout/sidebar.js +0 -7
  261. package/dist/contenteditable/contenteditable.d.ts +0 -47
  262. package/dist/contenteditable/contenteditable.js +0 -84
  263. package/dist/control-label/control-label.d.ts +0 -11
  264. package/dist/control-label/control-label.js +0 -32
  265. package/dist/data-list/data-list.d.ts +0 -85
  266. package/dist/data-list/data-list.js +0 -249
  267. package/dist/data-list/data-list.mock.d.ts +0 -16
  268. package/dist/data-list/data-list.mock.js +0 -197
  269. package/dist/data-list/item.d.ts +0 -50
  270. package/dist/data-list/item.js +0 -236
  271. package/dist/data-list/selection.d.ts +0 -16
  272. package/dist/data-list/selection.js +0 -149
  273. package/dist/data-list/title.d.ts +0 -26
  274. package/dist/data-list/title.js +0 -29
  275. package/dist/date-picker/consts.d.ts +0 -99
  276. package/dist/date-picker/consts.js +0 -46
  277. package/dist/date-picker/date-input.d.ts +0 -48
  278. package/dist/date-picker/date-input.js +0 -180
  279. package/dist/date-picker/date-picker.d.ts +0 -77
  280. package/dist/date-picker/date-picker.js +0 -406
  281. package/dist/date-picker/date-popup.d.ts +0 -56
  282. package/dist/date-picker/date-popup.js +0 -488
  283. package/dist/date-picker/day.d.ts +0 -30
  284. package/dist/date-picker/day.js +0 -119
  285. package/dist/date-picker/formats.d.ts +0 -2
  286. package/dist/date-picker/formats.js +0 -3
  287. package/dist/date-picker/month-names.d.ts +0 -13
  288. package/dist/date-picker/month-names.js +0 -109
  289. package/dist/date-picker/month-slider.d.ts +0 -29
  290. package/dist/date-picker/month-slider.js +0 -92
  291. package/dist/date-picker/month.d.ts +0 -14
  292. package/dist/date-picker/month.js +0 -58
  293. package/dist/date-picker/months.d.ts +0 -11
  294. package/dist/date-picker/months.js +0 -134
  295. package/dist/date-picker/weekdays.d.ts +0 -13
  296. package/dist/date-picker/weekdays.js +0 -38
  297. package/dist/date-picker/years.d.ts +0 -25
  298. package/dist/date-picker/years.js +0 -133
  299. package/dist/dialog/dialog.d.ts +0 -64
  300. package/dist/dialog/dialog.js +0 -238
  301. package/dist/dialog/dialog__body-scroll-preventer.d.ts +0 -9
  302. package/dist/dialog/dialog__body-scroll-preventer.js +0 -7
  303. package/dist/dropdown/anchor.d.ts +0 -11
  304. package/dist/dropdown/anchor.js +0 -25
  305. package/dist/dropdown/dropdown.d.ts +0 -87
  306. package/dist/dropdown/dropdown.js +0 -246
  307. package/dist/dropdown-menu/dropdown-menu.d.ts +0 -26
  308. package/dist/dropdown-menu/dropdown-menu.js +0 -202
  309. package/dist/editable-heading/editable-heading.d.ts +0 -31
  310. package/dist/editable-heading/editable-heading.js +0 -203
  311. package/dist/error-bubble/error-bubble.d.ts +0 -18
  312. package/dist/error-bubble/error-bubble.js +0 -90
  313. package/dist/error-message/error-message.d.ts +0 -27
  314. package/dist/error-message/error-message.js +0 -79
  315. package/dist/footer/footer.d.ts +0 -28
  316. package/dist/footer/footer.js +0 -118
  317. package/dist/global/compose.d.ts +0 -7
  318. package/dist/global/compose.js +0 -17
  319. package/dist/global/composeRefs.d.ts +0 -3
  320. package/dist/global/composeRefs.js +0 -19
  321. package/dist/global/controls-height.d.ts +0 -9
  322. package/dist/global/controls-height.js +0 -19
  323. package/dist/global/create-stateful-context.d.ts +0 -27
  324. package/dist/global/create-stateful-context.js +0 -49
  325. package/dist/global/data-tests.d.ts +0 -3
  326. package/dist/global/data-tests.js +0 -30
  327. package/dist/global/dom.d.ts +0 -37
  328. package/dist/global/dom.js +0 -153
  329. package/dist/global/focus-sensor-hoc.d.ts +0 -19
  330. package/dist/global/focus-sensor-hoc.js +0 -165
  331. package/dist/global/fuzzy-highlight.d.ts +0 -11
  332. package/dist/global/fuzzy-highlight.js +0 -90
  333. package/dist/global/get-event-key.d.ts +0 -2
  334. package/dist/global/get-event-key.js +0 -101
  335. package/dist/global/get-uid.d.ts +0 -1
  336. package/dist/global/get-uid.js +0 -22
  337. package/dist/global/inject-styles.d.ts +0 -3
  338. package/dist/global/inject-styles.js +0 -22
  339. package/dist/global/linear-function.d.ts +0 -6
  340. package/dist/global/linear-function.js +0 -15
  341. package/dist/global/listeners.d.ts +0 -8
  342. package/dist/global/listeners.js +0 -59
  343. package/dist/global/memoize.d.ts +0 -1
  344. package/dist/global/memoize.js +0 -24
  345. package/dist/global/normalize-indent.d.ts +0 -1
  346. package/dist/global/normalize-indent.js +0 -61
  347. package/dist/global/promise-with-timeout.d.ts +0 -5
  348. package/dist/global/promise-with-timeout.js +0 -19
  349. package/dist/global/prop-types.d.ts +0 -4
  350. package/dist/global/prop-types.js +0 -9
  351. package/dist/global/react-dom-renderer.d.ts +0 -16
  352. package/dist/global/react-dom-renderer.js +0 -55
  353. package/dist/global/react-render-adapter.d.ts +0 -29
  354. package/dist/global/react-render-adapter.js +0 -36
  355. package/dist/global/rerender-hoc.d.ts +0 -41
  356. package/dist/global/rerender-hoc.js +0 -58
  357. package/dist/global/schedule-raf.d.ts +0 -1
  358. package/dist/global/schedule-raf.js +0 -28
  359. package/dist/global/sniffer.d.ts +0 -3
  360. package/dist/global/sniffer.js +0 -6
  361. package/dist/global/theme.d.ts +0 -21
  362. package/dist/global/theme.js +0 -44
  363. package/dist/global/trivial-template-tag.d.ts +0 -1
  364. package/dist/global/trivial-template-tag.js +0 -21
  365. package/dist/global/typescript-utils.d.ts +0 -2
  366. package/dist/global/typescript-utils.js +0 -8
  367. package/dist/global/url.d.ts +0 -57
  368. package/dist/global/url.js +0 -142
  369. package/dist/global/use-event-callback.d.ts +0 -1
  370. package/dist/global/use-event-callback.js +0 -17
  371. package/dist/global/variables.d.ts +0 -90
  372. package/dist/global/variables.js +0 -1
  373. package/dist/grid/col.d.ts +0 -31
  374. package/dist/grid/col.js +0 -81
  375. package/dist/grid/grid.d.ts +0 -14
  376. package/dist/grid/grid.js +0 -49
  377. package/dist/grid/row.d.ts +0 -40
  378. package/dist/grid/row.js +0 -68
  379. package/dist/group/group.d.ts +0 -12
  380. package/dist/group/group.js +0 -39
  381. package/dist/header/header.d.ts +0 -34
  382. package/dist/header/header.js +0 -191
  383. package/dist/header/logo.d.ts +0 -14
  384. package/dist/header/logo.js +0 -52
  385. package/dist/header/profile.d.ts +0 -75
  386. package/dist/header/profile.js +0 -258
  387. package/dist/header/services-link.d.ts +0 -25
  388. package/dist/header/services-link.js +0 -18
  389. package/dist/header/services.d.ts +0 -33
  390. package/dist/header/services.js +0 -173
  391. package/dist/header/smart-profile.d.ts +0 -36
  392. package/dist/header/smart-profile.js +0 -307
  393. package/dist/header/smart-services.d.ts +0 -25
  394. package/dist/header/smart-services.js +0 -194
  395. package/dist/header/tray-icon.d.ts +0 -32
  396. package/dist/header/tray-icon.js +0 -56
  397. package/dist/header/tray.d.ts +0 -9
  398. package/dist/header/tray.js +0 -41
  399. package/dist/heading/heading.d.ts +0 -25
  400. package/dist/heading/heading.js +0 -68
  401. package/dist/http/http.d.ts +0 -61
  402. package/dist/http/http.js +0 -399
  403. package/dist/http/http.mock.d.ts +0 -20
  404. package/dist/http/http.mock.js +0 -115
  405. package/dist/hub-source/hub-source.d.ts +0 -42
  406. package/dist/hub-source/hub-source.js +0 -217
  407. package/dist/hub-source/hub-source__user.d.ts +0 -4
  408. package/dist/hub-source/hub-source__user.js +0 -61
  409. package/dist/hub-source/hub-source__users-groups.d.ts +0 -24
  410. package/dist/hub-source/hub-source__users-groups.js +0 -87
  411. package/dist/i18n/i18n-context.d.ts +0 -13
  412. package/dist/i18n/i18n-context.js +0 -28
  413. package/dist/i18n/i18n.d.ts +0 -59
  414. package/dist/i18n/i18n.js +0 -140
  415. package/dist/icon/icon.d.ts +0 -43
  416. package/dist/icon/icon.js +0 -108
  417. package/dist/icon/icon__constants.d.ts +0 -30
  418. package/dist/icon/icon__constants.js +0 -34
  419. package/dist/icon/icon__svg.d.ts +0 -15
  420. package/dist/icon/icon__svg.js +0 -15
  421. package/dist/icon/index.d.ts +0 -2
  422. package/dist/icon/index.js +0 -18
  423. package/dist/input/input.d.ts +0 -77
  424. package/dist/input/input.js +0 -36
  425. package/dist/island/adaptive-island-hoc.d.ts +0 -61
  426. package/dist/island/adaptive-island-hoc.js +0 -53
  427. package/dist/island/content.d.ts +0 -43
  428. package/dist/island/content.js +0 -147
  429. package/dist/island/header.d.ts +0 -8
  430. package/dist/island/header.js +0 -97
  431. package/dist/island/island.d.ts +0 -78
  432. package/dist/island/island.js +0 -58
  433. package/dist/island-legacy/content-legacy.d.ts +0 -10
  434. package/dist/island-legacy/content-legacy.js +0 -34
  435. package/dist/island-legacy/header-legacy.d.ts +0 -10
  436. package/dist/island-legacy/header-legacy.js +0 -36
  437. package/dist/island-legacy/island-legacy.d.ts +0 -12
  438. package/dist/island-legacy/island-legacy.js +0 -36
  439. package/dist/link/clickableLink.d.ts +0 -20
  440. package/dist/link/clickableLink.js +0 -69
  441. package/dist/link/link.d.ts +0 -148
  442. package/dist/link/link.js +0 -122
  443. package/dist/list/consts.d.ts +0 -76
  444. package/dist/list/consts.js +0 -31
  445. package/dist/list/list.d.ts +0 -194
  446. package/dist/list/list.js +0 -801
  447. package/dist/list/list__custom.d.ts +0 -6
  448. package/dist/list/list__custom.js +0 -89
  449. package/dist/list/list__hint.d.ts +0 -15
  450. package/dist/list/list__hint.js +0 -33
  451. package/dist/list/list__item.d.ts +0 -8
  452. package/dist/list/list__item.js +0 -230
  453. package/dist/list/list__link.d.ts +0 -9
  454. package/dist/list/list__link.js +0 -78
  455. package/dist/list/list__separator.d.ts +0 -5
  456. package/dist/list/list__separator.js +0 -37
  457. package/dist/list/list__title.d.ts +0 -5
  458. package/dist/list/list__title.js +0 -46
  459. package/dist/list/list__users-groups-source.d.ts +0 -27
  460. package/dist/list/list__users-groups-source.js +0 -197
  461. package/dist/loader/loader.d.ts +0 -28
  462. package/dist/loader/loader.js +0 -95
  463. package/dist/loader/loader__core.d.ts +0 -75
  464. package/dist/loader/loader__core.js +0 -317
  465. package/dist/loader-inline/loader-inline.d.ts +0 -18
  466. package/dist/loader-inline/loader-inline.js +0 -50
  467. package/dist/loader-screen/loader-screen.d.ts +0 -17
  468. package/dist/loader-screen/loader-screen.js +0 -64
  469. package/dist/login-dialog/login-dialog.d.ts +0 -47
  470. package/dist/login-dialog/login-dialog.js +0 -218
  471. package/dist/login-dialog/service.d.ts +0 -2
  472. package/dist/login-dialog/service.js +0 -99
  473. package/dist/markdown/code.d.ts +0 -7
  474. package/dist/markdown/code.js +0 -54
  475. package/dist/markdown/heading.d.ts +0 -11
  476. package/dist/markdown/heading.js +0 -20
  477. package/dist/markdown/link.d.ts +0 -12
  478. package/dist/markdown/link.js +0 -34
  479. package/dist/markdown/markdown.d.ts +0 -15
  480. package/dist/markdown/markdown.js +0 -101
  481. package/dist/message/message.d.ts +0 -55
  482. package/dist/message/message.js +0 -255
  483. package/dist/old-browsers-message/old-browsers-message.d.ts +0 -2
  484. package/dist/old-browsers-message/old-browsers-message.js +0 -93
  485. package/dist/old-browsers-message/old-browsers-message__stop.d.ts +0 -1
  486. package/dist/old-browsers-message/old-browsers-message__stop.js +0 -12
  487. package/dist/old-browsers-message/white-list.d.ts +0 -2
  488. package/dist/old-browsers-message/white-list.js +0 -36
  489. package/dist/pager/pager.d.ts +0 -78
  490. package/dist/pager/pager.js +0 -394
  491. package/dist/panel/panel.d.ts +0 -12
  492. package/dist/panel/panel.js +0 -39
  493. package/dist/permissions/permissions.d.ts +0 -111
  494. package/dist/permissions/permissions.js +0 -221
  495. package/dist/permissions/permissions__cache.d.ts +0 -93
  496. package/dist/permissions/permissions__cache.js +0 -257
  497. package/dist/popup/popup.consts.d.ts +0 -37
  498. package/dist/popup/popup.consts.js +0 -44
  499. package/dist/popup/popup.d.ts +0 -147
  500. package/dist/popup/popup.js +0 -420
  501. package/dist/popup/popup.target.d.ts +0 -7
  502. package/dist/popup/popup.target.js +0 -24
  503. package/dist/popup/position.d.ts +0 -30
  504. package/dist/popup/position.js +0 -260
  505. package/dist/popup-menu/popup-menu.d.ts +0 -60
  506. package/dist/popup-menu/popup-menu.js +0 -144
  507. package/dist/progress-bar/progress-bar.d.ts +0 -58
  508. package/dist/progress-bar/progress-bar.js +0 -111
  509. package/dist/query-assist/query-assist.d.ts +0 -331
  510. package/dist/query-assist/query-assist.js +0 -1080
  511. package/dist/query-assist/query-assist__suggestions.d.ts +0 -29
  512. package/dist/query-assist/query-assist__suggestions.js +0 -77
  513. package/dist/radio/radio.d.ts +0 -18
  514. package/dist/radio/radio.js +0 -48
  515. package/dist/radio/radio__item.d.ts +0 -28
  516. package/dist/radio/radio__item.js +0 -88
  517. package/dist/select/select.d.ts +0 -303
  518. package/dist/select/select.js +0 -1283
  519. package/dist/select/select__filter.d.ts +0 -19
  520. package/dist/select/select__filter.js +0 -87
  521. package/dist/select/select__popup.d.ts +0 -166
  522. package/dist/select/select__popup.js +0 -625
  523. package/dist/shortcuts/core.d.ts +0 -74
  524. package/dist/shortcuts/core.js +0 -249
  525. package/dist/shortcuts/shortcut-title.d.ts +0 -1
  526. package/dist/shortcuts/shortcut-title.js +0 -56
  527. package/dist/shortcuts/shortcuts-hoc.d.ts +0 -65
  528. package/dist/shortcuts/shortcuts-hoc.js +0 -61
  529. package/dist/shortcuts/shortcuts.d.ts +0 -28
  530. package/dist/shortcuts/shortcuts.js +0 -92
  531. package/dist/storage/storage.d.ts +0 -18
  532. package/dist/storage/storage.js +0 -94
  533. package/dist/storage/storage__fallback.d.ts +0 -79
  534. package/dist/storage/storage__fallback.js +0 -254
  535. package/dist/storage/storage__local.d.ts +0 -38
  536. package/dist/storage/storage__local.js +0 -219
  537. package/dist/style.css +0 -1
  538. package/dist/tab-trap/tab-trap.d.ts +0 -43
  539. package/dist/tab-trap/tab-trap.js +0 -182
  540. package/dist/table/cell.d.ts +0 -13
  541. package/dist/table/cell.js +0 -37
  542. package/dist/table/disable-hover-hoc.d.ts +0 -64
  543. package/dist/table/disable-hover-hoc.js +0 -62
  544. package/dist/table/header-cell.d.ts +0 -43
  545. package/dist/table/header-cell.js +0 -105
  546. package/dist/table/header.d.ts +0 -56
  547. package/dist/table/header.js +0 -150
  548. package/dist/table/multitable.d.ts +0 -25
  549. package/dist/table/multitable.js +0 -140
  550. package/dist/table/row-with-focus-sensor.d.ts +0 -18
  551. package/dist/table/row-with-focus-sensor.js +0 -119
  552. package/dist/table/row.d.ts +0 -59
  553. package/dist/table/row.js +0 -294
  554. package/dist/table/selection-adapter.d.ts +0 -5
  555. package/dist/table/selection-adapter.js +0 -14
  556. package/dist/table/selection-shortcuts-hoc.d.ts +0 -17
  557. package/dist/table/selection-shortcuts-hoc.js +0 -206
  558. package/dist/table/selection.d.ts +0 -47
  559. package/dist/table/selection.js +0 -258
  560. package/dist/table/smart-table.d.ts +0 -64
  561. package/dist/table/smart-table.js +0 -151
  562. package/dist/table/table.d.ts +0 -159
  563. package/dist/table/table.js +0 -457
  564. package/dist/tabs/collapsible-more.d.ts +0 -29
  565. package/dist/tabs/collapsible-more.js +0 -226
  566. package/dist/tabs/collapsible-tab.d.ts +0 -16
  567. package/dist/tabs/collapsible-tab.js +0 -89
  568. package/dist/tabs/collapsible-tabs.d.ts +0 -43
  569. package/dist/tabs/collapsible-tabs.js +0 -355
  570. package/dist/tabs/custom-item.d.ts +0 -9
  571. package/dist/tabs/custom-item.js +0 -11
  572. package/dist/tabs/dumb-tabs.d.ts +0 -35
  573. package/dist/tabs/dumb-tabs.js +0 -191
  574. package/dist/tabs/smart-tabs.d.ts +0 -20
  575. package/dist/tabs/smart-tabs.js +0 -144
  576. package/dist/tabs/tab-link.d.ts +0 -18
  577. package/dist/tabs/tab-link.js +0 -18
  578. package/dist/tabs/tab.d.ts +0 -27
  579. package/dist/tabs/tab.js +0 -41
  580. package/dist/tabs/tabs.d.ts +0 -7
  581. package/dist/tabs/tabs.js +0 -102
  582. package/dist/tag/tag.d.ts +0 -64
  583. package/dist/tag/tag.js +0 -208
  584. package/dist/tags-input/tags-input.d.ts +0 -165
  585. package/dist/tags-input/tags-input.js +0 -535
  586. package/dist/tags-list/tags-list.d.ts +0 -46
  587. package/dist/tags-list/tags-list.js +0 -103
  588. package/dist/text/text.d.ts +0 -23
  589. package/dist/text/text.js +0 -54
  590. package/dist/toggle/toggle.d.ts +0 -39
  591. package/dist/toggle/toggle.js +0 -86
  592. package/dist/tooltip/tooltip.d.ts +0 -65
  593. package/dist/tooltip/tooltip.js +0 -229
  594. package/dist/user-agreement/service.d.ts +0 -67
  595. package/dist/user-agreement/service.js +0 -501
  596. package/dist/user-agreement/toolbox.eula.d.ts +0 -2
  597. package/dist/user-agreement/toolbox.eula.js +0 -3
  598. package/dist/user-agreement/user-agreement.d.ts +0 -61
  599. package/dist/user-agreement/user-agreement.js +0 -191
  600. package/dist/user-card/card.d.ts +0 -71
  601. package/dist/user-card/card.js +0 -82
  602. package/dist/user-card/smart-user-card-tooltip.d.ts +0 -20
  603. package/dist/user-card/smart-user-card-tooltip.js +0 -174
  604. package/dist/user-card/tooltip.d.ts +0 -36
  605. package/dist/user-card/tooltip.js +0 -146
  606. package/dist/user-card/user-card.d.ts +0 -11
  607. package/dist/user-card/user-card.js +0 -87
@@ -1,221 +0,0 @@
1
- import { _ as _defineProperty, d as _createClass, c as _classCallCheck } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.object.to-string.js';
3
- import 'core-js/modules/es.promise.js';
4
- import 'core-js/modules/es.array.index-of.js';
5
- import 'core-js/modules/es.array.map.js';
6
- import PermissionCache from './permissions__cache.js';
7
- import 'core-js/modules/es.array.reduce.js';
8
-
9
- /**
10
- * <code>
11
- * const permissions = new Permissions(auth, {prefix: 'jetbrains.jetpass.', services: [auth.serviceId]})
12
- * permissions.load().then(function (p) {
13
- * const canReadUser = p.has('read-user');
14
- * ...
15
- * });
16
- *
17
- * permissions.check('read-user').then(function(canReadUser) {
18
- * ...
19
- * });
20
- * </code>
21
- *
22
- * @param {Auth} auth instance of well configured Auth object
23
- * @param {{
24
- * prefix: string?,
25
- * namesConverter: function?
26
- * serviceId: string?
27
- * }=} config permissions loaded configuration.
28
- * <code>prefix</code> if provided then this prefix is removed from the permissions names.
29
- * <code>namesConverter</code> if provided it maps permission names used on server-side to client-side permission names. It is used only if prefix is undefined.
30
- * <code>serviceId</code> if provided then permissions only for the service are loaded.
31
- * @constructor
32
- */
33
- var Permissions = /*#__PURE__*/function () {
34
- function Permissions(auth) {
35
- var _this = this;
36
- var config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
37
- _classCallCheck(this, Permissions);
38
- _defineProperty(this, "query", void 0);
39
- _defineProperty(this, "namesConverter", void 0);
40
- _defineProperty(this, "_auth", void 0);
41
- _defineProperty(this, "_datasource", void 0);
42
- _defineProperty(this, "_promise", void 0);
43
- _defineProperty(this, "_subscribed", void 0);
44
- _defineProperty(this, "_permissionCache", void 0);
45
- _defineProperty(this, "_defaultDatasource", function (query) {
46
- return _this._auth.http.get(Permissions.API_PERMISSION_CACHE_PATH, {
47
- query: {
48
- fields: 'permission/key,global,projects(id)',
49
- query: query
50
- }
51
- });
52
- });
53
- this.query = Permissions.getPermissionQuery(config.services);
54
- this.namesConverter = config.prefix ? Permissions.getDefaultNamesConverter(config.prefix) : config.namesConverter;
55
- if (!auth) {
56
- throw new Error('Parameter auth is required');
57
- }
58
- this._auth = auth;
59
- this._datasource = config.datasource || this._defaultDatasource;
60
- this._promise = null;
61
- this._subscribed = false;
62
- this._permissionCache = new PermissionCache(null, this.namesConverter);
63
- }
64
- _createClass(Permissions, [{
65
- key: "set",
66
- value: function set(cachedPermissions) {
67
- this._permissionCache.set(cachedPermissions);
68
- this._setCache(Promise.resolve(this._permissionCache));
69
- return this._permissionCache;
70
- }
71
- }, {
72
- key: "get",
73
- value: function get() {
74
- return this._permissionCache.get();
75
- }
76
- }, {
77
- key: "_setCache",
78
- value: function _setCache(value) {
79
- this._promise = value;
80
- }
81
- }, {
82
- key: "_getCache",
83
- value: function _getCache() {
84
- return this._promise;
85
- }
86
- }, {
87
- key: "_resetCache",
88
- value: function _resetCache() {
89
- this._setCache(null);
90
- }
91
- /**
92
- * Loads logged-in user permissions.
93
- * @param {object?} options
94
- * @return {Promise.<Permissions>} promise that is resolved when the permissions are loaded
95
- */
96
- }, {
97
- key: "load",
98
- value: function load(options) {
99
- var _this2 = this;
100
- if (this._subscribed === false) {
101
- this._auth.addListener('userChange', function () {
102
- _this2.reload();
103
- });
104
- this._subscribed = true;
105
- }
106
- var cache = this._getCache();
107
- if (!hasCacheControl('NO_CACHE', options) && cache) {
108
- return cache;
109
- }
110
- if (hasCacheControl('NO_STORE', options)) {
111
- return this._loadPermissions().then(function (cachedPermissions) {
112
- return new PermissionCache(cachedPermissions, _this2.namesConverter);
113
- });
114
- }
115
- var permissions = this._loadPermissions().then(function (cachedPermissions) {
116
- return _this2.set(cachedPermissions);
117
- });
118
- this._setCache(permissions);
119
- return permissions;
120
- function hasCacheControl(value, _options) {
121
- if (_options && _options.cacheControl) {
122
- return _options.cacheControl[value];
123
- }
124
- return false;
125
- }
126
- }
127
- }, {
128
- key: "_loadPermissions",
129
- value: function _loadPermissions() {
130
- return this._datasource(this.query);
131
- }
132
- /**
133
- * Reloads permission cache from server
134
- * @returns {Promise.<Permissions>} promise that is resolved when the permissions are reloaded
135
- */
136
- }, {
137
- key: "reload",
138
- value: function reload() {
139
- this._resetCache();
140
- return this.load();
141
- }
142
- /**
143
- * Waits till the permission cache is loaded then checks if the current user has the
144
- * given permissions in the project with the given id.
145
- *
146
- * @param {string} permissions space separated list of permissions
147
- * @param {string=} projectId optional projectId. If absent the method checks
148
- * if the given permission is granted in any project.
149
- *
150
- * @return {Promise.<boolean>}
151
- */
152
- }, {
153
- key: "check",
154
- value: function check(permissions, projectId) {
155
- return this.load().then(function (permissionCache) {
156
- return permissionCache.has(permissions, projectId);
157
- });
158
- }
159
- /**
160
- * Binds a property with the name <code>propertyName</code> of the <code>object</code>
161
- * to a boolean value that is true if user has the permissions and false if she doesn't.
162
- *
163
- * @example
164
- * <code>
165
- * userPermissions.bindVariable($scope, 'canReadRole', 'role-read')
166
- * </code>
167
- *
168
- * @param {object} object an object which property should be bound
169
- * @param {string} propertyName a name of a property to bind
170
- * @param {string} permissions space separated list of permissions
171
- * @param {string=} projectId optional projectId. If absent the method checks
172
- * if the given permissions are granted in any project.
173
- *
174
- * @return {Promise.<boolean>}
175
- */
176
- }, {
177
- key: "bindVariable",
178
- value: function bindVariable(object, propertyName, permissions, projectId) {
179
- object[propertyName] = false;
180
- return this.check(permissions, projectId).then(function (permitted) {
181
- object[propertyName] = permitted;
182
- return permitted;
183
- });
184
- }
185
- }], [{
186
- key: "getDefaultNamesConverter",
187
- value:
188
- /**
189
- * Returns function, which cuts off prefix from server-side permission name
190
- *
191
- * @param {string} prefix
192
- * @returns {Function}
193
- */
194
- function getDefaultNamesConverter(prefix) {
195
- return function (storedName) {
196
- if (storedName.indexOf(prefix) !== 0) {
197
- return storedName;
198
- } else {
199
- return storedName.substr(prefix.length);
200
- }
201
- };
202
- }
203
- }, {
204
- key: "getPermissionQuery",
205
- value: function getPermissionQuery(services) {
206
- if (!services || !services.length) {
207
- return undefined;
208
- }
209
- return services.map(function (service) {
210
- return "service:{".concat(service, "}");
211
- }).join(' or ');
212
- }
213
- }]);
214
- return Permissions;
215
- }();
216
- /**
217
- * @const {string}
218
- */
219
- _defineProperty(Permissions, "API_PERMISSION_CACHE_PATH", 'permissions/cache');
220
-
221
- export { Permissions as default };
@@ -1,93 +0,0 @@
1
- export interface PermissionType {
2
- key: string;
3
- }
4
- export interface Project {
5
- id: string;
6
- }
7
- export interface Permission {
8
- permission: PermissionType;
9
- global?: boolean | null | undefined;
10
- projects?: readonly Project[] | null | undefined;
11
- }
12
- interface PermissionCacheItem {
13
- global: boolean | null | undefined;
14
- projectIdSet: Record<string, boolean> | null;
15
- }
16
- /**
17
- * Converts an array of cached permissions to a a map of a permission key
18
- * to the respective cached permission.
19
- *
20
- * @param { {
21
- * permission: {key: string},
22
- * global: boolean?,
23
- * projects: {id: string}[]?
24
- * }[] } permissions
25
- * @param {function} namesConverter a function, which maps a server-side permission name to client-side permission name
26
- * @return {object} permission cache
27
- * @private
28
- */
29
- export default class PermissionCache {
30
- static GLOBAL_PROJECT_ID: string;
31
- /**
32
- * Convert an array of projects to a set of project ids.
33
- *
34
- * @param {object[]=} projects
35
- * @return {object} a set of project ids
36
- * @private
37
- */
38
- private static _toProjectIdSet;
39
- namesConverter: (name: string) => string | null | undefined;
40
- constructor(permissions?: readonly Permission[] | null | undefined, namesConverter?: ((name: string) => string | null | undefined) | null | undefined);
41
- private _permissions?;
42
- permissionCache?: Record<string, PermissionCacheItem>;
43
- set(permissions?: readonly Permission[] | null | undefined): this;
44
- get(): readonly Permission[] | null | undefined;
45
- /**
46
- * Checks if the current user has the given permissions in the project with the given id.
47
- *
48
- * @param {string} permissions space separated list of permissions
49
- * @param {string=} projectId optional projectId. If absent the method checks
50
- * if the given permission is granted in any project.
51
- *
52
- * @return {boolean}
53
- */
54
- has(permissions?: string | null | undefined, projectId?: string | null | undefined): boolean;
55
- /**
56
- * Lexes permission query string to an array of lexems.
57
- *
58
- * @param {string} query
59
- * @return {string[]}
60
- */
61
- lex(query?: string | null | undefined): string[];
62
- /**
63
- * @param {string[]} lexems
64
- * @param {string=} projectId
65
- * @return {boolean}
66
- */
67
- or(lexems: string[], projectId?: string | null | undefined): boolean;
68
- /**
69
- * @param {string[]} lexems
70
- * @param {string=} projectId
71
- * @return {boolean}
72
- */
73
- and(lexems: string[], projectId?: string | null | undefined): boolean;
74
- /**
75
- * @param {string[]} lexems
76
- * @param {string=} projectId
77
- * @return {boolean}
78
- */
79
- not(lexems: string[], projectId?: string | null | undefined): boolean;
80
- /**
81
- * @param {string[]} lexems
82
- * @param {string=} projectId
83
- * @return {boolean}
84
- */
85
- term(lexems: string[], projectId?: string | null | undefined): boolean;
86
- /**
87
- * @param {string} permissionName
88
- * @param {string=} projectId
89
- * @return {boolean}
90
- */
91
- testPermission(permissionName: string, projectId?: string | null | undefined): boolean;
92
- }
93
- export {};
@@ -1,257 +0,0 @@
1
- import { _ as _defineProperty, d as _createClass, c as _classCallCheck } from '../_helpers/_rollupPluginBabelHelpers.js';
2
- import 'core-js/modules/es.array.reduce.js';
3
- import 'core-js/modules/es.object.to-string.js';
4
-
5
- /**
6
- * Converts an array of cached permissions to a a map of a permission key
7
- * to the respective cached permission.
8
- *
9
- * @param { {
10
- * permission: {key: string},
11
- * global: boolean?,
12
- * projects: {id: string}[]?
13
- * }[] } permissions
14
- * @param {function} namesConverter a function, which maps a server-side permission name to client-side permission name
15
- * @return {object} permission cache
16
- * @private
17
- */
18
- var PermissionCache = /*#__PURE__*/function () {
19
- function PermissionCache(permissions, namesConverter) {
20
- _classCallCheck(this, PermissionCache);
21
- _defineProperty(this, "namesConverter", void 0);
22
- _defineProperty(this, "_permissions", void 0);
23
- _defineProperty(this, "permissionCache", void 0);
24
- this.namesConverter = namesConverter || function (key) {
25
- return key;
26
- };
27
- this.set(permissions);
28
- }
29
- _createClass(PermissionCache, [{
30
- key: "set",
31
- value: function set(permissions) {
32
- var _this = this;
33
- var permissionCache = (permissions || []).reduce(function (_permissionCache, permission) {
34
- var key = _this.namesConverter(permission.permission.key);
35
- if (key) {
36
- _permissionCache[key] = {
37
- global: permission.global,
38
- projectIdSet: _this.constructor._toProjectIdSet(permission.projects)
39
- };
40
- }
41
- return _permissionCache;
42
- }, {});
43
- this._permissions = permissions;
44
- this.permissionCache = permissionCache;
45
- return this;
46
- }
47
- }, {
48
- key: "get",
49
- value: function get() {
50
- return this._permissions;
51
- }
52
- /**
53
- * Checks if the current user has the given permissions in the project with the given id.
54
- *
55
- * @param {string} permissions space separated list of permissions
56
- * @param {string=} projectId optional projectId. If absent the method checks
57
- * if the given permission is granted in any project.
58
- *
59
- * @return {boolean}
60
- */
61
- }, {
62
- key: "has",
63
- value: function has(permissions, projectId) {
64
- var lexems = this.lex(permissions);
65
- if (lexems.length === 0) {
66
- return true;
67
- }
68
- try {
69
- return this.or(lexems, projectId);
70
- } catch (e) {
71
- return false;
72
- }
73
- }
74
- /**
75
- * Lexes permission query string to an array of lexems.
76
- *
77
- * @param {string} query
78
- * @return {string[]}
79
- */
80
- }, {
81
- key: "lex",
82
- value: function lex(query) {
83
- var lexems = [];
84
- if (query) {
85
- var currentIdentifier = '';
86
- for (var i = 0; i < query.length; i++) {
87
- switch (query.charAt(i)) {
88
- case ' ':
89
- case '\t':
90
- case '\n':
91
- case '\r':
92
- // Finish current token
93
- if (currentIdentifier) {
94
- lexems.push(currentIdentifier);
95
- currentIdentifier = '';
96
- }
97
- // Skip space
98
- break;
99
- case '(':
100
- case ')':
101
- case '&':
102
- case '|':
103
- case '!':
104
- // Finish current token
105
- if (currentIdentifier) {
106
- lexems.push(currentIdentifier);
107
- currentIdentifier = '';
108
- }
109
- // Append operator
110
- lexems.push(query.charAt(i));
111
- break;
112
- default:
113
- currentIdentifier += query.charAt(i);
114
- break;
115
- }
116
- }
117
- if (currentIdentifier) {
118
- lexems.push(currentIdentifier);
119
- }
120
- }
121
- return lexems;
122
- }
123
- /*
124
- or -> and ( '|' and )*
125
- and -> not ( '&'? not )*
126
- not -> '!'* term
127
- term -> '(' or ')' | permission
128
- permission -> [^()&|!\s]+
129
- */
130
- /**
131
- * @param {string[]} lexems
132
- * @param {string=} projectId
133
- * @return {boolean}
134
- */
135
- }, {
136
- key: "or",
137
- value: function or(lexems, projectId) {
138
- var result = this.and(lexems, projectId);
139
- while (lexems.length > 0 && lexems[0] !== ')') {
140
- if (lexems.shift() !== '|') {
141
- throw new Error('Operator \'|\' was expected');
142
- }
143
- result = this.and(lexems, projectId) || result;
144
- }
145
- return result;
146
- }
147
- /**
148
- * @param {string[]} lexems
149
- * @param {string=} projectId
150
- * @return {boolean}
151
- */
152
- }, {
153
- key: "and",
154
- value: function and(lexems, projectId) {
155
- var result = this.not(lexems, projectId);
156
- while (lexems.length > 0 && lexems[0] !== ')' && lexems[0] !== '|') {
157
- // Expect optional '&'
158
- if (lexems[0] === '&') {
159
- lexems.shift();
160
- }
161
- result = this.not(lexems, projectId) && result;
162
- }
163
- return result;
164
- }
165
- /**
166
- * @param {string[]} lexems
167
- * @param {string=} projectId
168
- * @return {boolean}
169
- */
170
- }, {
171
- key: "not",
172
- value: function not(lexems, projectId) {
173
- var notCounter = 0;
174
- while (lexems.length > 0 && lexems[0] === '!') {
175
- ++notCounter;
176
- lexems.shift();
177
- }
178
- var result = this.term(lexems, projectId);
179
- return notCounter % 2 === 0 ? result : !result;
180
- }
181
- /**
182
- * @param {string[]} lexems
183
- * @param {string=} projectId
184
- * @return {boolean}
185
- */
186
- }, {
187
- key: "term",
188
- value: function term(lexems, projectId) {
189
- if (lexems.length === 0) {
190
- throw new Error('Operand was expected');
191
- }
192
- var t = lexems.shift();
193
- var result;
194
- // Nested parenthesized expression
195
- if (t === '(') {
196
- result = this.or(lexems, projectId);
197
- // Expect ')'
198
- if (lexems.shift() !== ')') {
199
- throw new Error('Operator \')\' was expected');
200
- }
201
- } else {
202
- result = t != null && this.testPermission(t, projectId);
203
- }
204
- return result;
205
- }
206
- /**
207
- * @param {string} permissionName
208
- * @param {string=} projectId
209
- * @return {boolean}
210
- */
211
- }, {
212
- key: "testPermission",
213
- value: function testPermission(permissionName, projectId) {
214
- var permissionCache = this.permissionCache;
215
- var convertedName = this.namesConverter(permissionName);
216
- var cachedPermission = (permissionCache === null || permissionCache === void 0 ? void 0 : permissionCache[permissionName]) || convertedName && (permissionCache === null || permissionCache === void 0 ? void 0 : permissionCache[convertedName]);
217
- // Hasn't the permission in any project
218
- if (!cachedPermission) {
219
- return false;
220
- }
221
- // The permission is global or is given in the global project
222
- if (cachedPermission.global) {
223
- return true;
224
- }
225
- if (projectId) {
226
- // if projectId is specified check that the permission is given in the project
227
- return cachedPermission.projectIdSet != null && projectId in cachedPermission.projectIdSet;
228
- } else {
229
- return true;
230
- }
231
- }
232
- }], [{
233
- key: "_toProjectIdSet",
234
- value:
235
- /**
236
- * Convert an array of projects to a set of project ids.
237
- *
238
- * @param {object[]=} projects
239
- * @return {object} a set of project ids
240
- * @private
241
- */
242
- function _toProjectIdSet(projects) {
243
- var projectIdSet = null;
244
- if (projects) {
245
- projectIdSet = {};
246
- for (var i = 0; i < projects.length; i++) {
247
- projectIdSet[projects[i].id] = true;
248
- }
249
- }
250
- return projectIdSet;
251
- }
252
- }]);
253
- return PermissionCache;
254
- }();
255
- _defineProperty(PermissionCache, "GLOBAL_PROJECT_ID", 'global');
256
-
257
- export { PermissionCache as default };
@@ -1,37 +0,0 @@
1
- export declare enum Directions {
2
- BOTTOM_RIGHT = "BOTTOM_RIGHT",
3
- BOTTOM_LEFT = "BOTTOM_LEFT",
4
- BOTTOM_CENTER = "BOTTOM_CENTER",
5
- TOP_LEFT = "TOP_LEFT",
6
- TOP_RIGHT = "TOP_RIGHT",
7
- TOP_CENTER = "TOP_CENTER",
8
- RIGHT_TOP = "RIGHT_TOP",
9
- RIGHT_BOTTOM = "RIGHT_BOTTOM",
10
- RIGHT_CENTER = "RIGHT_CENTER",
11
- LEFT_TOP = "LEFT_TOP",
12
- LEFT_BOTTOM = "LEFT_BOTTOM",
13
- LEFT_CENTER = "LEFT_CENTER"
14
- }
15
- /**
16
- * When positioning a popup, directions will be tried in the listed order.
17
- * @type {Array.<string>}
18
- */
19
- export declare const DEFAULT_DIRECTIONS: Directions[];
20
- /**
21
- * @enum {number}
22
- */
23
- export declare enum Dimension {
24
- MARGIN = 16,
25
- BORDER_WIDTH = 1
26
- }
27
- export declare enum MinWidth {
28
- TARGET = -1
29
- }
30
- export declare enum MaxHeight {
31
- SCREEN = -1
32
- }
33
- export declare enum Display {
34
- HIDDEN = 0,
35
- SHOWING = 1,
36
- SHOWN = 2
37
- }
@@ -1,44 +0,0 @@
1
- var Directions;
2
- (function (Directions) {
3
- Directions["BOTTOM_RIGHT"] = "BOTTOM_RIGHT";
4
- Directions["BOTTOM_LEFT"] = "BOTTOM_LEFT";
5
- Directions["BOTTOM_CENTER"] = "BOTTOM_CENTER";
6
- Directions["TOP_LEFT"] = "TOP_LEFT";
7
- Directions["TOP_RIGHT"] = "TOP_RIGHT";
8
- Directions["TOP_CENTER"] = "TOP_CENTER";
9
- Directions["RIGHT_TOP"] = "RIGHT_TOP";
10
- Directions["RIGHT_BOTTOM"] = "RIGHT_BOTTOM";
11
- Directions["RIGHT_CENTER"] = "RIGHT_CENTER";
12
- Directions["LEFT_TOP"] = "LEFT_TOP";
13
- Directions["LEFT_BOTTOM"] = "LEFT_BOTTOM";
14
- Directions["LEFT_CENTER"] = "LEFT_CENTER";
15
- })(Directions || (Directions = {}));
16
- /**
17
- * When positioning a popup, directions will be tried in the listed order.
18
- * @type {Array.<string>}
19
- */
20
- var DEFAULT_DIRECTIONS = [Directions.BOTTOM_RIGHT, Directions.BOTTOM_LEFT, Directions.TOP_LEFT, Directions.TOP_RIGHT, Directions.RIGHT_TOP, Directions.RIGHT_BOTTOM, Directions.LEFT_TOP, Directions.LEFT_BOTTOM];
21
- /**
22
- * @enum {number}
23
- */
24
- var Dimension;
25
- (function (Dimension) {
26
- Dimension[Dimension["MARGIN"] = 16] = "MARGIN";
27
- Dimension[Dimension["BORDER_WIDTH"] = 1] = "BORDER_WIDTH";
28
- })(Dimension || (Dimension = {}));
29
- var MinWidth;
30
- (function (MinWidth) {
31
- MinWidth[MinWidth["TARGET"] = -1] = "TARGET";
32
- })(MinWidth || (MinWidth = {}));
33
- var MaxHeight;
34
- (function (MaxHeight) {
35
- MaxHeight[MaxHeight["SCREEN"] = -1] = "SCREEN";
36
- })(MaxHeight || (MaxHeight = {}));
37
- var Display;
38
- (function (Display) {
39
- Display[Display["HIDDEN"] = 0] = "HIDDEN";
40
- Display[Display["SHOWING"] = 1] = "SHOWING";
41
- Display[Display["SHOWN"] = 2] = "SHOWN";
42
- })(Display || (Display = {}));
43
-
44
- export { DEFAULT_DIRECTIONS, Dimension, Directions, Display, MaxHeight, MinWidth };