@refinitiv-ui/elements 5.0.0-beta.3 → 5.0.0-dev.204

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 (596) hide show
  1. package/CHANGELOG.md +325 -73
  2. package/README.md +13 -2
  3. package/lib/accordion/custom-elements.json +0 -13
  4. package/lib/accordion/custom-elements.md +18 -0
  5. package/lib/accordion/index.d.ts +13 -10
  6. package/lib/accordion/index.js +15 -18
  7. package/lib/appstate-bar/custom-elements.json +1 -1
  8. package/lib/appstate-bar/custom-elements.md +22 -0
  9. package/lib/appstate-bar/index.d.ts +15 -6
  10. package/lib/appstate-bar/index.js +17 -11
  11. package/lib/autosuggest/custom-elements.json +24 -4
  12. package/lib/autosuggest/custom-elements.md +54 -0
  13. package/lib/autosuggest/helpers/types.d.ts +22 -1
  14. package/lib/autosuggest/helpers/types.js +0 -1
  15. package/lib/autosuggest/helpers/utils.d.ts +2 -2
  16. package/lib/autosuggest/helpers/utils.js +1 -3
  17. package/lib/autosuggest/index.d.ts +21 -9
  18. package/lib/autosuggest/index.js +45 -31
  19. package/lib/button/custom-elements.json +3 -3
  20. package/lib/button/custom-elements.md +23 -0
  21. package/lib/button/index.d.ts +27 -20
  22. package/lib/button/index.js +92 -74
  23. package/lib/button/themes/halo/dark/index.js +1 -1
  24. package/lib/button/themes/halo/light/index.js +1 -1
  25. package/lib/button/themes/solar/charcoal/index.js +1 -1
  26. package/lib/button/themes/solar/pearl/index.js +1 -1
  27. package/lib/button-bar/custom-elements.md +9 -0
  28. package/lib/button-bar/index.d.ts +60 -4
  29. package/lib/button-bar/index.js +164 -19
  30. package/lib/calendar/constants.d.ts +26 -0
  31. package/lib/calendar/constants.js +28 -0
  32. package/lib/calendar/custom-elements.json +8 -6
  33. package/lib/calendar/custom-elements.md +35 -0
  34. package/lib/calendar/index.d.ts +119 -21
  35. package/lib/calendar/index.js +512 -157
  36. package/lib/calendar/locales.d.ts +1 -31
  37. package/lib/calendar/locales.js +3 -107
  38. package/lib/calendar/themes/halo/dark/index.js +1 -1
  39. package/lib/calendar/themes/halo/light/index.js +1 -1
  40. package/lib/calendar/themes/solar/charcoal/index.js +1 -1
  41. package/lib/calendar/themes/solar/pearl/index.js +1 -1
  42. package/lib/calendar/types.d.ts +12 -13
  43. package/lib/calendar/types.js +1 -7
  44. package/lib/calendar/utils.d.ts +31 -1
  45. package/lib/calendar/utils.js +105 -3
  46. package/lib/canvas/custom-elements.json +9 -7
  47. package/lib/canvas/custom-elements.md +27 -0
  48. package/lib/canvas/index.d.ts +14 -6
  49. package/lib/canvas/index.js +17 -12
  50. package/lib/card/custom-elements.json +21 -9
  51. package/lib/card/custom-elements.md +24 -0
  52. package/lib/card/helpers/types.d.ts +1 -1
  53. package/lib/card/helpers/types.js +0 -1
  54. package/lib/card/index.d.ts +67 -20
  55. package/lib/card/index.js +132 -35
  56. package/lib/card/themes/halo/dark/index.js +1 -1
  57. package/lib/card/themes/halo/light/index.js +1 -1
  58. package/lib/card/themes/solar/charcoal/index.js +1 -1
  59. package/lib/card/themes/solar/pearl/index.js +1 -1
  60. package/lib/chart/custom-elements.json +3 -3
  61. package/lib/chart/custom-elements.md +16 -0
  62. package/lib/chart/helpers/index.d.ts +2 -0
  63. package/lib/chart/helpers/index.js +2 -0
  64. package/lib/chart/helpers/legend.d.ts +2 -2
  65. package/lib/chart/helpers/legend.js +2 -3
  66. package/lib/chart/helpers/merge.d.ts +15 -0
  67. package/lib/chart/helpers/merge.js +28 -0
  68. package/lib/chart/helpers/types.d.ts +40 -12
  69. package/lib/chart/helpers/types.js +0 -1
  70. package/lib/chart/index.d.ts +34 -26
  71. package/lib/chart/index.js +58 -55
  72. package/lib/chart/plugins/doughnut-center-label.js +4 -5
  73. package/lib/checkbox/custom-elements.json +4 -4
  74. package/lib/checkbox/custom-elements.md +18 -0
  75. package/lib/checkbox/index.d.ts +29 -14
  76. package/lib/checkbox/index.js +65 -34
  77. package/lib/checkbox/themes/halo/dark/index.js +1 -1
  78. package/lib/checkbox/themes/halo/light/index.js +1 -1
  79. package/lib/clock/custom-elements.json +21 -4
  80. package/lib/clock/custom-elements.md +28 -0
  81. package/lib/clock/index.d.ts +25 -6
  82. package/lib/clock/index.js +44 -18
  83. package/lib/clock/themes/halo/dark/index.js +1 -1
  84. package/lib/clock/themes/halo/light/index.js +1 -1
  85. package/lib/clock/themes/solar/charcoal/index.js +1 -1
  86. package/lib/clock/themes/solar/pearl/index.js +1 -1
  87. package/lib/clock/utils/TickManager.js +2 -3
  88. package/lib/clock/utils/timestamps.js +0 -1
  89. package/lib/collapse/custom-elements.md +27 -0
  90. package/lib/collapse/index.d.ts +15 -8
  91. package/lib/collapse/index.js +18 -13
  92. package/lib/color-dialog/custom-elements.json +29 -16
  93. package/lib/color-dialog/custom-elements.md +39 -0
  94. package/lib/color-dialog/elements/color-palettes.d.ts +13 -6
  95. package/lib/color-dialog/elements/color-palettes.js +16 -13
  96. package/lib/color-dialog/elements/grayscale-palettes.d.ts +13 -6
  97. package/lib/color-dialog/elements/grayscale-palettes.js +17 -13
  98. package/lib/color-dialog/elements/palettes.d.ts +15 -3
  99. package/lib/color-dialog/elements/palettes.js +65 -45
  100. package/lib/color-dialog/helpers/color-helpers.d.ts +7 -53
  101. package/lib/color-dialog/helpers/color-helpers.js +12 -110
  102. package/lib/color-dialog/helpers/value-model.d.ts +1 -1
  103. package/lib/color-dialog/helpers/value-model.js +18 -17
  104. package/lib/color-dialog/index.d.ts +27 -20
  105. package/lib/color-dialog/index.js +54 -45
  106. package/lib/combo-box/custom-elements.json +51 -17
  107. package/lib/combo-box/custom-elements.md +42 -0
  108. package/lib/combo-box/helpers/filter.d.ts +4 -4
  109. package/lib/combo-box/helpers/filter.js +0 -1
  110. package/lib/combo-box/helpers/keyboard-event.js +0 -1
  111. package/lib/combo-box/helpers/renderer.d.ts +8 -0
  112. package/lib/combo-box/helpers/renderer.js +24 -0
  113. package/lib/combo-box/helpers/types.d.ts +2 -2
  114. package/lib/combo-box/helpers/types.js +0 -1
  115. package/lib/combo-box/index.d.ts +63 -32
  116. package/lib/combo-box/index.js +102 -60
  117. package/lib/combo-box/themes/halo/dark/index.js +2 -3
  118. package/lib/combo-box/themes/halo/light/index.js +2 -3
  119. package/lib/combo-box/themes/solar/charcoal/index.js +2 -3
  120. package/lib/combo-box/themes/solar/pearl/index.js +2 -3
  121. package/lib/counter/custom-elements.json +39 -0
  122. package/lib/counter/custom-elements.md +11 -0
  123. package/lib/counter/index.d.ts +91 -0
  124. package/lib/counter/index.js +154 -0
  125. package/lib/counter/themes/halo/dark/index.js +3 -0
  126. package/lib/counter/themes/halo/light/index.js +3 -0
  127. package/lib/counter/themes/solar/charcoal/index.js +3 -0
  128. package/lib/counter/themes/solar/pearl/index.js +3 -0
  129. package/lib/counter/utils.d.ts +13 -0
  130. package/lib/counter/utils.js +52 -0
  131. package/lib/datetime-picker/custom-elements.json +53 -24
  132. package/lib/datetime-picker/custom-elements.md +57 -0
  133. package/lib/datetime-picker/index.d.ts +34 -16
  134. package/lib/datetime-picker/index.js +56 -38
  135. package/lib/datetime-picker/locales.d.ts +1 -1
  136. package/lib/datetime-picker/locales.js +12 -2
  137. package/lib/datetime-picker/themes/solar/charcoal/index.js +1 -1
  138. package/lib/datetime-picker/themes/solar/pearl/index.js +1 -1
  139. package/lib/datetime-picker/types.d.ts +1 -1
  140. package/lib/datetime-picker/types.js +0 -1
  141. package/lib/datetime-picker/utils.js +1 -2
  142. package/lib/dialog/custom-elements.json +34 -12
  143. package/lib/dialog/custom-elements.md +47 -0
  144. package/lib/dialog/draggable-element.js +25 -16
  145. package/lib/dialog/index.d.ts +25 -21
  146. package/lib/dialog/index.js +36 -32
  147. package/lib/email-field/custom-elements.json +81 -94
  148. package/lib/email-field/custom-elements.md +37 -0
  149. package/lib/email-field/index.d.ts +47 -112
  150. package/lib/email-field/index.js +48 -241
  151. package/lib/email-field/themes/halo/dark/index.js +1 -1
  152. package/lib/email-field/themes/halo/light/index.js +1 -1
  153. package/lib/email-field/themes/solar/charcoal/index.js +1 -1
  154. package/lib/email-field/themes/solar/pearl/index.js +1 -1
  155. package/lib/events.d.ts +121 -0
  156. package/lib/events.js +1 -0
  157. package/lib/flag/custom-elements.md +10 -0
  158. package/lib/flag/index.d.ts +14 -5
  159. package/lib/flag/index.js +19 -12
  160. package/lib/flag/utils/FlagLoader.d.ts +1 -1
  161. package/lib/flag/utils/FlagLoader.js +1 -2
  162. package/lib/header/custom-elements.md +18 -0
  163. package/lib/header/index.d.ts +10 -3
  164. package/lib/header/index.js +12 -8
  165. package/lib/heatmap/custom-elements.json +13 -0
  166. package/lib/heatmap/custom-elements.md +26 -0
  167. package/lib/heatmap/helpers/color.d.ts +1 -1
  168. package/lib/heatmap/helpers/color.js +1 -2
  169. package/lib/heatmap/helpers/text.d.ts +1 -1
  170. package/lib/heatmap/helpers/text.js +0 -1
  171. package/lib/heatmap/helpers/track.js +2 -3
  172. package/lib/heatmap/helpers/types.js +0 -1
  173. package/lib/heatmap/index.d.ts +32 -13
  174. package/lib/heatmap/index.js +61 -35
  175. package/lib/icon/custom-elements.json +6 -4
  176. package/lib/icon/custom-elements.md +8 -0
  177. package/lib/icon/index.d.ts +17 -7
  178. package/lib/icon/index.js +36 -18
  179. package/lib/icon/utils/IconLoader.d.ts +6 -1
  180. package/lib/icon/utils/IconLoader.js +24 -18
  181. package/lib/index.d.ts +2 -0
  182. package/lib/index.js +2 -1
  183. package/lib/interactive-chart/custom-elements.json +5 -11
  184. package/lib/interactive-chart/custom-elements.md +31 -0
  185. package/lib/interactive-chart/helpers/merge.d.ts +15 -0
  186. package/lib/interactive-chart/helpers/merge.js +28 -0
  187. package/lib/interactive-chart/helpers/types.d.ts +10 -9
  188. package/lib/interactive-chart/helpers/types.js +6 -2
  189. package/lib/interactive-chart/index.d.ts +37 -18
  190. package/lib/interactive-chart/index.js +61 -51
  191. package/lib/item/custom-elements.json +4 -4
  192. package/lib/item/custom-elements.md +29 -0
  193. package/lib/item/helpers/types.d.ts +1 -1
  194. package/lib/item/helpers/types.js +0 -1
  195. package/lib/item/index.d.ts +26 -9
  196. package/lib/item/index.js +43 -16
  197. package/lib/label/custom-elements.json +7 -16
  198. package/lib/label/custom-elements.md +11 -0
  199. package/lib/label/index.d.ts +41 -73
  200. package/lib/label/index.js +150 -187
  201. package/lib/layout/custom-elements.md +26 -0
  202. package/lib/layout/index.d.ts +11 -4
  203. package/lib/layout/index.js +13 -9
  204. package/lib/led-gauge/custom-elements.json +4 -4
  205. package/lib/led-gauge/custom-elements.md +17 -0
  206. package/lib/led-gauge/index.d.ts +13 -5
  207. package/lib/led-gauge/index.js +16 -11
  208. package/lib/list/custom-elements.json +37 -5
  209. package/lib/list/custom-elements.md +33 -0
  210. package/lib/list/extensible-function.js +2 -1
  211. package/lib/list/helpers/list-renderer.d.ts +2 -2
  212. package/lib/list/helpers/list-renderer.js +4 -3
  213. package/lib/list/helpers/types.d.ts +2 -2
  214. package/lib/list/helpers/types.js +0 -1
  215. package/lib/list/index.d.ts +47 -12
  216. package/lib/list/index.js +100 -39
  217. package/lib/list/renderer.d.ts +2 -2
  218. package/lib/list/renderer.js +1 -2
  219. package/lib/loader/custom-elements.md +5 -0
  220. package/lib/loader/index.d.ts +8 -1
  221. package/lib/loader/index.js +11 -8
  222. package/lib/multi-input/custom-elements.json +7 -6
  223. package/lib/multi-input/custom-elements.md +43 -0
  224. package/lib/multi-input/helpers/types.d.ts +1 -1
  225. package/lib/multi-input/helpers/types.js +0 -1
  226. package/lib/multi-input/index.d.ts +19 -8
  227. package/lib/multi-input/index.js +28 -18
  228. package/lib/multi-input/themes/solar/charcoal/index.js +1 -1
  229. package/lib/multi-input/themes/solar/pearl/index.js +1 -1
  230. package/lib/notification/custom-elements.md +26 -0
  231. package/lib/notification/elements/notification-tray.d.ts +10 -4
  232. package/lib/notification/elements/notification-tray.js +15 -11
  233. package/lib/notification/elements/notification.d.ts +19 -7
  234. package/lib/notification/elements/notification.js +25 -13
  235. package/lib/notification/helpers/status.d.ts +1 -1
  236. package/lib/notification/helpers/status.js +1 -2
  237. package/lib/notification/helpers/types.d.ts +1 -1
  238. package/lib/notification/helpers/types.js +0 -1
  239. package/lib/notification/index.d.ts +2 -2
  240. package/lib/notification/index.js +2 -3
  241. package/lib/number-field/custom-elements.json +99 -54
  242. package/lib/number-field/custom-elements.md +42 -0
  243. package/lib/number-field/index.d.ts +104 -52
  244. package/lib/number-field/index.js +129 -88
  245. package/lib/number-field/themes/halo/dark/index.js +1 -1
  246. package/lib/number-field/themes/halo/light/index.js +1 -1
  247. package/lib/number-field/themes/solar/charcoal/index.js +1 -1
  248. package/lib/number-field/themes/solar/pearl/index.js +1 -1
  249. package/lib/overlay/custom-elements.json +26 -13
  250. package/lib/overlay/custom-elements.md +54 -0
  251. package/lib/overlay/elements/overlay-backdrop.d.ts +12 -5
  252. package/lib/overlay/elements/overlay-backdrop.js +13 -9
  253. package/lib/overlay/elements/overlay-viewport.d.ts +11 -4
  254. package/lib/overlay/elements/overlay-viewport.js +12 -9
  255. package/lib/overlay/elements/overlay.d.ts +18 -6
  256. package/lib/overlay/elements/overlay.js +35 -28
  257. package/lib/overlay/helpers/functions.js +0 -1
  258. package/lib/overlay/helpers/types.js +0 -1
  259. package/lib/overlay/index.d.ts +2 -2
  260. package/lib/overlay/index.js +1 -2
  261. package/lib/overlay/managers/backdrop-manager.d.ts +2 -2
  262. package/lib/overlay/managers/backdrop-manager.js +2 -3
  263. package/lib/overlay/managers/close-manager.d.ts +1 -1
  264. package/lib/overlay/managers/close-manager.js +1 -2
  265. package/lib/overlay/managers/focus-manager.d.ts +1 -1
  266. package/lib/overlay/managers/focus-manager.js +3 -5
  267. package/lib/overlay/managers/interaction-lock-manager.js +2 -3
  268. package/lib/overlay/managers/viewport-manager.d.ts +3 -3
  269. package/lib/overlay/managers/viewport-manager.js +6 -3
  270. package/lib/overlay/managers/zindex-manager.d.ts +1 -1
  271. package/lib/overlay/managers/zindex-manager.js +1 -4
  272. package/lib/overlay-menu/custom-elements.json +126 -12
  273. package/lib/overlay-menu/custom-elements.md +44 -0
  274. package/lib/overlay-menu/helpers/types.d.ts +3 -3
  275. package/lib/overlay-menu/helpers/types.js +0 -1
  276. package/lib/overlay-menu/index.d.ts +44 -12
  277. package/lib/overlay-menu/index.js +66 -35
  278. package/lib/overlay-menu/managers/menu-manager.d.ts +2 -2
  279. package/lib/overlay-menu/managers/menu-manager.js +8 -8
  280. package/lib/pagination/custom-elements.json +16 -33
  281. package/lib/pagination/custom-elements.md +26 -0
  282. package/lib/pagination/index.d.ts +156 -81
  283. package/lib/pagination/index.js +373 -214
  284. package/lib/pagination/themes/halo/dark/index.js +1 -1
  285. package/lib/pagination/themes/halo/light/index.js +1 -1
  286. package/lib/pagination/themes/solar/charcoal/index.js +1 -1
  287. package/lib/pagination/themes/solar/pearl/index.js +1 -1
  288. package/lib/panel/custom-elements.md +11 -0
  289. package/lib/panel/index.d.ts +11 -4
  290. package/lib/panel/index.js +13 -9
  291. package/lib/password-field/custom-elements.json +62 -67
  292. package/lib/password-field/custom-elements.md +39 -0
  293. package/lib/password-field/index.d.ts +46 -90
  294. package/lib/password-field/index.js +52 -190
  295. package/lib/password-field/themes/halo/dark/index.js +1 -1
  296. package/lib/password-field/themes/halo/light/index.js +1 -1
  297. package/lib/password-field/themes/solar/charcoal/index.js +1 -1
  298. package/lib/password-field/themes/solar/pearl/index.js +1 -1
  299. package/lib/pill/custom-elements.json +9 -7
  300. package/lib/pill/custom-elements.md +22 -0
  301. package/lib/pill/index.d.ts +15 -7
  302. package/lib/pill/index.js +21 -27
  303. package/lib/pill/themes/halo/dark/index.js +1 -1
  304. package/lib/pill/themes/halo/light/index.js +1 -1
  305. package/lib/progress-bar/custom-elements.md +18 -0
  306. package/lib/progress-bar/index.d.ts +11 -15
  307. package/lib/progress-bar/index.js +14 -25
  308. package/lib/radio-button/custom-elements.json +4 -4
  309. package/lib/radio-button/custom-elements.md +19 -0
  310. package/lib/radio-button/index.d.ts +33 -9
  311. package/lib/radio-button/index.js +97 -24
  312. package/lib/radio-button/radio-button-registry.d.ts +3 -2
  313. package/lib/radio-button/radio-button-registry.js +57 -5
  314. package/lib/radio-button/themes/halo/dark/index.js +1 -1
  315. package/lib/radio-button/themes/halo/light/index.js +1 -1
  316. package/lib/rating/custom-elements.md +17 -0
  317. package/lib/rating/index.d.ts +11 -4
  318. package/lib/rating/index.js +16 -10
  319. package/lib/search-field/custom-elements.json +70 -74
  320. package/lib/search-field/custom-elements.md +41 -0
  321. package/lib/search-field/index.d.ts +47 -97
  322. package/lib/search-field/index.js +50 -212
  323. package/lib/search-field/themes/halo/dark/index.js +1 -1
  324. package/lib/search-field/themes/halo/light/index.js +1 -1
  325. package/lib/search-field/themes/solar/charcoal/index.js +1 -1
  326. package/lib/search-field/themes/solar/pearl/index.js +1 -1
  327. package/lib/select/custom-elements.json +5 -4
  328. package/lib/select/custom-elements.md +24 -0
  329. package/lib/select/helpers/types.d.ts +1 -1
  330. package/lib/select/helpers/types.js +0 -1
  331. package/lib/select/index.d.ts +26 -11
  332. package/lib/select/index.js +93 -52
  333. package/lib/select/themes/halo/dark/index.js +1 -1
  334. package/lib/select/themes/halo/light/index.js +1 -1
  335. package/lib/sidebar-layout/custom-elements.json +2 -6
  336. package/lib/sidebar-layout/custom-elements.md +21 -0
  337. package/lib/sidebar-layout/index.d.ts +15 -7
  338. package/lib/sidebar-layout/index.js +16 -10
  339. package/lib/slider/custom-elements.json +4 -4
  340. package/lib/slider/custom-elements.md +28 -0
  341. package/lib/slider/index.d.ts +18 -5
  342. package/lib/slider/index.js +69 -16
  343. package/lib/sparkline/custom-elements.json +4 -4
  344. package/lib/sparkline/custom-elements.md +16 -0
  345. package/lib/sparkline/index.d.ts +14 -5
  346. package/lib/sparkline/index.js +17 -10
  347. package/lib/swing-gauge/const.d.ts +22 -0
  348. package/lib/swing-gauge/const.js +26 -0
  349. package/lib/swing-gauge/custom-elements.json +51 -22
  350. package/lib/swing-gauge/custom-elements.md +17 -0
  351. package/lib/swing-gauge/helpers.d.ts +8 -0
  352. package/lib/swing-gauge/helpers.js +105 -0
  353. package/lib/swing-gauge/index.d.ts +220 -72
  354. package/lib/swing-gauge/index.js +648 -168
  355. package/lib/swing-gauge/themes/halo/dark/index.js +1 -1
  356. package/lib/swing-gauge/themes/halo/light/index.js +1 -1
  357. package/lib/swing-gauge/themes/solar/charcoal/index.js +1 -1
  358. package/lib/swing-gauge/themes/solar/pearl/index.js +1 -1
  359. package/lib/swing-gauge/types.d.ts +34 -0
  360. package/lib/swing-gauge/types.js +1 -0
  361. package/lib/tab/custom-elements.json +10 -21
  362. package/lib/tab/custom-elements.md +22 -0
  363. package/lib/tab/index.d.ts +19 -14
  364. package/lib/tab/index.js +31 -40
  365. package/lib/tab/themes/halo/dark/index.js +1 -1
  366. package/lib/tab/themes/halo/light/index.js +1 -1
  367. package/lib/tab/themes/solar/charcoal/index.js +1 -1
  368. package/lib/tab/themes/solar/pearl/index.js +1 -1
  369. package/lib/tab-bar/custom-elements.json +0 -6
  370. package/lib/tab-bar/custom-elements.md +11 -0
  371. package/lib/tab-bar/helpers/animate.d.ts +1 -1
  372. package/lib/tab-bar/helpers/animate.js +5 -2
  373. package/lib/tab-bar/index.d.ts +12 -5
  374. package/lib/tab-bar/index.js +18 -21
  375. package/lib/tab-bar/themes/solar/charcoal/index.js +1 -1
  376. package/lib/tab-bar/themes/solar/pearl/index.js +1 -1
  377. package/lib/text-field/custom-elements.json +78 -89
  378. package/lib/text-field/custom-elements.md +35 -0
  379. package/lib/text-field/index.d.ts +67 -80
  380. package/lib/text-field/index.js +106 -157
  381. package/lib/text-field/themes/halo/dark/index.js +1 -1
  382. package/lib/text-field/themes/halo/light/index.js +1 -1
  383. package/lib/text-field/themes/solar/charcoal/index.js +1 -1
  384. package/lib/text-field/themes/solar/pearl/index.js +1 -1
  385. package/lib/time-picker/custom-elements.json +6 -8
  386. package/lib/time-picker/custom-elements.md +28 -0
  387. package/lib/time-picker/index.d.ts +105 -65
  388. package/lib/time-picker/index.js +297 -169
  389. package/lib/time-picker/themes/solar/charcoal/index.js +1 -1
  390. package/lib/time-picker/themes/solar/pearl/index.js +1 -1
  391. package/lib/toggle/custom-elements.json +4 -4
  392. package/lib/toggle/custom-elements.md +19 -0
  393. package/lib/toggle/index.d.ts +22 -5
  394. package/lib/toggle/index.js +58 -13
  395. package/lib/toggle/themes/halo/dark/index.js +1 -1
  396. package/lib/toggle/themes/halo/light/index.js +1 -1
  397. package/lib/toggle/themes/solar/charcoal/index.js +1 -1
  398. package/lib/toggle/themes/solar/pearl/index.js +1 -1
  399. package/lib/tooltip/custom-elements.md +14 -0
  400. package/lib/tooltip/elements/title-tooltip.js +2 -3
  401. package/lib/tooltip/elements/tooltip-element.d.ts +2 -3
  402. package/lib/tooltip/elements/tooltip-element.js +0 -2
  403. package/lib/tooltip/helpers/overflow-tooltip.d.ts +1 -1
  404. package/lib/tooltip/helpers/overflow-tooltip.js +1 -2
  405. package/lib/tooltip/helpers/renderer.d.ts +1 -1
  406. package/lib/tooltip/helpers/renderer.js +0 -1
  407. package/lib/tooltip/helpers/types.d.ts +1 -1
  408. package/lib/tooltip/helpers/types.js +0 -1
  409. package/lib/tooltip/index.d.ts +18 -11
  410. package/lib/tooltip/index.js +27 -23
  411. package/lib/tooltip/managers/tooltip-manager.d.ts +2 -2
  412. package/lib/tooltip/managers/tooltip-manager.js +17 -11
  413. package/lib/tornado-chart/custom-elements.md +18 -0
  414. package/lib/tornado-chart/elements/tornado-chart.d.ts +12 -5
  415. package/lib/tornado-chart/elements/tornado-chart.js +15 -11
  416. package/lib/tornado-chart/elements/tornado-item.d.ts +13 -6
  417. package/lib/tornado-chart/elements/tornado-item.js +17 -12
  418. package/lib/tornado-chart/index.d.ts +2 -2
  419. package/lib/tornado-chart/index.js +2 -3
  420. package/lib/tree/custom-elements.json +30 -2
  421. package/lib/tree/custom-elements.md +32 -0
  422. package/lib/tree/elements/tree-item.d.ts +53 -5
  423. package/lib/tree/elements/tree-item.js +114 -34
  424. package/lib/tree/elements/tree.d.ts +65 -20
  425. package/lib/tree/elements/tree.js +151 -34
  426. package/lib/tree/helpers/filter.d.ts +8 -0
  427. package/lib/tree/helpers/filter.js +33 -0
  428. package/lib/tree/helpers/renderer.d.ts +2 -2
  429. package/lib/tree/helpers/renderer.js +4 -4
  430. package/lib/tree/helpers/types.d.ts +13 -1
  431. package/lib/tree/helpers/types.js +0 -1
  432. package/lib/tree/index.d.ts +4 -4
  433. package/lib/tree/index.js +3 -4
  434. package/lib/tree/managers/tree-manager.d.ts +22 -10
  435. package/lib/tree/managers/tree-manager.js +56 -41
  436. package/lib/tree/themes/halo/dark/index.js +1 -1
  437. package/lib/tree/themes/halo/light/index.js +1 -1
  438. package/lib/tree/themes/solar/charcoal/index.js +1 -1
  439. package/lib/tree/themes/solar/pearl/index.js +1 -1
  440. package/lib/tree-select/custom-elements.json +14 -5
  441. package/lib/tree-select/custom-elements.md +26 -0
  442. package/lib/tree-select/helpers/types.d.ts +2 -2
  443. package/lib/tree-select/helpers/types.js +0 -1
  444. package/lib/tree-select/index.d.ts +55 -27
  445. package/lib/tree-select/index.js +107 -45
  446. package/lib/tree-select/themes/halo/dark/index.js +3 -2
  447. package/lib/tree-select/themes/halo/light/index.js +3 -2
  448. package/lib/tree-select/themes/solar/charcoal/index.js +3 -2
  449. package/lib/tree-select/themes/solar/pearl/index.js +3 -2
  450. package/lib/version.d.ts +1 -0
  451. package/lib/version.js +1 -0
  452. package/package.json +601 -25
  453. package/lib/accordion/index.js.map +0 -1
  454. package/lib/appstate-bar/index.js.map +0 -1
  455. package/lib/autosuggest/helpers/const.d.ts +0 -2
  456. package/lib/autosuggest/helpers/const.js +0 -4
  457. package/lib/autosuggest/helpers/const.js.map +0 -1
  458. package/lib/autosuggest/helpers/types.js.map +0 -1
  459. package/lib/autosuggest/helpers/utils.js.map +0 -1
  460. package/lib/autosuggest/index.js.map +0 -1
  461. package/lib/button/index.js.map +0 -1
  462. package/lib/button-bar/index.js.map +0 -1
  463. package/lib/calendar/index.js.map +0 -1
  464. package/lib/calendar/locales.js.map +0 -1
  465. package/lib/calendar/types.js.map +0 -1
  466. package/lib/calendar/utils.js.map +0 -1
  467. package/lib/canvas/index.js.map +0 -1
  468. package/lib/card/helpers/types.js.map +0 -1
  469. package/lib/card/index.js.map +0 -1
  470. package/lib/chart/helpers/legend.js.map +0 -1
  471. package/lib/chart/helpers/types.js.map +0 -1
  472. package/lib/chart/index.js.map +0 -1
  473. package/lib/chart/plugins/doughnut-center-label.js.map +0 -1
  474. package/lib/checkbox/index.js.map +0 -1
  475. package/lib/clock/index.js.map +0 -1
  476. package/lib/clock/utils/TickManager.js.map +0 -1
  477. package/lib/clock/utils/timestamps.js.map +0 -1
  478. package/lib/collapse/index.js.map +0 -1
  479. package/lib/color-dialog/elements/color-palettes.js.map +0 -1
  480. package/lib/color-dialog/elements/grayscale-palettes.js.map +0 -1
  481. package/lib/color-dialog/elements/palettes.js.map +0 -1
  482. package/lib/color-dialog/helpers/color-helpers.js.map +0 -1
  483. package/lib/color-dialog/helpers/value-model.js.map +0 -1
  484. package/lib/color-dialog/index.js.map +0 -1
  485. package/lib/combo-box/helpers/filter.js.map +0 -1
  486. package/lib/combo-box/helpers/keyboard-event.js.map +0 -1
  487. package/lib/combo-box/helpers/types.js.map +0 -1
  488. package/lib/combo-box/index.js.map +0 -1
  489. package/lib/datetime-picker/index.js.map +0 -1
  490. package/lib/datetime-picker/locales.js.map +0 -1
  491. package/lib/datetime-picker/types.js.map +0 -1
  492. package/lib/datetime-picker/utils.js.map +0 -1
  493. package/lib/dialog/draggable-element.js.map +0 -1
  494. package/lib/dialog/index.js.map +0 -1
  495. package/lib/email-field/index.js.map +0 -1
  496. package/lib/flag/index.js.map +0 -1
  497. package/lib/flag/utils/FlagLoader.js.map +0 -1
  498. package/lib/header/index.js.map +0 -1
  499. package/lib/heatmap/helpers/color.js.map +0 -1
  500. package/lib/heatmap/helpers/text.js.map +0 -1
  501. package/lib/heatmap/helpers/track.js.map +0 -1
  502. package/lib/heatmap/helpers/types.js.map +0 -1
  503. package/lib/heatmap/index.js.map +0 -1
  504. package/lib/icon/index.js.map +0 -1
  505. package/lib/icon/utils/IconLoader.js.map +0 -1
  506. package/lib/index.js.map +0 -1
  507. package/lib/interactive-chart/helpers/types.js.map +0 -1
  508. package/lib/interactive-chart/index.js.map +0 -1
  509. package/lib/item/helpers/types.js.map +0 -1
  510. package/lib/item/index.js.map +0 -1
  511. package/lib/label/helpers/text.d.ts +0 -35
  512. package/lib/label/helpers/text.js +0 -57
  513. package/lib/label/helpers/text.js.map +0 -1
  514. package/lib/label/index.js.map +0 -1
  515. package/lib/layout/index.js.map +0 -1
  516. package/lib/led-gauge/index.js.map +0 -1
  517. package/lib/list/extensible-function.js.map +0 -1
  518. package/lib/list/helpers/list-renderer.js.map +0 -1
  519. package/lib/list/helpers/types.js.map +0 -1
  520. package/lib/list/index.js.map +0 -1
  521. package/lib/list/renderer.js.map +0 -1
  522. package/lib/loader/index.js.map +0 -1
  523. package/lib/multi-input/helpers/types.js.map +0 -1
  524. package/lib/multi-input/index.js.map +0 -1
  525. package/lib/notification/elements/notification-tray.js.map +0 -1
  526. package/lib/notification/elements/notification.js.map +0 -1
  527. package/lib/notification/helpers/status.js.map +0 -1
  528. package/lib/notification/helpers/types.js.map +0 -1
  529. package/lib/notification/index.js.map +0 -1
  530. package/lib/number-field/index.js.map +0 -1
  531. package/lib/overlay/elements/overlay-backdrop.js.map +0 -1
  532. package/lib/overlay/elements/overlay-viewport.js.map +0 -1
  533. package/lib/overlay/elements/overlay.js.map +0 -1
  534. package/lib/overlay/helpers/functions.js.map +0 -1
  535. package/lib/overlay/helpers/types.js.map +0 -1
  536. package/lib/overlay/index.js.map +0 -1
  537. package/lib/overlay/managers/backdrop-manager.js.map +0 -1
  538. package/lib/overlay/managers/close-manager.js.map +0 -1
  539. package/lib/overlay/managers/focus-manager.js.map +0 -1
  540. package/lib/overlay/managers/interaction-lock-manager.js.map +0 -1
  541. package/lib/overlay/managers/viewport-manager.js.map +0 -1
  542. package/lib/overlay/managers/zindex-manager.js.map +0 -1
  543. package/lib/overlay-menu/helpers/types.js.map +0 -1
  544. package/lib/overlay-menu/helpers/uuid.d.ts +0 -7
  545. package/lib/overlay-menu/helpers/uuid.js +0 -14
  546. package/lib/overlay-menu/helpers/uuid.js.map +0 -1
  547. package/lib/overlay-menu/index.js.map +0 -1
  548. package/lib/overlay-menu/managers/menu-manager.js.map +0 -1
  549. package/lib/pagination/helpers/types.d.ts +0 -9
  550. package/lib/pagination/helpers/types.js +0 -2
  551. package/lib/pagination/helpers/types.js.map +0 -1
  552. package/lib/pagination/index.js.map +0 -1
  553. package/lib/panel/index.js.map +0 -1
  554. package/lib/password-field/index.js.map +0 -1
  555. package/lib/pill/index.js.map +0 -1
  556. package/lib/progress-bar/index.js.map +0 -1
  557. package/lib/radio-button/index.js.map +0 -1
  558. package/lib/radio-button/radio-button-registry.js.map +0 -1
  559. package/lib/rating/index.js.map +0 -1
  560. package/lib/search-field/index.js.map +0 -1
  561. package/lib/select/helpers/types.js.map +0 -1
  562. package/lib/select/index.js.map +0 -1
  563. package/lib/sidebar-layout/index.js.map +0 -1
  564. package/lib/slider/index.js.map +0 -1
  565. package/lib/sparkline/index.js.map +0 -1
  566. package/lib/swing-gauge/helpers/canvas.d.ts +0 -8
  567. package/lib/swing-gauge/helpers/canvas.js +0 -115
  568. package/lib/swing-gauge/helpers/canvas.js.map +0 -1
  569. package/lib/swing-gauge/helpers/types.d.ts +0 -33
  570. package/lib/swing-gauge/helpers/types.js +0 -2
  571. package/lib/swing-gauge/helpers/types.js.map +0 -1
  572. package/lib/swing-gauge/index.js.map +0 -1
  573. package/lib/tab/index.js.map +0 -1
  574. package/lib/tab-bar/helpers/animate.js.map +0 -1
  575. package/lib/tab-bar/index.js.map +0 -1
  576. package/lib/text-field/index.js.map +0 -1
  577. package/lib/time-picker/index.js.map +0 -1
  578. package/lib/toggle/index.js.map +0 -1
  579. package/lib/tooltip/elements/title-tooltip.js.map +0 -1
  580. package/lib/tooltip/elements/tooltip-element.js.map +0 -1
  581. package/lib/tooltip/helpers/overflow-tooltip.js.map +0 -1
  582. package/lib/tooltip/helpers/renderer.js.map +0 -1
  583. package/lib/tooltip/helpers/types.js.map +0 -1
  584. package/lib/tooltip/index.js.map +0 -1
  585. package/lib/tooltip/managers/tooltip-manager.js.map +0 -1
  586. package/lib/tornado-chart/elements/tornado-chart.js.map +0 -1
  587. package/lib/tornado-chart/elements/tornado-item.js.map +0 -1
  588. package/lib/tornado-chart/index.js.map +0 -1
  589. package/lib/tree/elements/tree-item.js.map +0 -1
  590. package/lib/tree/elements/tree.js.map +0 -1
  591. package/lib/tree/helpers/renderer.js.map +0 -1
  592. package/lib/tree/helpers/types.js.map +0 -1
  593. package/lib/tree/index.js.map +0 -1
  594. package/lib/tree/managers/tree-manager.js.map +0 -1
  595. package/lib/tree-select/helpers/types.js.map +0 -1
  596. package/lib/tree-select/index.js.map +0 -1
package/lib/icon/index.js CHANGED
@@ -1,13 +1,18 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { BasicElement, svg, css, customElement, property, unsafeHTML } from '@refinitiv-ui/core';
8
- import { IconLoader } from './utils/IconLoader';
9
- export { preload } from './utils/IconLoader';
1
+ import { __decorate } from "tslib";
2
+ import { BasicElement, svg, 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 { unsafeSVG } from '@refinitiv-ui/core/lib/directives/unsafe-svg.js';
6
+ import { VERSION } from '../version.js';
7
+ import { IconLoader } from './utils/IconLoader.js';
8
+ export { preload } from './utils/IconLoader.js';
10
9
  const EmptyTemplate = svg ``;
10
+ /**
11
+ * Cache for reusing SVG template results across multiple icons.
12
+ * Reusing these templates increases performance dramatically when many icons are rendered.
13
+ * As the cache key is an absolute URL, we can assume no clashes will occur.
14
+ */
15
+ const iconTemplateCache = new Map();
11
16
  let Icon = class Icon extends BasicElement {
12
17
  constructor() {
13
18
  super(...arguments);
@@ -16,7 +21,14 @@ let Icon = class Icon extends BasicElement {
16
21
  this._template = EmptyTemplate;
17
22
  }
18
23
  /**
19
- * A `CSSResult` that will be used
24
+ * Element version number
25
+ * @returns version number
26
+ */
27
+ static get version() {
28
+ return VERSION;
29
+ }
30
+ /**
31
+ * A `CSSResultGroup` that will be used
20
32
  * to style the host, slotted children
21
33
  * and the internal template of the element.
22
34
  * @return CSS template
@@ -25,6 +37,7 @@ let Icon = class Icon extends BasicElement {
25
37
  return css `
26
38
  :host {
27
39
  display: inline-block;
40
+ line-height: 1;
28
41
  width: 1em;
29
42
  height: 1em;
30
43
  }
@@ -35,8 +48,9 @@ let Icon = class Icon extends BasicElement {
35
48
  `;
36
49
  }
37
50
  /**
38
- * Name of a known icon to render.
39
- * @example heart
51
+ * Name of a known icon to render or URL of SVG icon.
52
+ * @example heart | https://cdn.io/icons/heart.svg
53
+ * @default null
40
54
  */
41
55
  get icon() {
42
56
  return this._icon;
@@ -46,12 +60,14 @@ let Icon = class Icon extends BasicElement {
46
60
  if (oldValue !== value) {
47
61
  this._icon = value;
48
62
  void this.setIconSrc();
49
- void this.requestUpdate('icon', oldValue);
63
+ this.requestUpdate('icon', oldValue);
50
64
  }
51
65
  }
52
66
  /**
53
67
  * Src location of an svg icon.
54
68
  * @example https://cdn.io/icons/heart.svg
69
+ * @deprecated Use `icon` instead
70
+ * @default null
55
71
  */
56
72
  get src() {
57
73
  return this._src;
@@ -74,7 +90,7 @@ let Icon = class Icon extends BasicElement {
74
90
  set template(value) {
75
91
  if (this._template !== value) {
76
92
  this._template = value;
77
- void this.requestUpdate();
93
+ this.requestUpdate();
78
94
  }
79
95
  }
80
96
  /**
@@ -104,10 +120,13 @@ let Icon = class Icon extends BasicElement {
104
120
  * @returns {void}
105
121
  */
106
122
  async loadAndRenderIcon(src) {
107
- const svgBody = await IconLoader.loadSVG(src);
108
- if (svgBody) {
109
- this.template = svg `${unsafeHTML(svgBody)}`;
123
+ const iconTemplateCacheItem = iconTemplateCache.get(src);
124
+ if (!iconTemplateCacheItem) {
125
+ iconTemplateCache.set(src, IconLoader.loadSVG(src)
126
+ .then(body => svg `${unsafeSVG(body)}`));
127
+ return this.loadAndRenderIcon(src); // Load again and await cache result
110
128
  }
129
+ this.template = await iconTemplateCacheItem;
111
130
  }
112
131
  /**
113
132
  * Get and cache CDN prefix
@@ -150,4 +169,3 @@ Icon = __decorate([
150
169
  })
151
170
  ], Icon);
152
171
  export { Icon };
153
- //# sourceMappingURL=index.js.map
@@ -1,4 +1,4 @@
1
- import { CdnLoader } from '@refinitiv-ui/utils';
1
+ import { CdnLoader } from '@refinitiv-ui/utils/lib/loader.js';
2
2
  /**
3
3
  * Caches and provides icon SVGs, Loaded either by name from CDN or directly by URL.
4
4
  * Uses singleton pattern
@@ -33,6 +33,11 @@ declare class IconLoader extends CdnLoader {
33
33
  * @returns Promise, which will be resolved with complete source.
34
34
  */
35
35
  getSrc(iconName: string): Promise<string>;
36
+ /**
37
+ * Loads icon and returns the body of the SVG
38
+ * @param icon Icon name to load
39
+ * @returns SVG body of the response
40
+ */
36
41
  loadSVG(icon: string): Promise<string | undefined>;
37
42
  }
38
43
  declare const iconLoaderInstance: IconLoader;
@@ -1,5 +1,5 @@
1
- import { CdnLoader, Deferred } from '@refinitiv-ui/utils';
2
- const isUrl = (str) => (/^https?:\/\//i).test(str);
1
+ import { CdnLoader, Deferred } from '@refinitiv-ui/utils/lib/loader.js';
2
+ const isUrl = (str) => (/^(https?:\/{2}|\.?\/)/i).test(str);
3
3
  /**
4
4
  * Caches and provides icon SVGs, Loaded either by name from CDN or directly by URL.
5
5
  * Uses singleton pattern
@@ -50,26 +50,33 @@ class IconLoader extends CdnLoader {
50
50
  * @returns Promise, which will be resolved with complete source.
51
51
  */
52
52
  async getSrc(iconName) {
53
+ if (isUrl(iconName)) {
54
+ return iconName;
55
+ }
53
56
  return iconName ? `${await this.getCdnPrefix()}${iconName}.svg` : '';
54
57
  }
58
+ /**
59
+ * Loads icon and returns the body of the SVG
60
+ * @param icon Icon name to load
61
+ * @returns SVG body of the response
62
+ */
55
63
  async loadSVG(icon) {
56
- if (icon) {
57
- if (!isUrl(icon)) {
58
- icon = await this.getSrc(icon);
59
- }
60
- const response = await this.load(icon);
61
- if (response && response.status === 200 && response.getResponseHeader('content-type') === 'image/svg+xml') {
62
- const container = document.createElement('svg');
63
- container.innerHTML = response.responseText;
64
- this.stripUnsafeNodes(...container.children);
65
- const svgRoot = container.firstElementChild;
66
- if (svgRoot) {
67
- svgRoot.setAttribute('focusable', 'false'); /* disable IE11 focus on SVG root element */
68
- }
69
- return Promise.resolve(container.innerHTML);
64
+ if (!icon) {
65
+ return;
66
+ }
67
+ icon = await this.getSrc(icon);
68
+ const response = await this.load(icon);
69
+ if (response && response.status === 200 && response.getResponseHeader('content-type') === 'image/svg+xml') {
70
+ const container = document.createElement('svg');
71
+ container.innerHTML = response.responseText;
72
+ this.stripUnsafeNodes(...container.children);
73
+ const svgRoot = container.firstElementChild;
74
+ if (svgRoot) {
75
+ svgRoot.setAttribute('focusable', 'false'); /* disable IE11 focus on SVG root element */
70
76
  }
71
- return Promise.resolve('');
77
+ return container.innerHTML;
72
78
  }
79
+ return '';
73
80
  }
74
81
  }
75
82
  const iconLoaderInstance = new IconLoader();
@@ -84,4 +91,3 @@ export { iconLoaderInstance as IconLoader };
84
91
  export const preload = (...attrs) => {
85
92
  return attrs.map(icon => iconLoaderInstance.loadSVG(icon));
86
93
  };
87
- //# sourceMappingURL=IconLoader.js.map
package/lib/index.d.ts CHANGED
@@ -1 +1,3 @@
1
+ export { VERSION } from './version.js';
2
+ export * from './events';
1
3
  export * from '@refinitiv-ui/core';
package/lib/index.js CHANGED
@@ -1,2 +1,3 @@
1
+ export { VERSION } from './version.js';
2
+ export * from './events';
1
3
  export * from '@refinitiv-ui/core';
2
- //# sourceMappingURL=index.js.map
@@ -23,8 +23,8 @@
23
23
  "default": "false"
24
24
  },
25
25
  {
26
- "name": "legendstyle",
27
- "description": "Set legend style i.e. `horizontal`, `vertical`. Default is `vertical`.",
26
+ "name": "legend-style",
27
+ "description": "Set legend style i.e. `horizontal`, `vertical`.",
28
28
  "type": "\"vertical\" | \"horizontal\"",
29
29
  "default": "\"vertical\""
30
30
  }
@@ -52,22 +52,16 @@
52
52
  },
53
53
  {
54
54
  "name": "legendStyle",
55
- "attribute": "legendstyle",
56
- "description": "Set legend style i.e. `horizontal`, `vertical`. Default is `vertical`.",
55
+ "attribute": "legend-style",
56
+ "description": "Set legend style i.e. `horizontal`, `vertical`.",
57
57
  "type": "\"vertical\" | \"horizontal\"",
58
58
  "default": "\"vertical\""
59
- },
60
- {
61
- "name": "seriesList",
62
- "description": "Array of series instances in chart",
63
- "type": "object",
64
- "default": "[]"
65
59
  }
66
60
  ],
67
61
  "events": [
68
62
  {
69
63
  "name": "initialized",
70
- "description": "Fired when chart initialized"
64
+ "description": "Dispatched when chart is initialized"
71
65
  }
72
66
  ],
73
67
  "slots": [
@@ -0,0 +1,31 @@
1
+ # ef-interactive-chart
2
+
3
+ A charting component that allows you to create several use cases of financial chart.
4
+ By lightweight-charts library.
5
+
6
+ ## Properties
7
+
8
+ | Property | Attribute | Type | Default | Description |
9
+ |----------------------|------------------------|------------------------------|------------|-------------------------------------------------|
10
+ | `config` | `config` | `InteractiveChartConfig` | null | Chart configurations for init chart |
11
+ | `disabledJumpButton` | `disabled-jump-button` | `boolean` | false | Hide jump to latest data button |
12
+ | `disabledLegend` | `disabled-legend` | `boolean` | false | Hide legend |
13
+ | `legendStyle` | `legend-style` | `"vertical" \| "horizontal"` | "vertical" | Set legend style i.e. `horizontal`, `vertical`. |
14
+
15
+ ## Methods
16
+
17
+ | Method | Type | Description |
18
+ |----------|--------------|------------------------------------------------|
19
+ | `colors` | `(): object` | List of available chart colors from the theme. |
20
+
21
+ ## Events
22
+
23
+ | Event | Description |
24
+ |---------------|--------------------------------------|
25
+ | `initialized` | Dispatched when chart is initialized |
26
+
27
+ ## Slots
28
+
29
+ | Name | Description |
30
+ |----------|---------------------------------------------|
31
+ | `legend` | Slot to use for implementing custom legend. |
@@ -0,0 +1,15 @@
1
+ declare type UnknownObject = {
2
+ [key: string]: unknown;
3
+ };
4
+ declare type MergeObject = UnknownObject | Array<unknown>;
5
+ /**
6
+ * Merge objects recursively
7
+ *
8
+ * @param {MergeObject} object The destination object.
9
+ * @param {MergeObject} sources The source objects.
10
+ * @param {boolean} force Force merge if a key of destination object is already exists and a value is not object
11
+ * @param {MergeObject[]} record The record object which record merged objects recursively
12
+ * @returns voids
13
+ */
14
+ declare const merge: (object: MergeObject, sources: MergeObject, force?: boolean, record?: Array<unknown>) => void;
15
+ export { merge, MergeObject };
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Merge objects recursively
3
+ *
4
+ * @param {MergeObject} object The destination object.
5
+ * @param {MergeObject} sources The source objects.
6
+ * @param {boolean} force Force merge if a key of destination object is already exists and a value is not object
7
+ * @param {MergeObject[]} record The record object which record merged objects recursively
8
+ * @returns voids
9
+ */
10
+ const merge = (object, sources, force = false, record = []) => {
11
+ let value;
12
+ let isObject;
13
+ Object.keys(sources).forEach((key, i) => {
14
+ // Get value and info from merging object
15
+ value = Array.isArray(sources) ? sources[i] : sources[key];
16
+ isObject = (value && typeof value === 'object' && value.toString() === '[object Object]');
17
+ // Merge if found a new key from source or has a force command
18
+ if (!(key in object) || (force && !isObject)) {
19
+ object[key] = value;
20
+ }
21
+ // Deep merge objects
22
+ if (isObject && !record.includes(value)) {
23
+ record.push(value);
24
+ merge(object[key], value, force, record);
25
+ }
26
+ });
27
+ };
28
+ export { merge };
@@ -1,5 +1,5 @@
1
- import { LineData, BarData, HistogramData, DeepPartial, ChartOptions, SeriesPartialOptions, LineSeriesPartialOptions, AreaSeriesPartialOptions, BarSeriesPartialOptions, CandlestickSeriesPartialOptions, HistogramSeriesPartialOptions, LineStyleOptions, AreaStyleOptions, BarStyleOptions, CandlestickStyleOptions, HistogramStyleOptions, ISeriesApi, SeriesType } from 'lightweight-charts';
2
- import type { RGBColor, HSLColor } from '@refinitiv-ui/utils';
1
+ import type { LineData, BarData, HistogramData, DeepPartial, ChartOptions, SeriesPartialOptions, LineSeriesPartialOptions, AreaSeriesPartialOptions, BarSeriesPartialOptions, CandlestickSeriesPartialOptions, HistogramSeriesPartialOptions, LineStyleOptions, AreaStyleOptions, BarStyleOptions, CandlestickStyleOptions, HistogramStyleOptions, ISeriesApi, SeriesType } from 'lightweight-charts';
2
+ import type { RGBColor, HSLColor } from '@refinitiv-ui/utils/lib/color.js';
3
3
  declare type SeriesOptions = AreaSeriesPartialOptions | BarSeriesPartialOptions | CandlestickSeriesPartialOptions | HistogramSeriesPartialOptions | LineSeriesPartialOptions;
4
4
  declare type SeriesStyleOptions = LineStyleOptions & AreaStyleOptions & BarStyleOptions & CandlestickStyleOptions & HistogramStyleOptions;
5
5
  declare type SeriesData = LineData[] | BarData[] | HistogramData[];
@@ -7,9 +7,10 @@ declare type SeriesList = ISeriesApi<SeriesType>;
7
7
  declare type SeriesDataItem = BarData | LineData;
8
8
  declare type RowLegend = NodeListOf<Element> | HTMLElement | null;
9
9
  declare type ColorToStringFunction = (param: string, ...arg: (string | number | undefined)[]) => RGBColor | HSLColor | null;
10
- declare type MergeObject = {
11
- [key: string]: any;
12
- };
10
+ declare enum LegendStyle {
11
+ vertical = "vertical",
12
+ horizontal = "horizontal"
13
+ }
13
14
  interface Time {
14
15
  day: number;
15
16
  month: number;
@@ -30,15 +31,15 @@ interface Theme {
30
31
  crossHairColor: string;
31
32
  chartUpColor: string;
32
33
  chartDownColor: string;
33
- fillOpacity: number | undefined;
34
- lineWidth: number | undefined;
34
+ fillOpacity?: number;
35
+ lineWidth?: number;
35
36
  }
36
37
  interface InteractiveChartSeries {
37
38
  type: string;
38
39
  symbol?: string;
39
40
  symbolName?: string;
40
- legendPriceFormatter?: CallableFunction;
41
+ legendPriceFormatter?: (price: string | number) => string | number;
41
42
  data: SeriesData;
42
43
  seriesOptions?: SeriesPartialOptions<SeriesOptions>;
43
44
  }
44
- export { InteractiveChartConfig, InteractiveChartSeries, Time, Theme, RowLegend, SeriesList, SeriesDataItem, SeriesStyleOptions, ColorToStringFunction, MergeObject };
45
+ export { InteractiveChartConfig, InteractiveChartSeries, Time, Theme, RowLegend, SeriesList, SeriesDataItem, SeriesStyleOptions, ColorToStringFunction, LegendStyle };
@@ -1,2 +1,6 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
1
+ var LegendStyle;
2
+ (function (LegendStyle) {
3
+ LegendStyle["vertical"] = "vertical";
4
+ LegendStyle["horizontal"] = "horizontal";
5
+ })(LegendStyle || (LegendStyle = {}));
6
+ export { LegendStyle };
@@ -1,19 +1,27 @@
1
1
  import { JSXInterface } from '../jsx';
2
- import { ResponsiveElement, TemplateResult, CSSResult, PropertyValues, ElementSize } from '@refinitiv-ui/core';
2
+ import { ResponsiveElement, TemplateResult, CSSResultGroup, PropertyValues, ElementSize } from '@refinitiv-ui/core';
3
3
  import { IChartApi, MouseEventParams } from 'lightweight-charts';
4
- import '../tooltip';
4
+ import '../tooltip/index.js';
5
5
  import type { InteractiveChartConfig, InteractiveChartSeries, RowLegend, SeriesList, SeriesDataItem } from './helpers/types';
6
- export { InteractiveChartConfig, InteractiveChartSeries };
6
+ import { LegendStyle } from './helpers/types.js';
7
+ export type { InteractiveChartConfig, InteractiveChartSeries, LegendStyle };
7
8
  /**
8
9
  * A charting component that allows you to create several use cases of financial chart.
9
10
  * By lightweight-charts library.
10
11
  * @slot legend - Slot to use for implementing custom legend.
12
+ * @fires initialized - Dispatched when chart is initialized
11
13
  */
12
14
  export declare class InteractiveChart extends ResponsiveElement {
15
+ /**
16
+ * Element version number
17
+ * @returns version number
18
+ */
19
+ static get version(): string;
13
20
  private static readonly CSS_COLOR_PREFIX;
14
21
  private static readonly DEFAULT_LINE_WIDTH;
15
22
  private static readonly DEFAULT_FILL_OPACITY;
16
23
  private static readonly LINE_STYLES;
24
+ private _legendStyle?;
17
25
  /**
18
26
  * Chart configurations for init chart
19
27
  * @type {InteractiveChartConfig}
@@ -28,10 +36,28 @@ export declare class InteractiveChart extends ResponsiveElement {
28
36
  */
29
37
  disabledJumpButton: boolean;
30
38
  /**
31
- * Set legend style i.e. `horizontal`, `vertical`. Default is `vertical`.
39
+ * @deprecated `legendstyle` attribute is deprecated, use `legend-style` instead.
40
+ * @ignore
41
+ * Set legend style i.e. `horizontal`, `vertical`. Default is `vertical`.
42
+ **/
43
+ deprecatedLegendStyle: LegendStyle | undefined;
44
+ /**
45
+ * Set legend style i.e. `horizontal`, `vertical`.
46
+ * @param {LegendStyle} value legend style value
47
+ * @type {"vertical" | "horizontal"} type of legend style
48
+ * @default vertical
49
+ **/
50
+ set legendStyle(value: LegendStyle);
51
+ get legendStyle(): LegendStyle;
52
+ /**
53
+ * Deprecation noticed, used to display a warning message
54
+ * when deprecated features are used.
55
+ */
56
+ private deprecationNotice;
57
+ /**
58
+ * @ignore
59
+ * Array of series instances in chart
32
60
  */
33
- legendStyle: 'vertical' | 'horizontal';
34
- /** Array of series instances in chart */
35
61
  seriesList: SeriesList[];
36
62
  private jumpButtonInitialized;
37
63
  private legendInitialized;
@@ -328,21 +354,12 @@ export declare class InteractiveChart extends ResponsiveElement {
328
354
  */
329
355
  colors(): string[];
330
356
  /**
331
- * Merges properties of one object into another.
332
- * @param a Object to merge into
333
- * @param b Object to merge from
334
- * @param force Force apply the change
335
- * @param record Record of objects, to check for circular references
336
- * @returns {void}
337
- */
338
- private mergeObjects;
339
- /**
340
- * A `CSSResult` that will be used
357
+ * A `CSSResultGroup` that will be used
341
358
  * to style the host, slotted children
342
359
  * and the internal template of the element.
343
360
  * @return CSS template
344
361
  */
345
- static get styles(): CSSResult | CSSResult[];
362
+ static get styles(): CSSResultGroup;
346
363
  /**
347
364
  * A `TemplateResult` that will be used
348
365
  * to render the updated internal template.
@@ -361,4 +378,6 @@ declare global {
361
378
  'ef-interactive-chart': Partial<InteractiveChart> | JSXInterface.HTMLAttributes<InteractiveChart>;
362
379
  }
363
380
  }
364
- }
381
+ }
382
+
383
+ export {};