@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,4 @@
1
+ import '@refinitiv-ui/elements/lib/number-field/themes/halo/dark';
2
+ import '@refinitiv-ui/elements/lib/icon/themes/halo/dark';
3
+
4
+ elf.customStyles.define('ef-time-picker', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;max-width:100%;margin:1px 0;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;width:auto;min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content;padding:0}:host([disabled]){color:rgba(204,204,204,.5);border:1px solid rgba(64,64,64,.5)}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=input]{margin:0;text-align:center;padding:0;color:inherit;width:24px}:host [part=divider]::before{content:\':\'}:host [part=toggle]{width:20px;font-size:50%;display:flex;flex-flow:column nowrap;align-items:center;justify-content:center;line-height:1.2;outline:0;cursor:pointer;touch-action:manipulation}:host [part=input],:host [part=toggle]{height:100%;position:relative}:host [part=input]:focus::after,:host [part=input][focused]::after,:host [part=toggle]:focus::after,:host [part=toggle][focused]::after{content:\'\';border-right:8px solid transparent;border-left:8px solid transparent;position:absolute;left:calc(50% - 8px);bottom:0;border-bottom:4px solid transparent;display:none}:host [part=toggle-item]{opacity:.5}:host [part=toggle-item][active]{opacity:1}:host [part=divider]{width:2px}');
@@ -0,0 +1,4 @@
1
+ import '@refinitiv-ui/elements/lib/number-field/themes/halo/light';
2
+ import '@refinitiv-ui/elements/lib/icon/themes/halo/light';
3
+
4
+ elf.customStyles.define('ef-time-picker', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:12rem;font-weight:400;height:24px;max-width:100%;margin:1px 0;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;width:auto;min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content;padding:0}:host([disabled]){color:rgba(64,64,64,.5);border:1px solid rgba(89,89,89,.5)}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#334bff}:host [part=input]{margin:0;text-align:center;padding:0;color:inherit;width:24px}:host [part=divider]::before{content:\':\'}:host [part=toggle]{width:20px;font-size:50%;display:flex;flex-flow:column nowrap;align-items:center;justify-content:center;line-height:1.2;outline:0;cursor:pointer;touch-action:manipulation}:host [part=input],:host [part=toggle]{height:100%;position:relative}:host [part=input]:focus::after,:host [part=input][focused]::after,:host [part=toggle]:focus::after,:host [part=toggle][focused]::after{content:\'\';border-right:8px solid transparent;border-left:8px solid transparent;position:absolute;left:calc(50% - 8px);bottom:0;border-bottom:4px solid transparent;display:none}:host [part=toggle-item]{opacity:.5}:host [part=toggle-item][active]{opacity:1}:host [part=divider]{width:2px}');
@@ -0,0 +1,4 @@
1
+ import '@refinitiv-ui/elements/lib/number-field/themes/solar/charcoal';
2
+ import '@refinitiv-ui/elements/lib/icon/themes/solar/charcoal';
3
+
4
+ elf.customStyles.define('ef-time-picker', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:13rem;font-weight:400;height:23px;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;width:auto;min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content;background-color:#000;border:1px solid #4a4a52;padding:0}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#f93;border-style:dotted}:host [part=input]{margin:0;text-align:center;padding:0;color:inherit;width:25px}:host [part=divider]::before{content:\':\'}:host [part=toggle]{width:20px;display:flex;flex-flow:column nowrap;align-items:center;justify-content:center;outline:0;cursor:pointer;touch-action:manipulation;font-size:70%;line-height:1}:host [part=input],:host [part=toggle]{height:100%;position:relative}:host [part=input]:focus::after,:host [part=input][focused]::after,:host [part=toggle]:focus::after,:host [part=toggle][focused]::after{content:\'\';border-right:8px solid transparent;border-bottom:4px solid #f93;border-left:8px solid transparent;position:absolute;content:\'\';border:none;left:calc(50% - 7px);bottom:-1px;width:14px;height:1px;background:#f93}:host [part=toggle-item]{opacity:.5}:host [part=toggle-item][active]{opacity:1}: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}');
@@ -0,0 +1,4 @@
1
+ import '@refinitiv-ui/elements/lib/number-field/themes/solar/pearl';
2
+ import '@refinitiv-ui/elements/lib/icon/themes/solar/pearl';
3
+
4
+ elf.customStyles.define('ef-time-picker', ':host{display:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:left;font-family:inherit;font-size:13rem;font-weight:400;height:23px;max-width:100%;margin:1px 0;outline:0;box-sizing:border-box;display:inline-flex;align-items:center;position:relative;vertical-align:middle;color:#484848;border-radius:0;text-overflow:ellipsis;width:auto;min-width:-webkit-max-content;min-width:-moz-max-content;min-width:max-content;background-color:#fff;border:1px solid #a9afba;padding:0}:host([focused]){background-size:100% 2px,100% 1px!important;background-position:center bottom!important;border-color:#ffb266;border-style:dotted}:host [part=input]{margin:0;text-align:center;padding:0;color:inherit;width:25px}:host [part=divider]::before{content:\':\'}:host [part=toggle]{width:20px;display:flex;flex-flow:column nowrap;align-items:center;justify-content:center;outline:0;cursor:pointer;touch-action:manipulation;font-size:70%;line-height:1}:host [part=input],:host [part=toggle]{height:100%;position:relative}:host [part=input]:focus::after,:host [part=input][focused]::after,:host [part=toggle]:focus::after,:host [part=toggle][focused]::after{content:\'\';border-right:8px solid transparent;border-bottom:4px solid #ffb266;border-left:8px solid transparent;position:absolute;content:\'\';border:none;left:calc(50% - 7px);bottom:-1px;width:14px;height:1px;background:#ffb266}:host [part=toggle-item]{opacity:.5}:host [part=toggle-item][active]{opacity:1}:host([disabled]){border:1px solid rgba(169,175,186,.6);color:rgba(72,72,72,.6)}:host([readonly]){border:1px solid rgba(169,175,186,.6)}:host(:not([focused]):not(:focus):not([disabled]):not([readonly]):hover){border:1px solid #bfc3cb}:host([warning]){background-color:#fff;border:1px solid #f93}:host([warning][disabled]){border:1px solid rgba(255,153,51,.6);color:rgba(72,72,72,.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:#fff;border:1px solid #d94255}:host([error][disabled]),:host([error][warning]:not([focused])[disabled]){border:1px solid rgba(217,66,85,.6);color:rgba(72,72,72,.6)}:host([error][readonly]),:host([error][warning]:not([focused])[readonly]){border:1px solid rgba(217,66,85,.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 #e37180}:host([highlight]){background-color:#b0ffff;border:1px solid #a9afba}:host([highlight][disabled]){border:1px solid rgba(169,175,186,.6);color:rgba(72,72,72,.6);background-color:rgba(176,255,255,.6)}:host([highlight][readonly]){border:1px solid rgba(169,175,186,.6)}:host([highlight]:not([focused]):not(:focus):not([disabled]):not([readonly]):hover){border:1px solid #bfc3cb}:host([indirect]){color:#009494;background-color:#effefe;border:1px solid #898623}:host([indirect][disabled]){border:1px solid rgba(137,134,35,.6);color:rgba(0,148,148,.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}');
@@ -0,0 +1,87 @@
1
+ import { JSXInterface } from '../jsx';
2
+ import { ControlElement, TemplateResult, CSSResultGroup, PropertyValues } from '@refinitiv-ui/core';
3
+ /**
4
+ * Form control that can toggle between 2 states
5
+ *
6
+ * @attr {boolean} readonly - Set readonly state
7
+ * @prop {boolean} [readonly=false] - Set readonly state
8
+ *
9
+ * @attr {boolean} disabled - Set disabled state
10
+ * @prop {boolean} [disabled=false] - Set disabled state
11
+ *
12
+ * @fires checked-changed - Fired when the `checked` property changes.
13
+ */
14
+ export declare class Toggle extends ControlElement {
15
+ /**
16
+ * Element version number
17
+ * @returns version number
18
+ */
19
+ static get version(): string;
20
+ protected readonly defaultRole: string | null;
21
+ /**
22
+ * Label of toggle checked
23
+ */
24
+ checkedLabel: string;
25
+ /**
26
+ * Label of toggle
27
+ */
28
+ label: string;
29
+ private _checked;
30
+ /**
31
+ * Value of toggle
32
+ * @param value new checked value
33
+ * @default false
34
+ */
35
+ set checked(value: boolean);
36
+ get checked(): boolean;
37
+ /**
38
+ * Aria indicating current state of toggle
39
+ * @ignore
40
+ */
41
+ ariaChecked: string;
42
+ /**
43
+ * A `CSSResultGroup` that will be used
44
+ * to style the host, slotted children
45
+ * and the internal template of the element.
46
+ * @returns CSS template
47
+ */
48
+ static get styles(): CSSResultGroup;
49
+ /**
50
+ * Invoked when the element is first updated. Implement to perform one time
51
+ * work on the element after update.
52
+ * @param changedProperties Map of changed properties with old values
53
+ * @returns {void}
54
+ */
55
+ protected firstUpdated(changedProperties: PropertyValues): void;
56
+ /**
57
+ * Called when checked value changes and dispatch the event
58
+ * @returns {void}
59
+ */
60
+ private handleCheckedChange;
61
+ /**
62
+ * Handle keyboard event for toggle action
63
+ * @param event Keyboard event
64
+ * @returns {void}
65
+ */
66
+ private handleKeyDown;
67
+ /**
68
+ * A `TemplateResult` that will be used
69
+ * to render the updated internal template.
70
+ * @return Render template
71
+ */
72
+ protected render(): TemplateResult;
73
+ }
74
+
75
+ declare global {
76
+ interface HTMLElementTagNameMap {
77
+ 'ef-toggle': Toggle;
78
+ }
79
+
80
+ namespace JSX {
81
+ interface IntrinsicElements {
82
+ 'ef-toggle': Partial<Toggle> | JSXInterface.ControlHTMLAttributes<Toggle>;
83
+ }
84
+ }
85
+ }
86
+
87
+ export {};
@@ -0,0 +1,153 @@
1
+ import { __decorate } from "tslib";
2
+ import { ControlElement, html, css } from '@refinitiv-ui/core';
3
+ import { customElement } from '@refinitiv-ui/core/lib/decorators/custom-element.js';
4
+ import { property } from '@refinitiv-ui/core/lib/decorators/property.js';
5
+ import { VERSION } from '../version.js';
6
+ /**
7
+ * Return the attribute that converted from the property
8
+ * Prevent empty string that reflected to attribute
9
+ * @private
10
+ * @param value value from the property
11
+ * @returns string converted to attribute
12
+ */
13
+ const emptyStringToNull = function (value) {
14
+ return value || null;
15
+ };
16
+ /**
17
+ * Form control that can toggle between 2 states
18
+ *
19
+ * @attr {boolean} readonly - Set readonly state
20
+ * @prop {boolean} [readonly=false] - Set readonly state
21
+ *
22
+ * @attr {boolean} disabled - Set disabled state
23
+ * @prop {boolean} [disabled=false] - Set disabled state
24
+ *
25
+ * @fires checked-changed - Fired when the `checked` property changes.
26
+ */
27
+ let Toggle = class Toggle extends ControlElement {
28
+ constructor() {
29
+ super(...arguments);
30
+ this.defaultRole = 'switch';
31
+ /**
32
+ * Label of toggle checked
33
+ */
34
+ this.checkedLabel = '';
35
+ /**
36
+ * Label of toggle
37
+ */
38
+ this.label = '';
39
+ this._checked = false;
40
+ /**
41
+ * Aria indicating current state of toggle
42
+ * @ignore
43
+ */
44
+ this.ariaChecked = String(this.checked);
45
+ }
46
+ /**
47
+ * Element version number
48
+ * @returns version number
49
+ */
50
+ static get version() {
51
+ return VERSION;
52
+ }
53
+ /**
54
+ * Value of toggle
55
+ * @param value new checked value
56
+ * @default false
57
+ */
58
+ set checked(value) {
59
+ const oldValue = this._checked;
60
+ if (oldValue !== value) {
61
+ this._checked = value;
62
+ this.ariaChecked = String(value);
63
+ void this.requestUpdate('checked', oldValue);
64
+ }
65
+ }
66
+ get checked() {
67
+ return this._checked;
68
+ }
69
+ /**
70
+ * A `CSSResultGroup` that will be used
71
+ * to style the host, slotted children
72
+ * and the internal template of the element.
73
+ * @returns CSS template
74
+ */
75
+ static get styles() {
76
+ return css `
77
+ :host {
78
+ display: inline-block;
79
+ }
80
+ `;
81
+ }
82
+ /**
83
+ * Invoked when the element is first updated. Implement to perform one time
84
+ * work on the element after update.
85
+ * @param changedProperties Map of changed properties with old values
86
+ * @returns {void}
87
+ */
88
+ firstUpdated(changedProperties) {
89
+ super.firstUpdated(changedProperties);
90
+ this.addEventListener('tap', this.handleCheckedChange);
91
+ this.addEventListener('keydown', this.handleKeyDown);
92
+ }
93
+ /**
94
+ * Called when checked value changes and dispatch the event
95
+ * @returns {void}
96
+ */
97
+ handleCheckedChange() {
98
+ if (this.disabled || this.readonly) {
99
+ return;
100
+ }
101
+ this.checked = !this.checked;
102
+ this.notifyPropertyChange('checked', this.checked);
103
+ }
104
+ /**
105
+ * Handle keyboard event for toggle action
106
+ * @param event Keyboard event
107
+ * @returns {void}
108
+ */
109
+ handleKeyDown(event) {
110
+ if (event.key === 'Enter' || event.key === ' ' || event.key === 'Spacebar') {
111
+ this.handleCheckedChange();
112
+ }
113
+ else if (event.keyCode && event.keyCode === 13 || event.keyCode === 32) { // For older browsers
114
+ this.handleCheckedChange();
115
+ }
116
+ }
117
+ /**
118
+ * A `TemplateResult` that will be used
119
+ * to render the updated internal template.
120
+ * @return Render template
121
+ */
122
+ render() {
123
+ return html `
124
+ <div part="toggle">${this.checked && this.checkedLabel ? this.checkedLabel : this.label}</div>`;
125
+ }
126
+ };
127
+ __decorate([
128
+ property({
129
+ type: String,
130
+ attribute: 'checked-label',
131
+ reflect: true,
132
+ converter: { toAttribute: emptyStringToNull }
133
+ })
134
+ ], Toggle.prototype, "checkedLabel", void 0);
135
+ __decorate([
136
+ property({
137
+ type: String,
138
+ reflect: true,
139
+ converter: { toAttribute: emptyStringToNull }
140
+ })
141
+ ], Toggle.prototype, "label", void 0);
142
+ __decorate([
143
+ property({ type: Boolean, reflect: true })
144
+ ], Toggle.prototype, "checked", null);
145
+ __decorate([
146
+ property({ type: String, reflect: true, attribute: 'aria-checked' })
147
+ ], Toggle.prototype, "ariaChecked", void 0);
148
+ Toggle = __decorate([
149
+ customElement('ef-toggle', {
150
+ alias: 'coral-toggle'
151
+ })
152
+ ], Toggle);
153
+ export { Toggle };
@@ -0,0 +1,2 @@
1
+
2
+ elf.customStyles.define('ef-toggle', ':host{touch-action:manipulation;font-size:12rem;background-color:#0d0d0d;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0;border-radius:0;box-shadow:inset 0 0 0 rgba(0,0,0,.5);transition:box-shadow .1s,border-color .1s;width:44px;height:24px;font-weight:400;color:#ccc;line-height:18px;text-transform:uppercase}:host [part=toggle]{cursor:pointer;display:block;position:relative;width:100%;height:100%;box-sizing:border-box;border:1px solid #4d4d4d;border-radius:inherit;text-overflow:inherit;overflow:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host [part=toggle]::after{content:\'\';position:absolute;box-sizing:border-box;border-radius:inherit;top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-color:#ccc}:host([checked-label]),:host([label]){min-width:52px;width:54px;min-width:44px}:host([readonly]) [part=toggle]{cursor:default}:host([disabled]) [part=toggle]{opacity:.5}:host([checked]) [part=toggle]::after{left:auto;border-color:#334bff;background-color:#334bff;right:1px}:host([checked-label][checked]) [part=toggle],:host([label][checked]) [part=toggle]{padding-right:24px;padding-left:3px}:host([checked-label]) [part=toggle],:host([label]) [part=toggle]{padding:3px 3px 3px 24px}:host([checked-label]) [part=toggle]::after,:host([label]) [part=toggle]::after{width:20px}@media (-ms-high-contrast:none),(pointer:fine){:host(:hover:not([readonly])),:host([focused=visible]){box-shadow:0 0 0 #334bff}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-color:#334bff}:host(:hover:not([readonly])){color:#fff}:host(:hover:not([readonly])) [part=toggle]{border-color:#334bff}:host(:hover:not([readonly])) [part=toggle]::after{background-color:#334bff;border-color:#334bff}}:host([checked]){color:#fff}:host([disabled]) [part=toggle]::after{opacity:.2}:host [part=toggle]::after,:host([checked]) [part=toggle]::after{border:1px solid #0d0d0d}');
@@ -0,0 +1,2 @@
1
+
2
+ elf.customStyles.define('ef-toggle', ':host{touch-action:manipulation;font-size:12rem;background-color:#fff;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0;border-radius:0;box-shadow:inset 0 0 0 rgba(0,0,0,.25);transition:box-shadow .1s,border-color .1s;width:44px;height:24px;font-weight:600;color:#0d0d0d;line-height:18px;text-transform:uppercase}:host [part=toggle]{cursor:pointer;display:block;position:relative;width:100%;height:100%;box-sizing:border-box;border:1px solid #ccc;border-radius:inherit;text-overflow:inherit;overflow:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host [part=toggle]::after{content:\'\';position:absolute;box-sizing:border-box;border-radius:inherit;top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-color:#0d0d0d}:host([checked-label]),:host([label]){min-width:52px;width:54px;min-width:44px}:host([readonly]) [part=toggle]{cursor:default}:host([disabled]) [part=toggle]{opacity:.5}:host([checked]) [part=toggle]::after{left:auto;border-color:#334bff;background-color:#334bff;right:1px}:host([checked-label][checked]) [part=toggle],:host([label][checked]) [part=toggle]{padding-right:24px;padding-left:3px}:host([checked-label]) [part=toggle],:host([label]) [part=toggle]{padding:3px 3px 3px 24px}:host([checked-label]) [part=toggle]::after,:host([label]) [part=toggle]::after{width:20px}@media (-ms-high-contrast:none),(pointer:fine){:host(:hover:not([readonly])),:host([focused=visible]){box-shadow:0 0 0 #334bff}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-color:#334bff}:host(:hover:not([readonly])){color:#0d0d0d}:host(:hover:not([readonly])) [part=toggle]{border-color:#334bff}:host(:hover:not([readonly])) [part=toggle]::after{background-color:#334bff;border-color:#334bff}}');
@@ -0,0 +1,2 @@
1
+
2
+ elf.customStyles.define('ef-toggle', ':host{touch-action:manipulation;font-size:13rem;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0;border-radius:0;box-shadow:inset 0 0 0 rgba(0,0,0,.6);transition:box-shadow .2s,border-color .2s;width:44px;height:24px;color:#e2e2e2;background-color:#000;line-height:18px}:host [part=toggle]{cursor:pointer;display:block;position:relative;width:100%;height:100%;box-sizing:border-box;border:1px solid #4a4a52;border-radius:inherit;text-overflow:inherit;overflow:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host [part=toggle]::after{content:\'\';position:absolute;top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-color:#555d6c;box-sizing:border-box;border-radius:inherit}:host([checked-label]),:host([label]){width:67.6px;min-width:52px;min-width:44px}:host([readonly]) [part=toggle]{cursor:default}:host([disabled]) [part=toggle]{opacity:.5}:host([checked]) [part=toggle]::after{right:1px;left:auto;border-color:#f93;background-color:#f93}@media (-ms-high-contrast:none),(pointer:fine){:host(:hover:not([readonly])),:host([focused=visible]){box-shadow:0 0 0 #f93}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-color:#f93}}:host [part=toggle] ::after{top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-image:linear-gradient(rgba(255,255,255,.1) 10%,rgba(255,255,255,0) 100%)}:host([checked-label][checked]) [part=toggle],:host([label][checked]) [part=toggle]{padding-right:24px;padding-left:3px}:host([checked-label]) [part=toggle],:host([label]) [part=toggle]{padding:3px 3px 3px 24px}:host([checked-label]) [part=toggle]::after,:host([label]) [part=toggle]::after{width:20px}:host([checked]) [part=toggle] ::after{right:1px}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-style:dotted}');
@@ -0,0 +1,2 @@
1
+
2
+ elf.customStyles.define('ef-toggle', ':host{touch-action:manipulation;font-size:13rem;text-align:center;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;outline:0;border-radius:0;box-shadow:inset 0 0 0 rgba(0,0,0,.3);transition:box-shadow .2s,border-color .2s;width:44px;height:24px;color:#484848;background-color:#fff;line-height:18px}:host [part=toggle]{cursor:pointer;display:block;position:relative;width:100%;height:100%;box-sizing:border-box;border:1px solid #a9afba;border-radius:inherit;text-overflow:inherit;overflow:inherit;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}:host [part=toggle]::after{content:\'\';position:absolute;top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-color:#d4d7dd;box-sizing:border-box;border-radius:inherit}:host([checked-label]),:host([label]){width:67.6px;min-width:52px;min-width:44px}:host([readonly]) [part=toggle]{cursor:default}:host([disabled]) [part=toggle]{opacity:.5}:host([checked]) [part=toggle]::after{right:1px;left:auto;border-color:#f93;background-color:#f93}@media (-ms-high-contrast:none),(pointer:fine){:host(:hover:not([readonly])),:host([focused=visible]){box-shadow:0 0 0 #ffb266}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-color:#ffb266}}:host [part=toggle] ::after{top:1px;left:1px;width:calc(50% - 1px);height:calc(100% - (1px * 2));background-image:linear-gradient(rgba(0,0,0,0) 0,rgba(0,0,0,.1) 100%)}:host([checked-label][checked]) [part=toggle],:host([label][checked]) [part=toggle]{padding-right:24px;padding-left:3px}:host([checked-label]) [part=toggle],:host([label]) [part=toggle]{padding:3px 3px 3px 24px}:host([checked-label]) [part=toggle]::after,:host([label]) [part=toggle]::after{width:20px}:host([checked]) [part=toggle] ::after{right:1px}:host(:hover:not([readonly])) [part=toggle],:host([focused=visible]) [part=toggle]{border-style:dotted}');
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,18 @@
1
+ import { matches } from '@refinitiv-ui/core';
2
+ import { addTooltipCondition } from './tooltip-element.js';
3
+ import { tooltipRenderer } from '../helpers/renderer.js';
4
+ // Support title attribute
5
+ Object.defineProperty(HTMLElement.prototype, 'title', {
6
+ get: function () {
7
+ const title = this.getAttribute('title');
8
+ if (title) {
9
+ this.title = title;
10
+ }
11
+ return this.getAttribute('tooltip');
12
+ },
13
+ set: function (value) {
14
+ this.setAttribute('title', '');
15
+ this.setAttribute('tooltip', value);
16
+ }
17
+ });
18
+ addTooltipCondition(element => matches(element, '[title]'), tooltipRenderer);
@@ -0,0 +1,21 @@
1
+ import type { Tooltip } from '../index';
2
+ import type { TooltipCondition, TooltipRenderer } from '../helpers/types';
3
+ /**
4
+ * Add the new condition to the default tooltip
5
+ * @param condition Condition to add
6
+ * @param renderer Renderer for condition
7
+ * @returns {void}
8
+ */
9
+ declare const addTooltipCondition: (condition: TooltipCondition, renderer: TooltipRenderer) => void;
10
+ /**
11
+ * Remove the existing condition from default tooltip
12
+ * @param condition Condition to remove
13
+ * @returns {void}
14
+ */
15
+ declare const removeTooltipCondition: (condition: TooltipCondition) => void;
16
+ /**
17
+ * The default tooltip, which is used to replicate `title` attribute
18
+ * and to show tooltips for EF elements
19
+ */
20
+ declare const tooltipElement: Tooltip;
21
+ export { tooltipElement, addTooltipCondition, removeTooltipCondition };
@@ -0,0 +1,54 @@
1
+ const defaultTooltipMap = new Map();
2
+ const rendererElementMap = new WeakMap();
3
+ /**
4
+ * Add the new condition to the default tooltip
5
+ * @param condition Condition to add
6
+ * @param renderer Renderer for condition
7
+ * @returns {void}
8
+ */
9
+ const addTooltipCondition = (condition, renderer) => {
10
+ defaultTooltipMap.set(condition, renderer);
11
+ };
12
+ /**
13
+ * Remove the existing condition from default tooltip
14
+ * @param condition Condition to remove
15
+ * @returns {void}
16
+ */
17
+ const removeTooltipCondition = (condition) => {
18
+ defaultTooltipMap.delete(condition);
19
+ };
20
+ const condition = (target, paths) => {
21
+ let res = false;
22
+ for (const [condition, renderer] of defaultTooltipMap.entries()) {
23
+ res = condition(target, paths);
24
+ if (res) {
25
+ // first by order condition only. It must not be possible to show multiple tooltips
26
+ rendererElementMap.set(target, renderer);
27
+ break;
28
+ }
29
+ }
30
+ return res;
31
+ };
32
+ const renderer = (target) => {
33
+ const render = rendererElementMap.get(target);
34
+ return render ? render(target) : undefined;
35
+ };
36
+ /**
37
+ * The default tooltip, which is used to replicate `title` attribute
38
+ * and to show tooltips for EF elements
39
+ */
40
+ const tooltipElement = document.createElement('ef-tooltip');
41
+ tooltipElement.setAttribute('ref', 'title-override');
42
+ tooltipElement.condition = condition;
43
+ tooltipElement.renderer = renderer;
44
+ const appendTitleTooltip = () => {
45
+ document.body.appendChild(tooltipElement);
46
+ };
47
+ if (document.body) {
48
+ appendTitleTooltip();
49
+ }
50
+ else {
51
+ /* istanbul ignore next */
52
+ document.addEventListener('DOMContentLoaded', appendTitleTooltip, { once: true });
53
+ }
54
+ export { tooltipElement, addTooltipCondition, removeTooltipCondition };
@@ -0,0 +1,9 @@
1
+ import type { TooltipRenderer } from './types';
2
+ /**
3
+ * Register the element to show a tooltip for overflow content
4
+ * @param target Target element
5
+ * @param [render] Optional renderer. By default target `textContent` is returned
6
+ * @returns {void}
7
+ */
8
+ declare const register: (target: HTMLElement, render?: TooltipRenderer) => void;
9
+ export { register };
@@ -0,0 +1,19 @@
1
+ import { addTooltipCondition } from '../elements/tooltip-element.js';
2
+ const registry = new WeakMap();
3
+ const overflowCondition = (target) => registry.has(target) && (target.scrollWidth - target.offsetWidth) > 1;
4
+ const overflowRenderer = (target) => target.textContent;
5
+ const tooltipRenderer = (target) => {
6
+ const renderer = registry.get(target);
7
+ return renderer ? renderer(target) : undefined;
8
+ };
9
+ addTooltipCondition(overflowCondition, tooltipRenderer);
10
+ /**
11
+ * Register the element to show a tooltip for overflow content
12
+ * @param target Target element
13
+ * @param [render] Optional renderer. By default target `textContent` is returned
14
+ * @returns {void}
15
+ */
16
+ const register = (target, render = overflowRenderer) => {
17
+ registry.set(target, render);
18
+ };
19
+ export { register };
@@ -0,0 +1,8 @@
1
+ import type { TooltipRenderer } from './types';
2
+ /**
3
+ * A default renderer that renders `tooltip` attribute
4
+ * @param target Target to check
5
+ * @returns tooltip or null or undefined
6
+ */
7
+ declare const tooltipRenderer: TooltipRenderer;
8
+ export { tooltipRenderer };
@@ -0,0 +1,11 @@
1
+ /**
2
+ * A default renderer that renders `tooltip` attribute
3
+ * @param target Target to check
4
+ * @returns tooltip or null or undefined
5
+ */
6
+ const tooltipRenderer = (target) => {
7
+ if (target.hasAttribute('tooltip')) {
8
+ return target.getAttribute('tooltip');
9
+ }
10
+ };
11
+ export { tooltipRenderer };
@@ -0,0 +1,23 @@
1
+ import type { OverlayPosition } from '../../overlay';
2
+ export declare type TooltipCondition = (target: HTMLElement, paths: EventTarget[]) => boolean;
3
+ export declare type TooltipRenderer = (target: HTMLElement) => undefined | null | string | HTMLElement | DocumentFragment;
4
+ export declare type TooltipPosition = 'auto' | 'above' | 'right' | 'below' | 'left';
5
+ export declare type TooltipPositionMap = {
6
+ [K in TooltipPosition]: OverlayPosition[];
7
+ };
8
+ declare type MouseMoveCallback = (event: MouseEvent, paths: EventTarget[]) => void;
9
+ declare type MouseCallback = (event: MouseEvent) => void;
10
+ declare type WheelCallback = (event: WheelEvent) => void;
11
+ declare type FocusCallback = (event: FocusEvent) => void;
12
+ declare type KeyboardCallback = (event: KeyboardEvent) => void;
13
+ export declare type DocumentCallbacks = {
14
+ mousemove: MouseMoveCallback;
15
+ mousemoveThrottled: MouseMoveCallback;
16
+ click: MouseCallback;
17
+ mouseout: MouseCallback;
18
+ mouseleave: MouseCallback;
19
+ wheel: WheelCallback;
20
+ keydown: KeyboardCallback;
21
+ blur: FocusCallback;
22
+ };
23
+ export {};
@@ -0,0 +1 @@
1
+ export {};