@refinitiv-ui/elements 5.11.0 → 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 (504) hide show
  1. package/README.md +4 -4
  2. package/package.json +21 -290
  3. package/lib/accordion/index.d.ts +0 -76
  4. package/lib/accordion/index.js +0 -136
  5. package/lib/accordion/themes/halo/dark/index.js +0 -3
  6. package/lib/accordion/themes/halo/light/index.js +0 -3
  7. package/lib/accordion/themes/solar/charcoal/index.js +0 -3
  8. package/lib/accordion/themes/solar/pearl/index.js +0 -3
  9. package/lib/appstate-bar/index.d.ts +0 -65
  10. package/lib/appstate-bar/index.js +0 -100
  11. package/lib/appstate-bar/themes/halo/dark/index.js +0 -3
  12. package/lib/appstate-bar/themes/halo/light/index.js +0 -3
  13. package/lib/appstate-bar/themes/solar/charcoal/index.js +0 -3
  14. package/lib/appstate-bar/themes/solar/pearl/index.js +0 -3
  15. package/lib/autosuggest/helpers/types.d.ts +0 -54
  16. package/lib/autosuggest/helpers/types.js +0 -1
  17. package/lib/autosuggest/helpers/utils.d.ts +0 -39
  18. package/lib/autosuggest/helpers/utils.js +0 -75
  19. package/lib/autosuggest/index.d.ts +0 -538
  20. package/lib/autosuggest/index.js +0 -1255
  21. package/lib/autosuggest/themes/halo/dark/index.js +0 -5
  22. package/lib/autosuggest/themes/halo/light/index.js +0 -5
  23. package/lib/autosuggest/themes/solar/charcoal/index.js +0 -5
  24. package/lib/autosuggest/themes/solar/pearl/index.js +0 -5
  25. package/lib/button/index.d.ts +0 -132
  26. package/lib/button/index.js +0 -223
  27. package/lib/button/themes/halo/dark/index.js +0 -3
  28. package/lib/button/themes/halo/light/index.js +0 -3
  29. package/lib/button/themes/solar/charcoal/index.js +0 -3
  30. package/lib/button/themes/solar/pearl/index.js +0 -3
  31. package/lib/button-bar/index.d.ts +0 -76
  32. package/lib/button-bar/index.js +0 -155
  33. package/lib/button-bar/themes/halo/dark/index.js +0 -3
  34. package/lib/button-bar/themes/halo/light/index.js +0 -3
  35. package/lib/button-bar/themes/solar/charcoal/index.js +0 -3
  36. package/lib/button-bar/themes/solar/pearl/index.js +0 -3
  37. package/lib/calendar/constants.d.ts +0 -26
  38. package/lib/calendar/constants.js +0 -28
  39. package/lib/calendar/index.d.ts +0 -412
  40. package/lib/calendar/index.js +0 -1274
  41. package/lib/calendar/locales.d.ts +0 -1
  42. package/lib/calendar/locales.js +0 -41
  43. package/lib/calendar/themes/halo/dark/index.js +0 -3
  44. package/lib/calendar/themes/halo/light/index.js +0 -3
  45. package/lib/calendar/themes/solar/charcoal/index.js +0 -3
  46. package/lib/calendar/themes/solar/pearl/index.js +0 -3
  47. package/lib/calendar/types.d.ts +0 -32
  48. package/lib/calendar/types.js +0 -1
  49. package/lib/calendar/utils.d.ts +0 -42
  50. package/lib/calendar/utils.js +0 -120
  51. package/lib/canvas/index.d.ts +0 -101
  52. package/lib/canvas/index.js +0 -173
  53. package/lib/canvas/themes/halo/dark/index.js +0 -2
  54. package/lib/canvas/themes/halo/light/index.js +0 -2
  55. package/lib/canvas/themes/solar/charcoal/index.js +0 -2
  56. package/lib/canvas/themes/solar/pearl/index.js +0 -2
  57. package/lib/card/helpers/types.d.ts +0 -12
  58. package/lib/card/helpers/types.js +0 -1
  59. package/lib/card/index.d.ts +0 -142
  60. package/lib/card/index.js +0 -248
  61. package/lib/card/themes/halo/dark/index.js +0 -5
  62. package/lib/card/themes/halo/light/index.js +0 -5
  63. package/lib/card/themes/solar/charcoal/index.js +0 -5
  64. package/lib/card/themes/solar/pearl/index.js +0 -5
  65. package/lib/chart/helpers/index.d.ts +0 -2
  66. package/lib/chart/helpers/index.js +0 -2
  67. package/lib/chart/helpers/legend.d.ts +0 -5
  68. package/lib/chart/helpers/legend.js +0 -78
  69. package/lib/chart/helpers/merge.d.ts +0 -15
  70. package/lib/chart/helpers/merge.js +0 -28
  71. package/lib/chart/helpers/types.d.ts +0 -69
  72. package/lib/chart/helpers/types.js +0 -1
  73. package/lib/chart/index.d.ts +0 -187
  74. package/lib/chart/index.js +0 -491
  75. package/lib/chart/plugins/doughnut-center-label.d.ts +0 -3
  76. package/lib/chart/plugins/doughnut-center-label.js +0 -196
  77. package/lib/chart/themes/halo/dark/index.js +0 -4
  78. package/lib/chart/themes/halo/light/index.js +0 -4
  79. package/lib/chart/themes/solar/charcoal/index.js +0 -4
  80. package/lib/chart/themes/solar/pearl/index.js +0 -4
  81. package/lib/checkbox/index.d.ts +0 -97
  82. package/lib/checkbox/index.js +0 -194
  83. package/lib/checkbox/themes/halo/dark/index.js +0 -4
  84. package/lib/checkbox/themes/halo/light/index.js +0 -4
  85. package/lib/checkbox/themes/solar/charcoal/index.js +0 -4
  86. package/lib/checkbox/themes/solar/pearl/index.js +0 -4
  87. package/lib/clock/index.d.ts +0 -321
  88. package/lib/clock/index.js +0 -583
  89. package/lib/clock/themes/halo/dark/index.js +0 -2
  90. package/lib/clock/themes/halo/light/index.js +0 -2
  91. package/lib/clock/themes/solar/charcoal/index.js +0 -2
  92. package/lib/clock/themes/solar/pearl/index.js +0 -2
  93. package/lib/clock/utils/TickManager.d.ts +0 -14
  94. package/lib/clock/utils/TickManager.js +0 -66
  95. package/lib/clock/utils/timestamps.d.ts +0 -6
  96. package/lib/clock/utils/timestamps.js +0 -6
  97. package/lib/collapse/index.d.ts +0 -119
  98. package/lib/collapse/index.js +0 -197
  99. package/lib/collapse/themes/halo/dark/index.js +0 -5
  100. package/lib/collapse/themes/halo/light/index.js +0 -5
  101. package/lib/collapse/themes/solar/charcoal/index.js +0 -5
  102. package/lib/collapse/themes/solar/pearl/index.js +0 -5
  103. package/lib/color-dialog/elements/color-palettes.d.ts +0 -52
  104. package/lib/color-dialog/elements/color-palettes.js +0 -101
  105. package/lib/color-dialog/elements/grayscale-palettes.d.ts +0 -67
  106. package/lib/color-dialog/elements/grayscale-palettes.js +0 -161
  107. package/lib/color-dialog/elements/palettes.d.ts +0 -65
  108. package/lib/color-dialog/elements/palettes.js +0 -132
  109. package/lib/color-dialog/helpers/color-helpers.d.ts +0 -16
  110. package/lib/color-dialog/helpers/color-helpers.js +0 -161
  111. package/lib/color-dialog/helpers/value-model.d.ts +0 -75
  112. package/lib/color-dialog/helpers/value-model.js +0 -141
  113. package/lib/color-dialog/index.d.ts +0 -232
  114. package/lib/color-dialog/index.js +0 -459
  115. package/lib/color-dialog/themes/halo/dark/index.js +0 -7
  116. package/lib/color-dialog/themes/halo/light/index.js +0 -7
  117. package/lib/color-dialog/themes/solar/charcoal/index.js +0 -7
  118. package/lib/color-dialog/themes/solar/pearl/index.js +0 -7
  119. package/lib/combo-box/helpers/filter.d.ts +0 -10
  120. package/lib/combo-box/helpers/filter.js +0 -29
  121. package/lib/combo-box/helpers/keyboard-event.d.ts +0 -17
  122. package/lib/combo-box/helpers/keyboard-event.js +0 -19
  123. package/lib/combo-box/helpers/renderer.d.ts +0 -8
  124. package/lib/combo-box/helpers/renderer.js +0 -24
  125. package/lib/combo-box/helpers/types.d.ts +0 -11
  126. package/lib/combo-box/helpers/types.js +0 -1
  127. package/lib/combo-box/index.d.ts +0 -551
  128. package/lib/combo-box/index.js +0 -1183
  129. package/lib/combo-box/themes/halo/dark/index.js +0 -7
  130. package/lib/combo-box/themes/halo/light/index.js +0 -7
  131. package/lib/combo-box/themes/solar/charcoal/index.js +0 -7
  132. package/lib/combo-box/themes/solar/pearl/index.js +0 -7
  133. package/lib/counter/index.d.ts +0 -91
  134. package/lib/counter/index.js +0 -154
  135. package/lib/counter/themes/halo/dark/index.js +0 -3
  136. package/lib/counter/themes/halo/light/index.js +0 -3
  137. package/lib/counter/themes/solar/charcoal/index.js +0 -3
  138. package/lib/counter/themes/solar/pearl/index.js +0 -3
  139. package/lib/counter/utils.d.ts +0 -13
  140. package/lib/counter/utils.js +0 -52
  141. package/lib/datetime-picker/index.d.ts +0 -509
  142. package/lib/datetime-picker/index.js +0 -1175
  143. package/lib/datetime-picker/locales.d.ts +0 -8
  144. package/lib/datetime-picker/locales.js +0 -57
  145. package/lib/datetime-picker/themes/halo/dark/index.js +0 -7
  146. package/lib/datetime-picker/themes/halo/light/index.js +0 -7
  147. package/lib/datetime-picker/themes/solar/charcoal/index.js +0 -7
  148. package/lib/datetime-picker/themes/solar/pearl/index.js +0 -7
  149. package/lib/datetime-picker/types.d.ts +0 -3
  150. package/lib/datetime-picker/types.js +0 -1
  151. package/lib/datetime-picker/utils.d.ts +0 -55
  152. package/lib/datetime-picker/utils.js +0 -92
  153. package/lib/dialog/draggable-element.d.ts +0 -14
  154. package/lib/dialog/draggable-element.js +0 -221
  155. package/lib/dialog/index.d.ts +0 -196
  156. package/lib/dialog/index.js +0 -328
  157. package/lib/dialog/themes/halo/dark/index.js +0 -7
  158. package/lib/dialog/themes/halo/light/index.js +0 -7
  159. package/lib/dialog/themes/solar/charcoal/index.js +0 -7
  160. package/lib/dialog/themes/solar/pearl/index.js +0 -7
  161. package/lib/email-field/index.d.ts +0 -80
  162. package/lib/email-field/index.js +0 -86
  163. package/lib/email-field/themes/halo/dark/index.js +0 -3
  164. package/lib/email-field/themes/halo/light/index.js +0 -3
  165. package/lib/email-field/themes/solar/charcoal/index.js +0 -3
  166. package/lib/email-field/themes/solar/pearl/index.js +0 -3
  167. package/lib/events.d.ts +0 -121
  168. package/lib/events.js +0 -1
  169. package/lib/flag/index.d.ts +0 -96
  170. package/lib/flag/index.js +0 -168
  171. package/lib/flag/themes/halo/dark/index.js +0 -2
  172. package/lib/flag/themes/halo/light/index.js +0 -2
  173. package/lib/flag/themes/solar/charcoal/index.js +0 -2
  174. package/lib/flag/themes/solar/pearl/index.js +0 -2
  175. package/lib/flag/utils/FlagLoader.d.ts +0 -47
  176. package/lib/flag/utils/FlagLoader.js +0 -86
  177. package/lib/header/index.d.ts +0 -46
  178. package/lib/header/index.js +0 -73
  179. package/lib/header/themes/halo/dark/index.js +0 -2
  180. package/lib/header/themes/halo/light/index.js +0 -2
  181. package/lib/header/themes/solar/charcoal/index.js +0 -2
  182. package/lib/header/themes/solar/pearl/index.js +0 -2
  183. package/lib/heatmap/helpers/color.d.ts +0 -30
  184. package/lib/heatmap/helpers/color.js +0 -68
  185. package/lib/heatmap/helpers/text.d.ts +0 -26
  186. package/lib/heatmap/helpers/text.js +0 -91
  187. package/lib/heatmap/helpers/track.d.ts +0 -102
  188. package/lib/heatmap/helpers/track.js +0 -160
  189. package/lib/heatmap/helpers/types.d.ts +0 -40
  190. package/lib/heatmap/helpers/types.js +0 -1
  191. package/lib/heatmap/index.d.ts +0 -453
  192. package/lib/heatmap/index.js +0 -1103
  193. package/lib/heatmap/themes/halo/dark/index.js +0 -4
  194. package/lib/heatmap/themes/halo/light/index.js +0 -4
  195. package/lib/heatmap/themes/solar/charcoal/index.js +0 -4
  196. package/lib/heatmap/themes/solar/pearl/index.js +0 -4
  197. package/lib/icon/index.d.ts +0 -90
  198. package/lib/icon/index.js +0 -171
  199. package/lib/icon/themes/halo/dark/index.js +0 -2
  200. package/lib/icon/themes/halo/light/index.js +0 -2
  201. package/lib/icon/themes/solar/charcoal/index.js +0 -2
  202. package/lib/icon/themes/solar/pearl/index.js +0 -2
  203. package/lib/icon/utils/IconLoader.d.ts +0 -52
  204. package/lib/icon/utils/IconLoader.js +0 -93
  205. package/lib/index.d.ts +0 -3
  206. package/lib/index.js +0 -3
  207. package/lib/interactive-chart/helpers/merge.d.ts +0 -15
  208. package/lib/interactive-chart/helpers/merge.js +0 -28
  209. package/lib/interactive-chart/helpers/types.d.ts +0 -45
  210. package/lib/interactive-chart/helpers/types.js +0 -6
  211. package/lib/interactive-chart/index.d.ts +0 -383
  212. package/lib/interactive-chart/index.js +0 -1093
  213. package/lib/interactive-chart/themes/halo/dark/index.js +0 -3
  214. package/lib/interactive-chart/themes/halo/light/index.js +0 -3
  215. package/lib/interactive-chart/themes/solar/charcoal/index.js +0 -3
  216. package/lib/interactive-chart/themes/solar/pearl/index.js +0 -3
  217. package/lib/item/helpers/types.d.ts +0 -57
  218. package/lib/item/helpers/types.js +0 -1
  219. package/lib/item/index.d.ts +0 -159
  220. package/lib/item/index.js +0 -272
  221. package/lib/item/themes/halo/dark/index.js +0 -4
  222. package/lib/item/themes/halo/light/index.js +0 -4
  223. package/lib/item/themes/solar/charcoal/index.js +0 -4
  224. package/lib/item/themes/solar/pearl/index.js +0 -4
  225. package/lib/label/index.d.ts +0 -102
  226. package/lib/label/index.js +0 -245
  227. package/lib/label/themes/halo/dark/index.js +0 -3
  228. package/lib/label/themes/halo/light/index.js +0 -3
  229. package/lib/label/themes/solar/charcoal/index.js +0 -3
  230. package/lib/label/themes/solar/pearl/index.js +0 -3
  231. package/lib/layout/index.d.ts +0 -107
  232. package/lib/layout/index.js +0 -212
  233. package/lib/layout/themes/halo/dark/index.js +0 -2
  234. package/lib/layout/themes/halo/light/index.js +0 -2
  235. package/lib/layout/themes/solar/charcoal/index.js +0 -2
  236. package/lib/layout/themes/solar/pearl/index.js +0 -2
  237. package/lib/led-gauge/index.d.ts +0 -144
  238. package/lib/led-gauge/index.js +0 -438
  239. package/lib/led-gauge/themes/halo/dark/index.js +0 -3
  240. package/lib/led-gauge/themes/halo/light/index.js +0 -3
  241. package/lib/led-gauge/themes/solar/charcoal/index.js +0 -3
  242. package/lib/led-gauge/themes/solar/pearl/index.js +0 -3
  243. package/lib/list/extensible-function.d.ts +0 -8
  244. package/lib/list/extensible-function.js +0 -13
  245. package/lib/list/helpers/list-renderer.d.ts +0 -9
  246. package/lib/list/helpers/list-renderer.js +0 -37
  247. package/lib/list/helpers/types.d.ts +0 -3
  248. package/lib/list/helpers/types.js +0 -1
  249. package/lib/list/index.d.ts +0 -313
  250. package/lib/list/index.js +0 -640
  251. package/lib/list/renderer.d.ts +0 -36
  252. package/lib/list/renderer.js +0 -9
  253. package/lib/list/themes/halo/dark/index.js +0 -3
  254. package/lib/list/themes/halo/light/index.js +0 -3
  255. package/lib/list/themes/solar/charcoal/index.js +0 -3
  256. package/lib/list/themes/solar/pearl/index.js +0 -3
  257. package/lib/loader/index.d.ts +0 -41
  258. package/lib/loader/index.js +0 -61
  259. package/lib/loader/themes/halo/dark/index.js +0 -2
  260. package/lib/loader/themes/halo/light/index.js +0 -2
  261. package/lib/loader/themes/solar/charcoal/index.js +0 -2
  262. package/lib/loader/themes/solar/pearl/index.js +0 -2
  263. package/lib/multi-input/helpers/types.d.ts +0 -11
  264. package/lib/multi-input/helpers/types.js +0 -1
  265. package/lib/multi-input/index.d.ts +0 -301
  266. package/lib/multi-input/index.js +0 -594
  267. package/lib/multi-input/themes/halo/dark/index.js +0 -4
  268. package/lib/multi-input/themes/halo/light/index.js +0 -4
  269. package/lib/multi-input/themes/solar/charcoal/index.js +0 -4
  270. package/lib/multi-input/themes/solar/pearl/index.js +0 -4
  271. package/lib/notification/elements/notification-tray.d.ts +0 -97
  272. package/lib/notification/elements/notification-tray.js +0 -167
  273. package/lib/notification/elements/notification.d.ts +0 -90
  274. package/lib/notification/elements/notification.js +0 -154
  275. package/lib/notification/helpers/status.d.ts +0 -30
  276. package/lib/notification/helpers/status.js +0 -130
  277. package/lib/notification/helpers/types.d.ts +0 -10
  278. package/lib/notification/helpers/types.js +0 -1
  279. package/lib/notification/index.d.ts +0 -2
  280. package/lib/notification/index.js +0 -2
  281. package/lib/notification/themes/halo/dark/index.js +0 -5
  282. package/lib/notification/themes/halo/light/index.js +0 -5
  283. package/lib/notification/themes/solar/charcoal/index.js +0 -5
  284. package/lib/notification/themes/solar/pearl/index.js +0 -5
  285. package/lib/number-field/index.d.ts +0 -339
  286. package/lib/number-field/index.js +0 -740
  287. package/lib/number-field/themes/halo/dark/index.js +0 -3
  288. package/lib/number-field/themes/halo/light/index.js +0 -3
  289. package/lib/number-field/themes/solar/charcoal/index.js +0 -3
  290. package/lib/number-field/themes/solar/pearl/index.js +0 -3
  291. package/lib/overlay/elements/overlay-backdrop.d.ts +0 -46
  292. package/lib/overlay/elements/overlay-backdrop.js +0 -64
  293. package/lib/overlay/elements/overlay-viewport.d.ts +0 -40
  294. package/lib/overlay/elements/overlay-viewport.js +0 -52
  295. package/lib/overlay/elements/overlay.d.ts +0 -408
  296. package/lib/overlay/elements/overlay.js +0 -1426
  297. package/lib/overlay/helpers/functions.d.ts +0 -13
  298. package/lib/overlay/helpers/functions.js +0 -16
  299. package/lib/overlay/helpers/types.d.ts +0 -97
  300. package/lib/overlay/helpers/types.js +0 -16
  301. package/lib/overlay/index.d.ts +0 -2
  302. package/lib/overlay/index.js +0 -1
  303. package/lib/overlay/managers/backdrop-manager.d.ts +0 -45
  304. package/lib/overlay/managers/backdrop-manager.js +0 -96
  305. package/lib/overlay/managers/close-manager.d.ts +0 -54
  306. package/lib/overlay/managers/close-manager.js +0 -138
  307. package/lib/overlay/managers/focus-manager.d.ts +0 -71
  308. package/lib/overlay/managers/focus-manager.js +0 -228
  309. package/lib/overlay/managers/interaction-lock-manager.d.ts +0 -138
  310. package/lib/overlay/managers/interaction-lock-manager.js +0 -375
  311. package/lib/overlay/managers/viewport-manager.d.ts +0 -93
  312. package/lib/overlay/managers/viewport-manager.js +0 -211
  313. package/lib/overlay/managers/zindex-manager.d.ts +0 -80
  314. package/lib/overlay/managers/zindex-manager.js +0 -195
  315. package/lib/overlay/themes/halo/dark/index.js +0 -4
  316. package/lib/overlay/themes/halo/light/index.js +0 -4
  317. package/lib/overlay/themes/solar/charcoal/index.js +0 -4
  318. package/lib/overlay/themes/solar/pearl/index.js +0 -4
  319. package/lib/overlay-menu/helpers/types.d.ts +0 -8
  320. package/lib/overlay-menu/helpers/types.js +0 -1
  321. package/lib/overlay-menu/index.d.ts +0 -387
  322. package/lib/overlay-menu/index.js +0 -935
  323. package/lib/overlay-menu/managers/menu-manager.d.ts +0 -98
  324. package/lib/overlay-menu/managers/menu-manager.js +0 -240
  325. package/lib/overlay-menu/themes/halo/dark/index.js +0 -5
  326. package/lib/overlay-menu/themes/halo/light/index.js +0 -5
  327. package/lib/overlay-menu/themes/solar/charcoal/index.js +0 -5
  328. package/lib/overlay-menu/themes/solar/pearl/index.js +0 -5
  329. package/lib/pagination/index.d.ts +0 -275
  330. package/lib/pagination/index.js +0 -552
  331. package/lib/pagination/themes/halo/dark/index.js +0 -6
  332. package/lib/pagination/themes/halo/light/index.js +0 -6
  333. package/lib/pagination/themes/solar/charcoal/index.js +0 -6
  334. package/lib/pagination/themes/solar/pearl/index.js +0 -6
  335. package/lib/panel/index.d.ts +0 -48
  336. package/lib/panel/index.js +0 -74
  337. package/lib/panel/themes/halo/dark/index.js +0 -2
  338. package/lib/panel/themes/halo/light/index.js +0 -2
  339. package/lib/panel/themes/solar/charcoal/index.js +0 -2
  340. package/lib/panel/themes/solar/pearl/index.js +0 -2
  341. package/lib/password-field/index.d.ts +0 -89
  342. package/lib/password-field/index.js +0 -112
  343. package/lib/password-field/themes/halo/dark/index.js +0 -3
  344. package/lib/password-field/themes/halo/light/index.js +0 -3
  345. package/lib/password-field/themes/solar/charcoal/index.js +0 -3
  346. package/lib/password-field/themes/solar/pearl/index.js +0 -3
  347. package/lib/pill/index.d.ts +0 -97
  348. package/lib/pill/index.js +0 -160
  349. package/lib/pill/themes/halo/dark/index.js +0 -3
  350. package/lib/pill/themes/halo/light/index.js +0 -3
  351. package/lib/pill/themes/solar/charcoal/index.js +0 -3
  352. package/lib/pill/themes/solar/pearl/index.js +0 -3
  353. package/lib/progress-bar/index.d.ts +0 -82
  354. package/lib/progress-bar/index.js +0 -157
  355. package/lib/progress-bar/themes/halo/dark/index.js +0 -2
  356. package/lib/progress-bar/themes/halo/light/index.js +0 -2
  357. package/lib/progress-bar/themes/solar/charcoal/index.js +0 -2
  358. package/lib/progress-bar/themes/solar/pearl/index.js +0 -2
  359. package/lib/radio-button/index.d.ts +0 -123
  360. package/lib/radio-button/index.js +0 -261
  361. package/lib/radio-button/radio-button-registry.d.ts +0 -22
  362. package/lib/radio-button/radio-button-registry.js +0 -93
  363. package/lib/radio-button/themes/halo/dark/index.js +0 -3
  364. package/lib/radio-button/themes/halo/light/index.js +0 -3
  365. package/lib/radio-button/themes/solar/charcoal/index.js +0 -3
  366. package/lib/radio-button/themes/solar/pearl/index.js +0 -3
  367. package/lib/rating/index.d.ts +0 -91
  368. package/lib/rating/index.js +0 -157
  369. package/lib/rating/themes/halo/dark/index.js +0 -2
  370. package/lib/rating/themes/halo/light/index.js +0 -2
  371. package/lib/rating/themes/solar/charcoal/index.js +0 -2
  372. package/lib/rating/themes/solar/pearl/index.js +0 -2
  373. package/lib/search-field/index.d.ts +0 -77
  374. package/lib/search-field/index.js +0 -84
  375. package/lib/search-field/themes/halo/dark/index.js +0 -3
  376. package/lib/search-field/themes/halo/light/index.js +0 -3
  377. package/lib/search-field/themes/solar/charcoal/index.js +0 -3
  378. package/lib/search-field/themes/solar/pearl/index.js +0 -3
  379. package/lib/select/helpers/types.d.ts +0 -3
  380. package/lib/select/helpers/types.js +0 -1
  381. package/lib/select/index.d.ts +0 -396
  382. package/lib/select/index.js +0 -981
  383. package/lib/select/themes/halo/dark/index.js +0 -5
  384. package/lib/select/themes/halo/light/index.js +0 -5
  385. package/lib/select/themes/solar/charcoal/index.js +0 -5
  386. package/lib/select/themes/solar/pearl/index.js +0 -5
  387. package/lib/sidebar-layout/index.d.ts +0 -70
  388. package/lib/sidebar-layout/index.js +0 -134
  389. package/lib/sidebar-layout/themes/halo/dark/index.js +0 -3
  390. package/lib/sidebar-layout/themes/halo/light/index.js +0 -3
  391. package/lib/sidebar-layout/themes/solar/charcoal/index.js +0 -3
  392. package/lib/sidebar-layout/themes/solar/pearl/index.js +0 -3
  393. package/lib/slider/index.d.ts +0 -409
  394. package/lib/slider/index.js +0 -1187
  395. package/lib/slider/themes/halo/dark/index.js +0 -3
  396. package/lib/slider/themes/halo/light/index.js +0 -3
  397. package/lib/slider/themes/solar/charcoal/index.js +0 -3
  398. package/lib/slider/themes/solar/pearl/index.js +0 -3
  399. package/lib/sparkline/index.d.ts +0 -109
  400. package/lib/sparkline/index.js +0 -188
  401. package/lib/sparkline/themes/halo/dark/index.js +0 -2
  402. package/lib/sparkline/themes/halo/light/index.js +0 -2
  403. package/lib/sparkline/themes/solar/charcoal/index.js +0 -2
  404. package/lib/sparkline/themes/solar/pearl/index.js +0 -2
  405. package/lib/swing-gauge/const.d.ts +0 -22
  406. package/lib/swing-gauge/const.js +0 -26
  407. package/lib/swing-gauge/helpers.d.ts +0 -8
  408. package/lib/swing-gauge/helpers.js +0 -105
  409. package/lib/swing-gauge/index.d.ts +0 -296
  410. package/lib/swing-gauge/index.js +0 -764
  411. package/lib/swing-gauge/themes/halo/dark/index.js +0 -3
  412. package/lib/swing-gauge/themes/halo/light/index.js +0 -3
  413. package/lib/swing-gauge/themes/solar/charcoal/index.js +0 -3
  414. package/lib/swing-gauge/themes/solar/pearl/index.js +0 -3
  415. package/lib/swing-gauge/types.d.ts +0 -34
  416. package/lib/swing-gauge/types.js +0 -1
  417. package/lib/tab/index.d.ts +0 -118
  418. package/lib/tab/index.js +0 -208
  419. package/lib/tab/themes/halo/dark/index.js +0 -4
  420. package/lib/tab/themes/halo/light/index.js +0 -4
  421. package/lib/tab/themes/solar/charcoal/index.js +0 -4
  422. package/lib/tab/themes/solar/pearl/index.js +0 -4
  423. package/lib/tab-bar/helpers/animate.d.ts +0 -16
  424. package/lib/tab-bar/helpers/animate.js +0 -53
  425. package/lib/tab-bar/index.d.ts +0 -108
  426. package/lib/tab-bar/index.js +0 -218
  427. package/lib/tab-bar/themes/halo/dark/index.js +0 -4
  428. package/lib/tab-bar/themes/halo/light/index.js +0 -4
  429. package/lib/tab-bar/themes/solar/charcoal/index.js +0 -4
  430. package/lib/tab-bar/themes/solar/pearl/index.js +0 -4
  431. package/lib/text-field/index.d.ts +0 -151
  432. package/lib/text-field/index.js +0 -260
  433. package/lib/text-field/themes/halo/dark/index.js +0 -3
  434. package/lib/text-field/themes/halo/light/index.js +0 -3
  435. package/lib/text-field/themes/solar/charcoal/index.js +0 -3
  436. package/lib/text-field/themes/solar/pearl/index.js +0 -3
  437. package/lib/time-picker/index.d.ts +0 -412
  438. package/lib/time-picker/index.js +0 -898
  439. package/lib/time-picker/themes/halo/dark/index.js +0 -4
  440. package/lib/time-picker/themes/halo/light/index.js +0 -4
  441. package/lib/time-picker/themes/solar/charcoal/index.js +0 -4
  442. package/lib/time-picker/themes/solar/pearl/index.js +0 -4
  443. package/lib/toggle/index.d.ts +0 -87
  444. package/lib/toggle/index.js +0 -153
  445. package/lib/toggle/themes/halo/dark/index.js +0 -2
  446. package/lib/toggle/themes/halo/light/index.js +0 -2
  447. package/lib/toggle/themes/solar/charcoal/index.js +0 -2
  448. package/lib/toggle/themes/solar/pearl/index.js +0 -2
  449. package/lib/tooltip/elements/title-tooltip.d.ts +0 -1
  450. package/lib/tooltip/elements/title-tooltip.js +0 -18
  451. package/lib/tooltip/elements/tooltip-element.d.ts +0 -21
  452. package/lib/tooltip/elements/tooltip-element.js +0 -54
  453. package/lib/tooltip/helpers/overflow-tooltip.d.ts +0 -9
  454. package/lib/tooltip/helpers/overflow-tooltip.js +0 -19
  455. package/lib/tooltip/helpers/renderer.d.ts +0 -8
  456. package/lib/tooltip/helpers/renderer.js +0 -11
  457. package/lib/tooltip/helpers/types.d.ts +0 -23
  458. package/lib/tooltip/helpers/types.js +0 -1
  459. package/lib/tooltip/index.d.ts +0 -232
  460. package/lib/tooltip/index.js +0 -477
  461. package/lib/tooltip/managers/tooltip-manager.d.ts +0 -15
  462. package/lib/tooltip/managers/tooltip-manager.js +0 -140
  463. package/lib/tooltip/themes/halo/dark/index.js +0 -3
  464. package/lib/tooltip/themes/halo/light/index.js +0 -3
  465. package/lib/tooltip/themes/solar/charcoal/index.js +0 -3
  466. package/lib/tooltip/themes/solar/pearl/index.js +0 -3
  467. package/lib/tornado-chart/elements/tornado-chart.d.ts +0 -78
  468. package/lib/tornado-chart/elements/tornado-chart.js +0 -122
  469. package/lib/tornado-chart/elements/tornado-item.d.ts +0 -110
  470. package/lib/tornado-chart/elements/tornado-item.js +0 -207
  471. package/lib/tornado-chart/index.d.ts +0 -2
  472. package/lib/tornado-chart/index.js +0 -2
  473. package/lib/tornado-chart/themes/halo/dark/index.js +0 -6
  474. package/lib/tornado-chart/themes/halo/light/index.js +0 -6
  475. package/lib/tornado-chart/themes/solar/charcoal/index.js +0 -6
  476. package/lib/tornado-chart/themes/solar/pearl/index.js +0 -6
  477. package/lib/tree/elements/tree-item.d.ts +0 -129
  478. package/lib/tree/elements/tree-item.js +0 -238
  479. package/lib/tree/elements/tree.d.ts +0 -203
  480. package/lib/tree/elements/tree.js +0 -414
  481. package/lib/tree/helpers/filter.d.ts +0 -8
  482. package/lib/tree/helpers/filter.js +0 -33
  483. package/lib/tree/helpers/renderer.d.ts +0 -5
  484. package/lib/tree/helpers/renderer.js +0 -33
  485. package/lib/tree/helpers/types.d.ts +0 -25
  486. package/lib/tree/helpers/types.js +0 -1
  487. package/lib/tree/index.d.ts +0 -4
  488. package/lib/tree/index.js +0 -3
  489. package/lib/tree/managers/tree-manager.d.ts +0 -248
  490. package/lib/tree/managers/tree-manager.js +0 -395
  491. package/lib/tree/themes/halo/dark/index.js +0 -7
  492. package/lib/tree/themes/halo/light/index.js +0 -7
  493. package/lib/tree/themes/solar/charcoal/index.js +0 -7
  494. package/lib/tree/themes/solar/pearl/index.js +0 -7
  495. package/lib/tree-select/helpers/types.d.ts +0 -4
  496. package/lib/tree-select/helpers/types.js +0 -1
  497. package/lib/tree-select/index.d.ts +0 -404
  498. package/lib/tree-select/index.js +0 -891
  499. package/lib/tree-select/themes/halo/dark/index.js +0 -11
  500. package/lib/tree-select/themes/halo/light/index.js +0 -11
  501. package/lib/tree-select/themes/solar/charcoal/index.js +0 -11
  502. package/lib/tree-select/themes/solar/pearl/index.js +0 -11
  503. package/lib/version.d.ts +0 -1
  504. package/lib/version.js +0 -1
@@ -1,375 +0,0 @@
1
- import { AnimationTaskRunner } from '@refinitiv-ui/utils/lib/async.js';
2
- import { getOverlays } from './zindex-manager.js';
3
- /**
4
- * Check if two arrays are shallow equal
5
- * @param left Left side array
6
- * @param right Right side array
7
- * @returns true if arrays are equal
8
- */
9
- const equal = (left, right) => {
10
- const length = left.length;
11
- if (length !== right.length) {
12
- return false;
13
- }
14
- for (let i = 0; i < length; i += 1) {
15
- if (left[i] !== right[i]) {
16
- return false;
17
- }
18
- }
19
- return true;
20
- };
21
- /**
22
- * Scroll lock manager singleton is responsible for locking
23
- * all scrollbars apart one in the active overlay
24
- */
25
- export class ScrollLockManager {
26
- constructor() {
27
- this.scrollTop = 0;
28
- this.scrollLeft = 0;
29
- this.lockScroll = false;
30
- /**
31
- * A list of elements that are currently interactive
32
- * aka `pointer-events: auto` applied
33
- */
34
- this.interactiveElements = [];
35
- this.pointerEventsMap = new Map();
36
- this.scrollThrottler = new AnimationTaskRunner();
37
- /**
38
- * Run on scroll event. If onscroll happened as a result of user interaction, restore the original position
39
- * @param event Scroll event
40
- * @returns {void}
41
- */
42
- this.onScroll = (event) => {
43
- const path = event.composedPath();
44
- if (this.lockScroll && !path.includes(this.interactiveElement)) {
45
- this.restoreScrollPosition();
46
- }
47
- };
48
- /**
49
- * Apply scroll lock as a result of user interaction
50
- * @returns {void}
51
- */
52
- this.applyScrollLock = () => {
53
- // this must be applied in order to make the difference between user scroll and system scroll
54
- // otherwise there must not be scroll prevention on resize/orientationchange events
55
- this.scrollThrottler.cancel();
56
- this.lockScroll = true;
57
- };
58
- /**
59
- * Remove scroll lock when user interaction has finished
60
- * @returns {void}
61
- */
62
- this.removeScrollLock = () => {
63
- this.scrollThrottler.schedule(() => {
64
- this.lockScroll = false;
65
- });
66
- };
67
- /**
68
- * Run on wheel event
69
- * If wheel happened as a result of user interaction, restore the original position
70
- * @param event Wheel event
71
- * @returns {void}
72
- */
73
- this.onWheelScroll = (event) => {
74
- if (this.shouldCancelWheel(event)) {
75
- event.preventDefault();
76
- }
77
- };
78
- /**
79
- * Run on touch events.
80
- * If touch happened as a result of user interaction, restore the original position
81
- * @param event Touch event
82
- * @returns {void}
83
- */
84
- this.onTouchScroll = (event) => {
85
- if (event.cancelable && this.shouldCancelTouch(event)) { /* Not all touch events can be cancelled */
86
- event.preventDefault();
87
- }
88
- };
89
- }
90
- /**
91
- * Get a collection of interactive elements
92
- * @param overlay Overlay to check
93
- * @returns interactive elements
94
- */
95
- static getInteractiveElements(overlay) {
96
- if (!overlay) {
97
- return [];
98
- }
99
- // overlay is always included
100
- const interactiveElements = [overlay];
101
- if (overlay.interactiveElements && overlay.interactiveElements.length) {
102
- return interactiveElements.concat(overlay.interactiveElements);
103
- }
104
- if (!overlay.lockPositionTarget && overlay.positionTarget instanceof HTMLElement) {
105
- interactiveElements.push(overlay.positionTarget);
106
- }
107
- return interactiveElements;
108
- }
109
- /**
110
- * The list of active overlays, which participate
111
- * in lock management
112
- */
113
- get overlays() {
114
- return getOverlays().filter(overlay => !overlay.noInteractionLock);
115
- }
116
- /**
117
- * Lock the screen and make top most overlay
118
- * and its position target interactive
119
- * @returns {void}
120
- */
121
- applyLock() {
122
- const topOverlay = this.overlays[0];
123
- const oldInteractiveElements = this.interactiveElements;
124
- const newInteractiveElements = ScrollLockManager.getInteractiveElements(topOverlay);
125
- // do nothing if the list is the same
126
- if (equal(oldInteractiveElements, newInteractiveElements)) {
127
- return;
128
- }
129
- if (!oldInteractiveElements.length && newInteractiveElements.length) {
130
- // lock the screen
131
- this.saveScrollPosition();
132
- this.lockEvents();
133
- this.applyLockBackdrop();
134
- }
135
- else if (oldInteractiveElements.length && !newInteractiveElements.length) {
136
- // unlock the screen
137
- this.unlockEvents();
138
- this.removeLockBackdrop();
139
- }
140
- // restore overlay events to original value
141
- for (let i = 0; i < oldInteractiveElements.length; i += 1) {
142
- this.restorePointerEvents(oldInteractiveElements[i]);
143
- }
144
- // make overlay interactive by applying pointer-events: auto;
145
- for (let i = 0; i < newInteractiveElements.length; i += 1) {
146
- this.setPointerEvents(newInteractiveElements[i]);
147
- }
148
- this.interactiveElements = newInteractiveElements;
149
- }
150
- /**
151
- * Set pointer events style tag
152
- * @param el Element to unlock
153
- * @param [value=auto] Value of pointer events
154
- * @returns {void}
155
- */
156
- setPointerEvents(el, value = 'auto') {
157
- if (el) {
158
- this.pointerEventsMap.set(el, el.style.pointerEvents);
159
- el.style.setProperty('pointer-events', value);
160
- }
161
- }
162
- /**
163
- * Restore pointer events style tag
164
- * @param el Element to restore
165
- * @returns {void}
166
- */
167
- restorePointerEvents(el) {
168
- if (el) {
169
- const pointerEvents = this.pointerEventsMap.get(el);
170
- this.pointerEventsMap.delete(el);
171
- if (pointerEvents) {
172
- el.style.setProperty('pointer-events', pointerEvents);
173
- }
174
- else {
175
- el.style.removeProperty('pointer-events');
176
- }
177
- }
178
- }
179
- /**
180
- * Get the top most interactive element
181
- * @returns element
182
- */
183
- get interactiveElement() {
184
- return this.interactiveElements[this.interactiveElements.length - 1];
185
- }
186
- /**
187
- * Memoize the scroll position of the outside scrolling element.
188
- * @returns {void}
189
- */
190
- saveScrollPosition() {
191
- if (document.scrollingElement) {
192
- this.scrollTop = document.scrollingElement.scrollTop;
193
- this.scrollLeft = document.scrollingElement.scrollLeft;
194
- }
195
- else {
196
- // Since we don't know if is the body or html, get max.
197
- this.scrollTop = Math.max(document.documentElement.scrollTop, document.body.scrollTop);
198
- this.scrollLeft = Math.max(document.documentElement.scrollLeft, document.body.scrollLeft);
199
- }
200
- }
201
- /**
202
- * Resets the scroll position of the outside scrolling element.
203
- * @returns {void}
204
- */
205
- restoreScrollPosition() {
206
- if (document.scrollingElement) {
207
- document.scrollingElement.scrollTop = this.scrollTop;
208
- document.scrollingElement.scrollLeft = this.scrollLeft;
209
- }
210
- else {
211
- // Since we don't know if is the body or html, set both.
212
- document.documentElement.scrollTop = document.body.scrollTop = this.scrollTop;
213
- document.documentElement.scrollLeft = document.body.scrollLeft = this.scrollLeft;
214
- }
215
- }
216
- /**
217
- * Listen for scroll and wheel events, to apply the correct lock logic
218
- * @returns {void}
219
- */
220
- lockEvents() {
221
- const wheelEventConf = {
222
- capture: true,
223
- passive: false
224
- };
225
- document.addEventListener('wheel', this.onWheelScroll, wheelEventConf);
226
- document.addEventListener('touchstart', this.onTouchScroll, wheelEventConf);
227
- document.addEventListener('touchmove', this.onTouchScroll, wheelEventConf);
228
- document.addEventListener('touchend', this.onTouchScroll, wheelEventConf);
229
- const scrollEventConf = {
230
- capture: true,
231
- passive: true /* passive improves scrolling performance. See https://developers.google.com/web/tools/lighthouse/audits/passive-event-listeners how. This does not work in IE11 */
232
- };
233
- document.addEventListener('scroll', this.onScroll, scrollEventConf);
234
- document.addEventListener('mousedown', this.applyScrollLock, scrollEventConf);
235
- document.addEventListener('touchstart', this.applyScrollLock, scrollEventConf);
236
- document.addEventListener('keydown', this.applyScrollLock, scrollEventConf);
237
- document.addEventListener('mouseup', this.removeScrollLock, scrollEventConf);
238
- document.addEventListener('touchend', this.removeScrollLock, scrollEventConf);
239
- document.addEventListener('keyup', this.removeScrollLock, scrollEventConf);
240
- }
241
- /**
242
- * Remove scroll and wheel listeners
243
- * @returns {void}
244
- */
245
- unlockEvents() {
246
- const wheelEventConf = {
247
- capture: true,
248
- passive: false
249
- };
250
- document.removeEventListener('wheel', this.onWheelScroll, wheelEventConf);
251
- document.removeEventListener('touchstart', this.onTouchScroll, wheelEventConf);
252
- document.removeEventListener('touchmove', this.onTouchScroll, wheelEventConf);
253
- document.removeEventListener('touchend', this.onTouchScroll, wheelEventConf);
254
- const scrollEventConf = {
255
- capture: true,
256
- passive: true
257
- };
258
- document.removeEventListener('scroll', this.onScroll, scrollEventConf);
259
- document.removeEventListener('mousedown', this.applyScrollLock, scrollEventConf);
260
- document.removeEventListener('touchstart', this.applyScrollLock, scrollEventConf);
261
- document.removeEventListener('keydown', this.applyScrollLock, scrollEventConf);
262
- document.removeEventListener('mouseup', this.removeScrollLock, scrollEventConf);
263
- document.removeEventListener('touchend', this.removeScrollLock, scrollEventConf);
264
- document.removeEventListener('keyup', this.removeScrollLock, scrollEventConf);
265
- }
266
- /**
267
- * Add locking backdrop and prevent pointer events on document
268
- * @returns {void}
269
- */
270
- applyLockBackdrop() {
271
- this.setPointerEvents(document.documentElement, 'none'); /* prevent scrolling on all other scrollable elements */
272
- }
273
- /**
274
- * Remove locking backdrop and prevent pointer events on document
275
- * @returns {void}
276
- */
277
- removeLockBackdrop() {
278
- this.restorePointerEvents(document.documentElement);
279
- }
280
- /**
281
- * Check if wheel event should be cancelled
282
- * @param event Touch event
283
- * @return shouldCancelTouch True if the touch event should be cancelled
284
- */
285
- shouldCancelTouch(event) {
286
- const { targetTouches, type, target } = event;
287
- if (type === 'touchend') {
288
- this.lastTouchPosition = undefined;
289
- return false;
290
- }
291
- // store touch position
292
- if (type === 'touchstart') {
293
- const touch = targetTouches[0];
294
- this.lastTouchPosition = {
295
- pageX: touch.pageX,
296
- pageY: touch.pageY,
297
- target
298
- };
299
- return false;
300
- }
301
- if (!this.lastTouchPosition) {
302
- return false;
303
- }
304
- // 'touchmove'
305
- const touch = targetTouches[0];
306
- const deltaX = this.lastTouchPosition.pageX - touch.pageX;
307
- const deltaY = this.lastTouchPosition.pageY - touch.pageY;
308
- return this.shouldCancelScroll(event, deltaY, deltaX);
309
- }
310
- /**
311
- * Check if wheel event should be cancelled
312
- * @param event Wheel event
313
- * @return shouldCancelWheel True if the scroll event should be cancelled
314
- */
315
- shouldCancelWheel(event) {
316
- const { deltaX, deltaY } = event;
317
- return this.shouldCancelScroll(event, deltaY, deltaX);
318
- }
319
- /**
320
- * Check if wheel event should be cancelled
321
- * @param event Wheel event
322
- * @param deltaY Scroll delta on Y axis
323
- * @param deltaX Scroll delta on X axis
324
- * @return shouldCancel True if the event should be cancelled
325
- */
326
- shouldCancelScroll(event, deltaY, deltaX) {
327
- const isVerticalScroll = Math.abs(deltaY) >= Math.abs(deltaX);
328
- const path = [...event.composedPath()];
329
- let idx = -1;
330
- const interactiveElements = [...this.interactiveElements];
331
- // calculate if the wheel event should be stopped according to locked
332
- while (idx === -1 && interactiveElements.length) {
333
- idx = path.indexOf(interactiveElements.pop());
334
- }
335
- // scroll happened outside the locked container
336
- if (idx === -1) {
337
- return true;
338
- }
339
- const checkSlice = path.slice(0, idx + 1);
340
- const canScroll = isVerticalScroll ? (element) => {
341
- const style = window.getComputedStyle(element);
342
- if (style.overflowY === 'scroll' || style.overflowY === 'auto') {
343
- // delta < 0 is scroll up, delta > 0 is scroll down.
344
- return deltaY < 0 ? element.scrollTop > 0 : element.scrollTop < element.scrollHeight - element.clientHeight;
345
- }
346
- return false;
347
- } : (element) => {
348
- const style = window.getComputedStyle(element);
349
- if (style.overflowX === 'scroll' || style.overflowX === 'auto') {
350
- // delta < 0 is scroll left, delta > 0 is scroll right.
351
- return deltaX < 0 ? element.scrollLeft > 0 : element.scrollLeft < element.scrollWidth - element.clientWidth;
352
- }
353
- return false;
354
- };
355
- while (checkSlice.length) {
356
- const node = checkSlice.shift();
357
- if (node && node.nodeType !== Node.ELEMENT_NODE) {
358
- continue;
359
- }
360
- if (canScroll(node)) {
361
- return false;
362
- }
363
- }
364
- return true;
365
- }
366
- }
367
- const locker = new ScrollLockManager(); /* Locker is a singleton */
368
- /**
369
- * Lock the screen and make top most overlay
370
- * and its position target interactive
371
- * @returns {void}
372
- */
373
- export const applyLock = () => {
374
- locker.applyLock();
375
- };
@@ -1,93 +0,0 @@
1
- import type { ViewAreaInfo } from '../helpers/types';
2
- import type { Overlay } from '../elements/overlay';
3
- import '../elements/overlay-viewport.js';
4
- /**
5
- * Viewport manager singleton is responsible for getting
6
- * viewport sizes and reacting on viewport changes
7
- * @returns {void}
8
- */
9
- export declare class ViewportManager {
10
- private registry;
11
- private viewRegistry;
12
- private refitFrame;
13
- private screenViewport;
14
- /**
15
- * Refit all overlays
16
- * @returns {void}
17
- */
18
- private callRefit;
19
- /**
20
- * Create overlay-viewport and insert it before the provided node
21
- * @param insertBefore A node to insert before
22
- * @returns created overlay-viewport
23
- */
24
- private createViewport;
25
- /**
26
- * Remove overlay-viewport from DOM tree
27
- * @param viewport overlay-viewport to remove
28
- * @returns {void}
29
- */
30
- private removeViewport;
31
- /**
32
- * Set screen sizing viewport
33
- * @returns void
34
- */
35
- private setScreenViewport;
36
- /**
37
- * Removes screen sizing viewport
38
- * @returns void
39
- */
40
- private removeScreenViewport;
41
- /**
42
- * Reset sizing for viewport
43
- * @param viewport Viewport to reset sizing for
44
- * @returns {void}
45
- */
46
- private resetViewportSizing;
47
- getViewAreaInfo(overlay: Overlay): ViewAreaInfo;
48
- register(overlay: Overlay): void;
49
- deregister(overlay: Overlay): void;
50
- /**
51
- * @returns count of elements inside manager
52
- */
53
- size(): number;
54
- /**
55
- * applies deregister for each element in registry
56
- * @returns {void}
57
- */
58
- clear(): void;
59
- }
60
- /**
61
- * Register the new overlay. Must be run to let start behaviour to listen for viewport events
62
- * @param overlay Overlay
63
- * @returns {void}
64
- */
65
- export declare const register: (overlay: Overlay) => void;
66
- /**
67
- * Deregister the overlay
68
- * @param overlay Overlay
69
- * @returns {void}
70
- */
71
- export declare const deregister: (overlay: Overlay) => void;
72
- /**
73
- * @typedef {Object} ViewAreaInfo
74
- * @property {Number} viewHeight - The height of view area
75
- * @property {Number} viewWidth - The width of view area
76
- * @property {Number} [offsetTop=0] - iOS only the view area vertical offset
77
- * @property {Number} [offsetLeft=0] - iOS only the view area horizontal offset
78
- */
79
- /**
80
- * Get sizing information of the viewport for overlay
81
- * @param overlay Overlay to get info for
82
- * @return area info
83
- */
84
- export declare const getViewAreaInfo: (overlay: Overlay) => ViewAreaInfo;
85
- /**
86
- * @returns count of elements inside manager
87
- */
88
- export declare const size: () => number;
89
- /**
90
- * removes all elements from registry
91
- * @returns {void}
92
- */
93
- export declare const clear: () => void;
@@ -1,211 +0,0 @@
1
- import { AnimationTaskRunner } from '@refinitiv-ui/utils/lib/async.js';
2
- import '../elements/overlay-viewport.js';
3
- /**
4
- * Default values for area info
5
- */
6
- const viewAreaInfo = {
7
- viewHeight: 0,
8
- viewWidth: 0,
9
- offsetTop: 0,
10
- offsetLeft: 0,
11
- offsetBottom: 0,
12
- offsetRight: 0,
13
- viewOffsetTop: 0,
14
- viewOffsetLeft: 0
15
- };
16
- // Used to capture scroll events
17
- const ScrollEventOptions = { capture: true, passive: true };
18
- /**
19
- * Viewport manager singleton is responsible for getting
20
- * viewport sizes and reacting on viewport changes
21
- * @returns {void}
22
- */
23
- export class ViewportManager {
24
- constructor() {
25
- this.registry = new Map();
26
- this.viewRegistry = new WeakMap();
27
- this.refitFrame = new AnimationTaskRunner();
28
- this.screenViewport = null;
29
- /**
30
- * Refit all overlays
31
- * @returns {void}
32
- */
33
- this.callRefit = () => {
34
- this.refitFrame.schedule(() => {
35
- this.registry.forEach((viewport, overlay) => {
36
- this.resetViewportSizing(viewport);
37
- overlay.fit();
38
- });
39
- });
40
- };
41
- }
42
- /**
43
- * Create overlay-viewport and insert it before the provided node
44
- * @param insertBefore A node to insert before
45
- * @returns created overlay-viewport
46
- */
47
- createViewport(insertBefore) {
48
- var _a;
49
- const viewport = document.createElement('ef-overlay-viewport');
50
- (_a = insertBefore === null || insertBefore === void 0 ? void 0 : insertBefore.parentNode) === null || _a === void 0 ? void 0 : _a.insertBefore(viewport, insertBefore);
51
- return viewport;
52
- }
53
- /**
54
- * Remove overlay-viewport from DOM tree
55
- * @param viewport overlay-viewport to remove
56
- * @returns {void}
57
- */
58
- removeViewport(viewport) {
59
- var _a;
60
- (_a = viewport.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(viewport);
61
- }
62
- /**
63
- * Set screen sizing viewport
64
- * @returns void
65
- */
66
- setScreenViewport() {
67
- if (!this.screenViewport) {
68
- this.screenViewport = this.createViewport(document.body);
69
- }
70
- }
71
- /**
72
- * Removes screen sizing viewport
73
- * @returns void
74
- */
75
- removeScreenViewport() {
76
- if (this.screenViewport) {
77
- this.removeViewport(this.screenViewport);
78
- this.screenViewport = null;
79
- }
80
- }
81
- /**
82
- * Reset sizing for viewport
83
- * @param viewport Viewport to reset sizing for
84
- * @returns {void}
85
- */
86
- resetViewportSizing(viewport) {
87
- if (!this.screenViewport) {
88
- return;
89
- }
90
- const screenRect = this.screenViewport.getBoundingClientRect();
91
- // since screenViewport is applied on html element, it does not include body zoom
92
- // Zoom is a legacy feature and must not be used by any means.
93
- // Kept here for compatibility with old apps
94
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
95
- // @ts-ignore
96
- const zoom = parseFloat(window.getComputedStyle(document.body).zoom);
97
- const screenHeight = screenRect.height / zoom;
98
- const screenWidth = screenRect.width / zoom;
99
- const { top, left, bottom, right } = viewport.getBoundingClientRect();
100
- const offsetTop = top < 0 ? Math.abs(top) : 0;
101
- const offsetLeft = left < 0 ? Math.abs(left) : 0;
102
- const offsetBottom = bottom > screenHeight ? bottom - screenHeight : 0;
103
- const offsetRight = right > screenWidth ? right - screenWidth : 0;
104
- const viewHeight = viewport.offsetHeight - offsetTop - offsetBottom;
105
- const viewWidth = viewport.offsetWidth - offsetLeft - offsetRight;
106
- this.viewRegistry.set(viewport, {
107
- viewOffsetTop: top < 0 ? top + offsetTop : top,
108
- viewOffsetLeft: left < 0 ? left + offsetLeft : left,
109
- viewHeight: viewHeight < 0 ? 0 : viewHeight,
110
- viewWidth: viewWidth < 0 ? 0 : viewWidth,
111
- offsetTop,
112
- offsetLeft,
113
- offsetBottom,
114
- offsetRight
115
- });
116
- }
117
- getViewAreaInfo(overlay) {
118
- const viewport = this.registry.get(overlay);
119
- if (!viewport) {
120
- return viewAreaInfo;
121
- }
122
- if (!this.viewRegistry.has(viewport)) {
123
- this.resetViewportSizing(viewport);
124
- }
125
- return this.viewRegistry.get(viewport) || viewAreaInfo;
126
- }
127
- register(overlay) {
128
- if (!this.registry.size) {
129
- window.addEventListener('resize', this.callRefit);
130
- window.addEventListener('orientationchange', this.callRefit);
131
- window.addEventListener('scroll', this.callRefit, ScrollEventOptions);
132
- this.setScreenViewport();
133
- }
134
- if (!this.registry.has(overlay)) {
135
- const viewport = this.createViewport(overlay);
136
- this.registry.set(overlay, viewport);
137
- viewport.addEventListener('resize', () => overlay.fit());
138
- }
139
- }
140
- deregister(overlay) {
141
- if (this.registry.has(overlay)) {
142
- const viewport = this.registry.get(overlay);
143
- viewport && this.removeViewport(viewport);
144
- this.registry.delete(overlay);
145
- }
146
- if (!this.registry.size) {
147
- window.removeEventListener('resize', this.callRefit);
148
- window.removeEventListener('orientationchange', this.callRefit);
149
- window.removeEventListener('scroll', this.callRefit, ScrollEventOptions);
150
- this.removeScreenViewport();
151
- }
152
- }
153
- /**
154
- * @returns count of elements inside manager
155
- */
156
- size() {
157
- return this.registry.size;
158
- }
159
- /**
160
- * applies deregister for each element in registry
161
- * @returns {void}
162
- */
163
- clear() {
164
- this.registry.forEach((viewport, overlay) => this.deregister(overlay));
165
- }
166
- }
167
- const viewportManager = new ViewportManager();
168
- /**
169
- * Register the new overlay. Must be run to let start behaviour to listen for viewport events
170
- * @param overlay Overlay
171
- * @returns {void}
172
- */
173
- export const register = (overlay) => {
174
- viewportManager.register(overlay);
175
- };
176
- /**
177
- * Deregister the overlay
178
- * @param overlay Overlay
179
- * @returns {void}
180
- */
181
- export const deregister = (overlay) => {
182
- viewportManager.deregister(overlay);
183
- };
184
- /**
185
- * @typedef {Object} ViewAreaInfo
186
- * @property {Number} viewHeight - The height of view area
187
- * @property {Number} viewWidth - The width of view area
188
- * @property {Number} [offsetTop=0] - iOS only the view area vertical offset
189
- * @property {Number} [offsetLeft=0] - iOS only the view area horizontal offset
190
- */
191
- /**
192
- * Get sizing information of the viewport for overlay
193
- * @param overlay Overlay to get info for
194
- * @return area info
195
- */
196
- export const getViewAreaInfo = (overlay) => {
197
- return viewportManager.getViewAreaInfo(overlay);
198
- };
199
- /**
200
- * @returns count of elements inside manager
201
- */
202
- export const size = () => {
203
- return viewportManager.size();
204
- };
205
- /**
206
- * removes all elements from registry
207
- * @returns {void}
208
- */
209
- export const clear = () => {
210
- viewportManager.clear();
211
- };