@refinitiv-ui/elements 5.12.0-alpha.0 → 5.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (513) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +4 -4
  3. package/lib/accordion/index.d.ts +76 -0
  4. package/lib/accordion/index.js +136 -0
  5. package/lib/accordion/themes/halo/dark/index.js +3 -0
  6. package/lib/accordion/themes/halo/light/index.js +3 -0
  7. package/lib/accordion/themes/solar/charcoal/index.js +3 -0
  8. package/lib/accordion/themes/solar/pearl/index.js +3 -0
  9. package/lib/appstate-bar/index.d.ts +65 -0
  10. package/lib/appstate-bar/index.js +100 -0
  11. package/lib/appstate-bar/themes/halo/dark/index.js +3 -0
  12. package/lib/appstate-bar/themes/halo/light/index.js +3 -0
  13. package/lib/appstate-bar/themes/solar/charcoal/index.js +3 -0
  14. package/lib/appstate-bar/themes/solar/pearl/index.js +3 -0
  15. package/lib/autosuggest/helpers/types.d.ts +54 -0
  16. package/lib/autosuggest/helpers/types.js +1 -0
  17. package/lib/autosuggest/helpers/utils.d.ts +39 -0
  18. package/lib/autosuggest/helpers/utils.js +75 -0
  19. package/lib/autosuggest/index.d.ts +538 -0
  20. package/lib/autosuggest/index.js +1255 -0
  21. package/lib/autosuggest/themes/halo/dark/index.js +5 -0
  22. package/lib/autosuggest/themes/halo/light/index.js +5 -0
  23. package/lib/autosuggest/themes/solar/charcoal/index.js +5 -0
  24. package/lib/autosuggest/themes/solar/pearl/index.js +5 -0
  25. package/lib/button/index.d.ts +138 -0
  26. package/lib/button/index.js +241 -0
  27. package/lib/button/themes/halo/dark/index.js +3 -0
  28. package/lib/button/themes/halo/light/index.js +3 -0
  29. package/lib/button/themes/solar/charcoal/index.js +3 -0
  30. package/lib/button/themes/solar/pearl/index.js +3 -0
  31. package/lib/button-bar/index.d.ts +125 -0
  32. package/lib/button-bar/index.js +295 -0
  33. package/lib/button-bar/themes/halo/dark/index.js +3 -0
  34. package/lib/button-bar/themes/halo/light/index.js +3 -0
  35. package/lib/button-bar/themes/solar/charcoal/index.js +3 -0
  36. package/lib/button-bar/themes/solar/pearl/index.js +3 -0
  37. package/lib/calendar/constants.d.ts +26 -0
  38. package/lib/calendar/constants.js +28 -0
  39. package/lib/calendar/index.d.ts +412 -0
  40. package/lib/calendar/index.js +1274 -0
  41. package/lib/calendar/locales.d.ts +1 -0
  42. package/lib/calendar/locales.js +41 -0
  43. package/lib/calendar/themes/halo/dark/index.js +3 -0
  44. package/lib/calendar/themes/halo/light/index.js +3 -0
  45. package/lib/calendar/themes/solar/charcoal/index.js +3 -0
  46. package/lib/calendar/themes/solar/pearl/index.js +3 -0
  47. package/lib/calendar/types.d.ts +32 -0
  48. package/lib/calendar/types.js +1 -0
  49. package/lib/calendar/utils.d.ts +42 -0
  50. package/lib/calendar/utils.js +120 -0
  51. package/lib/canvas/index.d.ts +101 -0
  52. package/lib/canvas/index.js +173 -0
  53. package/lib/canvas/themes/halo/dark/index.js +2 -0
  54. package/lib/canvas/themes/halo/light/index.js +2 -0
  55. package/lib/canvas/themes/solar/charcoal/index.js +2 -0
  56. package/lib/canvas/themes/solar/pearl/index.js +2 -0
  57. package/lib/card/helpers/types.d.ts +12 -0
  58. package/lib/card/helpers/types.js +1 -0
  59. package/lib/card/index.d.ts +142 -0
  60. package/lib/card/index.js +248 -0
  61. package/lib/card/themes/halo/dark/index.js +5 -0
  62. package/lib/card/themes/halo/light/index.js +5 -0
  63. package/lib/card/themes/solar/charcoal/index.js +5 -0
  64. package/lib/card/themes/solar/pearl/index.js +5 -0
  65. package/lib/chart/helpers/index.d.ts +2 -0
  66. package/lib/chart/helpers/index.js +2 -0
  67. package/lib/chart/helpers/legend.d.ts +5 -0
  68. package/lib/chart/helpers/legend.js +78 -0
  69. package/lib/chart/helpers/merge.d.ts +15 -0
  70. package/lib/chart/helpers/merge.js +28 -0
  71. package/lib/chart/helpers/types.d.ts +69 -0
  72. package/lib/chart/helpers/types.js +1 -0
  73. package/lib/chart/index.d.ts +187 -0
  74. package/lib/chart/index.js +491 -0
  75. package/lib/chart/plugins/doughnut-center-label.d.ts +3 -0
  76. package/lib/chart/plugins/doughnut-center-label.js +196 -0
  77. package/lib/chart/themes/halo/dark/index.js +4 -0
  78. package/lib/chart/themes/halo/light/index.js +4 -0
  79. package/lib/chart/themes/solar/charcoal/index.js +4 -0
  80. package/lib/chart/themes/solar/pearl/index.js +4 -0
  81. package/lib/checkbox/index.d.ts +97 -0
  82. package/lib/checkbox/index.js +194 -0
  83. package/lib/checkbox/themes/halo/dark/index.js +4 -0
  84. package/lib/checkbox/themes/halo/light/index.js +4 -0
  85. package/lib/checkbox/themes/solar/charcoal/index.js +4 -0
  86. package/lib/checkbox/themes/solar/pearl/index.js +4 -0
  87. package/lib/clock/index.d.ts +321 -0
  88. package/lib/clock/index.js +583 -0
  89. package/lib/clock/themes/halo/dark/index.js +2 -0
  90. package/lib/clock/themes/halo/light/index.js +2 -0
  91. package/lib/clock/themes/solar/charcoal/index.js +2 -0
  92. package/lib/clock/themes/solar/pearl/index.js +2 -0
  93. package/lib/clock/utils/TickManager.d.ts +14 -0
  94. package/lib/clock/utils/TickManager.js +66 -0
  95. package/lib/clock/utils/timestamps.d.ts +6 -0
  96. package/lib/clock/utils/timestamps.js +6 -0
  97. package/lib/collapse/custom-elements.json +4 -2
  98. package/lib/collapse/custom-elements.md +1 -1
  99. package/lib/collapse/index.d.ts +123 -0
  100. package/lib/collapse/index.js +227 -0
  101. package/lib/collapse/themes/halo/dark/index.js +5 -0
  102. package/lib/collapse/themes/halo/light/index.js +5 -0
  103. package/lib/collapse/themes/solar/charcoal/index.js +5 -0
  104. package/lib/collapse/themes/solar/pearl/index.js +5 -0
  105. package/lib/color-dialog/elements/color-palettes.d.ts +52 -0
  106. package/lib/color-dialog/elements/color-palettes.js +101 -0
  107. package/lib/color-dialog/elements/grayscale-palettes.d.ts +67 -0
  108. package/lib/color-dialog/elements/grayscale-palettes.js +161 -0
  109. package/lib/color-dialog/elements/palettes.d.ts +65 -0
  110. package/lib/color-dialog/elements/palettes.js +132 -0
  111. package/lib/color-dialog/helpers/color-helpers.d.ts +16 -0
  112. package/lib/color-dialog/helpers/color-helpers.js +161 -0
  113. package/lib/color-dialog/helpers/value-model.d.ts +75 -0
  114. package/lib/color-dialog/helpers/value-model.js +141 -0
  115. package/lib/color-dialog/index.d.ts +232 -0
  116. package/lib/color-dialog/index.js +459 -0
  117. package/lib/color-dialog/themes/halo/dark/index.js +7 -0
  118. package/lib/color-dialog/themes/halo/light/index.js +7 -0
  119. package/lib/color-dialog/themes/solar/charcoal/index.js +7 -0
  120. package/lib/color-dialog/themes/solar/pearl/index.js +7 -0
  121. package/lib/combo-box/helpers/filter.d.ts +10 -0
  122. package/lib/combo-box/helpers/filter.js +29 -0
  123. package/lib/combo-box/helpers/keyboard-event.d.ts +17 -0
  124. package/lib/combo-box/helpers/keyboard-event.js +19 -0
  125. package/lib/combo-box/helpers/renderer.d.ts +8 -0
  126. package/lib/combo-box/helpers/renderer.js +24 -0
  127. package/lib/combo-box/helpers/types.d.ts +11 -0
  128. package/lib/combo-box/helpers/types.js +1 -0
  129. package/lib/combo-box/index.d.ts +551 -0
  130. package/lib/combo-box/index.js +1183 -0
  131. package/lib/combo-box/themes/halo/dark/index.js +7 -0
  132. package/lib/combo-box/themes/halo/light/index.js +7 -0
  133. package/lib/combo-box/themes/solar/charcoal/index.js +7 -0
  134. package/lib/combo-box/themes/solar/pearl/index.js +7 -0
  135. package/lib/counter/index.d.ts +91 -0
  136. package/lib/counter/index.js +154 -0
  137. package/lib/counter/themes/halo/dark/index.js +3 -0
  138. package/lib/counter/themes/halo/light/index.js +3 -0
  139. package/lib/counter/themes/solar/charcoal/index.js +3 -0
  140. package/lib/counter/themes/solar/pearl/index.js +3 -0
  141. package/lib/counter/utils.d.ts +13 -0
  142. package/lib/counter/utils.js +52 -0
  143. package/lib/datetime-picker/index.d.ts +509 -0
  144. package/lib/datetime-picker/index.js +1175 -0
  145. package/lib/datetime-picker/locales.d.ts +8 -0
  146. package/lib/datetime-picker/locales.js +57 -0
  147. package/lib/datetime-picker/themes/halo/dark/index.js +7 -0
  148. package/lib/datetime-picker/themes/halo/light/index.js +7 -0
  149. package/lib/datetime-picker/themes/solar/charcoal/index.js +7 -0
  150. package/lib/datetime-picker/themes/solar/pearl/index.js +7 -0
  151. package/lib/datetime-picker/types.d.ts +3 -0
  152. package/lib/datetime-picker/types.js +1 -0
  153. package/lib/datetime-picker/utils.d.ts +55 -0
  154. package/lib/datetime-picker/utils.js +92 -0
  155. package/lib/dialog/custom-elements.json +11 -0
  156. package/lib/dialog/custom-elements.md +4 -3
  157. package/lib/dialog/draggable-element.d.ts +14 -0
  158. package/lib/dialog/draggable-element.js +221 -0
  159. package/lib/dialog/index.d.ts +213 -0
  160. package/lib/dialog/index.js +353 -0
  161. package/lib/dialog/themes/halo/dark/index.js +7 -0
  162. package/lib/dialog/themes/halo/light/index.js +7 -0
  163. package/lib/dialog/themes/solar/charcoal/index.js +7 -0
  164. package/lib/dialog/themes/solar/pearl/index.js +7 -0
  165. package/lib/email-field/index.d.ts +80 -0
  166. package/lib/email-field/index.js +86 -0
  167. package/lib/email-field/themes/halo/dark/index.js +3 -0
  168. package/lib/email-field/themes/halo/light/index.js +3 -0
  169. package/lib/email-field/themes/solar/charcoal/index.js +3 -0
  170. package/lib/email-field/themes/solar/pearl/index.js +3 -0
  171. package/lib/events.d.ts +121 -0
  172. package/lib/events.js +1 -0
  173. package/lib/flag/index.d.ts +96 -0
  174. package/lib/flag/index.js +168 -0
  175. package/lib/flag/themes/halo/dark/index.js +2 -0
  176. package/lib/flag/themes/halo/light/index.js +2 -0
  177. package/lib/flag/themes/solar/charcoal/index.js +2 -0
  178. package/lib/flag/themes/solar/pearl/index.js +2 -0
  179. package/lib/flag/utils/FlagLoader.d.ts +47 -0
  180. package/lib/flag/utils/FlagLoader.js +86 -0
  181. package/lib/header/index.d.ts +46 -0
  182. package/lib/header/index.js +73 -0
  183. package/lib/header/themes/halo/dark/index.js +2 -0
  184. package/lib/header/themes/halo/light/index.js +2 -0
  185. package/lib/header/themes/solar/charcoal/index.js +2 -0
  186. package/lib/header/themes/solar/pearl/index.js +2 -0
  187. package/lib/heatmap/helpers/color.d.ts +30 -0
  188. package/lib/heatmap/helpers/color.js +68 -0
  189. package/lib/heatmap/helpers/text.d.ts +26 -0
  190. package/lib/heatmap/helpers/text.js +91 -0
  191. package/lib/heatmap/helpers/track.d.ts +102 -0
  192. package/lib/heatmap/helpers/track.js +160 -0
  193. package/lib/heatmap/helpers/types.d.ts +40 -0
  194. package/lib/heatmap/helpers/types.js +1 -0
  195. package/lib/heatmap/index.d.ts +453 -0
  196. package/lib/heatmap/index.js +1103 -0
  197. package/lib/heatmap/themes/halo/dark/index.js +4 -0
  198. package/lib/heatmap/themes/halo/light/index.js +4 -0
  199. package/lib/heatmap/themes/solar/charcoal/index.js +4 -0
  200. package/lib/heatmap/themes/solar/pearl/index.js +4 -0
  201. package/lib/icon/index.d.ts +90 -0
  202. package/lib/icon/index.js +171 -0
  203. package/lib/icon/themes/halo/dark/index.js +2 -0
  204. package/lib/icon/themes/halo/light/index.js +2 -0
  205. package/lib/icon/themes/solar/charcoal/index.js +2 -0
  206. package/lib/icon/themes/solar/pearl/index.js +2 -0
  207. package/lib/icon/utils/IconLoader.d.ts +52 -0
  208. package/lib/icon/utils/IconLoader.js +93 -0
  209. package/lib/index.d.ts +3 -0
  210. package/lib/index.js +3 -0
  211. package/lib/interactive-chart/helpers/merge.d.ts +15 -0
  212. package/lib/interactive-chart/helpers/merge.js +28 -0
  213. package/lib/interactive-chart/helpers/types.d.ts +45 -0
  214. package/lib/interactive-chart/helpers/types.js +6 -0
  215. package/lib/interactive-chart/index.d.ts +383 -0
  216. package/lib/interactive-chart/index.js +1093 -0
  217. package/lib/interactive-chart/themes/halo/dark/index.js +3 -0
  218. package/lib/interactive-chart/themes/halo/light/index.js +3 -0
  219. package/lib/interactive-chart/themes/solar/charcoal/index.js +3 -0
  220. package/lib/interactive-chart/themes/solar/pearl/index.js +3 -0
  221. package/lib/item/helpers/types.d.ts +57 -0
  222. package/lib/item/helpers/types.js +1 -0
  223. package/lib/item/index.d.ts +159 -0
  224. package/lib/item/index.js +272 -0
  225. package/lib/item/themes/halo/dark/index.js +4 -0
  226. package/lib/item/themes/halo/light/index.js +4 -0
  227. package/lib/item/themes/solar/charcoal/index.js +4 -0
  228. package/lib/item/themes/solar/pearl/index.js +4 -0
  229. package/lib/label/index.d.ts +102 -0
  230. package/lib/label/index.js +245 -0
  231. package/lib/label/themes/halo/dark/index.js +3 -0
  232. package/lib/label/themes/halo/light/index.js +3 -0
  233. package/lib/label/themes/solar/charcoal/index.js +3 -0
  234. package/lib/label/themes/solar/pearl/index.js +3 -0
  235. package/lib/layout/index.d.ts +107 -0
  236. package/lib/layout/index.js +212 -0
  237. package/lib/layout/themes/halo/dark/index.js +2 -0
  238. package/lib/layout/themes/halo/light/index.js +2 -0
  239. package/lib/layout/themes/solar/charcoal/index.js +2 -0
  240. package/lib/layout/themes/solar/pearl/index.js +2 -0
  241. package/lib/led-gauge/index.d.ts +144 -0
  242. package/lib/led-gauge/index.js +438 -0
  243. package/lib/led-gauge/themes/halo/dark/index.js +3 -0
  244. package/lib/led-gauge/themes/halo/light/index.js +3 -0
  245. package/lib/led-gauge/themes/solar/charcoal/index.js +3 -0
  246. package/lib/led-gauge/themes/solar/pearl/index.js +3 -0
  247. package/lib/list/extensible-function.d.ts +8 -0
  248. package/lib/list/extensible-function.js +13 -0
  249. package/lib/list/helpers/list-renderer.d.ts +9 -0
  250. package/lib/list/helpers/list-renderer.js +37 -0
  251. package/lib/list/helpers/types.d.ts +3 -0
  252. package/lib/list/helpers/types.js +1 -0
  253. package/lib/list/index.d.ts +313 -0
  254. package/lib/list/index.js +640 -0
  255. package/lib/list/renderer.d.ts +36 -0
  256. package/lib/list/renderer.js +9 -0
  257. package/lib/list/themes/halo/dark/index.js +3 -0
  258. package/lib/list/themes/halo/light/index.js +3 -0
  259. package/lib/list/themes/solar/charcoal/index.js +3 -0
  260. package/lib/list/themes/solar/pearl/index.js +3 -0
  261. package/lib/loader/index.d.ts +41 -0
  262. package/lib/loader/index.js +61 -0
  263. package/lib/loader/themes/halo/dark/index.js +2 -0
  264. package/lib/loader/themes/halo/light/index.js +2 -0
  265. package/lib/loader/themes/solar/charcoal/index.js +2 -0
  266. package/lib/loader/themes/solar/pearl/index.js +2 -0
  267. package/lib/multi-input/helpers/types.d.ts +11 -0
  268. package/lib/multi-input/helpers/types.js +1 -0
  269. package/lib/multi-input/index.d.ts +301 -0
  270. package/lib/multi-input/index.js +594 -0
  271. package/lib/multi-input/themes/halo/dark/index.js +4 -0
  272. package/lib/multi-input/themes/halo/light/index.js +4 -0
  273. package/lib/multi-input/themes/solar/charcoal/index.js +4 -0
  274. package/lib/multi-input/themes/solar/pearl/index.js +4 -0
  275. package/lib/notification/elements/notification-tray.d.ts +97 -0
  276. package/lib/notification/elements/notification-tray.js +167 -0
  277. package/lib/notification/elements/notification.d.ts +90 -0
  278. package/lib/notification/elements/notification.js +154 -0
  279. package/lib/notification/helpers/status.d.ts +30 -0
  280. package/lib/notification/helpers/status.js +130 -0
  281. package/lib/notification/helpers/types.d.ts +10 -0
  282. package/lib/notification/helpers/types.js +1 -0
  283. package/lib/notification/index.d.ts +2 -0
  284. package/lib/notification/index.js +2 -0
  285. package/lib/notification/themes/halo/dark/index.js +5 -0
  286. package/lib/notification/themes/halo/light/index.js +5 -0
  287. package/lib/notification/themes/solar/charcoal/index.js +5 -0
  288. package/lib/notification/themes/solar/pearl/index.js +5 -0
  289. package/lib/number-field/index.d.ts +339 -0
  290. package/lib/number-field/index.js +741 -0
  291. package/lib/number-field/themes/halo/dark/index.js +3 -0
  292. package/lib/number-field/themes/halo/light/index.js +3 -0
  293. package/lib/number-field/themes/solar/charcoal/index.js +3 -0
  294. package/lib/number-field/themes/solar/pearl/index.js +3 -0
  295. package/lib/overlay/elements/overlay-backdrop.d.ts +46 -0
  296. package/lib/overlay/elements/overlay-backdrop.js +64 -0
  297. package/lib/overlay/elements/overlay-viewport.d.ts +40 -0
  298. package/lib/overlay/elements/overlay-viewport.js +52 -0
  299. package/lib/overlay/elements/overlay.d.ts +408 -0
  300. package/lib/overlay/elements/overlay.js +1426 -0
  301. package/lib/overlay/helpers/functions.d.ts +13 -0
  302. package/lib/overlay/helpers/functions.js +16 -0
  303. package/lib/overlay/helpers/types.d.ts +97 -0
  304. package/lib/overlay/helpers/types.js +16 -0
  305. package/lib/overlay/index.d.ts +2 -0
  306. package/lib/overlay/index.js +1 -0
  307. package/lib/overlay/managers/backdrop-manager.d.ts +45 -0
  308. package/lib/overlay/managers/backdrop-manager.js +96 -0
  309. package/lib/overlay/managers/close-manager.d.ts +54 -0
  310. package/lib/overlay/managers/close-manager.js +138 -0
  311. package/lib/overlay/managers/focus-manager.d.ts +71 -0
  312. package/lib/overlay/managers/focus-manager.js +228 -0
  313. package/lib/overlay/managers/interaction-lock-manager.d.ts +138 -0
  314. package/lib/overlay/managers/interaction-lock-manager.js +375 -0
  315. package/lib/overlay/managers/viewport-manager.d.ts +93 -0
  316. package/lib/overlay/managers/viewport-manager.js +211 -0
  317. package/lib/overlay/managers/zindex-manager.d.ts +80 -0
  318. package/lib/overlay/managers/zindex-manager.js +195 -0
  319. package/lib/overlay/themes/halo/dark/index.js +4 -0
  320. package/lib/overlay/themes/halo/light/index.js +4 -0
  321. package/lib/overlay/themes/solar/charcoal/index.js +4 -0
  322. package/lib/overlay/themes/solar/pearl/index.js +4 -0
  323. package/lib/overlay-menu/helpers/types.d.ts +8 -0
  324. package/lib/overlay-menu/helpers/types.js +1 -0
  325. package/lib/overlay-menu/index.d.ts +387 -0
  326. package/lib/overlay-menu/index.js +935 -0
  327. package/lib/overlay-menu/managers/menu-manager.d.ts +98 -0
  328. package/lib/overlay-menu/managers/menu-manager.js +240 -0
  329. package/lib/overlay-menu/themes/halo/dark/index.js +5 -0
  330. package/lib/overlay-menu/themes/halo/light/index.js +5 -0
  331. package/lib/overlay-menu/themes/solar/charcoal/index.js +5 -0
  332. package/lib/overlay-menu/themes/solar/pearl/index.js +5 -0
  333. package/lib/pagination/index.d.ts +275 -0
  334. package/lib/pagination/index.js +552 -0
  335. package/lib/pagination/themes/halo/dark/index.js +6 -0
  336. package/lib/pagination/themes/halo/light/index.js +6 -0
  337. package/lib/pagination/themes/solar/charcoal/index.js +6 -0
  338. package/lib/pagination/themes/solar/pearl/index.js +6 -0
  339. package/lib/panel/index.d.ts +48 -0
  340. package/lib/panel/index.js +74 -0
  341. package/lib/panel/themes/halo/dark/index.js +2 -0
  342. package/lib/panel/themes/halo/light/index.js +2 -0
  343. package/lib/panel/themes/solar/charcoal/index.js +2 -0
  344. package/lib/panel/themes/solar/pearl/index.js +2 -0
  345. package/lib/password-field/index.d.ts +89 -0
  346. package/lib/password-field/index.js +112 -0
  347. package/lib/password-field/themes/halo/dark/index.js +3 -0
  348. package/lib/password-field/themes/halo/light/index.js +3 -0
  349. package/lib/password-field/themes/solar/charcoal/index.js +3 -0
  350. package/lib/password-field/themes/solar/pearl/index.js +3 -0
  351. package/lib/pill/index.d.ts +97 -0
  352. package/lib/pill/index.js +160 -0
  353. package/lib/pill/themes/halo/dark/index.js +3 -0
  354. package/lib/pill/themes/halo/light/index.js +3 -0
  355. package/lib/pill/themes/solar/charcoal/index.js +3 -0
  356. package/lib/pill/themes/solar/pearl/index.js +3 -0
  357. package/lib/progress-bar/index.d.ts +82 -0
  358. package/lib/progress-bar/index.js +157 -0
  359. package/lib/progress-bar/themes/halo/dark/index.js +2 -0
  360. package/lib/progress-bar/themes/halo/light/index.js +2 -0
  361. package/lib/progress-bar/themes/solar/charcoal/index.js +2 -0
  362. package/lib/progress-bar/themes/solar/pearl/index.js +2 -0
  363. package/lib/radio-button/index.d.ts +123 -0
  364. package/lib/radio-button/index.js +261 -0
  365. package/lib/radio-button/radio-button-registry.d.ts +22 -0
  366. package/lib/radio-button/radio-button-registry.js +93 -0
  367. package/lib/radio-button/themes/halo/dark/index.js +3 -0
  368. package/lib/radio-button/themes/halo/light/index.js +3 -0
  369. package/lib/radio-button/themes/solar/charcoal/index.js +3 -0
  370. package/lib/radio-button/themes/solar/pearl/index.js +3 -0
  371. package/lib/rating/index.d.ts +91 -0
  372. package/lib/rating/index.js +157 -0
  373. package/lib/rating/themes/halo/dark/index.js +2 -0
  374. package/lib/rating/themes/halo/light/index.js +2 -0
  375. package/lib/rating/themes/solar/charcoal/index.js +2 -0
  376. package/lib/rating/themes/solar/pearl/index.js +2 -0
  377. package/lib/search-field/index.d.ts +77 -0
  378. package/lib/search-field/index.js +84 -0
  379. package/lib/search-field/themes/halo/dark/index.js +3 -0
  380. package/lib/search-field/themes/halo/light/index.js +3 -0
  381. package/lib/search-field/themes/solar/charcoal/index.js +3 -0
  382. package/lib/search-field/themes/solar/pearl/index.js +3 -0
  383. package/lib/select/helpers/types.d.ts +3 -0
  384. package/lib/select/helpers/types.js +1 -0
  385. package/lib/select/index.d.ts +396 -0
  386. package/lib/select/index.js +981 -0
  387. package/lib/select/themes/halo/dark/index.js +5 -0
  388. package/lib/select/themes/halo/light/index.js +5 -0
  389. package/lib/select/themes/solar/charcoal/index.js +5 -0
  390. package/lib/select/themes/solar/pearl/index.js +5 -0
  391. package/lib/sidebar-layout/index.d.ts +70 -0
  392. package/lib/sidebar-layout/index.js +134 -0
  393. package/lib/sidebar-layout/themes/halo/dark/index.js +3 -0
  394. package/lib/sidebar-layout/themes/halo/light/index.js +3 -0
  395. package/lib/sidebar-layout/themes/solar/charcoal/index.js +3 -0
  396. package/lib/sidebar-layout/themes/solar/pearl/index.js +3 -0
  397. package/lib/slider/index.d.ts +409 -0
  398. package/lib/slider/index.js +1197 -0
  399. package/lib/slider/themes/halo/dark/index.js +3 -0
  400. package/lib/slider/themes/halo/light/index.js +3 -0
  401. package/lib/slider/themes/solar/charcoal/index.js +3 -0
  402. package/lib/slider/themes/solar/pearl/index.js +3 -0
  403. package/lib/sparkline/index.d.ts +109 -0
  404. package/lib/sparkline/index.js +188 -0
  405. package/lib/sparkline/themes/halo/dark/index.js +2 -0
  406. package/lib/sparkline/themes/halo/light/index.js +2 -0
  407. package/lib/sparkline/themes/solar/charcoal/index.js +2 -0
  408. package/lib/sparkline/themes/solar/pearl/index.js +2 -0
  409. package/lib/swing-gauge/const.d.ts +22 -0
  410. package/lib/swing-gauge/const.js +26 -0
  411. package/lib/swing-gauge/helpers.d.ts +8 -0
  412. package/lib/swing-gauge/helpers.js +105 -0
  413. package/lib/swing-gauge/index.d.ts +296 -0
  414. package/lib/swing-gauge/index.js +764 -0
  415. package/lib/swing-gauge/themes/halo/dark/index.js +3 -0
  416. package/lib/swing-gauge/themes/halo/light/index.js +3 -0
  417. package/lib/swing-gauge/themes/solar/charcoal/index.js +3 -0
  418. package/lib/swing-gauge/themes/solar/pearl/index.js +3 -0
  419. package/lib/swing-gauge/types.d.ts +34 -0
  420. package/lib/swing-gauge/types.js +1 -0
  421. package/lib/tab/custom-elements.json +13 -0
  422. package/lib/tab/custom-elements.md +1 -0
  423. package/lib/tab/index.d.ts +136 -0
  424. package/lib/tab/index.js +236 -0
  425. package/lib/tab/themes/halo/dark/index.js +4 -0
  426. package/lib/tab/themes/halo/light/index.js +4 -0
  427. package/lib/tab/themes/solar/charcoal/index.js +4 -0
  428. package/lib/tab/themes/solar/pearl/index.js +4 -0
  429. package/lib/tab-bar/custom-elements.json +12 -0
  430. package/lib/tab-bar/custom-elements.md +7 -0
  431. package/lib/tab-bar/helpers/animate.d.ts +16 -0
  432. package/lib/tab-bar/helpers/animate.js +53 -0
  433. package/lib/tab-bar/index.d.ts +198 -0
  434. package/lib/tab-bar/index.js +428 -0
  435. package/lib/tab-bar/themes/halo/dark/index.js +4 -0
  436. package/lib/tab-bar/themes/halo/light/index.js +4 -0
  437. package/lib/tab-bar/themes/solar/charcoal/index.js +4 -0
  438. package/lib/tab-bar/themes/solar/pearl/index.js +4 -0
  439. package/lib/text-field/index.d.ts +151 -0
  440. package/lib/text-field/index.js +260 -0
  441. package/lib/text-field/themes/halo/dark/index.js +3 -0
  442. package/lib/text-field/themes/halo/light/index.js +3 -0
  443. package/lib/text-field/themes/solar/charcoal/index.js +3 -0
  444. package/lib/text-field/themes/solar/pearl/index.js +3 -0
  445. package/lib/time-picker/index.d.ts +412 -0
  446. package/lib/time-picker/index.js +898 -0
  447. package/lib/time-picker/themes/halo/dark/index.js +4 -0
  448. package/lib/time-picker/themes/halo/light/index.js +4 -0
  449. package/lib/time-picker/themes/solar/charcoal/index.js +4 -0
  450. package/lib/time-picker/themes/solar/pearl/index.js +4 -0
  451. package/lib/toggle/index.d.ts +87 -0
  452. package/lib/toggle/index.js +153 -0
  453. package/lib/toggle/themes/halo/dark/index.js +2 -0
  454. package/lib/toggle/themes/halo/light/index.js +2 -0
  455. package/lib/toggle/themes/solar/charcoal/index.js +2 -0
  456. package/lib/toggle/themes/solar/pearl/index.js +2 -0
  457. package/lib/tooltip/elements/title-tooltip.d.ts +1 -0
  458. package/lib/tooltip/elements/title-tooltip.js +18 -0
  459. package/lib/tooltip/elements/tooltip-element.d.ts +21 -0
  460. package/lib/tooltip/elements/tooltip-element.js +54 -0
  461. package/lib/tooltip/helpers/overflow-tooltip.d.ts +9 -0
  462. package/lib/tooltip/helpers/overflow-tooltip.js +19 -0
  463. package/lib/tooltip/helpers/renderer.d.ts +8 -0
  464. package/lib/tooltip/helpers/renderer.js +11 -0
  465. package/lib/tooltip/helpers/types.d.ts +23 -0
  466. package/lib/tooltip/helpers/types.js +1 -0
  467. package/lib/tooltip/index.d.ts +232 -0
  468. package/lib/tooltip/index.js +477 -0
  469. package/lib/tooltip/managers/tooltip-manager.d.ts +15 -0
  470. package/lib/tooltip/managers/tooltip-manager.js +140 -0
  471. package/lib/tooltip/themes/halo/dark/index.js +3 -0
  472. package/lib/tooltip/themes/halo/light/index.js +3 -0
  473. package/lib/tooltip/themes/solar/charcoal/index.js +3 -0
  474. package/lib/tooltip/themes/solar/pearl/index.js +3 -0
  475. package/lib/tornado-chart/elements/tornado-chart.d.ts +78 -0
  476. package/lib/tornado-chart/elements/tornado-chart.js +122 -0
  477. package/lib/tornado-chart/elements/tornado-item.d.ts +110 -0
  478. package/lib/tornado-chart/elements/tornado-item.js +207 -0
  479. package/lib/tornado-chart/index.d.ts +2 -0
  480. package/lib/tornado-chart/index.js +2 -0
  481. package/lib/tornado-chart/themes/halo/dark/index.js +6 -0
  482. package/lib/tornado-chart/themes/halo/light/index.js +6 -0
  483. package/lib/tornado-chart/themes/solar/charcoal/index.js +6 -0
  484. package/lib/tornado-chart/themes/solar/pearl/index.js +6 -0
  485. package/lib/tree/elements/tree-item.d.ts +129 -0
  486. package/lib/tree/elements/tree-item.js +238 -0
  487. package/lib/tree/elements/tree.d.ts +203 -0
  488. package/lib/tree/elements/tree.js +414 -0
  489. package/lib/tree/helpers/filter.d.ts +8 -0
  490. package/lib/tree/helpers/filter.js +33 -0
  491. package/lib/tree/helpers/renderer.d.ts +5 -0
  492. package/lib/tree/helpers/renderer.js +33 -0
  493. package/lib/tree/helpers/types.d.ts +25 -0
  494. package/lib/tree/helpers/types.js +1 -0
  495. package/lib/tree/index.d.ts +4 -0
  496. package/lib/tree/index.js +3 -0
  497. package/lib/tree/managers/tree-manager.d.ts +248 -0
  498. package/lib/tree/managers/tree-manager.js +395 -0
  499. package/lib/tree/themes/halo/dark/index.js +7 -0
  500. package/lib/tree/themes/halo/light/index.js +7 -0
  501. package/lib/tree/themes/solar/charcoal/index.js +7 -0
  502. package/lib/tree/themes/solar/pearl/index.js +7 -0
  503. package/lib/tree-select/helpers/types.d.ts +4 -0
  504. package/lib/tree-select/helpers/types.js +1 -0
  505. package/lib/tree-select/index.d.ts +404 -0
  506. package/lib/tree-select/index.js +891 -0
  507. package/lib/tree-select/themes/halo/dark/index.js +11 -0
  508. package/lib/tree-select/themes/halo/light/index.js +11 -0
  509. package/lib/tree-select/themes/solar/charcoal/index.js +11 -0
  510. package/lib/tree-select/themes/solar/pearl/index.js +11 -0
  511. package/lib/version.d.ts +1 -0
  512. package/lib/version.js +1 -0
  513. package/package.json +293 -24
@@ -0,0 +1,594 @@
1
+ import { __decorate } from "tslib";
2
+ import { ControlElement, css, html } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
5
+ import { query } from '@refinitiv-ui/core/lib/decorators/query.js';
6
+ import { ifDefined } from '@refinitiv-ui/core/lib/directives/if-defined.js';
7
+ import { VERSION } from '../version.js';
8
+ import { CollectionComposer } from '@refinitiv-ui/utils/lib/collection.js';
9
+ import '../pill/index.js';
10
+ import '../text-field/index.js';
11
+ const hasChanged = (newVal, oldVal) => oldVal === undefined ? false : newVal !== oldVal;
12
+ /**
13
+ * An input control component to display a selection of pills
14
+ *
15
+ * @event value-changed - Fired when new value of text field is changed.
16
+ * Property `detail.value` will be the new value.
17
+ *
18
+ * @event error-changed - Dispatched when error state changes.
19
+ * Property `detail.error` is error from validation.
20
+ *
21
+ * @event item-added - Fired when new pill is added.
22
+ * Property `detail.item` is new added pill.
23
+ * Property `detail.items` is new list of all pills.
24
+ *
25
+ * @event item-removed - Fired when item is removed.
26
+ * Property `detail.item` is pill that removed.
27
+ * Property `detail.items` is new list of all pills.
28
+ *
29
+ * @event item-error - Fired when item that attempt to add is invalid.
30
+ * Property `detail.item` is item with an error.
31
+ * Property `detail.items` a current list of pills.
32
+ *
33
+ * @prop {boolean} [readonly=false] - Hides text field and clear icon from all pills
34
+ * @attr {boolean} readonly - Hides text field and clear icon from all pills
35
+ *
36
+ * @attr {boolean} disabled - Set disabled state
37
+ * @prop {boolean} [disabled=false] - Set disabled state
38
+ *
39
+ * @prop {string} value - Current value of text field
40
+ * @attr {string} value - Current value of text field
41
+ *
42
+ */
43
+ let MultiInput = class MultiInput extends ControlElement {
44
+ constructor() {
45
+ super(...arguments);
46
+ /**
47
+ * Hide text input box
48
+ */
49
+ this.pillsOnly = false;
50
+ /**
51
+ * Specify icon to display inside input box
52
+ */
53
+ this.icon = '';
54
+ /**
55
+ * Placeholder text to display in input box
56
+ */
57
+ this.placeholder = '';
58
+ /**
59
+ * Set state to error
60
+ */
61
+ this.error = false;
62
+ /**
63
+ * Set state to warning
64
+ */
65
+ this.warning = false;
66
+ /**
67
+ * Set character max limit
68
+ */
69
+ this.maxLength = null;
70
+ /**
71
+ * Set character min limit
72
+ */
73
+ this.minLength = null;
74
+ this._data = null;
75
+ this.composer = new CollectionComposer([]);
76
+ /**
77
+ * @ignore
78
+ */
79
+ this.multiple = true;
80
+ /** Old value for handle reset value */
81
+ this.oldValue = '';
82
+ /**
83
+ * render the pill component
84
+ * @param item for render
85
+ * @param index the position item of values
86
+ * @returns the template of a pill component
87
+ */
88
+ this.pillTemplate = (item, index) => {
89
+ return html `
90
+ <ef-pill
91
+ part="pill"
92
+ index="${index}"
93
+ clears
94
+ ?readonly="${item.readonly || this.readonly}"
95
+ ?disabled="${item.disabled || this.disabled}"
96
+ value="${item.value}"
97
+ @clear="${this.onPillClearsHandler}">
98
+ ${item.label}
99
+ </ef-pill>
100
+ `;
101
+ };
102
+ }
103
+ /**
104
+ * Element version number
105
+ * @returns version number
106
+ */
107
+ static get version() {
108
+ return VERSION;
109
+ }
110
+ /**
111
+ * A `CSSResultGroup` that will be used
112
+ * to style the host, slotted children
113
+ * and the internal template of the element.
114
+ * @return CSS template
115
+ */
116
+ static get styles() {
117
+ return css `
118
+ :host {
119
+ display: block;
120
+ }
121
+ [part=list] {
122
+ flex-flow: row wrap;
123
+ max-height: 100%;
124
+ display: flex;
125
+ align-items: center;
126
+ align-content: flex-start;
127
+ flex: 1 1 auto;
128
+ flex-direction: row;
129
+ overflow-y: auto;
130
+ margin: auto;
131
+ }
132
+ [part=pill] {
133
+ display: inline-flex;
134
+ }
135
+ [part=search] {
136
+ flex: 1;
137
+ min-width: 170px;
138
+ }
139
+ [scrollable] {
140
+ overflow: auto;
141
+ }
142
+ `;
143
+ }
144
+ /**
145
+ * Array of item's values ( readonly )
146
+ * @readonly
147
+ * @type {string[]}
148
+ * @default []
149
+ */
150
+ get values() {
151
+ return this.composer.queryItems(() => true).map(({ value }) => value);
152
+ }
153
+ /**
154
+ * Selection start index
155
+ * @default null
156
+ */
157
+ get selectionStart() {
158
+ if (this.search) {
159
+ return this.search.selectionStart;
160
+ }
161
+ return null;
162
+ }
163
+ set selectionStart(index) {
164
+ if (this.search) {
165
+ this.search.selectionStart = index;
166
+ }
167
+ }
168
+ /**
169
+ * Selection end index
170
+ * @default null
171
+ */
172
+ get selectionEnd() {
173
+ if (this.search) {
174
+ return this.search.selectionEnd;
175
+ }
176
+ return null;
177
+ }
178
+ set selectionEnd(index) {
179
+ if (this.search) {
180
+ this.search.selectionEnd = index;
181
+ }
182
+ }
183
+ /**
184
+ * The data object, used to render the list.
185
+ * @type {MultiInputData | null}
186
+ * @default null
187
+ */
188
+ get data() {
189
+ return this._data;
190
+ }
191
+ set data(value) {
192
+ const oldValue = this._data;
193
+ if (oldValue === value) {
194
+ return;
195
+ }
196
+ else if (Array.isArray(value)) {
197
+ this.composer = new CollectionComposer(value);
198
+ }
199
+ else {
200
+ this.composer = new CollectionComposer([]);
201
+ }
202
+ this._data = value;
203
+ this.requestUpdate('data', oldValue);
204
+ }
205
+ /**
206
+ * Removes the item by the value and returns array of removed items
207
+ * @param value {string} Value of item to remove
208
+ * @returns array of removed items
209
+ */
210
+ removeByValue(value) {
211
+ return this.removeByProperty(value, 'value');
212
+ }
213
+ /**
214
+ * Add a new item to the input. Return newly added object or null if added invalid object.
215
+ * @param item to add. Object must have at least value and label
216
+ * @returns {MultiInputDataItem | null} added item
217
+ */
218
+ add(item) {
219
+ if (!this.isItem(item)) {
220
+ this.notify(item, 'item-error');
221
+ return null;
222
+ }
223
+ return this.addItem(item);
224
+ }
225
+ /**
226
+ * Removes last item. Returns item that removed or null if list was empty
227
+ * @returns {MultiInputDataItem | null} Removed item or null if list was empty
228
+ */
229
+ removeLastItem() {
230
+ if (!this.values.length) {
231
+ return null;
232
+ }
233
+ return this.removeByIndex(this.values.length - 1);
234
+ }
235
+ /**
236
+ * Removes pill by index. Returns item that removed or null if list was empty
237
+ * @param {number} index of pill to be removed
238
+ * @returns {MultiInputDataItem | null} Removed item or null if list was empty
239
+ */
240
+ removeByIndex(index) {
241
+ const items = this.composer.queryItems(() => true);
242
+ if (items.length <= index) {
243
+ return null;
244
+ }
245
+ const item = items[index];
246
+ return this.removeItem(item);
247
+ }
248
+ /**
249
+ * Remove item from collection and notify
250
+ * @param item processed entity
251
+ * @param notifyEvent should notify about changes
252
+ * @returns removed item or null
253
+ */
254
+ removeItem(item, notifyEvent = false) {
255
+ let process = true;
256
+ if (notifyEvent) {
257
+ process = this.notify(item, 'item-removed');
258
+ }
259
+ if (process) {
260
+ this.composer.removeItem(item);
261
+ this.requestUpdate();
262
+ return item;
263
+ }
264
+ return null;
265
+ }
266
+ /**
267
+ * Removes item by a property within item
268
+ * @param value of property
269
+ * @param property name
270
+ * @returns array of removed items
271
+ */
272
+ removeByProperty(value, property) {
273
+ const items = this.composer.queryItemsByPropertyValue(property, value);
274
+ const result = [];
275
+ for (let x = 0; x < items.length; x += 1) {
276
+ const item = this.removeItem(items[x]);
277
+ item && result.push(item);
278
+ }
279
+ return result;
280
+ }
281
+ /**
282
+ * Add item to collection and notify
283
+ * @param item processed entity
284
+ * @param notifyEvent should notify about changes
285
+ * @returns added item or null
286
+ */
287
+ addItem(item, notifyEvent = false) {
288
+ let process = true;
289
+ if (notifyEvent) {
290
+ process = this.notify(item, 'item-added');
291
+ }
292
+ if (process) {
293
+ this.composer.addItem(item);
294
+ this.requestUpdate();
295
+ return item;
296
+ }
297
+ return null;
298
+ }
299
+ /**
300
+ * validate input according `minLength` and `maxLength` properties
301
+ * @param {string} value value for validate
302
+ * change state of `error` property according validation
303
+ * @returns {void}
304
+ */
305
+ validateInput(value) {
306
+ const error = this.shouldValidateForMinLength(value);
307
+ if (this.error !== error) {
308
+ this.error = error;
309
+ this.notifyPropertyChange('error', this.error);
310
+ }
311
+ }
312
+ /**
313
+ * @param value value of changed.
314
+ * @returns {boolean} true if there is no error, false when minLength more than 0 and value is too short
315
+ */
316
+ shouldValidateForMinLength(value) {
317
+ let error = false;
318
+ if (value) {
319
+ error = !!this.minLength && (this.minLength > value.length);
320
+ }
321
+ return error;
322
+ }
323
+ /**
324
+ * Current value of text field
325
+ * @default -
326
+ * @param value Element value
327
+ */
328
+ set value(value) {
329
+ const oldValue = this.oldValue;
330
+ value = this.castValue(value);
331
+ if (!this.shouldValidateForMaxLength(value)) {
332
+ this.warnInvalidValue(value);
333
+ value = oldValue;
334
+ }
335
+ if (oldValue !== value) {
336
+ this.oldValue = value;
337
+ this.requestUpdate('value', oldValue);
338
+ }
339
+ }
340
+ get value() {
341
+ return this.oldValue;
342
+ }
343
+ /**
344
+ * @param value value for validate.
345
+ * @returns true if there is maxLength is null and maxLength is more than value.
346
+ */
347
+ shouldValidateForMaxLength(value) {
348
+ if (this.maxLength) {
349
+ return value.length <= this.maxLength;
350
+ }
351
+ return true;
352
+ }
353
+ /**
354
+ * Called when the element’s DOM has been updated and rendered
355
+ * @param changedProperties Properties that has changed
356
+ * @returns shouldUpdate
357
+ */
358
+ updated(changedProperties) {
359
+ super.updated(changedProperties);
360
+ if (this.shouldValidateInput(changedProperties)) {
361
+ this.validateInput(this.value);
362
+ }
363
+ }
364
+ /**
365
+ * Check if input should be re-validated
366
+ * @param changedProperties Properties that has changed
367
+ * @returns True if input should be re-validated
368
+ */
369
+ shouldValidateInput(changedProperties) {
370
+ return (changedProperties.has('minLength') || !!(this.minLength && changedProperties.has('value')));
371
+ }
372
+ /**
373
+ * Set the selection range
374
+ * @param startSelection Start of selection
375
+ * @param endSelection End of the selection
376
+ * @returns {void}
377
+ */
378
+ setSelectionRange(startSelection, endSelection) {
379
+ var _a;
380
+ (_a = this.search) === null || _a === void 0 ? void 0 : _a.setSelectionRange(startSelection, endSelection);
381
+ }
382
+ /**
383
+ * Select the contents of input
384
+ * @returns void
385
+ */
386
+ select() {
387
+ if (!this.disabled && !this.readonly) {
388
+ if (this.search) {
389
+ this.search.select();
390
+ }
391
+ }
392
+ }
393
+ /**
394
+ * render this component
395
+ * @returns the main template
396
+ */
397
+ render() {
398
+ return html `
399
+ <div id="list" part="list">
400
+ ${this.pillsTemplate()}
401
+ ${this.textFieldTemplate}
402
+ </div>
403
+ `;
404
+ }
405
+ /**
406
+ * render the search element
407
+ * @returns the template of the search element
408
+ */
409
+ get textFieldTemplate() {
410
+ if (this.readonly || this.pillsOnly) {
411
+ return null;
412
+ }
413
+ return html `
414
+ <ef-text-field
415
+ tabindex="1"
416
+ part="search"
417
+ transparent
418
+ ?disabled="${this.disabled}"
419
+ @keydown="${this.handleKeyDown}"
420
+ @change="${this.onInputChange}"
421
+ @input="${this.onInputChange}"
422
+ maxlength="${ifDefined(this.maxLength || undefined)}"
423
+ minlength="${ifDefined(this.minLength || undefined)}"
424
+ ?error="${this.error}"
425
+ .value="${this.value}"
426
+ .icon="${this.icon || null}"
427
+ .placeholder="${this.placeholder}"
428
+ ></ef-text-field>
429
+ `;
430
+ }
431
+ /**
432
+ * render pill components
433
+ * @returns the template of pill components
434
+ */
435
+ pillsTemplate() {
436
+ return html `
437
+ ${this.composer.queryItems(() => true).map(this.pillTemplate)}
438
+ `;
439
+ }
440
+ /**
441
+ * handle the clear event of pill
442
+ * @param event the event contains the current pill
443
+ * @returns {void}
444
+ */
445
+ onPillClearsHandler(event) {
446
+ const pill = event.target;
447
+ const index = pill.getAttribute('index');
448
+ if (index === null) {
449
+ return;
450
+ }
451
+ const items = this.composer.queryItems(() => true);
452
+ const item = items[Number(index)];
453
+ this.removeItem(item, true);
454
+ this.focus(); // keep focus on multi-input
455
+ }
456
+ /**
457
+ * the wrapper for item events
458
+ * @param item to notify about
459
+ * @param eventType notify mode - [item-removed|item-added|item-error]
460
+ * @returns true if event was not prevented
461
+ */
462
+ notify(item, eventType) {
463
+ const customEventInit = {
464
+ detail: { item, items: this.composer.queryItems(() => true) },
465
+ cancelable: true
466
+ };
467
+ const event = new CustomEvent(eventType, customEventInit);
468
+ this.dispatchEvent(event);
469
+ return !event.defaultPrevented;
470
+ }
471
+ /**
472
+ * Detect keydown and delete last item if delete key is pushed
473
+ * @param event keydown event
474
+ * @returns {void}
475
+ */
476
+ handleKeyDown(event) {
477
+ if (event.key === 'Backspace') {
478
+ this.removeLastItemByKeyboard(event);
479
+ }
480
+ else if (event.key === 'Enter') {
481
+ this.addItemByKeyboard();
482
+ }
483
+ }
484
+ /**
485
+ * handle when value is changed
486
+ * @param event Input change event
487
+ * @returns {void}
488
+ */
489
+ onInputChange(event) {
490
+ const target = event.target;
491
+ this.setValueAndNotify(target.value);
492
+ }
493
+ /**
494
+ * handle keydown event when the key code is the backspace
495
+ * @param event keyboard backspace keydown for preventing default in case of native functionality removing
496
+ * @returns {void}
497
+ */
498
+ removeLastItemByKeyboard(event) {
499
+ if (this.isSearchValueEmptyWithoutReadonlyAndDisabled()) {
500
+ const items = this.composer.queryItems(() => true);
501
+ if (!items.length) {
502
+ return;
503
+ }
504
+ const item = items[items.length - 1];
505
+ const lastItem = this.removeItem(item, true);
506
+ if (lastItem) {
507
+ event.preventDefault();
508
+ }
509
+ }
510
+ }
511
+ /**
512
+ * handle keydown event when the key code is the enter
513
+ * @returns {void}
514
+ */
515
+ addItemByKeyboard() {
516
+ if (this.isSearchValueNotEmptyWithoutReadonlyAndDisabled()) {
517
+ const newItem = { value: this.value, label: this.value };
518
+ const item = this.addItem(newItem, true);
519
+ if (item) {
520
+ this.setValueAndNotify('');
521
+ }
522
+ }
523
+ }
524
+ /**
525
+ * check the value of the search element and check readonly and disabled
526
+ * @returns the condition checks the search value is empty and switched off readonly and disabled of this component
527
+ */
528
+ isSearchValueEmptyWithoutReadonlyAndDisabled() {
529
+ return this.value === '' && !this.readonly && !this.disabled;
530
+ }
531
+ /**
532
+ * check the value of the search element and check readonly and disabled
533
+ * @returns the condition checks the search value is empty and switched off readonly and disabled of this component
534
+ */
535
+ isSearchValueNotEmptyWithoutReadonlyAndDisabled() {
536
+ return this.value.trim() !== '' && !this.readonly && !this.disabled;
537
+ }
538
+ /**
539
+ * Item check for value and label to ensure it can be rendered
540
+ * @param item Item to check
541
+ * @returns true if item exists and contains value and label
542
+ */
543
+ isItem(item) {
544
+ return !!(item.value && item.label);
545
+ }
546
+ };
547
+ __decorate([
548
+ property({ attribute: false })
549
+ ], MultiInput.prototype, "values", null);
550
+ __decorate([
551
+ property({ type: Boolean, attribute: 'pills-only', reflect: true })
552
+ ], MultiInput.prototype, "pillsOnly", void 0);
553
+ __decorate([
554
+ property({ type: String })
555
+ ], MultiInput.prototype, "icon", void 0);
556
+ __decorate([
557
+ property({ type: String })
558
+ ], MultiInput.prototype, "placeholder", void 0);
559
+ __decorate([
560
+ property({ type: Boolean, reflect: true })
561
+ ], MultiInput.prototype, "error", void 0);
562
+ __decorate([
563
+ property({ type: Boolean, reflect: true })
564
+ ], MultiInput.prototype, "warning", void 0);
565
+ __decorate([
566
+ property({ type: Number, attribute: 'maxlength', reflect: true })
567
+ ], MultiInput.prototype, "maxLength", void 0);
568
+ __decorate([
569
+ property({ type: Number, attribute: 'minlength', reflect: true, hasChanged })
570
+ ], MultiInput.prototype, "minLength", void 0);
571
+ __decorate([
572
+ property({ type: Number, attribute: false })
573
+ ], MultiInput.prototype, "selectionStart", null);
574
+ __decorate([
575
+ property({ type: Number, attribute: false })
576
+ ], MultiInput.prototype, "selectionEnd", null);
577
+ __decorate([
578
+ property({ attribute: false })
579
+ ], MultiInput.prototype, "data", null);
580
+ __decorate([
581
+ query('[part="list"]')
582
+ ], MultiInput.prototype, "list", void 0);
583
+ __decorate([
584
+ query('[part="search"]')
585
+ ], MultiInput.prototype, "search", void 0);
586
+ __decorate([
587
+ property({ type: String })
588
+ ], MultiInput.prototype, "value", null);
589
+ MultiInput = __decorate([
590
+ customElement('ef-multi-input', {
591
+ alias: 'coral-multi-input'
592
+ })
593
+ ], MultiInput);
594
+ export { MultiInput };
@@ -0,0 +1,4 @@
1
+ import '@refinitiv-ui/elements/lib/text-field/themes/halo/dark';
2
+ import '@refinitiv-ui/elements/lib/pill/themes/halo/dark';
3
+
4
+ elf.customStyles.define('ef-multi-input', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;max-width:100%;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#ccc;border-radius:0;background-color:#0d0d0d;text-overflow:ellipsis;border:1px solid #404040;display:flex;width:100%;height:auto;min-height:24px;justify-content:normal;scrollbar-face-color:#595959;scrollbar-shadow-color:#595959;scrollbar-highlight-color:#595959;scrollbar-arrow-color:#595959;scrollbar-track-color:#1a1a1a;scrollbar-3dlight-color:#1a1a1a;scrollbar-darkshadow-color:#1a1a1a;scrollbar-color:#595959 #1a1a1a;scrollbar-width:thin;margin:0;padding:0}:host([disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(64,64,64,.5)}:host([type=number]){padding-right:0}:host([warning]){border:1px solid #7f6400}:host([warning][disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(127,100,0,.5)}:host([error]),:host([error][warning]){border:1px solid #a01c2b}:host([error][disabled]),:host([error][warning][disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(160,28,43,.5)}:host ::-ms-clear{display:none}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=search-holder]{align-items:center}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#595959;border-radius:0;border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:#334bff}::-webkit-scrollbar-thumb:active{background:#0f1e8a}::-webkit-scrollbar-track{background:#1a1a1a}::-webkit-scrollbar-thumb:horizontal{background-size:auto 6px;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:hover{background-image:linear-gradient(to bottom,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:active{background-image:linear-gradient(to bottom,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical{background-size:6px auto;background-repeat:repeat-y;background-image:linear-gradient(to right,#595959,#595959);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:hover{background-image:linear-gradient(to right,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:active{background-image:linear-gradient(to right,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-track:horizontal{border-top:1px solid #0d0d0d;border-bottom:1px solid #0d0d0d}::-webkit-scrollbar-track:vertical{border-left:1px solid #0d0d0d;border-right:1px solid #0d0d0d}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #1a1a1a;height:16px;width:16px;display:none;border:1px solid #0d0d0d}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:hover{background-color:#334bff;border:1px solid #334bff}::-webkit-scrollbar-button:active{background-color:#0f1e8a;border:1px solid #0d0d0d}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{border-bottom-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#334bff}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#0d0d0d}::-webkit-scrollbar-button:vertical:end:increment{border-top-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#334bff}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:start:decrement{border-right-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#334bff}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#0d0d0d}::-webkit-scrollbar-button:horizontal:end:increment{border-left-color:#0d0d0d;background-image:linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc),linear-gradient(#ccc,#ccc);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#334bff}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#0d0d0d}:host [part=pill]{margin:2px;height:18px}:host [part=search]{margin:0;height:20px}:host(:not([readonly]):not([error]):not([warning]):hover){border-color:grey}:host([readonly]:not([focused])){border-color:rgba(64,64,64,.5)}:host([warning]){border-color:#ffc800}:host([warning]:hover:not([readonly])){border-color:#ffe999}:host([error]){border-color:#f5475b}:host([error]:hover:not([readonly])){border-color:#faa8b1}');
@@ -0,0 +1,4 @@
1
+ import '@refinitiv-ui/elements/lib/text-field/themes/halo/light';
2
+ import '@refinitiv-ui/elements/lib/pill/themes/halo/light';
3
+
4
+ elf.customStyles.define('ef-multi-input', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;max-width:100%;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#404040;border-radius:0;background-color:#fff;text-overflow:ellipsis;border:1px solid #595959;display:flex;width:100%;height:auto;min-height:24px;justify-content:normal;scrollbar-face-color:#999;scrollbar-shadow-color:#999;scrollbar-highlight-color:#999;scrollbar-arrow-color:#999;scrollbar-track-color:#f2f2f2;scrollbar-3dlight-color:#f2f2f2;scrollbar-darkshadow-color:#f2f2f2;scrollbar-color:#999 #f2f2f2;scrollbar-width:thin;margin:0;padding:0}:host([disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(89,89,89,.5)}:host([type=number]){padding-right:0}:host([warning]){border:1px solid #cca000}:host([warning][disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(204,160,0,.5)}:host([error]),:host([error][warning]){border:1px solid #b63243}:host([error][disabled]),:host([error][warning][disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(182,50,67,.5)}:host ::-ms-clear{display:none}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=search-holder]{align-items:center}::-webkit-scrollbar-corner{background:0 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#999;border-radius:0;border:1px solid transparent}::-webkit-scrollbar-thumb:hover{background:#334bff}::-webkit-scrollbar-thumb:active{background:#0f1e8a}::-webkit-scrollbar-track{background:#f2f2f2}::-webkit-scrollbar-thumb:horizontal{background-size:auto 6px;background-repeat:repeat-x;background-image:linear-gradient(to bottom,#999,#999);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:hover{background-image:linear-gradient(to bottom,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:horizontal:active{background-image:linear-gradient(to bottom,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical{background-size:6px auto;background-repeat:repeat-y;background-image:linear-gradient(to right,#999,#999);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:hover{background-image:linear-gradient(to right,#334bff,#334bff);background-color:transparent;background-position:center}::-webkit-scrollbar-thumb:vertical:active{background-image:linear-gradient(to right,#0f1e8a,#0f1e8a);background-color:transparent;background-position:center}::-webkit-scrollbar-track:horizontal{border-top:1px solid #fff;border-bottom:1px solid #fff}::-webkit-scrollbar-track:vertical{border-left:1px solid #fff;border-right:1px solid #fff}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #f2f2f2;height:16px;width:16px;display:none;border:1px solid #fff}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:hover{background-color:#334bff;border:1px solid #334bff}::-webkit-scrollbar-button:active{background-color:#0f1e8a;border:1px solid #fff}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{border-bottom-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#334bff}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 8px,9.55px 7px,8.55px 6px,7.55px 5px,6.55px 4px,5.55px 5px,4.55px 6px,3.55px 7px,2.55px 8px;border-bottom-color:#fff}::-webkit-scrollbar-button:vertical:end:increment{border-top-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#334bff}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:10.55px 4px,9.55px 5px,8.55px 6px,7.55px 7px,6.55px 8px,5.55px 7px,4.55px 6px,3.55px 5px,2.55px 4px;border-top-color:#fff}::-webkit-scrollbar-button:horizontal:start:decrement{border-right-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#334bff}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:7.5px 10.55px,6.5px 9.55px,5.5px 8.55px,4.5px 7.55px,3.5px 6.55px,4.5px 5.55px,5.5px 4.55px,6.5px 3.55px,7.5px 2.55px;border-right-color:#fff}::-webkit-scrollbar-button:horizontal:end:increment{border-left-color:#fff;background-image:linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959),linear-gradient(#595959,#595959);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#334bff}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff),linear-gradient(#fff,#fff);background-position:5px 10.55px,6px 9.55px,7px 8.55px,8px 7.55px,9px 6.55px,8px 5.55px,7px 4.55px,6px 3.55px,5px 2.55px;border-left-color:#fff}:host [part=pill]{margin:2px;height:18px}:host [part=search]{margin:0;height:20px}:host(:not([readonly]):not([error]):not([warning]):hover){border-color:#0d0d0d}:host([readonly]:not([focused])){border-color:rgba(89,89,89,.5)}:host([warning]){border-color:#cca000}:host([warning]:hover:not([readonly])){border-color:#ffe999}:host([error]){border-color:#d94255}:host([error]:hover:not([readonly])){border-color:#eeacb4}');
@@ -0,0 +1,4 @@
1
+ import '@refinitiv-ui/elements/lib/text-field/themes/solar/charcoal';
2
+ import '@refinitiv-ui/elements/lib/pill/themes/solar/charcoal';
3
+
4
+ elf.customStyles.define('ef-multi-input', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:13rem;font-weight:400;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#c2c2c2;border-radius:0;text-overflow:ellipsis;display:flex;width:100%;height:auto;min-height:23px;justify-content:normal;scrollbar-face-color:#666570;scrollbar-shadow-color:#666570;scrollbar-highlight-color:#666570;scrollbar-arrow-color:#666570;scrollbar-track-color:#2e2e33;scrollbar-3dlight-color:#2e2e33;scrollbar-darkshadow-color:#2e2e33;scrollbar-color:#666570 #2e2e33}:host([type=number]){padding-right:0}:host([error]),:host([error][warning]){border:1px solid #f5475b}:host([error][disabled]),:host([error][warning][disabled]){color:rgba(194,194,194,.6);border:1px solid rgba(245,71,91,.6)}:host ::-ms-clear{display:none}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#f93;border-style:dotted}:host [part=search-holder]{align-items:center}::-webkit-scrollbar{width:13px;height:13px}::-webkit-scrollbar-button{background:0 0/1px 2px no-repeat #2e2e33;height:12px;width:12px;display:block}::-webkit-scrollbar-thumb{background:#666570;border-radius:7px;border:2px solid #2e2e33}::-webkit-scrollbar-thumb:hover{background:#e2e2e2}::-webkit-scrollbar-thumb:active{background:#f93}::-webkit-scrollbar-track{background:#2e2e33}::-webkit-scrollbar-corner{background:#2e2e33}::-webkit-scrollbar-button:end:decrement,::-webkit-scrollbar-button:start:increment{display:none}::-webkit-scrollbar-button:horizontal{background-size:2px 1px}::-webkit-scrollbar-button:vertical:start:decrement{background-image:linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:start:decrement:hover{background-image:linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:start:decrement:active{background-image:linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93);background-position:10px 6.5px,9px 5.5px,8px 4.5px,7px 3.5px,6px 2.5px,5px 3.5px,4px 4.5px,3px 5.5px,2px 6.5px}::-webkit-scrollbar-button:vertical:end:increment{background-image:linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:vertical:end:increment:hover{background-image:linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:vertical:end:increment:active{background-image:linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93);background-position:10px 3.5px,9px 4.5px,8px 5.5px,7px 6.5px,6px 7.5px,5px 6.5px,4px 5.5px,3px 4.5px,2px 3.5px}::-webkit-scrollbar-button:horizontal:start:decrement{background-image:linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:start:decrement:hover{background-image:linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:start:decrement:active{background-image:linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93);background-position:6.5px 10px,5.5px 9px,4.5px 8px,3.5px 7px,2.5px 6px,3.5px 5px,4.5px 4px,5.5px 3px,6.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment{background-image:linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570),linear-gradient(#666570,#666570);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment:hover{background-image:linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2),linear-gradient(#e2e2e2,#e2e2e2);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}::-webkit-scrollbar-button:horizontal:end:increment:active{background-image:linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93),linear-gradient(#f93,#f93);background-position:3.5px 10px,4.5px 9px,5.5px 8px,6.5px 7px,7.5px 6px,6.5px 5px,5.5px 4px,4.5px 3px,3.5px 2px}:host{background-color:#000;border:1px solid #4a4a52;padding:0 0 3px 3px}:host([disabled]){border:1px solid rgba(74,74,82,.6);color:rgba(194,194,194,.6)}:host([readonly]){border:1px solid rgba(74,74,82,.6)}:host(:not([focused]):not(:focus):not([disabled]):not([readonly]):hover){border:1px solid #77777d}:host([warning]){background-color:#000;border:1px solid #f93}:host([warning][disabled]){border:1px solid rgba(255,153,51,.6);color:rgba(194,194,194,.6)}:host([warning][readonly]){border:1px solid rgba(255,153,51,.6)}:host([warning]:not([focused]):not(:focus):not([disabled]):not([readonly]):hover){border:1px solid #ffb366}:host([error]),:host([error][warning]:not([focused])){background-color:#000;border:1px solid #f5475b}:host([error][disabled]),:host([error][warning]:not([focused])[disabled]){border:1px solid rgba(245,71,91,.6);color:rgba(194,194,194,.6)}:host([error][readonly]),:host([error][warning]:not([focused])[readonly]){border:1px solid rgba(245,71,91,.6)}:host([error]:not([focused]):not(:focus):not([disabled]):not([readonly]):hover),:host([error][warning]:not([focused]):not([focused]):not(:focus):not([disabled]):not([readonly]):hover){border:1px solid #f87584}:host([highlight]){background-color:#1b252f;border:1px solid #4a4a52}:host([highlight][disabled]){border:1px solid rgba(74,74,82,.6);color:rgba(194,194,194,.6);background-color:rgba(27,37,47,.6)}:host([highlight][readonly]){border:1px solid rgba(74,74,82,.6)}:host([highlight]:not([focused]):not(:focus):not([disabled]):not([readonly]):hover){border:1px solid #77777d}:host([indirect]){color:#0fd;background-color:#000;border:1px solid #898623}:host([indirect][disabled]){border:1px solid rgba(137,134,35,.6);color:rgba(0,255,221,.6)}:host([indirect][readonly]){border:1px solid rgba(137,134,35,.6)}:host([indirect]:not([focused]):not(:focus):not([disabled]):not([readonly]):hover){border:1px solid #a7a45a}:host [part=search]{height:17px;margin:3px 3px 0 0}');