@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,119 @@
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, property, svg, query } from '@refinitiv-ui/core';
8
+ import { VERSION } from '../../';
9
+ /**
10
+ * Element base class usually used
11
+ * for creating palettes elements.
12
+ */
13
+ export class Palettes extends BasicElement {
14
+ constructor() {
15
+ super(...arguments);
16
+ /**
17
+ * Color value in hex
18
+ */
19
+ this.value = '';
20
+ /**
21
+ * Update color value when tab on color item
22
+ * @param event mouse event
23
+ * @return {void}
24
+ */
25
+ this.onTapItem = (event) => {
26
+ const polygonElement = event.target;
27
+ this.updateValue(polygonElement);
28
+ };
29
+ /**
30
+ * Update color value when drag on color item
31
+ * @param event mouse event
32
+ * @return {void}
33
+ */
34
+ this.onMousemove = (event) => {
35
+ const polygonElement = event.target;
36
+ let mouseButton = event.buttons;
37
+ if (mouseButton === undefined) { // buttons property is not supported in safari
38
+ mouseButton = event.which;
39
+ }
40
+ if (mouseButton !== 1) {
41
+ return;
42
+ }
43
+ // only update when user click and drag on color item
44
+ this.updateValue(polygonElement);
45
+ };
46
+ /**
47
+ * Update color value when drag on color item in mobile device
48
+ * @param event touch event
49
+ * @return {void}
50
+ */
51
+ this.onTouchmove = (event) => {
52
+ var _a;
53
+ const touchOffsets = event.changedTouches[0];
54
+ const realTarget = (_a = this.shadowRoot) === null || _a === void 0 ? void 0 : _a.elementFromPoint(touchOffsets.clientX, touchOffsets.clientY);
55
+ this.updateValue(realTarget);
56
+ };
57
+ }
58
+ /**
59
+ * Element version number
60
+ * @returns version number
61
+ */
62
+ static get version() {
63
+ return VERSION;
64
+ }
65
+ /**
66
+ * Create selector template
67
+ * @return {SVGTemplateResult} selector template
68
+ */
69
+ get SelectorTemplate() {
70
+ return (svg `
71
+ <polygon class="color-selector-shadow"></polygon>
72
+ <polygon class="color-selector"></polygon>
73
+ `);
74
+ }
75
+ /**
76
+ * Hide selector element
77
+ * @return {void}
78
+ */
79
+ hideSelector() {
80
+ if (this.colorSelector && this.colorSelectorShadow) {
81
+ this.colorSelector.style.display = 'none';
82
+ this.colorSelectorShadow.style.display = 'none';
83
+ }
84
+ }
85
+ /**
86
+ * Show selector element on specific points
87
+ * @return {void}
88
+ * @param points points of colorSelector
89
+ */
90
+ showSelector(points) {
91
+ if (this.colorSelector && this.colorSelectorShadow) {
92
+ this.colorSelector.style.display = '';
93
+ this.colorSelectorShadow.style.display = '';
94
+ this.colorSelectorShadow.setAttribute('points', points);
95
+ this.colorSelector.setAttribute('points', points);
96
+ }
97
+ }
98
+ /**
99
+ * Update color value and fired value-changed event
100
+ * @param element target element to get value
101
+ * @return {void}
102
+ */
103
+ updateValue(element) {
104
+ const color = element.getAttribute('fill');
105
+ if (color) {
106
+ this.value = color;
107
+ this.notifyPropertyChange('value', color);
108
+ }
109
+ }
110
+ }
111
+ __decorate([
112
+ query('.color-selector')
113
+ ], Palettes.prototype, "colorSelector", void 0);
114
+ __decorate([
115
+ query('.color-selector-shadow')
116
+ ], Palettes.prototype, "colorSelectorShadow", void 0);
117
+ __decorate([
118
+ property({ type: String })
119
+ ], Palettes.prototype, "value", void 0);
@@ -0,0 +1,62 @@
1
+ /**
2
+ * SVG polygons per color
3
+ */
4
+ export declare const COLOR_ITEMS: string[][];
5
+ /**
6
+ * SVG polygons per grayscale items
7
+ */
8
+ export declare const GRAYSCALE_ITEMS: string[][];
9
+ export declare const NOCOLOR_POINTS = "6, 2, 15, 6, 15, 17, 6, 21, -3, 17, -3, 6";
10
+ declare type rgbValue = {
11
+ red: string;
12
+ green: string;
13
+ blue: string;
14
+ };
15
+ export declare class ColorHelpers {
16
+ /**
17
+ * Remove hash (#) sign from hex value
18
+ * @param hex Hex to check
19
+ * @returns hex value without # sign
20
+ */
21
+ static removeHashSign(hex: string): string;
22
+ /**
23
+ * Expand short format hex into long format
24
+ * For instance, "#fff" becomes "#ffffff"
25
+ * @param value hex to expand
26
+ * @returns expanded hex value
27
+ */
28
+ static expandHex(value: string): string;
29
+ /**
30
+ * Transform RGB value into hex (with #)
31
+ * @param red Red value, 0 - 255
32
+ * @param green Green value, 0 - 255
33
+ * @param blue Blue value, 0 - 255
34
+ * @returns hex value
35
+ */
36
+ static rgbToHex(red: string, green: string, blue: string): string;
37
+ /**
38
+ * Transform 10 base number to HEX number
39
+ * @param num Number to transform
40
+ * @returns hex representation
41
+ */
42
+ private static numberToHex;
43
+ /**
44
+ * Transform Hex to RGB
45
+ * @param hex Hex to transform
46
+ * @returns rgb values
47
+ */
48
+ static hexToRGB(hex: string): rgbValue;
49
+ /**
50
+ * Check if value is a valid hex (including #)
51
+ * @param value Value to check
52
+ * @returns true if valid hex
53
+ */
54
+ static isHex(value: string): boolean;
55
+ /**
56
+ * Check if value is a valid RGB string number between 0 - 255
57
+ * @param value Value to check
58
+ * @returns true if a valid number
59
+ */
60
+ static isValidDecimalForRGB(value: string): boolean;
61
+ }
62
+ export {};
@@ -0,0 +1,258 @@
1
+ /**
2
+ * SVG polygons per color
3
+ */
4
+ export const COLOR_ITEMS = [
5
+ ['63,0,72,4,72,15,63,19,54,15,54,4', '#003366'],
6
+ ['81,0,90,4,90,15,81,19,72,15,72,4', '#336699'],
7
+ ['99,0,108,4,108,15,99,19,90,15,90,4', '#3366cc'],
8
+ ['117,0,126,4,126,15,117,19,108,15,108,4', '#003399'],
9
+ ['135,0,144,4,144,15,135,19,126,15,126,4', '#000099'],
10
+ ['153,0,162,4,162,15,153,19,144,15,144,4', '#0000cc'],
11
+ ['171,0,180,4,180,15,171,19,162,15,162,4', '#000066'],
12
+ ['54,15,63,19,63,30,54,34,45,30,45,19', '#006666'],
13
+ ['72,15,81,19,81,30,72,34,63,30,63,19', '#006699'],
14
+ ['90,15,99,19,99,30,90,34,81,30,81,19', '#0099cc'],
15
+ ['108,15,117,19,117,30,108,34,99,30,99,19', '#0066cc'],
16
+ ['126,15,135,19,135,30,126,34,117,30,117,19', '#0033cc'],
17
+ ['144,15,153,19,153,30,144,34,135,30,135,19', '#0000ff'],
18
+ ['162,15,171,19,171,30,162,34,153,30,153,19', '#3333ff'],
19
+ ['180,15,189,19,189,30,180,34,171,30,171,19', '#333399'],
20
+ ['45,30,54,34,54,45,45,49,36,45,36,34', '#669999'],
21
+ ['63,30,72,34,72,45,63,49,54,45,54,34', '#009999'],
22
+ ['81,30,90,34,90,45,81,49,72,45,72,34', '#33cccc'],
23
+ ['99,30,108,34,108,45,99,49,90,45,90,34', '#00ccff'],
24
+ ['117,30,126,34,126,45,117,49,108,45,108,34', '#0099ff'],
25
+ ['135,30,144,34,144,45,135,49,126,45,126,34', '#0066ff'],
26
+ ['153,30,162,34,162,45,153,49,144,45,144,34', '#3366ff'],
27
+ ['171,30,180,34,180,45,171,49,162,45,162,34', '#3333cc'],
28
+ ['189,30,198,34,198,45,189,49,180,45,180,34', '#666699'],
29
+ ['36,45,45,49,45,60,36,64,27,60,27,49', '#339966'],
30
+ ['54,45,63,49,63,60,54,64,45,60,45,49', '#00cc99'],
31
+ ['72,45,81,49,81,60,72,64,63,60,63,49', '#00ffcc'],
32
+ ['90,45,99,49,99,60,90,64,81,60,81,49', '#00ffff'],
33
+ ['108,45,117,49,117,60,108,64,99,60,99,49', '#33ccff'],
34
+ ['126,45,135,49,135,60,126,64,117,60,117,49', '#3399ff'],
35
+ ['144,45,153,49,153,60,144,64,135,60,135,49', '#6699ff'],
36
+ ['162,45,171,49,171,60,162,64,153,60,153,49', '#6666ff'],
37
+ ['180,45,189,49,189,60,180,64,171,60,171,49', '#6600ff'],
38
+ ['198,45,207,49,207,60,198,64,189,60,189,49', '#6600cc'],
39
+ ['27,60,36,64,36,75,27,79,18,75,18,64', '#339933'],
40
+ ['45,60,54,64,54,75,45,79,36,75,36,64', '#00cc66'],
41
+ ['63,60,72,64,72,75,63,79,54,75,54,64', '#00ff99'],
42
+ ['81,60,90,64,90,75,81,79,72,75,72,64', '#66ffcc'],
43
+ ['99,60,108,64,108,75,99,79,90,75,90,64', '#66ffff'],
44
+ ['117,60,126,64,126,75,117,79,108,75,108,64', '#66ccff'],
45
+ ['135,60,144,64,144,75,135,79,126,75,126,64', '#99ccff'],
46
+ ['153,60,162,64,162,75,153,79,144,75,144,64', '#9999ff'],
47
+ ['171,60,180,64,180,75,171,79,162,75,162,64', '#9966ff'],
48
+ ['189,60,198,64,198,75,189,79,180,75,180,64', '#9933ff'],
49
+ ['207,60,216,64,216,75,207,79,198,75,198,64', '#9900ff'],
50
+ ['18,75,27,79,27,90,18,94,9,90,9,79', '#006600'],
51
+ ['36,75,45,79,45,90,36,94,27,90,27,79', '#00cc00'],
52
+ ['54,75,63,79,63,90,54,94,45,90,45,79', '#00ff00'],
53
+ ['72,75,81,79,81,90,72,94,63,90,63,79', '#66ff99'],
54
+ ['90,75,99,79,99,90,90,94,81,90,81,79', '#99ffcc'],
55
+ ['108,75,117,79,117,90,108,94,99,90,99,79', '#ccffff'],
56
+ ['126,75,135,79,135,90,126,94,117,90,117,79', '#ccccff'],
57
+ ['144,75,153,79,153,90,144,94,135,90,135,79', '#cc99ff'],
58
+ ['162,75,171,79,171,90,162,94,153,90,153,79', '#cc66ff'],
59
+ ['180,75,189,79,189,90,180,94,171,90,171,79', '#cc33ff'],
60
+ ['198,75,207,79,207,90,198,94,189,90,189,79', '#cc00ff'],
61
+ ['216,75,225,79,225,90,216,94,207,90,207,79', '#9900cc'],
62
+ ['9,90,18,94,18,105,9,109,0,105,0,94', '#003300'],
63
+ ['27,90,36,94,36,105,27,109,18,105,18,94', '#009933'],
64
+ ['45,90,54,94,54,105,45,109,36,105,36,94', '#33cc33'],
65
+ ['63,90,72,94,72,105,63,109,54,105,54,94', '#66ff66'],
66
+ ['81,90,90,94,90,105,81,109,72,105,72,94', '#99ff99'],
67
+ ['99,90,108,94,108,105,99,109,90,105,90,94', '#ccffcc'],
68
+ ['117,90,126,94,126,105,117,109,108,105,108,94', '#ffffff'],
69
+ ['135,90,144,94,144,105,135,109,126,105,126,94', '#ffccff'],
70
+ ['153,90,162,94,162,105,153,109,144,105,144,94', '#ff99ff'],
71
+ ['171,90,180,94,180,105,171,109,162,105,162,94', '#ff66ff'],
72
+ ['189,90,198,94,198,105,189,109,180,105,180,94', '#ff00ff'],
73
+ ['207,90,216,94,216,105,207,109,198,105,198,94', '#cc00cc'],
74
+ ['225,90,234,94,234,105,225,109,216,105,216,94', '#660066'],
75
+ ['18,105,27,109,27,120,18,124,9,120,9,109', '#336600'],
76
+ ['36,105,45,109,45,120,36,124,27,120,27,109', '#009900'],
77
+ ['54,105,63,109,63,120,54,124,45,120,45,109', '#66ff33'],
78
+ ['72,105,81,109,81,120,72,124,63,120,63,109', '#99ff66'],
79
+ ['90,105,99,109,99,120,90,124,81,120,81,109', '#ccff99'],
80
+ ['108,105,117,109,117,120,108,124,99,120,99,109', '#ffffcc'],
81
+ ['126,105,135,109,135,120,126,124,117,120,117,109', '#ffcccc'],
82
+ ['144,105,153,109,153,120,144,124,135,120,135,109', '#ff99cc'],
83
+ ['162,105,171,109,171,120,162,124,153,120,153,109', '#ff66cc'],
84
+ ['180,105,189,109,189,120,180,124,171,120,171,109', '#ff33cc'],
85
+ ['198,105,207,109,207,120,198,124,189,120,189,109', '#cc0099'],
86
+ ['216,105,225,109,225,120,216,124,207,120,207,109', '#993399'],
87
+ ['27,120,36,124,36,135,27,139,18,135,18,124', '#333300'],
88
+ ['45,120,54,124,54,135,45,139,36,135,36,124', '#669900'],
89
+ ['63,120,72,124,72,135,63,139,54,135,54,124', '#99ff33'],
90
+ ['81,120,90,124,90,135,81,139,72,135,72,124', '#ccff66'],
91
+ ['99,120,108,124,108,135,99,139,90,135,90,124', '#ffff99'],
92
+ ['117,120,126,124,126,135,117,139,108,135,108,124', '#ffcc99'],
93
+ ['135,120,144,124,144,135,135,139,126,135,126,124', '#ff9999'],
94
+ ['153,120,162,124,162,135,153,139,144,135,144,124', '#ff6699'],
95
+ ['171,120,180,124,180,135,171,139,162,135,162,124', '#ff3399'],
96
+ ['189,120,198,124,198,135,189,139,180,135,180,124', '#cc3399'],
97
+ ['207,120,216,124,216,135,207,139,198,135,198,124', '#990099'],
98
+ ['36,135,45,139,45,150,36,154,27,150,27,139', '#666633'],
99
+ ['54,135,63,139,63,150,54,154,45,150,45,139', '#99cc00'],
100
+ ['72,135,81,139,81,150,72,154,63,150,63,139', '#ccff33'],
101
+ ['90,135,99,139,99,150,90,154,81,150,81,139', '#ffff66'],
102
+ ['108,135,117,139,117,150,108,154,99,150,99,139', '#ffcc66'],
103
+ ['126,135,135,139,135,150,126,154,117,150,117,139', '#ff9966'],
104
+ ['144,135,153,139,153,150,144,154,135,150,135,139', '#ff6666'],
105
+ ['162,135,171,139,171,150,162,154,153,150,153,139', '#ff0066'],
106
+ ['180,135,189,139,189,150,180,154,171,150,171,139', '#cc6699'],
107
+ ['198,135,207,139,207,150,198,154,189,150,189,139', '#993366'],
108
+ ['45,150,54,154,54,165,45,169,36,165,36,154', '#999966'],
109
+ ['63,150,72,154,72,165,63,169,54,165,54,154', '#cccc00'],
110
+ ['81,150,90,154,90,165,81,169,72,165,72,154', '#ffff00'],
111
+ ['99,150,108,154,108,165,99,169,90,165,90,154', '#ffcc00'],
112
+ ['117,150,126,154,126,165,117,169,108,165,108,154', '#ff9933'],
113
+ ['135,150,144,154,144,165,135,169,126,165,126,154', '#ff6600'],
114
+ ['153,150,162,154,162,165,153,169,144,165,144,154', '#ff5050'],
115
+ ['171,150,180,154,180,165,171,169,162,165,162,154', '#cc0066'],
116
+ ['189,150,198,154,198,165,189,169,180,165,180,154', '#660033'],
117
+ ['54,165,63,169,63,180,54,184,45,180,45,169', '#996633'],
118
+ ['72,165,81,169,81,180,72,184,63,180,63,169', '#cc9900'],
119
+ ['90,165,99,169,99,180,90,184,81,180,81,169', '#ff9900'],
120
+ ['108,165,117,169,117,180,108,184,99,180,99,169', '#cc6600'],
121
+ ['126,165,135,169,135,180,126,184,117,180,117,169', '#ff3300'],
122
+ ['144,165,153,169,153,180,144,184,135,180,135,169', '#ff0000'],
123
+ ['162,165,171,169,171,180,162,184,153,180,153,169', '#cc0000'],
124
+ ['180,165,189,169,189,180,180,184,171,180,171,169', '#990033'],
125
+ ['63,180,72,184,72,195,63,199,54,195,54,184', '#663300'],
126
+ ['81,180,90,184,90,195,81,199,72,195,72,184', '#996600'],
127
+ ['99,180,108,184,108,195,99,199,90,195,90,184', '#cc3300'],
128
+ ['117,180,126,184,126,195,117,199,108,195,108,184', '#993300'],
129
+ ['135,180,144,184,144,195,135,199,126,195,126,184', '#990000'],
130
+ ['153,180,162,184,162,195,153,199,144,195,144,184', '#800000'],
131
+ ['171,180,180,184,180,195,171,199,162,195,162,184', '#993333']
132
+ ];
133
+ /**
134
+ * SVG polygons per grayscale items
135
+ */
136
+ export const GRAYSCALE_ITEMS = [
137
+ ['29, 2, 38, 6, 38, 17, 29, 21, 20, 17, 20, 6', '#ffffff'],
138
+ ['47, 2, 56, 6, 56, 17, 47, 21, 38, 17, 38, 6', '#eaeaea'],
139
+ ['65, 2, 74, 6, 74, 17, 65, 21, 56, 17, 56, 6', '#b2b2b2'],
140
+ ['83, 2, 92, 6, 92, 17, 83, 21, 74, 17, 74, 6', '#777777'],
141
+ ['101, 2, 110, 6, 110, 17, 101, 21, 92, 17, 92, 6', '#4d4d4c'],
142
+ ['119, 2, 128, 6, 128, 17, 119, 21, 110, 17, 110, 6', '#323332'],
143
+ ['137, 2, 146, 6, 146, 17, 137, 21, 128, 17, 128, 6', '#282828'],
144
+ ['155, 2, 164, 6, 164, 17, 155, 21, 146, 17, 146, 6', '#000000']
145
+ ];
146
+ export const NOCOLOR_POINTS = '6, 2, 15, 6, 15, 17, 6, 21, -3, 17, -3, 6';
147
+ const HEX_REGEXP = /^#([0-9A-F]{3}){1,2}$/i; // used to validate HEX
148
+ const RGB_REGEXP = /^([0-1]?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])$/; // used to validate RGB colours, e.g. 0 to 255
149
+ export class ColorHelpers {
150
+ /**
151
+ * Remove hash (#) sign from hex value
152
+ * @param hex Hex to check
153
+ * @returns hex value without # sign
154
+ */
155
+ static removeHashSign(hex) {
156
+ if (hex) {
157
+ if (hex.startsWith('#')) {
158
+ hex = hex.slice(1);
159
+ }
160
+ }
161
+ return hex;
162
+ }
163
+ /**
164
+ * Expand short format hex into long format
165
+ * For instance, "#fff" becomes "#ffffff"
166
+ * @param value hex to expand
167
+ * @returns expanded hex value
168
+ */
169
+ static expandHex(value) {
170
+ const hex = this.removeHashSign(value);
171
+ if (hex && hex.length <= 3) {
172
+ return '#' + hex[0] + hex[0] + hex[1] + hex[1] + hex[2] + hex[2];
173
+ }
174
+ return value;
175
+ }
176
+ /**
177
+ * Transform RGB value into hex (with #)
178
+ * @param red Red value, 0 - 255
179
+ * @param green Green value, 0 - 255
180
+ * @param blue Blue value, 0 - 255
181
+ * @returns hex value
182
+ */
183
+ static rgbToHex(red, green, blue) {
184
+ const rHex = this.numberToHex(parseInt(red, 10));
185
+ const gHex = this.numberToHex(parseInt(green, 10));
186
+ const bHex = this.numberToHex(parseInt(blue, 10));
187
+ return `#${rHex}${gHex}${bHex}`;
188
+ }
189
+ /**
190
+ * Transform 10 base number to HEX number
191
+ * @param num Number to transform
192
+ * @returns hex representation
193
+ */
194
+ static numberToHex(num) {
195
+ if (num && num > 0) {
196
+ if (num < 10) {
197
+ return `0${num}`;
198
+ }
199
+ else if (num <= 15) {
200
+ return `0${num.toString(16)}`;
201
+ }
202
+ else {
203
+ return num.toString(16);
204
+ }
205
+ }
206
+ else {
207
+ return '00';
208
+ }
209
+ }
210
+ /**
211
+ * Transform Hex to RGB
212
+ * @param hex Hex to transform
213
+ * @returns rgb values
214
+ */
215
+ static hexToRGB(hex) {
216
+ hex = this.removeHashSign(hex);
217
+ if (!hex) {
218
+ return {
219
+ red: '',
220
+ green: '',
221
+ blue: ''
222
+ };
223
+ }
224
+ if (hex.length === 3) {
225
+ let hex6 = '';
226
+ for (let i = 0; i < 3; i++) {
227
+ const c = hex[i];
228
+ hex6 += '' + c + c;
229
+ }
230
+ hex = hex6;
231
+ }
232
+ const bigint = parseInt(hex, 16);
233
+ const r = (bigint >> 16) & 255;
234
+ const g = (bigint >> 8) & 255;
235
+ const b = bigint & 255;
236
+ return {
237
+ red: String(r),
238
+ green: String(g),
239
+ blue: String(b)
240
+ };
241
+ }
242
+ /**
243
+ * Check if value is a valid hex (including #)
244
+ * @param value Value to check
245
+ * @returns true if valid hex
246
+ */
247
+ static isHex(value) {
248
+ return HEX_REGEXP.test(value);
249
+ }
250
+ /**
251
+ * Check if value is a valid RGB string number between 0 - 255
252
+ * @param value Value to check
253
+ * @returns true if a valid number
254
+ */
255
+ static isValidDecimalForRGB(value) {
256
+ return RGB_REGEXP.test(value);
257
+ }
258
+ }
@@ -0,0 +1,75 @@
1
+ /**
2
+ * A helper model in order to keep and update values between RGB and HEX
3
+ */
4
+ declare class ValueModel {
5
+ private initialValue;
6
+ private _hex;
7
+ private _red;
8
+ private _green;
9
+ private _blue;
10
+ /**
11
+ * Create the new value model
12
+ * @param value A valid hex value (e.g. "#ffffff") or an empty string
13
+ */
14
+ constructor(value?: string);
15
+ private getHexValue;
16
+ private isValidRGBValue;
17
+ private isValidHexValue;
18
+ private isValidRGB;
19
+ private isValidHex;
20
+ /**
21
+ * Check if new value is different to initial
22
+ * ignoring hex length
23
+ * @returns tru if different
24
+ */
25
+ hasChanged(): boolean;
26
+ /**
27
+ * Check if RGB and Hex values are valid
28
+ * @returns true if both are valid
29
+ */
30
+ isValid(): boolean;
31
+ /**
32
+ * Set red color from RGB pallette.
33
+ * Setting this overrides hex
34
+ * @param red Red color, the string number from 0 - 255
35
+ */
36
+ set red(red: string);
37
+ /**
38
+ * Get red color from RGB pallette
39
+ */
40
+ get red(): string;
41
+ /**
42
+ * Set green color from RGB pallette.
43
+ * Setting this overrides hex
44
+ * @param green Green color, the string number from 0 - 255
45
+ */
46
+ set green(green: string);
47
+ /**
48
+ * Get green color from RGB pallette
49
+ */
50
+ get green(): string;
51
+ /**
52
+ * Set blue color from RGB pallette.
53
+ * Setting this overrides hex
54
+ * @param blue Blue color, the string number from 0 - 255
55
+ */
56
+ set blue(blue: string);
57
+ /**
58
+ * Get blue color from RGB pallette
59
+ */
60
+ get blue(): string;
61
+ /**
62
+ * Set hex value. Setting hex overrides RGB
63
+ * @param hex Hex value, e.g. "ffffff" or "#ffffff"
64
+ */
65
+ set hex(hex: string);
66
+ /**
67
+ * Get the hex value (hex without #, e.g "ffffff").
68
+ */
69
+ get hex(): string;
70
+ /**
71
+ * Get the value. Value is Hex with #, e.g. "#ffffff"
72
+ */
73
+ get value(): string;
74
+ }
75
+ export { ValueModel };
@@ -0,0 +1,139 @@
1
+ import { ColorHelpers } from './color-helpers';
2
+ /**
3
+ * A helper model in order to keep and update values between RGB and HEX
4
+ */
5
+ class ValueModel {
6
+ /**
7
+ * Create the new value model
8
+ * @param value A valid hex value (e.g. "#ffffff") or an empty string
9
+ */
10
+ constructor(value = '') {
11
+ this.initialValue = value;
12
+ const { red, green, blue } = ColorHelpers.hexToRGB(value);
13
+ this._red = red;
14
+ this._green = green;
15
+ this._blue = blue;
16
+ this._hex = ColorHelpers.removeHashSign(value);
17
+ }
18
+ getHexValue() {
19
+ if (this.red === '' && this.green === '' && this.blue === '') {
20
+ return '';
21
+ }
22
+ else if (!this.isValidRGB()) {
23
+ return '';
24
+ }
25
+ const hex = ColorHelpers.rgbToHex(this.red, this.green, this.blue);
26
+ return hex ? ColorHelpers.removeHashSign(hex) : '';
27
+ }
28
+ isValidRGBValue(value) {
29
+ return value === '' || ColorHelpers.isValidDecimalForRGB(value);
30
+ }
31
+ isValidHexValue(value) {
32
+ return value === '' || ColorHelpers.isHex(`#${value}`);
33
+ }
34
+ isValidRGB() {
35
+ return this.isValidRGBValue(this.red)
36
+ && this.isValidRGBValue(this.green)
37
+ && this.isValidRGBValue(this.blue);
38
+ }
39
+ isValidHex() {
40
+ return this.isValidHexValue(this.hex);
41
+ }
42
+ /**
43
+ * Check if new value is different to initial
44
+ * ignoring hex length
45
+ * @returns tru if different
46
+ */
47
+ hasChanged() {
48
+ return ColorHelpers.expandHex(this.initialValue) !== ColorHelpers.expandHex(this.value);
49
+ }
50
+ /**
51
+ * Check if RGB and Hex values are valid
52
+ * @returns true if both are valid
53
+ */
54
+ isValid() {
55
+ return this.isValidRGB() && this.isValidHex();
56
+ }
57
+ /**
58
+ * Set red color from RGB pallette.
59
+ * Setting this overrides hex
60
+ * @param red Red color, the string number from 0 - 255
61
+ */
62
+ set red(red) {
63
+ this._red = red;
64
+ this._green = this._green || '0';
65
+ this._blue = this._blue || '0';
66
+ this._hex = this.getHexValue();
67
+ }
68
+ /**
69
+ * Get red color from RGB pallette
70
+ */
71
+ get red() {
72
+ return this._red;
73
+ }
74
+ /**
75
+ * Set green color from RGB pallette.
76
+ * Setting this overrides hex
77
+ * @param green Green color, the string number from 0 - 255
78
+ */
79
+ set green(green) {
80
+ this._green = green;
81
+ this._red = this._red || '0';
82
+ this._blue = this._blue || '0';
83
+ this._hex = this.getHexValue();
84
+ }
85
+ /**
86
+ * Get green color from RGB pallette
87
+ */
88
+ get green() {
89
+ return this._green;
90
+ }
91
+ /**
92
+ * Set blue color from RGB pallette.
93
+ * Setting this overrides hex
94
+ * @param blue Blue color, the string number from 0 - 255
95
+ */
96
+ set blue(blue) {
97
+ this._blue = blue;
98
+ this._red = this._red || '0';
99
+ this._green = this._green || '0';
100
+ this._hex = this.getHexValue();
101
+ }
102
+ /**
103
+ * Get blue color from RGB pallette
104
+ */
105
+ get blue() {
106
+ return this._blue;
107
+ }
108
+ /**
109
+ * Set hex value. Setting hex overrides RGB
110
+ * @param hex Hex value, e.g. "ffffff" or "#ffffff"
111
+ */
112
+ set hex(hex) {
113
+ if (!this.isValidHexValue(hex)) {
114
+ this._red = '';
115
+ this._green = '';
116
+ this._blue = '';
117
+ }
118
+ else {
119
+ const rgb = ColorHelpers.hexToRGB(hex);
120
+ this._red = rgb.red;
121
+ this._green = rgb.green;
122
+ this._blue = rgb.blue;
123
+ }
124
+ this._hex = hex;
125
+ }
126
+ /**
127
+ * Get the hex value (hex without #, e.g "ffffff").
128
+ */
129
+ get hex() {
130
+ return this._hex;
131
+ }
132
+ /**
133
+ * Get the value. Value is Hex with #, e.g. "#ffffff"
134
+ */
135
+ get value() {
136
+ return this._hex ? `#${this._hex}` : '';
137
+ }
138
+ }
139
+ export { ValueModel };