@refinitiv-ui/elements 5.3.3 → 5.7.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 (617) hide show
  1. package/CHANGELOG.md +70 -0
  2. package/lib/accordion/custom-elements.json +49 -0
  3. package/lib/accordion/custom-elements.md +18 -0
  4. package/lib/accordion/index.d.ts +76 -0
  5. package/lib/accordion/index.js +136 -0
  6. package/lib/accordion/themes/halo/dark/index.js +3 -0
  7. package/lib/accordion/themes/halo/light/index.js +3 -0
  8. package/lib/accordion/themes/solar/charcoal/index.js +3 -0
  9. package/lib/accordion/themes/solar/pearl/index.js +3 -0
  10. package/lib/appstate-bar/custom-elements.json +49 -0
  11. package/lib/appstate-bar/custom-elements.md +22 -0
  12. package/lib/appstate-bar/index.d.ts +65 -0
  13. package/lib/appstate-bar/index.js +100 -0
  14. package/lib/appstate-bar/themes/halo/dark/index.js +3 -0
  15. package/lib/appstate-bar/themes/halo/light/index.js +3 -0
  16. package/lib/appstate-bar/themes/solar/charcoal/index.js +3 -0
  17. package/lib/appstate-bar/themes/solar/pearl/index.js +3 -0
  18. package/lib/autosuggest/custom-elements.json +233 -0
  19. package/lib/autosuggest/custom-elements.md +47 -0
  20. package/lib/autosuggest/helpers/types.d.ts +54 -0
  21. package/lib/autosuggest/helpers/types.js +1 -0
  22. package/lib/autosuggest/helpers/utils.d.ts +39 -0
  23. package/lib/autosuggest/helpers/utils.js +75 -0
  24. package/lib/autosuggest/index.d.ts +534 -0
  25. package/lib/autosuggest/index.js +1251 -0
  26. package/lib/autosuggest/themes/halo/dark/index.js +5 -0
  27. package/lib/autosuggest/themes/halo/light/index.js +5 -0
  28. package/lib/autosuggest/themes/solar/charcoal/index.js +5 -0
  29. package/lib/autosuggest/themes/solar/pearl/index.js +5 -0
  30. package/lib/button/custom-elements.json +119 -0
  31. package/lib/button/custom-elements.md +23 -0
  32. package/lib/button/index.d.ts +132 -0
  33. package/lib/button/index.js +223 -0
  34. package/lib/button/themes/halo/dark/index.js +3 -0
  35. package/lib/button/themes/halo/light/index.js +3 -0
  36. package/lib/button/themes/solar/charcoal/index.js +3 -0
  37. package/lib/button/themes/solar/pearl/index.js +3 -0
  38. package/lib/button-bar/custom-elements.json +26 -0
  39. package/lib/button-bar/custom-elements.md +9 -0
  40. package/lib/button-bar/index.d.ts +76 -0
  41. package/lib/button-bar/index.js +155 -0
  42. package/lib/button-bar/themes/halo/dark/index.js +3 -0
  43. package/lib/button-bar/themes/halo/light/index.js +3 -0
  44. package/lib/button-bar/themes/solar/charcoal/index.js +3 -0
  45. package/lib/button-bar/themes/solar/pearl/index.js +3 -0
  46. package/lib/calendar/constants.d.ts +22 -0
  47. package/lib/calendar/constants.js +23 -0
  48. package/lib/calendar/custom-elements.json +199 -0
  49. package/lib/calendar/custom-elements.md +35 -0
  50. package/lib/calendar/index.d.ts +321 -0
  51. package/lib/calendar/index.js +906 -0
  52. package/lib/calendar/locales.d.ts +1 -0
  53. package/lib/calendar/locales.js +40 -0
  54. package/lib/calendar/themes/halo/dark/index.js +3 -0
  55. package/lib/calendar/themes/halo/light/index.js +3 -0
  56. package/lib/calendar/themes/solar/charcoal/index.js +3 -0
  57. package/lib/calendar/themes/solar/pearl/index.js +3 -0
  58. package/lib/calendar/types.d.ts +29 -0
  59. package/lib/calendar/types.js +1 -0
  60. package/lib/calendar/utils.d.ts +42 -0
  61. package/lib/calendar/utils.js +119 -0
  62. package/lib/canvas/custom-elements.json +69 -0
  63. package/lib/canvas/custom-elements.md +27 -0
  64. package/lib/canvas/index.d.ts +100 -0
  65. package/lib/canvas/index.js +172 -0
  66. package/lib/canvas/themes/halo/dark/index.js +2 -0
  67. package/lib/canvas/themes/halo/light/index.js +2 -0
  68. package/lib/canvas/themes/solar/charcoal/index.js +2 -0
  69. package/lib/canvas/themes/solar/pearl/index.js +2 -0
  70. package/lib/card/custom-elements.json +59 -0
  71. package/lib/card/custom-elements.md +24 -0
  72. package/lib/card/helpers/types.d.ts +12 -0
  73. package/lib/card/helpers/types.js +1 -0
  74. package/lib/card/index.d.ts +140 -0
  75. package/lib/card/index.js +246 -0
  76. package/lib/card/themes/halo/dark/index.js +5 -0
  77. package/lib/card/themes/halo/light/index.js +5 -0
  78. package/lib/card/themes/solar/charcoal/index.js +5 -0
  79. package/lib/card/themes/solar/pearl/index.js +5 -0
  80. package/lib/chart/custom-elements.json +42 -0
  81. package/lib/chart/custom-elements.md +16 -0
  82. package/lib/chart/helpers/index.d.ts +2 -0
  83. package/lib/chart/helpers/index.js +2 -0
  84. package/lib/chart/helpers/legend.d.ts +5 -0
  85. package/lib/chart/helpers/legend.js +78 -0
  86. package/lib/chart/helpers/merge.d.ts +15 -0
  87. package/lib/chart/helpers/merge.js +28 -0
  88. package/lib/chart/helpers/types.d.ts +69 -0
  89. package/lib/chart/helpers/types.js +1 -0
  90. package/lib/chart/index.d.ts +187 -0
  91. package/lib/chart/index.js +491 -0
  92. package/lib/chart/plugins/doughnut-center-label.d.ts +3 -0
  93. package/lib/chart/plugins/doughnut-center-label.js +196 -0
  94. package/lib/chart/themes/halo/dark/index.js +4 -0
  95. package/lib/chart/themes/halo/light/index.js +4 -0
  96. package/lib/chart/themes/solar/charcoal/index.js +4 -0
  97. package/lib/chart/themes/solar/pearl/index.js +4 -0
  98. package/lib/checkbox/custom-elements.json +67 -0
  99. package/lib/checkbox/custom-elements.md +18 -0
  100. package/lib/checkbox/index.d.ts +95 -0
  101. package/lib/checkbox/index.js +193 -0
  102. package/lib/checkbox/themes/halo/dark/index.js +4 -0
  103. package/lib/checkbox/themes/halo/light/index.js +4 -0
  104. package/lib/checkbox/themes/solar/charcoal/index.js +4 -0
  105. package/lib/checkbox/themes/solar/pearl/index.js +4 -0
  106. package/lib/clock/custom-elements.json +121 -0
  107. package/lib/clock/custom-elements.md +28 -0
  108. package/lib/clock/index.d.ts +319 -0
  109. package/lib/clock/index.js +581 -0
  110. package/lib/clock/themes/halo/dark/index.js +2 -0
  111. package/lib/clock/themes/halo/light/index.js +2 -0
  112. package/lib/clock/themes/solar/charcoal/index.js +2 -0
  113. package/lib/clock/themes/solar/pearl/index.js +2 -0
  114. package/lib/clock/utils/TickManager.d.ts +14 -0
  115. package/lib/clock/utils/TickManager.js +66 -0
  116. package/lib/clock/utils/timestamps.d.ts +6 -0
  117. package/lib/clock/utils/timestamps.js +6 -0
  118. package/lib/collapse/custom-elements.json +79 -0
  119. package/lib/collapse/custom-elements.md +27 -0
  120. package/lib/collapse/index.d.ts +119 -0
  121. package/lib/collapse/index.js +197 -0
  122. package/lib/collapse/themes/halo/dark/index.js +5 -0
  123. package/lib/collapse/themes/halo/light/index.js +5 -0
  124. package/lib/collapse/themes/solar/charcoal/index.js +5 -0
  125. package/lib/collapse/themes/solar/pearl/index.js +5 -0
  126. package/lib/color-dialog/custom-elements.json +193 -0
  127. package/lib/color-dialog/custom-elements.md +39 -0
  128. package/lib/color-dialog/elements/color-palettes.d.ts +52 -0
  129. package/lib/color-dialog/elements/color-palettes.js +101 -0
  130. package/lib/color-dialog/elements/grayscale-palettes.d.ts +67 -0
  131. package/lib/color-dialog/elements/grayscale-palettes.js +161 -0
  132. package/lib/color-dialog/elements/palettes.d.ts +65 -0
  133. package/lib/color-dialog/elements/palettes.js +132 -0
  134. package/lib/color-dialog/helpers/color-helpers.d.ts +16 -0
  135. package/lib/color-dialog/helpers/color-helpers.js +161 -0
  136. package/lib/color-dialog/helpers/value-model.d.ts +75 -0
  137. package/lib/color-dialog/helpers/value-model.js +141 -0
  138. package/lib/color-dialog/index.d.ts +232 -0
  139. package/lib/color-dialog/index.js +459 -0
  140. package/lib/color-dialog/themes/halo/dark/index.js +7 -0
  141. package/lib/color-dialog/themes/halo/light/index.js +7 -0
  142. package/lib/color-dialog/themes/solar/charcoal/index.js +7 -0
  143. package/lib/color-dialog/themes/solar/pearl/index.js +7 -0
  144. package/lib/combo-box/custom-elements.json +210 -0
  145. package/lib/combo-box/custom-elements.md +35 -0
  146. package/lib/combo-box/helpers/filter.d.ts +10 -0
  147. package/lib/combo-box/helpers/filter.js +29 -0
  148. package/lib/combo-box/helpers/keyboard-event.d.ts +17 -0
  149. package/lib/combo-box/helpers/keyboard-event.js +19 -0
  150. package/lib/combo-box/helpers/types.d.ts +11 -0
  151. package/lib/combo-box/helpers/types.js +1 -0
  152. package/lib/combo-box/index.d.ts +523 -0
  153. package/lib/combo-box/index.js +1146 -0
  154. package/lib/combo-box/themes/halo/dark/index.js +8 -0
  155. package/lib/combo-box/themes/halo/light/index.js +8 -0
  156. package/lib/combo-box/themes/solar/charcoal/index.js +8 -0
  157. package/lib/combo-box/themes/solar/pearl/index.js +8 -0
  158. package/lib/counter/custom-elements.json +35 -0
  159. package/lib/counter/custom-elements.md +11 -0
  160. package/lib/counter/index.d.ts +89 -0
  161. package/lib/counter/index.js +152 -0
  162. package/lib/counter/themes/halo/dark/index.js +3 -0
  163. package/lib/counter/themes/halo/light/index.js +3 -0
  164. package/lib/counter/themes/solar/charcoal/index.js +3 -0
  165. package/lib/counter/themes/solar/pearl/index.js +3 -0
  166. package/lib/counter/utils.d.ts +13 -0
  167. package/lib/counter/utils.js +52 -0
  168. package/lib/datetime-picker/custom-elements.json +333 -0
  169. package/lib/datetime-picker/custom-elements.md +49 -0
  170. package/lib/datetime-picker/index.d.ts +498 -0
  171. package/lib/datetime-picker/index.js +1164 -0
  172. package/lib/datetime-picker/locales.d.ts +8 -0
  173. package/lib/datetime-picker/locales.js +57 -0
  174. package/lib/datetime-picker/themes/halo/dark/index.js +7 -0
  175. package/lib/datetime-picker/themes/halo/light/index.js +7 -0
  176. package/lib/datetime-picker/themes/solar/charcoal/index.js +7 -0
  177. package/lib/datetime-picker/themes/solar/pearl/index.js +7 -0
  178. package/lib/datetime-picker/types.d.ts +3 -0
  179. package/lib/datetime-picker/types.js +1 -0
  180. package/lib/datetime-picker/utils.d.ts +55 -0
  181. package/lib/datetime-picker/utils.js +92 -0
  182. package/lib/dialog/custom-elements.json +136 -0
  183. package/lib/dialog/custom-elements.md +47 -0
  184. package/lib/dialog/draggable-element.d.ts +14 -0
  185. package/lib/dialog/draggable-element.js +221 -0
  186. package/lib/dialog/index.d.ts +199 -0
  187. package/lib/dialog/index.js +331 -0
  188. package/lib/dialog/themes/halo/dark/index.js +7 -0
  189. package/lib/dialog/themes/halo/light/index.js +7 -0
  190. package/lib/dialog/themes/solar/charcoal/index.js +7 -0
  191. package/lib/dialog/themes/solar/pearl/index.js +7 -0
  192. package/lib/email-field/custom-elements.json +199 -0
  193. package/lib/email-field/custom-elements.md +35 -0
  194. package/lib/email-field/index.d.ts +152 -0
  195. package/lib/email-field/index.js +286 -0
  196. package/lib/email-field/themes/halo/dark/index.js +3 -0
  197. package/lib/email-field/themes/halo/light/index.js +3 -0
  198. package/lib/email-field/themes/solar/charcoal/index.js +3 -0
  199. package/lib/email-field/themes/solar/pearl/index.js +3 -0
  200. package/lib/events.d.ts +121 -0
  201. package/lib/events.js +1 -0
  202. package/lib/flag/custom-elements.json +35 -0
  203. package/lib/flag/custom-elements.md +10 -0
  204. package/lib/flag/index.d.ts +94 -0
  205. package/lib/flag/index.js +166 -0
  206. package/lib/flag/themes/halo/dark/index.js +2 -0
  207. package/lib/flag/themes/halo/light/index.js +2 -0
  208. package/lib/flag/themes/solar/charcoal/index.js +2 -0
  209. package/lib/flag/themes/solar/pearl/index.js +2 -0
  210. package/lib/flag/utils/FlagLoader.d.ts +47 -0
  211. package/lib/flag/utils/FlagLoader.js +86 -0
  212. package/lib/header/custom-elements.json +36 -0
  213. package/lib/header/custom-elements.md +18 -0
  214. package/lib/header/index.d.ts +46 -0
  215. package/lib/header/index.js +73 -0
  216. package/lib/header/themes/halo/dark/index.js +2 -0
  217. package/lib/header/themes/halo/light/index.js +2 -0
  218. package/lib/header/themes/solar/charcoal/index.js +2 -0
  219. package/lib/header/themes/solar/pearl/index.js +2 -0
  220. package/lib/heatmap/custom-elements.json +151 -0
  221. package/lib/heatmap/custom-elements.md +26 -0
  222. package/lib/heatmap/helpers/color.d.ts +30 -0
  223. package/lib/heatmap/helpers/color.js +68 -0
  224. package/lib/heatmap/helpers/text.d.ts +26 -0
  225. package/lib/heatmap/helpers/text.js +91 -0
  226. package/lib/heatmap/helpers/track.d.ts +102 -0
  227. package/lib/heatmap/helpers/track.js +160 -0
  228. package/lib/heatmap/helpers/types.d.ts +40 -0
  229. package/lib/heatmap/helpers/types.js +1 -0
  230. package/lib/heatmap/index.d.ts +453 -0
  231. package/lib/heatmap/index.js +1103 -0
  232. package/lib/heatmap/themes/halo/dark/index.js +4 -0
  233. package/lib/heatmap/themes/halo/light/index.js +4 -0
  234. package/lib/heatmap/themes/solar/charcoal/index.js +4 -0
  235. package/lib/heatmap/themes/solar/pearl/index.js +4 -0
  236. package/lib/icon/custom-elements.json +36 -0
  237. package/lib/icon/custom-elements.md +8 -0
  238. package/lib/icon/index.d.ts +88 -0
  239. package/lib/icon/index.js +169 -0
  240. package/lib/icon/themes/halo/dark/index.js +2 -0
  241. package/lib/icon/themes/halo/light/index.js +2 -0
  242. package/lib/icon/themes/solar/charcoal/index.js +2 -0
  243. package/lib/icon/themes/solar/pearl/index.js +2 -0
  244. package/lib/icon/utils/IconLoader.d.ts +52 -0
  245. package/lib/icon/utils/IconLoader.js +93 -0
  246. package/lib/index.d.ts +3 -0
  247. package/lib/index.js +3 -0
  248. package/lib/interactive-chart/custom-elements.json +86 -0
  249. package/lib/interactive-chart/custom-elements.md +32 -0
  250. package/lib/interactive-chart/helpers/merge.d.ts +15 -0
  251. package/lib/interactive-chart/helpers/merge.js +28 -0
  252. package/lib/interactive-chart/helpers/types.d.ts +45 -0
  253. package/lib/interactive-chart/helpers/types.js +6 -0
  254. package/lib/interactive-chart/index.d.ts +380 -0
  255. package/lib/interactive-chart/index.js +1090 -0
  256. package/lib/interactive-chart/themes/halo/dark/index.js +3 -0
  257. package/lib/interactive-chart/themes/halo/light/index.js +3 -0
  258. package/lib/interactive-chart/themes/solar/charcoal/index.js +3 -0
  259. package/lib/interactive-chart/themes/solar/pearl/index.js +3 -0
  260. package/lib/item/custom-elements.json +151 -0
  261. package/lib/item/custom-elements.md +29 -0
  262. package/lib/item/helpers/types.d.ts +57 -0
  263. package/lib/item/helpers/types.js +1 -0
  264. package/lib/item/index.d.ts +158 -0
  265. package/lib/item/index.js +271 -0
  266. package/lib/item/themes/halo/dark/index.js +4 -0
  267. package/lib/item/themes/halo/light/index.js +4 -0
  268. package/lib/item/themes/solar/charcoal/index.js +4 -0
  269. package/lib/item/themes/solar/pearl/index.js +4 -0
  270. package/lib/jsx.d.ts +223 -0
  271. package/lib/label/custom-elements.json +52 -0
  272. package/lib/label/custom-elements.md +11 -0
  273. package/lib/label/index.d.ts +102 -0
  274. package/lib/label/index.js +244 -0
  275. package/lib/label/themes/halo/dark/index.js +3 -0
  276. package/lib/label/themes/halo/light/index.js +3 -0
  277. package/lib/label/themes/solar/charcoal/index.js +3 -0
  278. package/lib/label/themes/solar/pearl/index.js +3 -0
  279. package/lib/layout/custom-elements.json +163 -0
  280. package/lib/layout/custom-elements.md +26 -0
  281. package/lib/layout/index.d.ts +107 -0
  282. package/lib/layout/index.js +212 -0
  283. package/lib/layout/themes/halo/dark/index.js +2 -0
  284. package/lib/layout/themes/halo/light/index.js +2 -0
  285. package/lib/layout/themes/solar/charcoal/index.js +2 -0
  286. package/lib/layout/themes/solar/pearl/index.js +2 -0
  287. package/lib/led-gauge/custom-elements.json +113 -0
  288. package/lib/led-gauge/custom-elements.md +17 -0
  289. package/lib/led-gauge/index.d.ts +143 -0
  290. package/lib/led-gauge/index.js +437 -0
  291. package/lib/led-gauge/themes/halo/dark/index.js +3 -0
  292. package/lib/led-gauge/themes/halo/light/index.js +3 -0
  293. package/lib/led-gauge/themes/solar/charcoal/index.js +3 -0
  294. package/lib/led-gauge/themes/solar/pearl/index.js +3 -0
  295. package/lib/list/custom-elements.json +111 -0
  296. package/lib/list/custom-elements.md +30 -0
  297. package/lib/list/extensible-function.d.ts +8 -0
  298. package/lib/list/extensible-function.js +13 -0
  299. package/lib/list/helpers/list-renderer.d.ts +9 -0
  300. package/lib/list/helpers/list-renderer.js +35 -0
  301. package/lib/list/helpers/types.d.ts +3 -0
  302. package/lib/list/helpers/types.js +1 -0
  303. package/lib/list/index.d.ts +292 -0
  304. package/lib/list/index.js +600 -0
  305. package/lib/list/renderer.d.ts +36 -0
  306. package/lib/list/renderer.js +9 -0
  307. package/lib/list/themes/halo/dark/index.js +3 -0
  308. package/lib/list/themes/halo/light/index.js +3 -0
  309. package/lib/list/themes/solar/charcoal/index.js +3 -0
  310. package/lib/list/themes/solar/pearl/index.js +3 -0
  311. package/lib/loader/custom-elements.json +9 -0
  312. package/lib/loader/custom-elements.md +5 -0
  313. package/lib/loader/index.d.ts +41 -0
  314. package/lib/loader/index.js +61 -0
  315. package/lib/loader/themes/halo/dark/index.js +2 -0
  316. package/lib/loader/themes/halo/light/index.js +2 -0
  317. package/lib/loader/themes/solar/charcoal/index.js +2 -0
  318. package/lib/loader/themes/solar/pearl/index.js +2 -0
  319. package/lib/multi-input/custom-elements.json +238 -0
  320. package/lib/multi-input/custom-elements.md +43 -0
  321. package/lib/multi-input/helpers/types.d.ts +11 -0
  322. package/lib/multi-input/helpers/types.js +1 -0
  323. package/lib/multi-input/index.d.ts +297 -0
  324. package/lib/multi-input/index.js +590 -0
  325. package/lib/multi-input/themes/halo/dark/index.js +4 -0
  326. package/lib/multi-input/themes/halo/light/index.js +4 -0
  327. package/lib/multi-input/themes/solar/charcoal/index.js +4 -0
  328. package/lib/multi-input/themes/solar/pearl/index.js +4 -0
  329. package/lib/notification/custom-elements.json +95 -0
  330. package/lib/notification/custom-elements.md +26 -0
  331. package/lib/notification/elements/notification-tray.d.ts +97 -0
  332. package/lib/notification/elements/notification-tray.js +167 -0
  333. package/lib/notification/elements/notification.d.ts +90 -0
  334. package/lib/notification/elements/notification.js +154 -0
  335. package/lib/notification/helpers/status.d.ts +30 -0
  336. package/lib/notification/helpers/status.js +130 -0
  337. package/lib/notification/helpers/types.d.ts +10 -0
  338. package/lib/notification/helpers/types.js +1 -0
  339. package/lib/notification/index.d.ts +2 -0
  340. package/lib/notification/index.js +2 -0
  341. package/lib/notification/themes/halo/dark/index.js +5 -0
  342. package/lib/notification/themes/halo/light/index.js +5 -0
  343. package/lib/notification/themes/solar/charcoal/index.js +5 -0
  344. package/lib/notification/themes/solar/pearl/index.js +5 -0
  345. package/lib/number-field/custom-elements.json +200 -0
  346. package/lib/number-field/custom-elements.md +37 -0
  347. package/lib/number-field/index.d.ts +294 -0
  348. package/lib/number-field/index.js +707 -0
  349. package/lib/number-field/themes/halo/dark/index.js +3 -0
  350. package/lib/number-field/themes/halo/light/index.js +3 -0
  351. package/lib/number-field/themes/solar/charcoal/index.js +3 -0
  352. package/lib/number-field/themes/solar/pearl/index.js +3 -0
  353. package/lib/overlay/custom-elements.json +345 -0
  354. package/lib/overlay/custom-elements.md +54 -0
  355. package/lib/overlay/elements/overlay-backdrop.d.ts +46 -0
  356. package/lib/overlay/elements/overlay-backdrop.js +64 -0
  357. package/lib/overlay/elements/overlay-viewport.d.ts +40 -0
  358. package/lib/overlay/elements/overlay-viewport.js +52 -0
  359. package/lib/overlay/elements/overlay.d.ts +403 -0
  360. package/lib/overlay/elements/overlay.js +1426 -0
  361. package/lib/overlay/helpers/functions.d.ts +13 -0
  362. package/lib/overlay/helpers/functions.js +16 -0
  363. package/lib/overlay/helpers/types.d.ts +97 -0
  364. package/lib/overlay/helpers/types.js +16 -0
  365. package/lib/overlay/index.d.ts +2 -0
  366. package/lib/overlay/index.js +1 -0
  367. package/lib/overlay/managers/backdrop-manager.d.ts +45 -0
  368. package/lib/overlay/managers/backdrop-manager.js +96 -0
  369. package/lib/overlay/managers/close-manager.d.ts +54 -0
  370. package/lib/overlay/managers/close-manager.js +138 -0
  371. package/lib/overlay/managers/focus-manager.d.ts +71 -0
  372. package/lib/overlay/managers/focus-manager.js +228 -0
  373. package/lib/overlay/managers/interaction-lock-manager.d.ts +138 -0
  374. package/lib/overlay/managers/interaction-lock-manager.js +375 -0
  375. package/lib/overlay/managers/viewport-manager.d.ts +93 -0
  376. package/lib/overlay/managers/viewport-manager.js +211 -0
  377. package/lib/overlay/managers/zindex-manager.d.ts +80 -0
  378. package/lib/overlay/managers/zindex-manager.js +195 -0
  379. package/lib/overlay/themes/halo/dark/index.js +4 -0
  380. package/lib/overlay/themes/halo/light/index.js +4 -0
  381. package/lib/overlay/themes/solar/charcoal/index.js +4 -0
  382. package/lib/overlay/themes/solar/pearl/index.js +4 -0
  383. package/lib/overlay-menu/custom-elements.json +194 -0
  384. package/lib/overlay-menu/custom-elements.md +44 -0
  385. package/lib/overlay-menu/helpers/types.d.ts +8 -0
  386. package/lib/overlay-menu/helpers/types.js +1 -0
  387. package/lib/overlay-menu/index.d.ts +385 -0
  388. package/lib/overlay-menu/index.js +933 -0
  389. package/lib/overlay-menu/managers/menu-manager.d.ts +98 -0
  390. package/lib/overlay-menu/managers/menu-manager.js +240 -0
  391. package/lib/overlay-menu/themes/halo/dark/index.js +5 -0
  392. package/lib/overlay-menu/themes/halo/light/index.js +5 -0
  393. package/lib/overlay-menu/themes/solar/charcoal/index.js +5 -0
  394. package/lib/overlay-menu/themes/solar/pearl/index.js +5 -0
  395. package/lib/pagination/custom-elements.json +93 -0
  396. package/lib/pagination/custom-elements.md +27 -0
  397. package/lib/pagination/helpers/types.d.ts +9 -0
  398. package/lib/pagination/helpers/types.js +1 -0
  399. package/lib/pagination/index.d.ts +207 -0
  400. package/lib/pagination/index.js +398 -0
  401. package/lib/pagination/themes/halo/dark/index.js +6 -0
  402. package/lib/pagination/themes/halo/light/index.js +6 -0
  403. package/lib/pagination/themes/solar/charcoal/index.js +6 -0
  404. package/lib/pagination/themes/solar/pearl/index.js +6 -0
  405. package/lib/panel/custom-elements.json +39 -0
  406. package/lib/panel/custom-elements.md +11 -0
  407. package/lib/panel/index.d.ts +48 -0
  408. package/lib/panel/index.js +74 -0
  409. package/lib/panel/themes/halo/dark/index.js +2 -0
  410. package/lib/panel/themes/halo/light/index.js +2 -0
  411. package/lib/panel/themes/solar/charcoal/index.js +2 -0
  412. package/lib/panel/themes/solar/pearl/index.js +2 -0
  413. package/lib/password-field/custom-elements.json +156 -0
  414. package/lib/password-field/custom-elements.md +31 -0
  415. package/lib/password-field/index.d.ts +141 -0
  416. package/lib/password-field/index.js +258 -0
  417. package/lib/password-field/themes/halo/dark/index.js +3 -0
  418. package/lib/password-field/themes/halo/light/index.js +3 -0
  419. package/lib/password-field/themes/solar/charcoal/index.js +3 -0
  420. package/lib/password-field/themes/solar/pearl/index.js +3 -0
  421. package/lib/pill/custom-elements.json +95 -0
  422. package/lib/pill/custom-elements.md +22 -0
  423. package/lib/pill/index.d.ts +97 -0
  424. package/lib/pill/index.js +160 -0
  425. package/lib/pill/themes/halo/dark/index.js +3 -0
  426. package/lib/pill/themes/halo/light/index.js +3 -0
  427. package/lib/pill/themes/solar/charcoal/index.js +3 -0
  428. package/lib/pill/themes/solar/pearl/index.js +3 -0
  429. package/lib/progress-bar/custom-elements.json +58 -0
  430. package/lib/progress-bar/custom-elements.md +18 -0
  431. package/lib/progress-bar/index.d.ts +82 -0
  432. package/lib/progress-bar/index.js +157 -0
  433. package/lib/progress-bar/themes/halo/dark/index.js +2 -0
  434. package/lib/progress-bar/themes/halo/light/index.js +2 -0
  435. package/lib/progress-bar/themes/solar/charcoal/index.js +2 -0
  436. package/lib/progress-bar/themes/solar/pearl/index.js +2 -0
  437. package/lib/radio-button/custom-elements.json +82 -0
  438. package/lib/radio-button/custom-elements.md +19 -0
  439. package/lib/radio-button/index.d.ts +122 -0
  440. package/lib/radio-button/index.js +257 -0
  441. package/lib/radio-button/radio-button-registry.d.ts +22 -0
  442. package/lib/radio-button/radio-button-registry.js +93 -0
  443. package/lib/radio-button/themes/halo/dark/index.js +3 -0
  444. package/lib/radio-button/themes/halo/light/index.js +3 -0
  445. package/lib/radio-button/themes/solar/charcoal/index.js +3 -0
  446. package/lib/radio-button/themes/solar/pearl/index.js +3 -0
  447. package/lib/rating/custom-elements.json +58 -0
  448. package/lib/rating/custom-elements.md +17 -0
  449. package/lib/rating/index.d.ts +91 -0
  450. package/lib/rating/index.js +157 -0
  451. package/lib/rating/themes/halo/dark/index.js +2 -0
  452. package/lib/rating/themes/halo/light/index.js +2 -0
  453. package/lib/rating/themes/solar/charcoal/index.js +2 -0
  454. package/lib/rating/themes/solar/pearl/index.js +2 -0
  455. package/lib/search-field/custom-elements.json +173 -0
  456. package/lib/search-field/custom-elements.md +33 -0
  457. package/lib/search-field/index.d.ts +134 -0
  458. package/lib/search-field/index.js +253 -0
  459. package/lib/search-field/themes/halo/dark/index.js +3 -0
  460. package/lib/search-field/themes/halo/light/index.js +3 -0
  461. package/lib/search-field/themes/solar/charcoal/index.js +3 -0
  462. package/lib/search-field/themes/solar/pearl/index.js +3 -0
  463. package/lib/select/custom-elements.json +103 -0
  464. package/lib/select/custom-elements.md +24 -0
  465. package/lib/select/helpers/types.d.ts +3 -0
  466. package/lib/select/helpers/types.js +1 -0
  467. package/lib/select/index.d.ts +388 -0
  468. package/lib/select/index.js +942 -0
  469. package/lib/select/themes/halo/dark/index.js +5 -0
  470. package/lib/select/themes/halo/light/index.js +5 -0
  471. package/lib/select/themes/solar/charcoal/index.js +5 -0
  472. package/lib/select/themes/solar/pearl/index.js +5 -0
  473. package/lib/sidebar-layout/custom-elements.json +72 -0
  474. package/lib/sidebar-layout/custom-elements.md +22 -0
  475. package/lib/sidebar-layout/index.d.ts +69 -0
  476. package/lib/sidebar-layout/index.js +134 -0
  477. package/lib/sidebar-layout/themes/halo/dark/index.js +3 -0
  478. package/lib/sidebar-layout/themes/halo/light/index.js +3 -0
  479. package/lib/sidebar-layout/themes/solar/charcoal/index.js +3 -0
  480. package/lib/sidebar-layout/themes/solar/pearl/index.js +3 -0
  481. package/lib/slider/custom-elements.json +181 -0
  482. package/lib/slider/custom-elements.md +28 -0
  483. package/lib/slider/index.d.ts +409 -0
  484. package/lib/slider/index.js +1187 -0
  485. package/lib/slider/themes/halo/dark/index.js +3 -0
  486. package/lib/slider/themes/halo/light/index.js +3 -0
  487. package/lib/slider/themes/solar/charcoal/index.js +3 -0
  488. package/lib/slider/themes/solar/pearl/index.js +3 -0
  489. package/lib/sparkline/custom-elements.json +59 -0
  490. package/lib/sparkline/custom-elements.md +16 -0
  491. package/lib/sparkline/index.d.ts +107 -0
  492. package/lib/sparkline/index.js +186 -0
  493. package/lib/sparkline/themes/halo/dark/index.js +2 -0
  494. package/lib/sparkline/themes/halo/light/index.js +2 -0
  495. package/lib/sparkline/themes/solar/charcoal/index.js +2 -0
  496. package/lib/sparkline/themes/solar/pearl/index.js +2 -0
  497. package/lib/swing-gauge/const.d.ts +22 -0
  498. package/lib/swing-gauge/const.js +26 -0
  499. package/lib/swing-gauge/custom-elements.json +109 -0
  500. package/lib/swing-gauge/custom-elements.md +17 -0
  501. package/lib/swing-gauge/helpers.d.ts +8 -0
  502. package/lib/swing-gauge/helpers.js +105 -0
  503. package/lib/swing-gauge/index.d.ts +294 -0
  504. package/lib/swing-gauge/index.js +762 -0
  505. package/lib/swing-gauge/themes/halo/dark/index.js +3 -0
  506. package/lib/swing-gauge/themes/halo/light/index.js +3 -0
  507. package/lib/swing-gauge/themes/solar/charcoal/index.js +3 -0
  508. package/lib/swing-gauge/themes/solar/pearl/index.js +3 -0
  509. package/lib/swing-gauge/types.d.ts +34 -0
  510. package/lib/swing-gauge/types.js +1 -0
  511. package/lib/tab/custom-elements.json +123 -0
  512. package/lib/tab/custom-elements.md +22 -0
  513. package/lib/tab/index.d.ts +118 -0
  514. package/lib/tab/index.js +208 -0
  515. package/lib/tab/themes/halo/dark/index.js +4 -0
  516. package/lib/tab/themes/halo/light/index.js +4 -0
  517. package/lib/tab/themes/solar/charcoal/index.js +4 -0
  518. package/lib/tab/themes/solar/pearl/index.js +4 -0
  519. package/lib/tab-bar/custom-elements.json +52 -0
  520. package/lib/tab-bar/custom-elements.md +11 -0
  521. package/lib/tab-bar/helpers/animate.d.ts +16 -0
  522. package/lib/tab-bar/helpers/animate.js +53 -0
  523. package/lib/tab-bar/index.d.ts +108 -0
  524. package/lib/tab-bar/index.js +218 -0
  525. package/lib/tab-bar/themes/halo/dark/index.js +4 -0
  526. package/lib/tab-bar/themes/halo/light/index.js +4 -0
  527. package/lib/tab-bar/themes/solar/charcoal/index.js +4 -0
  528. package/lib/tab-bar/themes/solar/pearl/index.js +4 -0
  529. package/lib/text-field/custom-elements.json +210 -0
  530. package/lib/text-field/custom-elements.md +37 -0
  531. package/lib/text-field/index.d.ts +193 -0
  532. package/lib/text-field/index.js +409 -0
  533. package/lib/text-field/themes/halo/dark/index.js +3 -0
  534. package/lib/text-field/themes/halo/light/index.js +3 -0
  535. package/lib/text-field/themes/solar/charcoal/index.js +3 -0
  536. package/lib/text-field/themes/solar/pearl/index.js +3 -0
  537. package/lib/time-picker/custom-elements.json +124 -0
  538. package/lib/time-picker/custom-elements.md +28 -0
  539. package/lib/time-picker/index.d.ts +379 -0
  540. package/lib/time-picker/index.js +775 -0
  541. package/lib/time-picker/themes/halo/dark/index.js +4 -0
  542. package/lib/time-picker/themes/halo/light/index.js +4 -0
  543. package/lib/time-picker/themes/solar/charcoal/index.js +4 -0
  544. package/lib/time-picker/themes/solar/pearl/index.js +4 -0
  545. package/lib/toggle/custom-elements.json +82 -0
  546. package/lib/toggle/custom-elements.md +19 -0
  547. package/lib/toggle/index.d.ts +86 -0
  548. package/lib/toggle/index.js +152 -0
  549. package/lib/toggle/themes/halo/dark/index.js +2 -0
  550. package/lib/toggle/themes/halo/light/index.js +2 -0
  551. package/lib/toggle/themes/solar/charcoal/index.js +2 -0
  552. package/lib/toggle/themes/solar/pearl/index.js +2 -0
  553. package/lib/tooltip/custom-elements.json +62 -0
  554. package/lib/tooltip/custom-elements.md +14 -0
  555. package/lib/tooltip/elements/title-tooltip.d.ts +1 -0
  556. package/lib/tooltip/elements/title-tooltip.js +18 -0
  557. package/lib/tooltip/elements/tooltip-element.d.ts +21 -0
  558. package/lib/tooltip/elements/tooltip-element.js +54 -0
  559. package/lib/tooltip/helpers/overflow-tooltip.d.ts +9 -0
  560. package/lib/tooltip/helpers/overflow-tooltip.js +19 -0
  561. package/lib/tooltip/helpers/renderer.d.ts +8 -0
  562. package/lib/tooltip/helpers/renderer.js +11 -0
  563. package/lib/tooltip/helpers/types.d.ts +23 -0
  564. package/lib/tooltip/helpers/types.js +1 -0
  565. package/lib/tooltip/index.d.ts +232 -0
  566. package/lib/tooltip/index.js +477 -0
  567. package/lib/tooltip/managers/tooltip-manager.d.ts +15 -0
  568. package/lib/tooltip/managers/tooltip-manager.js +140 -0
  569. package/lib/tooltip/themes/halo/dark/index.js +3 -0
  570. package/lib/tooltip/themes/halo/light/index.js +3 -0
  571. package/lib/tooltip/themes/solar/charcoal/index.js +3 -0
  572. package/lib/tooltip/themes/solar/pearl/index.js +3 -0
  573. package/lib/tornado-chart/custom-elements.json +45 -0
  574. package/lib/tornado-chart/custom-elements.md +18 -0
  575. package/lib/tornado-chart/elements/tornado-chart.d.ts +78 -0
  576. package/lib/tornado-chart/elements/tornado-chart.js +122 -0
  577. package/lib/tornado-chart/elements/tornado-item.d.ts +110 -0
  578. package/lib/tornado-chart/elements/tornado-item.js +207 -0
  579. package/lib/tornado-chart/index.d.ts +2 -0
  580. package/lib/tornado-chart/index.js +2 -0
  581. package/lib/tornado-chart/themes/halo/dark/index.js +6 -0
  582. package/lib/tornado-chart/themes/halo/light/index.js +6 -0
  583. package/lib/tornado-chart/themes/solar/charcoal/index.js +6 -0
  584. package/lib/tornado-chart/themes/solar/pearl/index.js +6 -0
  585. package/lib/tree/custom-elements.json +113 -0
  586. package/lib/tree/custom-elements.md +32 -0
  587. package/lib/tree/elements/tree-item.d.ts +96 -0
  588. package/lib/tree/elements/tree-item.js +179 -0
  589. package/lib/tree/elements/tree.d.ts +201 -0
  590. package/lib/tree/elements/tree.js +412 -0
  591. package/lib/tree/helpers/filter.d.ts +8 -0
  592. package/lib/tree/helpers/filter.js +33 -0
  593. package/lib/tree/helpers/renderer.d.ts +5 -0
  594. package/lib/tree/helpers/renderer.js +33 -0
  595. package/lib/tree/helpers/types.d.ts +25 -0
  596. package/lib/tree/helpers/types.js +1 -0
  597. package/lib/tree/index.d.ts +4 -0
  598. package/lib/tree/index.js +3 -0
  599. package/lib/tree/managers/tree-manager.d.ts +248 -0
  600. package/lib/tree/managers/tree-manager.js +395 -0
  601. package/lib/tree/themes/halo/dark/index.js +7 -0
  602. package/lib/tree/themes/halo/light/index.js +7 -0
  603. package/lib/tree/themes/solar/charcoal/index.js +7 -0
  604. package/lib/tree/themes/solar/pearl/index.js +7 -0
  605. package/lib/tree-select/custom-elements.json +107 -0
  606. package/lib/tree-select/custom-elements.md +26 -0
  607. package/lib/tree-select/helpers/types.d.ts +4 -0
  608. package/lib/tree-select/helpers/types.js +1 -0
  609. package/lib/tree-select/index.d.ts +402 -0
  610. package/lib/tree-select/index.js +890 -0
  611. package/lib/tree-select/themes/halo/dark/index.js +12 -0
  612. package/lib/tree-select/themes/halo/light/index.js +12 -0
  613. package/lib/tree-select/themes/solar/charcoal/index.js +12 -0
  614. package/lib/tree-select/themes/solar/pearl/index.js +12 -0
  615. package/lib/version.d.ts +1 -0
  616. package/lib/version.js +1 -0
  617. package/package.json +298 -15
@@ -0,0 +1,113 @@
1
+ {
2
+ "version": "experimental",
3
+ "tags": [
4
+ {
5
+ "name": "ef-tree",
6
+ "description": "Displays a tree structure\nto be used for menus and group selections",
7
+ "attributes": [
8
+ {
9
+ "name": "multiple",
10
+ "description": "Allows multiple items to be selected",
11
+ "type": "boolean",
12
+ "default": "false"
13
+ },
14
+ {
15
+ "name": "no-relation",
16
+ "description": "Breaks the relationship when multiple\nselection mode is enabled",
17
+ "type": "boolean",
18
+ "default": "false"
19
+ },
20
+ {
21
+ "name": "query",
22
+ "description": "Query string applied to tree",
23
+ "type": "string",
24
+ "default": "\"\""
25
+ },
26
+ {
27
+ "name": "stateless",
28
+ "description": "Disable selections",
29
+ "type": "boolean",
30
+ "default": "false"
31
+ }
32
+ ],
33
+ "properties": [
34
+ {
35
+ "name": "multiple",
36
+ "attribute": "multiple",
37
+ "description": "Allows multiple items to be selected",
38
+ "type": "boolean",
39
+ "default": "false"
40
+ },
41
+ {
42
+ "name": "noRelation",
43
+ "attribute": "no-relation",
44
+ "description": "Breaks the relationship when multiple\nselection mode is enabled",
45
+ "type": "boolean",
46
+ "default": "false"
47
+ },
48
+ {
49
+ "name": "query",
50
+ "attribute": "query",
51
+ "description": "Query string applied to tree",
52
+ "type": "string",
53
+ "default": "\"\""
54
+ },
55
+ {
56
+ "name": "renderer",
57
+ "description": "Renderer used for generating tree items",
58
+ "type": "TreeRenderer",
59
+ "default": "\"new TreeRenderer(this)\""
60
+ },
61
+ {
62
+ "name": "values",
63
+ "description": "Selected items in tree",
64
+ "type": "string[]"
65
+ },
66
+ {
67
+ "name": "data",
68
+ "description": "Data object to be used for creating tree",
69
+ "type": "TreeData<T>"
70
+ },
71
+ {
72
+ "name": "stateless",
73
+ "attribute": "stateless",
74
+ "description": "Disable selections",
75
+ "type": "boolean",
76
+ "default": "false"
77
+ }
78
+ ],
79
+ "events": [
80
+ {
81
+ "name": "value-changed",
82
+ "description": "Fired when the users changed selection item."
83
+ },
84
+ {
85
+ "name": "expanded-changed",
86
+ "description": "Fired when an item's expanded state has changed."
87
+ }
88
+ ],
89
+ "methods": [
90
+ {
91
+ "name": "expandAll",
92
+ "description": "Expands all groups",
93
+ "params": []
94
+ },
95
+ {
96
+ "name": "collapseAll",
97
+ "description": "Collapses all groups",
98
+ "params": []
99
+ },
100
+ {
101
+ "name": "checkAll",
102
+ "description": "Checks all editable items",
103
+ "params": []
104
+ },
105
+ {
106
+ "name": "uncheckAll",
107
+ "description": "Unchecks all editable items",
108
+ "params": []
109
+ }
110
+ ]
111
+ }
112
+ ]
113
+ }
@@ -0,0 +1,32 @@
1
+ # ef-tree
2
+
3
+ Displays a tree structure
4
+ to be used for menus and group selections
5
+
6
+ ## Properties
7
+
8
+ | Property | Attribute | Type | Default | Description |
9
+ |--------------|---------------|----------------|--------------------------|--------------------------------------------------|
10
+ | `data` | | `TreeData<T>` | | Data object to be used for creating tree |
11
+ | `multiple` | `multiple` | `boolean` | false | Allows multiple items to be selected |
12
+ | `noRelation` | `no-relation` | `boolean` | false | Breaks the relationship when multiple<br />selection mode is enabled |
13
+ | `query` | `query` | `string` | "" | Query string applied to tree |
14
+ | `renderer` | | `TreeRenderer` | "new TreeRenderer(this)" | Renderer used for generating tree items |
15
+ | `stateless` | `stateless` | `boolean` | false | Disable selections |
16
+ | `values` | | `string[]` | | Selected items in tree |
17
+
18
+ ## Methods
19
+
20
+ | Method | Type | Description |
21
+ |---------------|------------|-----------------------------|
22
+ | `checkAll` | `(): void` | Checks all editable items |
23
+ | `collapseAll` | `(): void` | Collapses all groups |
24
+ | `expandAll` | `(): void` | Expands all groups |
25
+ | `uncheckAll` | `(): void` | Unchecks all editable items |
26
+
27
+ ## Events
28
+
29
+ | Event | Description |
30
+ |--------------------|--------------------------------------------------|
31
+ | `expanded-changed` | Fired when an item's expanded state has changed. |
32
+ | `value-changed` | Fired when the users changed selection item. |
@@ -0,0 +1,96 @@
1
+ import { JSXInterface } from '../../jsx';
2
+ import { TemplateResult, ControlElement, PropertyValues } from '@refinitiv-ui/core';
3
+ import '../../icon/index.js';
4
+ import '../../checkbox/index.js';
5
+ import type { TreeDataItem } from '../helpers/types';
6
+ import { CheckedState } from '../managers/tree-manager.js';
7
+ /**
8
+ * Displays a tree list item.
9
+ * Groups display expansion arrows.
10
+ */
11
+ export declare class TreeItem<T extends TreeDataItem = TreeDataItem> extends ControlElement {
12
+ /**
13
+ * Element version number
14
+ * @returns version number
15
+ */
16
+ static get version(): string;
17
+ /**
18
+ * Checked state of the item
19
+ */
20
+ checkedState: CheckedState;
21
+ /**
22
+ * Is the item a parent and should it show an expansion toggle?
23
+ */
24
+ parent: boolean;
25
+ /**
26
+ * Display in multiple selection mode
27
+ */
28
+ multiple: boolean;
29
+ /**
30
+ * Expanded state of the item
31
+ */
32
+ expanded: boolean;
33
+ /**
34
+ * Depth of the item
35
+ */
36
+ depth: number;
37
+ /**
38
+ * Label of the item
39
+ */
40
+ label: string;
41
+ /**
42
+ * Icon of the item
43
+ */
44
+ icon: string;
45
+ /**
46
+ * Original data item, used for interacting with the tree manager
47
+ */
48
+ item: T;
49
+ /**
50
+ * Highlighted state of the item.
51
+ * This is for showing which item is currently being interacted with.
52
+ */
53
+ highlighted: boolean;
54
+ /**
55
+ * Template for rendering the indentation element
56
+ */
57
+ protected get indentTemplate(): TemplateResult;
58
+ /**
59
+ * Template for rendering the toggle
60
+ *
61
+ * ! expand-toggle is required for automatically toggling expanded state
62
+ */
63
+ protected get toggleTemplate(): TemplateResult;
64
+ /**
65
+ * Template for rendering the checkbox
66
+ */
67
+ protected get checkboxTemplate(): TemplateResult;
68
+ /**
69
+ * Template for rendering the icon
70
+ */
71
+ protected get iconTemplate(): TemplateResult;
72
+ /**
73
+ * Is the item fully checked?
74
+ */
75
+ protected get checked(): boolean;
76
+ /**
77
+ * Is the checked state indeterminate?
78
+ */
79
+ protected get indeterminate(): boolean;
80
+ protected update(changedProperties: PropertyValues): void;
81
+ protected render(): TemplateResult;
82
+ }
83
+
84
+ declare global {
85
+ interface HTMLElementTagNameMap {
86
+ 'ef-tree-item': TreeItem;
87
+ }
88
+
89
+ namespace JSX {
90
+ interface IntrinsicElements {
91
+ 'ef-tree-item': Partial<TreeItem> | JSXInterface.HTMLAttributes<TreeItem>;
92
+ }
93
+ }
94
+ }
95
+
96
+ export {};
@@ -0,0 +1,179 @@
1
+ import { __decorate } from "tslib";
2
+ import { html, ControlElement } 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 '../../icon/index.js';
7
+ import { preload } from '../../icon/index.js';
8
+ import '../../checkbox/index.js';
9
+ import { CheckedState } from '../managers/tree-manager.js';
10
+ preload('right');
11
+ const emptyTemplate = html ``;
12
+ /**
13
+ * Displays a tree list item.
14
+ * Groups display expansion arrows.
15
+ */
16
+ let TreeItem = class TreeItem extends ControlElement {
17
+ constructor() {
18
+ super(...arguments);
19
+ /**
20
+ * Checked state of the item
21
+ */
22
+ this.checkedState = CheckedState.UNCHECKED;
23
+ /**
24
+ * Is the item a parent and should it show an expansion toggle?
25
+ */
26
+ this.parent = false;
27
+ /**
28
+ * Display in multiple selection mode
29
+ */
30
+ this.multiple = false;
31
+ /**
32
+ * Expanded state of the item
33
+ */
34
+ this.expanded = false;
35
+ /**
36
+ * Depth of the item
37
+ */
38
+ this.depth = 0;
39
+ /**
40
+ * Label of the item
41
+ */
42
+ this.label = '';
43
+ /**
44
+ * Icon of the item
45
+ */
46
+ this.icon = '';
47
+ /**
48
+ * Highlighted state of the item.
49
+ * This is for showing which item is currently being interacted with.
50
+ */
51
+ this.highlighted = false;
52
+ }
53
+ /**
54
+ * Element version number
55
+ * @returns version number
56
+ */
57
+ static get version() {
58
+ return VERSION;
59
+ }
60
+ /**
61
+ * Template for rendering the indentation element
62
+ */
63
+ get indentTemplate() {
64
+ return this.depth ? html `<div part="indent" style="width:${this.depth}em"></div>` : emptyTemplate;
65
+ }
66
+ /**
67
+ * Template for rendering the toggle
68
+ *
69
+ * ! expand-toggle is required for automatically toggling expanded state
70
+ */
71
+ get toggleTemplate() {
72
+ return html `
73
+ <div
74
+ expand-toggle
75
+ part="toggle"
76
+ style="pointer-events:all;visibility:${this.parent ? 'visible' : 'hidden'}">
77
+ <ef-icon part="toggle-icon${this.expanded ? ' toggle-icon-expanded' : ''}" icon="right"></ef-icon>
78
+ </div>
79
+ `;
80
+ }
81
+ /**
82
+ * Template for rendering the checkbox
83
+ */
84
+ get checkboxTemplate() {
85
+ if (!this.multiple) {
86
+ return emptyTemplate;
87
+ }
88
+ return html `
89
+ <ef-checkbox
90
+ part="checkbox"
91
+ tabindex="-1"
92
+ .disabled="${this.disabled}"
93
+ .readonly="${this.readonly}"
94
+ .indeterminate="${this.indeterminate}"
95
+ .checked="${this.checked}"
96
+ style="pointer-events:none"></ef-checkbox>
97
+ `;
98
+ }
99
+ /**
100
+ * Template for rendering the icon
101
+ */
102
+ get iconTemplate() {
103
+ if (typeof this.icon === 'undefined') {
104
+ return emptyTemplate;
105
+ }
106
+ return html `<ef-icon part="label-icon" icon="${this.icon}"></ef-icon>`;
107
+ }
108
+ /**
109
+ * Is the item fully checked?
110
+ */
111
+ get checked() {
112
+ return this.checkedState === CheckedState.CHECKED;
113
+ }
114
+ /**
115
+ * Is the checked state indeterminate?
116
+ */
117
+ get indeterminate() {
118
+ return this.checkedState === CheckedState.INDETERMINATE;
119
+ }
120
+ update(changedProperties) {
121
+ super.update(changedProperties);
122
+ if (changedProperties.has('checkedState')) {
123
+ switch (this.checkedState) {
124
+ case CheckedState.CHECKED:
125
+ this.setAttribute('selected', '');
126
+ break;
127
+ case CheckedState.INDETERMINATE:
128
+ this.setAttribute('selected', 'indeterminate');
129
+ break;
130
+ default:
131
+ this.removeAttribute('selected');
132
+ }
133
+ }
134
+ }
135
+ render() {
136
+ return html `
137
+ ${this.indentTemplate}
138
+ ${this.toggleTemplate}
139
+ ${this.checkboxTemplate}
140
+ ${this.iconTemplate}
141
+ <div part="label">
142
+ <slot>${this.label}</slot>
143
+ </div>
144
+ `;
145
+ }
146
+ };
147
+ __decorate([
148
+ property({ attribute: false })
149
+ ], TreeItem.prototype, "checkedState", void 0);
150
+ __decorate([
151
+ property({ type: Boolean, reflect: true, attribute: 'group' })
152
+ ], TreeItem.prototype, "parent", void 0);
153
+ __decorate([
154
+ property({ type: Boolean, reflect: true })
155
+ ], TreeItem.prototype, "multiple", void 0);
156
+ __decorate([
157
+ property({ type: Boolean })
158
+ ], TreeItem.prototype, "expanded", void 0);
159
+ __decorate([
160
+ property({ reflect: true, type: Number })
161
+ ], TreeItem.prototype, "depth", void 0);
162
+ __decorate([
163
+ property({ type: String })
164
+ ], TreeItem.prototype, "label", void 0);
165
+ __decorate([
166
+ property({ type: String })
167
+ ], TreeItem.prototype, "icon", void 0);
168
+ __decorate([
169
+ property({ attribute: false })
170
+ ], TreeItem.prototype, "item", void 0);
171
+ __decorate([
172
+ property({ reflect: true, type: Boolean })
173
+ ], TreeItem.prototype, "highlighted", void 0);
174
+ TreeItem = __decorate([
175
+ customElement('ef-tree-item', {
176
+ alias: 'coral-tree-item'
177
+ })
178
+ ], TreeItem);
179
+ export { TreeItem };
@@ -0,0 +1,201 @@
1
+ import { JSXInterface } from '../../jsx';
2
+ import { PropertyValues, TapEvent } from '@refinitiv-ui/core';
3
+ import { CollectionComposer } from '@refinitiv-ui/utils/lib/collection.js';
4
+ import { List } from '../../list/index.js';
5
+ import { TreeRenderer } from '../helpers/renderer.js';
6
+ import type { TreeData, TreeDataItem, TreeFilter } from '../helpers/types';
7
+ import { TreeManagerMode } from '../managers/tree-manager.js';
8
+ /**
9
+ * Displays a tree structure
10
+ * to be used for menus and group selections
11
+ *
12
+ * @fires value-changed - Fired when the users changed selection item.
13
+ * @fires expanded-changed - Fired when an item's expanded state has changed.
14
+ *
15
+ * @attr {boolean} [stateless=false] - Disable selections
16
+ * @prop {boolean} [stateless=false] - Disable selections
17
+ *
18
+ */
19
+ export declare class Tree<T extends TreeDataItem = TreeDataItem> extends List<T> {
20
+ /**
21
+ * Element version number
22
+ * @returns version number
23
+ */
24
+ static get version(): string;
25
+ /**
26
+ * Tree manager used for manipulation
27
+ */
28
+ private manager;
29
+ /**
30
+ * Allows multiple items to be selected
31
+ */
32
+ multiple: boolean;
33
+ /**
34
+ * Breaks the relationship when multiple
35
+ * selection mode is enabled
36
+ */
37
+ noRelation: boolean;
38
+ /**
39
+ * Query string applied to tree
40
+ */
41
+ query: string;
42
+ /**
43
+ * Custom filter for static data
44
+ * @type {TreeFilter<T> | null}
45
+ * @ignore set to protected for now and need to discuss before set to public API
46
+ */
47
+ protected filter: TreeFilter<T> | null;
48
+ /**
49
+ * Renderer used for generating tree items
50
+ * @type {TreeRenderer}
51
+ */
52
+ renderer: TreeRenderer;
53
+ /**
54
+ * Expands all groups
55
+ * @returns {void}
56
+ */
57
+ expandAll(): void;
58
+ /**
59
+ * Collapses all groups
60
+ * @returns {void}
61
+ */
62
+ collapseAll(): void;
63
+ /**
64
+ * Checks all editable items
65
+ * @returns {void}
66
+ */
67
+ checkAll(): void;
68
+ /**
69
+ * Unchecks all editable items
70
+ * @returns {void}
71
+ */
72
+ uncheckAll(): void;
73
+ /**
74
+ * @override
75
+ * @ignore
76
+ */
77
+ selectItem(item: T): boolean;
78
+ /**
79
+ * Dispatches an event, detailing which item has recently changed it's expanded state.
80
+ * @param item Data item of which the expanded property changed
81
+ * @returns {void}
82
+ */
83
+ protected dispatchExpandedChangedEvent(item: T): void;
84
+ /**
85
+ * Handles tap event when composed path contains
86
+ * an element with an `expand-toggle` attribute.
87
+ * @param event Tap event to try and handle
88
+ * @returns True or False depending if the event was handled
89
+ */
90
+ protected handleExpandCollapse(event: TapEvent): boolean;
91
+ /**
92
+ * @override
93
+ */
94
+ protected onTap(event: TapEvent): void;
95
+ /**
96
+ * @override
97
+ */
98
+ protected onKeyDown(event: KeyboardEvent): void;
99
+ /**
100
+ * Performs left arrow keyboard action,
101
+ * collapsing a group item if possible.
102
+ * @returns {void}
103
+ */
104
+ protected left(): void;
105
+ /**
106
+ * Performs right arrow keyboard action,
107
+ * expanding a group item if possible.
108
+ * @returns {void}
109
+ */
110
+ protected right(): void;
111
+ /**
112
+ * Toggles the expanded state of an item.
113
+ * Executed when a user taps on an item to expand/collapse the group.
114
+ * @param item Original data item
115
+ * @returns {void}
116
+ */
117
+ protected toggleExpandedState(item: T): void;
118
+ /**
119
+ * @override
120
+ */
121
+ protected queryItems(engine: (item: T, composer: CollectionComposer<T>) => boolean): readonly T[];
122
+ /**
123
+ * @override
124
+ */
125
+ protected queryItemsByPropertyValue<K extends keyof T>(property: K, value: T[K]): readonly T[];
126
+ /**
127
+ * @override
128
+ */
129
+ protected update(changedProperties: PropertyValues): void;
130
+ /**
131
+ * Filter the internal items by query changes items' hidden state
132
+ * @returns {void}
133
+ */
134
+ protected filterItems(): void;
135
+ /**
136
+ * Utility method
137
+ * Adds descendants for each item passed
138
+ * @param items List of child items
139
+ * @returns {void}
140
+ */
141
+ protected addItemDescendantsToRender(items: T[]): void;
142
+ /**
143
+ * Utility method
144
+ * Add nested children of item list
145
+ * @param items List of items
146
+ * @param excludeItems List of exclude items
147
+ * @param [includeHidden=false] Include hidden items
148
+ * @returns {void}
149
+ */
150
+ protected addNestedItemsToRender(items: readonly T[], excludeItems: readonly T[], includeHidden?: boolean): void;
151
+ /**
152
+ * Utility method
153
+ * Adds ancestors for each item passed and expand
154
+ * @param items List of child items
155
+ * @returns {void}
156
+ */
157
+ protected addExpandedAncestorsToRender(items: T[]): void;
158
+ /**
159
+ * Utility method
160
+ * Adds parent and expands
161
+ * @param ancestor parent item
162
+ * @returns {void}
163
+ */
164
+ protected addExpandedAncestorToRender(ancestor: T): void;
165
+ /**
166
+ * Selected items in tree
167
+ * @override
168
+ * @type {string[]}
169
+ */
170
+ get values(): string[];
171
+ set values(value: string[]);
172
+ /**
173
+ * Data object to be used for creating tree
174
+ * @override
175
+ * @type {TreeData<T>}
176
+ */
177
+ get data(): TreeData<T>;
178
+ set data(data: TreeData<T>);
179
+ /**
180
+ * @override
181
+ */
182
+ protected get renderItems(): readonly T[];
183
+ /**
184
+ * Mode to use in the tree manager
185
+ */
186
+ protected get mode(): TreeManagerMode;
187
+ }
188
+
189
+ declare global {
190
+ interface HTMLElementTagNameMap {
191
+ 'ef-tree': Tree;
192
+ }
193
+
194
+ namespace JSX {
195
+ interface IntrinsicElements {
196
+ 'ef-tree': Partial<Tree> | JSXInterface.HTMLAttributes<Tree>;
197
+ }
198
+ }
199
+ }
200
+
201
+ export {};