@heartlandone/vega 2.75.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 (752) hide show
  1. package/dist/cjs/{app-globals-bf183914.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-aca87dac.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/{code-block-c1d2e6a8.js → code-block-f1480ec3.js} +17 -17
  6. package/dist/cjs/{component-global-style-slimmer-adfa2e59.js → component-global-style-slimmer-93c5fb50.js} +2 -1
  7. package/dist/cjs/{component-usage-runtime-metrics-d10ace87.js → component-usage-runtime-metrics-4572c5b7.js} +1 -1
  8. package/dist/cjs/{component-value-history-controller-slimmer.abstract-787c67dc.js → component-value-history-controller-slimmer.abstract-a9264cc8.js} +5 -5
  9. package/dist/cjs/{create-public-api-runtime-metrics-slimmer-e2e274e1.js → create-public-api-runtime-metrics-slimmer-9cb09fb2.js} +3 -41
  10. package/dist/cjs/{dark-mode-style-controller-c21172aa.js → dark-mode-style-controller-3a04af3d.js} +292 -1254
  11. package/dist/cjs/{date-required-rule-30ee62d0.js → date-required-rule-912469e0.js} +1 -1
  12. package/dist/cjs/{design-token-cbc01283.js → design-token-41baf118.js} +2 -2
  13. package/dist/cjs/dom-node-subject-observer-factory-c62823de.js +141 -0
  14. package/dist/cjs/{dto-renderer-manager-2fc24151.js → dto-renderer-manager-809c947b.js} +230 -55
  15. package/dist/cjs/{element-appender-slimmer-318d29c7.js → element-appender-slimmer-34e4eb56.js} +349 -166
  16. package/dist/cjs/{event-emit-slimmer-2dacabbd.js → event-emit-slimmer-062cdcb8.js} +2 -2
  17. package/dist/cjs/{feature-flag-controller-ce2162c8.js → feature-flag-controller-04cb1e69.js} +7 -1
  18. package/dist/cjs/{form-field-controller-slimmer-aef2fb1e.js → form-field-controller-slimmer-102f37c7.js} +13 -14
  19. package/dist/cjs/{internal-icon-manager-32f9ed63.js → icon-manager-c12c6ea9.js} +1 -52
  20. package/dist/cjs/{image-annotation-action-e4a35325.js → image-annotation-action-8d9fa20c.js} +10 -9
  21. package/dist/cjs/index-592b4052.js +220 -0
  22. package/dist/cjs/{index-4d7bce1a.js → index-f054eb5d.js} +15 -3
  23. package/dist/cjs/index.cjs.js +68 -65
  24. package/dist/cjs/{inject-keyboard-manager-d21b4387.js → inject-keyboard-manager-0f5bd568.js} +1 -1
  25. package/dist/cjs/internal-icon-manager-c989189a.js +55 -0
  26. package/dist/cjs/{translation-5f9f9c0c.js → internal-translation-controller-053eb0f1.js} +0 -93
  27. package/dist/cjs/{internal-vega-event-manager-6befeb34.js → internal-vega-event-manager-f7ecf3d4.js} +81 -81
  28. package/dist/cjs/internal-vega-z-index-manager-f03ddb37.js +180 -0
  29. package/dist/cjs/{keyboard-manager-3dea6b28.js → keyboard-manager-055e9f67.js} +2 -2
  30. package/dist/cjs/{keyboard-manager-slimmer-0d45f944.js → keyboard-manager-slimmer-0cc0c1c7.js} +1 -1
  31. package/dist/cjs/loader.cjs.js +26 -23
  32. package/dist/cjs/misc-3d30df91.js +41 -0
  33. package/dist/cjs/{month-view-generator-49cc5fc2.js → month-view-generator-6a6dd527.js} +1 -1
  34. package/dist/cjs/{page-resize-observer-slimmer-11937d6f.js → page-resize-observer-slimmer-7f065ee1.js} +2 -54
  35. package/dist/cjs/{public-rules-661823fa.js → public-rules-922849f3.js} +12 -13
  36. package/dist/cjs/{range-79b668e7.js → range-8aa49b08.js} +2 -2
  37. package/dist/cjs/{responsive-format-facade-f71d399c.js → responsive-format-facade-ea59bdcd.js} +13 -22
  38. package/dist/cjs/{rich-text-editor-required-rule-d5feeffd.js → rich-text-editor-required-rule-22225840.js} +1 -1
  39. package/dist/cjs/{string-format-strategy.abstract-63514c60.js → string-format-strategy.abstract-f2575647.js} +1 -1
  40. package/dist/cjs/{string-input-formatter-slimmer-f3e0bbc7.js → string-input-formatter-slimmer-0a334fc6.js} +5 -5
  41. package/dist/cjs/{string-mask-strategy-d23ac21a.js → string-mask-strategy-dda58395.js} +2 -2
  42. package/dist/cjs/{style-formatter-566df206.js → style-formatter-0c3ced39.js} +2 -2
  43. package/dist/cjs/{sub-state-notify-slimmer-468e19aa.js → sub-state-notify-slimmer-58121111.js} +1 -1
  44. package/dist/cjs/{sub-state-observer-slimmer-5d0b8ac3.js → sub-state-observer-slimmer-1dfbc4c3.js} +2 -2
  45. package/dist/cjs/{time-required-rule-c96ecdc9.js → time-required-rule-d6fa7aa8.js} +1 -1
  46. package/dist/cjs/{function-extension-ca9aa115.js → token-extension-07cac85d.js} +501 -387
  47. package/dist/cjs/{translation-slimmer-f0ebe710.js → translation-slimmer-4533bd67.js} +4 -4
  48. package/dist/cjs/{type-guard-a0f026d8.js → type-guard-407ba0b8.js} +3 -3
  49. package/dist/cjs/{ui-9e181079.js → ui-234ea151.js} +12 -0
  50. package/dist/cjs/{valid-credit-card-number-rule-c854bed9.js → valid-credit-card-number-rule-41a8b51b.js} +1 -1
  51. package/dist/cjs/vega-accordion.cjs.entry.js +21 -30
  52. package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
  53. package/dist/cjs/vega-app-header-button.cjs.entry.js +183 -49
  54. package/dist/cjs/vega-backdrop.cjs.entry.js +2 -2
  55. package/dist/cjs/vega-banner.cjs.entry.js +15 -13
  56. package/dist/cjs/vega-bar-chart.cjs.entry.js +1 -1
  57. package/dist/cjs/vega-box.cjs.entry.js +18 -33
  58. package/dist/cjs/vega-brand-logo.cjs.entry.js +7 -5
  59. package/dist/cjs/vega-breadcrumb.cjs.entry.js +14 -13
  60. package/dist/cjs/vega-button-circle.cjs.entry.js +20 -30
  61. package/dist/cjs/vega-button-group_2.cjs.entry.js +15 -15
  62. package/dist/cjs/vega-button-link.cjs.entry.js +15 -14
  63. package/dist/cjs/vega-button.cjs.entry.js +21 -30
  64. package/dist/cjs/vega-calendar_4.cjs.entry.js +48 -45
  65. package/dist/cjs/vega-card.cjs.entry.js +9 -28
  66. package/dist/cjs/vega-carousel.cjs.entry.js +15 -26
  67. package/dist/cjs/vega-checkbox_2.cjs.entry.js +22 -20
  68. package/dist/cjs/vega-chip.cjs.entry.js +22 -33
  69. package/dist/cjs/vega-code-block.cjs.entry.js +658 -2709
  70. package/dist/cjs/vega-color-picker.cjs.entry.js +15 -12
  71. package/dist/cjs/vega-combo-box.cjs.entry.js +29 -28
  72. package/dist/cjs/vega-counter-badge.cjs.entry.js +1 -1
  73. package/dist/cjs/vega-date-picker_2.cjs.entry.js +53 -56
  74. package/dist/cjs/vega-dialog-controller-03ef4d9a.js +84 -0
  75. package/dist/cjs/vega-dialog_2.cjs.entry.js +37 -44
  76. package/dist/cjs/vega-divider.cjs.entry.js +12 -30
  77. package/dist/cjs/vega-dropdown_5.cjs.entry.js +49 -55
  78. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  79. package/dist/cjs/{dom-node-subject-observer-factory-b5e71bf6.js → vega-event-id-ee01d8dd.js} +0 -139
  80. package/dist/cjs/vega-field-error.cjs.entry.js +1 -1
  81. package/dist/cjs/vega-field-label.cjs.entry.js +9 -8
  82. package/dist/cjs/vega-file-uploader.cjs.entry.js +28 -23
  83. package/dist/cjs/vega-flag-icon.cjs.entry.js +13 -27
  84. package/dist/cjs/vega-flex.cjs.entry.js +11 -28
  85. package/dist/cjs/vega-font.cjs.entry.js +12 -29
  86. package/dist/cjs/vega-form.cjs.entry.js +24 -22
  87. package/dist/cjs/vega-grid.cjs.entry.js +9 -28
  88. package/dist/cjs/vega-hint.cjs.entry.js +1 -1
  89. package/dist/cjs/vega-icon.cjs.entry.js +18 -31
  90. package/dist/cjs/vega-image-uploader.cjs.entry.js +34 -37
  91. package/dist/cjs/vega-input-credit-card.cjs.entry.js +31 -27
  92. package/dist/cjs/vega-input-numeric.cjs.entry.js +24 -22
  93. package/dist/cjs/vega-input-passcode.cjs.entry.js +26 -24
  94. package/dist/cjs/vega-input-phone-number.cjs.entry.js +31 -35
  95. package/dist/cjs/vega-input-range.cjs.entry.js +22 -20
  96. package/dist/cjs/vega-input-select.cjs.entry.js +41 -46
  97. package/dist/cjs/vega-input.cjs.entry.js +43 -31
  98. package/dist/cjs/vega-item-toggle.cjs.entry.js +8 -7
  99. package/dist/cjs/vega-left-nav_5.cjs.entry.js +38 -40
  100. package/dist/cjs/vega-line-chart.cjs.entry.js +1 -1
  101. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +16 -32
  102. package/dist/cjs/vega-page-notification_2.cjs.entry.js +5 -4
  103. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +12 -12
  104. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +9 -10
  105. package/dist/cjs/vega-pagination.cjs.entry.js +28 -38
  106. package/dist/cjs/vega-pie-chart.cjs.entry.js +1 -1
  107. package/dist/cjs/vega-popover_2.cjs.entry.js +21 -31
  108. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +66 -39
  109. package/dist/cjs/vega-radio_2.cjs.entry.js +25 -23
  110. package/dist/cjs/vega-rich-text-content.cjs.entry.js +22 -20
  111. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +115 -62
  112. package/dist/cjs/vega-section-title.cjs.entry.js +1 -1
  113. package/dist/cjs/vega-segment-control.cjs.entry.js +10 -8
  114. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +25 -32
  115. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +22 -20
  116. package/dist/cjs/vega-sidenav_3.cjs.entry.js +34 -40
  117. package/dist/cjs/vega-signature-capture.cjs.entry.js +27 -31
  118. package/dist/cjs/vega-skeleton.cjs.entry.js +1 -1
  119. package/dist/cjs/vega-slot-container.cjs.entry.js +1 -1
  120. package/dist/cjs/vega-stepper.cjs.entry.js +23 -21
  121. package/dist/cjs/vega-tab-group_2.cjs.entry.js +15 -14
  122. package/dist/cjs/vega-table_11.cjs.entry.js +67 -68
  123. package/dist/cjs/vega-text.cjs.entry.js +4 -3
  124. package/dist/cjs/vega-textarea.cjs.entry.js +22 -20
  125. package/dist/cjs/vega-time-picker_2.cjs.entry.js +35 -41
  126. package/dist/cjs/vega-toggle-switch.cjs.entry.js +15 -12
  127. package/dist/cjs/vega-tooltip_2.cjs.entry.js +17 -28
  128. package/dist/cjs/vega.cjs.js +26 -23
  129. package/dist/cjs/{index-95fca64f.js → wait-for-component-did-render-70a01bf9.js} +1 -12
  130. package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +17 -2
  131. package/dist/collection/components/vega-box/slimmers/controllers/vega-box-responsive-style-controller.js +2 -1
  132. package/dist/collection/components/vega-box/slimmers/controllers/vega-box-state-styles-controller.js +2 -1
  133. package/dist/collection/components/vega-button/vega-button.js +2 -1
  134. package/dist/collection/components/vega-button-circle/vega-button-circle.js +2 -1
  135. package/dist/collection/components/vega-button-link/vega-button-link.css +1 -1
  136. package/dist/collection/components/vega-button-link/vega-button-link.js +2 -1
  137. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/base-repeat-pattern.js +1 -1
  138. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-daily-repeat-pattern.js +1 -1
  139. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-monthly-repeat-pattern.js +1 -1
  140. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-weekly-repeat-pattern.js +1 -1
  141. package/dist/collection/components/vega-calendar/slimmers/common/helpers/repeat-pattern/calendar-event-yearly-repeat-pattern.js +1 -1
  142. package/dist/collection/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.js +5 -14
  143. package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +2 -2
  144. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +1 -1
  145. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +1 -1
  146. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-search-controller.js +2 -2
  147. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +2 -2
  148. package/dist/collection/components/vega-dropdown/vega-dropdown-group/slimmers/renderers/vega-dropdown-group-renderer.js +3 -3
  149. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +6 -4
  150. package/dist/collection/components/vega-icon/vega-icon.js +2 -1
  151. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-container-renderer.js +10 -2
  152. package/dist/collection/components/vega-input-phone-number/slimmers/renderers/country-select-renderer.js +1 -1
  153. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +2 -2
  154. package/dist/collection/components/vega-pagination/vega-pagination.js +1 -1
  155. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.js +30 -6
  156. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.js +1 -1
  157. package/dist/collection/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.js +8 -1
  158. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.js +27 -0
  159. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +12 -0
  160. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +8 -3
  161. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +1 -1
  162. package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +16 -0
  163. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +3 -22
  164. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.js +59 -0
  165. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.js +4 -0
  166. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.js +21 -0
  167. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.js +21 -0
  168. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.js +77 -0
  169. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +1 -1
  170. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +1 -1
  171. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/html-block.test.js +39 -0
  172. package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +166 -1
  173. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.js +186 -0
  174. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.js +22 -0
  175. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.js +22 -0
  176. package/dist/collection/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.js +26 -0
  177. package/dist/collection/components/vega-signature-capture/slimmers/written-mode/controllers/written-mode-svg-controller.js +2 -1
  178. package/dist/collection/components/vega-table/interface.js +3 -0
  179. package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +1 -1
  180. package/dist/collection/global/scripts/before-vega-load.js +4 -3
  181. package/dist/collection/helpers/calendar/calendar-date.js +1 -1
  182. package/dist/collection/helpers/calendar/calendar-event.js +1 -1
  183. package/dist/collection/helpers/calendar/calendar-time.js +1 -1
  184. package/dist/collection/helpers/code-format/code-formatter.js +57 -7
  185. package/dist/collection/helpers/code-format/test/code-formatter.test.js +49 -1
  186. package/dist/collection/helpers/common/index.js +2 -37
  187. package/dist/collection/helpers/common/test/wait-for-vega-handler.test.js +2 -2
  188. package/dist/collection/helpers/common/wait-for-component-did-render.js +27 -0
  189. package/dist/collection/helpers/common/wait-for-vega-handler.js +12 -1
  190. package/dist/collection/helpers/feature-control/feature-flags-map.js +6 -0
  191. package/dist/collection/helpers/formatter/responsive-map-formatter/responsive-border-radius-style-formatter.js +1 -1
  192. package/dist/collection/helpers/public-api.js +0 -2
  193. package/dist/collection/helpers/slimmers/component-global-style-slimmer.js +2 -1
  194. package/dist/collection/helpers/slimmers/field-error-ui-controller-slimmer.js +3 -4
  195. package/dist/collection/helpers/slimmers/form-field-message-translator.js +1 -1
  196. package/dist/collection/helpers/slimmers/global/vega-translate-observer-slimmer.js +1 -1
  197. package/dist/collection/helpers/slimmers/global/vega-watch-method-cancel-slimmer.js +1 -1
  198. package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +128 -0
  199. package/dist/collection/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.js +196 -0
  200. package/dist/collection/helpers/slimmers/position-calculation/base-position-calculation-strategy.js +162 -151
  201. package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +9 -0
  202. package/dist/collection/helpers/slimmers/position-calculation/screen-position-calculation-strategy.js +112 -1
  203. package/dist/collection/helpers/slimmers/position-calculation/screen-scroll-position-update.js +53 -0
  204. package/dist/collection/helpers/slimmers/position-calculation/test/screen-position-calculation-strategy.test.js +103 -6
  205. package/dist/collection/helpers/slimmers/string-input-formatter-slimmer.js +1 -1
  206. package/dist/collection/helpers/slimmers/translation/translation-slimmer.js +1 -1
  207. package/dist/collection/helpers/theme/controllers/brand-style-controller.js +3 -1
  208. package/dist/collection/helpers/theme/controllers/color-schema-overriding-controller.js +8 -6
  209. package/dist/collection/helpers/theme/controllers/dark-mode-style-controller.js +3 -1
  210. package/dist/collection/helpers/theme/internal-theme-manager.js +2 -1
  211. package/dist/collection/helpers/theme/tests/theme-manager-controller.test.js +1 -2
  212. package/dist/collection/helpers/ui/element-appender.js +4 -5
  213. package/dist/collection/helpers/ui/test/element-appender.test.js +66 -17
  214. package/dist/collection/index.js +2 -0
  215. package/dist/collection/polyfill/prism/index.js +2 -0
  216. package/dist/collection/polyfill/prism/languages/css.js +86 -0
  217. package/dist/collection/polyfill/prism/languages/javascript.js +96 -0
  218. package/dist/collection/polyfill/prism/languages/jsx.js +46 -0
  219. package/dist/collection/polyfill/prism/languages/language-registry.js +41 -0
  220. package/dist/collection/polyfill/prism/languages/markup.js +71 -0
  221. package/dist/collection/polyfill/prism/languages/tsx.js +10 -0
  222. package/dist/collection/polyfill/prism/languages/typescript.js +64 -0
  223. package/dist/collection/polyfill/prism/test/css.test.js +61 -0
  224. package/dist/collection/polyfill/prism/test/javascript.test.js +113 -0
  225. package/dist/collection/polyfill/prism/test/jsx.test.js +48 -0
  226. package/dist/collection/polyfill/prism/test/language-registry.test.js +77 -0
  227. package/dist/collection/polyfill/prism/test/markup.test.js +57 -0
  228. package/dist/collection/polyfill/prism/test/test-utils.js +22 -0
  229. package/dist/collection/polyfill/prism/test/tokenizer.test.js +180 -0
  230. package/dist/collection/polyfill/prism/test/tsx.test.js +87 -0
  231. package/dist/collection/polyfill/prism/test/typescript.test.js +86 -0
  232. package/dist/collection/polyfill/prism/tokenizer.js +242 -0
  233. package/dist/collection/polyfill/prism/types.js +1 -0
  234. package/dist/collection/polyfill/tinycolor/tinycolor-polyfill.js +320 -0
  235. package/dist/collection/polyfill/tinycolor/tinycolor-polyfill.test.js +361 -0
  236. package/dist/collection/types/ui.type.js +12 -0
  237. package/dist/collection/utils/e2e-utils.js +10 -3
  238. package/dist/collection/utils/sanitize/constants/tag-sets.js +5 -0
  239. package/dist/collection/utils/sanitize/core/html-sanitizer.js +39 -0
  240. package/dist/collection/utils/sanitize/core/sanitize-strategy.js +62 -0
  241. package/dist/collection/utils/sanitize/core/types.js +4 -0
  242. package/dist/collection/utils/sanitize/index.js +12 -0
  243. package/dist/collection/utils/sanitize/strategies/empty-sanitize-strategy.js +17 -0
  244. package/dist/collection/utils/sanitize/strategies/index.js +3 -0
  245. package/dist/collection/utils/sanitize/strategies/label-sanitize-strategy.js +13 -0
  246. package/dist/collection/utils/sanitize/strategies/style-sanitize-strategy.js +50 -0
  247. package/dist/collection/utils/sanitize/test/empty-strategy.test.js +12 -0
  248. package/dist/collection/utils/sanitize/test/html-sanitizer.test.js +57 -0
  249. package/dist/collection/utils/sanitize/test/label-strategy.test.js +56 -0
  250. package/dist/collection/utils/sanitize/test/sanitize-strategy.test.js +85 -0
  251. package/dist/collection/utils/sanitize/test/sanitize.test.js +22 -0
  252. package/dist/collection/utils/sanitize/test/serialize-fragment.test.js +25 -0
  253. package/dist/collection/utils/sanitize/test/style-strategy.test.js +45 -0
  254. package/dist/collection/utils/sanitize/utils/serialize-fragment.js +17 -0
  255. package/dist/esm/{app-globals-f3414aca.js → app-globals-c0676920.js} +12 -16
  256. package/dist/esm/breakpoints-56e5407b.js +53 -0
  257. package/dist/esm/{child-nodes-event-prevent-slimmer-e662bee2.js → child-nodes-event-prevent-slimmer-649b9d30.js} +2 -2
  258. package/dist/esm/{child-nodes-notify-observer-slimmer-b676cd2b.js → child-nodes-notify-observer-slimmer-541dd6a4.js} +1 -1
  259. package/dist/esm/{code-block-8ee34ab6.js → code-block-b6247a45.js} +7 -7
  260. package/dist/esm/{component-global-style-slimmer-08046b38.js → component-global-style-slimmer-ac703085.js} +2 -1
  261. package/dist/esm/{component-usage-runtime-metrics-a84cc93e.js → component-usage-runtime-metrics-46020a03.js} +1 -1
  262. package/dist/esm/{component-value-history-controller-slimmer.abstract-a61bf821.js → component-value-history-controller-slimmer.abstract-2bb8533d.js} +6 -6
  263. package/dist/esm/{create-public-api-runtime-metrics-slimmer-bedf3a1e.js → create-public-api-runtime-metrics-slimmer-aaadaa08.js} +3 -38
  264. package/dist/esm/{dark-mode-style-controller-de88a117.js → dark-mode-style-controller-82e5c1c6.js} +292 -1254
  265. package/dist/esm/{date-required-rule-47ecc28f.js → date-required-rule-e771e7d9.js} +1 -1
  266. package/dist/esm/{design-token-9b299589.js → design-token-4aee1c56.js} +2 -2
  267. package/dist/esm/dom-node-subject-observer-factory-82f346e3.js +138 -0
  268. package/dist/esm/{dto-renderer-manager-f07cf2d9.js → dto-renderer-manager-6fd22ab7.js} +204 -29
  269. package/dist/esm/{element-appender-slimmer-7cb08343.js → element-appender-slimmer-e4713a72.js} +348 -165
  270. package/dist/esm/{event-emit-slimmer-09827cec.js → event-emit-slimmer-ffaecb9a.js} +2 -2
  271. package/dist/esm/{feature-flag-controller-51659753.js → feature-flag-controller-09ea7e87.js} +7 -1
  272. package/dist/esm/{form-field-controller-slimmer-5d9dc384.js → form-field-controller-slimmer-5817d14d.js} +10 -11
  273. package/dist/esm/{internal-icon-manager-f0486245.js → icon-manager-539d7cf7.js} +2 -52
  274. package/dist/esm/{image-annotation-action-53529cd9.js → image-annotation-action-6701b4c9.js} +6 -5
  275. package/dist/esm/index-3b327f29.js +215 -0
  276. package/dist/esm/{index-e9da316f.js → index-bfc6dfa2.js} +13 -1
  277. package/dist/esm/index.js +32 -29
  278. package/dist/esm/{inject-keyboard-manager-83d76ff5.js → inject-keyboard-manager-78730062.js} +1 -1
  279. package/dist/esm/internal-icon-manager-bd80b3bb.js +53 -0
  280. package/dist/esm/{translation-96e5debd.js → internal-translation-controller-911515f9.js} +1 -93
  281. package/dist/esm/{internal-vega-event-manager-efb6786e.js → internal-vega-event-manager-32a3d848.js} +1 -1
  282. package/dist/esm/internal-vega-z-index-manager-7d2b54c3.js +178 -0
  283. package/dist/esm/{keyboard-manager-c92808d8.js → keyboard-manager-38934f94.js} +2 -2
  284. package/dist/esm/{keyboard-manager-slimmer-79c78ce8.js → keyboard-manager-slimmer-9984d922.js} +1 -1
  285. package/dist/esm/loader.js +27 -24
  286. package/dist/esm/misc-9fdbcfbb.js +37 -0
  287. package/dist/esm/{month-view-generator-16192182.js → month-view-generator-eaf9029c.js} +1 -1
  288. package/dist/esm/{page-resize-observer-slimmer-8744cb44.js → page-resize-observer-slimmer-d6af0d86.js} +2 -52
  289. package/dist/esm/{public-rules-6ebdfcf5.js → public-rules-25cc3a39.js} +13 -14
  290. package/dist/esm/{range-5257c062.js → range-663f44dc.js} +2 -2
  291. package/dist/esm/{responsive-format-facade-05e53016.js → responsive-format-facade-7a071174.js} +3 -12
  292. package/dist/esm/{rich-text-editor-required-rule-f63a37d1.js → rich-text-editor-required-rule-a238b862.js} +1 -1
  293. package/dist/esm/{string-format-strategy.abstract-fc60db79.js → string-format-strategy.abstract-713fba36.js} +1 -1
  294. package/dist/esm/{string-input-formatter-slimmer-ee32b1fd.js → string-input-formatter-slimmer-5b413ff9.js} +4 -4
  295. package/dist/esm/{string-mask-strategy-0b0accaa.js → string-mask-strategy-6beaf664.js} +2 -2
  296. package/dist/esm/{style-formatter-5f5bd714.js → style-formatter-3d06b72d.js} +2 -2
  297. package/dist/esm/{sub-state-notify-slimmer-4453047a.js → sub-state-notify-slimmer-5133f1a8.js} +2 -2
  298. package/dist/esm/{sub-state-observer-slimmer-202ec7dc.js → sub-state-observer-slimmer-478c9f41.js} +3 -3
  299. package/dist/esm/{time-required-rule-5fa43804.js → time-required-rule-e4138a76.js} +1 -1
  300. package/dist/esm/{function-extension-63028f20.js → token-extension-e33fd151.js} +488 -376
  301. package/dist/esm/{translation-slimmer-c936cb1b.js → translation-slimmer-2394b173.js} +1 -1
  302. package/dist/esm/{type-guard-c65a227d.js → type-guard-f50e34d6.js} +1 -1
  303. package/dist/esm/{ui-bb99c0c2.js → ui-ee31416b.js} +12 -0
  304. package/dist/esm/{valid-credit-card-number-rule-666c415d.js → valid-credit-card-number-rule-22ce81db.js} +1 -1
  305. package/dist/esm/vega-accordion.entry.js +19 -28
  306. package/dist/esm/vega-app-footer.entry.js +3 -3
  307. package/dist/esm/vega-app-header-button.entry.js +174 -40
  308. package/dist/esm/vega-backdrop.entry.js +2 -2
  309. package/dist/esm/vega-banner.entry.js +12 -10
  310. package/dist/esm/vega-bar-chart.entry.js +1 -1
  311. package/dist/esm/vega-box.entry.js +14 -29
  312. package/dist/esm/vega-brand-logo.entry.js +7 -5
  313. package/dist/esm/vega-breadcrumb.entry.js +11 -10
  314. package/dist/esm/vega-button-circle.entry.js +19 -29
  315. package/dist/esm/vega-button-group_2.entry.js +12 -12
  316. package/dist/esm/vega-button-link.entry.js +13 -12
  317. package/dist/esm/vega-button.entry.js +19 -28
  318. package/dist/esm/vega-calendar_4.entry.js +23 -20
  319. package/dist/esm/vega-card.entry.js +9 -28
  320. package/dist/esm/vega-carousel.entry.js +14 -25
  321. package/dist/esm/vega-checkbox_2.entry.js +19 -17
  322. package/dist/esm/vega-chip.entry.js +18 -29
  323. package/dist/esm/vega-code-block.entry.js +653 -2704
  324. package/dist/esm/vega-color-picker.entry.js +15 -12
  325. package/dist/esm/vega-combo-box.entry.js +22 -21
  326. package/dist/esm/vega-counter-badge.entry.js +1 -1
  327. package/dist/esm/vega-date-picker_2.entry.js +34 -37
  328. package/dist/esm/vega-dialog-controller-bbb2fc52.js +82 -0
  329. package/dist/esm/vega-dialog_2.entry.js +23 -30
  330. package/dist/esm/vega-divider.entry.js +11 -29
  331. package/dist/esm/vega-dropdown_5.entry.js +39 -45
  332. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  333. package/dist/esm/vega-event-id-38aa77a0.js +113 -0
  334. package/dist/esm/vega-field-error.entry.js +1 -1
  335. package/dist/esm/vega-field-label.entry.js +7 -6
  336. package/dist/esm/vega-file-uploader.entry.js +19 -14
  337. package/dist/esm/vega-flag-icon.entry.js +12 -26
  338. package/dist/esm/vega-flex.entry.js +11 -28
  339. package/dist/esm/vega-font.entry.js +11 -28
  340. package/dist/esm/vega-form.entry.js +20 -18
  341. package/dist/esm/vega-grid.entry.js +9 -28
  342. package/dist/esm/vega-hint.entry.js +1 -1
  343. package/dist/esm/vega-icon.entry.js +15 -28
  344. package/dist/esm/vega-image-uploader.entry.js +28 -31
  345. package/dist/esm/vega-input-credit-card.entry.js +25 -21
  346. package/dist/esm/vega-input-numeric.entry.js +21 -19
  347. package/dist/esm/vega-input-passcode.entry.js +20 -18
  348. package/dist/esm/vega-input-phone-number.entry.js +27 -31
  349. package/dist/esm/vega-input-range.entry.js +19 -17
  350. package/dist/esm/vega-input-select.entry.js +27 -32
  351. package/dist/esm/vega-input.entry.js +33 -21
  352. package/dist/esm/{vega-internal-event-id-4a06d705.js → vega-internal-event-id-799d012e.js} +1 -1
  353. package/dist/esm/vega-item-toggle.entry.js +6 -5
  354. package/dist/esm/vega-left-nav_5.entry.js +29 -31
  355. package/dist/esm/vega-line-chart.entry.js +1 -1
  356. package/dist/esm/vega-loader-wrapper_2.entry.js +13 -29
  357. package/dist/esm/vega-page-notification_2.entry.js +4 -3
  358. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +9 -9
  359. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +7 -8
  360. package/dist/esm/vega-pagination.entry.js +20 -30
  361. package/dist/esm/vega-pie-chart.entry.js +1 -1
  362. package/dist/esm/vega-popover_2.entry.js +20 -30
  363. package/dist/esm/vega-progress-tracker_2.entry.js +64 -37
  364. package/dist/esm/vega-radio_2.entry.js +21 -19
  365. package/dist/esm/vega-rich-text-content.entry.js +18 -16
  366. package/dist/esm/vega-rich-text-editor_4.entry.js +90 -37
  367. package/dist/esm/vega-section-title.entry.js +1 -1
  368. package/dist/esm/vega-segment-control.entry.js +9 -7
  369. package/dist/esm/vega-selection-chip_2.entry.js +22 -29
  370. package/dist/esm/vega-selection-tile_2.entry.js +19 -17
  371. package/dist/esm/vega-sidenav_3.entry.js +24 -30
  372. package/dist/esm/vega-signature-capture.entry.js +24 -28
  373. package/dist/esm/vega-skeleton.entry.js +1 -1
  374. package/dist/esm/vega-slot-container.entry.js +1 -1
  375. package/dist/esm/vega-stepper.entry.js +18 -16
  376. package/dist/esm/vega-tab-group_2.entry.js +11 -10
  377. package/dist/esm/vega-table_11.entry.js +28 -29
  378. package/dist/esm/vega-text.entry.js +4 -3
  379. package/dist/esm/vega-textarea.entry.js +18 -16
  380. package/dist/esm/vega-time-picker_2.entry.js +26 -32
  381. package/dist/esm/vega-toggle-switch.entry.js +15 -12
  382. package/dist/esm/vega-tooltip_2.entry.js +18 -29
  383. package/dist/esm/vega.js +27 -24
  384. package/dist/esm/{index-51a7da7f.js → wait-for-component-did-render-b08ef07b.js} +3 -13
  385. package/dist/sri/vega-sri-manifest.json +415 -403
  386. package/dist/types/components/vega-app-footer/types.d.ts +18 -0
  387. package/dist/types/components/vega-app-header-button/types.d.ts +31 -0
  388. package/dist/types/components/vega-app-header-button/vega-app-header-button.d.ts +2 -0
  389. package/dist/types/components/vega-banner/types.d.ts +9 -0
  390. package/dist/types/components/vega-box/interface.d.ts +46 -0
  391. package/dist/types/components/vega-breadcrumb/types.d.ts +28 -0
  392. package/dist/types/components/vega-button/types.d.ts +12 -0
  393. package/dist/types/components/vega-button-circle/types.d.ts +9 -0
  394. package/dist/types/components/vega-button-group/types.d.ts +48 -0
  395. package/dist/types/components/vega-button-link/types.d.ts +3 -0
  396. package/dist/types/components/vega-calendar/types.d.ts +189 -0
  397. package/dist/types/components/vega-calendar/vega-calendar-event-preview/types.d.ts +6 -0
  398. package/dist/types/components/vega-chart/vega-bar-chart/types.d.ts +3 -0
  399. package/dist/types/components/vega-chip/types.d.ts +12 -0
  400. package/dist/types/components/vega-code-block/slimmers/controllers/prism-code-highlight-parse-controller.d.ts +2 -10
  401. package/dist/types/components/vega-combo-box/types.d.ts +6 -0
  402. package/dist/types/components/vega-date-picker/types.d.ts +39 -0
  403. package/dist/types/components/vega-dialog/types.d.ts +5 -0
  404. package/dist/types/components/vega-divider/interface.d.ts +18 -0
  405. package/dist/types/components/vega-dropdown/types.d.ts +30 -0
  406. package/dist/types/components/vega-dropdown/vega-dropdown-item/types.d.ts +9 -1
  407. package/dist/types/components/vega-field-error/types.d.ts +12 -0
  408. package/dist/types/components/vega-field-label/types.d.ts +16 -0
  409. package/dist/types/components/vega-file-uploader/types.d.ts +12 -0
  410. package/dist/types/components/vega-font/types.d.ts +3 -0
  411. package/dist/types/components/vega-form/types.d.ts +45 -0
  412. package/dist/types/components/vega-image-uploader/types.d.ts +33 -1
  413. package/dist/types/components/vega-input/types.d.ts +31 -0
  414. package/dist/types/components/vega-input-phone-number/types.d.ts +15 -0
  415. package/dist/types/components/vega-input-range/types.d.ts +9 -0
  416. package/dist/types/components/vega-input-select/types.d.ts +45 -0
  417. package/dist/types/components/vega-item-toggle/types.d.ts +21 -0
  418. package/dist/types/components/vega-loading-indicator/types.d.ts +3 -0
  419. package/dist/types/components/vega-modal/types.d.ts +9 -0
  420. package/dist/types/components/vega-nav/interface.d.ts +108 -0
  421. package/dist/types/components/vega-page-notification/types.d.ts +15 -0
  422. package/dist/types/components/vega-pagination/types.d.ts +11 -0
  423. package/dist/types/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.d.ts +16 -4
  424. package/dist/types/components/vega-progress-tracker/type.d.ts +8 -0
  425. package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.d.ts +6 -0
  426. package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +2 -2
  427. package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +10 -0
  428. package/dist/types/components/vega-rich-text-editor/interface.d.ts +473 -2
  429. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.d.ts +13 -0
  430. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner.d.ts +35 -0
  431. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/index.d.ts +4 -0
  432. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-after-opening-tag-processor.d.ts +19 -0
  433. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-before-closing-tag-processor.d.ts +19 -0
  434. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/processors/remove-whitespace-between-tags-processor.d.ts +59 -0
  435. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/html-content-cleaner.test.d.ts +1 -0
  436. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-after-opening-tag-processor.test.d.ts +1 -0
  437. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-before-closing-tag-processor.test.d.ts +1 -0
  438. package/dist/types/components/vega-rich-text-editor/test/html-cleaner/remove-whitespace-between-tags-processor.test.d.ts +1 -0
  439. package/dist/types/components/vega-rich-text-editor/vega-rich-text-image-editor/types.d.ts +24 -0
  440. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/types.d.ts +24 -0
  441. package/dist/types/components/vega-segment-control/types.d.ts +18 -0
  442. package/dist/types/components/vega-selection-chip/interface.d.ts +12 -0
  443. package/dist/types/components/vega-selection-chip/vega-selection-chip-group/interface.d.ts +4 -0
  444. package/dist/types/components/vega-selection-tile/interface.d.ts +9 -0
  445. package/dist/types/components/vega-sidenav/types.d.ts +51 -0
  446. package/dist/types/components/vega-signature-capture/types.d.ts +29 -2
  447. package/dist/types/components/vega-skeleton/interface.d.ts +6 -0
  448. package/dist/types/components/vega-tab-group/types.d.ts +36 -0
  449. package/dist/types/components/vega-table/interface.d.ts +237 -20
  450. package/dist/types/components/vega-table/vega-table-expand-row/types.d.ts +6 -0
  451. package/dist/types/components/vega-table/vega-table-foot/types.d.ts +9 -0
  452. package/dist/types/components/vega-table/vega-table-foot-row/types.d.ts +9 -0
  453. package/dist/types/components/vega-table/vega-table-head/types.d.ts +9 -0
  454. package/dist/types/components/vega-table/vega-table-head-row/types.d.ts +12 -0
  455. package/dist/types/components/vega-table/vega-table-row/types.d.ts +18 -0
  456. package/dist/types/components/vega-text/types.d.ts +6 -0
  457. package/dist/types/components/vega-time-picker/types.d.ts +33 -0
  458. package/dist/types/components/vega-virtual-scroll/types.d.ts +30 -1
  459. package/dist/types/components.d.ts +13 -3
  460. package/dist/types/helpers/code-format/code-formatter.d.ts +14 -0
  461. package/dist/types/helpers/common/index.d.ts +2 -15
  462. package/dist/types/helpers/common/wait-for-component-did-render.d.ts +8 -0
  463. package/dist/types/helpers/common/wait-for-vega-handler.d.ts +6 -15
  464. package/dist/types/helpers/feature-control/feature-flag.d.ts +2 -1
  465. package/dist/types/helpers/public-api.d.ts +0 -2
  466. package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +44 -0
  467. package/dist/types/helpers/slimmers/mutation-observer/test/aria-attributes-value-mapper.test.d.ts +1 -0
  468. package/dist/types/helpers/slimmers/position-calculation/base-position-calculation-strategy.d.ts +57 -48
  469. package/dist/types/helpers/slimmers/position-calculation/position-calculation-controller.d.ts +5 -0
  470. package/dist/types/helpers/slimmers/position-calculation/screen-position-calculation-strategy.d.ts +41 -1
  471. package/dist/types/helpers/slimmers/position-calculation/screen-scroll-position-update.d.ts +39 -0
  472. package/dist/types/helpers/ui/element-appender.d.ts +0 -1
  473. package/dist/types/index.d.ts +2 -0
  474. package/dist/types/polyfill/prism/index.d.ts +3 -0
  475. package/dist/types/polyfill/prism/languages/css.d.ts +6 -0
  476. package/dist/types/polyfill/prism/languages/javascript.d.ts +7 -0
  477. package/dist/types/polyfill/prism/languages/jsx.d.ts +7 -0
  478. package/dist/types/polyfill/prism/languages/language-registry.d.ts +8 -0
  479. package/dist/types/polyfill/prism/languages/markup.d.ts +6 -0
  480. package/dist/types/polyfill/prism/languages/tsx.d.ts +7 -0
  481. package/dist/types/polyfill/prism/languages/typescript.d.ts +2 -0
  482. package/dist/types/polyfill/prism/test/css.test.d.ts +1 -0
  483. package/dist/types/polyfill/prism/test/javascript.test.d.ts +1 -0
  484. package/dist/types/polyfill/prism/test/jsx.test.d.ts +1 -0
  485. package/dist/types/polyfill/prism/test/language-registry.test.d.ts +1 -0
  486. package/dist/types/polyfill/prism/test/markup.test.d.ts +1 -0
  487. package/dist/types/polyfill/prism/test/test-utils.d.ts +10 -0
  488. package/dist/types/polyfill/prism/test/tokenizer.test.d.ts +1 -0
  489. package/dist/types/polyfill/prism/test/tsx.test.d.ts +1 -0
  490. package/dist/types/polyfill/prism/test/typescript.test.d.ts +1 -0
  491. package/dist/types/polyfill/prism/tokenizer.d.ts +17 -0
  492. package/dist/types/polyfill/prism/types.d.ts +25 -0
  493. package/dist/types/polyfill/tinycolor/tinycolor-polyfill.d.ts +149 -0
  494. package/dist/types/polyfill/tinycolor/tinycolor-polyfill.test.d.ts +1 -0
  495. package/dist/types/types/components.type.d.ts +4 -1
  496. package/dist/types/types/design-token.type.d.ts +36 -0
  497. package/dist/types/types/flag.type.d.ts +3 -0
  498. package/dist/types/types/general.d.ts +12 -0
  499. package/dist/types/types/ui.type.d.ts +372 -0
  500. package/dist/types/types/vega-chart.d.ts +281 -2
  501. package/dist/types/utils/e2e-utils.d.ts +2 -0
  502. package/dist/types/utils/sanitize/constants/tag-sets.d.ts +6 -0
  503. package/dist/types/utils/sanitize/core/html-sanitizer.d.ts +22 -0
  504. package/dist/types/utils/sanitize/core/sanitize-strategy.d.ts +27 -0
  505. package/dist/types/utils/sanitize/core/types.d.ts +13 -0
  506. package/dist/types/utils/sanitize/index.d.ts +12 -0
  507. package/dist/types/utils/sanitize/strategies/empty-sanitize-strategy.d.ts +14 -0
  508. package/dist/types/utils/sanitize/strategies/index.d.ts +3 -0
  509. package/dist/types/utils/sanitize/strategies/label-sanitize-strategy.d.ts +10 -0
  510. package/dist/types/utils/sanitize/strategies/style-sanitize-strategy.d.ts +24 -0
  511. package/dist/types/utils/sanitize/test/empty-strategy.test.d.ts +1 -0
  512. package/dist/types/utils/sanitize/test/html-sanitizer.test.d.ts +1 -0
  513. package/dist/types/utils/sanitize/test/label-strategy.test.d.ts +1 -0
  514. package/dist/types/utils/sanitize/test/sanitize-strategy.test.d.ts +1 -0
  515. package/dist/types/utils/sanitize/test/sanitize.test.d.ts +1 -0
  516. package/dist/types/utils/sanitize/test/serialize-fragment.test.d.ts +1 -0
  517. package/dist/types/utils/sanitize/test/style-strategy.test.d.ts +1 -0
  518. package/dist/types/utils/sanitize/utils/serialize-fragment.d.ts +12 -0
  519. package/dist/vega/index.esm.js +1 -1
  520. package/dist/vega/p-01d58eb8.entry.js +1 -0
  521. package/dist/vega/p-021d4ae4.js +1 -0
  522. package/dist/vega/p-02a7d60c.entry.js +1 -0
  523. package/dist/vega/{p-66fa700b.js → p-02c9796a.js} +1 -1
  524. package/dist/vega/p-033c31d8.entry.js +1 -0
  525. package/dist/vega/{p-e77a83e4.js → p-07cb0243.js} +1 -1
  526. package/dist/vega/p-087ea379.entry.js +1 -0
  527. package/dist/vega/{p-e5af5a4d.entry.js → p-0b4880bd.entry.js} +1 -1
  528. package/dist/vega/{p-920719ad.js → p-0e679d8c.js} +1 -1
  529. package/dist/vega/{p-c9b6b5a9.js → p-10734a00.js} +1 -1
  530. package/dist/vega/p-154f9cf7.entry.js +1 -0
  531. package/dist/vega/p-179aad4f.entry.js +1 -0
  532. package/dist/vega/p-1a3236e7.entry.js +1 -0
  533. package/dist/vega/p-1f3cd061.entry.js +1 -0
  534. package/dist/vega/p-1f5e35dc.entry.js +1 -0
  535. package/dist/vega/p-242fbcad.entry.js +1 -0
  536. package/dist/vega/p-249df6d2.entry.js +1 -0
  537. package/dist/vega/p-28ad1864.entry.js +1 -0
  538. package/dist/vega/p-2a10e2e5.js +1 -0
  539. package/dist/vega/p-2b49686d.entry.js +1 -0
  540. package/dist/vega/p-2ba78982.entry.js +1 -0
  541. package/dist/vega/p-2bb5a232.js +1 -0
  542. package/dist/vega/{p-e9b86dac.entry.js → p-2c1a85dd.entry.js} +1 -1
  543. package/dist/vega/p-2cc9d126.entry.js +1 -0
  544. package/dist/vega/p-2d69632d.js +1 -0
  545. package/dist/vega/p-2e91295d.entry.js +1 -0
  546. package/dist/vega/p-31ac7386.js +1 -0
  547. package/dist/vega/p-32033e7a.js +1 -0
  548. package/dist/vega/p-32183637.entry.js +1 -0
  549. package/dist/vega/p-3244c605.entry.js +1 -0
  550. package/dist/vega/p-32faa460.entry.js +1 -0
  551. package/dist/vega/p-33f9ad94.entry.js +1 -0
  552. package/dist/vega/{p-4897bedd.entry.js → p-358b4a06.entry.js} +1 -1
  553. package/dist/vega/p-3afc025e.entry.js +1 -0
  554. package/dist/vega/p-3d8122ab.entry.js +1 -0
  555. package/dist/vega/{p-ea04a387.entry.js → p-3f3c771a.entry.js} +1 -1
  556. package/dist/vega/{p-1f83cebf.js → p-415ffa35.js} +1 -1
  557. package/dist/vega/{p-d849e0f5.js → p-4415ad28.js} +1 -1
  558. package/dist/vega/{p-ce1a2982.js → p-464559e3.js} +1 -1
  559. package/dist/vega/p-49845a91.js +1 -0
  560. package/dist/vega/{p-e16b3adf.js → p-4bffdb28.js} +1 -1
  561. package/dist/vega/p-4e017458.entry.js +1 -0
  562. package/dist/vega/p-4e4a0228.entry.js +1 -0
  563. package/dist/vega/{p-a2aeb646.js → p-4ea30592.js} +1 -1
  564. package/dist/vega/{p-0b38a01f.entry.js → p-51fcb07f.entry.js} +1 -1
  565. package/dist/vega/p-57927b10.entry.js +1 -0
  566. package/dist/vega/p-5831d6d3.entry.js +1 -0
  567. package/dist/vega/p-593e0f80.js +1 -0
  568. package/dist/vega/p-5a25014f.js +1 -0
  569. package/dist/vega/p-5eb7f382.js +1 -0
  570. package/dist/vega/p-5f377954.js +1 -1
  571. package/dist/vega/p-644f701a.js +1 -0
  572. package/dist/vega/p-6a62e476.entry.js +1 -0
  573. package/dist/vega/{p-75f981ce.js → p-6b6f0fb4.js} +1 -1
  574. package/dist/vega/p-6d219c44.entry.js +1 -0
  575. package/dist/vega/p-6d60b66a.entry.js +1 -0
  576. package/dist/vega/{p-ad2055f4.entry.js → p-6dcdb580.entry.js} +1 -1
  577. package/dist/vega/{p-c8f1b9d5.js → p-7181861a.js} +1 -1
  578. package/dist/vega/p-76181a70.entry.js +1 -0
  579. package/dist/vega/p-781fd6e0.js +1 -0
  580. package/dist/vega/p-7958614a.entry.js +1 -0
  581. package/dist/vega/{p-5b71c85e.js → p-7c39ce96.js} +1 -1
  582. package/dist/vega/p-7d7aaff9.entry.js +1 -0
  583. package/dist/vega/{p-4dd6554e.entry.js → p-7f46cc1e.entry.js} +1 -1
  584. package/dist/vega/{p-badad9ed.js → p-81b044b9.js} +1 -1
  585. package/dist/vega/p-8950987b.entry.js +1 -0
  586. package/dist/vega/p-89f2e16d.entry.js +1 -0
  587. package/dist/vega/p-8ac2d165.js +1 -0
  588. package/dist/vega/p-8b153acd.entry.js +1 -0
  589. package/dist/vega/p-8b5d3a52.js +1 -0
  590. package/dist/vega/{p-fff13ed1.entry.js → p-8b891f36.entry.js} +1 -1
  591. package/dist/vega/p-8dbdd609.entry.js +1 -0
  592. package/dist/vega/{p-dd11f735.js → p-9339c6c4.js} +1 -1
  593. package/dist/vega/p-94a77fbe.entry.js +1 -0
  594. package/dist/vega/p-95528b47.js +1 -0
  595. package/dist/vega/p-9a137bab.entry.js +1 -0
  596. package/dist/vega/{p-6f8be8ea.js → p-a0b66c25.js} +1 -1
  597. package/dist/vega/{p-0bb3be0b.entry.js → p-a13a73fa.entry.js} +1 -1
  598. package/dist/vega/p-a560d8c5.entry.js +1 -0
  599. package/dist/vega/{p-d0e31633.js → p-a786259a.js} +1 -1
  600. package/dist/vega/p-a7a8a4eb.entry.js +1 -0
  601. package/dist/vega/p-a8792e3d.js +1 -0
  602. package/dist/vega/{p-60851f9d.js → p-aa1174dc.js} +1 -1
  603. package/dist/vega/p-ab834f06.js +1 -0
  604. package/dist/vega/p-b136ebba.entry.js +1 -0
  605. package/dist/vega/p-b201f379.js +1 -0
  606. package/dist/vega/p-b256b7a4.js +1 -0
  607. package/dist/vega/p-b366deff.entry.js +1 -0
  608. package/dist/vega/p-b597393b.entry.js +1 -0
  609. package/dist/vega/p-b7f3221f.js +1 -0
  610. package/dist/vega/p-bb5e0192.entry.js +1 -0
  611. package/dist/vega/p-be1a210b.js +1 -0
  612. package/dist/vega/p-bebfbe95.entry.js +1 -0
  613. package/dist/vega/p-bf6fc19f.entry.js +1 -0
  614. package/dist/vega/p-c1d13eec.entry.js +1 -0
  615. package/dist/vega/p-c29068fb.entry.js +1 -0
  616. package/dist/vega/p-c3d2f316.js +1 -0
  617. package/dist/vega/{p-671afda4.entry.js → p-c72e08c6.entry.js} +1 -1
  618. package/dist/vega/p-c801c85d.js +1 -0
  619. package/dist/vega/p-c8feb644.entry.js +1 -0
  620. package/dist/vega/p-ca5898dc.entry.js +1 -0
  621. package/dist/vega/p-d555f677.entry.js +1 -0
  622. package/dist/vega/p-d64fab3d.js +1 -0
  623. package/dist/vega/p-d6dbbe61.entry.js +1 -0
  624. package/dist/vega/p-d7a78c5e.entry.js +1 -0
  625. package/dist/vega/p-d8fadcdc.entry.js +1 -0
  626. package/dist/vega/p-dad3ba5f.js +1 -0
  627. package/dist/vega/p-dd3a94f4.entry.js +1 -0
  628. package/dist/vega/p-e1431c14.entry.js +1 -0
  629. package/dist/vega/p-e1fbfd20.js +1 -0
  630. package/dist/vega/p-e2af0e24.entry.js +1 -0
  631. package/dist/vega/{p-521d1d07.js → p-e52890db.js} +1 -1
  632. package/dist/vega/{p-1298b126.js → p-e632475e.js} +1 -1
  633. package/dist/vega/p-e6adf829.js +1 -0
  634. package/dist/vega/{p-77edf50c.js → p-e827d56d.js} +1 -1
  635. package/dist/vega/p-e8775a56.entry.js +1 -0
  636. package/dist/vega/p-e89e3ede.entry.js +1 -0
  637. package/dist/vega/p-eda988d5.entry.js +1 -0
  638. package/dist/vega/p-f05b8f76.entry.js +1 -0
  639. package/dist/vega/p-f0e828d8.js +1 -0
  640. package/dist/vega/p-f14a5eae.entry.js +1 -0
  641. package/dist/vega/p-f2b0b58a.js +1 -0
  642. package/dist/vega/p-f3d0f2dc.js +1 -0
  643. package/dist/vega/{p-5910be31.entry.js → p-f5bafc45.entry.js} +1 -1
  644. package/dist/vega/p-fc1fa345.js +1 -0
  645. package/dist/vega/p-fd7ddd64.entry.js +1 -0
  646. package/dist/vega/vega.esm.js +1 -1
  647. package/package.json +3 -5
  648. package/dist/cjs/_commonjsHelpers-537d719a.js +0 -20
  649. package/dist/cjs/language-extension-38e4905e.js +0 -210
  650. package/dist/cjs/sanitize-fb222510.js +0 -131
  651. package/dist/cjs/wait-for-vega-handler-5469ff80.js +0 -63
  652. package/dist/collection/utils/sanitize.js +0 -126
  653. package/dist/collection/utils/test/sanitize.test.js +0 -65
  654. package/dist/esm/_commonjsHelpers-9943807e.js +0 -17
  655. package/dist/esm/dom-node-subject-observer-factory-064ee2b2.js +0 -250
  656. package/dist/esm/language-extension-c4ff21dd.js +0 -207
  657. package/dist/esm/sanitize-fd0cb40d.js +0 -129
  658. package/dist/esm/wait-for-vega-handler-c2c07ac3.js +0 -61
  659. package/dist/types/utils/sanitize.d.ts +0 -71
  660. package/dist/vega/p-011b94b1.entry.js +0 -1
  661. package/dist/vega/p-06aaced4.js +0 -1
  662. package/dist/vega/p-07d3df01.entry.js +0 -1
  663. package/dist/vega/p-08f18b22.entry.js +0 -1
  664. package/dist/vega/p-10ac8b57.js +0 -1
  665. package/dist/vega/p-112455b1.js +0 -1
  666. package/dist/vega/p-17c55205.entry.js +0 -1
  667. package/dist/vega/p-1e0d8228.entry.js +0 -1
  668. package/dist/vega/p-20ad42be.js +0 -1
  669. package/dist/vega/p-22b2841f.entry.js +0 -1
  670. package/dist/vega/p-22c5d83b.js +0 -1
  671. package/dist/vega/p-34246870.entry.js +0 -1
  672. package/dist/vega/p-35bf5789.entry.js +0 -1
  673. package/dist/vega/p-3bbc0c7d.entry.js +0 -1
  674. package/dist/vega/p-3bf66be2.js +0 -1
  675. package/dist/vega/p-3c5a28e4.entry.js +0 -1
  676. package/dist/vega/p-3cfd8616.entry.js +0 -1
  677. package/dist/vega/p-3e5f362f.js +0 -1
  678. package/dist/vega/p-43f585f7.entry.js +0 -1
  679. package/dist/vega/p-476a173a.js +0 -1
  680. package/dist/vega/p-4a537391.entry.js +0 -1
  681. package/dist/vega/p-509eb52e.entry.js +0 -1
  682. package/dist/vega/p-50ab977c.entry.js +0 -1
  683. package/dist/vega/p-53a694d1.entry.js +0 -1
  684. package/dist/vega/p-56e97df8.js +0 -1
  685. package/dist/vega/p-5a27084e.entry.js +0 -1
  686. package/dist/vega/p-5d676a94.js +0 -1
  687. package/dist/vega/p-5df9a856.entry.js +0 -1
  688. package/dist/vega/p-5ea2e43c.entry.js +0 -1
  689. package/dist/vega/p-60274fb1.js +0 -1
  690. package/dist/vega/p-60da99c6.entry.js +0 -1
  691. package/dist/vega/p-67f18b9e.entry.js +0 -1
  692. package/dist/vega/p-67fcf6f2.entry.js +0 -9
  693. package/dist/vega/p-6a2205a1.entry.js +0 -1
  694. package/dist/vega/p-6a4277df.entry.js +0 -1
  695. package/dist/vega/p-6e136980.js +0 -1
  696. package/dist/vega/p-6f239144.entry.js +0 -1
  697. package/dist/vega/p-7045e84c.entry.js +0 -1
  698. package/dist/vega/p-7288f8c4.js +0 -1
  699. package/dist/vega/p-747d6afc.entry.js +0 -1
  700. package/dist/vega/p-75651f32.entry.js +0 -1
  701. package/dist/vega/p-7ae55fd5.js +0 -1
  702. package/dist/vega/p-81134e9e.entry.js +0 -1
  703. package/dist/vega/p-87238c4c.entry.js +0 -1
  704. package/dist/vega/p-8a887843.entry.js +0 -1
  705. package/dist/vega/p-8c0eb12f.entry.js +0 -1
  706. package/dist/vega/p-8c9ea6f4.js +0 -1
  707. package/dist/vega/p-8d0ca805.js +0 -1
  708. package/dist/vega/p-8e42a14c.entry.js +0 -1
  709. package/dist/vega/p-91ec2e30.js +0 -1
  710. package/dist/vega/p-94394df7.entry.js +0 -1
  711. package/dist/vega/p-991008a8.entry.js +0 -1
  712. package/dist/vega/p-9fd503e9.entry.js +0 -1
  713. package/dist/vega/p-a20854d6.entry.js +0 -1
  714. package/dist/vega/p-a4670e23.js +0 -1
  715. package/dist/vega/p-a530797f.entry.js +0 -1
  716. package/dist/vega/p-a5bd3c15.entry.js +0 -1
  717. package/dist/vega/p-a65941d0.entry.js +0 -1
  718. package/dist/vega/p-a85ad369.entry.js +0 -1
  719. package/dist/vega/p-a86010f7.entry.js +0 -1
  720. package/dist/vega/p-aa10eeb3.entry.js +0 -1
  721. package/dist/vega/p-ab2f35af.entry.js +0 -1
  722. package/dist/vega/p-ac4563d7.js +0 -1
  723. package/dist/vega/p-aedf7146.js +0 -1
  724. package/dist/vega/p-b4ea3fad.js +0 -1
  725. package/dist/vega/p-bb4a558d.entry.js +0 -1
  726. package/dist/vega/p-bb8339ed.entry.js +0 -1
  727. package/dist/vega/p-be930e85.entry.js +0 -1
  728. package/dist/vega/p-bf2bd6d0.entry.js +0 -1
  729. package/dist/vega/p-c379a5a5.entry.js +0 -1
  730. package/dist/vega/p-c616c592.js +0 -1
  731. package/dist/vega/p-ca3472c1.entry.js +0 -1
  732. package/dist/vega/p-cc43bffb.js +0 -1
  733. package/dist/vega/p-d6ed3d76.entry.js +0 -1
  734. package/dist/vega/p-db8cdba6.js +0 -1
  735. package/dist/vega/p-e1610196.entry.js +0 -1
  736. package/dist/vega/p-e87b0b4a.entry.js +0 -1
  737. package/dist/vega/p-e9c4fd24.entry.js +0 -1
  738. package/dist/vega/p-eb60cfe1.entry.js +0 -1
  739. package/dist/vega/p-ef001c70.entry.js +0 -1
  740. package/dist/vega/p-ef9cbad1.js +0 -1
  741. package/dist/vega/p-f383c856.js +0 -1
  742. package/dist/vega/p-f3c3ff26.entry.js +0 -1
  743. package/dist/vega/p-f52a0155.entry.js +0 -1
  744. package/dist/vega/p-f69f84a7.js +0 -1
  745. package/dist/vega/p-f8f7cf48.entry.js +0 -1
  746. package/dist/vega/p-fba14ad2.entry.js +0 -1
  747. package/dist/vega/p-fbd64f9c.entry.js +0 -1
  748. package/dist/vega/p-fdc270b8.entry.js +0 -1
  749. package/dist/vega/p-fe12eff6.js +0 -1
  750. package/dist/vega/p-ffbff9b5.entry.js +0 -1
  751. /package/dist/{types/utils/test/sanitize.test.d.ts → collection/components/vega-rich-text-editor/slimmers/controllers/html-cleaner/html-content-cleaner-processor.interface.js} +0 -0
  752. /package/dist/vega/{p-d9671d27.js → p-6c170474.js} +0 -0
@@ -1,7 +1,6 @@
1
1
  import { PositionCalculationMockedComponent } from './body-position-calculation-strategy.test';
2
+ import { ScreenScrollPositionUpdate } from '../screen-scroll-position-update';
2
3
  describe('BodyPositionCalculationStrategy.getPositionBox', () => {
3
- const component = new PositionCalculationMockedComponent();
4
- component.setIsScreenPosition(true);
5
4
  const innerHTML = `
6
5
  <div class='container'>
7
6
  <div class='target'> test target </div>
@@ -20,6 +19,11 @@ describe('BodyPositionCalculationStrategy.getPositionBox', () => {
20
19
  Object.assign(window, { innerHeight: 500 });
21
20
  });
22
21
  describe('directions', () => {
22
+ let component;
23
+ beforeEach(() => {
24
+ component = new PositionCalculationMockedComponent();
25
+ component.setIsScreenPosition(true);
26
+ });
23
27
  beforeAll(() => {
24
28
  mockElementReturn(element, 'getBoundingClientRect', { width: 50, height: 50 });
25
29
  mockElementReturn(target, 'getBoundingClientRect', {
@@ -29,19 +33,23 @@ describe('BodyPositionCalculationStrategy.getPositionBox', () => {
29
33
  left: 100,
30
34
  });
31
35
  });
32
- test('return result as expected in top', () => {
36
+ test('return result as expected in top-start', () => {
33
37
  expect(component.getPositionBox(container, element, target, ['top'], ['start'])).toEqual({
34
38
  top: 50,
35
39
  left: 100,
36
40
  placement: 'top',
37
41
  alignment: 'start',
38
42
  });
43
+ });
44
+ test('return result as expected in top-center', () => {
39
45
  expect(component.getPositionBox(container, element, target, ['top'], ['center'])).toEqual({
40
46
  top: 50,
41
47
  left: 125,
42
48
  placement: 'top',
43
49
  alignment: 'center',
44
50
  });
51
+ });
52
+ test('return result as expected in top-end', () => {
45
53
  expect(component.getPositionBox(container, element, target, ['top'], ['end'])).toEqual({
46
54
  top: 50,
47
55
  left: 150,
@@ -49,19 +57,23 @@ describe('BodyPositionCalculationStrategy.getPositionBox', () => {
49
57
  alignment: 'end',
50
58
  });
51
59
  });
52
- test('return result as expected in left', () => {
60
+ test('return result as expected in left-start', () => {
53
61
  expect(component.getPositionBox(container, element, target, ['left'], ['start'])).toEqual({
54
62
  top: 100,
55
63
  left: 50,
56
64
  placement: 'left',
57
65
  alignment: 'start',
58
66
  });
67
+ });
68
+ test('return result as expected in left-center', () => {
59
69
  expect(component.getPositionBox(container, element, target, ['left'], ['center'])).toEqual({
60
70
  top: 125,
61
71
  left: 50,
62
72
  placement: 'left',
63
73
  alignment: 'center',
64
74
  });
75
+ });
76
+ test('return result as expected in left-end', () => {
65
77
  expect(component.getPositionBox(container, element, target, ['left'], ['end'])).toEqual({
66
78
  top: 150,
67
79
  left: 50,
@@ -69,19 +81,23 @@ describe('BodyPositionCalculationStrategy.getPositionBox', () => {
69
81
  alignment: 'end',
70
82
  });
71
83
  });
72
- test('return result as expected in bottom', () => {
84
+ test('return result as expected in bottom-start', () => {
73
85
  expect(component.getPositionBox(container, element, target, ['bottom'], ['start'])).toEqual({
74
86
  top: 200,
75
87
  left: 100,
76
88
  placement: 'bottom',
77
89
  alignment: 'start',
78
90
  });
91
+ });
92
+ test('return result as expected in bottom-center', () => {
79
93
  expect(component.getPositionBox(container, element, target, ['bottom'], ['center'])).toEqual({
80
94
  top: 200,
81
95
  left: 125,
82
96
  placement: 'bottom',
83
97
  alignment: 'center',
84
98
  });
99
+ });
100
+ test('return result as expected in bottom-end', () => {
85
101
  expect(component.getPositionBox(container, element, target, ['bottom'], ['end'])).toEqual({
86
102
  top: 200,
87
103
  left: 150,
@@ -89,19 +105,23 @@ describe('BodyPositionCalculationStrategy.getPositionBox', () => {
89
105
  alignment: 'end',
90
106
  });
91
107
  });
92
- test('return result as expected in right', () => {
108
+ test('return result as expected in right-start', () => {
93
109
  expect(component.getPositionBox(container, element, target, ['right'], ['start'])).toEqual({
94
110
  top: 100,
95
111
  left: 200,
96
112
  placement: 'right',
97
113
  alignment: 'start',
98
114
  });
115
+ });
116
+ test('return result as expected in right-center', () => {
99
117
  expect(component.getPositionBox(container, element, target, ['right'], ['center'])).toEqual({
100
118
  top: 125,
101
119
  left: 200,
102
120
  placement: 'right',
103
121
  alignment: 'center',
104
122
  });
123
+ });
124
+ test('return result as expected in right-end', () => {
105
125
  expect(component.getPositionBox(container, element, target, ['right'], ['end'])).toEqual({
106
126
  top: 150,
107
127
  left: 200,
@@ -111,3 +131,80 @@ describe('BodyPositionCalculationStrategy.getPositionBox', () => {
111
131
  });
112
132
  });
113
133
  });
134
+ describe('ScreenScrollPositionUpdate.shouldUpdatePosition', () => {
135
+ function makeRect(bounds) {
136
+ var _a, _b;
137
+ const width = (_a = bounds.width) !== null && _a !== void 0 ? _a : bounds.right - bounds.left;
138
+ const height = (_b = bounds.height) !== null && _b !== void 0 ? _b : bounds.bottom - bounds.top;
139
+ return {
140
+ x: bounds.left,
141
+ y: bounds.top,
142
+ left: bounds.left,
143
+ top: bounds.top,
144
+ right: bounds.right,
145
+ bottom: bounds.bottom,
146
+ width,
147
+ height,
148
+ toJSON: () => ({}),
149
+ };
150
+ }
151
+ test('returns shouldUpdate=true when target moved, target is within viewport, and appendable is not entirely within viewport', () => {
152
+ const strategy = new ScreenScrollPositionUpdate();
153
+ const previousTargetRect = makeRect({ left: 100, top: 100, right: 200, bottom: 200 });
154
+ const currentTargetRect = makeRect({ left: 100, top: 110, right: 200, bottom: 210 });
155
+ // Appendable is partially outside viewport (bottom > viewportHeight)
156
+ const appendableRect = makeRect({ left: 100, top: 480, right: 200, bottom: 520 });
157
+ const decision = strategy.shouldUpdatePosition({
158
+ previousTargetRect,
159
+ currentTargetRect,
160
+ appendableRect,
161
+ viewportWidth: 500,
162
+ viewportHeight: 500,
163
+ });
164
+ expect(decision).toEqual({ shouldUpdate: true });
165
+ });
166
+ test('returns shouldUpdate=false when target did not move', () => {
167
+ const strategy = new ScreenScrollPositionUpdate();
168
+ const previousTargetRect = makeRect({ left: 100, top: 100, right: 200, bottom: 200 });
169
+ const currentTargetRect = makeRect({ left: 100, top: 100, right: 200, bottom: 200 });
170
+ const appendableRect = makeRect({ left: 100, top: 480, right: 200, bottom: 520 });
171
+ const decision = strategy.shouldUpdatePosition({
172
+ previousTargetRect,
173
+ currentTargetRect,
174
+ appendableRect,
175
+ viewportWidth: 500,
176
+ viewportHeight: 500,
177
+ });
178
+ expect(decision).toEqual({ shouldUpdate: false });
179
+ });
180
+ test('returns shouldUpdate=false when target moved but is outside viewport', () => {
181
+ const strategy = new ScreenScrollPositionUpdate();
182
+ const previousTargetRect = makeRect({ left: 100, top: 100, right: 200, bottom: 200 });
183
+ // Target moved fully outside viewport (top >= viewportHeight)
184
+ const currentTargetRect = makeRect({ left: 100, top: 600, right: 200, bottom: 700 });
185
+ const appendableRect = makeRect({ left: 100, top: 480, right: 200, bottom: 520 });
186
+ const decision = strategy.shouldUpdatePosition({
187
+ previousTargetRect,
188
+ currentTargetRect,
189
+ appendableRect,
190
+ viewportWidth: 500,
191
+ viewportHeight: 500,
192
+ });
193
+ expect(decision).toEqual({ shouldUpdate: false });
194
+ });
195
+ test('returns shouldUpdate=false when appendable is entirely within viewport even if target moved', () => {
196
+ const strategy = new ScreenScrollPositionUpdate();
197
+ const previousTargetRect = makeRect({ left: 100, top: 100, right: 200, bottom: 200 });
198
+ const currentTargetRect = makeRect({ left: 100, top: 110, right: 200, bottom: 210 });
199
+ // Appendable fully inside viewport
200
+ const appendableRect = makeRect({ left: 100, top: 300, right: 200, bottom: 350 });
201
+ const decision = strategy.shouldUpdatePosition({
202
+ previousTargetRect,
203
+ currentTargetRect,
204
+ appendableRect,
205
+ viewportWidth: 500,
206
+ viewportHeight: 500,
207
+ });
208
+ expect(decision).toEqual({ shouldUpdate: false });
209
+ });
210
+ });
@@ -9,7 +9,7 @@ import { isNonNullable } from '../../types/type-guard';
9
9
  import ChangeManager from '../change-manager/change-manager';
10
10
  import domNodeSubjectFactory from '../change-manager/subject/dom-node-subject/dom-node-subject-factory';
11
11
  import { VegaInternalComponentDidRender, VegaInternalPasteEvent, } from '../event-manager/event-id/vega-internal-event-id';
12
- import { waitForComponentDidRender } from '../common';
12
+ import { waitForComponentDidRender } from '../common/wait-for-component-did-render';
13
13
  /** The `StringInputFormatterSlimmer` class in TypeScript is used to format input values based on specified strategies and handle events like keydown, blur, and focus. */
14
14
  export class StringInputFormatterSlimmer extends VegaSlimmer {
15
15
  constructor() {
@@ -5,7 +5,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
7
  import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
8
- import { VegaInternalTranslation } from '../../translation';
8
+ import { VegaInternalTranslation } from '../../translation/internal-translation-controller';
9
9
  /**
10
10
  * Translation slimmer for components to use.
11
11
  * Automatically triggers re-render in components that rely on this utility when the language changes.
@@ -6,6 +6,7 @@ import ChangeManager from '../../change-manager/change-manager';
6
6
  import { DARK_MODE_CHANGE, GP_BRAND_CHANGE, } from '../../change-manager/subject/static-subject/static-subject-title';
7
7
  import { VegaInternalThemeManager } from '../internal-theme-manager';
8
8
  import { StyleControllerAbstract } from './style-controller.abstract';
9
+ import { htmlSanitizer, styleSanitizeStrategy } from '../../../utils/sanitize';
9
10
  /**
10
11
  * Vega components brand style controller
11
12
  */
@@ -34,9 +35,10 @@ class BrandStyleController extends StyleControllerAbstract {
34
35
  generateThemeStyle() {
35
36
  this.tokens = Object.assign(LightModeColorTokens, LightModeBorderTokens, LightModeShadowTokens);
36
37
  const keys = Object.keys(this.tokens);
37
- this.getStyleContainer(this.themeStyleContainerKey).innerHTML = `
38
+ const styleString = `
38
39
  :root {
39
40
  \t\t${keys.map((key) => `--v-${key}: ${this.tokens[key]};`).join('\n\t\t')}}`;
41
+ this.getStyleContainer(this.themeStyleContainerKey).innerHTML = htmlSanitizer.sanitize(styleString, styleSanitizeStrategy);
40
42
  }
41
43
  /**
42
44
  * Determines whether the observer should accept changes.
@@ -1,8 +1,9 @@
1
- import tinycolor from 'tinycolor2';
1
+ import { tinycolor } from '../../../polyfill/tinycolor/tinycolor-polyfill';
2
2
  import { OverridableColorTokens } from '../../../constants/tokens/overridable-color-tokens';
3
3
  import { OverridableBorderTokens } from '../../../constants/tokens/overridable-border-tokens';
4
4
  import { OverridableRingTokens } from '../../../constants/tokens/overridable-ring-tokens';
5
5
  import { vegaNonceManager } from '../../csp/vega-nonce-manager';
6
+ import { htmlSanitizer, styleSanitizeStrategy } from '../../../utils/sanitize';
6
7
  /**
7
8
  * Vega components color override controller
8
9
  */
@@ -27,16 +28,17 @@ class ColorSchemaOverridingController {
27
28
  * @param {OverrideColor[]} overrideThemes Parsed custom override colors
28
29
  */
29
30
  applyTheme(overrideThemes) {
30
- this.getOverrideThemeContainer().innerHTML = `
31
- :root {
32
- \t\t${overrideThemes
31
+ const styleString = `
32
+ :root {
33
+ \t\t${overrideThemes
33
34
  .filter((item) => {
34
35
  return !!item.value;
35
36
  })
36
37
  .map((item) => `--v-${item.name}: ${item.value};`)
37
38
  .join('\n\t\t')}
38
- }
39
- `;
39
+ }
40
+ `;
41
+ this.getOverrideThemeContainer().innerHTML = htmlSanitizer.sanitize(styleString, styleSanitizeStrategy);
40
42
  }
41
43
  /* eslint-disable no-restricted-globals */
42
44
  /**
@@ -11,6 +11,7 @@ import ChangeManager from '../../change-manager/change-manager';
11
11
  import { Observer } from '../../change-manager/observer/observer';
12
12
  import { VegaInternalThemeManager } from '../internal-theme-manager';
13
13
  import { StyleControllerAbstract } from './style-controller.abstract';
14
+ import { htmlSanitizer, styleSanitizeStrategy } from '../../../utils/sanitize';
14
15
  // TODO: Remove this after the token add in vega design.
15
16
  const CustomDarkModeColorTokens = {
16
17
  'bg-backdrop-loading': '0, 0, 0, 0.5',
@@ -57,9 +58,10 @@ class DarkModeStyleController extends StyleControllerAbstract {
57
58
  const oldTokens = Object.assign(DarkModeColorTokens, DarkModeBorderTokens, DarkModeRingTokens, DarkModeShadowTokens);
58
59
  this.darkModeColorAllTokens = Object.assign(VegaInternalThemeManager.getBranding() === 'heartland' ? oldTokens : newBrandTokens, CustomDarkModeColorTokens, this.dynamicCustomDarkModeColor);
59
60
  const keys = Object.keys(this.darkModeColorAllTokens);
60
- this.getStyleContainer(this.themeStyleContainerKey).innerHTML = `
61
+ const styleString = `
61
62
  html.dark {
62
63
  \t\t${keys.map((key) => `--v-${key}: ${this.darkModeColorAllTokens[key]};`).join('\n\t\t')}}`;
64
+ this.getStyleContainer(this.themeStyleContainerKey).innerHTML = htmlSanitizer.sanitize(styleString, styleSanitizeStrategy);
63
65
  }
64
66
  /**
65
67
  * Determines whether the observer should accept changes.
@@ -3,6 +3,7 @@ import './controllers/dark-mode-style-controller';
3
3
  import ChangeManager from '../change-manager/change-manager';
4
4
  import { DARK_MODE_CHANGE, GP_BRAND_CHANGE, } from '../change-manager/subject/static-subject/static-subject-title';
5
5
  import './controllers/brand-style-controller';
6
+ import { emptySanitizeStrategy, htmlSanitizer } from '../../utils/sanitize';
6
7
  /**
7
8
  * Vega components controller to control the internal theme manager
8
9
  */
@@ -23,7 +24,7 @@ class InternalThemeManager {
23
24
  * It removes all the custom override theme styles from the DOM
24
25
  */
25
26
  reset() {
26
- VegaColorSchemaOverridingController.getOverrideThemeContainer().innerHTML = '';
27
+ VegaColorSchemaOverridingController.getOverrideThemeContainer().innerHTML = htmlSanitizer.sanitize('', emptySanitizeStrategy);
27
28
  }
28
29
  /* eslint-disable no-restricted-globals */
29
30
  /**
@@ -308,8 +308,7 @@ describe('Dark mode', () => {
308
308
  var _a;
309
309
  VegaThemeManager.toggleDarkMode(true);
310
310
  expect((_a = document.head.querySelector('#vegaDarkModeStyle')) === null || _a === void 0 ? void 0 : _a.textContent).toMatchInlineSnapshot(`
311
- "
312
- html.dark {
311
+ "html.dark {
313
312
  --v-bg-brand: 176, 180, 181, 1;
314
313
  --v-bg-page: 24, 24, 48, 1;
315
314
  --v-bg-primary: 4, 4, 28, 1;
@@ -71,6 +71,7 @@ export class ElementAppender {
71
71
  * @returns {void} Nothing is being returned.
72
72
  */
73
73
  show() {
74
+ this.positionCalculationController.clearScreenPositionScrollFrame();
74
75
  this.setShowConfig();
75
76
  if (!this.showConfig.target) {
76
77
  LogUtility.error(`No target element found, please add it at new elementAppender.`);
@@ -94,6 +95,7 @@ export class ElementAppender {
94
95
  hide() {
95
96
  if (!this.showConfig)
96
97
  return;
98
+ this.positionCalculationController.clearScreenPositionScrollFrame();
97
99
  this.toggleShow(false);
98
100
  this.resetContainerPosition();
99
101
  InternalVegaZIndexManager.removeZIndex(this.showConfig.appendableElement, 'base');
@@ -102,11 +104,7 @@ export class ElementAppender {
102
104
  * Update position while window scroll.
103
105
  */
104
106
  onScroll() {
105
- var _a;
106
- const currentTargetRect = this.showConfig.target.getBoundingClientRect();
107
- if (this.showConfig.isScreenPosition &&
108
- (currentTargetRect.left !== ((_a = this.previousTargetRect) === null || _a === void 0 ? void 0 : _a.left) ||
109
- currentTargetRect.top !== this.previousTargetRect.top)) {
107
+ if (this.showConfig.isScreenPosition) {
110
108
  this.adjustPosition(true);
111
109
  }
112
110
  }
@@ -118,6 +116,7 @@ export class ElementAppender {
118
116
  destroy() {
119
117
  if (!this.showConfig)
120
118
  return;
119
+ this.positionCalculationController.clearScreenPositionScrollFrame();
121
120
  this.removeVisibleAppendElement(this.showConfig.appendableElement);
122
121
  this.resetContainerPosition();
123
122
  InternalVegaZIndexManager.removeZIndex(this.showConfig.appendableElement, 'base');
@@ -1,5 +1,6 @@
1
1
  import { LogUtility } from '../../../utils/log';
2
2
  import { ElementAppender } from '../element-appender';
3
+ import { FeatureFlag } from '../../feature-control/feature-flag-controller';
3
4
  const innerHTML = `<div class='test-parent-host'><div class='test-host'><div class='dropdown'></div></div></div>`;
4
5
  test('return result as expect when call show', () => {
5
6
  document.body.innerHTML = innerHTML;
@@ -448,21 +449,41 @@ describe('screen position', () => {
448
449
  isScreenPosition: true,
449
450
  });
450
451
  drop1.show();
451
- expect(element).toEqualHtml(`
452
- <div class="dropdown vega-element-appender-appendable vega-alignment-start vega-placement-top" style="box-sizing: border-box; position: fixed; left: 100px; top: 50px; z-index: 10001;"></div>
453
- `);
454
- drop1['previousTargetRect'] = {
455
- left: 10,
456
- top: 10,
457
- };
452
+ expect(element).toHaveClass('vega-placement-top');
453
+ expect(element.style.top).toEqual('50px');
454
+ targetRectSpyOn.and.returnValue({
455
+ width: 100,
456
+ height: 100,
457
+ top: 40,
458
+ left: 100,
459
+ });
458
460
  drop1.onScroll();
459
- expect(element).toEqualHtml(`
460
- <div class="dropdown vega-element-appender-appendable vega-alignment-start vega-placement-top" style="box-sizing: border-box; position: fixed; left: 100px; top: 50px; z-index: 10001;"></div>
461
- `);
462
- drop1['previousTargetRect'] = {
461
+ expect(element).toHaveClass('vega-placement-bottom');
462
+ expect(element.style.top).toEqual('140px');
463
+ });
464
+ test('should auto placement when body is scroll', () => {
465
+ const callbacks = [];
466
+ spyOn(FeatureFlag, 'isEnabled').and.returnValue(true);
467
+ spyOn(window, 'requestAnimationFrame').and.callFake((callback) => {
468
+ callbacks.push(callback);
469
+ return callbacks.length;
470
+ });
471
+ const targetRectSpyOn = spyOn(target, 'getBoundingClientRect');
472
+ targetRectSpyOn.and.returnValue({
473
+ width: 100,
474
+ height: 100,
475
+ top: 100,
463
476
  left: 100,
464
- top: 10,
465
- };
477
+ });
478
+ const drop1 = new ElementAppender({
479
+ target: target,
480
+ appendableElement: element,
481
+ placement: ['top', 'bottom'],
482
+ isScreenPosition: true,
483
+ });
484
+ drop1.show();
485
+ expect(element).toHaveClass('vega-placement-top');
486
+ expect(element.style.top).toEqual('50px');
466
487
  targetRectSpyOn.and.returnValue({
467
488
  width: 100,
468
489
  height: 100,
@@ -470,10 +491,38 @@ describe('screen position', () => {
470
491
  left: 100,
471
492
  });
472
493
  drop1.onScroll();
473
- drop1['previousTargetRect'] = undefined;
474
494
  drop1.onScroll();
475
- expect(element).toEqualHtml(`
476
- <div class="dropdown vega-element-appender-appendable vega-alignment-start vega-placement-top" style="box-sizing: border-box; position: fixed; left: 100px; top: -10px; z-index: 10001;"></div>
477
- `);
495
+ callbacks.forEach((callback) => callback(0));
496
+ expect(element).toHaveClass('vega-placement-bottom');
497
+ expect(element.style.top).toEqual('140px');
498
+ drop1.hide();
499
+ });
500
+ test('should not change placement when body is scroll and FeatureFlag is disabled', () => {
501
+ FeatureFlag.disable('VEGA_ELEMENT_APPENDER.AUTO_PLACEMENT');
502
+ const targetRectSpyOn = spyOn(target, 'getBoundingClientRect');
503
+ targetRectSpyOn.and.returnValue({
504
+ width: 100,
505
+ height: 100,
506
+ top: 100,
507
+ left: 100,
508
+ });
509
+ const drop1 = new ElementAppender({
510
+ target: target,
511
+ appendableElement: element,
512
+ placement: ['top', 'bottom'],
513
+ isScreenPosition: true,
514
+ });
515
+ drop1.show();
516
+ expect(element).toHaveClass('vega-placement-top');
517
+ expect(element.style.top).toEqual('50px');
518
+ targetRectSpyOn.and.returnValue({
519
+ width: 100,
520
+ height: 100,
521
+ top: 40,
522
+ left: 100,
523
+ });
524
+ drop1.onScroll();
525
+ expect(element).toHaveClass('vega-placement-top');
526
+ expect(element.style.top).toEqual('-10px');
478
527
  });
479
528
  });
@@ -4,3 +4,5 @@ export * from './constants/public-api';
4
4
  export * from './helpers/public-api';
5
5
  export * from './types/public-api';
6
6
  export * from './helpers/validator/public-rules';
7
+ export { VegaRTEContent } from './components/vega-rich-text-editor/dto/content-state';
8
+ export * from './components/vega-rich-text-editor/public-api';
@@ -0,0 +1,2 @@
1
+ export { tokenize } from './tokenizer';
2
+ export { getLanguageGrammar } from './languages/language-registry';
@@ -0,0 +1,86 @@
1
+ /**
2
+ * Grammar definition for CSS syntax highlighting.
3
+ * Handles selectors, properties, values, at-rules, comments, strings, and other CSS constructs.
4
+ */
5
+ export const cssGrammar = {
6
+ comment: {
7
+ pattern: /\/\*[\s\S]*?\*\//,
8
+ greedy: true,
9
+ },
10
+ string: {
11
+ pattern: /("|')(?:\\[\s\S]|(?!\1)[^\\\n\r])*\1/,
12
+ greedy: true,
13
+ },
14
+ atrule: [
15
+ {
16
+ pattern: /@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,
17
+ inside: {
18
+ 'rule': { pattern: /^@[\w-]+/ },
19
+ 'selector-function-argument': {
20
+ pattern: /(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,
21
+ lookbehind: true,
22
+ },
23
+ 'keyword': {
24
+ pattern: /(^|[^\w-])(?:and|not|only|or)(?![\w-])/,
25
+ lookbehind: true,
26
+ },
27
+ 'punctuation': { pattern: /[;:(){}]/ },
28
+ },
29
+ },
30
+ ],
31
+ url: {
32
+ pattern: /\burl\((?:("|')(?:\\[\s\S]|(?!\1)[^\\\n\r])*\1|(?:[^\\\r\n()"']|\\[\s\S])*)\)/i,
33
+ greedy: true,
34
+ inside: {
35
+ function: { pattern: /^url/i },
36
+ punctuation: { pattern: /^\(|\)$/ },
37
+ string: {
38
+ pattern: /^("|')[\s\S]+(?=\1$)/,
39
+ lookbehind: true,
40
+ },
41
+ },
42
+ },
43
+ selector: {
44
+ pattern: /(?=\S)[^@;{}()]?(?:[^@;{}()\s]|\s+(?![\s{])|\((?:[^()]|\([^()]*\))*\))*(?=\s*\{)/,
45
+ inside: {
46
+ 'pseudo-element': { pattern: /(?:::)[\w-]+/ },
47
+ 'pseudo-class': { pattern: /(?::)[\w-]+/ },
48
+ 'class': { pattern: /\.[\w-]+/ },
49
+ 'id': { pattern: /#[\w-]+/ },
50
+ 'attribute': {
51
+ pattern: /\[(?:[^[\]"']|("|')(?:\\[\s\S]|(?!\1)[^\\\n\r])*\1)*\]/,
52
+ greedy: true,
53
+ inside: {
54
+ 'punctuation': { pattern: /^\[|\]$/ },
55
+ 'attr-name': { pattern: /^(\s*)(?:(?!\s)[-\w\u00B7\u00C0-\u024F])+/i, lookbehind: true },
56
+ 'attr-value': [{ pattern: /(=\s*)(?:"[^"]*"|'[^']*'|[^\s'"=]+)/, lookbehind: true }],
57
+ 'operator': { pattern: /[|~*^$]?=/ },
58
+ },
59
+ },
60
+ },
61
+ },
62
+ property: {
63
+ pattern: /(?!\s)[-_a-z\u00B7\u00C0-\u024F][-\w\u00B7\u00C0-\u024F]*(?=\s*:)/i,
64
+ },
65
+ important: {
66
+ pattern: /!important\b/i,
67
+ },
68
+ function: {
69
+ pattern: /(^|[^-a-z0-9])[-a-z0-9]+(?=\()/i,
70
+ lookbehind: true,
71
+ },
72
+ number: {
73
+ pattern: /(^|[^\w.-])-?(?:\d+(?:\.\d+)?|\.\d+)(?:e[+-]?\d+)?/i,
74
+ lookbehind: true,
75
+ },
76
+ unit: {
77
+ pattern: /(\b\d+)(?:%|[a-z]+)/,
78
+ lookbehind: true,
79
+ },
80
+ punctuation: {
81
+ pattern: /[(){};:,]/,
82
+ },
83
+ operator: {
84
+ pattern: /[+\-*/=><~^|]+/,
85
+ },
86
+ };
@@ -0,0 +1,96 @@
1
+ /**
2
+ * Grammar definition for JavaScript syntax highlighting.
3
+ * Handles keywords, operators, strings, template literals, numbers,
4
+ * regex literals, comments, functions, classes, and other JS constructs.
5
+ */
6
+ export const javascriptGrammar = {
7
+ 'comment': [
8
+ {
9
+ pattern: /(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,
10
+ lookbehind: true,
11
+ greedy: true,
12
+ },
13
+ {
14
+ pattern: /(^|[^\\:])\/\/.*/,
15
+ lookbehind: true,
16
+ greedy: true,
17
+ },
18
+ ],
19
+ 'string': [
20
+ {
21
+ pattern: /(["'])(?:\\[\s\S]|(?!\1)[^\\\r\n])*\1/,
22
+ greedy: true,
23
+ },
24
+ ],
25
+ 'template-string': {
26
+ pattern: /`(?:\\[\s\S]|[^\\`])*`/,
27
+ greedy: true,
28
+ inside: {
29
+ 'template-punctuation': {
30
+ pattern: /^`|`$/,
31
+ },
32
+ 'interpolation': {
33
+ pattern: /\$\{(?:[^{}]|\{(?:[^{}]|\{[^{}]*\})*\})*\}/,
34
+ inside: {
35
+ 'interpolation-punctuation': {
36
+ pattern: /^\$\{|\}$/,
37
+ },
38
+ },
39
+ },
40
+ 'string': {
41
+ pattern: /[\s\S]+/,
42
+ },
43
+ },
44
+ },
45
+ 'regex': {
46
+ pattern:
47
+ // eslint-disable-next-line no-useless-escape
48
+ /((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*\]|\\.|[^/\\\[\r\n])+\/[dgimyus]{0,7}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[.\r\n,;:})\]]|\/\/))/,
49
+ lookbehind: true,
50
+ greedy: true,
51
+ inside: {
52
+ 'regex-source': {
53
+ pattern: /^(\/)[\s\S]+(?=\/[a-z]*$)/,
54
+ lookbehind: true,
55
+ },
56
+ 'regex-delimiter': {
57
+ pattern: /^\/|\/$/,
58
+ },
59
+ 'regex-flags': {
60
+ pattern: /^[a-z]+$/,
61
+ },
62
+ },
63
+ },
64
+ 'class-name': [
65
+ {
66
+ pattern: /(\b(?:class|extends|implements|instanceof|interface|new)\s+)[\w.\\]+/,
67
+ lookbehind: true,
68
+ inside: {
69
+ punctuation: { pattern: /[.\\]/ },
70
+ },
71
+ },
72
+ ],
73
+ 'keyword': [
74
+ {
75
+ pattern: /\b(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,
76
+ },
77
+ ],
78
+ 'boolean': {
79
+ pattern: /\b(?:false|true)\b/,
80
+ },
81
+ 'number': {
82
+ pattern: /\b(?:(?:0[xX][\dA-Fa-f](?:_[\dA-Fa-f])*|0[bB][01](?:_[01])*|0[oO][0-7](?:_[0-7])*)n?|(?:\d(?:_\d)*\.?\d*|\.\d+)(?:[Ee][+-]?\d(?:_\d)*)?n?|NaN|Infinity)\b/,
83
+ },
84
+ 'function': {
85
+ pattern: /#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,
86
+ },
87
+ 'operator': {
88
+ pattern: /--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%|&^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/,
89
+ },
90
+ 'punctuation': {
91
+ pattern: /[{}[\];(),.:]/,
92
+ },
93
+ 'constant': {
94
+ pattern: /\b[A-Z](?:[A-Z_]|\dx)*\b/,
95
+ },
96
+ };