@refinitiv-ui/elements 5.12.0-alpha.0 → 5.12.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 (513) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +4 -4
  3. package/lib/accordion/index.d.ts +76 -0
  4. package/lib/accordion/index.js +136 -0
  5. package/lib/accordion/themes/halo/dark/index.js +3 -0
  6. package/lib/accordion/themes/halo/light/index.js +3 -0
  7. package/lib/accordion/themes/solar/charcoal/index.js +3 -0
  8. package/lib/accordion/themes/solar/pearl/index.js +3 -0
  9. package/lib/appstate-bar/index.d.ts +65 -0
  10. package/lib/appstate-bar/index.js +100 -0
  11. package/lib/appstate-bar/themes/halo/dark/index.js +3 -0
  12. package/lib/appstate-bar/themes/halo/light/index.js +3 -0
  13. package/lib/appstate-bar/themes/solar/charcoal/index.js +3 -0
  14. package/lib/appstate-bar/themes/solar/pearl/index.js +3 -0
  15. package/lib/autosuggest/helpers/types.d.ts +54 -0
  16. package/lib/autosuggest/helpers/types.js +1 -0
  17. package/lib/autosuggest/helpers/utils.d.ts +39 -0
  18. package/lib/autosuggest/helpers/utils.js +75 -0
  19. package/lib/autosuggest/index.d.ts +538 -0
  20. package/lib/autosuggest/index.js +1255 -0
  21. package/lib/autosuggest/themes/halo/dark/index.js +5 -0
  22. package/lib/autosuggest/themes/halo/light/index.js +5 -0
  23. package/lib/autosuggest/themes/solar/charcoal/index.js +5 -0
  24. package/lib/autosuggest/themes/solar/pearl/index.js +5 -0
  25. package/lib/button/index.d.ts +138 -0
  26. package/lib/button/index.js +241 -0
  27. package/lib/button/themes/halo/dark/index.js +3 -0
  28. package/lib/button/themes/halo/light/index.js +3 -0
  29. package/lib/button/themes/solar/charcoal/index.js +3 -0
  30. package/lib/button/themes/solar/pearl/index.js +3 -0
  31. package/lib/button-bar/index.d.ts +125 -0
  32. package/lib/button-bar/index.js +295 -0
  33. package/lib/button-bar/themes/halo/dark/index.js +3 -0
  34. package/lib/button-bar/themes/halo/light/index.js +3 -0
  35. package/lib/button-bar/themes/solar/charcoal/index.js +3 -0
  36. package/lib/button-bar/themes/solar/pearl/index.js +3 -0
  37. package/lib/calendar/constants.d.ts +26 -0
  38. package/lib/calendar/constants.js +28 -0
  39. package/lib/calendar/index.d.ts +412 -0
  40. package/lib/calendar/index.js +1274 -0
  41. package/lib/calendar/locales.d.ts +1 -0
  42. package/lib/calendar/locales.js +41 -0
  43. package/lib/calendar/themes/halo/dark/index.js +3 -0
  44. package/lib/calendar/themes/halo/light/index.js +3 -0
  45. package/lib/calendar/themes/solar/charcoal/index.js +3 -0
  46. package/lib/calendar/themes/solar/pearl/index.js +3 -0
  47. package/lib/calendar/types.d.ts +32 -0
  48. package/lib/calendar/types.js +1 -0
  49. package/lib/calendar/utils.d.ts +42 -0
  50. package/lib/calendar/utils.js +120 -0
  51. package/lib/canvas/index.d.ts +101 -0
  52. package/lib/canvas/index.js +173 -0
  53. package/lib/canvas/themes/halo/dark/index.js +2 -0
  54. package/lib/canvas/themes/halo/light/index.js +2 -0
  55. package/lib/canvas/themes/solar/charcoal/index.js +2 -0
  56. package/lib/canvas/themes/solar/pearl/index.js +2 -0
  57. package/lib/card/helpers/types.d.ts +12 -0
  58. package/lib/card/helpers/types.js +1 -0
  59. package/lib/card/index.d.ts +142 -0
  60. package/lib/card/index.js +248 -0
  61. package/lib/card/themes/halo/dark/index.js +5 -0
  62. package/lib/card/themes/halo/light/index.js +5 -0
  63. package/lib/card/themes/solar/charcoal/index.js +5 -0
  64. package/lib/card/themes/solar/pearl/index.js +5 -0
  65. package/lib/chart/helpers/index.d.ts +2 -0
  66. package/lib/chart/helpers/index.js +2 -0
  67. package/lib/chart/helpers/legend.d.ts +5 -0
  68. package/lib/chart/helpers/legend.js +78 -0
  69. package/lib/chart/helpers/merge.d.ts +15 -0
  70. package/lib/chart/helpers/merge.js +28 -0
  71. package/lib/chart/helpers/types.d.ts +69 -0
  72. package/lib/chart/helpers/types.js +1 -0
  73. package/lib/chart/index.d.ts +187 -0
  74. package/lib/chart/index.js +491 -0
  75. package/lib/chart/plugins/doughnut-center-label.d.ts +3 -0
  76. package/lib/chart/plugins/doughnut-center-label.js +196 -0
  77. package/lib/chart/themes/halo/dark/index.js +4 -0
  78. package/lib/chart/themes/halo/light/index.js +4 -0
  79. package/lib/chart/themes/solar/charcoal/index.js +4 -0
  80. package/lib/chart/themes/solar/pearl/index.js +4 -0
  81. package/lib/checkbox/index.d.ts +97 -0
  82. package/lib/checkbox/index.js +194 -0
  83. package/lib/checkbox/themes/halo/dark/index.js +4 -0
  84. package/lib/checkbox/themes/halo/light/index.js +4 -0
  85. package/lib/checkbox/themes/solar/charcoal/index.js +4 -0
  86. package/lib/checkbox/themes/solar/pearl/index.js +4 -0
  87. package/lib/clock/index.d.ts +321 -0
  88. package/lib/clock/index.js +583 -0
  89. package/lib/clock/themes/halo/dark/index.js +2 -0
  90. package/lib/clock/themes/halo/light/index.js +2 -0
  91. package/lib/clock/themes/solar/charcoal/index.js +2 -0
  92. package/lib/clock/themes/solar/pearl/index.js +2 -0
  93. package/lib/clock/utils/TickManager.d.ts +14 -0
  94. package/lib/clock/utils/TickManager.js +66 -0
  95. package/lib/clock/utils/timestamps.d.ts +6 -0
  96. package/lib/clock/utils/timestamps.js +6 -0
  97. package/lib/collapse/custom-elements.json +4 -2
  98. package/lib/collapse/custom-elements.md +1 -1
  99. package/lib/collapse/index.d.ts +123 -0
  100. package/lib/collapse/index.js +227 -0
  101. package/lib/collapse/themes/halo/dark/index.js +5 -0
  102. package/lib/collapse/themes/halo/light/index.js +5 -0
  103. package/lib/collapse/themes/solar/charcoal/index.js +5 -0
  104. package/lib/collapse/themes/solar/pearl/index.js +5 -0
  105. package/lib/color-dialog/elements/color-palettes.d.ts +52 -0
  106. package/lib/color-dialog/elements/color-palettes.js +101 -0
  107. package/lib/color-dialog/elements/grayscale-palettes.d.ts +67 -0
  108. package/lib/color-dialog/elements/grayscale-palettes.js +161 -0
  109. package/lib/color-dialog/elements/palettes.d.ts +65 -0
  110. package/lib/color-dialog/elements/palettes.js +132 -0
  111. package/lib/color-dialog/helpers/color-helpers.d.ts +16 -0
  112. package/lib/color-dialog/helpers/color-helpers.js +161 -0
  113. package/lib/color-dialog/helpers/value-model.d.ts +75 -0
  114. package/lib/color-dialog/helpers/value-model.js +141 -0
  115. package/lib/color-dialog/index.d.ts +232 -0
  116. package/lib/color-dialog/index.js +459 -0
  117. package/lib/color-dialog/themes/halo/dark/index.js +7 -0
  118. package/lib/color-dialog/themes/halo/light/index.js +7 -0
  119. package/lib/color-dialog/themes/solar/charcoal/index.js +7 -0
  120. package/lib/color-dialog/themes/solar/pearl/index.js +7 -0
  121. package/lib/combo-box/helpers/filter.d.ts +10 -0
  122. package/lib/combo-box/helpers/filter.js +29 -0
  123. package/lib/combo-box/helpers/keyboard-event.d.ts +17 -0
  124. package/lib/combo-box/helpers/keyboard-event.js +19 -0
  125. package/lib/combo-box/helpers/renderer.d.ts +8 -0
  126. package/lib/combo-box/helpers/renderer.js +24 -0
  127. package/lib/combo-box/helpers/types.d.ts +11 -0
  128. package/lib/combo-box/helpers/types.js +1 -0
  129. package/lib/combo-box/index.d.ts +551 -0
  130. package/lib/combo-box/index.js +1183 -0
  131. package/lib/combo-box/themes/halo/dark/index.js +7 -0
  132. package/lib/combo-box/themes/halo/light/index.js +7 -0
  133. package/lib/combo-box/themes/solar/charcoal/index.js +7 -0
  134. package/lib/combo-box/themes/solar/pearl/index.js +7 -0
  135. package/lib/counter/index.d.ts +91 -0
  136. package/lib/counter/index.js +154 -0
  137. package/lib/counter/themes/halo/dark/index.js +3 -0
  138. package/lib/counter/themes/halo/light/index.js +3 -0
  139. package/lib/counter/themes/solar/charcoal/index.js +3 -0
  140. package/lib/counter/themes/solar/pearl/index.js +3 -0
  141. package/lib/counter/utils.d.ts +13 -0
  142. package/lib/counter/utils.js +52 -0
  143. package/lib/datetime-picker/index.d.ts +509 -0
  144. package/lib/datetime-picker/index.js +1175 -0
  145. package/lib/datetime-picker/locales.d.ts +8 -0
  146. package/lib/datetime-picker/locales.js +57 -0
  147. package/lib/datetime-picker/themes/halo/dark/index.js +7 -0
  148. package/lib/datetime-picker/themes/halo/light/index.js +7 -0
  149. package/lib/datetime-picker/themes/solar/charcoal/index.js +7 -0
  150. package/lib/datetime-picker/themes/solar/pearl/index.js +7 -0
  151. package/lib/datetime-picker/types.d.ts +3 -0
  152. package/lib/datetime-picker/types.js +1 -0
  153. package/lib/datetime-picker/utils.d.ts +55 -0
  154. package/lib/datetime-picker/utils.js +92 -0
  155. package/lib/dialog/custom-elements.json +11 -0
  156. package/lib/dialog/custom-elements.md +4 -3
  157. package/lib/dialog/draggable-element.d.ts +14 -0
  158. package/lib/dialog/draggable-element.js +221 -0
  159. package/lib/dialog/index.d.ts +213 -0
  160. package/lib/dialog/index.js +353 -0
  161. package/lib/dialog/themes/halo/dark/index.js +7 -0
  162. package/lib/dialog/themes/halo/light/index.js +7 -0
  163. package/lib/dialog/themes/solar/charcoal/index.js +7 -0
  164. package/lib/dialog/themes/solar/pearl/index.js +7 -0
  165. package/lib/email-field/index.d.ts +80 -0
  166. package/lib/email-field/index.js +86 -0
  167. package/lib/email-field/themes/halo/dark/index.js +3 -0
  168. package/lib/email-field/themes/halo/light/index.js +3 -0
  169. package/lib/email-field/themes/solar/charcoal/index.js +3 -0
  170. package/lib/email-field/themes/solar/pearl/index.js +3 -0
  171. package/lib/events.d.ts +121 -0
  172. package/lib/events.js +1 -0
  173. package/lib/flag/index.d.ts +96 -0
  174. package/lib/flag/index.js +168 -0
  175. package/lib/flag/themes/halo/dark/index.js +2 -0
  176. package/lib/flag/themes/halo/light/index.js +2 -0
  177. package/lib/flag/themes/solar/charcoal/index.js +2 -0
  178. package/lib/flag/themes/solar/pearl/index.js +2 -0
  179. package/lib/flag/utils/FlagLoader.d.ts +47 -0
  180. package/lib/flag/utils/FlagLoader.js +86 -0
  181. package/lib/header/index.d.ts +46 -0
  182. package/lib/header/index.js +73 -0
  183. package/lib/header/themes/halo/dark/index.js +2 -0
  184. package/lib/header/themes/halo/light/index.js +2 -0
  185. package/lib/header/themes/solar/charcoal/index.js +2 -0
  186. package/lib/header/themes/solar/pearl/index.js +2 -0
  187. package/lib/heatmap/helpers/color.d.ts +30 -0
  188. package/lib/heatmap/helpers/color.js +68 -0
  189. package/lib/heatmap/helpers/text.d.ts +26 -0
  190. package/lib/heatmap/helpers/text.js +91 -0
  191. package/lib/heatmap/helpers/track.d.ts +102 -0
  192. package/lib/heatmap/helpers/track.js +160 -0
  193. package/lib/heatmap/helpers/types.d.ts +40 -0
  194. package/lib/heatmap/helpers/types.js +1 -0
  195. package/lib/heatmap/index.d.ts +453 -0
  196. package/lib/heatmap/index.js +1103 -0
  197. package/lib/heatmap/themes/halo/dark/index.js +4 -0
  198. package/lib/heatmap/themes/halo/light/index.js +4 -0
  199. package/lib/heatmap/themes/solar/charcoal/index.js +4 -0
  200. package/lib/heatmap/themes/solar/pearl/index.js +4 -0
  201. package/lib/icon/index.d.ts +90 -0
  202. package/lib/icon/index.js +171 -0
  203. package/lib/icon/themes/halo/dark/index.js +2 -0
  204. package/lib/icon/themes/halo/light/index.js +2 -0
  205. package/lib/icon/themes/solar/charcoal/index.js +2 -0
  206. package/lib/icon/themes/solar/pearl/index.js +2 -0
  207. package/lib/icon/utils/IconLoader.d.ts +52 -0
  208. package/lib/icon/utils/IconLoader.js +93 -0
  209. package/lib/index.d.ts +3 -0
  210. package/lib/index.js +3 -0
  211. package/lib/interactive-chart/helpers/merge.d.ts +15 -0
  212. package/lib/interactive-chart/helpers/merge.js +28 -0
  213. package/lib/interactive-chart/helpers/types.d.ts +45 -0
  214. package/lib/interactive-chart/helpers/types.js +6 -0
  215. package/lib/interactive-chart/index.d.ts +383 -0
  216. package/lib/interactive-chart/index.js +1093 -0
  217. package/lib/interactive-chart/themes/halo/dark/index.js +3 -0
  218. package/lib/interactive-chart/themes/halo/light/index.js +3 -0
  219. package/lib/interactive-chart/themes/solar/charcoal/index.js +3 -0
  220. package/lib/interactive-chart/themes/solar/pearl/index.js +3 -0
  221. package/lib/item/helpers/types.d.ts +57 -0
  222. package/lib/item/helpers/types.js +1 -0
  223. package/lib/item/index.d.ts +159 -0
  224. package/lib/item/index.js +272 -0
  225. package/lib/item/themes/halo/dark/index.js +4 -0
  226. package/lib/item/themes/halo/light/index.js +4 -0
  227. package/lib/item/themes/solar/charcoal/index.js +4 -0
  228. package/lib/item/themes/solar/pearl/index.js +4 -0
  229. package/lib/label/index.d.ts +102 -0
  230. package/lib/label/index.js +245 -0
  231. package/lib/label/themes/halo/dark/index.js +3 -0
  232. package/lib/label/themes/halo/light/index.js +3 -0
  233. package/lib/label/themes/solar/charcoal/index.js +3 -0
  234. package/lib/label/themes/solar/pearl/index.js +3 -0
  235. package/lib/layout/index.d.ts +107 -0
  236. package/lib/layout/index.js +212 -0
  237. package/lib/layout/themes/halo/dark/index.js +2 -0
  238. package/lib/layout/themes/halo/light/index.js +2 -0
  239. package/lib/layout/themes/solar/charcoal/index.js +2 -0
  240. package/lib/layout/themes/solar/pearl/index.js +2 -0
  241. package/lib/led-gauge/index.d.ts +144 -0
  242. package/lib/led-gauge/index.js +438 -0
  243. package/lib/led-gauge/themes/halo/dark/index.js +3 -0
  244. package/lib/led-gauge/themes/halo/light/index.js +3 -0
  245. package/lib/led-gauge/themes/solar/charcoal/index.js +3 -0
  246. package/lib/led-gauge/themes/solar/pearl/index.js +3 -0
  247. package/lib/list/extensible-function.d.ts +8 -0
  248. package/lib/list/extensible-function.js +13 -0
  249. package/lib/list/helpers/list-renderer.d.ts +9 -0
  250. package/lib/list/helpers/list-renderer.js +37 -0
  251. package/lib/list/helpers/types.d.ts +3 -0
  252. package/lib/list/helpers/types.js +1 -0
  253. package/lib/list/index.d.ts +313 -0
  254. package/lib/list/index.js +640 -0
  255. package/lib/list/renderer.d.ts +36 -0
  256. package/lib/list/renderer.js +9 -0
  257. package/lib/list/themes/halo/dark/index.js +3 -0
  258. package/lib/list/themes/halo/light/index.js +3 -0
  259. package/lib/list/themes/solar/charcoal/index.js +3 -0
  260. package/lib/list/themes/solar/pearl/index.js +3 -0
  261. package/lib/loader/index.d.ts +41 -0
  262. package/lib/loader/index.js +61 -0
  263. package/lib/loader/themes/halo/dark/index.js +2 -0
  264. package/lib/loader/themes/halo/light/index.js +2 -0
  265. package/lib/loader/themes/solar/charcoal/index.js +2 -0
  266. package/lib/loader/themes/solar/pearl/index.js +2 -0
  267. package/lib/multi-input/helpers/types.d.ts +11 -0
  268. package/lib/multi-input/helpers/types.js +1 -0
  269. package/lib/multi-input/index.d.ts +301 -0
  270. package/lib/multi-input/index.js +594 -0
  271. package/lib/multi-input/themes/halo/dark/index.js +4 -0
  272. package/lib/multi-input/themes/halo/light/index.js +4 -0
  273. package/lib/multi-input/themes/solar/charcoal/index.js +4 -0
  274. package/lib/multi-input/themes/solar/pearl/index.js +4 -0
  275. package/lib/notification/elements/notification-tray.d.ts +97 -0
  276. package/lib/notification/elements/notification-tray.js +167 -0
  277. package/lib/notification/elements/notification.d.ts +90 -0
  278. package/lib/notification/elements/notification.js +154 -0
  279. package/lib/notification/helpers/status.d.ts +30 -0
  280. package/lib/notification/helpers/status.js +130 -0
  281. package/lib/notification/helpers/types.d.ts +10 -0
  282. package/lib/notification/helpers/types.js +1 -0
  283. package/lib/notification/index.d.ts +2 -0
  284. package/lib/notification/index.js +2 -0
  285. package/lib/notification/themes/halo/dark/index.js +5 -0
  286. package/lib/notification/themes/halo/light/index.js +5 -0
  287. package/lib/notification/themes/solar/charcoal/index.js +5 -0
  288. package/lib/notification/themes/solar/pearl/index.js +5 -0
  289. package/lib/number-field/index.d.ts +339 -0
  290. package/lib/number-field/index.js +741 -0
  291. package/lib/number-field/themes/halo/dark/index.js +3 -0
  292. package/lib/number-field/themes/halo/light/index.js +3 -0
  293. package/lib/number-field/themes/solar/charcoal/index.js +3 -0
  294. package/lib/number-field/themes/solar/pearl/index.js +3 -0
  295. package/lib/overlay/elements/overlay-backdrop.d.ts +46 -0
  296. package/lib/overlay/elements/overlay-backdrop.js +64 -0
  297. package/lib/overlay/elements/overlay-viewport.d.ts +40 -0
  298. package/lib/overlay/elements/overlay-viewport.js +52 -0
  299. package/lib/overlay/elements/overlay.d.ts +408 -0
  300. package/lib/overlay/elements/overlay.js +1426 -0
  301. package/lib/overlay/helpers/functions.d.ts +13 -0
  302. package/lib/overlay/helpers/functions.js +16 -0
  303. package/lib/overlay/helpers/types.d.ts +97 -0
  304. package/lib/overlay/helpers/types.js +16 -0
  305. package/lib/overlay/index.d.ts +2 -0
  306. package/lib/overlay/index.js +1 -0
  307. package/lib/overlay/managers/backdrop-manager.d.ts +45 -0
  308. package/lib/overlay/managers/backdrop-manager.js +96 -0
  309. package/lib/overlay/managers/close-manager.d.ts +54 -0
  310. package/lib/overlay/managers/close-manager.js +138 -0
  311. package/lib/overlay/managers/focus-manager.d.ts +71 -0
  312. package/lib/overlay/managers/focus-manager.js +228 -0
  313. package/lib/overlay/managers/interaction-lock-manager.d.ts +138 -0
  314. package/lib/overlay/managers/interaction-lock-manager.js +375 -0
  315. package/lib/overlay/managers/viewport-manager.d.ts +93 -0
  316. package/lib/overlay/managers/viewport-manager.js +211 -0
  317. package/lib/overlay/managers/zindex-manager.d.ts +80 -0
  318. package/lib/overlay/managers/zindex-manager.js +195 -0
  319. package/lib/overlay/themes/halo/dark/index.js +4 -0
  320. package/lib/overlay/themes/halo/light/index.js +4 -0
  321. package/lib/overlay/themes/solar/charcoal/index.js +4 -0
  322. package/lib/overlay/themes/solar/pearl/index.js +4 -0
  323. package/lib/overlay-menu/helpers/types.d.ts +8 -0
  324. package/lib/overlay-menu/helpers/types.js +1 -0
  325. package/lib/overlay-menu/index.d.ts +387 -0
  326. package/lib/overlay-menu/index.js +935 -0
  327. package/lib/overlay-menu/managers/menu-manager.d.ts +98 -0
  328. package/lib/overlay-menu/managers/menu-manager.js +240 -0
  329. package/lib/overlay-menu/themes/halo/dark/index.js +5 -0
  330. package/lib/overlay-menu/themes/halo/light/index.js +5 -0
  331. package/lib/overlay-menu/themes/solar/charcoal/index.js +5 -0
  332. package/lib/overlay-menu/themes/solar/pearl/index.js +5 -0
  333. package/lib/pagination/index.d.ts +275 -0
  334. package/lib/pagination/index.js +552 -0
  335. package/lib/pagination/themes/halo/dark/index.js +6 -0
  336. package/lib/pagination/themes/halo/light/index.js +6 -0
  337. package/lib/pagination/themes/solar/charcoal/index.js +6 -0
  338. package/lib/pagination/themes/solar/pearl/index.js +6 -0
  339. package/lib/panel/index.d.ts +48 -0
  340. package/lib/panel/index.js +74 -0
  341. package/lib/panel/themes/halo/dark/index.js +2 -0
  342. package/lib/panel/themes/halo/light/index.js +2 -0
  343. package/lib/panel/themes/solar/charcoal/index.js +2 -0
  344. package/lib/panel/themes/solar/pearl/index.js +2 -0
  345. package/lib/password-field/index.d.ts +89 -0
  346. package/lib/password-field/index.js +112 -0
  347. package/lib/password-field/themes/halo/dark/index.js +3 -0
  348. package/lib/password-field/themes/halo/light/index.js +3 -0
  349. package/lib/password-field/themes/solar/charcoal/index.js +3 -0
  350. package/lib/password-field/themes/solar/pearl/index.js +3 -0
  351. package/lib/pill/index.d.ts +97 -0
  352. package/lib/pill/index.js +160 -0
  353. package/lib/pill/themes/halo/dark/index.js +3 -0
  354. package/lib/pill/themes/halo/light/index.js +3 -0
  355. package/lib/pill/themes/solar/charcoal/index.js +3 -0
  356. package/lib/pill/themes/solar/pearl/index.js +3 -0
  357. package/lib/progress-bar/index.d.ts +82 -0
  358. package/lib/progress-bar/index.js +157 -0
  359. package/lib/progress-bar/themes/halo/dark/index.js +2 -0
  360. package/lib/progress-bar/themes/halo/light/index.js +2 -0
  361. package/lib/progress-bar/themes/solar/charcoal/index.js +2 -0
  362. package/lib/progress-bar/themes/solar/pearl/index.js +2 -0
  363. package/lib/radio-button/index.d.ts +123 -0
  364. package/lib/radio-button/index.js +261 -0
  365. package/lib/radio-button/radio-button-registry.d.ts +22 -0
  366. package/lib/radio-button/radio-button-registry.js +93 -0
  367. package/lib/radio-button/themes/halo/dark/index.js +3 -0
  368. package/lib/radio-button/themes/halo/light/index.js +3 -0
  369. package/lib/radio-button/themes/solar/charcoal/index.js +3 -0
  370. package/lib/radio-button/themes/solar/pearl/index.js +3 -0
  371. package/lib/rating/index.d.ts +91 -0
  372. package/lib/rating/index.js +157 -0
  373. package/lib/rating/themes/halo/dark/index.js +2 -0
  374. package/lib/rating/themes/halo/light/index.js +2 -0
  375. package/lib/rating/themes/solar/charcoal/index.js +2 -0
  376. package/lib/rating/themes/solar/pearl/index.js +2 -0
  377. package/lib/search-field/index.d.ts +77 -0
  378. package/lib/search-field/index.js +84 -0
  379. package/lib/search-field/themes/halo/dark/index.js +3 -0
  380. package/lib/search-field/themes/halo/light/index.js +3 -0
  381. package/lib/search-field/themes/solar/charcoal/index.js +3 -0
  382. package/lib/search-field/themes/solar/pearl/index.js +3 -0
  383. package/lib/select/helpers/types.d.ts +3 -0
  384. package/lib/select/helpers/types.js +1 -0
  385. package/lib/select/index.d.ts +396 -0
  386. package/lib/select/index.js +981 -0
  387. package/lib/select/themes/halo/dark/index.js +5 -0
  388. package/lib/select/themes/halo/light/index.js +5 -0
  389. package/lib/select/themes/solar/charcoal/index.js +5 -0
  390. package/lib/select/themes/solar/pearl/index.js +5 -0
  391. package/lib/sidebar-layout/index.d.ts +70 -0
  392. package/lib/sidebar-layout/index.js +134 -0
  393. package/lib/sidebar-layout/themes/halo/dark/index.js +3 -0
  394. package/lib/sidebar-layout/themes/halo/light/index.js +3 -0
  395. package/lib/sidebar-layout/themes/solar/charcoal/index.js +3 -0
  396. package/lib/sidebar-layout/themes/solar/pearl/index.js +3 -0
  397. package/lib/slider/index.d.ts +409 -0
  398. package/lib/slider/index.js +1197 -0
  399. package/lib/slider/themes/halo/dark/index.js +3 -0
  400. package/lib/slider/themes/halo/light/index.js +3 -0
  401. package/lib/slider/themes/solar/charcoal/index.js +3 -0
  402. package/lib/slider/themes/solar/pearl/index.js +3 -0
  403. package/lib/sparkline/index.d.ts +109 -0
  404. package/lib/sparkline/index.js +188 -0
  405. package/lib/sparkline/themes/halo/dark/index.js +2 -0
  406. package/lib/sparkline/themes/halo/light/index.js +2 -0
  407. package/lib/sparkline/themes/solar/charcoal/index.js +2 -0
  408. package/lib/sparkline/themes/solar/pearl/index.js +2 -0
  409. package/lib/swing-gauge/const.d.ts +22 -0
  410. package/lib/swing-gauge/const.js +26 -0
  411. package/lib/swing-gauge/helpers.d.ts +8 -0
  412. package/lib/swing-gauge/helpers.js +105 -0
  413. package/lib/swing-gauge/index.d.ts +296 -0
  414. package/lib/swing-gauge/index.js +764 -0
  415. package/lib/swing-gauge/themes/halo/dark/index.js +3 -0
  416. package/lib/swing-gauge/themes/halo/light/index.js +3 -0
  417. package/lib/swing-gauge/themes/solar/charcoal/index.js +3 -0
  418. package/lib/swing-gauge/themes/solar/pearl/index.js +3 -0
  419. package/lib/swing-gauge/types.d.ts +34 -0
  420. package/lib/swing-gauge/types.js +1 -0
  421. package/lib/tab/custom-elements.json +13 -0
  422. package/lib/tab/custom-elements.md +1 -0
  423. package/lib/tab/index.d.ts +136 -0
  424. package/lib/tab/index.js +236 -0
  425. package/lib/tab/themes/halo/dark/index.js +4 -0
  426. package/lib/tab/themes/halo/light/index.js +4 -0
  427. package/lib/tab/themes/solar/charcoal/index.js +4 -0
  428. package/lib/tab/themes/solar/pearl/index.js +4 -0
  429. package/lib/tab-bar/custom-elements.json +12 -0
  430. package/lib/tab-bar/custom-elements.md +7 -0
  431. package/lib/tab-bar/helpers/animate.d.ts +16 -0
  432. package/lib/tab-bar/helpers/animate.js +53 -0
  433. package/lib/tab-bar/index.d.ts +198 -0
  434. package/lib/tab-bar/index.js +428 -0
  435. package/lib/tab-bar/themes/halo/dark/index.js +4 -0
  436. package/lib/tab-bar/themes/halo/light/index.js +4 -0
  437. package/lib/tab-bar/themes/solar/charcoal/index.js +4 -0
  438. package/lib/tab-bar/themes/solar/pearl/index.js +4 -0
  439. package/lib/text-field/index.d.ts +151 -0
  440. package/lib/text-field/index.js +260 -0
  441. package/lib/text-field/themes/halo/dark/index.js +3 -0
  442. package/lib/text-field/themes/halo/light/index.js +3 -0
  443. package/lib/text-field/themes/solar/charcoal/index.js +3 -0
  444. package/lib/text-field/themes/solar/pearl/index.js +3 -0
  445. package/lib/time-picker/index.d.ts +412 -0
  446. package/lib/time-picker/index.js +898 -0
  447. package/lib/time-picker/themes/halo/dark/index.js +4 -0
  448. package/lib/time-picker/themes/halo/light/index.js +4 -0
  449. package/lib/time-picker/themes/solar/charcoal/index.js +4 -0
  450. package/lib/time-picker/themes/solar/pearl/index.js +4 -0
  451. package/lib/toggle/index.d.ts +87 -0
  452. package/lib/toggle/index.js +153 -0
  453. package/lib/toggle/themes/halo/dark/index.js +2 -0
  454. package/lib/toggle/themes/halo/light/index.js +2 -0
  455. package/lib/toggle/themes/solar/charcoal/index.js +2 -0
  456. package/lib/toggle/themes/solar/pearl/index.js +2 -0
  457. package/lib/tooltip/elements/title-tooltip.d.ts +1 -0
  458. package/lib/tooltip/elements/title-tooltip.js +18 -0
  459. package/lib/tooltip/elements/tooltip-element.d.ts +21 -0
  460. package/lib/tooltip/elements/tooltip-element.js +54 -0
  461. package/lib/tooltip/helpers/overflow-tooltip.d.ts +9 -0
  462. package/lib/tooltip/helpers/overflow-tooltip.js +19 -0
  463. package/lib/tooltip/helpers/renderer.d.ts +8 -0
  464. package/lib/tooltip/helpers/renderer.js +11 -0
  465. package/lib/tooltip/helpers/types.d.ts +23 -0
  466. package/lib/tooltip/helpers/types.js +1 -0
  467. package/lib/tooltip/index.d.ts +232 -0
  468. package/lib/tooltip/index.js +477 -0
  469. package/lib/tooltip/managers/tooltip-manager.d.ts +15 -0
  470. package/lib/tooltip/managers/tooltip-manager.js +140 -0
  471. package/lib/tooltip/themes/halo/dark/index.js +3 -0
  472. package/lib/tooltip/themes/halo/light/index.js +3 -0
  473. package/lib/tooltip/themes/solar/charcoal/index.js +3 -0
  474. package/lib/tooltip/themes/solar/pearl/index.js +3 -0
  475. package/lib/tornado-chart/elements/tornado-chart.d.ts +78 -0
  476. package/lib/tornado-chart/elements/tornado-chart.js +122 -0
  477. package/lib/tornado-chart/elements/tornado-item.d.ts +110 -0
  478. package/lib/tornado-chart/elements/tornado-item.js +207 -0
  479. package/lib/tornado-chart/index.d.ts +2 -0
  480. package/lib/tornado-chart/index.js +2 -0
  481. package/lib/tornado-chart/themes/halo/dark/index.js +6 -0
  482. package/lib/tornado-chart/themes/halo/light/index.js +6 -0
  483. package/lib/tornado-chart/themes/solar/charcoal/index.js +6 -0
  484. package/lib/tornado-chart/themes/solar/pearl/index.js +6 -0
  485. package/lib/tree/elements/tree-item.d.ts +129 -0
  486. package/lib/tree/elements/tree-item.js +238 -0
  487. package/lib/tree/elements/tree.d.ts +203 -0
  488. package/lib/tree/elements/tree.js +414 -0
  489. package/lib/tree/helpers/filter.d.ts +8 -0
  490. package/lib/tree/helpers/filter.js +33 -0
  491. package/lib/tree/helpers/renderer.d.ts +5 -0
  492. package/lib/tree/helpers/renderer.js +33 -0
  493. package/lib/tree/helpers/types.d.ts +25 -0
  494. package/lib/tree/helpers/types.js +1 -0
  495. package/lib/tree/index.d.ts +4 -0
  496. package/lib/tree/index.js +3 -0
  497. package/lib/tree/managers/tree-manager.d.ts +248 -0
  498. package/lib/tree/managers/tree-manager.js +395 -0
  499. package/lib/tree/themes/halo/dark/index.js +7 -0
  500. package/lib/tree/themes/halo/light/index.js +7 -0
  501. package/lib/tree/themes/solar/charcoal/index.js +7 -0
  502. package/lib/tree/themes/solar/pearl/index.js +7 -0
  503. package/lib/tree-select/helpers/types.d.ts +4 -0
  504. package/lib/tree-select/helpers/types.js +1 -0
  505. package/lib/tree-select/index.d.ts +404 -0
  506. package/lib/tree-select/index.js +891 -0
  507. package/lib/tree-select/themes/halo/dark/index.js +11 -0
  508. package/lib/tree-select/themes/halo/light/index.js +11 -0
  509. package/lib/tree-select/themes/solar/charcoal/index.js +11 -0
  510. package/lib/tree-select/themes/solar/pearl/index.js +11 -0
  511. package/lib/version.d.ts +1 -0
  512. package/lib/version.js +1 -0
  513. package/package.json +293 -24
package/CHANGELOG.md CHANGED
@@ -3,6 +3,30 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ # [5.12.0](https://github.com/Refinitiv/refinitiv-ui/compare/@refinitiv-ui/elements@5.11.0...@refinitiv-ui/elements@5.12.0) (2022-02-15)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * radio-button not add to group ([#167](https://github.com/Refinitiv/refinitiv-ui/issues/167)) ([fb05273](https://github.com/Refinitiv/refinitiv-ui/commit/fb052730cf8c7eeb376a3a49501b85dc363bf614))
12
+ * **slider:** value-changed event is not fired ([#174](https://github.com/Refinitiv/refinitiv-ui/issues/174)) ([687f244](https://github.com/Refinitiv/refinitiv-ui/commit/687f244b4d848a684dc986158f324974931a3689))
13
+
14
+
15
+ ### Features
16
+
17
+ * **button-bar:** improve screen reader support ([#176](https://github.com/Refinitiv/refinitiv-ui/issues/176)) ([f121ea6](https://github.com/Refinitiv/refinitiv-ui/commit/f121ea62fbdc160823dff386ec937b45d0a131e7))
18
+ * **collapse:** accessibility support ([#203](https://github.com/Refinitiv/refinitiv-ui/issues/203)) ([12ae2f7](https://github.com/Refinitiv/refinitiv-ui/commit/12ae2f7fe036d0351e69f5daca4369fae4097917))
19
+ * **collapse:** add accessibility support ([#161](https://github.com/Refinitiv/refinitiv-ui/issues/161)) ([158f031](https://github.com/Refinitiv/refinitiv-ui/commit/158f0317dd4df9ab76e1bd27d4aa02151787c252))
20
+
21
+
22
+ ### Reverts
23
+
24
+ * Revert "feat(collapse): add accessibility support (#161)" (#179) ([9a0ad70](https://github.com/Refinitiv/refinitiv-ui/commit/9a0ad709d71c243fe68dbc38318a04745ea5b23b)), closes [#161](https://github.com/Refinitiv/refinitiv-ui/issues/161) [#179](https://github.com/Refinitiv/refinitiv-ui/issues/179)
25
+
26
+
27
+
28
+
29
+
6
30
  # [5.11.0](https://github.com/Refinitiv/refinitiv-ui/compare/@refinitiv-ui/elements@5.10.1...@refinitiv-ui/elements@5.11.0) (2022-01-14)
7
31
 
8
32
 
package/README.md CHANGED
@@ -29,10 +29,10 @@ Finally, import both elements that you want to use and its themes into your appl
29
29
  import '@refinitiv-ui/halo-theme/dark/imports/native-elements';
30
30
 
31
31
  // import element and its Halo dark theme
32
- import '@refinitiv-ui/elements/button';
33
- import '@refinitiv-ui/elements/panel';
34
- import '@refinitiv-ui/elements/button/themes/halo/dark';
35
- import '@refinitiv-ui/elements/panel/themes/halo/dark';
32
+ import '@refinitiv-ui/elements/lib/button';
33
+ import '@refinitiv-ui/elements/lib/panel';
34
+ import '@refinitiv-ui/elements/lib/button/themes/halo/dark';
35
+ import '@refinitiv-ui/elements/lib/panel/themes/halo/dark';
36
36
  ```
37
37
 
38
38
  Now, you can use the elements in your app.
@@ -0,0 +1,76 @@
1
+ import { JSXInterface } from '../jsx';
2
+ import { PropertyValues, TemplateResult, CSSResultGroup } from '@refinitiv-ui/core';
3
+ import { Collapse } from '../collapse/index.js';
4
+ /**
5
+ * Used to display a group of `Collapse` control.
6
+ * Only one item will be able to expand by default but you can customize its behavior.
7
+ *
8
+ * @slot header-left - Slot to add custom contents to the left side of header e.g. ef-icon, ef-checkbox
9
+ * @slot header-right - Slot to add custom contents to the right side of header e.g. ef-icon, ef-checkbox
10
+ *
11
+ */
12
+ export declare class Accordion extends Collapse {
13
+ /**
14
+ * Element version number
15
+ * @returns version number
16
+ */
17
+ static get version(): string;
18
+ /**
19
+ * A `CSSResultGroup` that will be used
20
+ * to style the host, slotted children
21
+ * and the internal template of the element.
22
+ * @return CSS template
23
+ */
24
+ static get styles(): CSSResultGroup;
25
+ /**
26
+ * Allow multiple sections expand at the same time
27
+ */
28
+ autoCollapseDisabled: boolean;
29
+ /**
30
+ * Add spacing to content section in all collapse items
31
+ */
32
+ spacing: boolean;
33
+ /**
34
+ * Called once after the component is first rendered
35
+ * @param changedProperties map of changed properties with old values
36
+ * @returns {void}
37
+ */
38
+ protected firstUpdated(changedProperties: PropertyValues): void;
39
+ /**
40
+ * handle bubbled clicks from items
41
+ * @param event the click event object
42
+ * @return void
43
+ */
44
+ private handleClick;
45
+ /**
46
+ * get a list of items
47
+ * @returns array of accordion items
48
+ */
49
+ private getChildItems;
50
+ /**
51
+ * collapse non selected child items on click
52
+ * @param target currently selected item
53
+ * @return void
54
+ */
55
+ private processChildrenOnClick;
56
+ /**
57
+ * A `TemplateResult` that will be used
58
+ * to render the updated internal template.
59
+ * @return {TemplateResult} Render template
60
+ */
61
+ protected render(): TemplateResult;
62
+ }
63
+
64
+ declare global {
65
+ interface HTMLElementTagNameMap {
66
+ 'ef-accordion': Accordion;
67
+ }
68
+
69
+ namespace JSX {
70
+ interface IntrinsicElements {
71
+ 'ef-accordion': Partial<Accordion> | JSXInterface.HTMLAttributes<Accordion>;
72
+ }
73
+ }
74
+ }
75
+
76
+ export {};
@@ -0,0 +1,136 @@
1
+ import { __decorate } from "tslib";
2
+ import { html, css } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
5
+ import { VERSION } from '../version.js';
6
+ import { Collapse } from '../collapse/index.js';
7
+ /**
8
+ * Finds closest accordion parent of element.
9
+ * Created, because IE11 doesn't support closest() method.
10
+ * @param element - potential child of accordion
11
+ * @returns found accordion parent or null, if not found
12
+ */
13
+ const getClosestAccordion = (element) => {
14
+ while (element) {
15
+ if (element.localName === 'ef-accordion') {
16
+ return element;
17
+ }
18
+ else {
19
+ element = element.parentElement;
20
+ }
21
+ }
22
+ return null;
23
+ };
24
+ /**
25
+ * Checks if specified element is a direct child of current accordion.
26
+ * @param element - child that checked
27
+ * @param accordion - parent accordion
28
+ * @returns is current accordion has child accordion that wraps checked element
29
+ */
30
+ const isDirectAccordionChild = (element, accordion) => {
31
+ return getClosestAccordion(element) === accordion;
32
+ };
33
+ /**
34
+ * Used to display a group of `Collapse` control.
35
+ * Only one item will be able to expand by default but you can customize its behavior.
36
+ *
37
+ * @slot header-left - Slot to add custom contents to the left side of header e.g. ef-icon, ef-checkbox
38
+ * @slot header-right - Slot to add custom contents to the right side of header e.g. ef-icon, ef-checkbox
39
+ *
40
+ */
41
+ let Accordion = class Accordion extends Collapse {
42
+ constructor() {
43
+ super(...arguments);
44
+ /**
45
+ * Allow multiple sections expand at the same time
46
+ */
47
+ this.autoCollapseDisabled = false;
48
+ /**
49
+ * Add spacing to content section in all collapse items
50
+ */
51
+ this.spacing = false;
52
+ /**
53
+ * handle bubbled clicks from items
54
+ * @param event the click event object
55
+ * @return void
56
+ */
57
+ this.handleClick = (event) => {
58
+ if (!this.autoCollapseDisabled && isDirectAccordionChild(event.target, this)) {
59
+ this.processChildrenOnClick(event.target);
60
+ event.stopPropagation();
61
+ }
62
+ };
63
+ }
64
+ /**
65
+ * Element version number
66
+ * @returns version number
67
+ */
68
+ static get version() {
69
+ return VERSION;
70
+ }
71
+ /**
72
+ * A `CSSResultGroup` that will be used
73
+ * to style the host, slotted children
74
+ * and the internal template of the element.
75
+ * @return CSS template
76
+ */
77
+ static get styles() {
78
+ return css `
79
+ :host {
80
+ display: block;
81
+ }
82
+ `;
83
+ }
84
+ /**
85
+ * Called once after the component is first rendered
86
+ * @param changedProperties map of changed properties with old values
87
+ * @returns {void}
88
+ */
89
+ firstUpdated(changedProperties) {
90
+ super.firstUpdated(changedProperties);
91
+ this.addEventListener('expanded-changed', this.handleClick, true);
92
+ }
93
+ /**
94
+ * get a list of items
95
+ * @returns array of accordion items
96
+ */
97
+ getChildItems() {
98
+ return [...this.querySelectorAll('ef-collapse')]
99
+ .filter((el) => isDirectAccordionChild(el, this));
100
+ }
101
+ /**
102
+ * collapse non selected child items on click
103
+ * @param target currently selected item
104
+ * @return void
105
+ */
106
+ processChildrenOnClick(target) {
107
+ const children = this.getChildItems();
108
+ for (let i = 0, len = children.length; i < len; ++i) {
109
+ if (children[i] !== target) {
110
+ children[i].expanded = false;
111
+ }
112
+ }
113
+ }
114
+ /**
115
+ * A `TemplateResult` that will be used
116
+ * to render the updated internal template.
117
+ * @return {TemplateResult} Render template
118
+ */
119
+ render() {
120
+ return html `
121
+ <slot></slot>
122
+ `;
123
+ }
124
+ };
125
+ __decorate([
126
+ property({ type: Boolean, attribute: 'auto-collapse-disabled' })
127
+ ], Accordion.prototype, "autoCollapseDisabled", void 0);
128
+ __decorate([
129
+ property({ type: Boolean, reflect: true })
130
+ ], Accordion.prototype, "spacing", void 0);
131
+ Accordion = __decorate([
132
+ customElement('ef-accordion', {
133
+ alias: 'coral-accordion'
134
+ })
135
+ ], Accordion);
136
+ export { Accordion };
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/collapse/themes/halo/dark';
2
+
3
+ elf.customStyles.define('ef-accordion', ':host([spacing]) ::slotted(ef-collapse){--panel-padding:12px 8px}:host ::slotted(ef-collapse:not(:last-child):not([expanded])){border-bottom:1px solid #404040}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/collapse/themes/halo/light';
2
+
3
+ elf.customStyles.define('ef-accordion', ':host([spacing]) ::slotted(ef-collapse){--panel-padding:12px 8px}:host ::slotted(ef-collapse:not(:last-child):not([expanded])){border-bottom:1px solid #d9d9d9}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/collapse/themes/solar/charcoal';
2
+
3
+ elf.customStyles.define('ef-accordion', ':host([spacing]) ::slotted(ef-collapse){--panel-padding:6px 10px}:host ::slotted(ef-collapse:not(:last-child):not([expanded])){border-bottom:1px solid #0a0a0a}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/collapse/themes/solar/pearl';
2
+
3
+ elf.customStyles.define('ef-accordion', ':host([spacing]) ::slotted(ef-collapse){--panel-padding:6px 10px}:host ::slotted(ef-collapse:not(:last-child):not([expanded])){border-bottom:1px solid #d5d8db}');
@@ -0,0 +1,65 @@
1
+ import { JSXInterface } from '../jsx';
2
+ import { BasicElement, TemplateResult, CSSResultGroup, PropertyValues } from '@refinitiv-ui/core';
3
+ import '../icon/index.js';
4
+ /**
5
+ * Used to display at the top of application to provide a status or information.
6
+ * @slot right - place custom content on the right of bar.
7
+ *
8
+ * @fires clear - fired when clear button is clicked
9
+ */
10
+ export declare class AppstateBar extends BasicElement {
11
+ /**
12
+ * Element version number
13
+ * @returns version number
14
+ */
15
+ static get version(): string;
16
+ /**
17
+ * A `CSSResultGroup` that will be used
18
+ * to style the host, slotted children
19
+ * and the internal template of the element.
20
+ *
21
+ * @returns CSS template
22
+ */
23
+ static get styles(): CSSResultGroup;
24
+ /**
25
+ * Text to display in heading section.
26
+ */
27
+ heading: string;
28
+ /**
29
+ * (optional) Type of state bar. Supported value are `info`, `highlight`.
30
+ */
31
+ state: 'info' | 'highlight' | null;
32
+ /**
33
+ * Invoked whenever the element is updated
34
+ * @param {PropertyValues} changedProperties Map of changed properties with old values
35
+ * @returns {void}
36
+ */
37
+ protected updated(changedProperties: PropertyValues): void;
38
+ /**
39
+ * Hide the element when clear button is clicked
40
+ * @param {Event} event - event params
41
+ * @fires AppstateBar#clear
42
+ * @returns {void}
43
+ */
44
+ private clear;
45
+ /**
46
+ * A `TemplateResult` that will be used
47
+ * to render the updated internal template.
48
+ * @return {TemplateResult} Render template
49
+ */
50
+ protected render(): TemplateResult;
51
+ }
52
+
53
+ declare global {
54
+ interface HTMLElementTagNameMap {
55
+ 'ef-appstate-bar': AppstateBar;
56
+ }
57
+
58
+ namespace JSX {
59
+ interface IntrinsicElements {
60
+ 'ef-appstate-bar': Partial<AppstateBar> | JSXInterface.HTMLAttributes<AppstateBar>;
61
+ }
62
+ }
63
+ }
64
+
65
+ export {};
@@ -0,0 +1,100 @@
1
+ import { __decorate } from "tslib";
2
+ import { BasicElement, html, css } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
5
+ import { VERSION } from '../version.js';
6
+ import '../icon/index.js';
7
+ /**
8
+ * Used to display at the top of application to provide a status or information.
9
+ * @slot right - place custom content on the right of bar.
10
+ *
11
+ * @fires clear - fired when clear button is clicked
12
+ */
13
+ let AppstateBar = class AppstateBar extends BasicElement {
14
+ constructor() {
15
+ super(...arguments);
16
+ /**
17
+ * Text to display in heading section.
18
+ */
19
+ this.heading = '';
20
+ /**
21
+ * (optional) Type of state bar. Supported value are `info`, `highlight`.
22
+ */
23
+ this.state = null;
24
+ /**
25
+ * Hide the element when clear button is clicked
26
+ * @param {Event} event - event params
27
+ * @fires AppstateBar#clear
28
+ * @returns {void}
29
+ */
30
+ this.clear = (event) => {
31
+ event.stopPropagation();
32
+ this.style.display = 'none';
33
+ /**
34
+ * Clear Event
35
+ * Fired when clear button is clicked
36
+ *
37
+ * @event clear
38
+ */
39
+ this.dispatchEvent(new CustomEvent('clear'));
40
+ };
41
+ }
42
+ /**
43
+ * Element version number
44
+ * @returns version number
45
+ */
46
+ static get version() {
47
+ return VERSION;
48
+ }
49
+ /**
50
+ * A `CSSResultGroup` that will be used
51
+ * to style the host, slotted children
52
+ * and the internal template of the element.
53
+ *
54
+ * @returns CSS template
55
+ */
56
+ static get styles() {
57
+ return css `
58
+ :host {
59
+ display: block;
60
+ }
61
+ `;
62
+ }
63
+ /**
64
+ * Invoked whenever the element is updated
65
+ * @param {PropertyValues} changedProperties Map of changed properties with old values
66
+ * @returns {void}
67
+ */
68
+ updated(changedProperties) {
69
+ super.updated(changedProperties);
70
+ // Call this.updateStyles() to update css variables
71
+ if (changedProperties.has('state')) {
72
+ this.updateStyles();
73
+ }
74
+ }
75
+ /**
76
+ * A `TemplateResult` that will be used
77
+ * to render the updated internal template.
78
+ * @return {TemplateResult} Render template
79
+ */
80
+ render() {
81
+ return html `
82
+ <div part="heading">${this.heading}</div>
83
+ <div part="message"><slot></slot></div>
84
+ <div part="right"><slot name="right"></slot></div>
85
+ <ef-icon part="close" @tap="${this.clear}" icon="cross"></ef-icon>
86
+ `;
87
+ }
88
+ };
89
+ __decorate([
90
+ property({ type: String })
91
+ ], AppstateBar.prototype, "heading", void 0);
92
+ __decorate([
93
+ property({ type: String, reflect: true })
94
+ ], AppstateBar.prototype, "state", void 0);
95
+ AppstateBar = __decorate([
96
+ customElement('ef-appstate-bar', {
97
+ alias: 'amber-appstate-bar'
98
+ })
99
+ ], AppstateBar);
100
+ export { AppstateBar };
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/icon/themes/halo/dark';
2
+
3
+ elf.customStyles.define('ef-appstate-bar', ':host{--heading-text-color:#CCCCCC;--heading-background-color:#334BFF;--text-color:#000000;--background-color:hsl(236, 77%, 92%);--border-color:#404040;display:flex;align-items:center;background:var(--background-color);color:var(--text-color);outline:solid 1px var(--border-color);font-size:12rem;height:28px;--heading-text-color:#FFFFFF;--heading-background-color:#0F1E8A;--text-color:#CCCCCC;--background-color:#262626}:host([state=highlight]){--heading-background-color:hsl(337, 80%, 49%);--heading-background-color:#334BFF}:host([state=info]){--heading-background-color:#6678FF;--heading-background-color:#007678}:host ::slotted(*){padding-right:10px}:host [part=heading]{display:flex;flex:0 0 auto;align-items:center;height:100%;text-transform:uppercase;font-weight:600;background:var(--heading-background-color);color:var(--heading-text-color);padding:0 8px}:host [part=message]{flex:1 1000000 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-left:10px;text-align:inherit}:host [part=right]{flex:0 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host [part=close]{touch-action:manipulation;flex:0 0 auto;width:16px;height:16px;margin-right:10px;stroke-width:.11em;cursor:pointer}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/icon/themes/halo/light';
2
+
3
+ elf.customStyles.define('ef-appstate-bar', ':host{--heading-text-color:#0D0D0D;--heading-background-color:#334BFF;--text-color:#000000;--background-color:hsl(236, 77%, 92%);--border-color:#595959;display:flex;align-items:center;background:var(--background-color);color:var(--text-color);outline:solid 1px var(--border-color);font-size:12rem;height:28px;--heading-text-color:#FFFFFF;--heading-background-color:#0F1E8A;--text-color:#0D0D0D;--background-color:#F2F2F2;--border-color:#CCCCCC}:host([state=highlight]){--heading-background-color:hsl(337, 80%, 49%);--heading-background-color:#334BFF}:host([state=info]){--heading-background-color:#6678FF;--heading-background-color:#007678}:host ::slotted(*){padding-right:10px}:host [part=heading]{display:flex;flex:0 0 auto;align-items:center;height:100%;text-transform:uppercase;font-weight:600;background:var(--heading-background-color);color:var(--heading-text-color);padding:0 8px}:host [part=message]{flex:1 1000000 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-left:10px;text-align:inherit}:host [part=right]{flex:0 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host [part=close]{touch-action:manipulation;flex:0 0 auto;width:16px;height:16px;margin-right:10px;stroke-width:.11em;cursor:pointer}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/icon/themes/solar/charcoal';
2
+
3
+ elf.customStyles.define('ef-appstate-bar', ':host{--heading-text-color:#E2E2E2;--heading-background-color:#FF9933;--text-color:#000000;--background-color:hsl(236, 77%, 92%);--border-color:#4A4A52;display:flex;align-items:center;background:var(--background-color);color:var(--text-color);outline:solid 1px var(--border-color);font-size:14rem;--heading-text-color:#46A0F0;--heading-background-color:#142E45;--text-color:#C2C2C2;--background-color:#0F2233;--border-color:#000000;height:24px}:host([state=highlight]){--heading-background-color:hsl(337, 80%, 49%);--heading-text-color:#000000;--heading-background-color:#FF9933}:host([state=info]){--heading-background-color:#b35900;--heading-text-color:#C2C2C2;--heading-background-color:#282E33}:host ::slotted(*){padding-right:10px}:host [part=heading]{display:flex;flex:0 0 auto;align-items:center;height:100%;text-transform:uppercase;font-weight:600;background:var(--heading-background-color);color:var(--heading-text-color);padding:0 10px}:host [part=message]{flex:1 1000000 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-left:10px;text-align:inherit}:host [part=right]{flex:0 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host [part=close]{touch-action:manipulation;flex:0 0 auto;margin-right:10px;stroke-width:.11em;cursor:pointer;width:15px;height:15px;stroke-width:.12em}');
@@ -0,0 +1,3 @@
1
+ import '@refinitiv-ui/elements/lib/icon/themes/solar/pearl';
2
+
3
+ elf.customStyles.define('ef-appstate-bar', ':host{--heading-text-color:#484848;--heading-background-color:#FF9933;--text-color:#000000;--background-color:hsl(236, 77%, 92%);--border-color:#A9AFBA;display:flex;align-items:center;background:var(--background-color);color:var(--text-color);outline:solid 1px var(--border-color);font-size:14rem;--heading-text-color:#FFFFFF;--heading-background-color:#2A6090;--text-color:#484848;--background-color:#C1E3FE;--border-color:#FFFFFF;height:24px}:host([state=highlight]){--heading-background-color:hsl(337, 80%, 49%);--heading-text-color:#FFFFFF;--heading-background-color:#CC7F33}:host([state=info]){--heading-background-color:#EE7600;--heading-text-color:#FFFFFF;--heading-background-color:#666570}:host ::slotted(*){padding-right:10px}:host [part=heading]{display:flex;flex:0 0 auto;align-items:center;height:100%;text-transform:uppercase;font-weight:600;background:var(--heading-background-color);color:var(--heading-text-color);padding:0 10px}:host [part=message]{flex:1 1000000 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding-left:10px;text-align:inherit}:host [part=right]{flex:0 1 auto;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}:host [part=close]{touch-action:manipulation;flex:0 0 auto;margin-right:10px;stroke-width:.11em;cursor:pointer;width:15px;height:15px;stroke-width:.12em}');
@@ -0,0 +1,54 @@
1
+ import type { ItemType } from '../../item';
2
+ export declare type AutosuggestSelectItemEvent = CustomEvent<{
3
+ query: string;
4
+ suggestion: Suggestion;
5
+ }>;
6
+ export declare type AutosuggestHighlightItem = {
7
+ highlighted: boolean;
8
+ };
9
+ export declare type AutosuggestHighlightItemEvent = CustomEvent<{
10
+ target: AutosuggestHighlightItem;
11
+ oldTarget: AutosuggestHighlightItem;
12
+ }>;
13
+ export declare type AutosuggestQueryAction = (event: CustomEvent) => void;
14
+ export declare type AutosuggestReason = 'value-changed' | 'input-focus' | 'suggestions-revealed' | 'escape-pressed' | 'enter-pressed' | 'more-results';
15
+ export interface Suggestion {
16
+ /**
17
+ * Type of item. Value can be `text`, `header`, `divider`
18
+ */
19
+ type?: ItemType;
20
+ /**
21
+ * The text for the label indicating the meaning of the item.
22
+ */
23
+ label?: string;
24
+ /**
25
+ * The text for the pop-up of item when it's hover.
26
+ */
27
+ title?: string;
28
+ /**
29
+ * Set the icon name from the coral-icon list
30
+ */
31
+ icon?: string;
32
+ /**
33
+ * Sets the item to be disabled.
34
+ */
35
+ disabled?: boolean;
36
+ /**
37
+ * Value of the data item.
38
+ */
39
+ value?: string;
40
+ /**
41
+ * Sort data item into the group.
42
+ */
43
+ group?: string;
44
+ }
45
+ export declare type AutosuggestItem = Suggestion | string | unknown;
46
+ export interface AutosuggestQuery {
47
+ toString(): string;
48
+ }
49
+ export declare type AutosuggestTargetElement = HTMLElement & {
50
+ value: string;
51
+ };
52
+ export declare type AutosuggestMethodType = 'click' | 'enter' | 'clear' | 'reset' | 'navigation';
53
+ export declare type AutosuggestRenderer = (suggestion: AutosuggestItem, query: AutosuggestQuery | null) => HTMLElement;
54
+ export declare type AutosuggestHighlightable = (suggestion: AutosuggestItem, target: HTMLElement) => boolean;
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,39 @@
1
+ import type { Item } from '../../item';
2
+ import type { AutosuggestHighlightable, AutosuggestRenderer } from './types';
3
+ /**
4
+ * Check whether item can be highlighted
5
+ * @param suggestion Suggestion object
6
+ * @param target item element
7
+ * @returns highlightable
8
+ */
9
+ export declare const itemHighlightable: AutosuggestHighlightable;
10
+ /**
11
+ * Replace forbidden characters in regular expressions
12
+ * @param string A string to process
13
+ * @returns clean string
14
+ */
15
+ export declare const escapeRegExp: (string?: string) => string;
16
+ /**
17
+ * A basic regexp matching pattern to replace text based on string input.
18
+ * @param text Value to test against
19
+ * @param query The query
20
+ * @param [pattern=<mark>$1</mark>] Provide a pattern to replace string
21
+ * @returns innerHTML The text that can be used as innerHTML
22
+ */
23
+ export declare const queryWordSelect: (text: string, query?: string, pattern?: string) => string;
24
+ /**
25
+ * Update element content
26
+ * @param el to update content
27
+ * @param query to search
28
+ * @param label text to test against
29
+ * @param value text to use as fallback
30
+ * @return {void}
31
+ */
32
+ export declare const updateElementContent: (el: Item, query: string, label: string, value: string | number) => void;
33
+ /**
34
+ * Build item element from data object
35
+ * @param suggestion Suggestion data
36
+ * @param query A query data (usually string, but could be any entity )
37
+ * @returns item
38
+ */
39
+ export declare const itemRenderer: AutosuggestRenderer;
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Check whether item can be highlighted
3
+ * @param suggestion Suggestion object
4
+ * @param target item element
5
+ * @returns highlightable
6
+ */
7
+ export const itemHighlightable = (suggestion, target) => {
8
+ return target.highlightable;
9
+ };
10
+ /**
11
+ * Replace forbidden characters in regular expressions
12
+ * @param string A string to process
13
+ * @returns clean string
14
+ */
15
+ export const escapeRegExp = (string = '') => {
16
+ return string.replace(/[.*+?^${}()|[\]\\]/g, '\\$&');
17
+ };
18
+ /**
19
+ * A basic regexp matching pattern to replace text based on string input.
20
+ * @param text Value to test against
21
+ * @param query The query
22
+ * @param [pattern=<mark>$1</mark>] Provide a pattern to replace string
23
+ * @returns innerHTML The text that can be used as innerHTML
24
+ */
25
+ export const queryWordSelect = (text, query = '', pattern = '<mark>$1</mark>') => {
26
+ query = query && query.trim();
27
+ if (!query) {
28
+ return text;
29
+ }
30
+ const regExReplace = new RegExp(`(${escapeRegExp(query)})`, 'ig');
31
+ return text.replace(regExReplace, pattern);
32
+ };
33
+ /**
34
+ * Update element content
35
+ * @param el to update content
36
+ * @param query to search
37
+ * @param label text to test against
38
+ * @param value text to use as fallback
39
+ * @return {void}
40
+ */
41
+ export const updateElementContent = (el, query, label, value) => {
42
+ if (itemHighlightable(value, el)) {
43
+ el.innerHTML = queryWordSelect(label, query);
44
+ }
45
+ else {
46
+ el.label = `${value}`;
47
+ }
48
+ };
49
+ /**
50
+ * Build item element from data object
51
+ * @param suggestion Suggestion data
52
+ * @param query A query data (usually string, but could be any entity )
53
+ * @returns item
54
+ */
55
+ export const itemRenderer = (suggestion, query) => {
56
+ const el = document.createElement('ef-item');
57
+ if (typeof suggestion === 'object') {
58
+ const { type, label, title, icon, disabled, value } = suggestion;
59
+ el.type = type || null;
60
+ el.disabled = !!disabled;
61
+ el.icon = icon || null;
62
+ el.value = value || label || '';
63
+ if (title) {
64
+ el.title = title;
65
+ }
66
+ updateElementContent(el, query || '', label || '', el.value);
67
+ }
68
+ else {
69
+ const value = suggestion || '';
70
+ el.label = value;
71
+ el.value = value;
72
+ updateElementContent(el, query || '', value, value);
73
+ }
74
+ return el;
75
+ };