@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
@@ -71,9 +71,8 @@ const getLegendFillStyle = (dataset, usePointStyle, solidFill = false) => {
71
71
  return getLegendColorDontUsePointStyle(dataset, solidFill);
72
72
  }
73
73
  };
74
- const helpers = {
74
+ const legendHelper = {
75
75
  getLegendFillStyle,
76
76
  getLegendStrokeStyle
77
77
  };
78
- export { helpers };
79
- //# sourceMappingURL=legend.js.map
78
+ export { legendHelper };
@@ -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,25 +1,45 @@
1
1
  /// <reference types="chart.js" />
2
- import type { ElementSize } from '@refinitiv-ui/core';
3
- export interface ResizeEvent extends CustomEvent {
4
- detail: ElementSize;
5
- }
6
- export declare type MergeObject = {
7
- [key: string]: any;
8
- };
9
2
  export declare type DatasetColors = {
10
3
  solid: string | string[];
11
4
  opaque: string | string[];
12
5
  };
13
6
  export declare type ChartDataSetsColor = Chart.ChartColor | Chart.ChartColor[] | Chart.Scriptable<Chart.ChartColor> | undefined;
14
- export interface ChartConfig extends Chart.ChartConfiguration {
15
- }
16
- export interface ChartUpdateProps extends Chart.ChartUpdateProps {
17
- }
7
+ export declare type ChartConfig = Chart.ChartConfiguration;
8
+ export declare type ChartUpdateProps = Chart.ChartUpdateProps;
18
9
  export interface MetaData {
19
10
  _chart: Chart;
20
11
  _datasetIndex: number;
21
12
  _index: number;
22
- _view: any;
13
+ _model: Model;
14
+ _view: Model;
15
+ _xScale: Chart.ChartScales;
16
+ _yScale: Chart.ChartScales;
17
+ hidden?: boolean;
18
+ }
19
+ interface Model {
20
+ backgroundColor: string;
21
+ borderAlign?: Chart.BorderAlignment;
22
+ borderColor: string;
23
+ borderWidth?: number;
24
+ circumference?: number;
25
+ controlPointNextX: number;
26
+ controlPointNextY: number;
27
+ controlPointPreviousX: number;
28
+ controlPointPreviousY: number;
29
+ endAngle?: number;
30
+ hitRadius: number;
31
+ innerRadius?: number;
32
+ outerRadius?: number;
33
+ pointStyle: string;
34
+ radius: string;
35
+ skip?: boolean;
36
+ startAngle?: number;
37
+ steppedLine?: undefined;
38
+ tension: number;
39
+ x: number;
40
+ y: number;
41
+ base: number;
42
+ head: number;
23
43
  }
24
44
  export interface ChartHelpers {
25
45
  draw(): void;
@@ -32,10 +52,18 @@ export interface ChartJS extends Chart {
32
52
  defaultColor: string;
33
53
  defaultLineHeight: number;
34
54
  };
55
+ scale: {
56
+ gridLines: {
57
+ color: string;
58
+ zeroLineColor: string;
59
+ };
60
+ };
35
61
  [key: string]: any;
36
62
  };
37
63
  helpers: {
64
+ getHoverColor(value: string): string;
38
65
  [key: string]: any;
39
66
  };
40
67
  isDatasetVisible(isDatasetVisible: number): boolean;
41
68
  }
69
+ export {};
@@ -1,2 +1 @@
1
1
  export {};
2
- //# sourceMappingURL=types.js.map
@@ -1,16 +1,26 @@
1
1
  import { JSXInterface } from '../jsx';
2
2
  /// <reference types="chart.js" />
3
- import { BasicElement, PropertyValues, TemplateResult, CSSResult } from '@refinitiv-ui/core';
3
+ import { BasicElement, PropertyValues, TemplateResult, CSSResultGroup } from '@refinitiv-ui/core';
4
4
  import 'chart.js/dist/Chart.bundle.min.js';
5
- import { Header } from '../header';
6
- import '../header';
7
- import '../layout';
8
- import { ChartJS, ChartConfig, ChartUpdateProps, MergeObject, DatasetColors } from './helpers/types';
9
- export type { ChartConfig };
5
+ import type { ChartJS, ChartConfig, ChartUpdateProps, DatasetColors } from './helpers/types';
6
+ import type { Header } from '../header';
7
+ import '../header/index.js';
8
+ import '../layout/index.js';
9
+ declare global {
10
+ interface Window {
11
+ Chart: ChartJS;
12
+ }
13
+ }
14
+ export type { ChartConfig, ChartUpdateProps };
10
15
  /**
11
- * Charting component that use chartjs library
16
+ * Charting component that use ChartJS library
12
17
  */
13
18
  export declare class Chart extends BasicElement {
19
+ /**
20
+ * Element version number
21
+ * @returns version number
22
+ */
23
+ static get version(): string;
14
24
  /**
15
25
  * Chart.js object
16
26
  */
@@ -31,21 +41,21 @@ export declare class Chart extends BasicElement {
31
41
  protected titleElement: Header;
32
42
  /**
33
43
  * Required properties, needed for chart to work correctly.
34
- * @returns {ChartConfig} config
44
+ * @returns config
35
45
  */
36
46
  protected get requiredConfig(): ChartConfig;
37
47
  /**
38
48
  * Safely returns the chart title
39
- * @returns {string} chart title
49
+ * @returns chart title
40
50
  */
41
51
  protected get chartTitle(): string;
42
52
  /**
43
53
  * Safely returns a dataset array
44
- * @returns {Chart.ChartDataSets[]} dataset array
54
+ * @returns dataset array
45
55
  */
46
56
  protected get datasets(): Chart.ChartDataSets[];
47
57
  /**
48
- * List of avalaible chart colors
58
+ * List of available chart colors
49
59
  * @type {string[]}
50
60
  * @returns {string[]} List of available chart colors
51
61
  */
@@ -83,7 +93,7 @@ export declare class Chart extends BasicElement {
83
93
  * Get as CSS variable and tries to convert it into a usable number
84
94
  * @returns {(number|undefined)} The value as a number, or, undefined if NaN.
85
95
  */
86
- protected cssVarAsNumber(...args: string[] | number[]): number | undefined;
96
+ protected cssVarAsNumber(...args: string[]): number | undefined;
87
97
  /**
88
98
  * Generates the legend labels on a given chart
89
99
  * @param {ChartJS} chart Chart.js instance
@@ -95,15 +105,6 @@ export declare class Chart extends BasicElement {
95
105
  * @returns {void}
96
106
  */
97
107
  protected mergeConfigs(): void;
98
- /**
99
- * Merges properties of one object into another.
100
- * @param {MergeObject} a Object to merge into
101
- * @param {MergeObject} b Object to merge from
102
- * @param {boolean} force Force apply the change
103
- * @param {object[]} record Record of objects, to check for circular references
104
- * @returns {void}
105
- */
106
- protected mergeObjects(a: MergeObject, b: MergeObject, force?: boolean, record?: object[]): void;
107
108
  /**
108
109
  * Themes the passed-in configuration object
109
110
  * @returns {void}
@@ -136,9 +137,9 @@ export declare class Chart extends BasicElement {
136
137
  protected createChart(): void;
137
138
  /**
138
139
  * Destroys the chart.js object
139
- * @returns {void}
140
+ * @returns True if a chart object has been destroyed
140
141
  */
141
- protected destroyChart(): void;
142
+ protected destroyChart(): boolean;
142
143
  /**
143
144
  * Re-renders the chart based on its config
144
145
  * @param {ChartUpdateProps} config Additional configuration object for the update process.
@@ -152,12 +153,17 @@ export declare class Chart extends BasicElement {
152
153
  */
153
154
  updateChart(config?: ChartUpdateProps): void;
154
155
  /**
155
- * A `CSSResult` that will be used
156
+ * A `CSSResultGroup` that will be used
156
157
  * to style the host, slotted children
157
158
  * and the internal template of the element.
158
159
  * @return CSS template
159
160
  */
160
- static get styles(): CSSResult | CSSResult[];
161
+ static get styles(): CSSResultGroup;
162
+ /**
163
+ * Handles resize event of the chart region
164
+ * @returns {void}
165
+ */
166
+ protected onResize(): void;
161
167
  /**
162
168
  * A `TemplateResult` that will be used
163
169
  * to render the updated internal template.
@@ -176,4 +182,6 @@ declare global {
176
182
  'ef-chart': Partial<Chart> | JSXInterface.HTMLAttributes<Chart>;
177
183
  }
178
184
  }
179
- }
185
+ }
186
+
187
+ export {};
@@ -1,17 +1,16 @@
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, html, css, query, customElement, property } from '@refinitiv-ui/core';
8
- import { color as parseColor } from '@refinitiv-ui/utils';
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 { query } from '@refinitiv-ui/core/lib/decorators/query.js';
6
+ import { VERSION } from '../version.js';
7
+ import { color as parseColor } from '@refinitiv-ui/utils/lib/color.js';
9
8
  import 'chart.js/dist/Chart.bundle.min.js';
10
- import '../header';
11
- import '../layout';
12
- import { helpers as legendHelper } from './helpers/legend';
9
+ import { legendHelper, merge } from './helpers/index.js';
10
+ import '../header/index.js';
11
+ import '../layout/index.js';
13
12
  // Register plugins
14
- import doughnutCenterPlugin from './plugins/doughnut-center-label';
13
+ import doughnutCenterPlugin from './plugins/doughnut-center-label.js';
15
14
  window.Chart.pluginService.register(doughnutCenterPlugin);
16
15
  const CSS_COLOR_PREFIX = '--chart-color-';
17
16
  const CHART_TYPE_OPAQUE = ['line', 'bubble', 'radar', 'polarArea'];
@@ -32,9 +31,10 @@ const ELF_CHART_CONFIG = {
32
31
  }
33
32
  }
34
33
  };
34
+ // eslint-disable-next-line @typescript-eslint/no-unsafe-call
35
35
  window.Chart.helpers.merge(DEFAULT_CHART_CONFIG, ELF_CHART_CONFIG);
36
36
  /**
37
- * Charting component that use chartjs library
37
+ * Charting component that use ChartJS library
38
38
  */
39
39
  let Chart = class Chart extends BasicElement {
40
40
  constructor() {
@@ -54,16 +54,20 @@ let Chart = class Chart extends BasicElement {
54
54
  * @returns {Chart.ChartLegendLabelItem[]} Array of label configurations
55
55
  */
56
56
  this.generateLegendLabels = (chart) => {
57
- var _a, _b;
57
+ var _a, _b, _c, _d;
58
58
  if (!((_a = this.config) === null || _a === void 0 ? void 0 : _a.type)) {
59
59
  return [];
60
60
  }
61
+ const chartOption = DEFAULT_CHART_CONFIG[this.config.type];
61
62
  if (this.datasets.length
62
- && DEFAULT_CHART_CONFIG[this.config.type].legend
63
+ && chartOption.legend
63
64
  && Array.isArray(this.datasets[0].backgroundColor)) {
64
- const legends = DEFAULT_CHART_CONFIG[this.config.type].legend.labels.generateLabels(chart);
65
- // Customize for doughnut chart change border color to backgroud color
66
- if (['pie', 'doughnut'].includes((_b = this.config) === null || _b === void 0 ? void 0 : _b.type) && this.datasets.length > 1) {
65
+ let legends = [];
66
+ if ((_b = chartOption.legend.labels) === null || _b === void 0 ? void 0 : _b.generateLabels) {
67
+ legends = (_c = chartOption.legend.labels) === null || _c === void 0 ? void 0 : _c.generateLabels(chart);
68
+ }
69
+ // Customize for doughnut chart change border color to background color
70
+ if (['pie', 'doughnut'].includes((_d = this.config) === null || _d === void 0 ? void 0 : _d.type) && this.datasets.length > 1) {
67
71
  legends.forEach((label) => {
68
72
  label.strokeStyle = label.fillStyle;
69
73
  });
@@ -91,14 +95,21 @@ let Chart = class Chart extends BasicElement {
91
95
  });
92
96
  };
93
97
  }
98
+ /**
99
+ * Element version number
100
+ * @returns version number
101
+ */
102
+ static get version() {
103
+ return VERSION;
104
+ }
94
105
  /**
95
106
  * Required properties, needed for chart to work correctly.
96
- * @returns {ChartConfig} config
107
+ * @returns config
97
108
  */
98
109
  get requiredConfig() {
99
110
  return {
100
111
  options: {
101
- responsive: true,
112
+ responsive: false,
102
113
  maintainAspectRatio: false,
103
114
  title: {
104
115
  display: false
@@ -108,7 +119,7 @@ let Chart = class Chart extends BasicElement {
108
119
  }
109
120
  /**
110
121
  * Safely returns the chart title
111
- * @returns {string} chart title
122
+ * @returns chart title
112
123
  */
113
124
  get chartTitle() {
114
125
  var _a, _b, _c;
@@ -120,14 +131,14 @@ let Chart = class Chart extends BasicElement {
120
131
  }
121
132
  /**
122
133
  * Safely returns a dataset array
123
- * @returns {Chart.ChartDataSets[]} dataset array
134
+ * @returns dataset array
124
135
  */
125
136
  get datasets() {
126
137
  var _a, _b;
127
138
  return ((_b = (_a = this.config) === null || _a === void 0 ? void 0 : _a.data) === null || _b === void 0 ? void 0 : _b.datasets) || [];
128
139
  }
129
140
  /**
130
- * List of avalaible chart colors
141
+ * List of available chart colors
131
142
  * @type {string[]}
132
143
  * @returns {string[]} List of available chart colors
133
144
  */
@@ -135,7 +146,7 @@ let Chart = class Chart extends BasicElement {
135
146
  let color;
136
147
  let index = 0;
137
148
  const colors = [];
138
- while ((color = this.getComputedVariable(CSS_COLOR_PREFIX + (index += 1)))) {
149
+ while ((color = this.getComputedVariable(`${CSS_COLOR_PREFIX}${++index}`))) {
139
150
  colors.push(color);
140
151
  }
141
152
  return colors;
@@ -247,31 +258,8 @@ let Chart = class Chart extends BasicElement {
247
258
  if (!this.config) {
248
259
  return;
249
260
  }
250
- this.mergeObjects(this.config, this.themableConfig);
251
- this.mergeObjects(this.config, this.requiredConfig, true);
252
- }
253
- /**
254
- * Merges properties of one object into another.
255
- * @param {MergeObject} a Object to merge into
256
- * @param {MergeObject} b Object to merge from
257
- * @param {boolean} force Force apply the change
258
- * @param {object[]} record Record of objects, to check for circular references
259
- * @returns {void}
260
- */
261
- mergeObjects(a, b, force = false, record = []) {
262
- let value;
263
- let isObject;
264
- Object.keys(b).forEach(key => {
265
- value = b[key];
266
- isObject = value && value.toString() === '[object Object]';
267
- if (!(key in a) || (force && !isObject)) {
268
- a[key] = b[key];
269
- }
270
- if (isObject && !record.includes(value)) {
271
- record.push(b[key]);
272
- this.mergeObjects(a[key], b[key], force, record);
273
- }
274
- });
261
+ merge(this.config, this.themableConfig);
262
+ merge(this.config, this.requiredConfig, true);
275
263
  }
276
264
  /**
277
265
  * Themes the passed-in configuration object
@@ -281,7 +269,7 @@ let Chart = class Chart extends BasicElement {
281
269
  this.mergeConfigs();
282
270
  const extendColorsIfRequired = (currentColors, infoColors) => {
283
271
  if (Array.isArray(currentColors) && Array.isArray(infoColors) && currentColors.length < infoColors.length) {
284
- this.mergeObjects(currentColors, infoColors);
272
+ merge(currentColors, infoColors);
285
273
  }
286
274
  };
287
275
  this.datasets.forEach((dataset) => {
@@ -371,24 +359,32 @@ let Chart = class Chart extends BasicElement {
371
359
  createChart() {
372
360
  const ctx = this.canvas.getContext('2d');
373
361
  if (ctx && this.config) {
362
+ // Are we reusing an old chart canvas?
363
+ const isReusingCanvas = this.destroyChart();
374
364
  // Preparing the resources before create chart
375
- this.destroyChart();
376
365
  this.decorateConfig();
377
366
  this.manageTitle();
378
367
  // Create chart
379
368
  this.chart = new window.Chart(ctx, this.config);
369
+ if (isReusingCanvas) {
370
+ // If we're reusing an old chart canvas, we need to resize it.
371
+ // Destroying a chart has some strange side-effects on the canvas.
372
+ this.chart.resize();
373
+ }
380
374
  }
381
375
  }
382
376
  /**
383
377
  * Destroys the chart.js object
384
- * @returns {void}
378
+ * @returns True if a chart object has been destroyed
385
379
  */
386
380
  destroyChart() {
387
381
  if (this.chart) {
388
382
  // Destroy the chart
389
383
  this.chart.destroy();
390
384
  this.chart = null;
385
+ return true;
391
386
  }
387
+ return false;
392
388
  }
393
389
  /**
394
390
  * Re-renders the chart based on its config
@@ -417,7 +413,7 @@ let Chart = class Chart extends BasicElement {
417
413
  this.renderChart(config);
418
414
  }
419
415
  /**
420
- * A `CSSResult` that will be used
416
+ * A `CSSResultGroup` that will be used
421
417
  * to style the host, slotted children
422
418
  * and the internal template of the element.
423
419
  * @return CSS template
@@ -455,6 +451,14 @@ let Chart = class Chart extends BasicElement {
455
451
  }
456
452
  `;
457
453
  }
454
+ /**
455
+ * Handles resize event of the chart region
456
+ * @returns {void}
457
+ */
458
+ onResize() {
459
+ var _a;
460
+ (_a = this.chart) === null || _a === void 0 ? void 0 : _a.resize();
461
+ }
458
462
  /**
459
463
  * A `TemplateResult` that will be used
460
464
  * to render the updated internal template.
@@ -464,7 +468,7 @@ let Chart = class Chart extends BasicElement {
464
468
  return html `
465
469
  <ef-layout flex container>
466
470
  <ef-header></ef-header>
467
- <ef-layout part="chart">
471
+ <ef-layout part="chart" @resize="${this.onResize}">
468
472
  <canvas id="canvas"></canvas>
469
473
  </ef-layout>
470
474
  </ef-layout>`;
@@ -485,4 +489,3 @@ Chart = __decorate([
485
489
  })
486
490
  ], Chart);
487
491
  export { Chart };
488
- //# sourceMappingURL=index.js.map
@@ -21,8 +21,8 @@ const drawItemBorder = function (chart, active) {
21
21
  const datasets = chart.data.datasets[chartItem._datasetIndex];
22
22
  vm.backgroundColor = datasets.backgroundColor[chartItem._index];
23
23
  vm.backgroundColor = CHART.helpers.getHoverColor(vm.backgroundColor); // we need to make color bolder
24
- vm.borderWidth = datasets.borderWidth || ((_c = (_b = (_a = chart.config.options) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.arc) === null || _c === void 0 ? void 0 : _c.borderWidth);
25
- vm.borderColor = getComputedStyle(chart.canvas).getPropertyValue('--doughnut-border-color') || CHART.defaults.global.defaultFontColor;
24
+ vm.borderWidth = (datasets.borderWidth || ((_c = (_b = (_a = chart.config.options) === null || _a === void 0 ? void 0 : _a.elements) === null || _b === void 0 ? void 0 : _b.arc) === null || _c === void 0 ? void 0 : _c.borderWidth));
25
+ vm.borderColor = (getComputedStyle(chart.canvas).getPropertyValue('--doughnut-border-color') || CHART.defaults.global.defaultFontColor);
26
26
  const sA = vm.startAngle;
27
27
  const eA = vm.endAngle;
28
28
  if (ctx) {
@@ -133,10 +133,10 @@ const plugins = {
133
133
  for (let i = 0; i < texts.length; i++) {
134
134
  let targetFont;
135
135
  if (texts[i].bold) {
136
- targetFont = 'bold ' + fontSizeToUse * fontSizeHeaderRatio + 'px ' + defaultFontStyle;
136
+ targetFont = `bold ${fontSizeToUse * fontSizeHeaderRatio}px ${defaultFontStyle || ''}`;
137
137
  }
138
138
  else {
139
- targetFont = fontSizeToUse + 'px ' + defaultFontStyle;
139
+ targetFont = `${fontSizeToUse}px ${defaultFontStyle || ''}`;
140
140
  }
141
141
  ctx.font = targetFont;
142
142
  let targetText = texts[i].label;
@@ -194,4 +194,3 @@ const plugins = {
194
194
  }
195
195
  };
196
196
  export default plugins;
197
- //# sourceMappingURL=doughnut-center-label.js.map
@@ -21,13 +21,13 @@
21
21
  "name": "readonly",
22
22
  "description": "Set readonly state",
23
23
  "type": "boolean",
24
- "default": "\"false\""
24
+ "default": "false"
25
25
  },
26
26
  {
27
27
  "name": "disabled",
28
28
  "description": "Set disabled state",
29
29
  "type": "boolean",
30
- "default": "\"false\""
30
+ "default": "false"
31
31
  }
32
32
  ],
33
33
  "properties": [
@@ -50,14 +50,14 @@
50
50
  "attribute": "readonly",
51
51
  "description": "Set readonly state",
52
52
  "type": "boolean",
53
- "default": "\"false\""
53
+ "default": "false"
54
54
  },
55
55
  {
56
56
  "name": "disabled",
57
57
  "attribute": "disabled",
58
58
  "description": "Set disabled state",
59
59
  "type": "boolean",
60
- "default": "\"false\""
60
+ "default": "false"
61
61
  }
62
62
  ],
63
63
  "events": [
@@ -0,0 +1,18 @@
1
+ # ef-checkbox
2
+
3
+ Form control for selecting one or several options
4
+
5
+ ## Properties
6
+
7
+ | Property | Attribute | Type | Default | Description |
8
+ |-----------------|-----------------|-----------|---------|----------------------------|
9
+ | `checked` | `checked` | `boolean` | false | Value of checkbox |
10
+ | `disabled` | `disabled` | `boolean` | false | Set disabled state |
11
+ | `indeterminate` | `indeterminate` | `boolean` | false | Set state to indeterminate |
12
+ | `readonly` | `readonly` | `boolean` | false | Set readonly state |
13
+
14
+ ## Events
15
+
16
+ | Event | Description |
17
+ |-------------------|--------------------------------------------|
18
+ | `checked-changed` | Fired when the `checked` property changes. |
@@ -1,6 +1,6 @@
1
1
  import { JSXInterface } from '../jsx';
2
- import { ControlElement, TemplateResult, CSSResult, PropertyValues } from '@refinitiv-ui/core';
3
- import '../icon';
2
+ import { ControlElement, TemplateResult, CSSResultGroup, PropertyValues } from '@refinitiv-ui/core';
3
+ import '../icon/index.js';
4
4
  /**
5
5
  * Form control for selecting one or several options
6
6
  * @fires checked-changed - Fired when the `checked` property changes.
@@ -13,30 +13,43 @@ import '../icon';
13
13
  */
14
14
  export declare class Checkbox extends ControlElement {
15
15
  /**
16
- * A `CSSResult` that will be used
16
+ * Element version number
17
+ * @returns version number
18
+ */
19
+ static get version(): string;
20
+ protected readonly defaultRole: string | null;
21
+ /**
22
+ * A `CSSResultGroup` that will be used
17
23
  * to style the host, slotted children
18
24
  * and the internal template of the element.
19
- * @return {CSSResult | CSSResult[]} CSS template
25
+ * @return CSS template
20
26
  */
21
- static get styles(): CSSResult | CSSResult[];
27
+ static get styles(): CSSResultGroup;
28
+ private _checked;
22
29
  /**
23
30
  * Value of checkbox
31
+ * @param value new checked value
32
+ * @default false
24
33
  */
25
- checked: boolean;
34
+ set checked(value: boolean);
35
+ get checked(): boolean;
36
+ private _indeterminate;
26
37
  /**
27
38
  * Set state to indeterminate
39
+ * @param value new indeterminate value
40
+ * @default false
28
41
  */
29
- indeterminate: boolean;
42
+ set indeterminate(value: boolean);
43
+ get indeterminate(): boolean;
30
44
  /**
31
- * Getter for label
45
+ * Indicates current state of checkbox
46
+ * @ignore
32
47
  */
33
- private labelEl;
48
+ ariaChecked: string;
34
49
  /**
35
- * Updates the element
36
- * @param changedProperties Properties that has changed
37
- * @returns {void}
50
+ * Getter for label
38
51
  */
39
- protected update(changedProperties: PropertyValues): void;
52
+ private labelEl;
40
53
  /**
41
54
  * Called once after the component is first rendered
42
55
  * @param changedProperties map of changed properties with old values
@@ -79,4 +92,6 @@ declare global {
79
92
  'ef-checkbox': Partial<Checkbox> | JSXInterface.ControlHTMLAttributes<Checkbox>;
80
93
  }
81
94
  }
82
- }
95
+ }
96
+
97
+ export {};