@heartlandone/vega 1.45.0 → 1.46.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 (262) hide show
  1. package/dist/cjs/componentLoadRequired-bcc5c8a1.js +48 -0
  2. package/dist/cjs/{designToken-a50a38a4.js → designToken-14ac9337.js} +18 -2
  3. package/dist/cjs/{elementAppender-df5ed3ca.js → elementAppender-d84f358b.js} +59 -42
  4. package/dist/cjs/{formFieldControllerSlimmer-bb4530a5.js → formFieldControllerSlimmer-4bd62d43.js} +2 -2
  5. package/dist/cjs/index-0ca30e90.js +4 -0
  6. package/dist/cjs/index.cjs.js +5 -4
  7. package/dist/cjs/{injectElementAppender-406fccd8.js → injectElementAppender-cd0943d5.js} +1 -1
  8. package/dist/cjs/{injectKeyboardManager-e708eae2.js → injectKeyboardManager-ee7afa46.js} +1 -1
  9. package/dist/cjs/{keyboardManager-51dab713.js → keyboardManager-6995c418.js} +2 -2
  10. package/dist/cjs/keyboardManagerSlimmer-cfbaaf36.js +210 -0
  11. package/dist/cjs/{legendInputProcessor-b6868e9e.js → legendInputProcessor-c96488db.js} +1 -1
  12. package/dist/cjs/loader.cjs.js +1 -1
  13. package/dist/cjs/{map-to-component-method-a3eb6fe7.js → map-to-component-method-30d54832.js} +1 -1
  14. package/dist/cjs/{pageResizeObserverSlimmer-7b169e3e.js → pageResizeObserverSlimmer-fc71e29c.js} +2 -2
  15. package/dist/cjs/{responsiveFormatFacade-0277ef3c.js → responsiveFormatFacade-82b43462.js} +1 -1
  16. package/dist/cjs/{subStateObserverSlimmer-dd9c5c1e.js → subStateObserverSlimmer-23603475.js} +2 -2
  17. package/dist/cjs/{typeGuard-9a59ac0e.js → typeGuard-f648ca22.js} +11 -0
  18. package/dist/cjs/{typography-9f9d8d04.js → typography-358013af.js} +3 -0
  19. package/dist/cjs/{utils-44d91786.js → utils-fbec8495.js} +1 -1
  20. package/dist/cjs/vega-accordion.cjs.entry.js +6 -5
  21. package/dist/cjs/vega-app-header-button.cjs.entry.js +7 -6
  22. package/dist/cjs/vega-badge.cjs.entry.js +7 -6
  23. package/dist/cjs/vega-banner_30.cjs.entry.js +1608 -850
  24. package/dist/cjs/vega-bar-chart.cjs.entry.js +3 -3
  25. package/dist/cjs/vega-box.cjs.entry.js +4 -3
  26. package/dist/cjs/vega-breadcrumb.cjs.entry.js +1 -1
  27. package/dist/cjs/vega-button-circle.cjs.entry.js +4 -3
  28. package/dist/cjs/vega-chip.cjs.entry.js +7 -6
  29. package/dist/cjs/vega-color-picker.cjs.entry.js +3 -3
  30. package/dist/cjs/vega-combo-box.cjs.entry.js +7 -6
  31. package/dist/cjs/vega-dialog.cjs.entry.js +3 -3
  32. package/dist/cjs/vega-dropdown.cjs.entry.js +73 -261
  33. package/dist/cjs/vega-field-error.cjs.entry.js +2 -2
  34. package/dist/cjs/vega-font.cjs.entry.js +255 -0
  35. package/dist/cjs/vega-form.cjs.entry.js +3 -3
  36. package/dist/cjs/vega-image-uploader.cjs.entry.js +3 -3
  37. package/dist/cjs/vega-input-credit-card.cjs.entry.js +3 -3
  38. package/dist/cjs/vega-left-nav-group.cjs.entry.js +3 -3
  39. package/dist/cjs/vega-left-nav-link.cjs.entry.js +3 -3
  40. package/dist/cjs/vega-left-nav-section.cjs.entry.js +1 -1
  41. package/dist/cjs/vega-left-nav.cjs.entry.js +7 -5
  42. package/dist/cjs/vega-loading-indicator.cjs.entry.js +6 -5
  43. package/dist/cjs/vega-nav-card.cjs.entry.js +7 -6
  44. package/dist/cjs/{vega-nav-list-renderer-1d6ebd6c.js → vega-nav-list-renderer-91ab6db7.js} +1 -1
  45. package/dist/cjs/{vega-nav-observer-slimmer-3e0b070c.js → vega-nav-observer-slimmer-26504d45.js} +2 -2
  46. package/dist/cjs/vega-pie-chart.cjs.entry.js +2 -2
  47. package/dist/cjs/vega-popover.cjs.entry.js +7 -6
  48. package/dist/cjs/{vega-slimmer-5503957a.js → vega-slimmer-c554cd02.js} +7 -2
  49. package/dist/cjs/vega-stepper.cjs.entry.js +3 -3
  50. package/dist/cjs/vega-table-cell.cjs.entry.js +3 -2
  51. package/dist/cjs/{vega-table-expand-row-controller-85a6f816.js → vega-table-expand-row-controller-e17f9aef.js} +2 -2
  52. package/dist/cjs/vega-table-expand-row.cjs.entry.js +8 -7
  53. package/dist/cjs/vega-table-head-cell.cjs.entry.js +3 -2
  54. package/dist/cjs/vega-table-head-row.cjs.entry.js +5 -4
  55. package/dist/cjs/vega-table-head.cjs.entry.js +3 -3
  56. package/dist/cjs/vega-table-row.cjs.entry.js +3 -3
  57. package/dist/cjs/vega-textarea.cjs.entry.js +3 -3
  58. package/dist/cjs/vega-virtual-scroll.cjs.entry.js +2 -2
  59. package/dist/cjs/vega.cjs.js +1 -1
  60. package/dist/cjs/{yAxisInputProcessor-65db6647.js → yAxisInputProcessor-b101f254.js} +1 -1
  61. package/dist/collection/collection-manifest.json +1 -0
  62. package/dist/collection/components/vega-box/vega-box.js +1 -1
  63. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.js +217 -0
  64. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-element-appender-controller.js +33 -0
  65. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-format-controller.js +109 -0
  66. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-keyboard-controller.js +43 -0
  67. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-mobile-controller.js +51 -0
  68. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-value-controller.js +167 -0
  69. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.js +45 -0
  70. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +329 -0
  71. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-range-input-renderer.js +114 -0
  72. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.js +105 -0
  73. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-single-input-renderer.js +76 -0
  74. package/dist/collection/components/vega-date-picker/vega-date-picker.js +88 -569
  75. package/dist/collection/components/vega-dropdown/vega-dropdown.js +10 -4
  76. package/dist/collection/components/vega-font/slimmers/controllers/vega-font-as-controller.js +130 -0
  77. package/dist/collection/components/vega-font/slimmers/controllers/vega-font-variant-controller.js +31 -0
  78. package/dist/collection/components/vega-font/vega-font.js +176 -0
  79. package/dist/collection/components/vega-nav/vega-left-nav/vega-left-nav.js +4 -2
  80. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +4 -0
  81. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-scroll-container-renderer.js +9 -1
  82. package/dist/collection/components/vega-tooltip/vega-tooltip.js +10 -4
  83. package/dist/collection/constants/tokens/typography.js +2 -0
  84. package/dist/collection/decorators/method-decorators/componentLoadRequired.js +3 -0
  85. package/dist/collection/helpers/slimmers/elementAppenderSlimmer.js +8 -4
  86. package/dist/collection/helpers/ui/elementAppender.js +13 -10
  87. package/dist/collection/helpers/ui/test/elementAppender.test.js +0 -12
  88. package/dist/collection/types/typeGuard.js +10 -0
  89. package/dist/collection/utils/designToken.js +16 -1
  90. package/dist/collection/utils/keyboardManager.js +2 -2
  91. package/dist/collection/utils/position.js +44 -30
  92. package/dist/collection/utils/test/designToken.test.js +10 -1
  93. package/dist/esm/componentLoadRequired-ec47331b.js +46 -0
  94. package/dist/esm/{designToken-bc49a744.js → designToken-4019f77f.js} +18 -3
  95. package/dist/esm/{elementAppender-8f534fce.js → elementAppender-287099f2.js} +59 -42
  96. package/dist/esm/{formFieldControllerSlimmer-fc969009.js → formFieldControllerSlimmer-0118a14e.js} +2 -2
  97. package/dist/esm/index-15c74515.js +4 -0
  98. package/dist/esm/index.js +4 -4
  99. package/dist/esm/{injectElementAppender-fc6c1a33.js → injectElementAppender-980f853b.js} +1 -1
  100. package/dist/esm/{injectKeyboardManager-b04dcd12.js → injectKeyboardManager-f6303f75.js} +1 -1
  101. package/dist/esm/{keyboardManager-ca3a098d.js → keyboardManager-f48b5ece.js} +2 -2
  102. package/dist/esm/keyboardManagerSlimmer-f96a0379.js +207 -0
  103. package/dist/esm/{legendInputProcessor-88683efd.js → legendInputProcessor-b308cd2a.js} +1 -1
  104. package/dist/esm/loader.js +1 -1
  105. package/dist/esm/{map-to-component-method-0b08bda5.js → map-to-component-method-8e440665.js} +1 -1
  106. package/dist/esm/{pageResizeObserverSlimmer-54148c40.js → pageResizeObserverSlimmer-e4056f74.js} +2 -2
  107. package/dist/esm/{responsiveFormatFacade-45e09417.js → responsiveFormatFacade-74de412c.js} +1 -1
  108. package/dist/esm/{subStateObserverSlimmer-26efc0f7.js → subStateObserverSlimmer-2c82ce9b.js} +2 -2
  109. package/dist/esm/{typeGuard-31f6fdb6.js → typeGuard-9fa9d8db.js} +11 -1
  110. package/dist/esm/{typography-bdd6cc3a.js → typography-8a180b9c.js} +3 -1
  111. package/dist/esm/{utils-79b4b2bf.js → utils-bb89172e.js} +1 -1
  112. package/dist/esm/vega-accordion.entry.js +6 -5
  113. package/dist/esm/vega-app-header-button.entry.js +7 -6
  114. package/dist/esm/vega-badge.entry.js +7 -6
  115. package/dist/esm/vega-banner_30.entry.js +1602 -844
  116. package/dist/esm/vega-bar-chart.entry.js +3 -3
  117. package/dist/esm/vega-box.entry.js +4 -3
  118. package/dist/esm/vega-breadcrumb.entry.js +1 -1
  119. package/dist/esm/vega-button-circle.entry.js +4 -3
  120. package/dist/esm/vega-chip.entry.js +7 -6
  121. package/dist/esm/vega-color-picker.entry.js +3 -3
  122. package/dist/esm/vega-combo-box.entry.js +7 -6
  123. package/dist/esm/vega-dialog.entry.js +3 -3
  124. package/dist/esm/vega-dropdown.entry.js +72 -260
  125. package/dist/esm/vega-field-error.entry.js +2 -2
  126. package/dist/esm/vega-font.entry.js +251 -0
  127. package/dist/esm/vega-form.entry.js +3 -3
  128. package/dist/esm/vega-image-uploader.entry.js +3 -3
  129. package/dist/esm/vega-input-credit-card.entry.js +3 -3
  130. package/dist/esm/vega-left-nav-group.entry.js +3 -3
  131. package/dist/esm/vega-left-nav-link.entry.js +3 -3
  132. package/dist/esm/vega-left-nav-section.entry.js +1 -1
  133. package/dist/esm/vega-left-nav.entry.js +7 -5
  134. package/dist/esm/vega-loading-indicator.entry.js +6 -5
  135. package/dist/esm/vega-nav-card.entry.js +7 -6
  136. package/dist/esm/{vega-nav-list-renderer-b9e2dc21.js → vega-nav-list-renderer-cadf35a8.js} +1 -1
  137. package/dist/esm/{vega-nav-observer-slimmer-4c87c710.js → vega-nav-observer-slimmer-ba013872.js} +2 -2
  138. package/dist/esm/vega-pie-chart.entry.js +2 -2
  139. package/dist/esm/vega-popover.entry.js +7 -6
  140. package/dist/esm/{vega-slimmer-5e35763f.js → vega-slimmer-29990e97.js} +7 -2
  141. package/dist/esm/vega-stepper.entry.js +3 -3
  142. package/dist/esm/vega-table-cell.entry.js +3 -2
  143. package/dist/esm/{vega-table-expand-row-controller-7d664736.js → vega-table-expand-row-controller-97807c41.js} +2 -2
  144. package/dist/esm/vega-table-expand-row.entry.js +8 -7
  145. package/dist/esm/vega-table-head-cell.entry.js +3 -2
  146. package/dist/esm/vega-table-head-row.entry.js +5 -4
  147. package/dist/esm/vega-table-head.entry.js +3 -3
  148. package/dist/esm/vega-table-row.entry.js +3 -3
  149. package/dist/esm/vega-textarea.entry.js +3 -3
  150. package/dist/esm/vega-virtual-scroll.entry.js +2 -2
  151. package/dist/esm/vega.js +1 -1
  152. package/dist/esm/{yAxisInputProcessor-3c9fc26f.js → yAxisInputProcessor-ad920363.js} +1 -1
  153. package/dist/types/components/vega-box/vega-box.d.ts +2 -2
  154. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.d.ts +96 -0
  155. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-element-appender-controller.d.ts +12 -0
  156. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-format-controller.d.ts +47 -0
  157. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-keyboard-controller.d.ts +10 -0
  158. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-mobile-controller.d.ts +18 -0
  159. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-value-controller.d.ts +51 -0
  160. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.d.ts +15 -0
  161. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +92 -0
  162. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-range-input-renderer.d.ts +30 -0
  163. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.d.ts +33 -0
  164. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-single-input-renderer.d.ts +22 -0
  165. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +30 -173
  166. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +8 -2
  167. package/dist/types/components/vega-font/slimmers/controllers/vega-font-as-controller.d.ts +45 -0
  168. package/dist/types/components/vega-font/slimmers/controllers/vega-font-variant-controller.d.ts +14 -0
  169. package/dist/types/components/vega-font/types.d.ts +18 -0
  170. package/dist/types/components/vega-font/vega-font.d.ts +34 -0
  171. package/dist/types/components/vega-nav/vega-left-nav/vega-left-nav.d.ts +3 -1
  172. package/dist/types/components/vega-tooltip/vega-tooltip.d.ts +8 -2
  173. package/dist/types/components.d.ts +61 -15
  174. package/dist/types/constants/tokens/typography.d.ts +1 -0
  175. package/dist/types/helpers/slimmers/elementAppenderSlimmer.d.ts +2 -1
  176. package/dist/types/helpers/ui/elementAppender.d.ts +2 -2
  177. package/dist/types/types/designToken.type.d.ts +2 -2
  178. package/dist/types/types/typeGuard.d.ts +7 -0
  179. package/dist/types/types/ui.type.d.ts +14 -6
  180. package/dist/types/utils/designToken.d.ts +7 -0
  181. package/dist/vega/index.esm.js +1 -1
  182. package/dist/vega/{p-2507bb58.js → p-03213578.js} +1 -1
  183. package/dist/vega/p-0893ce13.js +1 -0
  184. package/dist/vega/p-0b11c88c.entry.js +1 -0
  185. package/dist/vega/{p-c0351c6b.js → p-0e61cb4b.js} +1 -1
  186. package/dist/vega/{p-ef37e69d.entry.js → p-10720e5f.entry.js} +1 -1
  187. package/dist/vega/{p-3a1bb63b.js → p-15467a8f.js} +1 -1
  188. package/dist/vega/p-171a59c3.entry.js +1 -0
  189. package/dist/vega/{p-dc3e33ef.entry.js → p-1f46bbda.entry.js} +1 -1
  190. package/dist/vega/{p-7a328b46.js → p-1f4b1bce.js} +1 -1
  191. package/dist/vega/{p-94ef8490.js → p-20518e6f.js} +1 -1
  192. package/dist/vega/{p-a62c7ce2.js → p-253205a1.js} +1 -1
  193. package/dist/vega/{p-0842e8e0.js → p-25d599f5.js} +1 -1
  194. package/dist/vega/{p-a6a4c140.entry.js → p-2ae1c0c8.entry.js} +1 -1
  195. package/dist/vega/{p-b14ec834.js → p-2f8c8179.js} +1 -1
  196. package/dist/vega/{p-81faec2d.entry.js → p-33e1e6fe.entry.js} +1 -1
  197. package/dist/vega/p-3a685161.js +1 -0
  198. package/dist/vega/p-3aedf3a6.entry.js +1 -0
  199. package/dist/vega/{p-8f516f09.js → p-3b88fed9.js} +1 -1
  200. package/dist/vega/p-3bdad71c.entry.js +1 -0
  201. package/dist/vega/{p-e5bdd782.entry.js → p-3cf12406.entry.js} +1 -1
  202. package/dist/vega/{p-7cf33163.entry.js → p-484c3e7a.entry.js} +1 -1
  203. package/dist/vega/p-4c8a7b23.js +1 -0
  204. package/dist/vega/p-4c93edb3.entry.js +1 -0
  205. package/dist/vega/{p-b5dcf393.entry.js → p-59fd43f9.entry.js} +1 -1
  206. package/dist/vega/p-62637d1b.entry.js +1 -0
  207. package/dist/vega/{p-c7011ef2.entry.js → p-664e92a2.entry.js} +1 -1
  208. package/dist/vega/p-71b78897.entry.js +1 -0
  209. package/dist/vega/{p-0894d383.entry.js → p-737bc0c6.entry.js} +1 -1
  210. package/dist/vega/{p-33763a56.entry.js → p-741eea3b.entry.js} +1 -1
  211. package/dist/vega/{p-c668ecf9.js → p-7934e094.js} +1 -1
  212. package/dist/vega/p-7e8b8765.entry.js +13 -0
  213. package/dist/vega/p-878ca906.entry.js +1 -0
  214. package/dist/vega/p-8c414f6f.js +1 -0
  215. package/dist/vega/{p-9926b80a.js → p-9d5f19fd.js} +1 -1
  216. package/dist/vega/{p-5e28f223.entry.js → p-9f7be63d.entry.js} +1 -1
  217. package/dist/vega/{p-d6d73d63.js → p-a2aa60e2.js} +1 -1
  218. package/dist/vega/p-a52e87d5.entry.js +1 -0
  219. package/dist/vega/p-a73c76cb.entry.js +1 -0
  220. package/dist/vega/p-a80500a5.entry.js +1 -0
  221. package/dist/vega/p-ab3fceaa.entry.js +1 -0
  222. package/dist/vega/p-afaf6727.js +1 -0
  223. package/dist/vega/p-bce514a1.entry.js +1 -0
  224. package/dist/vega/p-bd50234d.js +1 -0
  225. package/dist/vega/{p-b165527d.entry.js → p-ca1da099.entry.js} +1 -1
  226. package/dist/vega/{p-9f912f5f.entry.js → p-d108e1d0.entry.js} +1 -1
  227. package/dist/vega/p-d4c0c063.entry.js +1 -0
  228. package/dist/vega/p-d59da144.entry.js +1 -0
  229. package/dist/vega/{p-b025ccd4.js → p-d7caf656.js} +1 -1
  230. package/dist/vega/{p-d61906e2.entry.js → p-e949ec2e.entry.js} +1 -1
  231. package/dist/vega/{p-91957051.entry.js → p-eb7d8010.entry.js} +1 -1
  232. package/dist/vega/{p-5269468c.entry.js → p-edbe5e5f.entry.js} +1 -1
  233. package/dist/vega/{p-6ae2a206.js → p-efeed31a.js} +1 -1
  234. package/dist/vega/p-f02d865d.entry.js +1 -0
  235. package/dist/vega/{p-44c13db1.js → p-f2a1f2d1.js} +1 -1
  236. package/dist/vega/{p-0559568a.entry.js → p-f449096b.entry.js} +1 -1
  237. package/dist/vega/p-fabffbee.entry.js +1 -0
  238. package/dist/vega/vega.css +1 -1
  239. package/dist/vega/vega.esm.js +1 -1
  240. package/package.json +1 -1
  241. package/style/vega.css +1 -1
  242. package/dist/vega/p-03429708.entry.js +0 -1
  243. package/dist/vega/p-0514d252.entry.js +0 -1
  244. package/dist/vega/p-05a3018f.entry.js +0 -1
  245. package/dist/vega/p-18249cc8.js +0 -1
  246. package/dist/vega/p-2741f8de.js +0 -1
  247. package/dist/vega/p-31b9c019.js +0 -1
  248. package/dist/vega/p-4c515cd0.entry.js +0 -1
  249. package/dist/vega/p-64f314f1.entry.js +0 -1
  250. package/dist/vega/p-8dec4fbb.entry.js +0 -1
  251. package/dist/vega/p-9485175e.entry.js +0 -1
  252. package/dist/vega/p-ac5777a3.entry.js +0 -1
  253. package/dist/vega/p-c1c3e348.entry.js +0 -1
  254. package/dist/vega/p-c532aa52.js +0 -1
  255. package/dist/vega/p-c635989a.entry.js +0 -1
  256. package/dist/vega/p-d3b8060a.entry.js +0 -13
  257. package/dist/vega/p-e1c507f6.entry.js +0 -1
  258. package/dist/vega/p-e9ad2472.entry.js +0 -1
  259. package/dist/vega/p-f14dd40f.entry.js +0 -1
  260. package/dist/vega/p-f1e4327e.entry.js +0 -1
  261. package/dist/vega/p-f3b5b96c.entry.js +0 -1
  262. package/dist/vega/p-f73a5be7.entry.js +0 -1
@@ -0,0 +1,48 @@
1
+ 'use strict';
2
+
3
+ /**
4
+ * Wrap the method to make sure when the method is invoked, it will only be essentially running after the component is load
5
+ * For example in {@link VegaDatePicker},
6
+ * we want to make sure when {@code @Watch('value')} method is invoked, it should wait for the component is loaded before executing
7
+ *
8
+ * @returns {Function} The function decorated
9
+ */
10
+ function ComponentLoadRequired() {
11
+ return (componentClass, _decoratedMethodName, decoratedMethod) => {
12
+ const renderedInstanceSet = new Set();
13
+ const { componentDidLoad, disconnectedCallback, connectedCallback } = componentClass;
14
+ /* eslint-disable jsdoc/require-jsdoc */
15
+ componentClass.componentDidLoad = function () {
16
+ renderedInstanceSet.add(this);
17
+ return componentDidLoad && componentDidLoad.call(this);
18
+ };
19
+ componentClass.disconnectedCallback = function () {
20
+ renderedInstanceSet.delete(this);
21
+ this.componentDidLoadedFlag = true;
22
+ return disconnectedCallback && disconnectedCallback.call(this);
23
+ };
24
+ componentClass.connectedCallback = function () {
25
+ this.componentDidLoadedFlag && renderedInstanceSet.add(this);
26
+ return connectedCallback && connectedCallback.call(this);
27
+ };
28
+ const originalMethodBody = decoratedMethod.value;
29
+ /* eslint-disable jsdoc/require-jsdoc */
30
+ decoratedMethod.value = function (...args) {
31
+ if (renderedInstanceSet.has(this)) {
32
+ return originalMethodBody.apply(this, args);
33
+ }
34
+ return new Promise((resolve) => {
35
+ const waitForComponentReady = () => {
36
+ if (renderedInstanceSet.has(this)) {
37
+ return resolve(originalMethodBody.apply(this, args));
38
+ }
39
+ setTimeout(waitForComponentReady, 30);
40
+ };
41
+ waitForComponentReady();
42
+ });
43
+ };
44
+ return decoratedMethod;
45
+ };
46
+ }
47
+
48
+ exports.ComponentLoadRequired = ComponentLoadRequired;
@@ -1,9 +1,10 @@
1
1
  'use strict';
2
2
 
3
- const typeGuard = require('./typeGuard-9a59ac0e.js');
3
+ const typeGuard = require('./typeGuard-f648ca22.js');
4
4
  const breakpoints = require('./breakpoints-23bb4f74.js');
5
5
  const log = require('./log-5d8066e0.js');
6
- const responsiveFormatFacade = require('./responsiveFormatFacade-0277ef3c.js');
6
+ const responsiveFormatFacade = require('./responsiveFormatFacade-82b43462.js');
7
+ const typography = require('./typography-358013af.js');
7
8
 
8
9
  /**
9
10
  * It logs a warning message to the console.
@@ -174,6 +175,20 @@ function formatAndValidResponsiveToken(token, flag) {
174
175
  return responsiveFormatFacade.ResponsiveFormatFacade.format(token, flag);
175
176
  }
176
177
  }
178
+ /**
179
+ * The function `formatAndValidTypographyToken` formats a typography token by adding a prefix and checks if it is a valid typography token.
180
+ *
181
+ * @param {string} token - The `token` parameter is a string that represents a typography token.
182
+ * @returns {string} a string value.
183
+ */
184
+ function formatAndValidTypographyToken(token) {
185
+ if (typeGuard.isTypographyTokenType(token)) {
186
+ return `v-${token}`;
187
+ }
188
+ else {
189
+ logInvalidValueMessage('font', token, typography.TypographyKeys);
190
+ }
191
+ }
177
192
 
178
193
  exports.formatAndValidBackgroundColor = formatAndValidBackgroundColor;
179
194
  exports.formatAndValidBorderColor = formatAndValidBorderColor;
@@ -185,3 +200,4 @@ exports.formatAndValidPadding = formatAndValidPadding;
185
200
  exports.formatAndValidResponsiveToken = formatAndValidResponsiveToken;
186
201
  exports.formatAndValidShadow = formatAndValidShadow;
187
202
  exports.formatAndValidTextColor = formatAndValidTextColor;
203
+ exports.formatAndValidTypographyToken = formatAndValidTypographyToken;
@@ -2,8 +2,8 @@
2
2
 
3
3
  const log = require('./log-5d8066e0.js');
4
4
  const ui = require('./ui-bac156c5.js');
5
- const typeGuard = require('./typeGuard-9a59ac0e.js');
6
- const responsiveFormatFacade = require('./responsiveFormatFacade-0277ef3c.js');
5
+ const typeGuard = require('./typeGuard-f648ca22.js');
6
+ const responsiveFormatFacade = require('./responsiveFormatFacade-82b43462.js');
7
7
  const ui$1 = require('./ui-824caf47.js');
8
8
  const zIndexManager = require('./zIndexManager-d5650f0d.js');
9
9
 
@@ -29,9 +29,9 @@ const getPositionBox = (container, element, target, placement, alignment, transl
29
29
  }
30
30
  const placements = getPlacements(placement);
31
31
  const alignments = getAlignments(alignment);
32
- const targetBox = getTargetPositionBox(target, container);
33
- const elementBox = getElementPositionBox(element);
34
- const containerBox = getContainerPositionBox(container);
32
+ const targetBox = getTargetBoundBox(target, container);
33
+ const elementBox = getElementBoundBox(element);
34
+ const containerBox = getElementScrollDimension(container);
35
35
  const suitablePlacement = getSuitablePlacement(containerBox, elementBox, targetBox, placements);
36
36
  const suitableAlignment = getSuitableAlignment(containerBox, elementBox, targetBox, suitablePlacement, alignments);
37
37
  const positionBox = calculatePosition(elementBox, targetBox, suitablePlacement, suitableAlignment);
@@ -45,7 +45,7 @@ const getPositionBox = (container, element, target, placement, alignment, transl
45
45
  /**
46
46
  * It returns the translocation of the element relative to the target element
47
47
  *
48
- * @param {PlacementType} originPlacement - The origin placement of the element.
48
+ * @param {Nullable<PlacementType>} originPlacement - The origin placement of the element.
49
49
  * @param {PlacementType} placement - The suitable placement of the element.
50
50
  * @param {TranslocationType} translocation - TranslocationType
51
51
  * @returns {TranslocationType} A translocation object with X and Y properties.
@@ -56,8 +56,12 @@ function getTranslocationBox(originPlacement, placement, translocation) {
56
56
  let xValue = translocation.X;
57
57
  let yValue = translocation.Y;
58
58
  // If originPlacement and placement is not in same axis, it should reverse axis.
59
- if ((['left', 'right'].includes(originPlacement) && ['top', 'bottom'].includes(placement)) ||
60
- (['top', 'bottom'].includes(originPlacement) && ['left', 'right'].includes(placement))) {
59
+ if ((originPlacement &&
60
+ ['left', 'right'].includes(originPlacement) &&
61
+ ['top', 'bottom'].includes(placement)) ||
62
+ (originPlacement &&
63
+ ['top', 'bottom'].includes(originPlacement) &&
64
+ ['left', 'right'].includes(placement))) {
61
65
  xValue = translocation.Y;
62
66
  yValue = translocation.X;
63
67
  }
@@ -115,8 +119,8 @@ function getAlignments(alignment) {
115
119
  /**
116
120
  * It takes a placement, a target box, and a element box, and returns an element box
117
121
  *
118
- * @param {ElementPositionBox} elementBox - The position of the element element.
119
- * @param {ElementPositionBox} targetBox - The position of the target element.
122
+ * @param {ElementBoundBox} elementBox - The position of the element element.
123
+ * @param {ElementBoundBox} targetBox - The position of the target element.
120
124
  * @param {PlacementType} placement - The placement of the element.
121
125
  * @param {PositionAlignmentType} alignment - The alignment of the element
122
126
  * @returns {ElementPositionBox} An object with top and left properties.
@@ -130,8 +134,8 @@ function calculatePosition(elementBox, targetBox, placement, alignment) {
130
134
  /**
131
135
  * Calculate the left position of the element
132
136
  *
133
- * @param {ElementPositionBox} elementBox - The position box of the element.
134
- * @param {ElementPositionBox} targetBox - The position box of the target element that is attached to.
137
+ * @param {ElementBoundBox} elementBox - The position box of the element.
138
+ * @param {ElementBoundBox} targetBox - The position box of the target element that is attached to.
135
139
  * @param {PlacementType} placement - The placement of the element.
136
140
  * @param {PositionAlignmentType} alignment - The alignment of the element
137
141
  * @returns {number} The left position of the element.
@@ -156,13 +160,16 @@ function calculateLeft(elementBox, targetBox, placement, alignment) {
156
160
  case 'right': {
157
161
  return targetBox.left + targetBox.width;
158
162
  }
163
+ /* istanbul ignore next */
164
+ default:
165
+ throw new Error(`Unexpected placement: ${placement}. Expected values are top, bottom, left, or right.`);
159
166
  }
160
167
  }
161
168
  /**
162
169
  * Calculate the top position of the element
163
170
  *
164
- * @param {ElementPositionBox} elementBox - The position box of the element.
165
- * @param {ElementPositionBox} targetBox - The position box of the target element that is attached to.
171
+ * @param {ElementBoundBox} elementBox - The position box of the element.
172
+ * @param {ElementBoundBox} targetBox - The position box of the target element that is attached to.
166
173
  * @param {PlacementType} placement - The placement of the element.
167
174
  * @param {PositionAlignmentType} alignment - The alignment of the element
168
175
  * @returns {number} the top position of the element.
@@ -187,15 +194,18 @@ function calculateTop(elementBox, targetBox, placement, alignment) {
187
194
  case 'bottom': {
188
195
  return targetBox.top + targetBox.height;
189
196
  }
197
+ /* istanbul ignore next */
198
+ default:
199
+ throw new Error(`Unexpected placement: ${placement}. Expected values are top, bottom, left, or right.`);
190
200
  }
191
201
  }
192
202
  /**
193
203
  * It takes a list of placements and returns the first placement that has enough space to place the
194
204
  * element
195
205
  *
196
- * @param {ElementPositionBox} containerBox - The box of the container element.
197
- * @param {ElementPositionBox} elementBox - The box of the element to be placed.
198
- * @param {ElementPositionBox} targetBox - The box of the target element.
206
+ * @param {ElementScrollDimension} containerBox - The box of the container element.
207
+ * @param {ElementBoundBox} elementBox - The box of the element to be placed.
208
+ * @param {ElementBoundBox} targetBox - The box of the target element.
199
209
  * @param {PlacementType[]} placements - The placements that we want to try.
200
210
  * @returns {PlacementType} A function that takes in a containerBox, elementBox, targetBox, placements, and element.
201
211
  */
@@ -216,9 +226,9 @@ function getSuitablePlacement(containerBox, elementBox, targetBox, placements) {
216
226
  /**
217
227
  * It takes a list of alignments and returns the suitable one that has enough space to fit the element
218
228
  *
219
- * @param {ElementPositionBox} containerBox - The bounding box of the container element.
220
- * @param {ElementPositionBox} elementBox - The box of the element that we want to position.
221
- * @param {ElementPositionBox} targetBox - The box of the element that the element to be positioned is aligned to.
229
+ * @param {ElementScrollDimension} containerBox - The bounding box of the container element.
230
+ * @param {ElementBoundBox} elementBox - The box of the element that we want to position.
231
+ * @param {ElementBoundBox} targetBox - The box of the element that the element to be positioned is aligned to.
222
232
  * @param {PlacementType} placement - The placement of the element relative to the target.
223
233
  * @param {PositionAlignmentType[]} alignments - An array of alignments to try.
224
234
  * @returns {PositionAlignmentType} the alignment that is suitable for the element.
@@ -240,9 +250,9 @@ const getSuitableAlignment = (containerBox, elementBox, targetBox, placement, al
240
250
  /**
241
251
  * Whether the alignment space is enough
242
252
  *
243
- * @param {ElementPositionBox} containerBox - The bounding box of the container element.
244
- * @param {ElementPositionBox} targetBox - The position of the target element.
245
- * @param {ElementPositionBox} elementBox - The box of the element that we're trying to position.
253
+ * @param {ElementScrollDimension} containerBox - The bounding box of the container element.
254
+ * @param {ElementBoundBox} targetBox - The position of the target element.
255
+ * @param {ElementBoundBox} elementBox - The box of the element that we're trying to position.
246
256
  * @param {PlacementType} placement - The placement of the element relative to the target.
247
257
  * @param {PlacementType} alignment - The alignment of the element relative to the target.
248
258
  * @returns {boolean} return true if it has enough space, otherwise false
@@ -276,6 +286,8 @@ function hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement,
276
286
  }
277
287
  }
278
288
  }
289
+ /* istanbul ignore next */
290
+ return false;
279
291
  }
280
292
  /**
281
293
  * If the placement is top or left, then the target's top or left position must be greater than or
@@ -283,10 +295,10 @@ function hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement,
283
295
  * height or width minus the target's top or left position minus the target's height or width must be
284
296
  * greater than or equal to the element's height or width.
285
297
  *
286
- * @param {ElementPositionBox} containerBox - The bounding box of the container element.
298
+ * @param {ElementScrollDimension} containerBox - The bounding box of the container element.
287
299
  * @param {PlacementType} placement - The placement of the element.
288
- * @param {ElementPositionBox} targetBox - The position of the target element.
289
- * @param {ElementPositionBox} elementBox - The dimensions of the element to be positioned.
300
+ * @param {ElementBoundBox} targetBox - The position of the target element.
301
+ * @param {ElementBoundBox} elementBox - The dimensions of the element to be positioned.
290
302
  * @returns {boolean} A boolean value.
291
303
  */
292
304
  function hasEnoughSpace(containerBox, placement, targetBox, elementBox) {
@@ -300,15 +312,17 @@ function hasEnoughSpace(containerBox, placement, targetBox, elementBox) {
300
312
  case 'right':
301
313
  return containerBox.width - targetBox.left - targetBox.width >= elementBox.width;
302
314
  }
315
+ /* istanbul ignore next */
316
+ return false;
303
317
  }
304
318
  /**
305
319
  * It returns the position of an element relative to its container and also includes the scroll height of container.
306
320
  *
307
321
  * @param {HTMLElement} target - The element that you want to position.
308
322
  * @param {HTMLElement} container - The container element that the target element is inside of.
309
- * @returns {ElementPositionBox} An object with the properties width, height, top, and left.
323
+ * @returns {ElementBoundBox} An object with the properties width, height, top, and left.
310
324
  */
311
- function getTargetPositionBox(target, container) {
325
+ function getTargetBoundBox(target, container) {
312
326
  const containerRect = container.getBoundingClientRect();
313
327
  const targetRect = target.getBoundingClientRect();
314
328
  const targetTop = targetRect.top - containerRect.top + container.scrollTop;
@@ -330,9 +344,9 @@ function getTargetPositionBox(target, container) {
330
344
  * After do that, this element will change to origin `hide`, if not, it will be contained in the calculate of `document.documentElement.scrollHeight`
331
345
  *
332
346
  * @param {HTMLElement} element - HTMLElement - The element to get the position box for.
333
- * @returns {ElementPositionBox} An object with the width, height, and top properties of the element.
347
+ * @returns {ElementBoundBox} An object with the width, height, and top properties of the element.
334
348
  */
335
- function getElementPositionBox(element) {
349
+ function getElementBoundBox(element) {
336
350
  const isElementHide = element.classList.contains('vega-force-hidden');
337
351
  if (isElementHide)
338
352
  element.classList.remove('vega-force-hidden');
@@ -354,9 +368,9 @@ function getElementPositionBox(element) {
354
368
  *
355
369
  * @param {HTMLElement} container - The container element that the tooltip will be positioned relative
356
370
  * to.
357
- * @returns {ElementPositionBox} An object with two properties: width and height.
371
+ * @returns {ElementScrollDimension} An object with two properties: width and height.
358
372
  */
359
- function getContainerPositionBox(container) {
373
+ function getElementScrollDimension(container) {
360
374
  return {
361
375
  width: container.scrollWidth,
362
376
  height: container.scrollHeight,
@@ -399,15 +413,11 @@ class ElementAppender {
399
413
  this.setShowConfig();
400
414
  if (!this.showConfig.target) {
401
415
  log.LogUtility.error(`No target element found, please add it at new elementAppender.`);
402
- return null;
416
+ return;
403
417
  }
404
418
  if (!this.showConfig.appendableElement) {
405
419
  log.LogUtility.error(`No appendable element found, please add it at new elementAppender.`);
406
- return null;
407
- }
408
- if (!this.container) {
409
- log.LogUtility.error(`No container element found, Please confirm that the position-relative-to property is setting correctly.`);
410
- return null;
420
+ return;
411
421
  }
412
422
  /* A function that takes no parameters and returns nothing. It sets the position of the appendable
413
423
  element. */
@@ -463,7 +473,10 @@ class ElementAppender {
463
473
  * @param {HTMLElement} appendableElement - Appendable element controlled by ElementAppender
464
474
  */
465
475
  saveVisibleAppendElement(appendableElement) {
466
- ElementAppender.containerMap.get(this.container).visibleAppendElements.add(appendableElement);
476
+ const containerState = ElementAppender.containerMap.get(this.container);
477
+ if (containerState) {
478
+ containerState.visibleAppendElements.add(appendableElement);
479
+ }
467
480
  }
468
481
  /**
469
482
  * Remove the AppendableElement from the container state.
@@ -512,7 +525,10 @@ class ElementAppender {
512
525
  setShowConfigContainer() {
513
526
  let container = document.body;
514
527
  if (this.showConfig.positionRelativeTo) {
515
- container = document.querySelector(this.showConfig.positionRelativeTo);
528
+ const positionRelativeContainer = document.querySelector(this.showConfig.positionRelativeTo);
529
+ if (positionRelativeContainer) {
530
+ container = positionRelativeContainer;
531
+ }
516
532
  }
517
533
  else {
518
534
  const parentPopover = ui$1.findParent(this.showConfig.target, '.vega-popover');
@@ -527,7 +543,7 @@ class ElementAppender {
527
543
  }
528
544
  }
529
545
  }
530
- container === null || container === void 0 ? void 0 : container.append(this.showConfig.appendableElement);
546
+ container.append(this.showConfig.appendableElement);
531
547
  this.container = container;
532
548
  }
533
549
  /**
@@ -612,7 +628,8 @@ class ElementAppender {
612
628
  * @returns {void}
613
629
  */
614
630
  adjustPosition() {
615
- const translocation = responsiveFormatFacade.ResponsiveFormatFacade.format(this.showConfig.translocation, 'translocation');
631
+ const translocation = this.showConfig.translocation &&
632
+ responsiveFormatFacade.ResponsiveFormatFacade.format(this.showConfig.translocation, 'translocation');
616
633
  const positionBox = getPositionBox(this.container, this.showConfig.appendableElement, this.showConfig.target, this.showConfig.placement, this.showConfig.alignment, translocation);
617
634
  this.showConfig.appendableElement.style.left = `${positionBox.left}px`;
618
635
  this.showConfig.appendableElement.style.top = `${positionBox.top}px`;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
- const vegaSlimmer = require('./vega-slimmer-5503957a.js');
4
- const mapToComponentMethod = require('./map-to-component-method-a3eb6fe7.js');
3
+ const vegaSlimmer = require('./vega-slimmer-c554cd02.js');
4
+ const mapToComponentMethod = require('./map-to-component-method-30d54832.js');
5
5
  const featureFlagController = require('./featureFlagController-1ed087d2.js');
6
6
  const string = require('./string-21427167.js');
7
7
  const changeManager = require('./changeManager-d4738fdb.js');
@@ -1829,6 +1829,10 @@ const loadModule = (cmpMeta, hostRef, hmrVersionId) => {
1829
1829
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
1830
1830
  /* webpackMode: "lazy" */
1831
1831
  './vega-field-error.cjs.entry.js')); }).then(processMod, consoleError);
1832
+ case 'vega-font.cjs':
1833
+ return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
1834
+ /* webpackMode: "lazy" */
1835
+ './vega-font.cjs.entry.js')); }).then(processMod, consoleError);
1832
1836
  case 'vega-header.cjs':
1833
1837
  return Promise.resolve().then(function () { return /*#__PURE__*/_interopNamespace(require(
1834
1838
  /* webpackMode: "lazy" */
@@ -4,17 +4,17 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const breakpoints = require('./breakpoints-07fcbeba.js');
6
6
  const log = require('./log-5d8066e0.js');
7
- const designToken = require('./designToken-a50a38a4.js');
7
+ const designToken = require('./designToken-14ac9337.js');
8
8
  const string = require('./string-21427167.js');
9
- const typeGuard = require('./typeGuard-9a59ac0e.js');
9
+ const typeGuard = require('./typeGuard-f648ca22.js');
10
10
  const breakpoints$1 = require('./breakpoints-23bb4f74.js');
11
11
  const icons = require('./icons-44ed411d.js');
12
- const typography = require('./typography-9f9d8d04.js');
12
+ const typography = require('./typography-358013af.js');
13
13
  const ui = require('./ui-bac156c5.js');
14
14
  const featureFlagController = require('./featureFlagController-1ed087d2.js');
15
15
  const themeManager = require('./themeManager-6ba8be2a.js');
16
16
  const vegaDialogController = require('./vegaDialogController-d2ae40fb.js');
17
- require('./responsiveFormatFacade-0277ef3c.js');
17
+ require('./responsiveFormatFacade-82b43462.js');
18
18
  require('./number-7e7d9981.js');
19
19
  require('./misc-3d30df91.js');
20
20
  require('./ui-824caf47.js');
@@ -55,6 +55,7 @@ exports.Breakpoints = breakpoints$1.Breakpoints;
55
55
  exports.Icons = icons.Icons;
56
56
  exports.getIconFromToken = icons.getIconFromToken;
57
57
  exports.Typography = typography.Typography;
58
+ exports.TypographyKeys = typography.TypographyKeys;
58
59
  exports.BreakpointKeys = ui.BreakpointKeys;
59
60
  exports.FeatureFlag = featureFlagController.FeatureFlag;
60
61
  exports.VegaLoader = themeManager.VegaLoader;
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const elementAppender = require('./elementAppender-df5ed3ca.js');
3
+ const elementAppender = require('./elementAppender-d84f358b.js');
4
4
  const ui = require('./ui-824caf47.js');
5
5
 
6
6
  /**
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- const keyboardManager = require('./keyboardManager-51dab713.js');
3
+ const keyboardManager = require('./keyboardManager-6995c418.js');
4
4
 
5
5
  /**
6
6
  * It takes a function that returns an array of keyboard event listeners, and returns a decorator
@@ -71,8 +71,8 @@ class KeyboardManager {
71
71
  * @returns {boolean} - should invoke
72
72
  */
73
73
  shouldInvokeListener(listener, keyCode) {
74
- let activeElementInScope;
75
- let activeElementOutScope;
74
+ let activeElementInScope = [];
75
+ let activeElementOutScope = [];
76
76
  const isKeyCodeAccepted = Array.isArray(listener.keyCode)
77
77
  ? listener.keyCode.includes(keyCode)
78
78
  : listener.keyCode === keyCode;
@@ -0,0 +1,210 @@
1
+ 'use strict';
2
+
3
+ const vegaSlimmer = require('./vega-slimmer-c554cd02.js');
4
+ const mapToComponentMethod = require('./map-to-component-method-30d54832.js');
5
+ const elementAppender = require('./elementAppender-d84f358b.js');
6
+ const ui = require('./ui-824caf47.js');
7
+ const keyboardManager = require('./keyboardManager-6995c418.js');
8
+
9
+ var __decorate$1 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
10
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
11
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
12
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
13
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
14
+ };
15
+ class ElementAppenderSlimmer extends vegaSlimmer.VegaSlimmer {
16
+ constructor(showConfigFactory, getTrigger, isDropdownShowName = 'isDropdownShow') {
17
+ super();
18
+ /**
19
+ * It adds event listeners to the target and the appendable element
20
+ */
21
+ this.registerElementAppenderListener = () => {
22
+ var _a, _b, _c, _d, _e;
23
+ this.unRegisterElementAppenderListener();
24
+ (_a = this.showConfig.target) === null || _a === void 0 ? void 0 : _a.addEventListener('click', this.targetClickHandler);
25
+ (_b = this.showConfig.target) === null || _b === void 0 ? void 0 : _b.addEventListener('mouseenter', this.targetMouseEnterHandler);
26
+ (_c = this.showConfig.target) === null || _c === void 0 ? void 0 : _c.addEventListener('mouseleave', this.targetMouseLeaveHandler);
27
+ (_d = this.showConfig.appendableElement) === null || _d === void 0 ? void 0 : _d.addEventListener('mouseenter', this.elementMouseEnterHandler);
28
+ (_e = this.showConfig.appendableElement) === null || _e === void 0 ? void 0 : _e.addEventListener('mouseleave', this.elementMouseLeaveHandler);
29
+ window.addEventListener('mousedown', this.globalMouseDownHandler);
30
+ };
31
+ /* It's a function that listens to the click event on the dropdown. It checks if the trigger
32
+ property is equal to 'click'. If it is, then it toggles the dropdown. */
33
+ this.targetClickHandler = () => {
34
+ if (this.shouldListenerWork('click')) {
35
+ this.isShowing() ? this.hide() : this.show();
36
+ }
37
+ };
38
+ /* It's a function that listens to the mouseenter event on the dropdown. It checks if the trigger
39
+ property is equal to 'hover'. If it is, then it clears the timer. */
40
+ this.targetMouseEnterHandler = () => {
41
+ if (this.shouldListenerWork('hover')) {
42
+ this.isShowing() === false && this.show();
43
+ this.clearDelayHideTimer();
44
+ }
45
+ };
46
+ /* It's a function that listens to the mouseleave event on the dropdown. It checks if the trigger
47
+ property is equal to 'hover'. If it is, then it creates a timer that will hide the dropdown after a
48
+ certain amount of time. */
49
+ this.targetMouseLeaveHandler = () => {
50
+ if (this.shouldListenerWork('hover')) {
51
+ this.createDelayHideTimer();
52
+ }
53
+ };
54
+ /* It's a function that listens to the mouseenter event on the dropdown. It checks if the trigger
55
+ property is equal to 'hover'. If it is, then it clears the timer. */
56
+ this.elementMouseEnterHandler = () => {
57
+ if (this.shouldListenerWork('hover')) {
58
+ this.clearDelayHideTimer();
59
+ }
60
+ };
61
+ /* It's a function that listens to the mouseleave event on the dropdown. It checks if the trigger
62
+ property is equal to 'hover'. If it is, then it creates a timer that will hide the dropdown after a
63
+ certain amount of time. */
64
+ this.elementMouseLeaveHandler = () => {
65
+ if (this.shouldListenerWork('hover')) {
66
+ this.createDelayHideTimer();
67
+ }
68
+ };
69
+ /* It's a function that listens to the global mousedown event. It checks if the dropdown is showing,
70
+ and if the target of the event is not a child of the dropdown or the trigger. If it is, then it
71
+ hides the dropdown. */
72
+ this.globalMouseDownHandler = (e) => {
73
+ if (this.shouldListenerWork('custom') &&
74
+ this.isShowing() &&
75
+ !ui.isParent(e.target, this.showConfig.appendableElement) &&
76
+ !ui.isParent(e.target, this.showConfig.target) &&
77
+ ui.findParent(e.target, 'vega-modal') ===
78
+ ui.findParent(this.showConfig.target, 'vega-modal')) {
79
+ this.hide();
80
+ }
81
+ };
82
+ /* A timer that will hide the dropdown after a certain amount of time. */
83
+ this.createDelayHideTimer = () => {
84
+ this.delayHideTimer = setTimeout(() => {
85
+ this.hide();
86
+ clearTimeout(this.delayHideTimer);
87
+ }, ElementAppenderSlimmer.DELAY_HIDE_TIME);
88
+ };
89
+ /* A function that clears the timer. */
90
+ this.clearDelayHideTimer = () => {
91
+ this.delayHideTimer && clearTimeout(this.delayHideTimer);
92
+ };
93
+ /* It's a function that checks if the listener should work or not. */
94
+ this.shouldListenerWork = (trigger) => {
95
+ const currentTrigger = this.getTrigger();
96
+ switch (trigger) {
97
+ case 'custom':
98
+ return currentTrigger !== 'none';
99
+ case 'click':
100
+ return currentTrigger === 'click';
101
+ case 'hover':
102
+ return currentTrigger === 'hover';
103
+ }
104
+ /* istanbul ignore next */
105
+ throw new Error(`Unexpected trigger: ${trigger}. Expected values are custom, click, or hover.`);
106
+ };
107
+ this.showConfigFactory = showConfigFactory;
108
+ this.getTrigger = getTrigger;
109
+ this.isDropdownShowName = isDropdownShowName;
110
+ }
111
+ connectedCallback() {
112
+ if (this.elementAppender === null) {
113
+ this.setElementAppender();
114
+ this.registerElementAppenderListener();
115
+ }
116
+ }
117
+ disconnectedCallback() {
118
+ this.unRegisterElementAppenderListener();
119
+ if (this.elementAppender) {
120
+ this.elementAppender.destroy();
121
+ this.elementAppender = null;
122
+ }
123
+ }
124
+ componentDidLoad() {
125
+ this.setShowConfig();
126
+ this.setElementAppender();
127
+ this.registerElementAppenderListener();
128
+ }
129
+ getElementAppender() {
130
+ return this.elementAppender;
131
+ }
132
+ show() {
133
+ this.elementAppender && this.elementAppender.show();
134
+ this[this.isDropdownShowName] = true;
135
+ }
136
+ hide() {
137
+ this.elementAppender && this.elementAppender.hide();
138
+ this[this.isDropdownShowName] = false;
139
+ }
140
+ destroy() {
141
+ this.elementAppender = null;
142
+ this[this.isDropdownShowName] = false;
143
+ }
144
+ setElementAppender() {
145
+ this.elementAppender = new elementAppender.ElementAppender(this.showConfigFactory, this);
146
+ }
147
+ isShowing() {
148
+ return this[this.isDropdownShowName];
149
+ }
150
+ setShowConfig() {
151
+ this.showConfig = this.showConfigFactory();
152
+ }
153
+ /**
154
+ * It removes all event listeners that were added in the `register()` function
155
+ */
156
+ unRegisterElementAppenderListener() {
157
+ var _a, _b, _c, _d, _e;
158
+ (_a = this.showConfig.target) === null || _a === void 0 ? void 0 : _a.removeEventListener('click', this.targetClickHandler);
159
+ (_b = this.showConfig.target) === null || _b === void 0 ? void 0 : _b.removeEventListener('mouseenter', this.targetMouseEnterHandler);
160
+ (_c = this.showConfig.target) === null || _c === void 0 ? void 0 : _c.removeEventListener('mouseleave', this.targetMouseLeaveHandler);
161
+ (_d = this.showConfig.appendableElement) === null || _d === void 0 ? void 0 : _d.removeEventListener('mouseenter', this.elementMouseEnterHandler);
162
+ (_e = this.showConfig.appendableElement) === null || _e === void 0 ? void 0 : _e.removeEventListener('mouseleave', this.elementMouseLeaveHandler);
163
+ window.removeEventListener('mousedown', this.globalMouseDownHandler);
164
+ }
165
+ }
166
+ ElementAppenderSlimmer.DELAY_HIDE_TIME = 100;
167
+ __decorate$1([
168
+ mapToComponentMethod.MapToComponentMethod('connectedCallback')
169
+ ], ElementAppenderSlimmer.prototype, "connectedCallback", null);
170
+ __decorate$1([
171
+ mapToComponentMethod.MapToComponentMethod('disconnectedCallback')
172
+ ], ElementAppenderSlimmer.prototype, "disconnectedCallback", null);
173
+ __decorate$1([
174
+ mapToComponentMethod.MapToComponentMethod('componentDidLoad')
175
+ ], ElementAppenderSlimmer.prototype, "componentDidLoad", null);
176
+
177
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
178
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
179
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
180
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
181
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
182
+ };
183
+ class KeyboardManagerSlimmer extends vegaSlimmer.VegaSlimmer {
184
+ constructor(listenersRetriever) {
185
+ super();
186
+ this.listenersRetriever = listenersRetriever;
187
+ }
188
+ connectedCallback() {
189
+ this.keyboardEventListeners && keyboardManager.KeyboardManager.register(this.keyboardEventListeners);
190
+ }
191
+ disconnectedCallback() {
192
+ keyboardManager.KeyboardManager.deregister(this.keyboardEventListeners);
193
+ }
194
+ componentDidLoad() {
195
+ this.keyboardEventListeners = this.listenersRetriever(this);
196
+ keyboardManager.KeyboardManager.register(this.keyboardEventListeners);
197
+ }
198
+ }
199
+ __decorate([
200
+ mapToComponentMethod.MapToComponentMethod('connectedCallback')
201
+ ], KeyboardManagerSlimmer.prototype, "connectedCallback", null);
202
+ __decorate([
203
+ mapToComponentMethod.MapToComponentMethod('disconnectedCallback')
204
+ ], KeyboardManagerSlimmer.prototype, "disconnectedCallback", null);
205
+ __decorate([
206
+ mapToComponentMethod.MapToComponentMethod('componentDidLoad')
207
+ ], KeyboardManagerSlimmer.prototype, "componentDidLoad", null);
208
+
209
+ exports.ElementAppenderSlimmer = ElementAppenderSlimmer;
210
+ exports.KeyboardManagerSlimmer = KeyboardManagerSlimmer;
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const array$2 = require('./array-e1e5ed1d.js');
4
- const typography = require('./typography-9f9d8d04.js');
4
+ const typography = require('./typography-358013af.js');
5
5
 
6
6
  /** The GraphContextFactory class provides a method to create and return either a HTMLCanvasElement or SVGElement based on the specified mode and container element. */
7
7
  class GraphContextFactory {