@refinitiv-ui/elements 5.10.1 → 5.12.0-alpha.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 (507) hide show
  1. package/CHANGELOG.md +11 -0
  2. package/README.md +4 -4
  3. package/lib/list/custom-elements.json +13 -0
  4. package/lib/list/custom-elements.md +10 -9
  5. package/package.json +25 -293
  6. package/lib/accordion/index.d.ts +0 -76
  7. package/lib/accordion/index.js +0 -136
  8. package/lib/accordion/themes/halo/dark/index.js +0 -3
  9. package/lib/accordion/themes/halo/light/index.js +0 -3
  10. package/lib/accordion/themes/solar/charcoal/index.js +0 -3
  11. package/lib/accordion/themes/solar/pearl/index.js +0 -3
  12. package/lib/appstate-bar/index.d.ts +0 -65
  13. package/lib/appstate-bar/index.js +0 -100
  14. package/lib/appstate-bar/themes/halo/dark/index.js +0 -3
  15. package/lib/appstate-bar/themes/halo/light/index.js +0 -3
  16. package/lib/appstate-bar/themes/solar/charcoal/index.js +0 -3
  17. package/lib/appstate-bar/themes/solar/pearl/index.js +0 -3
  18. package/lib/autosuggest/helpers/types.d.ts +0 -54
  19. package/lib/autosuggest/helpers/types.js +0 -1
  20. package/lib/autosuggest/helpers/utils.d.ts +0 -39
  21. package/lib/autosuggest/helpers/utils.js +0 -75
  22. package/lib/autosuggest/index.d.ts +0 -538
  23. package/lib/autosuggest/index.js +0 -1255
  24. package/lib/autosuggest/themes/halo/dark/index.js +0 -5
  25. package/lib/autosuggest/themes/halo/light/index.js +0 -5
  26. package/lib/autosuggest/themes/solar/charcoal/index.js +0 -5
  27. package/lib/autosuggest/themes/solar/pearl/index.js +0 -5
  28. package/lib/button/index.d.ts +0 -132
  29. package/lib/button/index.js +0 -223
  30. package/lib/button/themes/halo/dark/index.js +0 -3
  31. package/lib/button/themes/halo/light/index.js +0 -3
  32. package/lib/button/themes/solar/charcoal/index.js +0 -3
  33. package/lib/button/themes/solar/pearl/index.js +0 -3
  34. package/lib/button-bar/index.d.ts +0 -76
  35. package/lib/button-bar/index.js +0 -155
  36. package/lib/button-bar/themes/halo/dark/index.js +0 -3
  37. package/lib/button-bar/themes/halo/light/index.js +0 -3
  38. package/lib/button-bar/themes/solar/charcoal/index.js +0 -3
  39. package/lib/button-bar/themes/solar/pearl/index.js +0 -3
  40. package/lib/calendar/constants.d.ts +0 -26
  41. package/lib/calendar/constants.js +0 -28
  42. package/lib/calendar/index.d.ts +0 -412
  43. package/lib/calendar/index.js +0 -1274
  44. package/lib/calendar/locales.d.ts +0 -1
  45. package/lib/calendar/locales.js +0 -41
  46. package/lib/calendar/themes/halo/dark/index.js +0 -3
  47. package/lib/calendar/themes/halo/light/index.js +0 -3
  48. package/lib/calendar/themes/solar/charcoal/index.js +0 -3
  49. package/lib/calendar/themes/solar/pearl/index.js +0 -3
  50. package/lib/calendar/types.d.ts +0 -32
  51. package/lib/calendar/types.js +0 -1
  52. package/lib/calendar/utils.d.ts +0 -42
  53. package/lib/calendar/utils.js +0 -120
  54. package/lib/canvas/index.d.ts +0 -101
  55. package/lib/canvas/index.js +0 -173
  56. package/lib/canvas/themes/halo/dark/index.js +0 -2
  57. package/lib/canvas/themes/halo/light/index.js +0 -2
  58. package/lib/canvas/themes/solar/charcoal/index.js +0 -2
  59. package/lib/canvas/themes/solar/pearl/index.js +0 -2
  60. package/lib/card/helpers/types.d.ts +0 -12
  61. package/lib/card/helpers/types.js +0 -1
  62. package/lib/card/index.d.ts +0 -142
  63. package/lib/card/index.js +0 -248
  64. package/lib/card/themes/halo/dark/index.js +0 -5
  65. package/lib/card/themes/halo/light/index.js +0 -5
  66. package/lib/card/themes/solar/charcoal/index.js +0 -5
  67. package/lib/card/themes/solar/pearl/index.js +0 -5
  68. package/lib/chart/helpers/index.d.ts +0 -2
  69. package/lib/chart/helpers/index.js +0 -2
  70. package/lib/chart/helpers/legend.d.ts +0 -5
  71. package/lib/chart/helpers/legend.js +0 -78
  72. package/lib/chart/helpers/merge.d.ts +0 -15
  73. package/lib/chart/helpers/merge.js +0 -28
  74. package/lib/chart/helpers/types.d.ts +0 -69
  75. package/lib/chart/helpers/types.js +0 -1
  76. package/lib/chart/index.d.ts +0 -187
  77. package/lib/chart/index.js +0 -491
  78. package/lib/chart/plugins/doughnut-center-label.d.ts +0 -3
  79. package/lib/chart/plugins/doughnut-center-label.js +0 -196
  80. package/lib/chart/themes/halo/dark/index.js +0 -4
  81. package/lib/chart/themes/halo/light/index.js +0 -4
  82. package/lib/chart/themes/solar/charcoal/index.js +0 -4
  83. package/lib/chart/themes/solar/pearl/index.js +0 -4
  84. package/lib/checkbox/index.d.ts +0 -97
  85. package/lib/checkbox/index.js +0 -194
  86. package/lib/checkbox/themes/halo/dark/index.js +0 -4
  87. package/lib/checkbox/themes/halo/light/index.js +0 -4
  88. package/lib/checkbox/themes/solar/charcoal/index.js +0 -4
  89. package/lib/checkbox/themes/solar/pearl/index.js +0 -4
  90. package/lib/clock/index.d.ts +0 -321
  91. package/lib/clock/index.js +0 -583
  92. package/lib/clock/themes/halo/dark/index.js +0 -2
  93. package/lib/clock/themes/halo/light/index.js +0 -2
  94. package/lib/clock/themes/solar/charcoal/index.js +0 -2
  95. package/lib/clock/themes/solar/pearl/index.js +0 -2
  96. package/lib/clock/utils/TickManager.d.ts +0 -14
  97. package/lib/clock/utils/TickManager.js +0 -66
  98. package/lib/clock/utils/timestamps.d.ts +0 -6
  99. package/lib/clock/utils/timestamps.js +0 -6
  100. package/lib/collapse/index.d.ts +0 -119
  101. package/lib/collapse/index.js +0 -197
  102. package/lib/collapse/themes/halo/dark/index.js +0 -5
  103. package/lib/collapse/themes/halo/light/index.js +0 -5
  104. package/lib/collapse/themes/solar/charcoal/index.js +0 -5
  105. package/lib/collapse/themes/solar/pearl/index.js +0 -5
  106. package/lib/color-dialog/elements/color-palettes.d.ts +0 -52
  107. package/lib/color-dialog/elements/color-palettes.js +0 -101
  108. package/lib/color-dialog/elements/grayscale-palettes.d.ts +0 -67
  109. package/lib/color-dialog/elements/grayscale-palettes.js +0 -161
  110. package/lib/color-dialog/elements/palettes.d.ts +0 -65
  111. package/lib/color-dialog/elements/palettes.js +0 -132
  112. package/lib/color-dialog/helpers/color-helpers.d.ts +0 -16
  113. package/lib/color-dialog/helpers/color-helpers.js +0 -161
  114. package/lib/color-dialog/helpers/value-model.d.ts +0 -75
  115. package/lib/color-dialog/helpers/value-model.js +0 -141
  116. package/lib/color-dialog/index.d.ts +0 -232
  117. package/lib/color-dialog/index.js +0 -459
  118. package/lib/color-dialog/themes/halo/dark/index.js +0 -7
  119. package/lib/color-dialog/themes/halo/light/index.js +0 -7
  120. package/lib/color-dialog/themes/solar/charcoal/index.js +0 -7
  121. package/lib/color-dialog/themes/solar/pearl/index.js +0 -7
  122. package/lib/combo-box/helpers/filter.d.ts +0 -10
  123. package/lib/combo-box/helpers/filter.js +0 -29
  124. package/lib/combo-box/helpers/keyboard-event.d.ts +0 -17
  125. package/lib/combo-box/helpers/keyboard-event.js +0 -19
  126. package/lib/combo-box/helpers/renderer.d.ts +0 -8
  127. package/lib/combo-box/helpers/renderer.js +0 -24
  128. package/lib/combo-box/helpers/types.d.ts +0 -11
  129. package/lib/combo-box/helpers/types.js +0 -1
  130. package/lib/combo-box/index.d.ts +0 -551
  131. package/lib/combo-box/index.js +0 -1183
  132. package/lib/combo-box/themes/halo/dark/index.js +0 -7
  133. package/lib/combo-box/themes/halo/light/index.js +0 -7
  134. package/lib/combo-box/themes/solar/charcoal/index.js +0 -7
  135. package/lib/combo-box/themes/solar/pearl/index.js +0 -7
  136. package/lib/counter/index.d.ts +0 -91
  137. package/lib/counter/index.js +0 -154
  138. package/lib/counter/themes/halo/dark/index.js +0 -3
  139. package/lib/counter/themes/halo/light/index.js +0 -3
  140. package/lib/counter/themes/solar/charcoal/index.js +0 -3
  141. package/lib/counter/themes/solar/pearl/index.js +0 -3
  142. package/lib/counter/utils.d.ts +0 -13
  143. package/lib/counter/utils.js +0 -52
  144. package/lib/datetime-picker/index.d.ts +0 -509
  145. package/lib/datetime-picker/index.js +0 -1175
  146. package/lib/datetime-picker/locales.d.ts +0 -8
  147. package/lib/datetime-picker/locales.js +0 -57
  148. package/lib/datetime-picker/themes/halo/dark/index.js +0 -7
  149. package/lib/datetime-picker/themes/halo/light/index.js +0 -7
  150. package/lib/datetime-picker/themes/solar/charcoal/index.js +0 -7
  151. package/lib/datetime-picker/themes/solar/pearl/index.js +0 -7
  152. package/lib/datetime-picker/types.d.ts +0 -3
  153. package/lib/datetime-picker/types.js +0 -1
  154. package/lib/datetime-picker/utils.d.ts +0 -55
  155. package/lib/datetime-picker/utils.js +0 -92
  156. package/lib/dialog/draggable-element.d.ts +0 -14
  157. package/lib/dialog/draggable-element.js +0 -221
  158. package/lib/dialog/index.d.ts +0 -196
  159. package/lib/dialog/index.js +0 -328
  160. package/lib/dialog/themes/halo/dark/index.js +0 -7
  161. package/lib/dialog/themes/halo/light/index.js +0 -7
  162. package/lib/dialog/themes/solar/charcoal/index.js +0 -7
  163. package/lib/dialog/themes/solar/pearl/index.js +0 -7
  164. package/lib/email-field/index.d.ts +0 -80
  165. package/lib/email-field/index.js +0 -86
  166. package/lib/email-field/themes/halo/dark/index.js +0 -3
  167. package/lib/email-field/themes/halo/light/index.js +0 -3
  168. package/lib/email-field/themes/solar/charcoal/index.js +0 -3
  169. package/lib/email-field/themes/solar/pearl/index.js +0 -3
  170. package/lib/events.d.ts +0 -121
  171. package/lib/events.js +0 -1
  172. package/lib/flag/index.d.ts +0 -96
  173. package/lib/flag/index.js +0 -168
  174. package/lib/flag/themes/halo/dark/index.js +0 -2
  175. package/lib/flag/themes/halo/light/index.js +0 -2
  176. package/lib/flag/themes/solar/charcoal/index.js +0 -2
  177. package/lib/flag/themes/solar/pearl/index.js +0 -2
  178. package/lib/flag/utils/FlagLoader.d.ts +0 -47
  179. package/lib/flag/utils/FlagLoader.js +0 -86
  180. package/lib/header/index.d.ts +0 -46
  181. package/lib/header/index.js +0 -73
  182. package/lib/header/themes/halo/dark/index.js +0 -2
  183. package/lib/header/themes/halo/light/index.js +0 -2
  184. package/lib/header/themes/solar/charcoal/index.js +0 -2
  185. package/lib/header/themes/solar/pearl/index.js +0 -2
  186. package/lib/heatmap/helpers/color.d.ts +0 -30
  187. package/lib/heatmap/helpers/color.js +0 -68
  188. package/lib/heatmap/helpers/text.d.ts +0 -26
  189. package/lib/heatmap/helpers/text.js +0 -91
  190. package/lib/heatmap/helpers/track.d.ts +0 -102
  191. package/lib/heatmap/helpers/track.js +0 -160
  192. package/lib/heatmap/helpers/types.d.ts +0 -40
  193. package/lib/heatmap/helpers/types.js +0 -1
  194. package/lib/heatmap/index.d.ts +0 -453
  195. package/lib/heatmap/index.js +0 -1103
  196. package/lib/heatmap/themes/halo/dark/index.js +0 -4
  197. package/lib/heatmap/themes/halo/light/index.js +0 -4
  198. package/lib/heatmap/themes/solar/charcoal/index.js +0 -4
  199. package/lib/heatmap/themes/solar/pearl/index.js +0 -4
  200. package/lib/icon/index.d.ts +0 -90
  201. package/lib/icon/index.js +0 -171
  202. package/lib/icon/themes/halo/dark/index.js +0 -2
  203. package/lib/icon/themes/halo/light/index.js +0 -2
  204. package/lib/icon/themes/solar/charcoal/index.js +0 -2
  205. package/lib/icon/themes/solar/pearl/index.js +0 -2
  206. package/lib/icon/utils/IconLoader.d.ts +0 -52
  207. package/lib/icon/utils/IconLoader.js +0 -93
  208. package/lib/index.d.ts +0 -3
  209. package/lib/index.js +0 -3
  210. package/lib/interactive-chart/helpers/merge.d.ts +0 -15
  211. package/lib/interactive-chart/helpers/merge.js +0 -28
  212. package/lib/interactive-chart/helpers/types.d.ts +0 -45
  213. package/lib/interactive-chart/helpers/types.js +0 -6
  214. package/lib/interactive-chart/index.d.ts +0 -383
  215. package/lib/interactive-chart/index.js +0 -1093
  216. package/lib/interactive-chart/themes/halo/dark/index.js +0 -3
  217. package/lib/interactive-chart/themes/halo/light/index.js +0 -3
  218. package/lib/interactive-chart/themes/solar/charcoal/index.js +0 -3
  219. package/lib/interactive-chart/themes/solar/pearl/index.js +0 -3
  220. package/lib/item/helpers/types.d.ts +0 -57
  221. package/lib/item/helpers/types.js +0 -1
  222. package/lib/item/index.d.ts +0 -159
  223. package/lib/item/index.js +0 -272
  224. package/lib/item/themes/halo/dark/index.js +0 -4
  225. package/lib/item/themes/halo/light/index.js +0 -4
  226. package/lib/item/themes/solar/charcoal/index.js +0 -4
  227. package/lib/item/themes/solar/pearl/index.js +0 -4
  228. package/lib/label/index.d.ts +0 -102
  229. package/lib/label/index.js +0 -245
  230. package/lib/label/themes/halo/dark/index.js +0 -3
  231. package/lib/label/themes/halo/light/index.js +0 -3
  232. package/lib/label/themes/solar/charcoal/index.js +0 -3
  233. package/lib/label/themes/solar/pearl/index.js +0 -3
  234. package/lib/layout/index.d.ts +0 -107
  235. package/lib/layout/index.js +0 -212
  236. package/lib/layout/themes/halo/dark/index.js +0 -2
  237. package/lib/layout/themes/halo/light/index.js +0 -2
  238. package/lib/layout/themes/solar/charcoal/index.js +0 -2
  239. package/lib/layout/themes/solar/pearl/index.js +0 -2
  240. package/lib/led-gauge/index.d.ts +0 -144
  241. package/lib/led-gauge/index.js +0 -438
  242. package/lib/led-gauge/themes/halo/dark/index.js +0 -3
  243. package/lib/led-gauge/themes/halo/light/index.js +0 -3
  244. package/lib/led-gauge/themes/solar/charcoal/index.js +0 -3
  245. package/lib/led-gauge/themes/solar/pearl/index.js +0 -3
  246. package/lib/list/extensible-function.d.ts +0 -8
  247. package/lib/list/extensible-function.js +0 -13
  248. package/lib/list/helpers/list-renderer.d.ts +0 -9
  249. package/lib/list/helpers/list-renderer.js +0 -37
  250. package/lib/list/helpers/types.d.ts +0 -3
  251. package/lib/list/helpers/types.js +0 -1
  252. package/lib/list/index.d.ts +0 -309
  253. package/lib/list/index.js +0 -633
  254. package/lib/list/renderer.d.ts +0 -36
  255. package/lib/list/renderer.js +0 -9
  256. package/lib/list/themes/halo/dark/index.js +0 -3
  257. package/lib/list/themes/halo/light/index.js +0 -3
  258. package/lib/list/themes/solar/charcoal/index.js +0 -3
  259. package/lib/list/themes/solar/pearl/index.js +0 -3
  260. package/lib/loader/index.d.ts +0 -41
  261. package/lib/loader/index.js +0 -61
  262. package/lib/loader/themes/halo/dark/index.js +0 -2
  263. package/lib/loader/themes/halo/light/index.js +0 -2
  264. package/lib/loader/themes/solar/charcoal/index.js +0 -2
  265. package/lib/loader/themes/solar/pearl/index.js +0 -2
  266. package/lib/multi-input/helpers/types.d.ts +0 -11
  267. package/lib/multi-input/helpers/types.js +0 -1
  268. package/lib/multi-input/index.d.ts +0 -301
  269. package/lib/multi-input/index.js +0 -594
  270. package/lib/multi-input/themes/halo/dark/index.js +0 -4
  271. package/lib/multi-input/themes/halo/light/index.js +0 -4
  272. package/lib/multi-input/themes/solar/charcoal/index.js +0 -4
  273. package/lib/multi-input/themes/solar/pearl/index.js +0 -4
  274. package/lib/notification/elements/notification-tray.d.ts +0 -97
  275. package/lib/notification/elements/notification-tray.js +0 -167
  276. package/lib/notification/elements/notification.d.ts +0 -90
  277. package/lib/notification/elements/notification.js +0 -154
  278. package/lib/notification/helpers/status.d.ts +0 -30
  279. package/lib/notification/helpers/status.js +0 -130
  280. package/lib/notification/helpers/types.d.ts +0 -10
  281. package/lib/notification/helpers/types.js +0 -1
  282. package/lib/notification/index.d.ts +0 -2
  283. package/lib/notification/index.js +0 -2
  284. package/lib/notification/themes/halo/dark/index.js +0 -5
  285. package/lib/notification/themes/halo/light/index.js +0 -5
  286. package/lib/notification/themes/solar/charcoal/index.js +0 -5
  287. package/lib/notification/themes/solar/pearl/index.js +0 -5
  288. package/lib/number-field/index.d.ts +0 -339
  289. package/lib/number-field/index.js +0 -740
  290. package/lib/number-field/themes/halo/dark/index.js +0 -3
  291. package/lib/number-field/themes/halo/light/index.js +0 -3
  292. package/lib/number-field/themes/solar/charcoal/index.js +0 -3
  293. package/lib/number-field/themes/solar/pearl/index.js +0 -3
  294. package/lib/overlay/elements/overlay-backdrop.d.ts +0 -46
  295. package/lib/overlay/elements/overlay-backdrop.js +0 -64
  296. package/lib/overlay/elements/overlay-viewport.d.ts +0 -40
  297. package/lib/overlay/elements/overlay-viewport.js +0 -52
  298. package/lib/overlay/elements/overlay.d.ts +0 -408
  299. package/lib/overlay/elements/overlay.js +0 -1426
  300. package/lib/overlay/helpers/functions.d.ts +0 -13
  301. package/lib/overlay/helpers/functions.js +0 -16
  302. package/lib/overlay/helpers/types.d.ts +0 -97
  303. package/lib/overlay/helpers/types.js +0 -16
  304. package/lib/overlay/index.d.ts +0 -2
  305. package/lib/overlay/index.js +0 -1
  306. package/lib/overlay/managers/backdrop-manager.d.ts +0 -45
  307. package/lib/overlay/managers/backdrop-manager.js +0 -96
  308. package/lib/overlay/managers/close-manager.d.ts +0 -54
  309. package/lib/overlay/managers/close-manager.js +0 -138
  310. package/lib/overlay/managers/focus-manager.d.ts +0 -71
  311. package/lib/overlay/managers/focus-manager.js +0 -228
  312. package/lib/overlay/managers/interaction-lock-manager.d.ts +0 -138
  313. package/lib/overlay/managers/interaction-lock-manager.js +0 -375
  314. package/lib/overlay/managers/viewport-manager.d.ts +0 -93
  315. package/lib/overlay/managers/viewport-manager.js +0 -211
  316. package/lib/overlay/managers/zindex-manager.d.ts +0 -80
  317. package/lib/overlay/managers/zindex-manager.js +0 -195
  318. package/lib/overlay/themes/halo/dark/index.js +0 -4
  319. package/lib/overlay/themes/halo/light/index.js +0 -4
  320. package/lib/overlay/themes/solar/charcoal/index.js +0 -4
  321. package/lib/overlay/themes/solar/pearl/index.js +0 -4
  322. package/lib/overlay-menu/helpers/types.d.ts +0 -8
  323. package/lib/overlay-menu/helpers/types.js +0 -1
  324. package/lib/overlay-menu/index.d.ts +0 -387
  325. package/lib/overlay-menu/index.js +0 -935
  326. package/lib/overlay-menu/managers/menu-manager.d.ts +0 -98
  327. package/lib/overlay-menu/managers/menu-manager.js +0 -240
  328. package/lib/overlay-menu/themes/halo/dark/index.js +0 -5
  329. package/lib/overlay-menu/themes/halo/light/index.js +0 -5
  330. package/lib/overlay-menu/themes/solar/charcoal/index.js +0 -5
  331. package/lib/overlay-menu/themes/solar/pearl/index.js +0 -5
  332. package/lib/pagination/index.d.ts +0 -275
  333. package/lib/pagination/index.js +0 -552
  334. package/lib/pagination/themes/halo/dark/index.js +0 -6
  335. package/lib/pagination/themes/halo/light/index.js +0 -6
  336. package/lib/pagination/themes/solar/charcoal/index.js +0 -6
  337. package/lib/pagination/themes/solar/pearl/index.js +0 -6
  338. package/lib/panel/index.d.ts +0 -48
  339. package/lib/panel/index.js +0 -74
  340. package/lib/panel/themes/halo/dark/index.js +0 -2
  341. package/lib/panel/themes/halo/light/index.js +0 -2
  342. package/lib/panel/themes/solar/charcoal/index.js +0 -2
  343. package/lib/panel/themes/solar/pearl/index.js +0 -2
  344. package/lib/password-field/index.d.ts +0 -89
  345. package/lib/password-field/index.js +0 -112
  346. package/lib/password-field/themes/halo/dark/index.js +0 -3
  347. package/lib/password-field/themes/halo/light/index.js +0 -3
  348. package/lib/password-field/themes/solar/charcoal/index.js +0 -3
  349. package/lib/password-field/themes/solar/pearl/index.js +0 -3
  350. package/lib/pill/index.d.ts +0 -97
  351. package/lib/pill/index.js +0 -160
  352. package/lib/pill/themes/halo/dark/index.js +0 -3
  353. package/lib/pill/themes/halo/light/index.js +0 -3
  354. package/lib/pill/themes/solar/charcoal/index.js +0 -3
  355. package/lib/pill/themes/solar/pearl/index.js +0 -3
  356. package/lib/progress-bar/index.d.ts +0 -82
  357. package/lib/progress-bar/index.js +0 -157
  358. package/lib/progress-bar/themes/halo/dark/index.js +0 -2
  359. package/lib/progress-bar/themes/halo/light/index.js +0 -2
  360. package/lib/progress-bar/themes/solar/charcoal/index.js +0 -2
  361. package/lib/progress-bar/themes/solar/pearl/index.js +0 -2
  362. package/lib/radio-button/index.d.ts +0 -123
  363. package/lib/radio-button/index.js +0 -261
  364. package/lib/radio-button/radio-button-registry.d.ts +0 -22
  365. package/lib/radio-button/radio-button-registry.js +0 -93
  366. package/lib/radio-button/themes/halo/dark/index.js +0 -3
  367. package/lib/radio-button/themes/halo/light/index.js +0 -3
  368. package/lib/radio-button/themes/solar/charcoal/index.js +0 -3
  369. package/lib/radio-button/themes/solar/pearl/index.js +0 -3
  370. package/lib/rating/index.d.ts +0 -91
  371. package/lib/rating/index.js +0 -157
  372. package/lib/rating/themes/halo/dark/index.js +0 -2
  373. package/lib/rating/themes/halo/light/index.js +0 -2
  374. package/lib/rating/themes/solar/charcoal/index.js +0 -2
  375. package/lib/rating/themes/solar/pearl/index.js +0 -2
  376. package/lib/search-field/index.d.ts +0 -77
  377. package/lib/search-field/index.js +0 -84
  378. package/lib/search-field/themes/halo/dark/index.js +0 -3
  379. package/lib/search-field/themes/halo/light/index.js +0 -3
  380. package/lib/search-field/themes/solar/charcoal/index.js +0 -3
  381. package/lib/search-field/themes/solar/pearl/index.js +0 -3
  382. package/lib/select/helpers/types.d.ts +0 -3
  383. package/lib/select/helpers/types.js +0 -1
  384. package/lib/select/index.d.ts +0 -396
  385. package/lib/select/index.js +0 -981
  386. package/lib/select/themes/halo/dark/index.js +0 -5
  387. package/lib/select/themes/halo/light/index.js +0 -5
  388. package/lib/select/themes/solar/charcoal/index.js +0 -5
  389. package/lib/select/themes/solar/pearl/index.js +0 -5
  390. package/lib/sidebar-layout/index.d.ts +0 -70
  391. package/lib/sidebar-layout/index.js +0 -134
  392. package/lib/sidebar-layout/themes/halo/dark/index.js +0 -3
  393. package/lib/sidebar-layout/themes/halo/light/index.js +0 -3
  394. package/lib/sidebar-layout/themes/solar/charcoal/index.js +0 -3
  395. package/lib/sidebar-layout/themes/solar/pearl/index.js +0 -3
  396. package/lib/slider/index.d.ts +0 -409
  397. package/lib/slider/index.js +0 -1187
  398. package/lib/slider/themes/halo/dark/index.js +0 -3
  399. package/lib/slider/themes/halo/light/index.js +0 -3
  400. package/lib/slider/themes/solar/charcoal/index.js +0 -3
  401. package/lib/slider/themes/solar/pearl/index.js +0 -3
  402. package/lib/sparkline/index.d.ts +0 -109
  403. package/lib/sparkline/index.js +0 -188
  404. package/lib/sparkline/themes/halo/dark/index.js +0 -2
  405. package/lib/sparkline/themes/halo/light/index.js +0 -2
  406. package/lib/sparkline/themes/solar/charcoal/index.js +0 -2
  407. package/lib/sparkline/themes/solar/pearl/index.js +0 -2
  408. package/lib/swing-gauge/const.d.ts +0 -22
  409. package/lib/swing-gauge/const.js +0 -26
  410. package/lib/swing-gauge/helpers.d.ts +0 -8
  411. package/lib/swing-gauge/helpers.js +0 -105
  412. package/lib/swing-gauge/index.d.ts +0 -296
  413. package/lib/swing-gauge/index.js +0 -764
  414. package/lib/swing-gauge/themes/halo/dark/index.js +0 -3
  415. package/lib/swing-gauge/themes/halo/light/index.js +0 -3
  416. package/lib/swing-gauge/themes/solar/charcoal/index.js +0 -3
  417. package/lib/swing-gauge/themes/solar/pearl/index.js +0 -3
  418. package/lib/swing-gauge/types.d.ts +0 -34
  419. package/lib/swing-gauge/types.js +0 -1
  420. package/lib/tab/index.d.ts +0 -118
  421. package/lib/tab/index.js +0 -208
  422. package/lib/tab/themes/halo/dark/index.js +0 -4
  423. package/lib/tab/themes/halo/light/index.js +0 -4
  424. package/lib/tab/themes/solar/charcoal/index.js +0 -4
  425. package/lib/tab/themes/solar/pearl/index.js +0 -4
  426. package/lib/tab-bar/helpers/animate.d.ts +0 -16
  427. package/lib/tab-bar/helpers/animate.js +0 -53
  428. package/lib/tab-bar/index.d.ts +0 -108
  429. package/lib/tab-bar/index.js +0 -218
  430. package/lib/tab-bar/themes/halo/dark/index.js +0 -4
  431. package/lib/tab-bar/themes/halo/light/index.js +0 -4
  432. package/lib/tab-bar/themes/solar/charcoal/index.js +0 -4
  433. package/lib/tab-bar/themes/solar/pearl/index.js +0 -4
  434. package/lib/text-field/index.d.ts +0 -151
  435. package/lib/text-field/index.js +0 -260
  436. package/lib/text-field/themes/halo/dark/index.js +0 -3
  437. package/lib/text-field/themes/halo/light/index.js +0 -3
  438. package/lib/text-field/themes/solar/charcoal/index.js +0 -3
  439. package/lib/text-field/themes/solar/pearl/index.js +0 -3
  440. package/lib/time-picker/index.d.ts +0 -412
  441. package/lib/time-picker/index.js +0 -898
  442. package/lib/time-picker/themes/halo/dark/index.js +0 -4
  443. package/lib/time-picker/themes/halo/light/index.js +0 -4
  444. package/lib/time-picker/themes/solar/charcoal/index.js +0 -4
  445. package/lib/time-picker/themes/solar/pearl/index.js +0 -4
  446. package/lib/toggle/index.d.ts +0 -87
  447. package/lib/toggle/index.js +0 -153
  448. package/lib/toggle/themes/halo/dark/index.js +0 -2
  449. package/lib/toggle/themes/halo/light/index.js +0 -2
  450. package/lib/toggle/themes/solar/charcoal/index.js +0 -2
  451. package/lib/toggle/themes/solar/pearl/index.js +0 -2
  452. package/lib/tooltip/elements/title-tooltip.d.ts +0 -1
  453. package/lib/tooltip/elements/title-tooltip.js +0 -18
  454. package/lib/tooltip/elements/tooltip-element.d.ts +0 -21
  455. package/lib/tooltip/elements/tooltip-element.js +0 -54
  456. package/lib/tooltip/helpers/overflow-tooltip.d.ts +0 -9
  457. package/lib/tooltip/helpers/overflow-tooltip.js +0 -19
  458. package/lib/tooltip/helpers/renderer.d.ts +0 -8
  459. package/lib/tooltip/helpers/renderer.js +0 -11
  460. package/lib/tooltip/helpers/types.d.ts +0 -23
  461. package/lib/tooltip/helpers/types.js +0 -1
  462. package/lib/tooltip/index.d.ts +0 -232
  463. package/lib/tooltip/index.js +0 -477
  464. package/lib/tooltip/managers/tooltip-manager.d.ts +0 -15
  465. package/lib/tooltip/managers/tooltip-manager.js +0 -140
  466. package/lib/tooltip/themes/halo/dark/index.js +0 -3
  467. package/lib/tooltip/themes/halo/light/index.js +0 -3
  468. package/lib/tooltip/themes/solar/charcoal/index.js +0 -3
  469. package/lib/tooltip/themes/solar/pearl/index.js +0 -3
  470. package/lib/tornado-chart/elements/tornado-chart.d.ts +0 -78
  471. package/lib/tornado-chart/elements/tornado-chart.js +0 -122
  472. package/lib/tornado-chart/elements/tornado-item.d.ts +0 -110
  473. package/lib/tornado-chart/elements/tornado-item.js +0 -207
  474. package/lib/tornado-chart/index.d.ts +0 -2
  475. package/lib/tornado-chart/index.js +0 -2
  476. package/lib/tornado-chart/themes/halo/dark/index.js +0 -6
  477. package/lib/tornado-chart/themes/halo/light/index.js +0 -6
  478. package/lib/tornado-chart/themes/solar/charcoal/index.js +0 -6
  479. package/lib/tornado-chart/themes/solar/pearl/index.js +0 -6
  480. package/lib/tree/elements/tree-item.d.ts +0 -96
  481. package/lib/tree/elements/tree-item.js +0 -179
  482. package/lib/tree/elements/tree.d.ts +0 -202
  483. package/lib/tree/elements/tree.js +0 -413
  484. package/lib/tree/helpers/filter.d.ts +0 -8
  485. package/lib/tree/helpers/filter.js +0 -33
  486. package/lib/tree/helpers/renderer.d.ts +0 -5
  487. package/lib/tree/helpers/renderer.js +0 -33
  488. package/lib/tree/helpers/types.d.ts +0 -25
  489. package/lib/tree/helpers/types.js +0 -1
  490. package/lib/tree/index.d.ts +0 -4
  491. package/lib/tree/index.js +0 -3
  492. package/lib/tree/managers/tree-manager.d.ts +0 -248
  493. package/lib/tree/managers/tree-manager.js +0 -395
  494. package/lib/tree/themes/halo/dark/index.js +0 -7
  495. package/lib/tree/themes/halo/light/index.js +0 -7
  496. package/lib/tree/themes/solar/charcoal/index.js +0 -7
  497. package/lib/tree/themes/solar/pearl/index.js +0 -7
  498. package/lib/tree-select/helpers/types.d.ts +0 -4
  499. package/lib/tree-select/helpers/types.js +0 -1
  500. package/lib/tree-select/index.d.ts +0 -404
  501. package/lib/tree-select/index.js +0 -891
  502. package/lib/tree-select/themes/halo/dark/index.js +0 -11
  503. package/lib/tree-select/themes/halo/light/index.js +0 -11
  504. package/lib/tree-select/themes/solar/charcoal/index.js +0 -11
  505. package/lib/tree-select/themes/solar/pearl/index.js +0 -11
  506. package/lib/version.d.ts +0 -1
  507. package/lib/version.js +0 -1
package/lib/list/index.js DELETED
@@ -1,633 +0,0 @@
1
- import { __decorate } from "tslib";
2
- import { ControlElement, css, html, WarningNotice } 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
- import { CollectionComposer } from '@refinitiv-ui/utils/lib/collection.js';
7
- import { ListRenderer } from './helpers/list-renderer.js';
8
- import '../item/index.js';
9
- export { ListRenderer };
10
- /**
11
- * Key direction
12
- */
13
- var Direction;
14
- (function (Direction) {
15
- Direction[Direction["UP"] = -1] = "UP";
16
- Direction[Direction["DOWN"] = 1] = "DOWN";
17
- })(Direction || (Direction = {}));
18
- const valueFormatWarning = new WarningNotice('The specified \'values\' format does not conform to the required format.');
19
- /**
20
- * Provides listing and immutable selection
21
- * @fires value-changed - Dispatched when value changes
22
- */
23
- let List = class List extends ControlElement {
24
- constructor() {
25
- super(...arguments);
26
- this.defaultRole = 'listbox';
27
- /**
28
- * Used to timestamp renders.
29
- * This enables diff checking against item updates,
30
- * rendering only items which have updated since the last render cycle.
31
- */
32
- this.renderTimestamp = new Map();
33
- /**
34
- * Requests an update after a composer modification.
35
- * @returns Update promise.
36
- */
37
- this.modificationUpdate = () => {
38
- this.requestUpdate();
39
- };
40
- /**
41
- * Item map; used to link element nodes to data items.
42
- */
43
- this.itemMap = new Map();
44
- /**
45
- * Element map; used to link data items to element nodes.
46
- */
47
- this.elementMap = new Map();
48
- /**
49
- * Composer used to query and modify item state.
50
- */
51
- this.composer = new CollectionComposer([]);
52
- /**
53
- * Use default `tabindex` so that items are priority focus targets
54
- */
55
- this.defaultTabIndex = null;
56
- /**
57
- * Element focus delegation.
58
- * Set to `false` and relies on native focusing.
59
- */
60
- this.delegatesFocus = false;
61
- /**
62
- * Renderer used to render list item elements
63
- * @type {ListRenderer}
64
- */
65
- this.renderer = new ListRenderer(this);
66
- /**
67
- * Disable selections
68
- */
69
- this.stateless = false;
70
- /**
71
- * Allow multiple selections
72
- */
73
- this.multiple = false;
74
- this._data = null;
75
- }
76
- /**
77
- * Element version number
78
- * @returns version number
79
- */
80
- static get version() {
81
- return VERSION;
82
- }
83
- /**
84
- * The data object, used to render the list.
85
- * @type {ListData}
86
- * @default null
87
- */
88
- get data() {
89
- return this._data;
90
- }
91
- set data(value) {
92
- const oldValue = this._data;
93
- if (oldValue === value) {
94
- return;
95
- }
96
- if (value instanceof CollectionComposer) {
97
- this.composer = value;
98
- }
99
- else if (Array.isArray(value)) {
100
- this.composer = new CollectionComposer(value);
101
- }
102
- else {
103
- this.composer = new CollectionComposer([]);
104
- }
105
- this.composer.on('modification', // Listen for modifications
106
- this.modificationUpdate // Update the template
107
- );
108
- this.clearMaps();
109
- this._data = value;
110
- this.requestUpdate('data', oldValue);
111
- }
112
- /**
113
- * Returns the first selected item value.
114
- * Use `values` when multiple selection mode is enabled.
115
- * @default -
116
- */
117
- get value() {
118
- return this.values[0] || '';
119
- }
120
- set value(value) {
121
- const oldValue = this.value;
122
- if (value !== oldValue || this.values.length > 1) {
123
- this.clearSelection();
124
- const item = this.queryItemsByPropertyValue('value', value)[0];
125
- if (item) {
126
- this.composer.setItemPropertyValue(item, 'selected', true);
127
- }
128
- this.requestUpdate('value', oldValue);
129
- }
130
- }
131
- /**
132
- * Returns a values collection of the currently
133
- * selected item values
134
- * @type {string[]}
135
- * @default []
136
- * @readonly
137
- */
138
- get values() {
139
- return this.queryItemsByPropertyValue('selected', true)
140
- .map((item) => this.composer.getItemPropertyValue(item, 'value'));
141
- }
142
- set values(values) {
143
- if (!Array.isArray(values)) {
144
- valueFormatWarning.show();
145
- this.values = [];
146
- }
147
- else {
148
- // Clone value arrays
149
- const newValue = values.slice();
150
- const oldValue = this.values.slice();
151
- // Create comparison strings to check for differences
152
- const newComparison = newValue.sort().toString();
153
- const oldComparison = oldValue.sort().toString();
154
- // Should we update the selection state?
155
- if (newComparison !== oldComparison) {
156
- this.clearSelection();
157
- values.some((value) => {
158
- const matches = this.queryItemsByPropertyValue('value', value);
159
- matches.forEach((match) => this.composer.setItemPropertyValue(match, 'selected', true));
160
- return !this.multiple; // Only set the fist value if multiple is not enabled
161
- });
162
- this.requestUpdate('values', oldValue);
163
- }
164
- }
165
- }
166
- /**
167
- * Selects an item in the list
168
- * @param item Data Item or Item Element
169
- * @returns If a selection has been made or not
170
- */
171
- selectItem(item) {
172
- if (!this.stateless) {
173
- if (item instanceof HTMLElement) {
174
- item = this.itemFromElement(item);
175
- }
176
- if (item && this.multiple) {
177
- const value = this.composer.getItemPropertyValue(item, 'selected');
178
- this.composer.setItemPropertyValue(item, 'selected', !value);
179
- return true;
180
- }
181
- if (item && this.composer.getItemPropertyValue(item, 'selected') !== true) {
182
- this.clearSelection();
183
- this.composer.setItemPropertyValue(item, 'selected', true);
184
- return true;
185
- }
186
- }
187
- return false;
188
- }
189
- /**
190
- * Navigate up through the list items
191
- * @returns {void}
192
- */
193
- up() {
194
- this.highlightItem(this.getNextHighlightItem(Direction.UP), true);
195
- }
196
- /**
197
- * Navigate down through the list items
198
- * @returns {void}
199
- */
200
- down() {
201
- this.highlightItem(this.getNextHighlightItem(Direction.DOWN), true);
202
- }
203
- /**
204
- * Navigate to first focusable item of the list
205
- * @returns {void}
206
- */
207
- first() {
208
- const firstItem = this.itemMap.get(this.tabbableElements[0]);
209
- this.highlightItem(firstItem, true);
210
- }
211
- /**
212
- * Navigate to first focusable item of the list
213
- * @returns {void}
214
- */
215
- last() {
216
- const lastItem = this.itemMap.get(this.tabbableElements[this.tabbableElements.length - 1]);
217
- this.highlightItem(lastItem, true);
218
- }
219
- /**
220
- * Proxy for querying the composer
221
- * @param engine composer querying engine
222
- * @returns Collection of queried items
223
- */
224
- queryItems(engine) {
225
- return this.composer.queryItems(engine);
226
- }
227
- /**
228
- * Proxy for querying the composer by property and value
229
- * @param property Property name
230
- * @param value Property value
231
- * @returns Collection of queried items
232
- */
233
- queryItemsByPropertyValue(property, value) {
234
- return this.composer.queryItemsByPropertyValue(property, value);
235
- }
236
- /**
237
- * Gets the associated element for the data item provided,
238
- * if there is one available.
239
- * @param item Item to map element to
240
- * @returns Associated element
241
- */
242
- elementFromItem(item) {
243
- return this.elementMap.get(item);
244
- }
245
- /**
246
- * Gets the associated data item for the provided element,
247
- * if there is one available.
248
- * @param element Element to map item to
249
- * @returns Associated date item
250
- */
251
- itemFromElement(element) {
252
- return this.itemMap.get(element);
253
- }
254
- /**
255
- * Tries to find the next focusable element.
256
- * @param direction Direction to search
257
- * @param element Starting element
258
- * @returns Next logical element to focus
259
- */
260
- getNextFocusableItem(direction, element = this.activeElement) {
261
- if (!element) {
262
- return;
263
- }
264
- const children = this.tabbableItems;
265
- if (children.length > 1) {
266
- let index = children.indexOf(element) + direction;
267
- index = index < 0 ? children.length - 1 : index === children.length ? 0 : index;
268
- return children[index];
269
- }
270
- }
271
- /**
272
- * Tries to find the next highlight item
273
- * @param direction Direction to search
274
- * @returns A data item, if found.
275
- */
276
- getNextHighlightItem(direction) {
277
- const highlightItem = this.queryItemsByPropertyValue('highlighted', true)[0];
278
- const nextElement = this.getNextFocusableItem(direction) || this.getNextFocusableItem(direction, this.elementFromItem(highlightItem));
279
- const backupElement = this.tabbableItems[0];
280
- return nextElement ? this.itemFromElement(nextElement) : backupElement ? this.itemFromElement(backupElement) : undefined;
281
- }
282
- /**
283
- * Clears any highlighted item
284
- * @returns {void}
285
- */
286
- clearHighlighted() {
287
- this.queryItemsByPropertyValue('highlighted', true)
288
- .forEach(item => this.composer.setItemPropertyValue(item, 'highlighted', false));
289
- }
290
- /**
291
- * Highlights a single item.
292
- * Used for navigation.
293
- * @param item Item to highlight
294
- * @param scrollToItem Scroll the item into view?
295
- * @returns {void}
296
- */
297
- highlightItem(item, scrollToItem = false) {
298
- if (item) {
299
- const elementToFocus = this.elementFromItem(item);
300
- const focus = this.activeElement && this.activeElement !== elementToFocus;
301
- this.clearHighlighted();
302
- this.composer.setItemPropertyValue(item, 'highlighted', true);
303
- focus && (elementToFocus === null || elementToFocus === void 0 ? void 0 : elementToFocus.focus({ preventScroll: true }));
304
- scrollToItem && this.scrollToItem(item);
305
- }
306
- }
307
- /**
308
- * Gets the available tabbable elements
309
- */
310
- get tabbableItems() {
311
- return Array.from(this.children)
312
- .filter((el) => el.tabIndex >= 0);
313
- }
314
- /**
315
- * Returns the current focused element
316
- */
317
- get activeElement() {
318
- const el = this.getRootNode().activeElement;
319
- const itemEl = this.findItemElementFromTarget(el);
320
- if (itemEl && this.tabbableItems.includes(itemEl)) {
321
- return itemEl;
322
- }
323
- return null;
324
- }
325
- /**
326
- * Returns the current focused element
327
- */
328
- get highlightElement() {
329
- const item = this.queryItemsByPropertyValue('highlighted', true)[0];
330
- return item ? this.elementFromItem(item) || null : null;
331
- }
332
- /**
333
- * Tries to select the current highlighted element
334
- * @returns {void}
335
- */
336
- triggerActiveItem() {
337
- const el = this.activeElement || this.highlightElement;
338
- const item = el && this.itemFromElement(el);
339
- item && this.selectItem(item) && this.fireSelectionUpdate();
340
- }
341
- /**
342
- * Scroll to list item element
343
- * @param item Data item to scroll to
344
- * @returns {void}
345
- */
346
- scrollToItem(item) {
347
- const element = this.elementFromItem(item);
348
- if (element) {
349
- const min = this.scrollTop;
350
- const max = this.scrollTop + this.clientHeight - element.offsetHeight;
351
- const pos = element.offsetTop;
352
- pos > max ? this.scrollTop = element.offsetTop - this.clientHeight + element.offsetHeight
353
- : pos < min ? this.scrollTop = element.offsetTop : 0;
354
- }
355
- }
356
- /**
357
- * Handles key input
358
- * @param event Key down event object
359
- * @returns {void}
360
- */
361
- onKeyDown(event) {
362
- switch (event.key) {
363
- case ' ':
364
- case 'Spacebar':
365
- case 'Enter':
366
- this.triggerActiveItem();
367
- break;
368
- case 'Up':
369
- case 'ArrowUp':
370
- this.up();
371
- break;
372
- case 'Down':
373
- case 'ArrowDown':
374
- this.down();
375
- break;
376
- case 'Home':
377
- this.first();
378
- break;
379
- case 'End':
380
- this.last();
381
- break;
382
- default:
383
- return;
384
- }
385
- event.preventDefault();
386
- }
387
- /**
388
- * Handle list on tap
389
- * Typically it will select an item
390
- * @param event Event to handle
391
- * @returns {void}
392
- */
393
- onTap(event) {
394
- const el = this.findItemElementFromTarget(event.target);
395
- const item = el && this.itemFromElement(el);
396
- if (item) {
397
- this.clearHighlighted();
398
- if (this.selectItem(item)) {
399
- this.highlightItem(item);
400
- this.fireSelectionUpdate();
401
- }
402
- }
403
- }
404
- /**
405
- * Handles mouse move
406
- * Typically it will highlight an item
407
- * @param event Event to handle
408
- * @returns {void}
409
- */
410
- onMouse(event) {
411
- const el = this.findItemElementFromTarget(event.target);
412
- const item = el ? this.itemFromElement(el) : null;
413
- if (item && el !== this.highlightElement) {
414
- if (this.activeElement) {
415
- // prevent shifting focus to other items
416
- // on mouse move and just fallback to host
417
- this.activeElement.focus({ preventScroll: true });
418
- }
419
- this.highlightItem(item);
420
- }
421
- }
422
- /**
423
- * Handles item focus in
424
- * Typically it will highlight the item
425
- * @param event Event to handle
426
- * @returns {void}
427
- */
428
- onFocus(event) {
429
- const el = this.findItemElementFromTarget(event.target);
430
- const item = el && this.itemFromElement(el);
431
- if (item) {
432
- this.highlightItem(item);
433
- }
434
- }
435
- /**
436
- * Handles item focus out
437
- * Typically it will remove highlighting
438
- * @returns {void}
439
- */
440
- onBlur() {
441
- this.clearHighlighted();
442
- }
443
- /**
444
- * Tries to find a known item element,
445
- * from an event target
446
- * @param target Event target
447
- * @returns Found element, if available
448
- */
449
- findItemElementFromTarget(target) {
450
- let el = target;
451
- while (el) {
452
- if (this.itemMap.has(el)) {
453
- break; // known rendered item
454
- }
455
- el = el.parentElement;
456
- }
457
- return el;
458
- }
459
- /**
460
- * Clears the current selected items
461
- * @returns {void}
462
- */
463
- clearSelection() {
464
- this.queryItemsByPropertyValue('selected', true)
465
- .forEach((item) => this.composer.setItemPropertyValue(item, 'selected', false));
466
- this.requestUpdate();
467
- }
468
- /**
469
- * Queries and returns all renderable items.
470
- * @returns Collection of renderable items
471
- */
472
- get renderItems() {
473
- return this.queryItems((item, composer) => {
474
- return composer.getItemPropertyValue(item, 'hidden') !== true;
475
- });
476
- }
477
- /**
478
- * Proxy for creating list item elements.
479
- * Allows for a mapping to be created between
480
- * Data Item and Item Element.
481
- * @param item Data item context
482
- * @param recyclableElements Child elements available for reuse
483
- * @returns List item element
484
- */
485
- createListItem(item, recyclableElements) {
486
- const cachedElement = this.elementFromItem(item);
487
- const previousTimestamp = this.renderTimestamp.get(item) || NaN;
488
- if (cachedElement && previousTimestamp > this.composer.getItemTimestamp(item)) {
489
- return cachedElement; // don't re-render if the item hasn't changed
490
- }
491
- if (!cachedElement && recyclableElements.length) {
492
- // Remove any old ties with the reusable element.
493
- const recycledElement = recyclableElements.pop();
494
- const previousItem = this.itemFromElement(recycledElement);
495
- this.itemMap.delete(recycledElement);
496
- previousItem && this.elementMap.delete(previousItem);
497
- this.elementMap.set(item, recycledElement);
498
- }
499
- const freshElement = this.renderer(item, this.composer, this.elementFromItem(item));
500
- if (cachedElement && cachedElement !== freshElement) {
501
- // Renderer returned a new element, so remove the old link.
502
- this.itemMap.delete(cachedElement);
503
- }
504
- this.itemMap.set(freshElement, item); // Link element to item
505
- this.elementMap.set(item, freshElement); // Link item to element
506
- this.renderTimestamp.set(item, performance.now());
507
- return freshElement;
508
- }
509
- /**
510
- * Clears all item-element and timestamp maps
511
- * @returns {void}
512
- */
513
- clearMaps() {
514
- this.itemMap.clear();
515
- this.elementMap.clear();
516
- this.renderTimestamp.clear();
517
- }
518
- /**
519
- * Fire value changed event
520
- * @returns {void}
521
- */
522
- fireSelectionUpdate() {
523
- /**
524
- * @event List#value-changed
525
- */
526
- this.notifyPropertyChange('value', this.value);
527
- }
528
- /**
529
- * Calculates what elements can be recycled safely
530
- * @param renderItems Current items to render
531
- * @returns Collection of elements to be recycled
532
- */
533
- calculateRecyclableElements(renderItems) {
534
- const result = [];
535
- for (const element of this.children) {
536
- const item = this.itemFromElement(element);
537
- if (item && !renderItems.includes(item)) {
538
- result.push(element);
539
- }
540
- }
541
- return result;
542
- }
543
- /**
544
- * Renders updates to light DOM
545
- * @returns {void}
546
- */
547
- renderLightDOM() {
548
- const renderItems = this.renderItems;
549
- const currentChildren = Array.from(this.children);
550
- const recyclableElements = this.calculateRecyclableElements(renderItems);
551
- const renderChildren = renderItems.map((item) => this.createListItem(item, recyclableElements));
552
- const deletions = currentChildren.filter(element => !renderChildren.includes(element));
553
- deletions.forEach(element => this.removeChild(element));
554
- renderChildren.forEach((element, index) => {
555
- if (this.children.length === index) {
556
- this.appendChild(element);
557
- }
558
- else if (element !== this.children[index]) {
559
- this.insertBefore(element, this.children[index]);
560
- }
561
- });
562
- }
563
- firstUpdated(changeProperties) {
564
- super.firstUpdated(changeProperties);
565
- this.addEventListener('keydown', this.onKeyDown);
566
- this.addEventListener('tap', this.onTap);
567
- this.addEventListener('mousemove', this.onMouse);
568
- this.addEventListener('mouseleave', this.clearHighlighted);
569
- this.addEventListener('focusin', this.onFocus);
570
- this.addEventListener('focusout', this.onBlur);
571
- }
572
- update(changeProperties) {
573
- if (changeProperties.has('multiple')) {
574
- this.renderTimestamp.clear(); // force render of all items
575
- }
576
- return super.update(changeProperties);
577
- }
578
- updated(changedProperties) {
579
- super.updated(changedProperties);
580
- if (changedProperties.has('multiple')) {
581
- this.setAttribute('aria-multiselectable', this.multiple ? 'true' : 'false');
582
- }
583
- }
584
- /**
585
- * A `CSSResultGroup` that will be used
586
- * to style the host, slotted children
587
- * and the internal template of the element.
588
- * @return CSS template
589
- */
590
- static get styles() {
591
- return css `
592
- :host {
593
- display: block;
594
- max-height: 600px;
595
- overflow-y: auto;
596
- position: relative; /* required for scrollToItem */
597
- }
598
- `;
599
- }
600
- /**
601
- * A `TemplateResult` that will be used
602
- * to render the updated internal template.
603
- * @return Render template
604
- */
605
- render() {
606
- this.renderLightDOM();
607
- return html `<slot></slot>`;
608
- }
609
- };
610
- __decorate([
611
- property({ type: Function, attribute: false })
612
- ], List.prototype, "renderer", void 0);
613
- __decorate([
614
- property({ type: Boolean })
615
- ], List.prototype, "stateless", void 0);
616
- __decorate([
617
- property({ type: Boolean })
618
- ], List.prototype, "multiple", void 0);
619
- __decorate([
620
- property({ attribute: false })
621
- ], List.prototype, "data", null);
622
- __decorate([
623
- property({ type: String })
624
- ], List.prototype, "value", null);
625
- __decorate([
626
- property({ type: Array, attribute: false })
627
- ], List.prototype, "values", null);
628
- List = __decorate([
629
- customElement('ef-list', {
630
- alias: 'coral-list'
631
- })
632
- ], List);
633
- export { List };
@@ -1,36 +0,0 @@
1
- import { ExtensibleFunction } from './extensible-function.js';
2
- import type { DataItem, CollectionComposer } from '@refinitiv-ui/utils/lib/collection.js';
3
- /**
4
- * Render function interface
5
- * TODO: Move this to @refinitiv-ui/utils
6
- * ! Do not import this module !
7
- */
8
- export interface RenderFunction {
9
- /**
10
- * Renders data items into elements
11
- * @param item Data item context
12
- * @param composer Composer context
13
- * @param element Reusable element. This element tries to be the same as was used before.
14
- * @returns List item element
15
- */
16
- (item: DataItem, composer: CollectionComposer, element?: HTMLElement): HTMLElement;
17
- }
18
- /**
19
- * Render constructor interface
20
- * TODO: Move this to @refinitiv-ui/utils
21
- * ! Do not import this module !
22
- */
23
- export interface RendererConstructor {
24
- /**
25
- * @param fn Render function to use as the instance
26
- */
27
- new (fn: RenderFunction): RenderFunction;
28
- }
29
- /**
30
- * Renderer base class.
31
- * Used for creating renderers to render data items.
32
- * TODO: Move this to @refinitiv-ui/utils
33
- * ! Do not import this module !
34
- */
35
- export declare abstract class Renderer extends ExtensibleFunction {
36
- }
@@ -1,9 +0,0 @@
1
- import { ExtensibleFunction } from './extensible-function.js';
2
- /**
3
- * Renderer base class.
4
- * Used for creating renderers to render data items.
5
- * TODO: Move this to @refinitiv-ui/utils
6
- * ! Do not import this module !
7
- */
8
- export class Renderer extends ExtensibleFunction {
9
- }
@@ -1,3 +0,0 @@
1
- import '@refinitiv-ui/elements/lib/item/themes/halo/dark';
2
-
3
- elf.customStyles.define('ef-list', ':host{--item-indent:8px;--item-height:24px;color:#ccc;background-color:transparent;touch-action:manipulation;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}:host(:focus){outline:0}:host([readonly]) [part=list-item]{cursor:default}::-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}');