@refinitiv-ui/elements 5.3.3 → 5.3.4

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 (558) hide show
  1. package/lib/accordion/custom-elements.json +49 -0
  2. package/lib/accordion/index.d.ts +76 -0
  3. package/lib/accordion/index.js +139 -0
  4. package/lib/accordion/themes/halo/dark/index.js +3 -0
  5. package/lib/accordion/themes/halo/light/index.js +3 -0
  6. package/lib/accordion/themes/solar/charcoal/index.js +3 -0
  7. package/lib/accordion/themes/solar/pearl/index.js +3 -0
  8. package/lib/appstate-bar/custom-elements.json +49 -0
  9. package/lib/appstate-bar/index.d.ts +65 -0
  10. package/lib/appstate-bar/index.js +103 -0
  11. package/lib/appstate-bar/themes/halo/dark/index.js +3 -0
  12. package/lib/appstate-bar/themes/halo/light/index.js +3 -0
  13. package/lib/appstate-bar/themes/solar/charcoal/index.js +3 -0
  14. package/lib/appstate-bar/themes/solar/pearl/index.js +3 -0
  15. package/lib/autosuggest/custom-elements.json +223 -0
  16. package/lib/autosuggest/helpers/const.d.ts +2 -0
  17. package/lib/autosuggest/helpers/const.js +3 -0
  18. package/lib/autosuggest/helpers/types.d.ts +54 -0
  19. package/lib/autosuggest/helpers/types.js +1 -0
  20. package/lib/autosuggest/helpers/utils.d.ts +39 -0
  21. package/lib/autosuggest/helpers/utils.js +76 -0
  22. package/lib/autosuggest/index.d.ts +533 -0
  23. package/lib/autosuggest/index.js +1248 -0
  24. package/lib/autosuggest/themes/halo/dark/index.js +5 -0
  25. package/lib/autosuggest/themes/halo/light/index.js +5 -0
  26. package/lib/autosuggest/themes/solar/charcoal/index.js +5 -0
  27. package/lib/autosuggest/themes/solar/pearl/index.js +5 -0
  28. package/lib/button/custom-elements.json +119 -0
  29. package/lib/button/index.d.ts +132 -0
  30. package/lib/button/index.js +213 -0
  31. package/lib/button/themes/halo/dark/index.js +3 -0
  32. package/lib/button/themes/halo/light/index.js +3 -0
  33. package/lib/button/themes/solar/charcoal/index.js +3 -0
  34. package/lib/button/themes/solar/pearl/index.js +3 -0
  35. package/lib/button-bar/custom-elements.json +26 -0
  36. package/lib/button-bar/index.d.ts +76 -0
  37. package/lib/button-bar/index.js +157 -0
  38. package/lib/button-bar/themes/halo/dark/index.js +3 -0
  39. package/lib/button-bar/themes/halo/light/index.js +3 -0
  40. package/lib/button-bar/themes/solar/charcoal/index.js +3 -0
  41. package/lib/button-bar/themes/solar/pearl/index.js +3 -0
  42. package/lib/calendar/custom-elements.json +199 -0
  43. package/lib/calendar/index.d.ts +321 -0
  44. package/lib/calendar/index.js +926 -0
  45. package/lib/calendar/locales.d.ts +31 -0
  46. package/lib/calendar/locales.js +144 -0
  47. package/lib/calendar/themes/halo/dark/index.js +3 -0
  48. package/lib/calendar/themes/halo/light/index.js +3 -0
  49. package/lib/calendar/themes/solar/charcoal/index.js +3 -0
  50. package/lib/calendar/themes/solar/pearl/index.js +3 -0
  51. package/lib/calendar/types.d.ts +33 -0
  52. package/lib/calendar/types.js +6 -0
  53. package/lib/calendar/utils.d.ts +12 -0
  54. package/lib/calendar/utils.js +17 -0
  55. package/lib/canvas/custom-elements.json +69 -0
  56. package/lib/canvas/index.d.ts +100 -0
  57. package/lib/canvas/index.js +175 -0
  58. package/lib/canvas/themes/halo/dark/index.js +2 -0
  59. package/lib/canvas/themes/halo/light/index.js +2 -0
  60. package/lib/canvas/themes/solar/charcoal/index.js +2 -0
  61. package/lib/canvas/themes/solar/pearl/index.js +2 -0
  62. package/lib/card/custom-elements.json +59 -0
  63. package/lib/card/helpers/types.d.ts +12 -0
  64. package/lib/card/helpers/types.js +1 -0
  65. package/lib/card/index.d.ts +140 -0
  66. package/lib/card/index.js +247 -0
  67. package/lib/card/themes/halo/dark/index.js +5 -0
  68. package/lib/card/themes/halo/light/index.js +5 -0
  69. package/lib/card/themes/solar/charcoal/index.js +5 -0
  70. package/lib/card/themes/solar/pearl/index.js +5 -0
  71. package/lib/chart/custom-elements.json +42 -0
  72. package/lib/chart/helpers/index.d.ts +2 -0
  73. package/lib/chart/helpers/index.js +2 -0
  74. package/lib/chart/helpers/legend.d.ts +5 -0
  75. package/lib/chart/helpers/legend.js +78 -0
  76. package/lib/chart/helpers/merge.d.ts +15 -0
  77. package/lib/chart/helpers/merge.js +28 -0
  78. package/lib/chart/helpers/types.d.ts +69 -0
  79. package/lib/chart/helpers/types.js +1 -0
  80. package/lib/chart/index.d.ts +187 -0
  81. package/lib/chart/index.js +493 -0
  82. package/lib/chart/plugins/doughnut-center-label.d.ts +3 -0
  83. package/lib/chart/plugins/doughnut-center-label.js +196 -0
  84. package/lib/chart/themes/halo/dark/index.js +4 -0
  85. package/lib/chart/themes/halo/light/index.js +4 -0
  86. package/lib/chart/themes/solar/charcoal/index.js +4 -0
  87. package/lib/chart/themes/solar/pearl/index.js +4 -0
  88. package/lib/checkbox/custom-elements.json +71 -0
  89. package/lib/checkbox/index.d.ts +89 -0
  90. package/lib/checkbox/index.js +170 -0
  91. package/lib/checkbox/themes/halo/dark/index.js +4 -0
  92. package/lib/checkbox/themes/halo/light/index.js +4 -0
  93. package/lib/checkbox/themes/solar/charcoal/index.js +4 -0
  94. package/lib/checkbox/themes/solar/pearl/index.js +4 -0
  95. package/lib/clock/custom-elements.json +108 -0
  96. package/lib/clock/index.d.ts +309 -0
  97. package/lib/clock/index.js +564 -0
  98. package/lib/clock/themes/halo/dark/index.js +2 -0
  99. package/lib/clock/themes/halo/light/index.js +2 -0
  100. package/lib/clock/themes/solar/charcoal/index.js +2 -0
  101. package/lib/clock/themes/solar/pearl/index.js +2 -0
  102. package/lib/clock/utils/TickManager.d.ts +14 -0
  103. package/lib/clock/utils/TickManager.js +66 -0
  104. package/lib/clock/utils/timestamps.d.ts +6 -0
  105. package/lib/clock/utils/timestamps.js +6 -0
  106. package/lib/collapse/custom-elements.json +79 -0
  107. package/lib/collapse/index.d.ts +119 -0
  108. package/lib/collapse/index.js +199 -0
  109. package/lib/collapse/themes/halo/dark/index.js +5 -0
  110. package/lib/collapse/themes/halo/light/index.js +5 -0
  111. package/lib/collapse/themes/solar/charcoal/index.js +5 -0
  112. package/lib/collapse/themes/solar/pearl/index.js +5 -0
  113. package/lib/color-dialog/custom-elements.json +193 -0
  114. package/lib/color-dialog/elements/color-palettes.d.ts +52 -0
  115. package/lib/color-dialog/elements/color-palettes.js +105 -0
  116. package/lib/color-dialog/elements/grayscale-palettes.d.ts +67 -0
  117. package/lib/color-dialog/elements/grayscale-palettes.js +164 -0
  118. package/lib/color-dialog/elements/palettes.d.ts +58 -0
  119. package/lib/color-dialog/elements/palettes.js +119 -0
  120. package/lib/color-dialog/helpers/color-helpers.d.ts +62 -0
  121. package/lib/color-dialog/helpers/color-helpers.js +258 -0
  122. package/lib/color-dialog/helpers/value-model.d.ts +75 -0
  123. package/lib/color-dialog/helpers/value-model.js +139 -0
  124. package/lib/color-dialog/index.d.ts +232 -0
  125. package/lib/color-dialog/index.js +457 -0
  126. package/lib/color-dialog/themes/halo/dark/index.js +7 -0
  127. package/lib/color-dialog/themes/halo/light/index.js +7 -0
  128. package/lib/color-dialog/themes/solar/charcoal/index.js +7 -0
  129. package/lib/color-dialog/themes/solar/pearl/index.js +7 -0
  130. package/lib/combo-box/custom-elements.json +207 -0
  131. package/lib/combo-box/helpers/filter.d.ts +10 -0
  132. package/lib/combo-box/helpers/filter.js +29 -0
  133. package/lib/combo-box/helpers/keyboard-event.d.ts +17 -0
  134. package/lib/combo-box/helpers/keyboard-event.js +19 -0
  135. package/lib/combo-box/helpers/types.d.ts +11 -0
  136. package/lib/combo-box/helpers/types.js +1 -0
  137. package/lib/combo-box/index.d.ts +523 -0
  138. package/lib/combo-box/index.js +1146 -0
  139. package/lib/combo-box/themes/halo/dark/index.js +8 -0
  140. package/lib/combo-box/themes/halo/light/index.js +8 -0
  141. package/lib/combo-box/themes/solar/charcoal/index.js +8 -0
  142. package/lib/combo-box/themes/solar/pearl/index.js +8 -0
  143. package/lib/counter/custom-elements.json +35 -0
  144. package/lib/counter/index.d.ts +89 -0
  145. package/lib/counter/index.js +155 -0
  146. package/lib/counter/themes/halo/dark/index.js +3 -0
  147. package/lib/counter/themes/halo/light/index.js +3 -0
  148. package/lib/counter/themes/solar/charcoal/index.js +3 -0
  149. package/lib/counter/themes/solar/pearl/index.js +3 -0
  150. package/lib/counter/utils.d.ts +13 -0
  151. package/lib/counter/utils.js +52 -0
  152. package/lib/datetime-picker/custom-elements.json +333 -0
  153. package/lib/datetime-picker/index.d.ts +498 -0
  154. package/lib/datetime-picker/index.js +1164 -0
  155. package/lib/datetime-picker/locales.d.ts +8 -0
  156. package/lib/datetime-picker/locales.js +46 -0
  157. package/lib/datetime-picker/themes/halo/dark/index.js +7 -0
  158. package/lib/datetime-picker/themes/halo/light/index.js +7 -0
  159. package/lib/datetime-picker/themes/solar/charcoal/index.js +7 -0
  160. package/lib/datetime-picker/themes/solar/pearl/index.js +7 -0
  161. package/lib/datetime-picker/types.d.ts +3 -0
  162. package/lib/datetime-picker/types.js +1 -0
  163. package/lib/datetime-picker/utils.d.ts +55 -0
  164. package/lib/datetime-picker/utils.js +92 -0
  165. package/lib/dialog/custom-elements.json +136 -0
  166. package/lib/dialog/draggable-element.d.ts +14 -0
  167. package/lib/dialog/draggable-element.js +221 -0
  168. package/lib/dialog/index.d.ts +199 -0
  169. package/lib/dialog/index.js +331 -0
  170. package/lib/dialog/themes/halo/dark/index.js +7 -0
  171. package/lib/dialog/themes/halo/light/index.js +7 -0
  172. package/lib/dialog/themes/solar/charcoal/index.js +7 -0
  173. package/lib/dialog/themes/solar/pearl/index.js +7 -0
  174. package/lib/email-field/custom-elements.json +199 -0
  175. package/lib/email-field/index.d.ts +152 -0
  176. package/lib/email-field/index.js +287 -0
  177. package/lib/email-field/themes/halo/dark/index.js +3 -0
  178. package/lib/email-field/themes/halo/light/index.js +3 -0
  179. package/lib/email-field/themes/solar/charcoal/index.js +3 -0
  180. package/lib/email-field/themes/solar/pearl/index.js +3 -0
  181. package/lib/events.d.ts +121 -0
  182. package/lib/events.js +2 -0
  183. package/lib/flag/custom-elements.json +35 -0
  184. package/lib/flag/index.d.ts +94 -0
  185. package/lib/flag/index.js +168 -0
  186. package/lib/flag/themes/halo/dark/index.js +2 -0
  187. package/lib/flag/themes/halo/light/index.js +2 -0
  188. package/lib/flag/themes/solar/charcoal/index.js +2 -0
  189. package/lib/flag/themes/solar/pearl/index.js +2 -0
  190. package/lib/flag/utils/FlagLoader.d.ts +47 -0
  191. package/lib/flag/utils/FlagLoader.js +86 -0
  192. package/lib/header/custom-elements.json +36 -0
  193. package/lib/header/index.d.ts +46 -0
  194. package/lib/header/index.js +76 -0
  195. package/lib/header/themes/halo/dark/index.js +2 -0
  196. package/lib/header/themes/halo/light/index.js +2 -0
  197. package/lib/header/themes/solar/charcoal/index.js +2 -0
  198. package/lib/header/themes/solar/pearl/index.js +2 -0
  199. package/lib/heatmap/custom-elements.json +151 -0
  200. package/lib/heatmap/helpers/color.d.ts +30 -0
  201. package/lib/heatmap/helpers/color.js +68 -0
  202. package/lib/heatmap/helpers/text.d.ts +26 -0
  203. package/lib/heatmap/helpers/text.js +91 -0
  204. package/lib/heatmap/helpers/track.d.ts +102 -0
  205. package/lib/heatmap/helpers/track.js +160 -0
  206. package/lib/heatmap/helpers/types.d.ts +40 -0
  207. package/lib/heatmap/helpers/types.js +1 -0
  208. package/lib/heatmap/index.d.ts +453 -0
  209. package/lib/heatmap/index.js +1104 -0
  210. package/lib/heatmap/themes/halo/dark/index.js +4 -0
  211. package/lib/heatmap/themes/halo/light/index.js +4 -0
  212. package/lib/heatmap/themes/solar/charcoal/index.js +4 -0
  213. package/lib/heatmap/themes/solar/pearl/index.js +4 -0
  214. package/lib/icon/custom-elements.json +34 -0
  215. package/lib/icon/index.d.ts +87 -0
  216. package/lib/icon/index.js +161 -0
  217. package/lib/icon/themes/halo/dark/index.js +2 -0
  218. package/lib/icon/themes/halo/light/index.js +2 -0
  219. package/lib/icon/themes/solar/charcoal/index.js +2 -0
  220. package/lib/icon/themes/solar/pearl/index.js +2 -0
  221. package/lib/icon/utils/IconLoader.d.ts +47 -0
  222. package/lib/icon/utils/IconLoader.js +86 -0
  223. package/lib/index.d.ts +2 -0
  224. package/lib/index.js +2 -0
  225. package/lib/interactive-chart/custom-elements.json +86 -0
  226. package/lib/interactive-chart/helpers/merge.d.ts +15 -0
  227. package/lib/interactive-chart/helpers/merge.js +28 -0
  228. package/lib/interactive-chart/helpers/types.d.ts +45 -0
  229. package/lib/interactive-chart/helpers/types.js +6 -0
  230. package/lib/interactive-chart/index.d.ts +380 -0
  231. package/lib/interactive-chart/index.js +1093 -0
  232. package/lib/interactive-chart/themes/halo/dark/index.js +3 -0
  233. package/lib/interactive-chart/themes/halo/light/index.js +3 -0
  234. package/lib/interactive-chart/themes/solar/charcoal/index.js +3 -0
  235. package/lib/interactive-chart/themes/solar/pearl/index.js +3 -0
  236. package/lib/item/custom-elements.json +153 -0
  237. package/lib/item/helpers/types.d.ts +57 -0
  238. package/lib/item/helpers/types.js +1 -0
  239. package/lib/item/index.d.ts +149 -0
  240. package/lib/item/index.js +252 -0
  241. package/lib/item/themes/halo/dark/index.js +4 -0
  242. package/lib/item/themes/halo/light/index.js +4 -0
  243. package/lib/item/themes/solar/charcoal/index.js +4 -0
  244. package/lib/item/themes/solar/pearl/index.js +4 -0
  245. package/lib/jsx.d.ts +223 -0
  246. package/lib/label/custom-elements.json +52 -0
  247. package/lib/label/index.d.ts +102 -0
  248. package/lib/label/index.js +252 -0
  249. package/lib/label/themes/halo/dark/index.js +3 -0
  250. package/lib/label/themes/halo/light/index.js +3 -0
  251. package/lib/label/themes/solar/charcoal/index.js +3 -0
  252. package/lib/label/themes/solar/pearl/index.js +3 -0
  253. package/lib/layout/custom-elements.json +163 -0
  254. package/lib/layout/index.d.ts +107 -0
  255. package/lib/layout/index.js +215 -0
  256. package/lib/layout/themes/halo/dark/index.js +2 -0
  257. package/lib/layout/themes/halo/light/index.js +2 -0
  258. package/lib/layout/themes/solar/charcoal/index.js +2 -0
  259. package/lib/layout/themes/solar/pearl/index.js +2 -0
  260. package/lib/led-gauge/custom-elements.json +113 -0
  261. package/lib/led-gauge/index.d.ts +143 -0
  262. package/lib/led-gauge/index.js +440 -0
  263. package/lib/led-gauge/themes/halo/dark/index.js +3 -0
  264. package/lib/led-gauge/themes/halo/light/index.js +3 -0
  265. package/lib/led-gauge/themes/solar/charcoal/index.js +3 -0
  266. package/lib/led-gauge/themes/solar/pearl/index.js +3 -0
  267. package/lib/list/custom-elements.json +111 -0
  268. package/lib/list/extensible-function.d.ts +8 -0
  269. package/lib/list/extensible-function.js +13 -0
  270. package/lib/list/helpers/list-renderer.d.ts +9 -0
  271. package/lib/list/helpers/list-renderer.js +35 -0
  272. package/lib/list/helpers/types.d.ts +3 -0
  273. package/lib/list/helpers/types.js +1 -0
  274. package/lib/list/index.d.ts +292 -0
  275. package/lib/list/index.js +604 -0
  276. package/lib/list/renderer.d.ts +36 -0
  277. package/lib/list/renderer.js +9 -0
  278. package/lib/list/themes/halo/dark/index.js +3 -0
  279. package/lib/list/themes/halo/light/index.js +3 -0
  280. package/lib/list/themes/solar/charcoal/index.js +3 -0
  281. package/lib/list/themes/solar/pearl/index.js +3 -0
  282. package/lib/loader/custom-elements.json +9 -0
  283. package/lib/loader/index.d.ts +41 -0
  284. package/lib/loader/index.js +65 -0
  285. package/lib/loader/themes/halo/dark/index.js +2 -0
  286. package/lib/loader/themes/halo/light/index.js +2 -0
  287. package/lib/loader/themes/solar/charcoal/index.js +2 -0
  288. package/lib/loader/themes/solar/pearl/index.js +2 -0
  289. package/lib/multi-input/custom-elements.json +238 -0
  290. package/lib/multi-input/helpers/types.d.ts +11 -0
  291. package/lib/multi-input/helpers/types.js +1 -0
  292. package/lib/multi-input/index.d.ts +297 -0
  293. package/lib/multi-input/index.js +591 -0
  294. package/lib/multi-input/themes/halo/dark/index.js +4 -0
  295. package/lib/multi-input/themes/halo/light/index.js +4 -0
  296. package/lib/multi-input/themes/solar/charcoal/index.js +4 -0
  297. package/lib/multi-input/themes/solar/pearl/index.js +4 -0
  298. package/lib/notification/custom-elements.json +95 -0
  299. package/lib/notification/elements/notification-tray.d.ts +97 -0
  300. package/lib/notification/elements/notification-tray.js +170 -0
  301. package/lib/notification/elements/notification.d.ts +90 -0
  302. package/lib/notification/elements/notification.js +157 -0
  303. package/lib/notification/helpers/status.d.ts +30 -0
  304. package/lib/notification/helpers/status.js +130 -0
  305. package/lib/notification/helpers/types.d.ts +10 -0
  306. package/lib/notification/helpers/types.js +1 -0
  307. package/lib/notification/index.d.ts +2 -0
  308. package/lib/notification/index.js +2 -0
  309. package/lib/notification/themes/halo/dark/index.js +5 -0
  310. package/lib/notification/themes/halo/light/index.js +5 -0
  311. package/lib/notification/themes/solar/charcoal/index.js +5 -0
  312. package/lib/notification/themes/solar/pearl/index.js +5 -0
  313. package/lib/number-field/custom-elements.json +200 -0
  314. package/lib/number-field/index.d.ts +294 -0
  315. package/lib/number-field/index.js +708 -0
  316. package/lib/number-field/themes/halo/dark/index.js +3 -0
  317. package/lib/number-field/themes/halo/light/index.js +3 -0
  318. package/lib/number-field/themes/solar/charcoal/index.js +3 -0
  319. package/lib/number-field/themes/solar/pearl/index.js +3 -0
  320. package/lib/overlay/custom-elements.json +342 -0
  321. package/lib/overlay/elements/overlay-backdrop.d.ts +46 -0
  322. package/lib/overlay/elements/overlay-backdrop.js +67 -0
  323. package/lib/overlay/elements/overlay-viewport.d.ts +40 -0
  324. package/lib/overlay/elements/overlay-viewport.js +56 -0
  325. package/lib/overlay/elements/overlay.d.ts +403 -0
  326. package/lib/overlay/elements/overlay.js +1427 -0
  327. package/lib/overlay/helpers/functions.d.ts +13 -0
  328. package/lib/overlay/helpers/functions.js +16 -0
  329. package/lib/overlay/helpers/types.d.ts +97 -0
  330. package/lib/overlay/helpers/types.js +16 -0
  331. package/lib/overlay/index.d.ts +2 -0
  332. package/lib/overlay/index.js +1 -0
  333. package/lib/overlay/managers/backdrop-manager.d.ts +45 -0
  334. package/lib/overlay/managers/backdrop-manager.js +96 -0
  335. package/lib/overlay/managers/close-manager.d.ts +54 -0
  336. package/lib/overlay/managers/close-manager.js +138 -0
  337. package/lib/overlay/managers/focus-manager.d.ts +71 -0
  338. package/lib/overlay/managers/focus-manager.js +228 -0
  339. package/lib/overlay/managers/interaction-lock-manager.d.ts +138 -0
  340. package/lib/overlay/managers/interaction-lock-manager.js +375 -0
  341. package/lib/overlay/managers/viewport-manager.d.ts +93 -0
  342. package/lib/overlay/managers/viewport-manager.js +207 -0
  343. package/lib/overlay/managers/zindex-manager.d.ts +80 -0
  344. package/lib/overlay/managers/zindex-manager.js +195 -0
  345. package/lib/overlay/themes/halo/dark/index.js +4 -0
  346. package/lib/overlay/themes/halo/light/index.js +4 -0
  347. package/lib/overlay/themes/solar/charcoal/index.js +4 -0
  348. package/lib/overlay/themes/solar/pearl/index.js +4 -0
  349. package/lib/overlay-menu/custom-elements.json +196 -0
  350. package/lib/overlay-menu/helpers/types.d.ts +8 -0
  351. package/lib/overlay-menu/helpers/types.js +1 -0
  352. package/lib/overlay-menu/helpers/uuid.d.ts +7 -0
  353. package/lib/overlay-menu/helpers/uuid.js +13 -0
  354. package/lib/overlay-menu/index.d.ts +380 -0
  355. package/lib/overlay-menu/index.js +921 -0
  356. package/lib/overlay-menu/managers/menu-manager.d.ts +98 -0
  357. package/lib/overlay-menu/managers/menu-manager.js +240 -0
  358. package/lib/overlay-menu/themes/halo/dark/index.js +5 -0
  359. package/lib/overlay-menu/themes/halo/light/index.js +5 -0
  360. package/lib/overlay-menu/themes/solar/charcoal/index.js +5 -0
  361. package/lib/overlay-menu/themes/solar/pearl/index.js +5 -0
  362. package/lib/pagination/custom-elements.json +93 -0
  363. package/lib/pagination/helpers/types.d.ts +9 -0
  364. package/lib/pagination/helpers/types.js +1 -0
  365. package/lib/pagination/index.d.ts +207 -0
  366. package/lib/pagination/index.js +400 -0
  367. package/lib/pagination/themes/halo/dark/index.js +6 -0
  368. package/lib/pagination/themes/halo/light/index.js +6 -0
  369. package/lib/pagination/themes/solar/charcoal/index.js +6 -0
  370. package/lib/pagination/themes/solar/pearl/index.js +6 -0
  371. package/lib/panel/custom-elements.json +39 -0
  372. package/lib/panel/index.d.ts +48 -0
  373. package/lib/panel/index.js +77 -0
  374. package/lib/panel/themes/halo/dark/index.js +2 -0
  375. package/lib/panel/themes/halo/light/index.js +2 -0
  376. package/lib/panel/themes/solar/charcoal/index.js +2 -0
  377. package/lib/panel/themes/solar/pearl/index.js +2 -0
  378. package/lib/password-field/custom-elements.json +156 -0
  379. package/lib/password-field/index.d.ts +140 -0
  380. package/lib/password-field/index.js +258 -0
  381. package/lib/password-field/themes/halo/dark/index.js +3 -0
  382. package/lib/password-field/themes/halo/light/index.js +3 -0
  383. package/lib/password-field/themes/solar/charcoal/index.js +3 -0
  384. package/lib/password-field/themes/solar/pearl/index.js +3 -0
  385. package/lib/pill/custom-elements.json +95 -0
  386. package/lib/pill/index.d.ts +97 -0
  387. package/lib/pill/index.js +162 -0
  388. package/lib/pill/themes/halo/dark/index.js +3 -0
  389. package/lib/pill/themes/halo/light/index.js +3 -0
  390. package/lib/pill/themes/solar/charcoal/index.js +3 -0
  391. package/lib/pill/themes/solar/pearl/index.js +3 -0
  392. package/lib/progress-bar/custom-elements.json +58 -0
  393. package/lib/progress-bar/index.d.ts +82 -0
  394. package/lib/progress-bar/index.js +159 -0
  395. package/lib/progress-bar/themes/halo/dark/index.js +2 -0
  396. package/lib/progress-bar/themes/halo/light/index.js +2 -0
  397. package/lib/progress-bar/themes/solar/charcoal/index.js +2 -0
  398. package/lib/progress-bar/themes/solar/pearl/index.js +2 -0
  399. package/lib/radio-button/custom-elements.json +84 -0
  400. package/lib/radio-button/index.d.ts +106 -0
  401. package/lib/radio-button/index.js +195 -0
  402. package/lib/radio-button/radio-button-registry.d.ts +21 -0
  403. package/lib/radio-button/radio-button-registry.js +40 -0
  404. package/lib/radio-button/themes/halo/dark/index.js +3 -0
  405. package/lib/radio-button/themes/halo/light/index.js +3 -0
  406. package/lib/radio-button/themes/solar/charcoal/index.js +3 -0
  407. package/lib/radio-button/themes/solar/pearl/index.js +3 -0
  408. package/lib/rating/custom-elements.json +58 -0
  409. package/lib/rating/index.d.ts +91 -0
  410. package/lib/rating/index.js +158 -0
  411. package/lib/rating/themes/halo/dark/index.js +2 -0
  412. package/lib/rating/themes/halo/light/index.js +2 -0
  413. package/lib/rating/themes/solar/charcoal/index.js +2 -0
  414. package/lib/rating/themes/solar/pearl/index.js +2 -0
  415. package/lib/search-field/custom-elements.json +173 -0
  416. package/lib/search-field/index.d.ts +134 -0
  417. package/lib/search-field/index.js +254 -0
  418. package/lib/search-field/themes/halo/dark/index.js +3 -0
  419. package/lib/search-field/themes/halo/light/index.js +3 -0
  420. package/lib/search-field/themes/solar/charcoal/index.js +3 -0
  421. package/lib/search-field/themes/solar/pearl/index.js +3 -0
  422. package/lib/select/custom-elements.json +103 -0
  423. package/lib/select/helpers/types.d.ts +3 -0
  424. package/lib/select/helpers/types.js +1 -0
  425. package/lib/select/index.d.ts +388 -0
  426. package/lib/select/index.js +942 -0
  427. package/lib/select/themes/halo/dark/index.js +5 -0
  428. package/lib/select/themes/halo/light/index.js +5 -0
  429. package/lib/select/themes/solar/charcoal/index.js +5 -0
  430. package/lib/select/themes/solar/pearl/index.js +5 -0
  431. package/lib/sidebar-layout/custom-elements.json +72 -0
  432. package/lib/sidebar-layout/index.d.ts +69 -0
  433. package/lib/sidebar-layout/index.js +135 -0
  434. package/lib/sidebar-layout/themes/halo/dark/index.js +3 -0
  435. package/lib/sidebar-layout/themes/halo/light/index.js +3 -0
  436. package/lib/sidebar-layout/themes/solar/charcoal/index.js +3 -0
  437. package/lib/sidebar-layout/themes/solar/pearl/index.js +3 -0
  438. package/lib/slider/custom-elements.json +181 -0
  439. package/lib/slider/index.d.ts +409 -0
  440. package/lib/slider/index.js +1188 -0
  441. package/lib/slider/themes/halo/dark/index.js +3 -0
  442. package/lib/slider/themes/halo/light/index.js +3 -0
  443. package/lib/slider/themes/solar/charcoal/index.js +3 -0
  444. package/lib/slider/themes/solar/pearl/index.js +3 -0
  445. package/lib/sparkline/custom-elements.json +59 -0
  446. package/lib/sparkline/index.d.ts +107 -0
  447. package/lib/sparkline/index.js +188 -0
  448. package/lib/sparkline/themes/halo/dark/index.js +2 -0
  449. package/lib/sparkline/themes/halo/light/index.js +2 -0
  450. package/lib/sparkline/themes/solar/charcoal/index.js +2 -0
  451. package/lib/sparkline/themes/solar/pearl/index.js +2 -0
  452. package/lib/swing-gauge/const.d.ts +22 -0
  453. package/lib/swing-gauge/const.js +26 -0
  454. package/lib/swing-gauge/custom-elements.json +109 -0
  455. package/lib/swing-gauge/helpers.d.ts +8 -0
  456. package/lib/swing-gauge/helpers.js +105 -0
  457. package/lib/swing-gauge/index.d.ts +294 -0
  458. package/lib/swing-gauge/index.js +762 -0
  459. package/lib/swing-gauge/themes/halo/dark/index.js +3 -0
  460. package/lib/swing-gauge/themes/halo/light/index.js +3 -0
  461. package/lib/swing-gauge/themes/solar/charcoal/index.js +3 -0
  462. package/lib/swing-gauge/themes/solar/pearl/index.js +3 -0
  463. package/lib/swing-gauge/types.d.ts +34 -0
  464. package/lib/swing-gauge/types.js +1 -0
  465. package/lib/tab/custom-elements.json +123 -0
  466. package/lib/tab/index.d.ts +118 -0
  467. package/lib/tab/index.js +211 -0
  468. package/lib/tab/themes/halo/dark/index.js +4 -0
  469. package/lib/tab/themes/halo/light/index.js +4 -0
  470. package/lib/tab/themes/solar/charcoal/index.js +4 -0
  471. package/lib/tab/themes/solar/pearl/index.js +4 -0
  472. package/lib/tab-bar/custom-elements.json +52 -0
  473. package/lib/tab-bar/helpers/animate.d.ts +16 -0
  474. package/lib/tab-bar/helpers/animate.js +53 -0
  475. package/lib/tab-bar/index.d.ts +108 -0
  476. package/lib/tab-bar/index.js +220 -0
  477. package/lib/tab-bar/themes/halo/dark/index.js +4 -0
  478. package/lib/tab-bar/themes/halo/light/index.js +4 -0
  479. package/lib/tab-bar/themes/solar/charcoal/index.js +4 -0
  480. package/lib/tab-bar/themes/solar/pearl/index.js +4 -0
  481. package/lib/text-field/custom-elements.json +210 -0
  482. package/lib/text-field/index.d.ts +171 -0
  483. package/lib/text-field/index.js +319 -0
  484. package/lib/text-field/themes/halo/dark/index.js +3 -0
  485. package/lib/text-field/themes/halo/light/index.js +3 -0
  486. package/lib/text-field/themes/solar/charcoal/index.js +3 -0
  487. package/lib/text-field/themes/solar/pearl/index.js +3 -0
  488. package/lib/time-picker/custom-elements.json +124 -0
  489. package/lib/time-picker/index.d.ts +379 -0
  490. package/lib/time-picker/index.js +777 -0
  491. package/lib/time-picker/themes/halo/dark/index.js +4 -0
  492. package/lib/time-picker/themes/halo/light/index.js +4 -0
  493. package/lib/time-picker/themes/solar/charcoal/index.js +4 -0
  494. package/lib/time-picker/themes/solar/pearl/index.js +4 -0
  495. package/lib/toggle/custom-elements.json +84 -0
  496. package/lib/toggle/index.d.ts +77 -0
  497. package/lib/toggle/index.js +134 -0
  498. package/lib/toggle/themes/halo/dark/index.js +2 -0
  499. package/lib/toggle/themes/halo/light/index.js +2 -0
  500. package/lib/toggle/themes/solar/charcoal/index.js +2 -0
  501. package/lib/toggle/themes/solar/pearl/index.js +2 -0
  502. package/lib/tooltip/custom-elements.json +62 -0
  503. package/lib/tooltip/elements/title-tooltip.d.ts +1 -0
  504. package/lib/tooltip/elements/title-tooltip.js +18 -0
  505. package/lib/tooltip/elements/tooltip-element.d.ts +21 -0
  506. package/lib/tooltip/elements/tooltip-element.js +54 -0
  507. package/lib/tooltip/helpers/overflow-tooltip.d.ts +9 -0
  508. package/lib/tooltip/helpers/overflow-tooltip.js +19 -0
  509. package/lib/tooltip/helpers/renderer.d.ts +8 -0
  510. package/lib/tooltip/helpers/renderer.js +11 -0
  511. package/lib/tooltip/helpers/types.d.ts +23 -0
  512. package/lib/tooltip/helpers/types.js +1 -0
  513. package/lib/tooltip/index.d.ts +232 -0
  514. package/lib/tooltip/index.js +479 -0
  515. package/lib/tooltip/managers/tooltip-manager.d.ts +15 -0
  516. package/lib/tooltip/managers/tooltip-manager.js +144 -0
  517. package/lib/tooltip/themes/halo/dark/index.js +3 -0
  518. package/lib/tooltip/themes/halo/light/index.js +3 -0
  519. package/lib/tooltip/themes/solar/charcoal/index.js +3 -0
  520. package/lib/tooltip/themes/solar/pearl/index.js +3 -0
  521. package/lib/tornado-chart/custom-elements.json +45 -0
  522. package/lib/tornado-chart/elements/tornado-chart.d.ts +78 -0
  523. package/lib/tornado-chart/elements/tornado-chart.js +125 -0
  524. package/lib/tornado-chart/elements/tornado-item.d.ts +110 -0
  525. package/lib/tornado-chart/elements/tornado-item.js +209 -0
  526. package/lib/tornado-chart/index.d.ts +2 -0
  527. package/lib/tornado-chart/index.js +2 -0
  528. package/lib/tornado-chart/themes/halo/dark/index.js +6 -0
  529. package/lib/tornado-chart/themes/halo/light/index.js +6 -0
  530. package/lib/tornado-chart/themes/solar/charcoal/index.js +6 -0
  531. package/lib/tornado-chart/themes/solar/pearl/index.js +6 -0
  532. package/lib/tree/custom-elements.json +100 -0
  533. package/lib/tree/elements/tree-item.d.ts +96 -0
  534. package/lib/tree/elements/tree-item.js +182 -0
  535. package/lib/tree/elements/tree.d.ts +156 -0
  536. package/lib/tree/elements/tree.js +286 -0
  537. package/lib/tree/helpers/renderer.d.ts +5 -0
  538. package/lib/tree/helpers/renderer.js +33 -0
  539. package/lib/tree/helpers/types.d.ts +17 -0
  540. package/lib/tree/helpers/types.js +1 -0
  541. package/lib/tree/index.d.ts +4 -0
  542. package/lib/tree/index.js +3 -0
  543. package/lib/tree/managers/tree-manager.d.ts +236 -0
  544. package/lib/tree/managers/tree-manager.js +379 -0
  545. package/lib/tree/themes/halo/dark/index.js +7 -0
  546. package/lib/tree/themes/halo/light/index.js +7 -0
  547. package/lib/tree/themes/solar/charcoal/index.js +7 -0
  548. package/lib/tree/themes/solar/pearl/index.js +7 -0
  549. package/lib/tree-select/custom-elements.json +107 -0
  550. package/lib/tree-select/helpers/types.d.ts +4 -0
  551. package/lib/tree-select/helpers/types.js +1 -0
  552. package/lib/tree-select/index.d.ts +400 -0
  553. package/lib/tree-select/index.js +881 -0
  554. package/lib/tree-select/themes/halo/dark/index.js +12 -0
  555. package/lib/tree-select/themes/halo/light/index.js +12 -0
  556. package/lib/tree-select/themes/solar/charcoal/index.js +12 -0
  557. package/lib/tree-select/themes/solar/pearl/index.js +12 -0
  558. package/package.json +9 -9
@@ -0,0 +1,232 @@
1
+ import { JSXInterface } from '../jsx';
2
+ import { TemplateResult, CSSResult, PropertyValues } from '@refinitiv-ui/core';
3
+ import { Translate } from '@refinitiv-ui/translate';
4
+ import '@refinitiv-ui/phrasebook/lib/locale/en/color-dialog';
5
+ import '../button';
6
+ import '../number-field';
7
+ import '../text-field';
8
+ import { Dialog } from '../dialog';
9
+ import './elements/color-palettes';
10
+ import './elements/grayscale-palettes';
11
+ /**
12
+ * Displays a colour picker dialog,
13
+ * for selecting a predefined range of colours.
14
+ *
15
+ * @fires value-changed - Fired when the `value` property changes.
16
+ * @fires opened-changed - Fired when the `opened` property changes.
17
+ *
18
+ * @attr {string|null} header - Set Header/Title of the color dialog
19
+ * @prop {string|null} header - Set Header/Title of the color dialog
20
+ *
21
+ * @attr {boolean} [opened=false] - Set dialog to open
22
+ * @prop {boolean} [opened=false] - Set dialog to open
23
+ *
24
+ * @attr {boolean} [no-cancel-on-esc-key=false] - Prevents dialog to close when user presses ESC key
25
+ * @prop {boolean} [noCancelOnEscKey=false] - Prevents dialog to close when user presses ESC key
26
+ *
27
+ * @attr {string} x - Set a specific x coordinate of dialog
28
+ * @prop {string} x - Set a specific x coordinate of dialog
29
+ *
30
+ * @attr {string} y - Set a specific y coordinate of dialog
31
+ * @prop {string} y - Set a specific y coordinate of dialog
32
+ *
33
+ * @attr {string} position-target - Set position of dialog i.e. `top`, `right`, `left`, `bottom`, `center` or combination of theme e.g. `top right`.
34
+ * @prop {string} positionTarget - Set position of dialog i.e. `top`, `right`, `left`, `bottom`, `center` or combination of theme e.g. `top right`.
35
+ *
36
+ * @prop {boolean} [noCancelOnOutsideClick=true] - Prevents dialog to close when user clicks outside the dialog.
37
+ *
38
+ * @prop {boolean} [withBackdrop=true] - False to hide backdrop.
39
+ *
40
+ * @prop {boolean} [draggable=true] - False to make the dialog not draggable.
41
+ *
42
+ * @prop {boolean} [withShadow=true] - False to remove shadow for dialog component.
43
+ */
44
+ export declare class ColorDialog extends Dialog {
45
+ /**
46
+ * Element version number
47
+ * @returns version number
48
+ */
49
+ static get version(): string;
50
+ /**
51
+ * A `CSSResult` that will be used
52
+ * to style the host, slotted children
53
+ * and the internal template of the element.
54
+ * @return {CSSResult | CSSResult[]} CSS template
55
+ */
56
+ static get styles(): CSSResult | CSSResult[];
57
+ /**
58
+ * speed up rendering by not populating content on page load
59
+ */
60
+ private lazyRendered;
61
+ /**
62
+ * Color dialog has commit button to update actual values
63
+ * Value model is used to support this functionality
64
+ */
65
+ private valueModel;
66
+ /**
67
+ * @ignore
68
+ */
69
+ draggable: boolean;
70
+ /**
71
+ * Set the palettes to activate no-color option
72
+ */
73
+ allowNocolor: boolean;
74
+ private _value;
75
+ /**
76
+ * Value of selected color from color dialog will be written here as hex value
77
+ * e.g. "#00f" or "#0000ff"
78
+ * @default -
79
+ * @param value A value to set
80
+ */
81
+ set value(value: string);
82
+ get value(): string;
83
+ /**
84
+ * Value of hex without # sign, supports both 3-digits shorthand hex and regular 6-digits hex
85
+ * @default -
86
+ * @param hex A hex value to set
87
+ */
88
+ set hex(hex: string);
89
+ get hex(): string;
90
+ /**
91
+ * Red value from 0 to 255
92
+ * @default -
93
+ * @param red Red value
94
+ */
95
+ set red(red: string);
96
+ get red(): string;
97
+ /**
98
+ * Green value from 0 to 255
99
+ * @default -
100
+ * @param green Green value
101
+ */
102
+ set green(green: string);
103
+ get green(): string;
104
+ /**
105
+ * Blue value from 0 to 255
106
+ * @default -
107
+ * @param blue Blue value
108
+ */
109
+ set blue(blue: string);
110
+ get blue(): string;
111
+ /**
112
+ * Used for translations
113
+ */
114
+ protected t: Translate;
115
+ /**
116
+ * A rgb color input for red spectrum
117
+ */
118
+ private redInputEl?;
119
+ /**
120
+ * A rgb color input for green spectrum
121
+ */
122
+ private greenInputEl?;
123
+ /**
124
+ * A rgb color input for blue spectrum
125
+ */
126
+ private blueInputEl?;
127
+ /**
128
+ * Check if component should be updated
129
+ * @param changedProperties properties changed on shouldUpdate lifecycle callback
130
+ * @returns boolean should component update
131
+ */
132
+ protected shouldUpdate(changedProperties: PropertyValues): boolean;
133
+ /**
134
+ * Updates the element
135
+ * @param changedProperties Properties that has changed
136
+ * @returns {void}
137
+ */
138
+ protected update(changedProperties: PropertyValues): void;
139
+ /**
140
+ * @inheritdoc
141
+ * Reset value model
142
+ * @param opened True if opened
143
+ * @returns {void}
144
+ */
145
+ protected setOpened(opened: boolean): void;
146
+ /**
147
+ * Reset value model always resets
148
+ * when either red, green, blue, hex or value are changed externally
149
+ * Value model is reset internally otherwise
150
+ * @returns {void}
151
+ */
152
+ private resetValueModel;
153
+ /**
154
+ * Check if value is valid HEX value (including #)
155
+ * @param value Value to check
156
+ * @returns true if value is valid
157
+ */
158
+ private isValidValue;
159
+ /**
160
+ * Check if value is valid HEX value (excluding #)
161
+ * @param value Value to check
162
+ * @returns true if value is valid
163
+ */
164
+ private isValidHex;
165
+ /**
166
+ * Check if value is within 0 - 255, and warn of it is not
167
+ * @param value Value to check
168
+ * @returns true if value is within 0 - 255
169
+ */
170
+ private isValidRGB;
171
+ /**
172
+ * update color value when tapping or dragging on color palettes
173
+ * @param event select color event
174
+ * @return {void}
175
+ */
176
+ private onColorChanged;
177
+ /**
178
+ * update hex value when typing on hex input
179
+ * @param event input event
180
+ * @return {void}
181
+ */
182
+ private onHexChanged;
183
+ /**
184
+ * update r,g,b value when typing on RGB inputs
185
+ * @param event input event
186
+ * @return {void}
187
+ */
188
+ private onRGBChanged;
189
+ /**
190
+ * set opened state to false
191
+ * @return {void}
192
+ */
193
+ private onCloseDialog;
194
+ /**
195
+ * fired value-changed event and close dialog
196
+ * @return {void}
197
+ */
198
+ private onConfirmValue;
199
+ /**
200
+ * Check if apply button is disabled
201
+ * The button is disabled if value is invalid
202
+ * or value has not changed
203
+ * @returns {boolean} true if disabled
204
+ */
205
+ private isApplyDisabled;
206
+ /**
207
+ * A `TemplateResult` that will be used
208
+ * to render the updated internal template.
209
+ * @return {TemplateResult} Render template
210
+ */
211
+ protected get contentRegion(): TemplateResult;
212
+ /**
213
+ * A `TemplateResult` that will be used
214
+ * to render the updated internal template.
215
+ * @return {TemplateResult} Render template
216
+ */
217
+ protected get footerRegion(): TemplateResult;
218
+ }
219
+
220
+ declare global {
221
+ interface HTMLElementTagNameMap {
222
+ 'ef-color-dialog': ColorDialog;
223
+ }
224
+
225
+ namespace JSX {
226
+ interface IntrinsicElements {
227
+ 'ef-color-dialog': Partial<ColorDialog> | JSXInterface.HTMLAttributes<ColorDialog>;
228
+ }
229
+ }
230
+ }
231
+
232
+ export {};
@@ -0,0 +1,457 @@
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 { html, css, customElement, property, WarningNotice, styleMap, query } from '@refinitiv-ui/core';
8
+ import { translate } from '@refinitiv-ui/translate';
9
+ import '@refinitiv-ui/phrasebook/lib/locale/en/color-dialog';
10
+ import '../button';
11
+ import '../number-field';
12
+ import '../text-field';
13
+ import { Dialog } from '../dialog';
14
+ import './elements/color-palettes';
15
+ import './elements/grayscale-palettes';
16
+ import { ColorHelpers } from './helpers/color-helpers';
17
+ import { ValueModel } from './helpers/value-model';
18
+ import { VERSION } from '../';
19
+ /**
20
+ * Displays a colour picker dialog,
21
+ * for selecting a predefined range of colours.
22
+ *
23
+ * @fires value-changed - Fired when the `value` property changes.
24
+ * @fires opened-changed - Fired when the `opened` property changes.
25
+ *
26
+ * @attr {string|null} header - Set Header/Title of the color dialog
27
+ * @prop {string|null} header - Set Header/Title of the color dialog
28
+ *
29
+ * @attr {boolean} [opened=false] - Set dialog to open
30
+ * @prop {boolean} [opened=false] - Set dialog to open
31
+ *
32
+ * @attr {boolean} [no-cancel-on-esc-key=false] - Prevents dialog to close when user presses ESC key
33
+ * @prop {boolean} [noCancelOnEscKey=false] - Prevents dialog to close when user presses ESC key
34
+ *
35
+ * @attr {string} x - Set a specific x coordinate of dialog
36
+ * @prop {string} x - Set a specific x coordinate of dialog
37
+ *
38
+ * @attr {string} y - Set a specific y coordinate of dialog
39
+ * @prop {string} y - Set a specific y coordinate of dialog
40
+ *
41
+ * @attr {string} position-target - Set position of dialog i.e. `top`, `right`, `left`, `bottom`, `center` or combination of theme e.g. `top right`.
42
+ * @prop {string} positionTarget - Set position of dialog i.e. `top`, `right`, `left`, `bottom`, `center` or combination of theme e.g. `top right`.
43
+ *
44
+ * @prop {boolean} [noCancelOnOutsideClick=true] - Prevents dialog to close when user clicks outside the dialog.
45
+ *
46
+ * @prop {boolean} [withBackdrop=true] - False to hide backdrop.
47
+ *
48
+ * @prop {boolean} [draggable=true] - False to make the dialog not draggable.
49
+ *
50
+ * @prop {boolean} [withShadow=true] - False to remove shadow for dialog component.
51
+ */
52
+ let ColorDialog = class ColorDialog extends Dialog {
53
+ constructor() {
54
+ super(...arguments);
55
+ /**
56
+ * speed up rendering by not populating content on page load
57
+ */
58
+ this.lazyRendered = false;
59
+ /**
60
+ * Color dialog has commit button to update actual values
61
+ * Value model is used to support this functionality
62
+ */
63
+ this.valueModel = new ValueModel();
64
+ /**
65
+ * @ignore
66
+ */
67
+ this.draggable = true;
68
+ /**
69
+ * Set the palettes to activate no-color option
70
+ */
71
+ this.allowNocolor = false;
72
+ this._value = '';
73
+ }
74
+ /**
75
+ * Element version number
76
+ * @returns version number
77
+ */
78
+ static get version() {
79
+ return VERSION;
80
+ }
81
+ /**
82
+ * A `CSSResult` that will be used
83
+ * to style the host, slotted children
84
+ * and the internal template of the element.
85
+ * @return {CSSResult | CSSResult[]} CSS template
86
+ */
87
+ static get styles() {
88
+ return [...Dialog.styles,
89
+ css `
90
+ :host {
91
+ display: block;
92
+ }
93
+ [part=preview-color][no-color] {
94
+ background: linear-gradient(to bottom right, transparent calc(50% - 2px),
95
+ var(--no-color-line-color, #ff0000) calc(50% - 1px),
96
+ var(--no-color-line-color, #ff0000) calc(50% + 1px),
97
+ transparent calc(50% + 2px));
98
+ }
99
+ `];
100
+ }
101
+ /**
102
+ * Value of selected color from color dialog will be written here as hex value
103
+ * e.g. "#00f" or "#0000ff"
104
+ * @default -
105
+ * @param value A value to set
106
+ */
107
+ set value(value) {
108
+ value = String(value);
109
+ const oldValue = this._value;
110
+ if (!this.isValidValue(value)) {
111
+ value = '';
112
+ }
113
+ this._value = value;
114
+ void this.requestUpdate('value', oldValue);
115
+ }
116
+ get value() {
117
+ return this._value;
118
+ }
119
+ /**
120
+ * Value of hex without # sign, supports both 3-digits shorthand hex and regular 6-digits hex
121
+ * @default -
122
+ * @param hex A hex value to set
123
+ */
124
+ set hex(hex) {
125
+ hex = String(hex);
126
+ if (!this.isValidHex(hex)) {
127
+ hex = '';
128
+ }
129
+ this.value = hex ? `#${hex}` : '';
130
+ }
131
+ get hex() {
132
+ const value = this.value;
133
+ return value ? ColorHelpers.removeHashSign(value) : '';
134
+ }
135
+ /**
136
+ * Red value from 0 to 255
137
+ * @default -
138
+ * @param red Red value
139
+ */
140
+ set red(red) {
141
+ red = String(red);
142
+ this.value = this.isValidRGB(red) ? ColorHelpers.rgbToHex(red, this.green, this.blue) : '';
143
+ }
144
+ get red() {
145
+ return this.hex ? ColorHelpers.hexToRGB(this.hex).red : '';
146
+ }
147
+ /**
148
+ * Green value from 0 to 255
149
+ * @default -
150
+ * @param green Green value
151
+ */
152
+ set green(green) {
153
+ green = String(green);
154
+ this.value = this.isValidRGB(green) ? ColorHelpers.rgbToHex(this.red, green, this.blue) : '';
155
+ }
156
+ get green() {
157
+ return this.hex ? ColorHelpers.hexToRGB(this.hex).green : '';
158
+ }
159
+ /**
160
+ * Blue value from 0 to 255
161
+ * @default -
162
+ * @param blue Blue value
163
+ */
164
+ set blue(blue) {
165
+ blue = String(blue);
166
+ this.value = this.isValidRGB(blue) ? ColorHelpers.rgbToHex(this.red, this.green, blue) : '';
167
+ }
168
+ get blue() {
169
+ return this.hex ? ColorHelpers.hexToRGB(this.hex).blue : '';
170
+ }
171
+ /**
172
+ * Check if component should be updated
173
+ * @param changedProperties properties changed on shouldUpdate lifecycle callback
174
+ * @returns boolean should component update
175
+ */
176
+ shouldUpdate(changedProperties) {
177
+ const shouldUpdate = super.shouldUpdate(changedProperties);
178
+ return shouldUpdate
179
+ || changedProperties.has('allowNocolor')
180
+ || changedProperties.has('red')
181
+ || changedProperties.has('green')
182
+ || changedProperties.has('blue')
183
+ || changedProperties.has('value')
184
+ || changedProperties.has('hex')
185
+ || changedProperties.has('enableConfirm');
186
+ }
187
+ /**
188
+ * Updates the element
189
+ * @param changedProperties Properties that has changed
190
+ * @returns {void}
191
+ */
192
+ update(changedProperties) {
193
+ if (changedProperties.has('value')) {
194
+ // ensure that the internal values are always in sync when set externally
195
+ this.resetValueModel();
196
+ }
197
+ if (this.opened && changedProperties.has('opened')) {
198
+ this.lazyRendered = true;
199
+ }
200
+ super.update(changedProperties);
201
+ }
202
+ /**
203
+ * @inheritdoc
204
+ * Reset value model
205
+ * @param opened True if opened
206
+ * @returns {void}
207
+ */
208
+ setOpened(opened) {
209
+ // setOpened is run only from internal context. It is safe to reset it here
210
+ this.resetValueModel();
211
+ super.setOpened(opened);
212
+ }
213
+ /**
214
+ * Reset value model always resets
215
+ * when either red, green, blue, hex or value are changed externally
216
+ * Value model is reset internally otherwise
217
+ * @returns {void}
218
+ */
219
+ resetValueModel() {
220
+ this.valueModel = new ValueModel(this.value);
221
+ }
222
+ /**
223
+ * Check if value is valid HEX value (including #)
224
+ * @param value Value to check
225
+ * @returns true if value is valid
226
+ */
227
+ isValidValue(value) {
228
+ const isValid = value === '' || ColorHelpers.isHex(value);
229
+ if (!isValid) {
230
+ new WarningNotice(`The specified value "${value}" is not valid value. The correct value should look like "#fff" or "#ffffff".`).show();
231
+ }
232
+ return isValid;
233
+ }
234
+ /**
235
+ * Check if value is valid HEX value (excluding #)
236
+ * @param value Value to check
237
+ * @returns true if value is valid
238
+ */
239
+ isValidHex(value) {
240
+ const isValid = value === '' || (!value.includes('#') && ColorHelpers.isHex(`#${value}`));
241
+ if (!isValid) {
242
+ new WarningNotice(`The specified hex "${value}" is not valid color. The correct value should look like "fff" or "ffffff".`).show();
243
+ }
244
+ return isValid;
245
+ }
246
+ /**
247
+ * Check if value is within 0 - 255, and warn of it is not
248
+ * @param value Value to check
249
+ * @returns true if value is within 0 - 255
250
+ */
251
+ isValidRGB(value) {
252
+ const isValid = value === '' || ColorHelpers.isValidDecimalForRGB(value);
253
+ if (!isValid) {
254
+ new WarningNotice(`The specified RGB "${value}" is not valid color. The value should be 0 - 255.`).show();
255
+ }
256
+ return isValid;
257
+ }
258
+ /**
259
+ * update color value when tapping or dragging on color palettes
260
+ * @param event select color event
261
+ * @return {void}
262
+ */
263
+ onColorChanged(event) {
264
+ this.valueModel.hex = ColorHelpers.removeHashSign(event.target.value);
265
+ void this.requestUpdate();
266
+ }
267
+ /**
268
+ * update hex value when typing on hex input
269
+ * @param event input event
270
+ * @return {void}
271
+ */
272
+ onHexChanged(event) {
273
+ this.valueModel.hex = event.target.value;
274
+ void this.requestUpdate();
275
+ }
276
+ /**
277
+ * update r,g,b value when typing on RGB inputs
278
+ * @param event input event
279
+ * @return {void}
280
+ */
281
+ onRGBChanged(event) {
282
+ const targetElem = event.target;
283
+ if (targetElem === this.redInputEl) {
284
+ this.valueModel.red = this.redInputEl.value;
285
+ }
286
+ else if (targetElem === this.greenInputEl) {
287
+ this.valueModel.green = this.greenInputEl.value;
288
+ }
289
+ else if (targetElem === this.blueInputEl) {
290
+ this.valueModel.blue = this.blueInputEl.value;
291
+ }
292
+ void this.requestUpdate();
293
+ }
294
+ /**
295
+ * set opened state to false
296
+ * @return {void}
297
+ */
298
+ onCloseDialog() {
299
+ this.setOpened(false);
300
+ }
301
+ /**
302
+ * fired value-changed event and close dialog
303
+ * @return {void}
304
+ */
305
+ onConfirmValue() {
306
+ // no need to check for anything, as the button is disabled if not dirty is invalid
307
+ this.value = this.valueModel.value;
308
+ this.notifyPropertyChange('value', this.value);
309
+ this.setOpened(false);
310
+ }
311
+ /**
312
+ * Check if apply button is disabled
313
+ * The button is disabled if value is invalid
314
+ * or value has not changed
315
+ * @returns {boolean} true if disabled
316
+ */
317
+ isApplyDisabled() {
318
+ return this.valueModel.hasChanged() && this.valueModel.isValid() ? this.allowNocolor ? false : this.valueModel.hex === '' : true;
319
+ }
320
+ /**
321
+ * A `TemplateResult` that will be used
322
+ * to render the updated internal template.
323
+ * @return {TemplateResult} Render template
324
+ */
325
+ get contentRegion() {
326
+ if (!this.lazyRendered) {
327
+ return html ``;
328
+ }
329
+ return html `
330
+ <div part="content-section">
331
+ <div part="palettes-container">
332
+ <ef-color-palettes
333
+ .value=${this.valueModel.value}
334
+ @value-changed=${this.onColorChanged}
335
+ part="color-palettes">
336
+ </ef-color-palettes>
337
+ <ef-grayscale-palettes
338
+ .value=${this.valueModel.value}
339
+ @value-changed=${this.onColorChanged}
340
+ ?allow-nocolor=${this.allowNocolor}
341
+ part="grayscale-palettes"
342
+ >
343
+ </ef-grayscale-palettes>
344
+ </div>
345
+ <div part="inputs-container">
346
+ <div
347
+ part="preview-color"
348
+ style=${styleMap({
349
+ backgroundColor: this.valueModel.value
350
+ })}
351
+ ?no-color=${!this.valueModel.value}></div>
352
+ <div>${this.t('RED')}&nbsp;:
353
+ <ef-number-field
354
+ .value=${this.valueModel.red}
355
+ @value-changed=${this.onRGBChanged}
356
+ part="color-input"
357
+ min="0"
358
+ max="255"
359
+ no-spinner
360
+ id="redInput"
361
+ ></ef-number-field>
362
+ </div>
363
+ <div>${this.t('GREEN')}&nbsp;:
364
+ <ef-number-field
365
+ .value=${this.valueModel.green}
366
+ @value-changed=${this.onRGBChanged}
367
+ part="color-input"
368
+ min="0"
369
+ max="255"
370
+ no-spinner
371
+ id="greenInput"
372
+ ></ef-number-field>
373
+ </div>
374
+ <div>${this.t('BLUE')}&nbsp;:
375
+ <ef-number-field
376
+ .value=${this.valueModel.blue}
377
+ @value-changed=${this.onRGBChanged}
378
+ part="color-input"
379
+ min="0"
380
+ max="255"
381
+ no-spinner
382
+ id="blueInput"
383
+ ></ef-number-field>
384
+ </div>
385
+ <div>#&nbsp;:
386
+ <ef-text-field
387
+ .value=${this.valueModel.hex}
388
+ @value-changed=${this.onHexChanged}
389
+ pattern="^([0-9a-fA-F]{3}){1,2}$"
390
+ part="color-input"
391
+ id="hexInput"
392
+ maxlength="6">
393
+ </ef-text-field>
394
+ </div>
395
+ </div>
396
+ </div>
397
+ `;
398
+ }
399
+ /**
400
+ * A `TemplateResult` that will be used
401
+ * to render the updated internal template.
402
+ * @return {TemplateResult} Render template
403
+ */
404
+ get footerRegion() {
405
+ if (!this.lazyRendered) {
406
+ return html ``;
407
+ }
408
+ return html `
409
+ <ef-button
410
+ id="confirmButton"
411
+ part="button"
412
+ cta
413
+ @tap=${this.onConfirmValue}
414
+ ?disabled=${this.isApplyDisabled()}>${this.t('APPLY')}</ef-button>
415
+ <ef-button
416
+ id="closeButton"
417
+ @tap=${this.onCloseDialog}
418
+ part="button">${this.t('CLOSE')}</ef-button>
419
+ `;
420
+ }
421
+ };
422
+ __decorate([
423
+ property({ type: Boolean, attribute: 'allow-nocolor' })
424
+ ], ColorDialog.prototype, "allowNocolor", void 0);
425
+ __decorate([
426
+ property({ type: String })
427
+ ], ColorDialog.prototype, "value", null);
428
+ __decorate([
429
+ property({ type: String })
430
+ ], ColorDialog.prototype, "hex", null);
431
+ __decorate([
432
+ property({ type: String })
433
+ ], ColorDialog.prototype, "red", null);
434
+ __decorate([
435
+ property({ type: String })
436
+ ], ColorDialog.prototype, "green", null);
437
+ __decorate([
438
+ property({ type: String })
439
+ ], ColorDialog.prototype, "blue", null);
440
+ __decorate([
441
+ translate()
442
+ ], ColorDialog.prototype, "t", void 0);
443
+ __decorate([
444
+ query('#redInput')
445
+ ], ColorDialog.prototype, "redInputEl", void 0);
446
+ __decorate([
447
+ query('#greenInput')
448
+ ], ColorDialog.prototype, "greenInputEl", void 0);
449
+ __decorate([
450
+ query('#blueInput')
451
+ ], ColorDialog.prototype, "blueInputEl", void 0);
452
+ ColorDialog = __decorate([
453
+ customElement('ef-color-dialog', {
454
+ alias: 'emerald-color-dialog'
455
+ })
456
+ ], ColorDialog);
457
+ export { ColorDialog };
@@ -0,0 +1,7 @@
1
+ import '@refinitiv-ui/elements/lib/text-field/themes/halo/dark';
2
+ import '@refinitiv-ui/elements/lib/number-field/themes/halo/dark';
3
+ import '@refinitiv-ui/elements/lib/button/themes/halo/dark';
4
+ import '@refinitiv-ui/elements/lib/panel/themes/halo/dark';
5
+ import '@refinitiv-ui/elements/lib/dialog/themes/halo/dark';
6
+
7
+ elf.customStyles.define('ef-color-dialog', ':host{width:425px}:host [part=content-section]{display:flex;min-width:0}:host [part=inputs-container]{display:flex;flex-direction:column;align-items:flex-end;padding-left:15px}:host [part=inputs-container]>*{display:flex;align-items:center;margin-bottom:5px}:host [part=color-input],:host [part=preview-color]{touch-action:manipulation;margin:2px;width:100px;box-sizing:border-box}:host [part=preview-color]{border:1px solid #404040;height:24px;margin-bottom:10px}:host [part=palettes-container]{width:100%}:host [part=color-palettes]{width:100%;height:calc(100% - 23px)}:host [part=grayscale-palettes]{height:23px}:host [part=color-palettes],:host [part=grayscale-palettes]{touch-action:manipulation}:host [part=footer]{display:flex;justify-content:flex-end;align-items:center}:host [part=button]{touch-action:manipulation;margin:8px}:host [part=button]:first-child{margin-right:0}');
@@ -0,0 +1,7 @@
1
+ import '@refinitiv-ui/elements/lib/text-field/themes/halo/light';
2
+ import '@refinitiv-ui/elements/lib/number-field/themes/halo/light';
3
+ import '@refinitiv-ui/elements/lib/button/themes/halo/light';
4
+ import '@refinitiv-ui/elements/lib/panel/themes/halo/light';
5
+ import '@refinitiv-ui/elements/lib/dialog/themes/halo/light';
6
+
7
+ elf.customStyles.define('ef-color-dialog', ':host{width:425px}:host [part=content-section]{display:flex;min-width:0}:host [part=inputs-container]{display:flex;flex-direction:column;align-items:flex-end;padding-left:15px}:host [part=inputs-container]>*{display:flex;align-items:center;margin-bottom:5px}:host [part=color-input],:host [part=preview-color]{touch-action:manipulation;margin:2px;width:100px;box-sizing:border-box}:host [part=preview-color]{border:1px solid #595959;height:24px;margin-bottom:10px}:host [part=palettes-container]{width:100%}:host [part=color-palettes]{width:100%;height:calc(100% - 23px)}:host [part=grayscale-palettes]{height:23px}:host [part=color-palettes],:host [part=grayscale-palettes]{touch-action:manipulation}:host [part=footer]{display:flex;justify-content:flex-end;align-items:center}:host [part=button]{touch-action:manipulation;margin:8px}:host [part=button]:first-child{margin-right:0}');