@globalpayments/vega 2.73.0 → 2.76.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 (819) hide show
  1. package/dist/cjs/{app-globals-cc162173.js → app-globals-12b7d808.js} +28 -32
  2. package/dist/cjs/breakpoints-751d433a.js +56 -0
  3. package/dist/cjs/{child-nodes-event-prevent-slimmer-536d29fc.js → child-nodes-event-prevent-slimmer-84435957.js} +2 -2
  4. package/dist/cjs/{child-nodes-notify-observer-slimmer-257fedb3.js → child-nodes-notify-observer-slimmer-ed39283b.js} +1 -1
  5. package/dist/cjs/click-outside-only-to-dismiss-strategy-407f6d1e.js +32 -0
  6. package/dist/cjs/{code-block-823cd481.js → code-block-f1480ec3.js} +18 -18
  7. package/dist/cjs/{component-global-style-slimmer-adfa2e59.js → component-global-style-slimmer-93c5fb50.js} +2 -1
  8. package/dist/cjs/{component-usage-runtime-metrics-d10ace87.js → component-usage-runtime-metrics-4572c5b7.js} +1 -1
  9. package/dist/cjs/{component-value-history-controller-slimmer.abstract-e2e0c6f3.js → component-value-history-controller-slimmer.abstract-a9264cc8.js} +5 -5
  10. package/dist/cjs/{create-public-api-runtime-metrics-slimmer-e2e274e1.js → create-public-api-runtime-metrics-slimmer-9cb09fb2.js} +3 -41
  11. package/dist/cjs/{dark-mode-style-controller-c21172aa.js → dark-mode-style-controller-3a04af3d.js} +292 -1254
  12. package/dist/cjs/{date-required-rule-99cca681.js → date-required-rule-912469e0.js} +1 -1
  13. package/dist/cjs/{design-token-11656685.js → design-token-41baf118.js} +2 -2
  14. package/dist/cjs/dom-node-subject-observer-factory-c62823de.js +141 -0
  15. package/dist/cjs/{dto-renderer-manager-bd2bd447.js → dto-renderer-manager-809c947b.js} +248 -57
  16. package/dist/cjs/{element-appender-slimmer-12f40b8b.js → element-appender-slimmer-34e4eb56.js} +505 -198
  17. package/dist/cjs/{event-emit-slimmer-6a591353.js → event-emit-slimmer-062cdcb8.js} +2 -2
  18. package/dist/cjs/{feature-flag-controller-ce2162c8.js → feature-flag-controller-04cb1e69.js} +7 -1
  19. package/dist/cjs/{form-field-controller-slimmer-6e3e14fd.js → form-field-controller-slimmer-102f37c7.js} +13 -14
  20. package/dist/cjs/{internal-icon-manager-32f9ed63.js → icon-manager-c12c6ea9.js} +1 -52
  21. package/dist/cjs/{image-annotation-action-7408a4b3.js → image-annotation-action-8d9fa20c.js} +10 -9
  22. package/dist/cjs/index-592b4052.js +220 -0
  23. package/dist/cjs/{index-4d7bce1a.js → index-f054eb5d.js} +15 -3
  24. package/dist/cjs/index.cjs.js +68 -65
  25. package/dist/cjs/{inject-keyboard-manager-a6101379.js → inject-keyboard-manager-0f5bd568.js} +1 -1
  26. package/dist/cjs/internal-icon-manager-c989189a.js +55 -0
  27. package/dist/cjs/{translation-5f9f9c0c.js → internal-translation-controller-053eb0f1.js} +0 -93
  28. package/dist/cjs/{internal-vega-event-manager-d587a33c.js → internal-vega-event-manager-f7ecf3d4.js} +86 -75
  29. package/dist/cjs/internal-vega-z-index-manager-f03ddb37.js +180 -0
  30. package/dist/cjs/{keyboard-manager-d8adb0ed.js → keyboard-manager-055e9f67.js} +2 -2
  31. package/dist/cjs/{keyboard-manager-slimmer-15e65357.js → keyboard-manager-slimmer-0cc0c1c7.js} +1 -1
  32. package/dist/cjs/loader.cjs.js +26 -23
  33. package/dist/cjs/misc-3d30df91.js +41 -0
  34. package/dist/cjs/{month-view-generator-706c5477.js → month-view-generator-6a6dd527.js} +1 -1
  35. package/dist/cjs/{page-resize-observer-slimmer-11937d6f.js → page-resize-observer-slimmer-7f065ee1.js} +2 -54
  36. package/dist/cjs/{public-rules-2950f1fc.js → public-rules-922849f3.js} +12 -13
  37. package/dist/cjs/{range-c3c48132.js → range-8aa49b08.js} +2 -2
  38. package/dist/cjs/{responsive-format-facade-96c5f598.js → responsive-format-facade-ea59bdcd.js} +13 -22
  39. package/dist/cjs/{rich-text-editor-required-rule-4aab05a3.js → rich-text-editor-required-rule-22225840.js} +1 -1
  40. package/dist/cjs/{string-format-strategy.abstract-a8264fca.js → string-format-strategy.abstract-f2575647.js} +1 -1
  41. package/dist/cjs/{string-input-formatter-slimmer-338bbd73.js → string-input-formatter-slimmer-0a334fc6.js} +5 -5
  42. package/dist/cjs/{string-mask-strategy-4e7d3780.js → string-mask-strategy-dda58395.js} +2 -2
  43. package/dist/cjs/{style-formatter-9c42d41b.js → style-formatter-0c3ced39.js} +2 -2
  44. package/dist/cjs/{sub-state-notify-slimmer-1efa69c4.js → sub-state-notify-slimmer-58121111.js} +1 -1
  45. package/dist/cjs/{sub-state-observer-slimmer-6afa62f5.js → sub-state-observer-slimmer-1dfbc4c3.js} +2 -2
  46. package/dist/cjs/{time-required-rule-9d39a620.js → time-required-rule-d6fa7aa8.js} +1 -1
  47. package/dist/cjs/{function-extension-78ec27e0.js → token-extension-07cac85d.js} +501 -387
  48. package/dist/cjs/{translation-slimmer-f0ebe710.js → translation-slimmer-4533bd67.js} +4 -4
  49. package/dist/cjs/{type-guard-69d2cf01.js → type-guard-407ba0b8.js} +15 -3
  50. package/dist/cjs/{ui-9e181079.js → ui-234ea151.js} +12 -0
  51. package/dist/cjs/{valid-credit-card-number-rule-9f40d1d9.js → valid-credit-card-number-rule-41a8b51b.js} +1 -1
  52. package/dist/cjs/vega-accordion.cjs.entry.js +21 -30
  53. package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
  54. package/dist/cjs/vega-app-header-button.cjs.entry.js +183 -49
  55. package/dist/cjs/vega-backdrop.cjs.entry.js +2 -2
  56. package/dist/cjs/vega-banner.cjs.entry.js +15 -13
  57. package/dist/cjs/vega-bar-chart.cjs.entry.js +1 -1
  58. package/dist/cjs/vega-box.cjs.entry.js +18 -33
  59. package/dist/cjs/vega-brand-logo.cjs.entry.js +7 -5
  60. package/dist/cjs/vega-breadcrumb.cjs.entry.js +14 -13
  61. package/dist/cjs/vega-button-circle.cjs.entry.js +20 -30
  62. package/dist/cjs/vega-button-group_2.cjs.entry.js +15 -15
  63. package/dist/cjs/vega-button-link.cjs.entry.js +15 -14
  64. package/dist/cjs/vega-button.cjs.entry.js +21 -30
  65. package/dist/cjs/vega-calendar_4.cjs.entry.js +48 -45
  66. package/dist/cjs/vega-card.cjs.entry.js +9 -28
  67. package/dist/cjs/vega-carousel.cjs.entry.js +15 -26
  68. package/dist/cjs/vega-checkbox_2.cjs.entry.js +22 -20
  69. package/dist/cjs/vega-chip.cjs.entry.js +22 -33
  70. package/dist/cjs/vega-code-block.cjs.entry.js +658 -2709
  71. package/dist/cjs/vega-color-picker.cjs.entry.js +15 -12
  72. package/dist/cjs/vega-combo-box.cjs.entry.js +29 -27
  73. package/dist/cjs/vega-counter-badge.cjs.entry.js +1 -1
  74. package/dist/cjs/vega-date-picker_2.cjs.entry.js +419 -375
  75. package/dist/cjs/vega-dialog-controller-03ef4d9a.js +84 -0
  76. package/dist/cjs/vega-dialog_2.cjs.entry.js +37 -44
  77. package/dist/cjs/vega-divider.cjs.entry.js +12 -30
  78. package/dist/cjs/vega-dropdown_5.cjs.entry.js +80 -58
  79. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  80. package/dist/cjs/{dom-node-subject-observer-factory-1c8f7880.js → vega-event-id-ee01d8dd.js} +4 -139
  81. package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
  82. package/dist/cjs/vega-field-label.cjs.entry.js +9 -8
  83. package/dist/cjs/vega-file-uploader.cjs.entry.js +28 -23
  84. package/dist/cjs/vega-flag-icon.cjs.entry.js +13 -27
  85. package/dist/cjs/vega-flex.cjs.entry.js +11 -28
  86. package/dist/cjs/vega-font.cjs.entry.js +12 -29
  87. package/dist/cjs/vega-form.cjs.entry.js +24 -22
  88. package/dist/cjs/vega-grid.cjs.entry.js +9 -28
  89. package/dist/cjs/vega-hint.cjs.entry.js +1 -1
  90. package/dist/cjs/vega-icon.cjs.entry.js +18 -31
  91. package/dist/cjs/vega-image-uploader.cjs.entry.js +34 -37
  92. package/dist/cjs/vega-input-credit-card.cjs.entry.js +31 -27
  93. package/dist/cjs/vega-input-numeric.cjs.entry.js +24 -22
  94. package/dist/cjs/vega-input-passcode.cjs.entry.js +26 -24
  95. package/dist/cjs/vega-input-phone-number.cjs.entry.js +31 -35
  96. package/dist/cjs/vega-input-range.cjs.entry.js +22 -20
  97. package/dist/cjs/vega-input-select.cjs.entry.js +215 -87
  98. package/dist/cjs/vega-input.cjs.entry.js +369 -116
  99. package/dist/cjs/vega-item-toggle.cjs.entry.js +8 -7
  100. package/dist/cjs/vega-left-nav_5.cjs.entry.js +38 -40
  101. package/dist/cjs/vega-line-chart.cjs.entry.js +1 -1
  102. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +16 -32
  103. package/dist/cjs/vega-page-notification_2.cjs.entry.js +5 -4
  104. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +12 -12
  105. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +9 -10
  106. package/dist/cjs/vega-pagination.cjs.entry.js +28 -38
  107. package/dist/cjs/vega-pie-chart.cjs.entry.js +1 -1
  108. package/dist/cjs/vega-popover_2.cjs.entry.js +21 -31
  109. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +66 -39
  110. package/dist/cjs/vega-radio_2.cjs.entry.js +25 -23
  111. package/dist/cjs/vega-rich-text-content.cjs.entry.js +22 -20
  112. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +128 -65
  113. package/dist/cjs/vega-section-title.cjs.entry.js +1 -1
  114. package/dist/cjs/vega-segment-control.cjs.entry.js +10 -8
  115. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +25 -32
  116. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +22 -20
  117. package/dist/cjs/vega-sidenav_3.cjs.entry.js +34 -40
  118. package/dist/cjs/vega-signature-capture.cjs.entry.js +27 -31
  119. package/dist/cjs/vega-skeleton.cjs.entry.js +1 -1
  120. package/dist/cjs/vega-slot-container.cjs.entry.js +1 -1
  121. package/dist/cjs/vega-stepper.cjs.entry.js +23 -21
  122. package/dist/cjs/vega-tab-group_2.cjs.entry.js +15 -14
  123. package/dist/cjs/vega-table_11.cjs.entry.js +67 -68
  124. package/dist/cjs/vega-text.cjs.entry.js +4 -3
  125. package/dist/cjs/vega-textarea.cjs.entry.js +22 -20
  126. package/dist/cjs/vega-time-picker_2.cjs.entry.js +38 -43
  127. package/dist/cjs/vega-toggle-switch.cjs.entry.js +15 -12
  128. package/dist/cjs/vega-tooltip_2.cjs.entry.js +17 -28
  129. package/dist/cjs/vega.cjs.js +26 -23
  130. package/dist/cjs/{index-638a0f0d.js → wait-for-component-did-render-70a01bf9.js} +1 -12
  131. package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +18 -3
  132. package/dist/collection/components/vega-box/slimmers/controllers/vega-box-responsive-style-controller.js +2 -1
  133. package/dist/collection/components/vega-box/slimmers/controllers/vega-box-state-styles-controller.js +2 -1
  134. package/dist/collection/components/vega-button/vega-button.js +2 -1
  135. package/dist/collection/components/vega-button-circle/vega-button-circle.js +2 -1
  136. package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +1 -1
  137. package/dist/collection/components/vega-button-link/vega-button-link.css +1 -1
  138. package/dist/collection/components/vega-button-link/vega-button-link.js +2 -1
  139. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/base-repeat-pattern.js +1 -1
  140. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-daily-repeat-pattern.js +1 -1
  141. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-monthly-repeat-pattern.js +1 -1
  142. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +1 -1
  143. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-yearly-repeat-pattern.js +1 -1
  144. package/dist/collection/components/vega-calendar/vega-calendar.js +1 -1
  145. package/dist/collection/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.js +5 -14
  146. package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +2 -1
  147. package/dist/collection/components/vega-date-picker/assets/icons.js +4 -1
  148. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +3 -2
  149. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +3 -3
  150. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.js +109 -0
  151. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.js +4 -0
  152. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +42 -70
  153. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +12 -56
  154. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +435 -108
  155. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +5 -0
  156. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-search-controller.js +5 -1
  157. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +7 -0
  158. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +8 -5
  159. package/dist/collection/components/vega-dropdown/vega-dropdown-group/slimmers/renderers/vega-dropdown-group-renderer.js +3 -3
  160. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +6 -3
  161. package/dist/collection/components/vega-dropdown/vega-dropdown.js +50 -4
  162. package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
  163. package/dist/collection/components/vega-icon/vega-icon.js +2 -1
  164. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.js +51 -0
  165. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.js +10 -2
  166. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-renderer.js +6 -0
  167. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.js +142 -0
  168. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-renderer.js +12 -1
  169. package/dist/collection/components/vega-input/vega-input.js +200 -3
  170. package/dist/collection/components/vega-input-phone-number/slimmers/renderers/country-select-renderer.js +1 -1
  171. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-item-controller.js +89 -0
  172. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.js +4 -0
  173. package/dist/collection/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.js +4 -0
  174. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +38 -13
  175. package/dist/collection/components/vega-input-select/vega-input-select.js +27 -7
  176. package/dist/collection/components/vega-pagination/vega-pagination.js +1 -1
  177. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.js +30 -6
  178. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.js +1 -1
  179. package/dist/collection/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.js +8 -1
  180. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.js +27 -0
  181. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +12 -0
  182. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +8 -3
  183. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +1 -1
  184. package/dist/collection/components/vega-rich-text-editor/dto/annotations/plain-text-annotation.js +1 -1
  185. package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +16 -0
  186. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +21 -24
  187. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +1 -1
  188. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.js +1 -0
  189. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.js +59 -0
  190. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.js +4 -0
  191. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.js +21 -0
  192. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.js +21 -0
  193. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.js +77 -0
  194. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +7 -3
  195. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +1 -1
  196. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +6 -0
  197. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/html-block.test.js +39 -0
  198. package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +171 -1
  199. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.js +186 -0
  200. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.js +22 -0
  201. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.js +22 -0
  202. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.js +26 -0
  203. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +1 -1
  204. package/dist/collection/components/vega-signature-capture/slimmers/written-mode/controllers/written-mode-svg-controller.js +2 -1
  205. package/dist/collection/components/vega-table/interface.js +3 -0
  206. package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +1 -1
  207. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +2 -1
  208. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +2 -1
  209. package/dist/collection/constants/ui.js +2 -0
  210. package/dist/collection/global/scripts/before-vega-load.js +4 -3
  211. package/dist/collection/helpers/calendar/calendar-date.js +1 -1
  212. package/dist/collection/helpers/calendar/calendar-event.js +1 -1
  213. package/dist/collection/helpers/calendar/calendar-time.js +1 -1
  214. package/dist/collection/helpers/code-format/code-formatter.js +57 -7
  215. package/dist/collection/helpers/code-format/test/code-formatter.test.js +49 -1
  216. package/dist/collection/helpers/common/index.js +2 -37
  217. package/dist/collection/helpers/common/test/wait-for-vega-handler.test.js +2 -2
  218. package/dist/collection/helpers/common/wait-for-component-did-render.js +27 -0
  219. package/dist/collection/helpers/common/wait-for-vega-handler.js +12 -1
  220. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +13 -2
  221. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +2 -0
  222. package/dist/collection/helpers/event-manager/test/component-event-id-map.test.js +3 -1
  223. package/dist/collection/helpers/event-manager/test/vega-event-manager.test.js +3 -1
  224. package/dist/collection/helpers/feature-control/feature-flags-map.js +6 -0
  225. package/dist/collection/helpers/formatter/responsive-map-formatter/responsive-border-radius-style-formatter.js +1 -1
  226. package/dist/collection/helpers/public-api.js +0 -2
  227. package/dist/collection/helpers/slimmers/component-global-style-slimmer.js +2 -1
  228. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +60 -32
  229. package/dist/collection/helpers/slimmers/element-appender/test/element-appender-slimmer.test.js +3 -2
  230. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.js +28 -0
  231. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.js +33 -0
  232. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.js +42 -0
  233. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.js +22 -0
  234. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.js +1 -0
  235. package/dist/collection/helpers/slimmers/field-error-ui-controller-slimmer.js +3 -4
  236. package/dist/collection/helpers/slimmers/form-field-message-translator.js +1 -1
  237. package/dist/collection/helpers/slimmers/global/vega-translate-observer-slimmer.js +1 -1
  238. package/dist/collection/helpers/slimmers/global/vega-watch-method-cancel-slimmer.js +1 -1
  239. package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +128 -0
  240. package/dist/collection/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.js +196 -0
  241. package/dist/collection/helpers/slimmers/position-calculation/base-position-calculation-strategy.js +162 -151
  242. package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +9 -0
  243. package/dist/collection/helpers/slimmers/position-calculation/screen-position-calculation-strategy.js +112 -1
  244. package/dist/collection/helpers/slimmers/position-calculation/screen-scroll-position-update.js +53 -0
  245. package/dist/collection/helpers/slimmers/position-calculation/test/screen-position-calculation-strategy.test.js +103 -6
  246. package/dist/collection/helpers/slimmers/string-input-formatter-slimmer.js +1 -1
  247. package/dist/collection/helpers/slimmers/translation/translation-slimmer.js +1 -1
  248. package/dist/collection/helpers/theme/controllers/brand-style-controller.js +3 -1
  249. package/dist/collection/helpers/theme/controllers/color-schema-overriding-controller.js +8 -6
  250. package/dist/collection/helpers/theme/controllers/dark-mode-style-controller.js +3 -1
  251. package/dist/collection/helpers/theme/internal-theme-manager.js +2 -1
  252. package/dist/collection/helpers/theme/tests/theme-manager-controller.test.js +1 -2
  253. package/dist/collection/helpers/ui/element-appender.js +4 -5
  254. package/dist/collection/helpers/ui/test/element-appender.test.js +66 -17
  255. package/dist/collection/index.js +2 -0
  256. package/dist/collection/polyfill/prism/index.js +2 -0
  257. package/dist/collection/polyfill/prism/languages/css.js +86 -0
  258. package/dist/collection/polyfill/prism/languages/javascript.js +96 -0
  259. package/dist/collection/polyfill/prism/languages/jsx.js +46 -0
  260. package/dist/collection/polyfill/prism/languages/language-registry.js +41 -0
  261. package/dist/collection/polyfill/prism/languages/markup.js +71 -0
  262. package/dist/collection/polyfill/prism/languages/tsx.js +10 -0
  263. package/dist/collection/polyfill/prism/languages/typescript.js +64 -0
  264. package/dist/collection/polyfill/prism/test/css.test.js +61 -0
  265. package/dist/collection/polyfill/prism/test/javascript.test.js +113 -0
  266. package/dist/collection/polyfill/prism/test/jsx.test.js +48 -0
  267. package/dist/collection/polyfill/prism/test/language-registry.test.js +77 -0
  268. package/dist/collection/polyfill/prism/test/markup.test.js +57 -0
  269. package/dist/collection/polyfill/prism/test/test-utils.js +22 -0
  270. package/dist/collection/polyfill/prism/test/tokenizer.test.js +180 -0
  271. package/dist/collection/polyfill/prism/test/tsx.test.js +87 -0
  272. package/dist/collection/polyfill/prism/test/typescript.test.js +86 -0
  273. package/dist/collection/polyfill/prism/tokenizer.js +242 -0
  274. package/dist/collection/polyfill/prism/types.js +1 -0
  275. package/dist/collection/polyfill/tinycolor/tinycolor-polyfill.js +320 -0
  276. package/dist/collection/polyfill/tinycolor/tinycolor-polyfill.test.js +361 -0
  277. package/dist/collection/types/test/type-guard.test.js +8 -1
  278. package/dist/collection/types/type-guard.js +11 -0
  279. package/dist/collection/types/ui.type.js +12 -0
  280. package/dist/collection/utils/e2e-utils.js +10 -3
  281. package/dist/collection/utils/sanitize/constants/tag-sets.js +5 -0
  282. package/dist/collection/utils/sanitize/core/html-sanitizer.js +39 -0
  283. package/dist/collection/utils/sanitize/core/sanitize-strategy.js +62 -0
  284. package/dist/collection/utils/sanitize/core/types.js +4 -0
  285. package/dist/collection/utils/sanitize/index.js +12 -0
  286. package/dist/collection/utils/sanitize/strategies/empty-sanitize-strategy.js +17 -0
  287. package/dist/collection/utils/sanitize/strategies/index.js +3 -0
  288. package/dist/collection/utils/sanitize/strategies/label-sanitize-strategy.js +13 -0
  289. package/dist/collection/utils/sanitize/strategies/style-sanitize-strategy.js +50 -0
  290. package/dist/collection/utils/sanitize/test/empty-strategy.test.js +12 -0
  291. package/dist/collection/utils/sanitize/test/html-sanitizer.test.js +57 -0
  292. package/dist/collection/utils/sanitize/test/label-strategy.test.js +56 -0
  293. package/dist/collection/utils/sanitize/test/sanitize-strategy.test.js +85 -0
  294. package/dist/collection/utils/sanitize/test/sanitize.test.js +22 -0
  295. package/dist/collection/utils/sanitize/test/serialize-fragment.test.js +25 -0
  296. package/dist/collection/utils/sanitize/test/style-strategy.test.js +45 -0
  297. package/dist/collection/utils/sanitize/utils/serialize-fragment.js +17 -0
  298. package/dist/esm/{app-globals-949d2e18.js → app-globals-c0676920.js} +12 -16
  299. package/dist/esm/breakpoints-56e5407b.js +53 -0
  300. package/dist/esm/{child-nodes-event-prevent-slimmer-e6f98de5.js → child-nodes-event-prevent-slimmer-649b9d30.js} +2 -2
  301. package/dist/esm/{child-nodes-notify-observer-slimmer-b676cd2b.js → child-nodes-notify-observer-slimmer-541dd6a4.js} +1 -1
  302. package/dist/esm/click-outside-only-to-dismiss-strategy-3d286c1b.js +30 -0
  303. package/dist/esm/{code-block-666674d7.js → code-block-b6247a45.js} +8 -8
  304. package/dist/esm/{component-global-style-slimmer-08046b38.js → component-global-style-slimmer-ac703085.js} +2 -1
  305. package/dist/esm/{component-usage-runtime-metrics-a84cc93e.js → component-usage-runtime-metrics-46020a03.js} +1 -1
  306. package/dist/esm/{component-value-history-controller-slimmer.abstract-171dda08.js → component-value-history-controller-slimmer.abstract-2bb8533d.js} +6 -6
  307. package/dist/esm/{create-public-api-runtime-metrics-slimmer-bedf3a1e.js → create-public-api-runtime-metrics-slimmer-aaadaa08.js} +3 -38
  308. package/dist/esm/{dark-mode-style-controller-de88a117.js → dark-mode-style-controller-82e5c1c6.js} +292 -1254
  309. package/dist/esm/{date-required-rule-a9980386.js → date-required-rule-e771e7d9.js} +1 -1
  310. package/dist/esm/{design-token-9b510e59.js → design-token-4aee1c56.js} +2 -2
  311. package/dist/esm/dom-node-subject-observer-factory-82f346e3.js +138 -0
  312. package/dist/esm/{dto-renderer-manager-49ae5d56.js → dto-renderer-manager-6fd22ab7.js} +222 -31
  313. package/dist/esm/{element-appender-slimmer-b9890dcb.js → element-appender-slimmer-e4713a72.js} +504 -197
  314. package/dist/esm/{event-emit-slimmer-2d791d0e.js → event-emit-slimmer-ffaecb9a.js} +2 -2
  315. package/dist/esm/{feature-flag-controller-51659753.js → feature-flag-controller-09ea7e87.js} +7 -1
  316. package/dist/esm/{form-field-controller-slimmer-257928c1.js → form-field-controller-slimmer-5817d14d.js} +10 -11
  317. package/dist/esm/{internal-icon-manager-f0486245.js → icon-manager-539d7cf7.js} +2 -52
  318. package/dist/esm/{image-annotation-action-b3eea6a2.js → image-annotation-action-6701b4c9.js} +6 -5
  319. package/dist/esm/index-3b327f29.js +215 -0
  320. package/dist/esm/{index-e9da316f.js → index-bfc6dfa2.js} +13 -1
  321. package/dist/esm/index.js +32 -29
  322. package/dist/esm/{inject-keyboard-manager-9241968c.js → inject-keyboard-manager-78730062.js} +1 -1
  323. package/dist/esm/internal-icon-manager-bd80b3bb.js +53 -0
  324. package/dist/esm/{translation-96e5debd.js → internal-translation-controller-911515f9.js} +1 -93
  325. package/dist/esm/{internal-vega-event-manager-fdee2a0a.js → internal-vega-event-manager-32a3d848.js} +13 -2
  326. package/dist/esm/internal-vega-z-index-manager-7d2b54c3.js +178 -0
  327. package/dist/esm/{keyboard-manager-89acac79.js → keyboard-manager-38934f94.js} +2 -2
  328. package/dist/esm/{keyboard-manager-slimmer-e303cb7d.js → keyboard-manager-slimmer-9984d922.js} +1 -1
  329. package/dist/esm/loader.js +27 -24
  330. package/dist/esm/misc-9fdbcfbb.js +37 -0
  331. package/dist/esm/{month-view-generator-4bec99fd.js → month-view-generator-eaf9029c.js} +1 -1
  332. package/dist/esm/{page-resize-observer-slimmer-8744cb44.js → page-resize-observer-slimmer-d6af0d86.js} +2 -52
  333. package/dist/esm/{public-rules-b164e40e.js → public-rules-25cc3a39.js} +13 -14
  334. package/dist/esm/{range-9cc1422b.js → range-663f44dc.js} +2 -2
  335. package/dist/esm/{responsive-format-facade-94897ae8.js → responsive-format-facade-7a071174.js} +3 -12
  336. package/dist/esm/{rich-text-editor-required-rule-2131f21c.js → rich-text-editor-required-rule-a238b862.js} +1 -1
  337. package/dist/esm/{string-format-strategy.abstract-75540c16.js → string-format-strategy.abstract-713fba36.js} +1 -1
  338. package/dist/esm/{string-input-formatter-slimmer-3a42d9b8.js → string-input-formatter-slimmer-5b413ff9.js} +4 -4
  339. package/dist/esm/{string-mask-strategy-4a18ed1a.js → string-mask-strategy-6beaf664.js} +2 -2
  340. package/dist/esm/{style-formatter-bb5aec96.js → style-formatter-3d06b72d.js} +2 -2
  341. package/dist/esm/{sub-state-notify-slimmer-71b9bbd5.js → sub-state-notify-slimmer-5133f1a8.js} +2 -2
  342. package/dist/esm/{sub-state-observer-slimmer-41a1b380.js → sub-state-observer-slimmer-478c9f41.js} +3 -3
  343. package/dist/esm/{time-required-rule-8ec1faf5.js → time-required-rule-e4138a76.js} +1 -1
  344. package/dist/esm/{function-extension-8b06c6f8.js → token-extension-e33fd151.js} +488 -376
  345. package/dist/esm/{translation-slimmer-c936cb1b.js → translation-slimmer-2394b173.js} +1 -1
  346. package/dist/esm/{type-guard-b48aec98.js → type-guard-f50e34d6.js} +13 -2
  347. package/dist/esm/{ui-bb99c0c2.js → ui-ee31416b.js} +12 -0
  348. package/dist/esm/{valid-credit-card-number-rule-96eaf9b1.js → valid-credit-card-number-rule-22ce81db.js} +1 -1
  349. package/dist/esm/vega-accordion.entry.js +19 -28
  350. package/dist/esm/vega-app-footer.entry.js +3 -3
  351. package/dist/esm/vega-app-header-button.entry.js +174 -40
  352. package/dist/esm/vega-backdrop.entry.js +2 -2
  353. package/dist/esm/vega-banner.entry.js +12 -10
  354. package/dist/esm/vega-bar-chart.entry.js +1 -1
  355. package/dist/esm/vega-box.entry.js +14 -29
  356. package/dist/esm/vega-brand-logo.entry.js +7 -5
  357. package/dist/esm/vega-breadcrumb.entry.js +11 -10
  358. package/dist/esm/vega-button-circle.entry.js +19 -29
  359. package/dist/esm/vega-button-group_2.entry.js +12 -12
  360. package/dist/esm/vega-button-link.entry.js +13 -12
  361. package/dist/esm/vega-button.entry.js +19 -28
  362. package/dist/esm/vega-calendar_4.entry.js +23 -20
  363. package/dist/esm/vega-card.entry.js +9 -28
  364. package/dist/esm/vega-carousel.entry.js +14 -25
  365. package/dist/esm/vega-checkbox_2.entry.js +19 -17
  366. package/dist/esm/vega-chip.entry.js +18 -29
  367. package/dist/esm/vega-code-block.entry.js +653 -2704
  368. package/dist/esm/vega-color-picker.entry.js +15 -12
  369. package/dist/esm/vega-combo-box.entry.js +22 -20
  370. package/dist/esm/vega-counter-badge.entry.js +1 -1
  371. package/dist/esm/vega-date-picker_2.entry.js +403 -359
  372. package/dist/esm/vega-dialog-controller-bbb2fc52.js +82 -0
  373. package/dist/esm/vega-dialog_2.entry.js +23 -30
  374. package/dist/esm/vega-divider.entry.js +11 -29
  375. package/dist/esm/vega-dropdown_5.entry.js +70 -48
  376. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  377. package/dist/esm/vega-event-id-38aa77a0.js +113 -0
  378. package/dist/esm/vega-field-error.entry.js +1 -1
  379. package/dist/esm/vega-field-label.entry.js +7 -6
  380. package/dist/esm/vega-file-uploader.entry.js +19 -14
  381. package/dist/esm/vega-flag-icon.entry.js +12 -26
  382. package/dist/esm/vega-flex.entry.js +11 -28
  383. package/dist/esm/vega-font.entry.js +11 -28
  384. package/dist/esm/vega-form.entry.js +20 -18
  385. package/dist/esm/vega-grid.entry.js +9 -28
  386. package/dist/esm/vega-hint.entry.js +1 -1
  387. package/dist/esm/vega-icon.entry.js +15 -28
  388. package/dist/esm/vega-image-uploader.entry.js +28 -31
  389. package/dist/esm/vega-input-credit-card.entry.js +25 -21
  390. package/dist/esm/vega-input-numeric.entry.js +21 -19
  391. package/dist/esm/vega-input-passcode.entry.js +20 -18
  392. package/dist/esm/vega-input-phone-number.entry.js +27 -31
  393. package/dist/esm/vega-input-range.entry.js +19 -17
  394. package/dist/esm/vega-input-select.entry.js +201 -73
  395. package/dist/esm/vega-input.entry.js +362 -109
  396. package/dist/esm/{vega-internal-event-id-4a06d705.js → vega-internal-event-id-799d012e.js} +1 -1
  397. package/dist/esm/vega-item-toggle.entry.js +6 -5
  398. package/dist/esm/vega-left-nav_5.entry.js +29 -31
  399. package/dist/esm/vega-line-chart.entry.js +1 -1
  400. package/dist/esm/vega-loader-wrapper_2.entry.js +13 -29
  401. package/dist/esm/vega-page-notification_2.entry.js +4 -3
  402. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +9 -9
  403. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +7 -8
  404. package/dist/esm/vega-pagination.entry.js +20 -30
  405. package/dist/esm/vega-pie-chart.entry.js +1 -1
  406. package/dist/esm/vega-popover_2.entry.js +20 -30
  407. package/dist/esm/vega-progress-tracker_2.entry.js +64 -37
  408. package/dist/esm/vega-radio_2.entry.js +21 -19
  409. package/dist/esm/vega-rich-text-content.entry.js +18 -16
  410. package/dist/esm/vega-rich-text-editor_4.entry.js +103 -40
  411. package/dist/esm/vega-section-title.entry.js +1 -1
  412. package/dist/esm/vega-segment-control.entry.js +9 -7
  413. package/dist/esm/vega-selection-chip_2.entry.js +22 -29
  414. package/dist/esm/vega-selection-tile_2.entry.js +19 -17
  415. package/dist/esm/vega-sidenav_3.entry.js +24 -30
  416. package/dist/esm/vega-signature-capture.entry.js +24 -28
  417. package/dist/esm/vega-skeleton.entry.js +1 -1
  418. package/dist/esm/vega-slot-container.entry.js +1 -1
  419. package/dist/esm/vega-stepper.entry.js +18 -16
  420. package/dist/esm/vega-tab-group_2.entry.js +11 -10
  421. package/dist/esm/vega-table_11.entry.js +28 -29
  422. package/dist/esm/vega-text.entry.js +4 -3
  423. package/dist/esm/vega-textarea.entry.js +18 -16
  424. package/dist/esm/vega-time-picker_2.entry.js +29 -34
  425. package/dist/esm/vega-toggle-switch.entry.js +15 -12
  426. package/dist/esm/vega-tooltip_2.entry.js +18 -29
  427. package/dist/esm/vega.js +27 -24
  428. package/dist/esm/{index-0d487fae.js → wait-for-component-did-render-b08ef07b.js} +3 -13
  429. package/dist/sri/vega-sri-manifest.json +419 -399
  430. package/dist/types/components/vega-app-footer/types.d.ts +18 -0
  431. package/dist/types/components/vega-app-header-button/types.d.ts +31 -0
  432. package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +2 -0
  433. package/dist/types/components/vega-banner/types.d.ts +9 -0
  434. package/dist/types/components/vega-box/interface.d.ts +46 -0
  435. package/dist/types/components/vega-breadcrumb/types.d.ts +28 -0
  436. package/dist/types/components/vega-button/types.d.ts +12 -0
  437. package/dist/types/components/vega-button-circle/types.d.ts +9 -0
  438. package/dist/types/components/vega-button-group/types.d.ts +48 -0
  439. package/dist/types/components/vega-button-link/types.d.ts +3 -0
  440. package/dist/types/components/vega-calendar/types.d.ts +189 -0
  441. package/dist/types/components/vega-calendar/vega-calendar-event-preview/types.d.ts +6 -0
  442. package/dist/types/components/vega-chart/vega-bar-chart/types.d.ts +3 -0
  443. package/dist/types/components/vega-chip/types.d.ts +12 -0
  444. package/dist/types/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.d.ts +2 -10
  445. package/dist/types/components/vega-combo-box/types.d.ts +6 -0
  446. package/dist/types/components/vega-date-picker/assets/icons.d.ts +1 -1
  447. package/dist/types/components/vega-date-picker/types.d.ts +39 -0
  448. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.d.ts +20 -0
  449. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +1 -0
  450. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.d.ts +4 -11
  451. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +4 -9
  452. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +2 -0
  453. package/dist/types/components/vega-dialog/types.d.ts +5 -0
  454. package/dist/types/components/vega-divider/interface.d.ts +18 -0
  455. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.d.ts +2 -0
  456. package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +1 -0
  457. package/dist/types/components/vega-dropdown/types.d.ts +30 -0
  458. package/dist/types/components/vega-dropdown/vega-dropdown-item/types.d.ts +9 -1
  459. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +14 -2
  460. package/dist/types/components/vega-field-error/types.d.ts +12 -0
  461. package/dist/types/components/vega-field-label/types.d.ts +16 -0
  462. package/dist/types/components/vega-file-uploader/types.d.ts +12 -0
  463. package/dist/types/components/vega-font/types.d.ts +3 -0
  464. package/dist/types/components/vega-form/types.d.ts +45 -0
  465. package/dist/types/components/vega-image-uploader/types.d.ts +33 -1
  466. package/dist/types/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.d.ts +27 -0
  467. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-renderer.d.ts +1 -0
  468. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.d.ts +40 -0
  469. package/dist/types/components/vega-input/slimmers/renderers/vega-input-renderer.d.ts +3 -0
  470. package/dist/types/components/vega-input/types.d.ts +35 -0
  471. package/dist/types/components/vega-input/vega-input.d.ts +55 -1
  472. package/dist/types/components/vega-input-phone-number/types.d.ts +15 -0
  473. package/dist/types/components/vega-input-range/types.d.ts +9 -0
  474. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-item-controller.d.ts +29 -0
  475. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-source-controller.d.ts +1 -0
  476. package/dist/types/components/vega-input-select/slimmers/controllers/vega-input-select-value-controller.d.ts +1 -0
  477. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +1 -1
  478. package/dist/types/components/vega-input-select/types.d.ts +50 -0
  479. package/dist/types/components/vega-input-select/vega-input-select.d.ts +12 -4
  480. package/dist/types/components/vega-item-toggle/types.d.ts +21 -0
  481. package/dist/types/components/vega-loading-indicator/types.d.ts +3 -0
  482. package/dist/types/components/vega-modal/types.d.ts +9 -0
  483. package/dist/types/components/vega-nav/interface.d.ts +108 -0
  484. package/dist/types/components/vega-page-notification/types.d.ts +15 -0
  485. package/dist/types/components/vega-pagination/types.d.ts +11 -0
  486. package/dist/types/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.d.ts +16 -4
  487. package/dist/types/components/vega-progress-tracker/type.d.ts +8 -0
  488. package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.d.ts +6 -0
  489. package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +2 -2
  490. package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +10 -0
  491. package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +8 -1
  492. package/dist/types/components/vega-rich-text-editor/interface.d.ts +473 -2
  493. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.d.ts +13 -0
  494. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.d.ts +35 -0
  495. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.d.ts +4 -0
  496. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.d.ts +19 -0
  497. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.d.ts +19 -0
  498. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.d.ts +59 -0
  499. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +1 -0
  500. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +1 -0
  501. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.d.ts +1 -0
  502. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.d.ts +1 -0
  503. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.d.ts +1 -0
  504. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.d.ts +1 -0
  505. package/dist/types/components/vega-rich-text-editor/vega-rich-text-image-editor/types.d.ts +24 -0
  506. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/types.d.ts +24 -0
  507. package/dist/types/components/vega-segment-control/types.d.ts +18 -0
  508. package/dist/types/components/vega-selection-chip/interface.d.ts +12 -0
  509. package/dist/types/components/vega-selection-chip/vega-selection-chip-group/interface.d.ts +4 -0
  510. package/dist/types/components/vega-selection-tile/interface.d.ts +9 -0
  511. package/dist/types/components/vega-sidenav/types.d.ts +51 -0
  512. package/dist/types/components/vega-signature-capture/types.d.ts +29 -2
  513. package/dist/types/components/vega-skeleton/interface.d.ts +6 -0
  514. package/dist/types/components/vega-tab-group/types.d.ts +36 -0
  515. package/dist/types/components/vega-table/interface.d.ts +237 -20
  516. package/dist/types/components/vega-table/vega-table-expand-row/types.d.ts +6 -0
  517. package/dist/types/components/vega-table/vega-table-foot/types.d.ts +9 -0
  518. package/dist/types/components/vega-table/vega-table-foot-row/types.d.ts +9 -0
  519. package/dist/types/components/vega-table/vega-table-head/types.d.ts +9 -0
  520. package/dist/types/components/vega-table/vega-table-head-row/types.d.ts +12 -0
  521. package/dist/types/components/vega-table/vega-table-row/types.d.ts +18 -0
  522. package/dist/types/components/vega-text/types.d.ts +6 -0
  523. package/dist/types/components/vega-time-picker/types.d.ts +33 -0
  524. package/dist/types/components/vega-virtual-scroll/types.d.ts +30 -1
  525. package/dist/types/components.d.ts +78 -14
  526. package/dist/types/constants/ui.d.ts +1 -1
  527. package/dist/types/helpers/code-format/code-formatter.d.ts +14 -0
  528. package/dist/types/helpers/common/index.d.ts +2 -15
  529. package/dist/types/helpers/common/wait-for-component-did-render.d.ts +8 -0
  530. package/dist/types/helpers/common/wait-for-vega-handler.d.ts +6 -15
  531. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +2 -0
  532. package/dist/types/helpers/feature-control/feature-flag.d.ts +2 -1
  533. package/dist/types/helpers/public-api.d.ts +0 -2
  534. package/dist/types/helpers/slimmers/element-appender/element-appender-slimmer.d.ts +4 -9
  535. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.d.ts +21 -0
  536. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.d.ts +21 -0
  537. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.d.ts +22 -0
  538. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.d.ts +18 -0
  539. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.d.ts +37 -0
  540. package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +44 -0
  541. package/dist/types/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.d.ts +1 -0
  542. package/dist/types/helpers/slimmers/position-calculation/base-position-calculation-strategy.d.ts +57 -48
  543. package/dist/types/helpers/slimmers/position-calculation/position-calculation-controller.d.ts +5 -0
  544. package/dist/types/helpers/slimmers/position-calculation/screen-position-calculation-strategy.d.ts +41 -1
  545. package/dist/types/helpers/slimmers/position-calculation/screen-scroll-position-update.d.ts +39 -0
  546. package/dist/types/helpers/ui/element-appender.d.ts +0 -1
  547. package/dist/types/index.d.ts +2 -0
  548. package/dist/types/polyfill/prism/index.d.ts +3 -0
  549. package/dist/types/polyfill/prism/languages/css.d.ts +6 -0
  550. package/dist/types/polyfill/prism/languages/javascript.d.ts +7 -0
  551. package/dist/types/polyfill/prism/languages/jsx.d.ts +7 -0
  552. package/dist/types/polyfill/prism/languages/language-registry.d.ts +8 -0
  553. package/dist/types/polyfill/prism/languages/markup.d.ts +6 -0
  554. package/dist/types/polyfill/prism/languages/tsx.d.ts +7 -0
  555. package/dist/types/polyfill/prism/languages/typescript.d.ts +2 -0
  556. package/dist/types/polyfill/prism/test/css.test.d.ts +1 -0
  557. package/dist/types/polyfill/prism/test/javascript.test.d.ts +1 -0
  558. package/dist/types/polyfill/prism/test/jsx.test.d.ts +1 -0
  559. package/dist/types/polyfill/prism/test/language-registry.test.d.ts +1 -0
  560. package/dist/types/polyfill/prism/test/markup.test.d.ts +1 -0
  561. package/dist/types/polyfill/prism/test/test-utils.d.ts +10 -0
  562. package/dist/types/polyfill/prism/test/tokenizer.test.d.ts +1 -0
  563. package/dist/types/polyfill/prism/test/tsx.test.d.ts +1 -0
  564. package/dist/types/polyfill/prism/test/typescript.test.d.ts +1 -0
  565. package/dist/types/polyfill/prism/tokenizer.d.ts +17 -0
  566. package/dist/types/polyfill/prism/types.d.ts +25 -0
  567. package/dist/types/polyfill/tinycolor/tinycolor-polyfill.d.ts +149 -0
  568. package/dist/types/polyfill/tinycolor/tinycolor-polyfill.test.d.ts +1 -0
  569. package/dist/types/types/components.type.d.ts +7 -1
  570. package/dist/types/types/design-token.type.d.ts +36 -0
  571. package/dist/types/types/flag.type.d.ts +3 -0
  572. package/dist/types/types/general.d.ts +12 -0
  573. package/dist/types/types/type-guard.d.ts +8 -0
  574. package/dist/types/types/ui.type.d.ts +381 -0
  575. package/dist/types/types/vega-chart.d.ts +281 -2
  576. package/dist/types/utils/e2e-utils.d.ts +2 -0
  577. package/dist/types/utils/sanitize/constants/tag-sets.d.ts +6 -0
  578. package/dist/types/utils/sanitize/core/html-sanitizer.d.ts +22 -0
  579. package/dist/types/utils/sanitize/core/sanitize-strategy.d.ts +27 -0
  580. package/dist/types/utils/sanitize/core/types.d.ts +13 -0
  581. package/dist/types/utils/sanitize/index.d.ts +12 -0
  582. package/dist/types/utils/sanitize/strategies/empty-sanitize-strategy.d.ts +14 -0
  583. package/dist/types/utils/sanitize/strategies/index.d.ts +3 -0
  584. package/dist/types/utils/sanitize/strategies/label-sanitize-strategy.d.ts +10 -0
  585. package/dist/types/utils/sanitize/strategies/style-sanitize-strategy.d.ts +24 -0
  586. package/dist/types/utils/sanitize/test/empty-strategy.test.d.ts +1 -0
  587. package/dist/types/utils/sanitize/test/html-sanitizer.test.d.ts +1 -0
  588. package/dist/types/utils/sanitize/test/label-strategy.test.d.ts +1 -0
  589. package/dist/types/utils/sanitize/test/sanitize-strategy.test.d.ts +1 -0
  590. package/dist/types/utils/sanitize/test/sanitize.test.d.ts +1 -0
  591. package/dist/types/utils/sanitize/test/serialize-fragment.test.d.ts +1 -0
  592. package/dist/types/utils/sanitize/test/style-strategy.test.d.ts +1 -0
  593. package/dist/types/utils/sanitize/utils/serialize-fragment.d.ts +12 -0
  594. package/dist/vega/index.esm.js +1 -1
  595. package/dist/vega/p-01d58eb8.entry.js +1 -0
  596. package/dist/vega/p-021d4ae4.js +1 -0
  597. package/dist/vega/p-02a7d60c.entry.js +1 -0
  598. package/dist/vega/{p-f2c8c363.js → p-02c9796a.js} +1 -1
  599. package/dist/vega/p-033c31d8.entry.js +1 -0
  600. package/dist/vega/{p-e77a83e4.js → p-07cb0243.js} +1 -1
  601. package/dist/vega/p-087ea379.entry.js +1 -0
  602. package/dist/vega/{p-e5af5a4d.entry.js → p-0b4880bd.entry.js} +1 -1
  603. package/dist/vega/{p-a8dad05d.js → p-0e679d8c.js} +1 -1
  604. package/dist/vega/{p-184d8443.js → p-10734a00.js} +1 -1
  605. package/dist/vega/p-154f9cf7.entry.js +1 -0
  606. package/dist/vega/p-179aad4f.entry.js +1 -0
  607. package/dist/vega/p-1a3236e7.entry.js +1 -0
  608. package/dist/vega/p-1f3cd061.entry.js +1 -0
  609. package/dist/vega/p-1f5e35dc.entry.js +1 -0
  610. package/dist/vega/p-242fbcad.entry.js +1 -0
  611. package/dist/vega/p-249df6d2.entry.js +1 -0
  612. package/dist/vega/p-28ad1864.entry.js +1 -0
  613. package/dist/vega/{p-9a83a6b0.js → p-2a10e2e5.js} +1 -1
  614. package/dist/vega/p-2b49686d.entry.js +1 -0
  615. package/dist/vega/p-2ba78982.entry.js +1 -0
  616. package/dist/vega/p-2bb5a232.js +1 -0
  617. package/dist/vega/{p-e9b86dac.entry.js → p-2c1a85dd.entry.js} +1 -1
  618. package/dist/vega/p-2cc9d126.entry.js +1 -0
  619. package/dist/vega/p-2d69632d.js +1 -0
  620. package/dist/vega/p-2e91295d.entry.js +1 -0
  621. package/dist/vega/p-31ac7386.js +1 -0
  622. package/dist/vega/p-32033e7a.js +1 -0
  623. package/dist/vega/p-32183637.entry.js +1 -0
  624. package/dist/vega/p-3244c605.entry.js +1 -0
  625. package/dist/vega/p-32faa460.entry.js +1 -0
  626. package/dist/vega/p-33f9ad94.entry.js +1 -0
  627. package/dist/vega/{p-4897bedd.entry.js → p-358b4a06.entry.js} +1 -1
  628. package/dist/vega/p-3afc025e.entry.js +1 -0
  629. package/dist/vega/p-3d8122ab.entry.js +1 -0
  630. package/dist/vega/{p-ea04a387.entry.js → p-3f3c771a.entry.js} +1 -1
  631. package/dist/vega/{p-161b9c5b.js → p-415ffa35.js} +1 -1
  632. package/dist/vega/{p-d849e0f5.js → p-4415ad28.js} +1 -1
  633. package/dist/vega/{p-74a77cad.js → p-464559e3.js} +1 -1
  634. package/dist/vega/p-49845a91.js +1 -0
  635. package/dist/vega/{p-3d85411d.js → p-4bffdb28.js} +1 -1
  636. package/dist/vega/p-4e017458.entry.js +1 -0
  637. package/dist/vega/p-4e4a0228.entry.js +1 -0
  638. package/dist/vega/{p-a4ec6575.js → p-4ea30592.js} +1 -1
  639. package/dist/vega/{p-0b38a01f.entry.js → p-51fcb07f.entry.js} +1 -1
  640. package/dist/vega/p-57927b10.entry.js +1 -0
  641. package/dist/vega/p-5831d6d3.entry.js +1 -0
  642. package/dist/vega/p-593e0f80.js +1 -0
  643. package/dist/vega/p-5a25014f.js +1 -0
  644. package/dist/vega/p-5eb7f382.js +1 -0
  645. package/dist/vega/p-5f377954.js +1 -1
  646. package/dist/vega/p-644f701a.js +1 -0
  647. package/dist/vega/p-6a62e476.entry.js +1 -0
  648. package/dist/vega/{p-75f981ce.js → p-6b6f0fb4.js} +1 -1
  649. package/dist/vega/p-6d219c44.entry.js +1 -0
  650. package/dist/vega/p-6d60b66a.entry.js +1 -0
  651. package/dist/vega/{p-ad2055f4.entry.js → p-6dcdb580.entry.js} +1 -1
  652. package/dist/vega/{p-2971b17a.js → p-7181861a.js} +1 -1
  653. package/dist/vega/p-76181a70.entry.js +1 -0
  654. package/dist/vega/p-781fd6e0.js +1 -0
  655. package/dist/vega/p-7958614a.entry.js +1 -0
  656. package/dist/vega/{p-5b71c85e.js → p-7c39ce96.js} +1 -1
  657. package/dist/vega/p-7d7aaff9.entry.js +1 -0
  658. package/dist/vega/{p-4dd6554e.entry.js → p-7f46cc1e.entry.js} +1 -1
  659. package/dist/vega/p-8187878e.js +1 -0
  660. package/dist/vega/{p-d991fb11.js → p-81b044b9.js} +1 -1
  661. package/dist/vega/p-8950987b.entry.js +1 -0
  662. package/dist/vega/p-89f2e16d.entry.js +1 -0
  663. package/dist/vega/p-8ac2d165.js +1 -0
  664. package/dist/vega/p-8b153acd.entry.js +1 -0
  665. package/dist/vega/p-8b5d3a52.js +1 -0
  666. package/dist/vega/{p-fff13ed1.entry.js → p-8b891f36.entry.js} +1 -1
  667. package/dist/vega/p-8dbdd609.entry.js +1 -0
  668. package/dist/vega/{p-6c1ef2ed.js → p-9339c6c4.js} +1 -1
  669. package/dist/vega/p-94a77fbe.entry.js +1 -0
  670. package/dist/vega/{p-207cfa6a.js → p-95528b47.js} +1 -1
  671. package/dist/vega/p-9a137bab.entry.js +1 -0
  672. package/dist/vega/{p-bf61d136.js → p-a0b66c25.js} +1 -1
  673. package/dist/vega/{p-0bb3be0b.entry.js → p-a13a73fa.entry.js} +1 -1
  674. package/dist/vega/p-a560d8c5.entry.js +1 -0
  675. package/dist/vega/{p-d1d0f08a.js → p-a786259a.js} +1 -1
  676. package/dist/vega/p-a7a8a4eb.entry.js +1 -0
  677. package/dist/vega/p-a8792e3d.js +1 -0
  678. package/dist/vega/{p-de70aac1.js → p-aa1174dc.js} +1 -1
  679. package/dist/vega/p-ab834f06.js +1 -0
  680. package/dist/vega/p-b136ebba.entry.js +1 -0
  681. package/dist/vega/p-b201f379.js +1 -0
  682. package/dist/vega/p-b256b7a4.js +1 -0
  683. package/dist/vega/p-b366deff.entry.js +1 -0
  684. package/dist/vega/p-b597393b.entry.js +1 -0
  685. package/dist/vega/p-b7f3221f.js +1 -0
  686. package/dist/vega/p-bb5e0192.entry.js +1 -0
  687. package/dist/vega/p-be1a210b.js +1 -0
  688. package/dist/vega/p-bebfbe95.entry.js +1 -0
  689. package/dist/vega/p-bf6fc19f.entry.js +1 -0
  690. package/dist/vega/p-c1d13eec.entry.js +1 -0
  691. package/dist/vega/p-c29068fb.entry.js +1 -0
  692. package/dist/vega/p-c3d2f316.js +1 -0
  693. package/dist/vega/{p-671afda4.entry.js → p-c72e08c6.entry.js} +1 -1
  694. package/dist/vega/p-c801c85d.js +1 -0
  695. package/dist/vega/p-c8feb644.entry.js +1 -0
  696. package/dist/vega/p-ca5898dc.entry.js +1 -0
  697. package/dist/vega/p-d555f677.entry.js +1 -0
  698. package/dist/vega/p-d64fab3d.js +1 -0
  699. package/dist/vega/p-d6dbbe61.entry.js +1 -0
  700. package/dist/vega/p-d7a78c5e.entry.js +1 -0
  701. package/dist/vega/p-d8fadcdc.entry.js +1 -0
  702. package/dist/vega/p-dad3ba5f.js +1 -0
  703. package/dist/vega/p-dd3a94f4.entry.js +1 -0
  704. package/dist/vega/p-e1431c14.entry.js +1 -0
  705. package/dist/vega/p-e1fbfd20.js +1 -0
  706. package/dist/vega/p-e2af0e24.entry.js +1 -0
  707. package/dist/vega/{p-521d1d07.js → p-e52890db.js} +1 -1
  708. package/dist/vega/{p-8fba7f9a.js → p-e632475e.js} +1 -1
  709. package/dist/vega/p-e6adf829.js +1 -0
  710. package/dist/vega/{p-5be29f14.js → p-e827d56d.js} +1 -1
  711. package/dist/vega/p-e8775a56.entry.js +1 -0
  712. package/dist/vega/p-e89e3ede.entry.js +1 -0
  713. package/dist/vega/p-eda988d5.entry.js +1 -0
  714. package/dist/vega/p-f05b8f76.entry.js +1 -0
  715. package/dist/vega/p-f0e828d8.js +1 -0
  716. package/dist/vega/p-f14a5eae.entry.js +1 -0
  717. package/dist/vega/p-f2b0b58a.js +1 -0
  718. package/dist/vega/p-f3d0f2dc.js +1 -0
  719. package/dist/vega/{p-5910be31.entry.js → p-f5bafc45.entry.js} +1 -1
  720. package/dist/vega/p-fc1fa345.js +1 -0
  721. package/dist/vega/p-fd7ddd64.entry.js +1 -0
  722. package/dist/vega/vega.esm.js +1 -1
  723. package/package.json +3 -5
  724. package/dist/cjs/_commonjsHelpers-537d719a.js +0 -20
  725. package/dist/cjs/language-extension-716015a5.js +0 -210
  726. package/dist/cjs/wait-for-vega-handler-5469ff80.js +0 -63
  727. package/dist/esm/_commonjsHelpers-9943807e.js +0 -17
  728. package/dist/esm/dom-node-subject-observer-factory-1aaa1159.js +0 -248
  729. package/dist/esm/language-extension-b3f836d4.js +0 -207
  730. package/dist/esm/wait-for-vega-handler-c2c07ac3.js +0 -61
  731. package/dist/vega/p-03e16a05.entry.js +0 -1
  732. package/dist/vega/p-0ad59141.entry.js +0 -1
  733. package/dist/vega/p-0ba0f83d.entry.js +0 -1
  734. package/dist/vega/p-10ac8b57.js +0 -1
  735. package/dist/vega/p-112455b1.js +0 -1
  736. package/dist/vega/p-114c6df8.entry.js +0 -1
  737. package/dist/vega/p-1e019406.js +0 -1
  738. package/dist/vega/p-1e0d8228.entry.js +0 -1
  739. package/dist/vega/p-1faef917.entry.js +0 -1
  740. package/dist/vega/p-21cba83b.entry.js +0 -1
  741. package/dist/vega/p-21e7808a.entry.js +0 -1
  742. package/dist/vega/p-2409a475.entry.js +0 -1
  743. package/dist/vega/p-2ae5ad30.entry.js +0 -1
  744. package/dist/vega/p-2b20a215.entry.js +0 -1
  745. package/dist/vega/p-2bc4f7d9.entry.js +0 -1
  746. package/dist/vega/p-2e0deef6.js +0 -1
  747. package/dist/vega/p-2f592078.entry.js +0 -1
  748. package/dist/vega/p-30e7544c.js +0 -1
  749. package/dist/vega/p-3162a7fd.entry.js +0 -1
  750. package/dist/vega/p-3566ad76.js +0 -1
  751. package/dist/vega/p-38ed3d59.entry.js +0 -1
  752. package/dist/vega/p-3938880f.entry.js +0 -1
  753. package/dist/vega/p-398220f5.entry.js +0 -1
  754. package/dist/vega/p-40561fa0.entry.js +0 -1
  755. package/dist/vega/p-42a283b5.entry.js +0 -1
  756. package/dist/vega/p-44bc9ea9.entry.js +0 -1
  757. package/dist/vega/p-4957f07a.entry.js +0 -1
  758. package/dist/vega/p-524ffc12.entry.js +0 -1
  759. package/dist/vega/p-59fa3f68.js +0 -1
  760. package/dist/vega/p-5d676a94.js +0 -1
  761. package/dist/vega/p-5f09868d.entry.js +0 -1
  762. package/dist/vega/p-623c3911.entry.js +0 -9
  763. package/dist/vega/p-676eaf3f.entry.js +0 -1
  764. package/dist/vega/p-697eb0e1.js +0 -1
  765. package/dist/vega/p-6b9d2996.entry.js +0 -1
  766. package/dist/vega/p-6e701542.entry.js +0 -1
  767. package/dist/vega/p-6e84e451.entry.js +0 -1
  768. package/dist/vega/p-70b2906a.entry.js +0 -1
  769. package/dist/vega/p-721b2981.entry.js +0 -1
  770. package/dist/vega/p-75d91ee9.entry.js +0 -1
  771. package/dist/vega/p-76e6c13a.js +0 -1
  772. package/dist/vega/p-79a544d6.js +0 -1
  773. package/dist/vega/p-7a8c4cf8.entry.js +0 -1
  774. package/dist/vega/p-7b337fd4.entry.js +0 -1
  775. package/dist/vega/p-7be3aefc.entry.js +0 -1
  776. package/dist/vega/p-7f86b3c8.js +0 -1
  777. package/dist/vega/p-7f9acdf7.entry.js +0 -1
  778. package/dist/vega/p-82dbff54.entry.js +0 -1
  779. package/dist/vega/p-8bd496b4.js +0 -1
  780. package/dist/vega/p-8c9ea6f4.js +0 -1
  781. package/dist/vega/p-94cf46ca.entry.js +0 -1
  782. package/dist/vega/p-96797fee.entry.js +0 -1
  783. package/dist/vega/p-9b673fd4.entry.js +0 -1
  784. package/dist/vega/p-9d8e2939.entry.js +0 -1
  785. package/dist/vega/p-9dfe2bbc.js +0 -1
  786. package/dist/vega/p-9fb71d8c.entry.js +0 -1
  787. package/dist/vega/p-9fd503e9.entry.js +0 -1
  788. package/dist/vega/p-a125cfec.entry.js +0 -1
  789. package/dist/vega/p-a3c4fa30.entry.js +0 -1
  790. package/dist/vega/p-a4670e23.js +0 -1
  791. package/dist/vega/p-a58bdbad.entry.js +0 -1
  792. package/dist/vega/p-a5d4d168.entry.js +0 -1
  793. package/dist/vega/p-aab0deab.js +0 -1
  794. package/dist/vega/p-adc615a4.entry.js +0 -1
  795. package/dist/vega/p-b007d0d5.entry.js +0 -1
  796. package/dist/vega/p-b406a846.entry.js +0 -1
  797. package/dist/vega/p-bd60c72e.entry.js +0 -1
  798. package/dist/vega/p-be0b67b8.entry.js +0 -1
  799. package/dist/vega/p-c0036e71.js +0 -1
  800. package/dist/vega/p-c2ac6b47.entry.js +0 -1
  801. package/dist/vega/p-c4700277.entry.js +0 -1
  802. package/dist/vega/p-c616c592.js +0 -1
  803. package/dist/vega/p-c7194674.entry.js +0 -1
  804. package/dist/vega/p-c7f292dd.entry.js +0 -1
  805. package/dist/vega/p-ce2ffff7.js +0 -1
  806. package/dist/vega/p-d01fe83d.entry.js +0 -1
  807. package/dist/vega/p-db62b038.entry.js +0 -1
  808. package/dist/vega/p-db8cdba6.js +0 -1
  809. package/dist/vega/p-dd72ad9e.js +0 -1
  810. package/dist/vega/p-e39aa2ea.entry.js +0 -1
  811. package/dist/vega/p-e88f2dc3.js +0 -1
  812. package/dist/vega/p-ead1da57.entry.js +0 -1
  813. package/dist/vega/p-ef9cbad1.js +0 -1
  814. package/dist/vega/p-f3831dc9.entry.js +0 -1
  815. package/dist/vega/p-f38a4be2.entry.js +0 -1
  816. package/dist/vega/p-f427d88c.entry.js +0 -1
  817. package/dist/vega/p-f69f84a7.js +0 -1
  818. package/dist/vega/p-f6cd7a08.entry.js +0 -1
  819. /package/dist/vega/{p-d9671d27.js → p-6c170474.js} +0 -0
@@ -1,17 +1,19 @@
1
1
  'use strict';
2
2
 
3
3
  const globalSlimmerRegistry = require('./global-slimmer-registry-b3bce7e0.js');
4
- const ui = require('./ui-9e181079.js');
5
- const functionExtension = require('./function-extension-78ec27e0.js');
4
+ const ui = require('./ui-234ea151.js');
5
+ const internalVegaZIndexManager = require('./internal-vega-z-index-manager-f03ddb37.js');
6
6
  const dynamicSlimmer = require('./dynamic-slimmer-f31fdfd7.js');
7
- const pageResizeObserverSlimmer = require('./page-resize-observer-slimmer-11937d6f.js');
7
+ const pageResizeObserverSlimmer = require('./page-resize-observer-slimmer-7f065ee1.js');
8
8
  const ui$1 = require('./ui-32e69595.js');
9
- const typeGuard = require('./type-guard-69d2cf01.js');
10
- const responsiveFormatFacade = require('./responsive-format-facade-96c5f598.js');
9
+ const typeGuard = require('./type-guard-407ba0b8.js');
10
+ const responsiveFormatFacade = require('./responsive-format-facade-ea59bdcd.js');
11
+ const tryGetDocument = require('./try-get-document-c0ebd39a.js');
12
+ const featureFlagController = require('./feature-flag-controller-04cb1e69.js');
11
13
  const changeManager = require('./change-manager-a297e4d2.js');
12
14
  const staticSubjectTitle = require('./static-subject-title-5829a298.js');
13
15
  const observer = require('./observer-f49483e8.js');
14
- const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-1c8f7880.js');
16
+ const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-c62823de.js');
15
17
  const vegaInternalEventId = require('./vega-internal-event-id-f2465f1b.js');
16
18
 
17
19
  var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
@@ -270,6 +272,17 @@ __decorate$6([
270
272
  * calculate position
271
273
  */
272
274
  class BasePositionCalculationStrategy extends globalSlimmerRegistry.VegaSlimmer {
275
+ /**
276
+ * Whether the controller should adjust/recompute position at this time.
277
+ *
278
+ * This hook allows strategies to avoid unnecessary work (for example, on scroll) by deciding
279
+ * whether a re-position is required.
280
+ *
281
+ * @returns {boolean} True when the controller should proceed with width/height/position adjustments.
282
+ */
283
+ shouldAdjustPosition() {
284
+ return true;
285
+ }
273
286
  /**
274
287
  * Get the position box.
275
288
  *
@@ -295,121 +308,46 @@ class BasePositionCalculationStrategy extends globalSlimmerRegistry.VegaSlimmer
295
308
  return positionBox;
296
309
  }
297
310
  /**
298
- * "Get the width, height, and top position of an element."
299
- *
300
- * The function takes an element as an argument and returns an object with three properties: width,
301
- * height, and top.
302
- *
303
- * Note: If element is hide, we should temporary change it to `block` to get the bounding client rect of element,
304
- * After do that, this element will change to origin `hide`, if not, it will be contained in the calculate of `document.documentElement.scrollHeight`
305
- *
306
- * @returns {ElementBoundBox} An object with the width, height, and top properties of the element.
307
- */
308
- getElementBoundBox() {
309
- const element = this.showConfig.appendableElement;
310
- const isElementHide = element.classList.contains('vega-force-hidden');
311
- if (isElementHide)
312
- element.classList.remove('vega-force-hidden');
313
- const elementRect = element.getBoundingClientRect();
314
- if (isElementHide)
315
- element.classList.add('vega-force-hidden');
316
- return {
317
- width: elementRect.width,
318
- height: elementRect.height,
319
- left: elementRect.left,
320
- top: elementRect.top,
321
- };
322
- }
323
- /**
324
- * It takes a placement string or array of placements and returns an array of placements
325
- * if given placement is single, we should completion the placements with the default {@link Placements}
326
- * and make given placement as default.
327
- * if given placement is array, we should use it directly, even it partial of {@link Placements}.
328
- * if not placement give. we should use {@link Placements}.
329
- *
330
- * @returns {PlacementType[]} ordered placements.
331
- */
332
- getPlacements() {
333
- const placement = this.showConfig.placement;
334
- if (typeof placement === 'string') {
335
- const partial = ui$1.Placements.filter((direction) => direction !== placement);
336
- return [placement, ...partial];
337
- }
338
- else if (Array.isArray(placement)) {
339
- return placement;
340
- }
341
- else {
342
- return [...ui$1.Placements];
343
- }
344
- }
345
- /**
346
- * It returns acceptable alignments.
347
- *
348
- * @returns {PositionAlignmentType[]} acceptable alignments
349
- */
350
- getAlignments() {
351
- const alignment = this.showConfig.alignment;
352
- if (typeof alignment === 'string') {
353
- const partial = ui$1.Alignments.filter((item) => item !== alignment);
354
- return [alignment, ...partial];
355
- }
356
- else if (Array.isArray(alignment)) {
357
- return alignment;
358
- }
359
- else {
360
- return [...ui$1.Alignments];
361
- }
362
- }
363
- /**
364
- * It takes a placement, a target box, and a element box, and returns an element box
311
+ * Whether the alignment space is enough
365
312
  *
366
- * @param {ElementBoundBox} elementBox - The position of the element element.
313
+ * @param {ElementScrollDimension} containerBox - The bounding box of the container element.
367
314
  * @param {ElementBoundBox} targetBox - The position of the target element.
368
- * @param {PlacementType} placement - The placement of the element.
369
- * @param {PositionAlignmentType} alignment - The alignment of the element
370
- * @returns {ElementPositionBox} An object with top and left properties.
371
- */
372
- calculatePosition(elementBox, targetBox, placement, alignment) {
373
- return {
374
- top: this.calculateTop(elementBox, targetBox, placement, alignment),
375
- left: this.calculateLeft(elementBox, targetBox, placement, alignment),
376
- };
377
- }
378
- /**
379
- * It returns the translocation of the element relative to the target element
380
- *
381
- * @param {PlacementType} placement - The suitable placement of the element.
382
- * @returns {TranslocationType} A translocation object with X and Y properties.
315
+ * @param {ElementBoundBox} elementBox - The box of the element that we're trying to position.
316
+ * @param {PlacementType} placement - The placement of the element relative to the target.
317
+ * @param {PlacementType} alignment - The alignment of the element relative to the target.
318
+ * @returns {boolean} return true if it has enough space, otherwise false
383
319
  */
384
- getTranslocationBox(placement) {
385
- const originPlacement = Array.isArray(this.showConfig.placement)
386
- ? this.showConfig.placement[0]
387
- : this.showConfig.placement;
388
- const translocation = this.getTranslocation();
389
- const result = { X: 0, Y: 0 };
390
- if (typeGuard.isTranslocationType(translocation)) {
391
- let xValue = translocation.X;
392
- let yValue = translocation.Y;
393
- // If originPlacement and placement is not in same axis, it should reverse axis.
394
- if ((originPlacement &&
395
- ['left', 'right'].includes(originPlacement) &&
396
- ['top', 'bottom'].includes(placement)) ||
397
- (originPlacement &&
398
- ['top', 'bottom'].includes(originPlacement) &&
399
- ['left', 'right'].includes(placement))) {
400
- xValue = translocation.Y;
401
- yValue = translocation.X;
402
- }
403
- if (['bottom', 'top'].includes(placement)) {
404
- result.Y = placement === 'top' ? -yValue : yValue;
405
- result.X = xValue;
320
+ hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement, alignment) {
321
+ if (['top', 'bottom'].includes(placement)) {
322
+ switch (alignment) {
323
+ case 'start': {
324
+ return targetBox.left + elementBox.width <= containerBox.width;
325
+ }
326
+ case 'center': {
327
+ return (targetBox.left >= (elementBox.width - targetBox.width) / 2 &&
328
+ targetBox.left + targetBox.width / 2 + elementBox.width / 2 <= containerBox.width);
329
+ }
330
+ case 'end': {
331
+ return targetBox.left + targetBox.width >= elementBox.width;
332
+ }
406
333
  }
407
- if (['left', 'right'].includes(placement)) {
408
- result.X = placement === 'left' ? -xValue : xValue;
409
- result.Y = yValue;
334
+ }
335
+ if (['right', 'left'].includes(placement)) {
336
+ switch (alignment) {
337
+ case 'start': {
338
+ return targetBox.top + elementBox.height <= containerBox.height;
339
+ }
340
+ case 'center': {
341
+ return (targetBox.top >= (elementBox.height - targetBox.height) / 2 &&
342
+ targetBox.top + targetBox.height / 2 + elementBox.height / 2 <= containerBox.height);
343
+ }
344
+ case 'end': {
345
+ return targetBox.top + targetBox.height >= elementBox.height;
346
+ }
410
347
  }
411
348
  }
412
- return result;
349
+ /* istanbul ignore next */
350
+ return false;
413
351
  }
414
352
  /**
415
353
  * Calculate the left position of the element
@@ -479,6 +417,24 @@ class BasePositionCalculationStrategy extends globalSlimmerRegistry.VegaSlimmer
479
417
  throw new Error(`Unexpected placement: ${placement}. Expected values are top, bottom, left, or right.`);
480
418
  }
481
419
  }
420
+ /**
421
+ * It returns acceptable alignments.
422
+ *
423
+ * @returns {PositionAlignmentType[]} acceptable alignments
424
+ */
425
+ getAlignments() {
426
+ const alignment = this.showConfig.alignment;
427
+ if (typeof alignment === 'string') {
428
+ const partial = ui$1.Alignments.filter((item) => item !== alignment);
429
+ return [alignment, ...partial];
430
+ }
431
+ else if (Array.isArray(alignment)) {
432
+ return alignment;
433
+ }
434
+ else {
435
+ return [...ui$1.Alignments];
436
+ }
437
+ }
482
438
  /**
483
439
  * It takes a list of placements and returns the first placement that has enough space to place the
484
440
  * element
@@ -503,6 +459,105 @@ class BasePositionCalculationStrategy extends globalSlimmerRegistry.VegaSlimmer
503
459
  return defaultPlacement;
504
460
  }
505
461
  }
462
+ /**
463
+ * "Get the width, height, and top position of an element."
464
+ *
465
+ * The function takes an element as an argument and returns an object with three properties: width,
466
+ * height, and top.
467
+ *
468
+ * Note: If element is hide, we should temporary change it to `block` to get the bounding client rect of element,
469
+ * After do that, this element will change to origin `hide`, if not, it will be contained in the calculate of `document.documentElement.scrollHeight`
470
+ *
471
+ * @returns {ElementBoundBox} An object with the width, height, and top properties of the element.
472
+ */
473
+ getElementBoundBox() {
474
+ const element = this.showConfig.appendableElement;
475
+ const isElementHide = element.classList.contains('vega-force-hidden');
476
+ if (isElementHide)
477
+ element.classList.remove('vega-force-hidden');
478
+ const elementRect = element.getBoundingClientRect();
479
+ if (isElementHide)
480
+ element.classList.add('vega-force-hidden');
481
+ return {
482
+ width: elementRect.width,
483
+ height: elementRect.height,
484
+ left: elementRect.left,
485
+ top: elementRect.top,
486
+ };
487
+ }
488
+ /**
489
+ * It takes a placement string or array of placements and returns an array of placements
490
+ * if given placement is single, we should completion the placements with the default {@link Placements}
491
+ * and make given placement as default.
492
+ * if given placement is array, we should use it directly, even it partial of {@link Placements}.
493
+ * if not placement give. we should use {@link Placements}.
494
+ *
495
+ * @returns {PlacementType[]} ordered placements.
496
+ */
497
+ getPlacements() {
498
+ const placement = this.showConfig.placement;
499
+ if (typeof placement === 'string') {
500
+ const partial = ui$1.Placements.filter((direction) => direction !== placement);
501
+ return [placement, ...partial];
502
+ }
503
+ else if (Array.isArray(placement)) {
504
+ return placement;
505
+ }
506
+ else {
507
+ return [...ui$1.Placements];
508
+ }
509
+ }
510
+ /**
511
+ * It takes a placement, a target box, and a element box, and returns an element box
512
+ *
513
+ * @param {ElementBoundBox} elementBox - The position of the element element.
514
+ * @param {ElementBoundBox} targetBox - The position of the target element.
515
+ * @param {PlacementType} placement - The placement of the element.
516
+ * @param {PositionAlignmentType} alignment - The alignment of the element
517
+ * @returns {ElementPositionBox} An object with top and left properties.
518
+ */
519
+ calculatePosition(elementBox, targetBox, placement, alignment) {
520
+ return {
521
+ top: this.calculateTop(elementBox, targetBox, placement, alignment),
522
+ left: this.calculateLeft(elementBox, targetBox, placement, alignment),
523
+ };
524
+ }
525
+ /**
526
+ * It returns the translocation of the element relative to the target element
527
+ *
528
+ * @param {PlacementType} placement - The suitable placement of the element.
529
+ * @returns {TranslocationType} A translocation object with X and Y properties.
530
+ */
531
+ getTranslocationBox(placement) {
532
+ const originPlacement = Array.isArray(this.showConfig.placement)
533
+ ? this.showConfig.placement[0]
534
+ : this.showConfig.placement;
535
+ const translocation = this.getTranslocation();
536
+ const result = { X: 0, Y: 0 };
537
+ if (typeGuard.isTranslocationType(translocation)) {
538
+ let xValue = translocation.X;
539
+ let yValue = translocation.Y;
540
+ // If originPlacement and placement is not in same axis, it should reverse axis.
541
+ if ((originPlacement &&
542
+ ['left', 'right'].includes(originPlacement) &&
543
+ ['top', 'bottom'].includes(placement)) ||
544
+ (originPlacement &&
545
+ ['top', 'bottom'].includes(originPlacement) &&
546
+ ['left', 'right'].includes(placement))) {
547
+ xValue = translocation.Y;
548
+ yValue = translocation.X;
549
+ }
550
+ if (['bottom', 'top'].includes(placement)) {
551
+ result.Y = placement === 'top' ? -yValue : yValue;
552
+ result.X = xValue;
553
+ }
554
+ if (['left', 'right'].includes(placement)) {
555
+ result.X = placement === 'left' ? -xValue : xValue;
556
+ result.Y = yValue;
557
+ }
558
+ }
559
+ return result;
560
+ }
506
561
  /**
507
562
  * It takes a list of alignments and returns the suitable one that has enough space to fit the element
508
563
  *
@@ -527,48 +582,6 @@ class BasePositionCalculationStrategy extends globalSlimmerRegistry.VegaSlimmer
527
582
  return defaultAlignment;
528
583
  }
529
584
  }
530
- /**
531
- * Whether the alignment space is enough
532
- *
533
- * @param {ElementScrollDimension} containerBox - The bounding box of the container element.
534
- * @param {ElementBoundBox} targetBox - The position of the target element.
535
- * @param {ElementBoundBox} elementBox - The box of the element that we're trying to position.
536
- * @param {PlacementType} placement - The placement of the element relative to the target.
537
- * @param {PlacementType} alignment - The alignment of the element relative to the target.
538
- * @returns {boolean} return true if it has enough space, otherwise false
539
- */
540
- hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement, alignment) {
541
- if (['top', 'bottom'].includes(placement)) {
542
- switch (alignment) {
543
- case 'start': {
544
- return targetBox.left + elementBox.width <= containerBox.width;
545
- }
546
- case 'center': {
547
- return (targetBox.left >= (elementBox.width - targetBox.width) / 2 &&
548
- targetBox.left + targetBox.width / 2 + elementBox.width / 2 <= containerBox.width);
549
- }
550
- case 'end': {
551
- return targetBox.left + targetBox.width >= elementBox.width;
552
- }
553
- }
554
- }
555
- if (['right', 'left'].includes(placement)) {
556
- switch (alignment) {
557
- case 'start': {
558
- return targetBox.top + elementBox.height <= containerBox.height;
559
- }
560
- case 'center': {
561
- return (targetBox.top >= (elementBox.height - targetBox.height) / 2 &&
562
- targetBox.top + targetBox.height / 2 + elementBox.height / 2 <= containerBox.height);
563
- }
564
- case 'end': {
565
- return targetBox.top + targetBox.height >= elementBox.height;
566
- }
567
- }
568
- }
569
- /* istanbul ignore next */
570
- return false;
571
- }
572
585
  /**
573
586
  * If the placement is top or left, then the target's top or left position must be greater than or
574
587
  * equal to the element's height or width. If the placement is bottom or right, then the container's
@@ -671,6 +684,60 @@ __decorate$5([
671
684
  globalSlimmerRegistry.MapToComponentField()
672
685
  ], BodyPositionCalculationStrategy.prototype, "showConfig", void 0);
673
686
 
687
+ /**
688
+ * Updates position on scroll When the target rect changes, we recompute placement/alignment.
689
+ */
690
+ class ScreenScrollPositionUpdate {
691
+ constructor() {
692
+ this.viewportWidth = window.innerWidth;
693
+ this.viewportHeight = window.innerHeight;
694
+ }
695
+ /**
696
+ * Determines whether the appendable element's position should update on scroll.
697
+ *
698
+ * @param {ScrollPositionUpdateStrategyContext} context - Current/previous rectangles plus viewport size.
699
+ * @returns {ScrollPositionUpdateDecision} Decision that indicates whether to recompute position.
700
+ */
701
+ shouldUpdatePosition(context) {
702
+ const { previousTargetRect, currentTargetRect, appendableRect, viewportWidth, viewportHeight, } = context;
703
+ this.viewportWidth = viewportWidth;
704
+ this.viewportHeight = viewportHeight;
705
+ const targetChanged = !previousTargetRect ||
706
+ currentTargetRect.left !== previousTargetRect.left ||
707
+ currentTargetRect.top !== previousTargetRect.top;
708
+ const isTargetWithinViewport = !this.isRectOutsideViewport(currentTargetRect);
709
+ const isAppendableNotEntirelyInViewport = !this.isRectEntirelyWithinViewport(appendableRect);
710
+ return {
711
+ shouldUpdate: targetChanged && isTargetWithinViewport && isAppendableNotEntirelyInViewport,
712
+ };
713
+ }
714
+ /**
715
+ * Whether the rect is fully within the viewport bounds.
716
+ *
717
+ * @param {DOMRect} rect - The DOMRect to check.
718
+ * @returns {boolean} True when rect is fully within the viewport.
719
+ */
720
+ isRectEntirelyWithinViewport(rect) {
721
+ return (rect.left >= 0 &&
722
+ rect.top >= 0 &&
723
+ rect.right <= this.viewportWidth &&
724
+ rect.bottom <= this.viewportHeight);
725
+ }
726
+ /**
727
+ * Whether the element is fully outside the viewport.
728
+ * If true, the rect has "disappeared" from the viewport.
729
+ *
730
+ * @param {DOMRect} rect - The DOMRect to check.
731
+ * @returns {boolean} True when rect is completely outside viewport bounds.
732
+ */
733
+ isRectOutsideViewport(rect) {
734
+ return (rect.right <= 0 ||
735
+ rect.bottom <= 0 ||
736
+ rect.left >= this.viewportWidth ||
737
+ rect.top >= this.viewportHeight);
738
+ }
739
+ }
740
+
674
741
  var __decorate$4 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
675
742
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
676
743
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -681,6 +748,76 @@ var __decorate$4 = (undefined && undefined.__decorate) || function (decorators,
681
748
  * calculate position by screen container
682
749
  */
683
750
  class ScreenPositionCalculationStrategy extends BasePositionCalculationStrategy {
751
+ constructor() {
752
+ super(...arguments);
753
+ this.scrollFrameRequestId = null;
754
+ this.usePreviousPlacement = false;
755
+ this.scrollPositionUpdateStrategy = new ScreenScrollPositionUpdate();
756
+ }
757
+ /**
758
+ * For screen-positioned appendable we may get a lot of scroll events.
759
+ * This hook throttles the check with requestAnimationFrame and only allows an adjust when
760
+ * the strategy determines we should update.
761
+ *
762
+ * @returns {boolean} True when controller should perform a position adjustment.
763
+ */
764
+ shouldAdjustPosition() {
765
+ if (this.scrollFrameRequestId !== null) {
766
+ return false;
767
+ }
768
+ if (!featureFlagController.FeatureFlag.isEnabled('VEGA_ELEMENT_APPENDER.AUTO_PLACEMENT')) {
769
+ this.usePreviousPlacement = true;
770
+ return true;
771
+ }
772
+ if (!this.previousTargetRect) {
773
+ this.previousTargetRect = this.showConfig.target.getBoundingClientRect();
774
+ this.usePreviousPlacement = false;
775
+ return true;
776
+ }
777
+ /**
778
+ * This avoids doing expensive DOM reads on every scroll event, while still
779
+ * updating placement/alignment when the trigger moves and the appendable
780
+ * would be clipped by the viewport (auto placement).
781
+ *
782
+ * The below method is e2e-test covered in @see{module:the-screen-position-scroll-RAFCallback-trigger-as-expected}
783
+ */
784
+ /* istanbul ignore next */
785
+ this.scrollFrameRequestId = requestAnimationFrame(() => {
786
+ var _a;
787
+ this.scrollFrameRequestId = null;
788
+ let viewportWidth = window.innerWidth;
789
+ let viewportHeight = window.innerHeight;
790
+ if (this.showConfig.positionRelativeTo) {
791
+ const containerDom = (_a = tryGetDocument.tryGetDocument()) === null || _a === void 0 ? void 0 : _a.querySelector(this.showConfig.positionRelativeTo);
792
+ if (containerDom) {
793
+ viewportWidth = containerDom.getBoundingClientRect().width;
794
+ viewportHeight = containerDom.getBoundingClientRect().height;
795
+ }
796
+ }
797
+ const currentTargetRect = this.showConfig.target.getBoundingClientRect();
798
+ const appendableRect = this.showConfig.appendableElement.getBoundingClientRect();
799
+ const { shouldUpdate } = this.scrollPositionUpdateStrategy.shouldUpdatePosition({
800
+ currentTargetRect,
801
+ previousTargetRect: this.previousTargetRect,
802
+ appendableRect,
803
+ viewportWidth,
804
+ viewportHeight,
805
+ });
806
+ this.usePreviousPlacement = !shouldUpdate;
807
+ this.previousTargetRect = currentTargetRect;
808
+ });
809
+ return true;
810
+ }
811
+ /**
812
+ * Clears any pending scroll animation frame callback.
813
+ * Call this when popover is hidden/destroyed to avoid leaks and stale callbacks.
814
+ */
815
+ clearScrollFrame() {
816
+ if (this.scrollFrameRequestId !== null) {
817
+ cancelAnimationFrame(this.scrollFrameRequestId);
818
+ this.scrollFrameRequestId = null;
819
+ }
820
+ }
684
821
  /**
685
822
  * Get the position of the element in the container according to the target element and the placement
686
823
  * If give a translocation, it will apply the translocation to the result.
@@ -690,7 +827,8 @@ class ScreenPositionCalculationStrategy extends BasePositionCalculationStrategy
690
827
  * returns an ElementPositionBox.
691
828
  */
692
829
  getPosition(usePreviousPlacement) {
693
- const positionBox = usePreviousPlacement
830
+ const stayPlacement = usePreviousPlacement ? this.usePreviousPlacement : false;
831
+ const positionBox = stayPlacement
694
832
  ? this.getPositionBox([this.previousPositionBox.placement], [this.previousPositionBox.alignment])
695
833
  : this.getPositionBox();
696
834
  this.previousPositionBox = positionBox;
@@ -724,6 +862,43 @@ class ScreenPositionCalculationStrategy extends BasePositionCalculationStrategy
724
862
  height: window.innerHeight,
725
863
  };
726
864
  }
865
+ /**
866
+ * Whether the alignment space is enough
867
+ *
868
+ * @param {ElementScrollDimension} containerBox - The bounding box of the container element.
869
+ * @param {ElementBoundBox} targetBox - The position of the target element.
870
+ * @param {ElementBoundBox} elementBox - The box of the element that we're trying to position.
871
+ * @param {PlacementType} placement - The placement of the element relative to the target.
872
+ * @param {PlacementType} alignment - The alignment of the element relative to the target.
873
+ * @returns {boolean} return true if it has enough space, otherwise false
874
+ */
875
+ hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement, alignment) {
876
+ const left = this.calculateLeft(elementBox, targetBox, placement, alignment);
877
+ const top = this.calculateTop(elementBox, targetBox, placement, alignment);
878
+ return (left >= 0 &&
879
+ top >= 0 &&
880
+ left + elementBox.width <= containerBox.width &&
881
+ top + elementBox.height <= containerBox.height);
882
+ }
883
+ /**
884
+ * Screen-specific suitable placement selection.
885
+ * Tries to find a placement that has enough alignment space within the viewport first,
886
+ * otherwise falls back to the base strategy.
887
+ *
888
+ * @param {ElementScrollDimension} containerBox - The bounding box of the container.
889
+ * @param {ElementBoundBox} elementBox - The box of the element to place.
890
+ * @param {ElementBoundBox} targetBox - The box of the target element.
891
+ * @param {PlacementType[]} placements - Ordered list of placements to try.
892
+ * @returns {PlacementType} The chosen placement.
893
+ */
894
+ getSuitablePlacement(containerBox, elementBox, targetBox, placements) {
895
+ const alignments = this.getAlignments();
896
+ const suitablePlacement = placements.find((placement) => alignments.some((alignment) => this.hasEnoughAlignmentSpace(containerBox, targetBox, elementBox, placement, alignment)));
897
+ if (suitablePlacement) {
898
+ return suitablePlacement;
899
+ }
900
+ return super.getSuitablePlacement(containerBox, elementBox, targetBox, placements);
901
+ }
727
902
  }
728
903
  __decorate$4([
729
904
  globalSlimmerRegistry.MapToComponentField()
@@ -744,6 +919,13 @@ class PositionCalculationController extends globalSlimmerRegistry.VegaSlimmer {
744
919
  this.bodyPositionStrategy = new BodyPositionCalculationStrategy();
745
920
  this.screenPositionStrategy = new ScreenPositionCalculationStrategy();
746
921
  }
922
+ /**
923
+ * Clears any pending screen-position scroll animation frame callback.
924
+ * Call this when the appendable is hidden/destroyed.
925
+ */
926
+ clearScreenPositionScrollFrame() {
927
+ this.screenPositionStrategy.clearScrollFrame();
928
+ }
747
929
  /**
748
930
  * Sets the calculate postion strategy.
749
931
  */
@@ -758,6 +940,8 @@ class PositionCalculationController extends globalSlimmerRegistry.VegaSlimmer {
758
940
  * @param {boolean} [usePreviousPlacement] - Should keep use previous placement and alignment.
759
941
  */
760
942
  adjustPosition(usePreviousPlacement) {
943
+ if (!this.positionStrategy.shouldAdjustPosition())
944
+ return;
761
945
  this.adjustWidth();
762
946
  this.adjustHeight();
763
947
  this.applyPosition(this.positionStrategy.getPosition(usePreviousPlacement));
@@ -920,6 +1104,7 @@ class ElementAppender {
920
1104
  * @returns {void} Nothing is being returned.
921
1105
  */
922
1106
  show() {
1107
+ this.positionCalculationController.clearScreenPositionScrollFrame();
923
1108
  this.setShowConfig();
924
1109
  if (!this.showConfig.target) {
925
1110
  globalSlimmerRegistry.LogUtility.error(`No target element found, please add it at new elementAppender.`);
@@ -943,19 +1128,16 @@ class ElementAppender {
943
1128
  hide() {
944
1129
  if (!this.showConfig)
945
1130
  return;
1131
+ this.positionCalculationController.clearScreenPositionScrollFrame();
946
1132
  this.toggleShow(false);
947
1133
  this.resetContainerPosition();
948
- functionExtension.InternalVegaZIndexManager.removeZIndex(this.showConfig.appendableElement, 'base');
1134
+ internalVegaZIndexManager.InternalVegaZIndexManager.removeZIndex(this.showConfig.appendableElement, 'base');
949
1135
  }
950
1136
  /**
951
1137
  * Update position while window scroll.
952
1138
  */
953
1139
  onScroll() {
954
- var _a;
955
- const currentTargetRect = this.showConfig.target.getBoundingClientRect();
956
- if (this.showConfig.isScreenPosition &&
957
- (currentTargetRect.left !== ((_a = this.previousTargetRect) === null || _a === void 0 ? void 0 : _a.left) ||
958
- currentTargetRect.top !== this.previousTargetRect.top)) {
1140
+ if (this.showConfig.isScreenPosition) {
959
1141
  this.adjustPosition(true);
960
1142
  }
961
1143
  }
@@ -967,9 +1149,10 @@ class ElementAppender {
967
1149
  destroy() {
968
1150
  if (!this.showConfig)
969
1151
  return;
1152
+ this.positionCalculationController.clearScreenPositionScrollFrame();
970
1153
  this.removeVisibleAppendElement(this.showConfig.appendableElement);
971
1154
  this.resetContainerPosition();
972
- functionExtension.InternalVegaZIndexManager.removeZIndex(this.showConfig.appendableElement, 'base');
1155
+ internalVegaZIndexManager.InternalVegaZIndexManager.removeZIndex(this.showConfig.appendableElement, 'base');
973
1156
  this.showConfig.appendableElement.remove();
974
1157
  this.disconnectResizeObserver();
975
1158
  }
@@ -1124,7 +1307,7 @@ class ElementAppender {
1124
1307
  * @returns {void}
1125
1308
  */
1126
1309
  setZIndex() {
1127
- functionExtension.InternalVegaZIndexManager.setZIndex(this.showConfig.appendableElement, 'base');
1310
+ internalVegaZIndexManager.InternalVegaZIndexManager.setZIndex(this.showConfig.appendableElement, 'base');
1128
1311
  }
1129
1312
  /**
1130
1313
  * If the showConfigCallback is a function, call it and return the result, otherwise return the
@@ -1259,6 +1442,106 @@ __decorate$1([
1259
1442
  globalSlimmerRegistry.MapToComponentMethod('hide')
1260
1443
  ], ElementAppenderHierarchyTreeManager.prototype, "onHide", null);
1261
1444
 
1445
+ /**
1446
+ * ClickTriggerStrategy handles 'targetClick' and 'globalMouseDown' events to toggle or hide the appendable element.
1447
+ */
1448
+ class ClickTriggerStrategy {
1449
+ /**
1450
+ * Determines if the strategy can evaluate the given event type.
1451
+ *
1452
+ * @param {VegaEAEventType} type - The type of the event.
1453
+ * @returns {boolean} True if the event type is 'targetClick' or 'globalMouseDown', otherwise false.
1454
+ */
1455
+ canEvaluate(type) {
1456
+ return type === 'target-click' || type === 'click-outside';
1457
+ }
1458
+ /**
1459
+ * Evaluates the trigger context and determines whether to show, hide, or toggle the appendable element.
1460
+ *
1461
+ * @param {VegaEATriggerContext} context - The context of the trigger event.
1462
+ * @returns {VegaEATriggerResult} An object indicating whether to show, hide, or toggle the appendable element.
1463
+ */
1464
+ evaluate(context) {
1465
+ if (context.eventType === 'target-click') {
1466
+ return {
1467
+ nextAction: context.currentState.isVisible ? 'hide' : 'show',
1468
+ };
1469
+ }
1470
+ if (context.eventType === 'click-outside' && context.currentState.isVisible) {
1471
+ return {
1472
+ nextAction: 'hide',
1473
+ };
1474
+ }
1475
+ return {};
1476
+ }
1477
+ }
1478
+
1479
+ /**
1480
+ * HoverTriggerStrategy handles mouse enter and leave events on the target and appendable elements,
1481
+ * as well as global mouse down events to show or hide the appendable element.
1482
+ */
1483
+ class HoverTriggerStrategy {
1484
+ /**
1485
+ * Determines if the strategy can evaluate the given event type.
1486
+ *
1487
+ * @param {VegaEAEventType} type - The type of the event.
1488
+ * @returns {boolean} True if the event type is related to hover actions or global mouse down, otherwise false.
1489
+ */
1490
+ canEvaluate(type) {
1491
+ return [
1492
+ 'target-mouseenter',
1493
+ 'target-mouseleave',
1494
+ 'element-mouseenter',
1495
+ 'element-mouseleave',
1496
+ ].includes(type);
1497
+ }
1498
+ /**
1499
+ * Evaluates the trigger context and determines whether to show, hide, or toggle the appendable element.
1500
+ *
1501
+ * @param {VegaEATriggerContext} context - The context of the trigger event.
1502
+ * @returns {VegaEATriggerResult} An object indicating whether to show, hide, or toggle the appendable element.
1503
+ */
1504
+ evaluate(context) {
1505
+ if (['target-mouseenter', 'element-mouseenter'].includes(context.eventType)) {
1506
+ return !context.currentState.isVisible
1507
+ ? {
1508
+ nextAction: 'show',
1509
+ }
1510
+ : {};
1511
+ }
1512
+ if (['target-mouseleave', 'element-mouseleave'].includes(context.eventType)) {
1513
+ return {
1514
+ nextAction: 'hide',
1515
+ };
1516
+ }
1517
+ /* istanbul ignore next */
1518
+ return {};
1519
+ }
1520
+ }
1521
+
1522
+ /**
1523
+ * NoneTriggerStrategy does not respond to any events and always indicates no action.
1524
+ */
1525
+ class NoneTriggerStrategy {
1526
+ /**
1527
+ * Determines if the strategy can evaluate the given event type.
1528
+ *
1529
+ * @returns {boolean} Always false as this strategy does not respond to any events.
1530
+ */
1531
+ canEvaluate() {
1532
+ return false;
1533
+ }
1534
+ /* istanbul ignore next */
1535
+ /**
1536
+ * Evaluates the trigger context and always indicates no action.
1537
+ *
1538
+ * @returns {VegaEATriggerResult} An object indicating no action (no show, hide, or toggle).
1539
+ */
1540
+ evaluate() {
1541
+ return {};
1542
+ }
1543
+ }
1544
+
1262
1545
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1263
1546
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1264
1547
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -1290,25 +1573,28 @@ class ElementAppenderSlimmer extends globalSlimmerRegistry.VegaSlimmer {
1290
1573
  };
1291
1574
  /* It's a function that listens to the click event on the dropdown. It checks if the trigger
1292
1575
  property is equal to 'click'. If it is, then it toggles the dropdown. */
1293
- this.targetClickHandler = () => {
1294
- if (this.shouldListenerWork('click')) {
1295
- this.isShowing() ? this.hide() : this.show();
1576
+ this.targetClickHandler = (event) => {
1577
+ const triggerStrategy = this.getTriggerStrategy();
1578
+ if (triggerStrategy.canEvaluate('target-click')) {
1579
+ this.executeTriggerStrategy(triggerStrategy, event, 'target-click');
1296
1580
  }
1297
1581
  };
1298
1582
  /* It's a function that listens to the mouseenter event on the dropdown. It checks if the trigger
1299
1583
  property is equal to 'hover'. If it is, then it clears the timer. */
1300
- this.targetMouseEnterHandler = () => {
1301
- if (this.shouldListenerWork('hover')) {
1302
- this.isShowing() === false && this.show();
1584
+ this.targetMouseEnterHandler = (event) => {
1585
+ const triggerStrategy = this.getTriggerStrategy();
1586
+ if (triggerStrategy.canEvaluate('target-mouseenter')) {
1587
+ this.executeTriggerStrategy(triggerStrategy, event, 'target-mouseenter');
1303
1588
  this.clearDelayHideTimer();
1304
1589
  }
1305
1590
  };
1306
1591
  /* It's a function that listens to the mouseleave event on the dropdown. It checks if the trigger
1307
1592
  property is equal to 'hover'. If it is, then it creates a timer that will hide the dropdown after a
1308
1593
  certain amount of time. */
1309
- this.targetMouseLeaveHandler = () => {
1310
- if (this.shouldListenerWork('hover')) {
1311
- this.createDelayHideTimer();
1594
+ this.targetMouseLeaveHandler = (event) => {
1595
+ const triggerStrategy = this.getTriggerStrategy();
1596
+ if (triggerStrategy.canEvaluate('target-mouseleave')) {
1597
+ this.createDelayHideTimer(event, 'target-mouseleave');
1312
1598
  }
1313
1599
  };
1314
1600
  /* istanbul ignore next */
@@ -1316,7 +1602,7 @@ class ElementAppenderSlimmer extends globalSlimmerRegistry.VegaSlimmer {
1316
1602
  this.targetFocusoutHandler = (e) => {
1317
1603
  var _a;
1318
1604
  if (!ui.isParent(e.relatedTarget, (_a = this.showConfig) === null || _a === void 0 ? void 0 : _a.appendableElement)) {
1319
- this.targetMouseLeaveHandler();
1605
+ this.targetMouseLeaveHandler(e);
1320
1606
  }
1321
1607
  };
1322
1608
  /* It's a function that listens to the mouseenter event on the dropdown. It checks if the trigger
@@ -1324,18 +1610,20 @@ class ElementAppenderSlimmer extends globalSlimmerRegistry.VegaSlimmer {
1324
1610
  this.elementMouseEnterHandler = () => {
1325
1611
  var _a;
1326
1612
  (_a = this.hierarchyTreeManager.getParent()) === null || _a === void 0 ? void 0 : _a.elementMouseEnterHandler();
1327
- if (this.shouldListenerWork('hover') && !this.disableInteractiveGetter()) {
1613
+ const triggerStrategy = this.getTriggerStrategy();
1614
+ if (triggerStrategy.canEvaluate('element-mouseenter') && !this.disableInteractiveGetter()) {
1328
1615
  this.clearDelayHideTimer();
1329
1616
  }
1330
1617
  };
1331
1618
  /* It's a function that listens to the mouseleave event on the dropdown. It checks if the trigger
1332
1619
  property is equal to 'hover'. If it is, then it creates a timer that will hide the dropdown after a
1333
1620
  certain amount of time. */
1334
- this.elementMouseLeaveHandler = () => {
1621
+ this.elementMouseLeaveHandler = (event) => {
1335
1622
  var _a;
1336
- (_a = this.hierarchyTreeManager.getParent()) === null || _a === void 0 ? void 0 : _a.elementMouseLeaveHandler();
1337
- if (this.shouldListenerWork('hover') && !this.disableInteractiveGetter()) {
1338
- this.createDelayHideTimer();
1623
+ (_a = this.hierarchyTreeManager.getParent()) === null || _a === void 0 ? void 0 : _a.elementMouseLeaveHandler(event);
1624
+ const triggerStrategy = this.getTriggerStrategy();
1625
+ if (triggerStrategy.canEvaluate('element-mouseleave') && !this.disableInteractiveGetter()) {
1626
+ this.createDelayHideTimer(event, 'element-mouseleave');
1339
1627
  }
1340
1628
  };
1341
1629
  /* It's a function that listens to the global mousedown event. It checks if the dropdown is showing,
@@ -1346,15 +1634,15 @@ class ElementAppenderSlimmer extends globalSlimmerRegistry.VegaSlimmer {
1346
1634
  const hasChildShowing = this.hierarchyTreeManager
1347
1635
  .getChildren()
1348
1636
  .some((child) => child.isShowing());
1637
+ const triggerStrategy = this.getTriggerStrategy();
1349
1638
  if (!hasChildShowing &&
1350
- this.shouldListenerWork('custom') &&
1351
- this.isShowing() &&
1639
+ triggerStrategy.canEvaluate('click-outside') &&
1352
1640
  this.showConfig &&
1353
1641
  !ui.isParent(currentTarget, this.showConfig.appendableElement) &&
1354
1642
  !ui.isParent(currentTarget, this.showConfig.target) &&
1355
1643
  (this.showConfig.isScreenPosition ||
1356
1644
  ui.findParent(currentTarget, 'vega-modal') === ui.findParent(this.showConfig.target, 'vega-modal'))) {
1357
- this.hide();
1645
+ this.executeTriggerStrategy(triggerStrategy, e, 'click-outside');
1358
1646
  }
1359
1647
  };
1360
1648
  /* istanbul ignore next */
@@ -1366,9 +1654,10 @@ class ElementAppenderSlimmer extends globalSlimmerRegistry.VegaSlimmer {
1366
1654
  }
1367
1655
  };
1368
1656
  /* A timer that will hide the dropdown after a certain amount of time. */
1369
- this.createDelayHideTimer = () => {
1657
+ this.createDelayHideTimer = (event, eventType) => {
1658
+ const triggerStrategy = this.getTriggerStrategy();
1370
1659
  this.delayHideTimer = setTimeout(() => {
1371
- this.hide();
1660
+ this.executeTriggerStrategy(triggerStrategy, event, eventType);
1372
1661
  clearTimeout(this.delayHideTimer);
1373
1662
  }, ElementAppenderSlimmer.DELAY_HIDE_TIME);
1374
1663
  };
@@ -1376,19 +1665,22 @@ class ElementAppenderSlimmer extends globalSlimmerRegistry.VegaSlimmer {
1376
1665
  this.clearDelayHideTimer = () => {
1377
1666
  this.delayHideTimer && clearTimeout(this.delayHideTimer);
1378
1667
  };
1379
- /* It's a function that checks if the listener should work or not. */
1380
- this.shouldListenerWork = (trigger) => {
1381
- const currentTrigger = this.getTrigger();
1382
- switch (trigger) {
1383
- case 'custom':
1384
- return currentTrigger !== 'none';
1385
- case 'click':
1386
- return currentTrigger === 'click';
1387
- case 'hover':
1388
- return currentTrigger === 'hover';
1668
+ this.executeTriggerStrategy = (triggerStrategy, event, eventType) => {
1669
+ if (this.showConfig) {
1670
+ const result = triggerStrategy.evaluate({
1671
+ target: this.showConfig.target,
1672
+ appendableElement: this.showConfig.appendableElement,
1673
+ htmlEvent: event,
1674
+ eventType: eventType,
1675
+ currentState: {
1676
+ isVisible: this.isShowing(),
1677
+ },
1678
+ });
1679
+ if (result) {
1680
+ result.nextAction === 'hide' && this.hide();
1681
+ result.nextAction === 'show' && this.show();
1682
+ }
1389
1683
  }
1390
- /* istanbul ignore next */
1391
- throw new Error(`Unexpected trigger: ${trigger}. Expected values are custom, click, or hover.`);
1392
1684
  };
1393
1685
  this.showConfigFactory = showConfigFactory;
1394
1686
  this.getTrigger = getTrigger;
@@ -1490,6 +1782,21 @@ class ElementAppenderSlimmer extends globalSlimmerRegistry.VegaSlimmer {
1490
1782
  removeShadowRootElementScrolling() {
1491
1783
  changeManager.ChangeManager.unregister(staticSubjectTitle.SHADOW_ROOT_ELEMENT_SCROLLING, this.shadowRootElementScrollingObserver);
1492
1784
  }
1785
+ getTriggerStrategy() {
1786
+ const trigger = this.getTrigger();
1787
+ if (trigger === 'click') {
1788
+ return new ClickTriggerStrategy();
1789
+ }
1790
+ else if (trigger === 'hover') {
1791
+ return new HoverTriggerStrategy();
1792
+ }
1793
+ else if (typeGuard.isEATriggerStrategy(trigger)) {
1794
+ return trigger;
1795
+ }
1796
+ else {
1797
+ return new NoneTriggerStrategy();
1798
+ }
1799
+ }
1493
1800
  }
1494
1801
  ElementAppenderSlimmer.DELAY_HIDE_TIME = 100;
1495
1802
  __decorate([