@globalpayments/vega 2.99.0 → 2.101.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 (649) hide show
  1. package/dist/cjs/{accessibility-88f8af84.js → accessibility-6ca2a237.js} +21 -0
  2. package/dist/cjs/{action-color-accessibility-validator-b8a9ef0f.js → action-color-accessibility-validator-61af71ae.js} +1 -1
  3. package/dist/cjs/{app-globals-a306dce6.js → app-globals-275ea7c7.js} +19 -10
  4. package/dist/cjs/{aria-attributes-value-mapper-9a41b9cf.js → aria-attributes-value-mapper-e8c6b0e0.js} +1 -1
  5. package/dist/cjs/{aria-dialog-focusable-trap-slimmer-62147489.js → aria-dialog-focusable-trap-slimmer-c79cc3f8.js} +1 -1
  6. package/dist/cjs/{child-nodes-event-prevent-slimmer-e0ac8467.js → child-nodes-event-prevent-slimmer-d720d7e9.js} +1 -1
  7. package/dist/cjs/{code-block-ea1f5eb3.js → code-block-c598832d.js} +815 -751
  8. package/dist/cjs/{component-value-history-controller-slimmer.abstract-7071b064.js → component-value-history-controller-slimmer.abstract-4bd47aa1.js} +4 -4
  9. package/dist/cjs/{content-state-8d07d530.js → content-state-da23e822.js} +47 -3
  10. package/dist/cjs/countries-a8e3812a.js +251 -0
  11. package/dist/cjs/{dark-mode-style-controller-f3da3342.js → dark-mode-style-controller-ec04ece9.js} +45 -45
  12. package/dist/cjs/{date-required-rule-c0c498ad.js → date-required-rule-45c802d3.js} +1 -1
  13. package/dist/cjs/{design-token-58bf7fe8.js → design-token-9d762da0.js} +3 -3
  14. package/dist/cjs/{element-appender-slimmer-a0269315.js → element-appender-slimmer-2aaf8e24.js} +22 -3
  15. package/dist/cjs/{event-emit-slimmer-34aa195e.js → event-emit-slimmer-67b5c186.js} +1 -1
  16. package/dist/cjs/{form-field-controller-slimmer-f73f200e.js → form-field-controller-slimmer-ac9337f4.js} +3 -3
  17. package/dist/cjs/{image-annotation-action-2a28038e.js → image-annotation-action-378838c2.js} +8 -7
  18. package/dist/cjs/{image-extension-9659708b.js → image-extension-673ebe7f.js} +2 -2
  19. package/dist/cjs/index.cjs.js +24 -21
  20. package/dist/cjs/{inject-keyboard-manager-4fa45f9c.js → inject-keyboard-manager-540f0876.js} +1 -1
  21. package/dist/cjs/{internal-calendar-period-factory-6196bc80.js → internal-calendar-period-factory-b11918ee.js} +1 -1
  22. package/dist/cjs/{internal-translation-controller-51f7f865.js → internal-translation-controller-27bfc8c7.js} +15 -0
  23. package/dist/cjs/{internal-vega-event-manager-7003c84a.js → internal-vega-event-manager-976b9526.js} +10 -2
  24. package/dist/cjs/{keyboard-manager-482fe257.js → keyboard-manager-16e96b62.js} +12 -5
  25. package/dist/cjs/{keyboard-manager-slimmer-a19430dd.js → keyboard-manager-slimmer-0a4e556d.js} +1 -1
  26. package/dist/cjs/{link-extension-11340e1c.js → link-extension-f493e432.js} +3 -3
  27. package/dist/cjs/loader.cjs.js +17 -16
  28. package/dist/cjs/{month-view-generator-1a534451.js → month-view-generator-0a3e04de.js} +1 -1
  29. package/dist/cjs/overlay-escape-coordination-901d8942.js +38 -0
  30. package/dist/cjs/{public-rules-6c77b545.js → public-rules-bae12c47.js} +9 -9
  31. package/dist/cjs/{range-22ddd452.js → range-9f42fb40.js} +1 -1
  32. package/dist/cjs/{responsive-format-facade-74e6d791.js → responsive-format-facade-c6d7f0a1.js} +1 -1
  33. package/dist/cjs/{rich-text-editor-required-rule-09d1093a.js → rich-text-editor-required-rule-bb232741.js} +1 -1
  34. package/dist/cjs/{split-cell-operation-11bfb305.js → split-cell-operation-0d33123e.js} +4 -4
  35. package/dist/cjs/{state-border-formatter-bf4f9f1c.js → state-border-formatter-dda9109a.js} +1 -1
  36. package/dist/cjs/{string-format-strategy.abstract-bf37b14c.js → string-format-strategy.abstract-3a968a59.js} +1 -1
  37. package/dist/cjs/{string-input-formatter-slimmer-ffeb18a6.js → string-input-formatter-slimmer-2e0a838e.js} +3 -3
  38. package/dist/cjs/{string-mask-strategy-7f394726.js → string-mask-strategy-d9f85c21.js} +2 -2
  39. package/dist/cjs/{style-formatter-4ac63910.js → style-formatter-d21a9784.js} +2 -2
  40. package/dist/cjs/{sub-state-notify-slimmer-e264a120.js → sub-state-notify-slimmer-3b33e31c.js} +1 -1
  41. package/dist/cjs/{sub-state-observer-slimmer-6033b824.js → sub-state-observer-slimmer-5b68ba3f.js} +1 -1
  42. package/dist/cjs/{time-required-rule-e2a50003.js → time-required-rule-580cbd3d.js} +1 -1
  43. package/dist/cjs/{token-extension-4686cb3b.js → token-extension-4badb962.js} +811 -53
  44. package/dist/cjs/{translation-slimmer-e4997f8f.js → translation-slimmer-31cd5a57.js} +1 -1
  45. package/dist/cjs/{type-guard-b8d7bb3f.js → type-guard-00b8efc0.js} +1 -1
  46. package/dist/cjs/{valid-credit-card-number-rule-f5a6f009.js → valid-credit-card-number-rule-70885128.js} +1 -1
  47. package/dist/cjs/vega-accordion.cjs.entry.js +9 -9
  48. package/dist/cjs/vega-app-footer.cjs.entry.js +4 -4
  49. package/dist/cjs/vega-app-header-button.cjs.entry.js +10 -10
  50. package/dist/cjs/vega-banner.cjs.entry.js +4 -4
  51. package/dist/cjs/vega-box.cjs.entry.js +6 -6
  52. package/dist/cjs/vega-brand-logo.cjs.entry.js +1 -1
  53. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  54. package/dist/cjs/vega-button-circle.cjs.entry.js +12 -12
  55. package/dist/cjs/vega-button-group_2.cjs.entry.js +20 -13
  56. package/dist/cjs/vega-button-link.cjs.entry.js +8 -8
  57. package/dist/cjs/vega-button.cjs.entry.js +27 -11
  58. package/dist/cjs/vega-calendar_5.cjs.entry.js +130 -24
  59. package/dist/cjs/vega-card.cjs.entry.js +5 -5
  60. package/dist/cjs/vega-carousel.cjs.entry.js +7 -7
  61. package/dist/cjs/vega-checkbox_2.cjs.entry.js +9 -9
  62. package/dist/cjs/vega-chip.cjs.entry.js +10 -10
  63. package/dist/cjs/vega-code-block.cjs.entry.js +15 -15
  64. package/dist/cjs/vega-color-picker.cjs.entry.js +8 -8
  65. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +9 -9
  66. package/dist/cjs/vega-color-swatch.cjs.entry.js +6 -6
  67. package/dist/cjs/vega-combo-box.cjs.entry.js +15 -15
  68. package/dist/cjs/vega-date-picker_2.cjs.entry.js +22 -22
  69. package/dist/cjs/vega-dialog_2.cjs.entry.js +76 -10
  70. package/dist/cjs/vega-divider.cjs.entry.js +5 -5
  71. package/dist/cjs/vega-dropdown_5.cjs.entry.js +108 -25
  72. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  73. package/dist/cjs/{vega-event-id-58afed7a.js → vega-event-id-987a170c.js} +2 -0
  74. package/dist/cjs/vega-field-label.cjs.entry.js +29 -36
  75. package/dist/cjs/vega-file-uploader.cjs.entry.js +9 -9
  76. package/dist/cjs/vega-flag-icon.cjs.entry.js +11 -11
  77. package/dist/cjs/vega-flex.cjs.entry.js +6 -6
  78. package/dist/cjs/vega-font.cjs.entry.js +5 -5
  79. package/dist/cjs/vega-form.cjs.entry.js +9 -9
  80. package/dist/cjs/vega-grid.cjs.entry.js +5 -5
  81. package/dist/cjs/vega-icon.cjs.entry.js +5 -5
  82. package/dist/cjs/vega-image-uploader.cjs.entry.js +13 -13
  83. package/dist/cjs/vega-input-credit-card.cjs.entry.js +12 -12
  84. package/dist/cjs/vega-input-numeric.cjs.entry.js +12 -12
  85. package/dist/cjs/vega-input-passcode.cjs.entry.js +11 -11
  86. package/dist/cjs/vega-input-phone-number.cjs.entry.js +56 -275
  87. package/dist/cjs/vega-input-range.cjs.entry.js +10 -10
  88. package/dist/cjs/vega-input-select.cjs.entry.js +39 -39
  89. package/dist/cjs/vega-input.cjs.entry.js +14 -14
  90. package/dist/cjs/{vega-internal-event-id-f4d33037.js → vega-internal-event-id-98d499d7.js} +6 -2
  91. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  92. package/dist/cjs/vega-left-nav_5.cjs.entry.js +14 -14
  93. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
  94. package/dist/cjs/vega-page-notification_2.cjs.entry.js +2 -2
  95. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +4 -4
  96. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +4 -4
  97. package/dist/cjs/vega-pagination.cjs.entry.js +9 -9
  98. package/dist/cjs/vega-popover_2.cjs.entry.js +63 -14
  99. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +10 -10
  100. package/dist/cjs/vega-radio_2.cjs.entry.js +12 -12
  101. package/dist/cjs/vega-rich-text-content.cjs.entry.js +16 -13
  102. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +712 -250
  103. package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +6 -6
  104. package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +8 -8
  105. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +161 -108
  106. package/dist/cjs/vega-segment-control.cjs.entry.js +11 -4
  107. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +12 -12
  108. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +9 -9
  109. package/dist/cjs/vega-sidenav_3.cjs.entry.js +10 -10
  110. package/dist/cjs/vega-signature-capture.cjs.entry.js +12 -12
  111. package/dist/cjs/vega-stepper.cjs.entry.js +8 -8
  112. package/dist/cjs/vega-tab-group_2.cjs.entry.js +7 -7
  113. package/dist/cjs/vega-table_11.cjs.entry.js +625 -666
  114. package/dist/cjs/vega-textarea.cjs.entry.js +8 -8
  115. package/dist/cjs/vega-time-picker_2.cjs.entry.js +16 -16
  116. package/dist/cjs/vega-toggle-switch.cjs.entry.js +8 -8
  117. package/dist/cjs/vega-tooltip_2.cjs.entry.js +7 -7
  118. package/dist/cjs/vega.cjs.js +17 -16
  119. package/dist/cjs/{wait-for-component-did-render-44d006ee.js → wait-for-component-did-render-90edbc1a.js} +1 -1
  120. package/dist/collection/components/vega-button/vega-button.css +3 -3
  121. package/dist/collection/components/vega-button/vega-button.js +17 -2
  122. package/dist/collection/components/vega-button-circle/vega-button-circle.css +3 -3
  123. package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.js +13 -6
  124. package/dist/collection/components/vega-button-link/vega-button-link.css +4 -4
  125. package/dist/collection/components/vega-button-link/vega-button-link.js +2 -2
  126. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +45 -5
  127. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-preview-popover-renderer.js +43 -1
  128. package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-event-renderer.js +23 -4
  129. package/dist/collection/components/vega-calendar/vega-calendar.js +77 -1
  130. package/dist/collection/components/vega-code-block/vega-code-block.css +4 -4
  131. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-keyboard-controller.js +148 -0
  132. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.js +5 -2
  133. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.js +17 -0
  134. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +2 -2
  135. package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +2 -1
  136. package/dist/collection/components/vega-dropdown/vega-dropdown.js +1 -1
  137. package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.js +21 -30
  138. package/dist/collection/components/vega-field-label/vega-field-label.js +7 -5
  139. package/dist/collection/components/vega-flag-icon/slimmers/controllers/vega-flag-icon-controller.js +6 -6
  140. package/dist/collection/components/vega-input-phone-number/slimmers/renderers/country-select-renderer.js +4 -8
  141. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +19 -2
  142. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-prefix-icon-renderer.js +8 -28
  143. package/dist/collection/components/vega-input-select/vega-input-select.js +3 -1
  144. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +66 -0
  145. package/dist/collection/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.js +17 -0
  146. package/dist/collection/components/vega-popover/vega-popover.js +33 -1
  147. package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +4 -1
  148. package/dist/collection/components/vega-rich-text-editor/constants/constant.js +9 -0
  149. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/commit-value-strategy.js +13 -0
  150. package/dist/collection/components/vega-rich-text-editor/dto/actions/commit-value-action.js +20 -0
  151. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +11 -0
  152. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +11 -2
  153. package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +18 -6
  154. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +11 -0
  155. package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-node.js +6 -0
  156. package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +8 -0
  157. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +6 -0
  158. package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +30 -18
  159. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.js +1 -0
  160. package/dist/collection/components/vega-rich-text-editor/extensions/copy/copy-toolbar-button-renderer.js +1 -0
  161. package/dist/collection/components/vega-rich-text-editor/extensions/cut/cut-toolbar-button-renderer.js +1 -0
  162. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.js +51 -0
  163. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/vega-rich-text-find-replace-panel/slimmers/renderers/find-replace-panel-renderer.js +2 -2
  164. package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/fullscreen-toolbar-button-renderer.js +3 -0
  165. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.js +6 -0
  166. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +1 -0
  167. package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/renderers/horizontal-line-toolbar-button-renderer.js +1 -0
  168. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +5 -3
  169. package/dist/collection/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.js +16 -0
  170. package/dist/collection/components/vega-rich-text-editor/extensions/special-characters/special-characters-toolbar-button-renderer.js +2 -0
  171. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.js +3 -9
  172. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-cell-renderer.js +2 -2
  173. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.js +81 -1
  174. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-popover-base-renderer.js +148 -0
  175. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +151 -5
  176. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.js +144 -2
  177. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-selection.js +26 -1
  178. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.js +1 -0
  179. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-cell-properties-form-field-renderer.js +11 -2
  180. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-basic-form-field-renderer.abstract.js +5 -2
  181. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-form-field-renderer.js +5 -1
  182. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.css +5 -0
  183. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.js +16 -1
  184. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/caption-button-slimmer.js +1 -0
  185. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/cell-properties-button-slimmer.js +1 -0
  186. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.js +10 -9
  187. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/merge-cells-button-slimmer.js +9 -8
  188. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.js +25 -10
  189. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-properties-button-slimmer.js +1 -0
  190. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-setting-button-slimmer.abstract.js +5 -4
  191. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/vega-rich-text-table-setting-renderer.js +1 -1
  192. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.css +10 -0
  193. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.js +2 -0
  194. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +1 -0
  195. package/dist/collection/components/vega-rich-text-editor/extensions/word-count/action-handler-interceptors/prevent-hard-limit-exceed-interceptor.js +70 -0
  196. package/dist/collection/components/vega-rich-text-editor/extensions/word-count/type.js +1 -0
  197. package/dist/collection/components/vega-rich-text-editor/extensions/word-count/word-count-extension.js +62 -0
  198. package/dist/collection/components/vega-rich-text-editor/public-api.js +1 -0
  199. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/insert-composition-text-controller.js +2 -1
  200. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +7 -1
  201. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +52 -2
  202. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/word-count-controller.js +79 -0
  203. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +6 -3
  204. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +2 -1
  205. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +2 -1
  206. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +3 -2
  207. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +111 -2
  208. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +17 -6
  209. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +1 -1
  210. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +1 -1
  211. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.js +3 -2
  212. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +59 -8
  213. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.js +1 -1
  214. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +13 -1
  215. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +16 -0
  216. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.js +124 -0
  217. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.js +9 -1
  218. package/dist/collection/components/vega-segment-control/slimmers/renderers/vega-segment-renderer.js +8 -1
  219. package/dist/collection/components/vega-segment-control/vega-segment-control.js +23 -0
  220. package/dist/collection/components/vega-table/slimmers/controllers/dto/column-render-input-model.js +25 -8
  221. package/dist/collection/components/vega-table/slimmers/controllers/dto/row-render-input-model.js +41 -0
  222. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-head-template-structure-controller.js +1 -0
  223. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-render-input-controller.js +316 -18
  224. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-renderer.js +6 -1
  225. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-header-renderer.js +1 -0
  226. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js +33 -530
  227. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-row-renderer.js +1 -0
  228. package/dist/collection/components/vega-table/vega-table-cell/vega-table-cell.css +10 -0
  229. package/dist/collection/components/vega-table/vega-table-cell/vega-table-cell.js +25 -8
  230. package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/renderers/vega-table-expand-row-renderer.js +14 -6
  231. package/dist/collection/components/vega-table/vega-table-expand-row/vega-table-expand-row.css +20 -0
  232. package/dist/collection/components/vega-table/vega-table-expand-row/vega-table-expand-row.js +7 -0
  233. package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +21 -2
  234. package/dist/collection/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.css +10 -0
  235. package/dist/collection/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.js +12 -1
  236. package/dist/collection/components/vega-table/vega-table-foot-row/slimmers/renderers/vega-table-foot-row-renderer.js +20 -13
  237. package/dist/collection/components/vega-table/vega-table-foot-row/vega-table-foot-row.css +26 -0
  238. package/dist/collection/components/vega-table/vega-table-foot-row/vega-table-foot-row.js +12 -0
  239. package/dist/collection/components/vega-table/vega-table-head-cell/vega-table-head-cell.css +10 -0
  240. package/dist/collection/components/vega-table/vega-table-head-cell/vega-table-head-cell.js +19 -6
  241. package/dist/collection/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.js +21 -46
  242. package/dist/collection/components/vega-table/vega-table-head-row/vega-table-head-row.css +16 -7
  243. package/dist/collection/components/vega-table/vega-table-head-row/vega-table-head-row.js +9 -2
  244. package/dist/collection/components/vega-table/vega-table-row/slimmers/renderers/vega-table-row-renderer.js +28 -13
  245. package/dist/collection/components/vega-table/vega-table-row/vega-table-row.css +26 -0
  246. package/dist/collection/components/vega-table/vega-table-row/vega-table-row.js +11 -0
  247. package/dist/collection/constants/tokens/themes/v2-new-brand/dark-mode-border-tokens.js +1 -1
  248. package/dist/collection/constants/tokens/themes/v2-new-brand/dark-mode-color-tokens.js +20 -20
  249. package/dist/collection/constants/tokens/themes/v2-new-brand/dark-mode-ring-tokens.js +1 -1
  250. package/dist/collection/constants/tokens/themes/v2-new-brand/dark-mode-shadow-tokens.js +1 -1
  251. package/dist/collection/constants/tokens/themes/v2-new-brand/light-mode-border-tokens.js +1 -1
  252. package/dist/collection/constants/tokens/themes/v2-new-brand/light-mode-color-tokens.js +19 -19
  253. package/dist/collection/constants/tokens/themes/v2-new-brand/light-mode-shadow-tokens.js +1 -1
  254. package/dist/collection/constants/ui.js +1 -0
  255. package/dist/collection/global/scripts/before-vega-load.js +10 -0
  256. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +10 -2
  257. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
  258. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +3 -1
  259. package/dist/collection/helpers/keyboard/keyboard-manager.js +11 -4
  260. package/dist/collection/helpers/keyboard/overlay-escape-coordination.js +33 -0
  261. package/dist/collection/helpers/public-api.js +1 -0
  262. package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +1 -1
  263. package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +8 -0
  264. package/dist/collection/helpers/slimmers/position-calculation/screen-position-calculation-strategy.js +10 -0
  265. package/dist/collection/helpers/slimmers/vega-table-child-render-input-consumer-slimmer.js +2 -0
  266. package/dist/collection/helpers/translation/locales/en.js +15 -0
  267. package/dist/collection/helpers/ui/element-appender.js +1 -0
  268. package/dist/collection/polyfill/libphonenumber/as-you-type.js +21 -3
  269. package/dist/collection/polyfill/libphonenumber/metadata.js +16 -0
  270. package/dist/collection/utils/accessibility.js +20 -0
  271. package/dist/esm/{accessibility-6af5cf2e.js → accessibility-c899a968.js} +21 -1
  272. package/dist/esm/{action-color-accessibility-validator-08877515.js → action-color-accessibility-validator-3e824a59.js} +1 -1
  273. package/dist/esm/{app-globals-c59364c2.js → app-globals-ad3c7cea.js} +19 -10
  274. package/dist/esm/{aria-attributes-value-mapper-2c632641.js → aria-attributes-value-mapper-a5c7478e.js} +1 -1
  275. package/dist/esm/{aria-dialog-focusable-trap-slimmer-f069f54d.js → aria-dialog-focusable-trap-slimmer-27a6aa19.js} +3 -3
  276. package/dist/esm/{child-nodes-event-prevent-slimmer-82626871.js → child-nodes-event-prevent-slimmer-0ebcbf47.js} +1 -1
  277. package/dist/esm/{child-nodes-notify-observer-slimmer-499a3aa7.js → child-nodes-notify-observer-slimmer-034bc78c.js} +1 -1
  278. package/dist/esm/{code-block-e6443949.js → code-block-1cdf7a51.js} +816 -754
  279. package/dist/esm/{component-value-history-controller-slimmer.abstract-ee393213.js → component-value-history-controller-slimmer.abstract-bdeeb43f.js} +6 -6
  280. package/dist/esm/{content-state-43cdacff.js → content-state-6eb610b8.js} +48 -6
  281. package/dist/esm/countries-50d3339b.js +249 -0
  282. package/dist/esm/{dark-mode-style-controller-352f15ff.js → dark-mode-style-controller-4e04a2d3.js} +45 -45
  283. package/dist/esm/{date-required-rule-b5b67498.js → date-required-rule-2ea3aec8.js} +1 -1
  284. package/dist/esm/{design-token-8319bb59.js → design-token-82a4e107.js} +3 -3
  285. package/dist/esm/{dom-node-subject-observer-factory-ddff8662.js → dom-node-subject-observer-factory-bb7e68a0.js} +1 -1
  286. package/dist/esm/{element-appender-slimmer-c81d1fe3.js → element-appender-slimmer-dd4e2908.js} +24 -5
  287. package/dist/esm/{event-emit-slimmer-2452278f.js → event-emit-slimmer-12ee1593.js} +2 -2
  288. package/dist/esm/{form-field-controller-slimmer-511b7ac5.js → form-field-controller-slimmer-5c794b4d.js} +5 -5
  289. package/dist/esm/{image-annotation-action-d7cb80aa.js → image-annotation-action-cdd50dcc.js} +9 -8
  290. package/dist/esm/{image-extension-9b8abd0d.js → image-extension-f6dbd70c.js} +2 -2
  291. package/dist/esm/index.js +24 -23
  292. package/dist/esm/{inject-keyboard-manager-dd368d56.js → inject-keyboard-manager-6a10c9b7.js} +1 -1
  293. package/dist/esm/{internal-calendar-period-factory-d58f35c6.js → internal-calendar-period-factory-d1a60f81.js} +1 -1
  294. package/dist/esm/{internal-translation-controller-b33430c6.js → internal-translation-controller-fff376d2.js} +15 -0
  295. package/dist/esm/{internal-vega-event-manager-2ecc9186.js → internal-vega-event-manager-0c381f3b.js} +10 -2
  296. package/dist/esm/{keyboard-manager-b4a0d97d.js → keyboard-manager-a58288df.js} +13 -6
  297. package/dist/esm/{keyboard-manager-slimmer-0517fc70.js → keyboard-manager-slimmer-133b86cd.js} +1 -1
  298. package/dist/esm/{link-extension-230bae8d.js → link-extension-bc234cf7.js} +3 -3
  299. package/dist/esm/loader.js +19 -18
  300. package/dist/esm/{month-view-generator-f470caac.js → month-view-generator-20e32b22.js} +1 -1
  301. package/dist/esm/overlay-escape-coordination-439f7d6f.js +35 -0
  302. package/dist/esm/{public-rules-28ef32d3.js → public-rules-8dc3fb00.js} +11 -11
  303. package/dist/esm/{range-efad2578.js → range-d2439ba7.js} +2 -2
  304. package/dist/esm/{responsive-format-facade-dec87e46.js → responsive-format-facade-07843ec3.js} +1 -1
  305. package/dist/esm/{rich-text-editor-required-rule-a697e5bd.js → rich-text-editor-required-rule-a0663a84.js} +1 -1
  306. package/dist/esm/{split-cell-operation-89b91a38.js → split-cell-operation-1a889fa0.js} +5 -5
  307. package/dist/esm/{state-border-formatter-1e900a2f.js → state-border-formatter-3b3dcfe8.js} +1 -1
  308. package/dist/esm/{string-format-strategy.abstract-d0ce3f65.js → string-format-strategy.abstract-44381dcb.js} +1 -1
  309. package/dist/esm/{string-input-formatter-slimmer-6546cfc7.js → string-input-formatter-slimmer-69887c40.js} +4 -4
  310. package/dist/esm/{string-mask-strategy-dd13ae21.js → string-mask-strategy-999fba4b.js} +2 -2
  311. package/dist/esm/{style-formatter-057d7120.js → style-formatter-c4192c99.js} +2 -2
  312. package/dist/esm/{sub-state-notify-slimmer-23b7d0e8.js → sub-state-notify-slimmer-ba72f30b.js} +2 -2
  313. package/dist/esm/{sub-state-observer-slimmer-722f6b92.js → sub-state-observer-slimmer-bee1c7fa.js} +3 -3
  314. package/dist/esm/{time-required-rule-73753a54.js → time-required-rule-0554b114.js} +1 -1
  315. package/dist/esm/{token-extension-74a0eeb1.js → token-extension-530d9bde.js} +813 -56
  316. package/dist/esm/{translation-slimmer-ef970ffc.js → translation-slimmer-77022f2e.js} +1 -1
  317. package/dist/esm/{type-guard-6fc96870.js → type-guard-26d83e7e.js} +1 -1
  318. package/dist/esm/{ui-d73f756a.js → ui-80e610f4.js} +1 -1
  319. package/dist/esm/{valid-credit-card-number-rule-b54a31e7.js → valid-credit-card-number-rule-f60b6904.js} +1 -1
  320. package/dist/esm/vega-accordion.entry.js +11 -11
  321. package/dist/esm/vega-app-footer.entry.js +6 -6
  322. package/dist/esm/vega-app-header-button.entry.js +12 -12
  323. package/dist/esm/vega-backdrop.entry.js +1 -1
  324. package/dist/esm/vega-banner.entry.js +6 -6
  325. package/dist/esm/vega-box.entry.js +7 -7
  326. package/dist/esm/vega-brand-logo.entry.js +1 -1
  327. package/dist/esm/vega-breadcrumb.entry.js +6 -6
  328. package/dist/esm/vega-button-circle.entry.js +14 -14
  329. package/dist/esm/vega-button-group_2.entry.js +22 -15
  330. package/dist/esm/vega-button-link.entry.js +10 -10
  331. package/dist/esm/vega-button.entry.js +29 -13
  332. package/dist/esm/vega-calendar_5.entry.js +132 -26
  333. package/dist/esm/vega-card.entry.js +6 -6
  334. package/dist/esm/vega-carousel.entry.js +9 -9
  335. package/dist/esm/vega-checkbox_2.entry.js +12 -12
  336. package/dist/esm/vega-chip.entry.js +12 -12
  337. package/dist/esm/vega-code-block.entry.js +17 -17
  338. package/dist/esm/vega-color-picker.entry.js +10 -10
  339. package/dist/esm/vega-color-swatch-picker.entry.js +11 -11
  340. package/dist/esm/vega-color-swatch.entry.js +8 -8
  341. package/dist/esm/vega-combo-box.entry.js +17 -17
  342. package/dist/esm/vega-date-picker_2.entry.js +24 -24
  343. package/dist/esm/vega-dialog_2.entry.js +78 -12
  344. package/dist/esm/vega-divider.entry.js +5 -5
  345. package/dist/esm/vega-dropdown_5.entry.js +111 -28
  346. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  347. package/dist/esm/{vega-event-id-f55f6977.js → vega-event-id-59cd9297.js} +2 -1
  348. package/dist/esm/vega-field-label.entry.js +31 -38
  349. package/dist/esm/vega-file-uploader.entry.js +11 -11
  350. package/dist/esm/vega-flag-icon.entry.js +11 -11
  351. package/dist/esm/vega-flex.entry.js +7 -7
  352. package/dist/esm/vega-font.entry.js +6 -6
  353. package/dist/esm/vega-form.entry.js +12 -12
  354. package/dist/esm/vega-grid.entry.js +6 -6
  355. package/dist/esm/vega-icon.entry.js +6 -6
  356. package/dist/esm/vega-image-uploader.entry.js +15 -15
  357. package/dist/esm/vega-input-credit-card.entry.js +14 -14
  358. package/dist/esm/vega-input-numeric.entry.js +14 -14
  359. package/dist/esm/vega-input-passcode.entry.js +13 -13
  360. package/dist/esm/vega-input-phone-number.entry.js +55 -274
  361. package/dist/esm/vega-input-range.entry.js +12 -12
  362. package/dist/esm/vega-input-select.entry.js +41 -41
  363. package/dist/esm/vega-input.entry.js +16 -16
  364. package/dist/esm/{vega-internal-event-id-86fce049.js → vega-internal-event-id-02093067.js} +4 -2
  365. package/dist/esm/vega-item-toggle.entry.js +5 -5
  366. package/dist/esm/vega-left-nav_5.entry.js +16 -16
  367. package/dist/esm/vega-loader-wrapper_2.entry.js +4 -4
  368. package/dist/esm/vega-page-notification_2.entry.js +4 -4
  369. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +6 -6
  370. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +6 -6
  371. package/dist/esm/vega-pagination.entry.js +11 -11
  372. package/dist/esm/vega-popover_2.entry.js +65 -16
  373. package/dist/esm/vega-progress-tracker_2.entry.js +12 -12
  374. package/dist/esm/vega-radio_2.entry.js +15 -15
  375. package/dist/esm/vega-rich-text-content.entry.js +18 -15
  376. package/dist/esm/vega-rich-text-editor_4.entry.js +715 -253
  377. package/dist/esm/vega-rich-text-find-replace-panel.entry.js +8 -8
  378. package/dist/esm/vega-rich-text-special-characters-panel.entry.js +10 -10
  379. package/dist/esm/vega-rich-text-table-properties_3.entry.js +163 -110
  380. package/dist/esm/vega-segment-control.entry.js +13 -6
  381. package/dist/esm/vega-selection-chip_2.entry.js +14 -14
  382. package/dist/esm/vega-selection-tile_2.entry.js +12 -12
  383. package/dist/esm/vega-sidenav_3.entry.js +12 -12
  384. package/dist/esm/vega-signature-capture.entry.js +14 -14
  385. package/dist/esm/vega-stepper.entry.js +10 -10
  386. package/dist/esm/vega-tab-group_2.entry.js +9 -9
  387. package/dist/esm/vega-table_11.entry.js +627 -668
  388. package/dist/esm/vega-textarea.entry.js +10 -10
  389. package/dist/esm/vega-time-picker_2.entry.js +18 -18
  390. package/dist/esm/vega-toggle-switch.entry.js +10 -10
  391. package/dist/esm/vega-tooltip_2.entry.js +9 -9
  392. package/dist/esm/vega.js +19 -18
  393. package/dist/esm/{wait-for-component-did-render-ff7062aa.js → wait-for-component-did-render-9e84d92d.js} +2 -2
  394. package/dist/sri/vega-sri-manifest.json +415 -407
  395. package/dist/types/components/vega-button/vega-button.d.ts +2 -0
  396. package/dist/types/components/vega-button-group/types.d.ts +12 -6
  397. package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.d.ts +18 -0
  398. package/dist/types/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-preview-popover-renderer.d.ts +9 -0
  399. package/dist/types/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-event-renderer.d.ts +9 -1
  400. package/dist/types/components/vega-calendar/types.d.ts +22 -0
  401. package/dist/types/components/vega-calendar/vega-calendar.d.ts +23 -1
  402. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +1 -1
  403. package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.d.ts +3 -10
  404. package/dist/types/components/vega-flag-icon/slimmers/controllers/vega-flag-icon-controller.d.ts +2 -2
  405. package/dist/types/components/vega-input-phone-number/slimmers/renderers/country-select-renderer.d.ts +0 -1
  406. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +8 -0
  407. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-prefix-icon-renderer.d.ts +2 -14
  408. package/dist/types/components/vega-input-select/vega-input-select.d.ts +1 -0
  409. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +33 -0
  410. package/dist/types/components/vega-modal/types.d.ts +2 -1
  411. package/dist/types/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.d.ts +9 -0
  412. package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +6 -0
  413. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/commit-value-strategy.d.ts +13 -0
  414. package/dist/types/components/vega-rich-text-editor/dto/actions/commit-value-action.d.ts +20 -0
  415. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +6 -0
  416. package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +4 -0
  417. package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +11 -1
  418. package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +6 -0
  419. package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +4 -0
  420. package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +6 -0
  421. package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +4 -0
  422. package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +5 -0
  423. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.d.ts +19 -0
  424. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.d.ts +4 -0
  425. package/dist/types/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.d.ts +14 -1
  426. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.d.ts +2 -2
  427. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.d.ts +31 -1
  428. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-popover-base-renderer.d.ts +91 -0
  429. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.d.ts +46 -0
  430. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.d.ts +58 -0
  431. package/dist/types/components/vega-rich-text-editor/extensions/table/table-selection.d.ts +8 -0
  432. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-basic-form-field-renderer.abstract.d.ts +2 -1
  433. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.d.ts +2 -0
  434. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.d.ts +3 -0
  435. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-setting-button-slimmer.abstract.d.ts +3 -1
  436. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.d.ts +1 -0
  437. package/dist/types/components/vega-rich-text-editor/extensions/word-count/action-handler-interceptors/prevent-hard-limit-exceed-interceptor.d.ts +38 -0
  438. package/dist/types/components/vega-rich-text-editor/extensions/word-count/type.d.ts +46 -0
  439. package/dist/types/components/vega-rich-text-editor/extensions/word-count/word-count-extension.d.ts +38 -0
  440. package/dist/types/components/vega-rich-text-editor/interface.d.ts +12 -0
  441. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +1 -0
  442. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +11 -1
  443. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/word-count-controller.d.ts +40 -0
  444. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.d.ts +14 -0
  445. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +3 -1
  446. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.d.ts +3 -2
  447. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +12 -0
  448. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +2 -0
  449. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +4 -0
  450. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.d.ts +68 -0
  451. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.d.ts +3 -0
  452. package/dist/types/components/vega-segment-control/slimmers/renderers/vega-segment-renderer.d.ts +1 -0
  453. package/dist/types/components/vega-segment-control/types.d.ts +2 -0
  454. package/dist/types/components/vega-segment-control/vega-segment-control.d.ts +7 -1
  455. package/dist/types/components/vega-table/slimmers/controllers/dto/column-render-input-model.d.ts +17 -0
  456. package/dist/types/components/vega-table/slimmers/controllers/dto/row-render-input-model.d.ts +39 -0
  457. package/dist/types/components/vega-table/slimmers/controllers/vega-table-render-input-controller.d.ts +71 -7
  458. package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-renderer.d.ts +1 -0
  459. package/dist/types/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.d.ts +3 -88
  460. package/dist/types/components/vega-table/vega-table-expand-row/slimmers/renderers/vega-table-expand-row-renderer.d.ts +1 -1
  461. package/dist/types/components/vega-table/vega-table-expand-row/vega-table-expand-row.d.ts +5 -0
  462. package/dist/types/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.d.ts +1 -0
  463. package/dist/types/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.d.ts +5 -0
  464. package/dist/types/components/vega-table/vega-table-foot-row/slimmers/renderers/vega-table-foot-row-renderer.d.ts +1 -3
  465. package/dist/types/components/vega-table/vega-table-foot-row/vega-table-foot-row.d.ts +5 -0
  466. package/dist/types/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.d.ts +0 -4
  467. package/dist/types/components/vega-table/vega-table-head-row/vega-table-head-row.d.ts +2 -2
  468. package/dist/types/components/vega-table/vega-table-row/slimmers/renderers/vega-table-row-renderer.d.ts +2 -3
  469. package/dist/types/components/vega-table/vega-table-row/vega-table-row.d.ts +4 -0
  470. package/dist/types/components.d.ts +33 -2
  471. package/dist/types/constants/ui.d.ts +1 -1
  472. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
  473. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +3 -1
  474. package/dist/types/helpers/keyboard/keyboard-manager.d.ts +9 -0
  475. package/dist/types/helpers/keyboard/overlay-escape-coordination.d.ts +28 -0
  476. package/dist/types/helpers/public-api.d.ts +1 -0
  477. package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +1 -1
  478. package/dist/types/helpers/slimmers/position-calculation/position-calculation-controller.d.ts +6 -0
  479. package/dist/types/helpers/slimmers/position-calculation/screen-position-calculation-strategy.d.ts +6 -0
  480. package/dist/types/helpers/slimmers/position-calculation/screen-scroll-position-update.d.ts +2 -1
  481. package/dist/types/helpers/slimmers/vega-table-child-render-input-consumer-slimmer.d.ts +2 -1
  482. package/dist/types/helpers/translation/interface.d.ts +16 -1
  483. package/dist/types/polyfill/libphonenumber/as-you-type.d.ts +1 -0
  484. package/dist/types/polyfill/libphonenumber/metadata.d.ts +10 -0
  485. package/dist/types/types/components.type.d.ts +7 -1
  486. package/dist/types/types/public-api.d.ts +2 -0
  487. package/dist/types/utils/accessibility.d.ts +9 -0
  488. package/dist/vega/index.esm.js +1 -1
  489. package/dist/vega/p-022cbf8a.js +1 -0
  490. package/dist/vega/{p-c8ad7207.entry.js → p-02c1284e.entry.js} +1 -1
  491. package/dist/vega/{p-22edd3cc.js → p-069bbb4a.js} +1 -1
  492. package/dist/vega/p-08fd229c.js +1 -0
  493. package/dist/vega/{p-fcb6b499.js → p-0eea1ca8.js} +1 -1
  494. package/dist/vega/{p-ba6881da.entry.js → p-131ce9df.entry.js} +1 -1
  495. package/dist/vega/{p-024db952.entry.js → p-143ee395.entry.js} +1 -1
  496. package/dist/vega/p-178634f3.js +1 -0
  497. package/dist/vega/{p-9e9f49f4.js → p-1836a6a5.js} +1 -1
  498. package/dist/vega/p-1dbf8d1f.js +1 -0
  499. package/dist/vega/{p-d4d90ce2.entry.js → p-2b26e182.entry.js} +1 -1
  500. package/dist/vega/p-2dda5c65.entry.js +1 -0
  501. package/dist/vega/{p-df63c2fb.entry.js → p-30010c41.entry.js} +1 -1
  502. package/dist/vega/p-32f5a6dd.entry.js +1 -0
  503. package/dist/vega/{p-3c8421d5.entry.js → p-3460a1c5.entry.js} +1 -1
  504. package/dist/vega/p-34b523da.entry.js +1 -0
  505. package/dist/vega/p-357c0226.entry.js +1 -0
  506. package/dist/vega/p-361f8996.js +1 -0
  507. package/dist/vega/{p-526e3634.js → p-36a57431.js} +1 -1
  508. package/dist/vega/p-36ee9d54.js +1 -0
  509. package/dist/vega/{p-6659c910.entry.js → p-37d5c37e.entry.js} +1 -1
  510. package/dist/vega/{p-47a48329.entry.js → p-3d6a43df.entry.js} +1 -1
  511. package/dist/vega/{p-0ca3b4bf.entry.js → p-45ad2d90.entry.js} +1 -1
  512. package/dist/vega/{p-fb9475ab.entry.js → p-4b117bfd.entry.js} +1 -1
  513. package/dist/vega/p-4b35c748.js +1 -0
  514. package/dist/vega/{p-55dc3053.entry.js → p-4e23e56c.entry.js} +1 -1
  515. package/dist/vega/p-4e70836a.entry.js +1 -0
  516. package/dist/vega/{p-66647244.js → p-4ea477d5.js} +1 -1
  517. package/dist/vega/{p-5147c30d.entry.js → p-50e8e24f.entry.js} +1 -1
  518. package/dist/vega/{p-9c5289dc.entry.js → p-522a6eec.entry.js} +1 -1
  519. package/dist/vega/p-53e3f259.js +1 -0
  520. package/dist/vega/{p-2c737fc8.js → p-5536146c.js} +1 -1
  521. package/dist/vega/{p-944e284d.entry.js → p-55c2c0df.entry.js} +1 -1
  522. package/dist/vega/p-587130f6.entry.js +1 -0
  523. package/dist/vega/{p-9c9b0629.js → p-58c8a4ac.js} +1 -1
  524. package/dist/vega/{p-4f6aaac5.entry.js → p-594cb986.entry.js} +1 -1
  525. package/dist/vega/{p-b12de1bf.entry.js → p-5c17ddda.entry.js} +1 -1
  526. package/dist/vega/{p-7977352b.entry.js → p-5c9c0c0d.entry.js} +1 -1
  527. package/dist/vega/p-5f377954.js +1 -1
  528. package/dist/vega/p-60010f14.entry.js +1 -0
  529. package/dist/vega/p-6098c4bb.js +1 -0
  530. package/dist/vega/{p-2044eba9.js → p-60a74fb7.js} +1 -1
  531. package/dist/vega/p-61e63c0e.entry.js +1 -0
  532. package/dist/vega/{p-49d7cfed.entry.js → p-62254dc7.entry.js} +1 -1
  533. package/dist/vega/{p-2af1d8b8.entry.js → p-62ae9327.entry.js} +1 -1
  534. package/dist/vega/{p-b3c4943b.js → p-638b6a7d.js} +1 -1
  535. package/dist/vega/p-66245bc0.entry.js +1 -0
  536. package/dist/vega/{p-bdb5180c.js → p-68744e7e.js} +1 -1
  537. package/dist/vega/{p-f0a0fc77.entry.js → p-68ca8d3c.entry.js} +1 -1
  538. package/dist/vega/p-6a6c1279.js +1 -0
  539. package/dist/vega/{p-5e9e04f3.entry.js → p-6ae93679.entry.js} +1 -1
  540. package/dist/vega/{p-433b1395.entry.js → p-6d90d28d.entry.js} +1 -1
  541. package/dist/vega/p-6e9e7131.js +1 -0
  542. package/dist/vega/{p-014cd411.js → p-6eedbc4f.js} +1 -1
  543. package/dist/vega/{p-c348eaf5.js → p-6fae6768.js} +1 -1
  544. package/dist/vega/p-71813a9e.entry.js +1 -0
  545. package/dist/vega/{p-860e76f5.entry.js → p-729529d6.entry.js} +1 -1
  546. package/dist/vega/{p-aa433430.entry.js → p-75bfbffe.entry.js} +1 -1
  547. package/dist/vega/{p-d6023dc0.entry.js → p-764b4e51.entry.js} +1 -1
  548. package/dist/vega/p-77bcdd35.js +1 -0
  549. package/dist/vega/{p-c41a2d4a.js → p-7d3419c7.js} +1 -1
  550. package/dist/vega/p-8387896e.js +1 -0
  551. package/dist/vega/p-853a05eb.js +1 -0
  552. package/dist/vega/{p-db11134b.entry.js → p-8e8b5790.entry.js} +1 -1
  553. package/dist/vega/{p-444e24c6.js → p-8ebe30a8.js} +1 -1
  554. package/dist/vega/p-8f00dfe6.js +1 -0
  555. package/dist/vega/{p-4022412e.entry.js → p-9236b8d9.entry.js} +1 -1
  556. package/dist/vega/p-9402f32f.js +1 -0
  557. package/dist/vega/{p-691bdc20.js → p-941a83db.js} +1 -1
  558. package/dist/vega/{p-840444c9.entry.js → p-942f9ea6.entry.js} +1 -1
  559. package/dist/vega/{p-5110c84f.js → p-96c090c4.js} +1 -1
  560. package/dist/vega/{p-328ebbdb.entry.js → p-9fdf66a8.entry.js} +1 -1
  561. package/dist/vega/{p-867cc602.entry.js → p-a2c45173.entry.js} +1 -1
  562. package/dist/vega/{p-66fe8b4e.entry.js → p-a54ed341.entry.js} +1 -1
  563. package/dist/vega/{p-44999c88.entry.js → p-a6a89f09.entry.js} +1 -1
  564. package/dist/vega/{p-ccbed811.entry.js → p-a8a246e8.entry.js} +1 -1
  565. package/dist/vega/p-a93b3aed.js +1 -0
  566. package/dist/vega/{p-528748fa.js → p-aa135628.js} +1 -1
  567. package/dist/vega/{p-a1f220ca.js → p-ab9d53e9.js} +1 -1
  568. package/dist/vega/{p-e18c0656.entry.js → p-af0cfea0.entry.js} +1 -1
  569. package/dist/vega/p-af0e9bd5.entry.js +1 -0
  570. package/dist/vega/{p-daba4af1.js → p-b1557bbe.js} +1 -1
  571. package/dist/vega/{p-f13b39d8.js → p-b2a4314a.js} +1 -1
  572. package/dist/vega/p-b94f164a.entry.js +1 -0
  573. package/dist/vega/{p-23c1f378.entry.js → p-b97ed9f7.entry.js} +1 -1
  574. package/dist/vega/{p-1a37d63c.entry.js → p-bbfffe6b.entry.js} +1 -1
  575. package/dist/vega/{p-aa914dbd.entry.js → p-beccc38c.entry.js} +1 -1
  576. package/dist/vega/{p-dd0bd78b.js → p-c34f4cbc.js} +1 -1
  577. package/dist/vega/p-c51de680.js +3 -0
  578. package/dist/vega/{p-e1c82ca9.js → p-c576e846.js} +1 -1
  579. package/dist/vega/p-c601eea6.js +1 -0
  580. package/dist/vega/{p-200c8914.entry.js → p-c6d2513c.entry.js} +1 -1
  581. package/dist/vega/{p-d62e618a.entry.js → p-ca6bd3a0.entry.js} +1 -1
  582. package/dist/vega/{p-ce82d6bb.entry.js → p-cab890be.entry.js} +1 -1
  583. package/dist/vega/p-cb1cd15f.entry.js +1 -0
  584. package/dist/vega/p-d1f47512.js +1 -0
  585. package/dist/vega/{p-66a785d0.entry.js → p-d37d2ea4.entry.js} +1 -1
  586. package/dist/vega/{p-2f89ee14.entry.js → p-d3e99d4a.entry.js} +1 -1
  587. package/dist/vega/{p-f9bfee81.entry.js → p-d6bd3ce4.entry.js} +1 -1
  588. package/dist/vega/{p-f2384411.entry.js → p-d7838f6e.entry.js} +1 -1
  589. package/dist/vega/{p-a4360b7e.entry.js → p-d8c9ea46.entry.js} +1 -1
  590. package/dist/vega/p-d9588b3f.entry.js +1 -0
  591. package/dist/vega/p-db69a5c9.entry.js +1 -0
  592. package/dist/vega/{p-50eda925.js → p-de1d0284.js} +1 -1
  593. package/dist/vega/{p-3c559c8b.js → p-de6fc52c.js} +1 -1
  594. package/dist/vega/{p-fa5cd8b1.js → p-e14323f3.js} +1 -1
  595. package/dist/vega/{p-bd7725f7.entry.js → p-e48b7a8a.entry.js} +1 -1
  596. package/dist/vega/p-e6f67a44.js +1 -0
  597. package/dist/vega/{p-7754b10f.entry.js → p-e8e3bf74.entry.js} +1 -1
  598. package/dist/vega/p-eadc10bc.entry.js +1 -0
  599. package/dist/vega/p-ee329596.entry.js +1 -0
  600. package/dist/vega/p-f01bc6a2.js +1 -0
  601. package/dist/vega/{p-94b54a95.js → p-f324e90e.js} +1 -1
  602. package/dist/vega/{p-f9a3805d.js → p-f48519d2.js} +1 -1
  603. package/dist/vega/{p-52878ea9.js → p-f485448a.js} +1 -1
  604. package/dist/vega/{p-4afd6715.entry.js → p-f8b2dbb9.entry.js} +1 -1
  605. package/dist/vega/{p-35d37477.entry.js → p-f8d13d01.entry.js} +1 -1
  606. package/dist/vega/{p-4370b954.entry.js → p-f902305d.entry.js} +1 -1
  607. package/dist/vega/{p-3c152bad.entry.js → p-f99f054c.entry.js} +1 -1
  608. package/dist/vega/{p-77fb3971.entry.js → p-fe41e3b6.entry.js} +1 -1
  609. package/dist/vega/vega.esm.js +1 -1
  610. package/package.json +1 -1
  611. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-keyboard-conttroller.js +0 -85
  612. package/dist/vega/p-0b2c4c0b.js +0 -1
  613. package/dist/vega/p-1fa22fda.js +0 -1
  614. package/dist/vega/p-2529820e.js +0 -1
  615. package/dist/vega/p-35628af4.js +0 -1
  616. package/dist/vega/p-3a230d4b.entry.js +0 -1
  617. package/dist/vega/p-3a620268.js +0 -1
  618. package/dist/vega/p-4473d8b1.js +0 -3
  619. package/dist/vega/p-4a2fe3a4.js +0 -1
  620. package/dist/vega/p-5447a8e8.js +0 -1
  621. package/dist/vega/p-5af312f8.js +0 -1
  622. package/dist/vega/p-5b3c8a56.js +0 -1
  623. package/dist/vega/p-6493f13a.entry.js +0 -1
  624. package/dist/vega/p-66728dd4.entry.js +0 -1
  625. package/dist/vega/p-67e88cd7.entry.js +0 -1
  626. package/dist/vega/p-67eaf77e.js +0 -1
  627. package/dist/vega/p-6d6b4495.entry.js +0 -1
  628. package/dist/vega/p-7b133734.entry.js +0 -1
  629. package/dist/vega/p-7b84a943.entry.js +0 -1
  630. package/dist/vega/p-83ad8988.js +0 -1
  631. package/dist/vega/p-8c30a60d.js +0 -1
  632. package/dist/vega/p-8d2a9012.js +0 -1
  633. package/dist/vega/p-8d4be607.js +0 -1
  634. package/dist/vega/p-8d77c7cf.js +0 -1
  635. package/dist/vega/p-8f3b93db.js +0 -1
  636. package/dist/vega/p-9c2b3279.js +0 -1
  637. package/dist/vega/p-9c9ff871.entry.js +0 -1
  638. package/dist/vega/p-9d90e271.entry.js +0 -1
  639. package/dist/vega/p-a7517760.entry.js +0 -1
  640. package/dist/vega/p-c8fb3aac.entry.js +0 -1
  641. package/dist/vega/p-cede3535.js +0 -1
  642. package/dist/vega/p-cf4b3d40.entry.js +0 -1
  643. package/dist/vega/p-d35a31a5.entry.js +0 -1
  644. package/dist/vega/p-ded1ecc1.entry.js +0 -1
  645. package/dist/vega/p-e1a65e06.entry.js +0 -1
  646. package/dist/vega/p-e469ba27.entry.js +0 -1
  647. package/dist/vega/p-e4c5cb4f.js +0 -1
  648. package/dist/vega/p-fd23c365.entry.js +0 -1
  649. /package/dist/types/components/vega-dropdown/slimmers/controllers/{vega-dropdown-keyboard-conttroller.d.ts → vega-dropdown-keyboard-controller.d.ts} +0 -0
@@ -6,46 +6,47 @@ const index = require('./index-58ea899e.js');
6
6
  const globalSlimmerRegistry = require('./global-slimmer-registry-b3bce7e0.js');
7
7
  const componentUsageRuntimeMetrics = require('./component-usage-runtime-metrics-389d1548.js');
8
8
  const component = require('./component-1e352960.js');
9
- const accessibility = require('./accessibility-88f8af84.js');
9
+ const accessibility = require('./accessibility-6ca2a237.js');
10
10
  const changeManager = require('./change-manager-a297e4d2.js');
11
11
  const domNodeSubjectObserverFactory = require('./dom-node-subject-observer-factory-c82df135.js');
12
- const vegaInternalEventId = require('./vega-internal-event-id-f4d33037.js');
12
+ const vegaInternalEventId = require('./vega-internal-event-id-98d499d7.js');
13
13
  const staticSubjectTitle = require('./static-subject-title-70c73b16.js');
14
- const codeBlock = require('./code-block-ea1f5eb3.js');
15
- const linkExtension = require('./link-extension-11340e1c.js');
16
- const typeGuard = require('./type-guard-b8d7bb3f.js');
14
+ const codeBlock = require('./code-block-c598832d.js');
15
+ const typeGuard = require('./type-guard-00b8efc0.js');
16
+ const linkExtension = require('./link-extension-f493e432.js');
17
17
  const internalIconManager = require('./internal-icon-manager-40bcac72.js');
18
- const imageAnnotationAction = require('./image-annotation-action-2a28038e.js');
19
- const vegaEventId = require('./vega-event-id-58afed7a.js');
18
+ const imageAnnotationAction = require('./image-annotation-action-378838c2.js');
19
+ const vegaEventId = require('./vega-event-id-987a170c.js');
20
20
  const misc = require('./misc-3d30df91.js');
21
- const waitForComponentDidRender = require('./wait-for-component-did-render-44d006ee.js');
22
- const imageExtension = require('./image-extension-9659708b.js');
23
- const formFieldControllerSlimmer = require('./form-field-controller-slimmer-f73f200e.js');
24
- const eventEmitSlimmer = require('./event-emit-slimmer-34aa195e.js');
25
- const subStateNotifySlimmer = require('./sub-state-notify-slimmer-e264a120.js');
26
- const contentState = require('./content-state-8d07d530.js');
21
+ const waitForComponentDidRender = require('./wait-for-component-did-render-90edbc1a.js');
22
+ const imageExtension = require('./image-extension-673ebe7f.js');
23
+ const formFieldControllerSlimmer = require('./form-field-controller-slimmer-ac9337f4.js');
24
+ const eventEmitSlimmer = require('./event-emit-slimmer-67b5c186.js');
25
+ const subStateNotifySlimmer = require('./sub-state-notify-slimmer-3b33e31c.js');
26
+ const contentState = require('./content-state-da23e822.js');
27
27
  const alignLeft = require('./align-left-4a76df69.js');
28
- const componentValueHistoryControllerSlimmer_abstract = require('./component-value-history-controller-slimmer.abstract-7071b064.js');
28
+ const componentValueHistoryControllerSlimmer_abstract = require('./component-value-history-controller-slimmer.abstract-4bd47aa1.js');
29
29
  const observer = require('./observer-f49483e8.js');
30
30
  const timer = require('./timer-5f33058b.js');
31
31
  const darkModeStateControllerSlimmer = require('./dark-mode-state-controller-slimmer-b454645a.js');
32
32
  const ui = require('./ui-c91c37a7.js');
33
- const richTextEditorRequiredRule = require('./rich-text-editor-required-rule-09d1093a.js');
34
- const childNodesEventPreventSlimmer = require('./child-nodes-event-prevent-slimmer-e0ac8467.js');
35
- const translationSlimmer = require('./translation-slimmer-e4997f8f.js');
36
- const darkModeStyleController = require('./dark-mode-style-controller-f3da3342.js');
33
+ const richTextEditorRequiredRule = require('./rich-text-editor-required-rule-bb232741.js');
34
+ const childNodesEventPreventSlimmer = require('./child-nodes-event-prevent-slimmer-d720d7e9.js');
35
+ const translationSlimmer = require('./translation-slimmer-31cd5a57.js');
36
+ const darkModeStyleController = require('./dark-mode-style-controller-ec04ece9.js');
37
37
  const autoRunWhenReRenderTaskQueueSlimmer_abstract = require('./auto-run-when-re-render-task-queue-slimmer.abstract-5734634d.js');
38
38
  const array = require('./array-249289f2.js');
39
+ const object = require('./object-b53e9416.js');
40
+ const ariaAttributesValueMapper = require('./aria-attributes-value-mapper-e8c6b0e0.js');
39
41
  const chevronDown = require('./chevron-down-9847bf78.js');
40
42
  const chevronUp = require('./chevron-up-21465cf7.js');
41
43
  const trashCan = require('./trash-can-46a5e19a.js');
42
44
  const remoteInvocationRegistry = require('./remote-invocation-registry-fc22fdd0.js');
43
45
  require('./string-39438062.js');
44
46
  require('./typography-3ea4fe41.js');
45
- require('./object-b53e9416.js');
46
47
  require('./breakpoints-ebde4837.js');
47
48
  require('./ui-32120990.js');
48
- require('./internal-translation-controller-51f7f865.js');
49
+ require('./internal-translation-controller-27bfc8c7.js');
49
50
  require('./icon-manager-be358b32.js');
50
51
  require('./create-public-api-runtime-metrics-slimmer-91b0cbfb.js');
51
52
  require('./dynamic-slimmer-f31fdfd7.js');
@@ -57,11 +58,11 @@ require('./internal-form-field-validation-rule.abstract-07cdff46.js');
57
58
  require('./form-field-key-8d5edf75.js');
58
59
  require('./mutation-observer-slimmer-749d5020.js');
59
60
  require('./mutation-observer-filters-38cebc6d.js');
60
- require('./sub-state-observer-slimmer-6033b824.js');
61
- require('./internal-vega-event-manager-7003c84a.js');
62
- require('./range-22ddd452.js');
63
- require('./keyboard-manager-slimmer-a19430dd.js');
64
- require('./keyboard-manager-482fe257.js');
61
+ require('./sub-state-observer-slimmer-5b68ba3f.js');
62
+ require('./internal-vega-event-manager-976b9526.js');
63
+ require('./range-9f42fb40.js');
64
+ require('./keyboard-manager-slimmer-0a4e556d.js');
65
+ require('./keyboard-manager-16e96b62.js');
65
66
  require('./vega-env-manager-23b8b23c.js');
66
67
  require('./feature-flag-controller-c19d0b58.js');
67
68
  require('./index-3ca118c4.js');
@@ -70,7 +71,7 @@ require('./vega-nonce-manager-df69d3ed.js');
70
71
  require('./synchronize-task-queue-1ee80e94.js');
71
72
  require('./number-4816603d.js');
72
73
 
73
- var __decorate$H = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
74
+ var __decorate$I = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
74
75
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
75
76
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
76
77
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -91,11 +92,21 @@ class VegaRichTextEditorRenderer extends globalSlimmerRegistry.VegaSlimmer {
91
92
  const containerStyle = this.rows !== undefined
92
93
  ? { height: this.rows >= 2 ? `${this.rows * codeBlock.VegaRTEOneRowHeightPx}px` : defaultHeight }
93
94
  : { minHeight: defaultHeight };
94
- return (index.h("div", { class: {
95
+ return (
96
+ // This container delegates focus to the inner <vega-rich-text-content> editor when
97
+ // clicking anywhere in the editing area. It is a layout wrapper, not an interactive
98
+ // widget, so giving it a widget role (e.g. `textbox`) would expose a second,
99
+ // non-editable textbox that traps VoiceOver focus and prevents typing.
100
+ // eslint-disable-next-line jsx-a11y/no-static-element-interactions
101
+ index.h("div", { class: {
95
102
  'rich-text-editor-container': true,
96
103
  'disabled': this.disabled,
97
104
  'vega-hidden': this.sourceView,
98
- }, style: containerStyle, onClick: this.richTextContentFocus, role: "textbox", tabIndex: !this.disabled ? -1 : 0, onKeyDown: accessibility.createEnterKeyHandlerToTriggerClick(), ref: (node) => (this.richTextContainerRef = node) },
105
+ }, style: containerStyle, onClick: this.richTextContentFocus,
106
+ // Keep this wrapper out of the tab order so AT lands directly on the inner text
107
+ // region (focusable via contenteditable when enabled, via tabindex when disabled)
108
+ // rather than announcing this generic wrapper as a group.
109
+ tabIndex: -1, onKeyDown: accessibility.createEnterKeyHandlerToTriggerClick(), ref: (node) => (this.richTextContainerRef = node) },
99
110
  index.h("vega-rich-text-content", { ref: (ref) => (this.richTextContentRef = ref), content: this.value, extensions: this.extensions, onScroll: this.notifyContentScrolling }),
100
111
  this.renderCharacterCounter()));
101
112
  };
@@ -109,12 +120,20 @@ class VegaRichTextEditorRenderer extends globalSlimmerRegistry.VegaSlimmer {
109
120
  });
110
121
  };
111
122
  this.renderCharacterCounter = () => {
123
+ if (!this.wordCountController.shouldShowUI()) {
124
+ return null;
125
+ }
126
+ // The word count extension is registered, so the data is guaranteed to be non-null.
127
+ const data = this.wordCountController.getData();
128
+ const isSetMaxChars = typeGuard.isNonNullable(data.maxChars);
112
129
  return (index.h("div", { class: {
113
130
  'text-editor-counter': true,
114
- 'counter-exceed-max-length': false,
115
- }, style: { display: 'none' } },
116
- index.h("span", null, "0"),
117
- index.h("span", null, "/100")));
131
+ 'counter-exceed-max-length': isSetMaxChars && data.count > data.maxChars,
132
+ } },
133
+ index.h("span", null, data.count),
134
+ isSetMaxChars && index.h("span", null,
135
+ "/",
136
+ data.maxChars)));
118
137
  };
119
138
  this.renderErrorMessage = () => {
120
139
  return index.h("div", { class: "vega-error vega-hidden" });
@@ -163,6 +182,35 @@ class VegaRichTextEditorRenderer extends globalSlimmerRegistry.VegaSlimmer {
163
182
  return this.richTextContentRef.shadowRoot.querySelector('.rich-text-content');
164
183
  }
165
184
  }
185
+ /**
186
+ * Re-injects the zero-width space placeholder into empty text spans.
187
+ * When a commit is rejected and the model rolls back unchanged, the framework
188
+ * short-circuits the text diff and leaves the span empty, collapsing the line
189
+ * height, so the placeholder is restored here.
190
+ */
191
+ restoreEmptyTextPlaceholders() {
192
+ const editableElement = this.getRTEEditableElementRef();
193
+ if (!editableElement) {
194
+ return;
195
+ }
196
+ // The text node will only be rendered as a span and a code.
197
+ editableElement.querySelectorAll('span:empty, code:empty').forEach((element) => {
198
+ const textNode = element.firstChild;
199
+ if (textNode && textNode.nodeType === Node.TEXT_NODE) {
200
+ // Reuse the existing text node, `textContent` would swap in a new one and leave the framework patching a detached node.
201
+ textNode.nodeValue = codeBlock.ZERO_WIDTH_SPACE;
202
+ }
203
+ else {
204
+ element.textContent = codeBlock.ZERO_WIDTH_SPACE;
205
+ }
206
+ });
207
+ }
208
+ /**
209
+ * Forces a re-render of the rich text content component, which is useful when the content has changed but the framework has not detected it.
210
+ */
211
+ forceContentRepaint() {
212
+ index.forceUpdate(this.richTextContentRef);
213
+ }
166
214
  render() {
167
215
  return index.h(index.Host, null, this.renderRichTextEditor());
168
216
  }
@@ -183,59 +231,62 @@ class VegaRichTextEditorRenderer extends globalSlimmerRegistry.VegaSlimmer {
183
231
  this.richTextEditorSourceViewRenderer.render()));
184
232
  }
185
233
  }
186
- __decorate$H([
234
+ __decorate$I([
187
235
  globalSlimmerRegistry.MapToComponentField()
188
236
  ], VegaRichTextEditorRenderer.prototype, "host", void 0);
189
- __decorate$H([
237
+ __decorate$I([
190
238
  globalSlimmerRegistry.MapToComponentField()
191
239
  ], VegaRichTextEditorRenderer.prototype, "toolbarRenderer", void 0);
192
- __decorate$H([
240
+ __decorate$I([
193
241
  globalSlimmerRegistry.MapToComponentField()
194
242
  ], VegaRichTextEditorRenderer.prototype, "label", void 0);
195
- __decorate$H([
243
+ __decorate$I([
196
244
  globalSlimmerRegistry.MapToComponentField()
197
245
  ], VegaRichTextEditorRenderer.prototype, "required", void 0);
198
- __decorate$H([
246
+ __decorate$I([
199
247
  globalSlimmerRegistry.MapToComponentField()
200
248
  ], VegaRichTextEditorRenderer.prototype, "optional", void 0);
201
- __decorate$H([
249
+ __decorate$I([
202
250
  globalSlimmerRegistry.MapToComponentField()
203
251
  ], VegaRichTextEditorRenderer.prototype, "hint", void 0);
204
- __decorate$H([
252
+ __decorate$I([
205
253
  globalSlimmerRegistry.MapToComponentField()
206
254
  ], VegaRichTextEditorRenderer.prototype, "disabled", void 0);
207
- __decorate$H([
255
+ __decorate$I([
208
256
  globalSlimmerRegistry.MapToComponentField()
209
257
  ], VegaRichTextEditorRenderer.prototype, "rows", void 0);
210
- __decorate$H([
258
+ __decorate$I([
211
259
  globalSlimmerRegistry.MapToComponentField()
212
260
  ], VegaRichTextEditorRenderer.prototype, "placeholder", void 0);
213
- __decorate$H([
261
+ __decorate$I([
214
262
  globalSlimmerRegistry.MapToComponentField()
215
263
  ], VegaRichTextEditorRenderer.prototype, "value", void 0);
216
- __decorate$H([
264
+ __decorate$I([
217
265
  globalSlimmerRegistry.MapToComponentField()
218
266
  ], VegaRichTextEditorRenderer.prototype, "sourceView", void 0);
219
- __decorate$H([
267
+ __decorate$I([
220
268
  globalSlimmerRegistry.MapToComponentField()
221
269
  ], VegaRichTextEditorRenderer.prototype, "toolbarItems", void 0);
222
- __decorate$H([
270
+ __decorate$I([
223
271
  globalSlimmerRegistry.MapToComponentField()
224
272
  ], VegaRichTextEditorRenderer.prototype, "sourceEditConfig", void 0);
225
- __decorate$H([
273
+ __decorate$I([
226
274
  globalSlimmerRegistry.MapToComponentField()
227
275
  ], VegaRichTextEditorRenderer.prototype, "allowSourceEdit", void 0);
228
- __decorate$H([
276
+ __decorate$I([
229
277
  globalSlimmerRegistry.MapToComponentField()
230
278
  ], VegaRichTextEditorRenderer.prototype, "extensions", void 0);
231
- __decorate$H([
279
+ __decorate$I([
280
+ globalSlimmerRegistry.MapToComponentField()
281
+ ], VegaRichTextEditorRenderer.prototype, "wordCountController", void 0);
282
+ __decorate$I([
232
283
  globalSlimmerRegistry.MapToComponentField()
233
284
  ], VegaRichTextEditorRenderer.prototype, "richTextEditorSourceViewRenderer", void 0);
234
- __decorate$H([
285
+ __decorate$I([
235
286
  globalSlimmerRegistry.MapToComponentMethod('componentDidRender')
236
287
  ], VegaRichTextEditorRenderer.prototype, "componentDidRender", null);
237
288
 
238
- var __decorate$G = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
289
+ var __decorate$H = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
239
290
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
240
291
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
241
292
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -287,14 +338,17 @@ class ToolbarRenderer extends globalSlimmerRegistry.VegaSlimmer {
287
338
  const [renderedItems, totalVisibleCount] = this.renderToolbarItems();
288
339
  return (index.h("vega-flex", { gap: "size-8", alignItems: "center", flexWrap: "wrap" },
289
340
  this.allowSourceEdit && (index.h(index.Fragment, null,
290
- index.h("div", { class: "toolbar-btn-group" }, this.sourceEditToolbarButtonSlimmer.render()),
341
+ index.h("div", { class: "toolbar-btn-group", role: "presentation" }, this.sourceEditToolbarButtonSlimmer.render()),
291
342
  this.uniqueToolbarItems.length > 0 &&
292
343
  totalVisibleCount > 0 &&
293
344
  this.renderVegaDivider())),
294
345
  renderedItems));
295
346
  }
296
347
  renderVegaDivider() {
297
- return (index.h("vega-box", { height: "size-32" },
348
+ // Mark the divider as decorative so screen readers (e.g. VoiceOver
349
+ // on Firefox) skip it when navigating from the Edit Source button
350
+ // to the next toolbar item.
351
+ return (index.h("vega-box", { height: "size-32", "aria-hidden": "true", role: "presentation" },
298
352
  index.h("vega-divider", { direction: "vertical" })));
299
353
  }
300
354
  /**
@@ -333,81 +387,81 @@ class ToolbarRenderer extends globalSlimmerRegistry.VegaSlimmer {
333
387
  return null;
334
388
  })
335
389
  .filter(typeGuard.isNonNullable);
336
- return (index.h("div", { class: { 'toolbar-btn-group': true, 'vega-hidden': visibleCountPerGroup < 1 } }, groupElement));
390
+ return (index.h("div", { class: { 'toolbar-btn-group': true, 'vega-hidden': visibleCountPerGroup < 1 }, role: "presentation" }, groupElement));
337
391
  });
338
392
  return [renderedItems, totalVisibleCount];
339
393
  }
340
394
  }
341
- __decorate$G([
395
+ __decorate$H([
342
396
  globalSlimmerRegistry.MapToComponentField()
343
397
  ], ToolbarRenderer.prototype, "uniqueToolbarItems", void 0);
344
- __decorate$G([
398
+ __decorate$H([
345
399
  globalSlimmerRegistry.MapToComponentField()
346
400
  ], ToolbarRenderer.prototype, "allowSourceEdit", void 0);
347
- __decorate$G([
401
+ __decorate$H([
348
402
  globalSlimmerRegistry.MapToComponentField()
349
403
  ], ToolbarRenderer.prototype, "host", void 0);
350
- __decorate$G([
404
+ __decorate$H([
351
405
  globalSlimmerRegistry.MapToComponentField()
352
406
  ], ToolbarRenderer.prototype, "clearStyleToolbarButtonSlimmer", void 0);
353
- __decorate$G([
407
+ __decorate$H([
354
408
  globalSlimmerRegistry.MapToComponentField()
355
409
  ], ToolbarRenderer.prototype, "boldToolbarButtonSlimmer", void 0);
356
- __decorate$G([
410
+ __decorate$H([
357
411
  globalSlimmerRegistry.MapToComponentField()
358
412
  ], ToolbarRenderer.prototype, "textStylesToolbarButtonSlimmer", void 0);
359
- __decorate$G([
413
+ __decorate$H([
360
414
  globalSlimmerRegistry.MapToComponentField()
361
415
  ], ToolbarRenderer.prototype, "italicToolbarButtonSlimmer", void 0);
362
- __decorate$G([
416
+ __decorate$H([
363
417
  globalSlimmerRegistry.MapToComponentField()
364
418
  ], ToolbarRenderer.prototype, "underlineToolbarButtonSlimmer", void 0);
365
- __decorate$G([
419
+ __decorate$H([
366
420
  globalSlimmerRegistry.MapToComponentField()
367
421
  ], ToolbarRenderer.prototype, "textColorToolbarButtonSlimmer", void 0);
368
- __decorate$G([
422
+ __decorate$H([
369
423
  globalSlimmerRegistry.MapToComponentField()
370
424
  ], ToolbarRenderer.prototype, "bulletsNumbersToolbarButtonSlimmer", void 0);
371
- __decorate$G([
425
+ __decorate$H([
372
426
  globalSlimmerRegistry.MapToComponentField()
373
427
  ], ToolbarRenderer.prototype, "horizontalAlignmentToolbarButtonSlimmer", void 0);
374
- __decorate$G([
428
+ __decorate$H([
375
429
  globalSlimmerRegistry.MapToComponentField()
376
430
  ], ToolbarRenderer.prototype, "strikethroughToolbarButtonSlimmer", void 0);
377
- __decorate$G([
431
+ __decorate$H([
378
432
  globalSlimmerRegistry.MapToComponentField()
379
433
  ], ToolbarRenderer.prototype, "imageToolbarButtonSlimmer", void 0);
380
- __decorate$G([
434
+ __decorate$H([
381
435
  globalSlimmerRegistry.MapToComponentField()
382
436
  ], ToolbarRenderer.prototype, "moreIndentToolbarButtonSlimmer", void 0);
383
- __decorate$G([
437
+ __decorate$H([
384
438
  globalSlimmerRegistry.MapToComponentField()
385
439
  ], ToolbarRenderer.prototype, "lessIndentToolbarButtonSlimmer", void 0);
386
- __decorate$G([
440
+ __decorate$H([
387
441
  globalSlimmerRegistry.MapToComponentField()
388
442
  ], ToolbarRenderer.prototype, "codeToolbarButtonSlimmer", void 0);
389
- __decorate$G([
443
+ __decorate$H([
390
444
  globalSlimmerRegistry.MapToComponentField()
391
445
  ], ToolbarRenderer.prototype, "linkToolbarButtonSlimmer", void 0);
392
- __decorate$G([
446
+ __decorate$H([
393
447
  globalSlimmerRegistry.MapToComponentField()
394
448
  ], ToolbarRenderer.prototype, "codeBlockToolbarButtonSlimmer", void 0);
395
- __decorate$G([
449
+ __decorate$H([
396
450
  globalSlimmerRegistry.MapToComponentField()
397
451
  ], ToolbarRenderer.prototype, "undoToolbarButtonSlimmer", void 0);
398
- __decorate$G([
452
+ __decorate$H([
399
453
  globalSlimmerRegistry.MapToComponentField()
400
454
  ], ToolbarRenderer.prototype, "redoToolbarButtonSlimmer", void 0);
401
- __decorate$G([
455
+ __decorate$H([
402
456
  globalSlimmerRegistry.MapToComponentField()
403
457
  ], ToolbarRenderer.prototype, "sourceEditToolbarButtonSlimmer", void 0);
404
- __decorate$G([
458
+ __decorate$H([
405
459
  globalSlimmerRegistry.MapToComponentField()
406
460
  ], ToolbarRenderer.prototype, "selectionController", void 0);
407
- __decorate$G([
461
+ __decorate$H([
408
462
  globalSlimmerRegistry.MapToComponentField()
409
463
  ], ToolbarRenderer.prototype, "translationSlimmer", void 0);
410
- __decorate$G([
464
+ __decorate$H([
411
465
  globalSlimmerRegistry.MapToComponentField()
412
466
  ], ToolbarRenderer.prototype, "sourceView", void 0);
413
467
 
@@ -415,7 +469,7 @@ const bold = {
415
469
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M0 64C0 46.3 14.3 32 32 32H80 96 224c70.7 0 128 57.3 128 128c0 31.3-11.3 60.1-30 82.3c37.1 22.4 62 63.1 62 109.7c0 70.7-57.3 128-128 128H96 80 32c-17.7 0-32-14.3-32-32s14.3-32 32-32H48V256 96H32C14.3 96 0 81.7 0 64zM224 224c35.3 0 64-28.7 64-64s-28.7-64-64-64H112V224H224zM112 288V416H256c35.3 0 64-28.7 64-64s-28.7-64-64-64H224 112z"/></svg>`,
416
470
  };
417
471
 
418
- var __decorate$F = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
472
+ var __decorate$G = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
419
473
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
420
474
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
421
475
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -457,7 +511,7 @@ class BoldToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarBu
457
511
  (() => {
458
512
  internalIconManager.VegaInternalIconManager.register({ bold });
459
513
  })();
460
- __decorate$F([
514
+ __decorate$G([
461
515
  globalSlimmerRegistry.MapToComponentField()
462
516
  ], BoldToolbarButtonSlimmer.prototype, "selectionController", void 0);
463
517
 
@@ -465,7 +519,7 @@ const italic = {
465
519
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M128 64c0-17.7 14.3-32 32-32H352c17.7 0 32 14.3 32 32s-14.3 32-32 32H293.3L160 416h64c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H90.7L224 96H160c-17.7 0-32-14.3-32-32z"/></svg>`,
466
520
  };
467
521
 
468
- var __decorate$E = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
522
+ var __decorate$F = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
469
523
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
470
524
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
471
525
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -505,7 +559,7 @@ class ItalicToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbar
505
559
  (() => {
506
560
  internalIconManager.VegaInternalIconManager.register({ italic });
507
561
  })();
508
- __decorate$E([
562
+ __decorate$F([
509
563
  globalSlimmerRegistry.MapToComponentField()
510
564
  ], ItalicToolbarButtonSlimmer.prototype, "selectionController", void 0);
511
565
 
@@ -513,7 +567,7 @@ const underline = {
513
567
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M16 64c0-17.7 14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H128V224c0 53 43 96 96 96s96-43 96-96V96H304c-17.7 0-32-14.3-32-32s14.3-32 32-32h96c17.7 0 32 14.3 32 32s-14.3 32-32 32H384V224c0 88.4-71.6 160-160 160s-160-71.6-160-160V96H48C30.3 96 16 81.7 16 64zM0 448c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32z"/></svg>`,
514
568
  };
515
569
 
516
- var __decorate$D = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
570
+ var __decorate$E = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
517
571
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
518
572
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
519
573
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -556,7 +610,7 @@ class UnderlineToolbarButtonSlimmer extends imageAnnotationAction.VisualModeTool
556
610
  (() => {
557
611
  internalIconManager.VegaInternalIconManager.register({ underline });
558
612
  })();
559
- __decorate$D([
613
+ __decorate$E([
560
614
  globalSlimmerRegistry.MapToComponentField()
561
615
  ], UnderlineToolbarButtonSlimmer.prototype, "selectionController", void 0);
562
616
 
@@ -564,7 +618,7 @@ const textSize = {
564
618
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M64 128V96h96l0 320H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H256c17.7 0 32-14.3 32-32s-14.3-32-32-32H224l0-320h96v32c0 17.7 14.3 32 32 32s32-14.3 32-32V80c0-26.5-21.5-48-48-48H192 48C21.5 32 0 53.5 0 80v48c0 17.7 14.3 32 32 32s32-14.3 32-32zM384 304V288h64l0 128H432c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H512l0-128h64v16c0 17.7 14.3 32 32 32s32-14.3 32-32V272c0-26.5-21.5-48-48-48H368c-26.5 0-48 21.5-48 48v32c0 17.7 14.3 32 32 32s32-14.3 32-32z"/></svg>`,
565
619
  };
566
620
 
567
- var __decorate$C = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
621
+ var __decorate$D = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
568
622
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
569
623
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
570
624
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -601,7 +655,7 @@ class TextStylesToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToo
601
655
  };
602
656
  }
603
657
  renderBtnWrapper(renderBtn) {
604
- return (index.h("vega-dropdown", { selectType: "single", trigger: "click", alignment: "center", isScreenPosition: true, selectedSourceKey: this.getSelectedSourceKey(), ref: (ref) => {
658
+ return (index.h("vega-dropdown", { selectType: "single", trigger: "click", alignment: "center", isScreenPosition: true, role: "presentation", selectedSourceKey: this.getSelectedSourceKey(), ref: (ref) => {
605
659
  this.addDropdownObserver(ref);
606
660
  } },
607
661
  renderBtn({ showArrowIcon: true }),
@@ -692,13 +746,13 @@ TextStylesToolbarButtonSlimmer.allItems = [
692
746
  label: 'Paragraph',
693
747
  },
694
748
  ];
695
- __decorate$C([
749
+ __decorate$D([
696
750
  globalSlimmerRegistry.MapToComponentField()
697
751
  ], TextStylesToolbarButtonSlimmer.prototype, "selectionController", void 0);
698
- __decorate$C([
752
+ __decorate$D([
699
753
  globalSlimmerRegistry.MapToComponentField()
700
754
  ], TextStylesToolbarButtonSlimmer.prototype, "focusController", void 0);
701
- __decorate$C([
755
+ __decorate$D([
702
756
  globalSlimmerRegistry.MapToComponentField()
703
757
  ], TextStylesToolbarButtonSlimmer.prototype, "textStyleItems", void 0);
704
758
 
@@ -706,7 +760,7 @@ const TextSlash = {
706
760
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L355.7 253.5 400.2 96H503L497 120.2c-4.3 17.1 6.1 34.5 23.3 38.8s34.5-6.1 38.8-23.3l11-44.1C577.6 61.3 554.7 32 523.5 32H376.1h-.3H204.5c-22 0-41.2 15-46.6 36.4l-6.3 25.2L38.8 5.1zm168 131.7c.1-.3 .2-.7 .3-1L217 96H333.7L301.3 210.8l-94.5-74.1zM243.3 416H192c-17.7 0-32 14.3-32 32s14.3 32 32 32H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H309.8l17.6-62.1L272.9 311 243.3 416z"/></svg>`,
707
761
  };
708
762
 
709
- var __decorate$B = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
763
+ var __decorate$C = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
710
764
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
711
765
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
712
766
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -743,7 +797,7 @@ class ClearStyleToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToo
743
797
  'text-slash': TextSlash,
744
798
  });
745
799
  })();
746
- __decorate$B([
800
+ __decorate$C([
747
801
  globalSlimmerRegistry.MapToComponentField()
748
802
  ], ClearStyleToolbarButtonSlimmer.prototype, "selectionController", void 0);
749
803
 
@@ -751,7 +805,7 @@ const codeSimple = {
751
805
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M214.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 214.6 118.6zm146.7 0L498.7 256 361.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3z"/></svg>`,
752
806
  };
753
807
 
754
- var __decorate$A = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
808
+ var __decorate$B = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
755
809
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
756
810
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
757
811
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -789,7 +843,7 @@ class CodeToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarBu
789
843
  (() => {
790
844
  internalIconManager.VegaInternalIconManager.register({ 'code-simple': codeSimple });
791
845
  })();
792
- __decorate$A([
846
+ __decorate$B([
793
847
  globalSlimmerRegistry.MapToComponentField()
794
848
  ], CodeToolbarButtonSlimmer.prototype, "selectionController", void 0);
795
849
 
@@ -797,7 +851,7 @@ const strikethrough = {
797
851
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Free 6.1.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free (Icons: CC BY 4.0, Fonts: SIL OFL 1.1, Code: MIT License) Copyright 2022 Fonticons, Inc. --><path fill="currentColor" d="M332.2 319.9c17.22 12.17 22.33 26.51 18.61 48.21c-3.031 17.59-10.88 29.34-24.72 36.99c-35.44 19.75-108.5 11.96-186-19.68c-16.34-6.686-35.03 1.156-41.72 17.53s1.188 35.05 17.53 41.71c31.75 12.93 95.69 35.37 157.6 35.37c29.62 0 58.81-5.156 83.72-18.96c30.81-17.09 50.44-45.46 56.72-82.11c3.998-23.27 2.168-42.58-3.488-59.05H332.2zM488 239.9l-176.5-.0309c-15.85-5.613-31.83-10.34-46.7-14.62c-85.47-24.62-110.9-39.05-103.7-81.33c2.5-14.53 10.16-25.96 22.72-34.03c20.47-13.15 64.06-23.84 155.4 .3438c17.09 4.531 34.59-5.654 39.13-22.74c4.531-17.09-5.656-34.59-22.75-39.12c-91.31-24.18-160.7-21.62-206.3 7.654C121.8 73.72 103.6 101.1 98.09 133.1C89.26 184.5 107.9 217.3 137.2 239.9L24 239.9c-13.25 0-24 10.75-24 23.1c0 13.25 10.75 23.1 24 23.1h464c13.25 0 24-10.75 24-23.1C512 250.7 501.3 239.9 488 239.9z"/></svg>`,
798
852
  };
799
853
 
800
- var __decorate$z = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
854
+ var __decorate$A = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
801
855
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
802
856
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
803
857
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -840,7 +894,7 @@ class StrikethroughToolbarButtonSlimmer extends imageAnnotationAction.VisualMode
840
894
  (() => {
841
895
  internalIconManager.VegaInternalIconManager.register({ strikethrough });
842
896
  })();
843
- __decorate$z([
897
+ __decorate$A([
844
898
  globalSlimmerRegistry.MapToComponentField()
845
899
  ], StrikethroughToolbarButtonSlimmer.prototype, "selectionController", void 0);
846
900
 
@@ -848,12 +902,16 @@ const link = {
848
902
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M562.8 267.7c56.5-56.5 56.5-148 0-204.5c-50-50-128.8-56.5-186.3-15.4l-1.6 1.1c-14.4 10.3-17.7 30.3-7.4 44.6s30.3 17.7 44.6 7.4l1.6-1.1c32.1-22.9 76-19.3 103.8 8.6c31.5 31.5 31.5 82.5 0 114L405.3 334.8c-31.5 31.5-82.5 31.5-114 0c-27.9-27.9-31.5-71.8-8.6-103.8l1.1-1.6c10.3-14.4 6.9-34.4-7.4-44.6s-34.4-6.9-44.6 7.4l-1.1 1.6C189.5 251.2 196 330 246 380c56.5 56.5 148 56.5 204.5 0L562.8 267.7zM43.2 244.3c-56.5 56.5-56.5 148 0 204.5c50 50 128.8 56.5 186.3 15.4l1.6-1.1c14.4-10.3 17.7-30.3 7.4-44.6s-30.3-17.7-44.6-7.4l-1.6 1.1c-32.1 22.9-76 19.3-103.8-8.6C57 372 57 321 88.5 289.5L200.7 177.2c31.5-31.5 82.5-31.5 114 0c27.9 27.9 31.5 71.8 8.6 103.9l-1.1 1.6c-10.3 14.4-6.9 34.4 7.4 44.6s34.4 6.9 44.6-7.4l1.1-1.6C416.5 260.8 410 182 360 132c-56.5-56.5-148-56.5-204.5 0L43.2 244.3z"/></svg>`,
849
903
  };
850
904
 
851
- var __decorate$y = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
905
+ var __decorate$z = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
852
906
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
853
907
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
854
908
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
855
909
  return c > 3 && r && Object.defineProperty(target, key, r), r;
856
910
  };
911
+ // One rAF is ~16 ms; 50 ms gives roughly two frames of buffer for the popover's
912
+ // internal focus trap to settle (and for screen readers such as VoiceOver to
913
+ // observe focus on <body>) before we restore focus to the trigger button.
914
+ const FOCUS_RESTORE_DELAY_MS = 50;
857
915
  class LinkToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarButtonSlimmer {
858
916
  constructor() {
859
917
  super({
@@ -861,7 +919,21 @@ class LinkToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarBu
861
919
  tooltip: {
862
920
  text: 'Link',
863
921
  },
922
+ ariaLabel: 'Insert Link',
864
923
  });
924
+ // Restoring focus to the link button on Escape: the popover lives in
925
+ // vega-rich-text-link-editor's shadow root and is portalled to <body>, so
926
+ // the popover's built-in focus trap can't put focus back on our trigger.
927
+ // We track an Escape press during the popover lifetime and restore focus
928
+ // on hide; submit / outside-click flows leave the flag false. Stale
929
+ // Escape presses (pressed while the popover was closed) are cleared by
930
+ // `handleWrapperClickCapture` on the next open.
931
+ this.escapePressedDuringPopover = false;
932
+ // Tracks whether the document-level keydown listener has been registered
933
+ // so it can be removed in disconnectedCallback. Without removal, document
934
+ // keeps a strong reference to this slimmer instance after the rich-text
935
+ // editor is destroyed, leaking memory.
936
+ this.documentKeydownRegistered = false;
865
937
  this.handleLinkEditorChange = ({ detail, }) => {
866
938
  switch (detail.action) {
867
939
  case 'link': {
@@ -886,9 +958,97 @@ class LinkToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarBu
886
958
  }
887
959
  }
888
960
  };
961
+ this.handleWrapperClickCapture = () => {
962
+ // Reset the Escape flag for each new open; only an Escape during this
963
+ // popover's lifetime should trigger focus restoration. Activating the
964
+ // trigger via keyboard (Enter / Space on the inner native <button>) also
965
+ // dispatches a synthetic click in the capture phase, so this handler
966
+ // runs in both pointer and keyboard activation paths. Also clears any
967
+ // stale Escape press recorded while the popover was closed. The
968
+ // `vegaPopoverShow` listener provides the same guarantee for
969
+ // programmatic-open paths that don't go through a wrapper click.
970
+ this.escapePressedDuringPopover = false;
971
+ };
972
+ this.handlePopoverShow = () => {
973
+ // Belt-and-suspenders reset for programmatic opens (e.g. an external
974
+ // caller invoking `linkEditorRef.show()`): without this, an Escape press
975
+ // recorded while the popover was previously closed could survive into
976
+ // the new open and trigger a spurious focus restore on the next hide.
977
+ this.escapePressedDuringPopover = false;
978
+ };
979
+ this.handleDocumentKeydown = (event) => {
980
+ // We cannot guard on a local `isPopoverOpen` flag here: vega-popover's
981
+ // own KeyboardManager registers its capture-phase keydown listener on
982
+ // document before this slimmer's listener, so it runs first, calls
983
+ // hidePopover(), and synchronously fires `vegaPopoverHide` — which
984
+ // would flip our flag to closed before this handler ever observes the
985
+ // Escape key. Instead, always record the Escape press; stale presses
986
+ // (made while the popover was closed) are cleared by
987
+ // `handleWrapperClickCapture` on the next open.
988
+ // Use `event.code` for consistency with vega-modal's Escape handling
989
+ // (vega-modal-open-state-controller.ts).
990
+ if (event.code === 'Escape') {
991
+ this.escapePressedDuringPopover = true;
992
+ }
993
+ };
994
+ this.handlePopoverHide = () => {
995
+ // vegaPopoverHide fires synchronously from the popover's own Escape
996
+ // handler — before our document-capture keydown observes the key, and
997
+ // before the popover's internal focus trap settles focus on <body>.
998
+ // Defer the decision/restore past that internal restore.
999
+ // eslint-disable-next-line no-restricted-globals
1000
+ setTimeout(() => {
1001
+ var _a, _b, _c, _d;
1002
+ const shouldRestore = this.escapePressedDuringPopover;
1003
+ this.escapePressedDuringPopover = false;
1004
+ if (shouldRestore) {
1005
+ // The toolbar button uses shadow DOM without delegatesFocus,
1006
+ // so focusing the host is a no-op — focus the inner <button>.
1007
+ // The toolbar button may have been removed from the DOM during
1008
+ // the timeout window (e.g. editor destroyed), so guard each step.
1009
+ /* istanbul ignore next */
1010
+ (_d = (_c = (_b = (_a = this.linkBtnWrapperRef) === null || _a === void 0 ? void 0 : _a.querySelector('vega-rich-text-editor-toolbar-button')) === null || _b === void 0 ? void 0 : _b.shadowRoot) === null || _c === void 0 ? void 0 : _c.querySelector('button')) === null || _d === void 0 ? void 0 : _d.focus();
1011
+ }
1012
+ }, FOCUS_RESTORE_DELAY_MS);
1013
+ };
1014
+ }
1015
+ /**
1016
+ * Component lifecycle - [disconnectedCallback]
1017
+ *
1018
+ * Removes the document-level Escape listener registered in the wrapper
1019
+ * ref callback so the slimmer instance is not retained by document after
1020
+ * the rich-text editor is destroyed.
1021
+ */
1022
+ disconnectedCallback() {
1023
+ if (this.documentKeydownRegistered) {
1024
+ // eslint-disable-next-line no-restricted-globals
1025
+ document.removeEventListener('keydown', this.handleDocumentKeydown, { capture: true });
1026
+ this.documentKeydownRegistered = false;
1027
+ }
1028
+ this.linkBtnWrapperRef = undefined;
889
1029
  }
890
1030
  renderBtnWrapper(renderBtn) {
891
- return (index.h("div", { class: "toolbar-btn-link-wrapper", ref: (ref) => (this.linkBtnWrapperRef = ref) },
1031
+ return (index.h("div", { class: "toolbar-btn-link-wrapper", role: "presentation", ref: (ref) => {
1032
+ if (ref && ref !== this.linkBtnWrapperRef) {
1033
+ this.linkBtnWrapperRef = ref;
1034
+ ref.addEventListener('click', this.handleWrapperClickCapture, { capture: true });
1035
+ // `vegaPopoverShow` clears any stale Escape recorded while the
1036
+ // popover was closed, covering programmatic-open paths
1037
+ // (e.g. linkEditorRef.show()) where no wrapper click fires.
1038
+ ref.addEventListener('vegaPopoverShow', this.handlePopoverShow);
1039
+ ref.addEventListener('vegaPopoverHide', this.handlePopoverHide);
1040
+ // Esc inside the portalled popover doesn't bubble to the wrapper,
1041
+ // so observe it on document capture. Tracked so it can be removed
1042
+ // in disconnectedCallback to avoid leaking this slimmer instance.
1043
+ if (!this.documentKeydownRegistered) {
1044
+ // eslint-disable-next-line no-restricted-globals
1045
+ document.addEventListener('keydown', this.handleDocumentKeydown, {
1046
+ capture: true,
1047
+ });
1048
+ this.documentKeydownRegistered = true;
1049
+ }
1050
+ }
1051
+ } },
892
1052
  renderBtn(),
893
1053
  index.h("vega-rich-text-link-editor", { resetStatusAfterHide: false, status: "linkEdit", ref: (ref) => {
894
1054
  if (ref) {
@@ -937,15 +1097,18 @@ class LinkToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarBu
937
1097
  (() => {
938
1098
  internalIconManager.VegaInternalIconManager.register({ link: link });
939
1099
  })();
940
- __decorate$y([
1100
+ __decorate$z([
941
1101
  globalSlimmerRegistry.MapToComponentField()
942
1102
  ], LinkToolbarButtonSlimmer.prototype, "selectionController", void 0);
1103
+ __decorate$z([
1104
+ globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
1105
+ ], LinkToolbarButtonSlimmer.prototype, "disconnectedCallback", null);
943
1106
 
944
1107
  const indent = {
945
1108
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M0 64C0 46.3 14.3 32 32 32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32C14.3 96 0 81.7 0 64zM192 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32zm32 96H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H224c-17.7 0-32-14.3-32-32s14.3-32 32-32zM0 448c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM127.8 268.6L25.8 347.9C15.3 356.1 0 348.6 0 335.3V176.7c0-13.3 15.3-20.8 25.8-12.6l101.9 79.3c8.2 6.4 8.2 18.9 0 25.3z"/></svg>`,
946
1109
  };
947
1110
 
948
- var __decorate$x = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1111
+ var __decorate$y = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
949
1112
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
950
1113
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
951
1114
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -979,7 +1142,7 @@ class MoreIndentToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToo
979
1142
  (() => {
980
1143
  internalIconManager.VegaInternalIconManager.register({ indent: indent });
981
1144
  })();
982
- __decorate$x([
1145
+ __decorate$y([
983
1146
  globalSlimmerRegistry.MapToComponentField()
984
1147
  ], MoreIndentToolbarButtonSlimmer.prototype, "selectionController", void 0);
985
1148
 
@@ -987,7 +1150,7 @@ const outdent = {
987
1150
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M6 64C6 46.3 20.3 32 38 32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H38C20.3 96 6 81.7 6 64zM198 192c0-17.7 14.3-32 32-32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H230c-17.7 0-32-14.3-32-32zm32 96H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H230c-17.7 0-32-14.3-32-32s14.3-32 32-32zM6 448c0-17.7 14.3-32 32-32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H38c-17.7 0-32-14.3-32-32zm.2-179.4c-8.2-6.4-8.2-18.9 0-25.3l101.9-79.3c10.5-8.2 25.8-.7 25.8 12.6V335.3c0 13.3-15.3 20.8-25.8 12.6L6.2 268.6z"/></svg>`,
988
1151
  };
989
1152
 
990
- var __decorate$w = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1153
+ var __decorate$x = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
991
1154
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
992
1155
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
993
1156
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -1022,7 +1185,7 @@ class LessIndentToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToo
1022
1185
  (() => {
1023
1186
  internalIconManager.VegaInternalIconManager.register({ outdent: outdent });
1024
1187
  })();
1025
- __decorate$w([
1188
+ __decorate$x([
1026
1189
  globalSlimmerRegistry.MapToComponentField()
1027
1190
  ], LessIndentToolbarButtonSlimmer.prototype, "selectionController", void 0);
1028
1191
 
@@ -1043,7 +1206,7 @@ class ImageUpdateUrlAction extends codeBlock.ModifyContentAction {
1043
1206
  }
1044
1207
  }
1045
1208
 
1046
- var __decorate$v = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1209
+ var __decorate$w = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1047
1210
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1048
1211
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1049
1212
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -1055,6 +1218,7 @@ class ImageToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarB
1055
1218
  icon: 'image',
1056
1219
  tooltip: { text: 'Image' },
1057
1220
  autoFocusOnClick: false,
1221
+ ariaLabel: 'Insert Image',
1058
1222
  });
1059
1223
  this.insertURLImage = async () => {
1060
1224
  const url = this.normalizeSafeImageUrl(this.insertURLInputRef.value);
@@ -1109,8 +1273,8 @@ class ImageToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarB
1109
1273
  if (!shouldRenderUpload && !shouldRenderUrlInsertion) {
1110
1274
  return null;
1111
1275
  }
1112
- return (index.h("vega-box", null,
1113
- shouldRenderDropdown ? (index.h("vega-dropdown", { selectType: "none", trigger: "click", alignment: "center", isScreenPosition: true, ref: (ref) => {
1276
+ return (index.h("vega-box", { role: "presentation" },
1277
+ shouldRenderDropdown ? (index.h("vega-dropdown", { selectType: "none", trigger: "click", alignment: "center", isScreenPosition: true, role: "presentation", ref: (ref) => {
1114
1278
  this.dropdownRef = ref;
1115
1279
  this.addDropdownObserver(ref);
1116
1280
  } },
@@ -1242,16 +1406,16 @@ ImageToolbarButtonSlimmer.allItems = [
1242
1406
  label: 'Insert via URL',
1243
1407
  },
1244
1408
  ];
1245
- __decorate$v([
1409
+ __decorate$w([
1246
1410
  globalSlimmerRegistry.MapToComponentField()
1247
1411
  ], ImageToolbarButtonSlimmer.prototype, "host", void 0);
1248
- __decorate$v([
1412
+ __decorate$w([
1249
1413
  globalSlimmerRegistry.MapToComponentField()
1250
1414
  ], ImageToolbarButtonSlimmer.prototype, "insertImageController", void 0);
1251
- __decorate$v([
1415
+ __decorate$w([
1252
1416
  globalSlimmerRegistry.MapToComponentField()
1253
1417
  ], ImageToolbarButtonSlimmer.prototype, "imageInsertedEventEmitter", void 0);
1254
- __decorate$v([
1418
+ __decorate$w([
1255
1419
  globalSlimmerRegistry.MapToComponentField()
1256
1420
  ], ImageToolbarButtonSlimmer.prototype, "selectionController", void 0);
1257
1421
 
@@ -1561,7 +1725,7 @@ class ListShiftTabOutdentHandler extends AbstractListKeyboardHandler {
1561
1725
  }
1562
1726
  }
1563
1727
 
1564
- var __decorate$u = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1728
+ var __decorate$v = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1565
1729
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1566
1730
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1567
1731
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -1713,28 +1877,28 @@ class ListKeyboardSlimmer extends globalSlimmerRegistry.VegaSlimmer {
1713
1877
  this.selectionController.enqueueSelectionRangeFutureState(firstNode, Math.min(startOffset, firstNode.getRangeEndOffset()), lastNode, Math.min(endOffset, lastNode.getRangeEndOffset()), true);
1714
1878
  }
1715
1879
  }
1716
- __decorate$u([
1880
+ __decorate$v([
1717
1881
  globalSlimmerRegistry.MapToComponentField()
1718
1882
  ], ListKeyboardSlimmer.prototype, "selectionController", void 0);
1719
- __decorate$u([
1883
+ __decorate$v([
1720
1884
  globalSlimmerRegistry.MapToComponentField()
1721
1885
  ], ListKeyboardSlimmer.prototype, "valueController", void 0);
1722
- __decorate$u([
1886
+ __decorate$v([
1723
1887
  globalSlimmerRegistry.MapToComponentField()
1724
1888
  ], ListKeyboardSlimmer.prototype, "value", void 0);
1725
- __decorate$u([
1889
+ __decorate$v([
1726
1890
  globalSlimmerRegistry.MapToComponentField()
1727
1891
  ], ListKeyboardSlimmer.prototype, "toolbarItems", void 0);
1728
- __decorate$u([
1892
+ __decorate$v([
1729
1893
  globalSlimmerRegistry.MapToComponentField()
1730
1894
  ], ListKeyboardSlimmer.prototype, "vegaRichTextEditorRenderer", void 0);
1731
- __decorate$u([
1895
+ __decorate$v([
1732
1896
  globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
1733
1897
  ], ListKeyboardSlimmer.prototype, "disconnectedCallback", null);
1734
- __decorate$u([
1898
+ __decorate$v([
1735
1899
  globalSlimmerRegistry.MapToComponentMethod('componentDidLoad')
1736
1900
  ], ListKeyboardSlimmer.prototype, "componentDidLoad", null);
1737
- __decorate$u([
1901
+ __decorate$v([
1738
1902
  globalSlimmerRegistry.MapToComponentMethod('watchToolbarItems')
1739
1903
  ], ListKeyboardSlimmer.prototype, "watchToolbarItems", null);
1740
1904
 
@@ -1751,7 +1915,7 @@ class TransformListAction extends codeBlock.ModifyContentAction {
1751
1915
  }
1752
1916
  }
1753
1917
 
1754
- var __decorate$t = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1918
+ var __decorate$u = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1755
1919
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1756
1920
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1757
1921
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -1810,14 +1974,14 @@ class BulletsToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolba
1810
1974
  }
1811
1975
  }
1812
1976
  }
1813
- __decorate$t([
1977
+ __decorate$u([
1814
1978
  globalSlimmerRegistry.MapToComponentField()
1815
1979
  ], BulletsToolbarButtonSlimmer.prototype, "selectionController", void 0);
1816
- __decorate$t([
1980
+ __decorate$u([
1817
1981
  globalSlimmerRegistry.MapToComponentField()
1818
1982
  ], BulletsToolbarButtonSlimmer.prototype, "popoverRef", void 0);
1819
1983
 
1820
- var __decorate$s = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1984
+ var __decorate$t = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1821
1985
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1822
1986
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1823
1987
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -1874,14 +2038,14 @@ class NumbersToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolba
1874
2038
  }
1875
2039
  }
1876
2040
  }
1877
- __decorate$s([
2041
+ __decorate$t([
1878
2042
  globalSlimmerRegistry.MapToComponentField()
1879
2043
  ], NumbersToolbarButtonSlimmer.prototype, "selectionController", void 0);
1880
- __decorate$s([
2044
+ __decorate$t([
1881
2045
  globalSlimmerRegistry.MapToComponentField()
1882
2046
  ], NumbersToolbarButtonSlimmer.prototype, "popoverRef", void 0);
1883
2047
 
1884
- var __decorate$r = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2048
+ var __decorate$s = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1885
2049
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1886
2050
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1887
2051
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -1894,6 +2058,7 @@ class BulletsNumbersToolbarButtonSlimmer extends imageAnnotationAction.VisualMod
1894
2058
  tooltip: {
1895
2059
  text: 'Bullets',
1896
2060
  },
2061
+ ariaLabel: 'Bullets and Numbers',
1897
2062
  });
1898
2063
  this.bulletsToolbarButtonSlimmer = new BulletsToolbarButtonSlimmer();
1899
2064
  this.numbersToolbarButtonSlimmer = new NumbersToolbarButtonSlimmer();
@@ -1912,7 +2077,7 @@ class BulletsNumbersToolbarButtonSlimmer extends imageAnnotationAction.VisualMod
1912
2077
  }
1913
2078
  }
1914
2079
  renderBtnWrapper(renderBtn) {
1915
- return (index.h("vega-popover", { showArrow: false, trigger: "click", placement: "bottom", alignment: "center", isScreenPosition: true, ref: (ref) => (this.popoverRef = ref) },
2080
+ return (index.h("vega-popover", { showArrow: false, trigger: "click", placement: "bottom", alignment: "center", isScreenPosition: true, role: "presentation", ref: (ref) => (this.popoverRef = ref) },
1916
2081
  index.h("div", { slot: "popover-content" }, renderBtn({ showArrowIcon: true })),
1917
2082
  index.h("div", { slot: "popover" }, this.renderContent())));
1918
2083
  }
@@ -1961,41 +2126,41 @@ class BulletsNumbersToolbarButtonSlimmer extends imageAnnotationAction.VisualMod
1961
2126
  'list-ol': ListOL,
1962
2127
  });
1963
2128
  })();
1964
- __decorate$r([
2129
+ __decorate$s([
1965
2130
  globalSlimmerRegistry.MapToComponentField()
1966
2131
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "selectionController", void 0);
1967
- __decorate$r([
2132
+ __decorate$s([
1968
2133
  globalSlimmerRegistry.MapToComponentField()
1969
2134
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "valueController", void 0);
1970
- __decorate$r([
2135
+ __decorate$s([
1971
2136
  globalSlimmerRegistry.MapToComponentField()
1972
2137
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "value", void 0);
1973
- __decorate$r([
2138
+ __decorate$s([
1974
2139
  globalSlimmerRegistry.MapToComponentField()
1975
2140
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "toolbarItems", void 0);
1976
- __decorate$r([
2141
+ __decorate$s([
1977
2142
  globalSlimmerRegistry.MapToComponentField()
1978
2143
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "vegaRichTextEditorRenderer", void 0);
1979
- __decorate$r([
2144
+ __decorate$s([
1980
2145
  globalSlimmerRegistry.InjectVegaSlimmer()
1981
2146
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "bulletsToolbarButtonSlimmer", void 0);
1982
- __decorate$r([
2147
+ __decorate$s([
1983
2148
  globalSlimmerRegistry.InjectVegaSlimmer()
1984
2149
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "numbersToolbarButtonSlimmer", void 0);
1985
- __decorate$r([
2150
+ __decorate$s([
1986
2151
  globalSlimmerRegistry.InjectVegaSlimmer()
1987
2152
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "listKeyboardSlimmer", void 0);
1988
- __decorate$r([
2153
+ __decorate$s([
1989
2154
  globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
1990
2155
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "disconnectedCallback", null);
1991
- __decorate$r([
2156
+ __decorate$s([
1992
2157
  globalSlimmerRegistry.MapToComponentMethod('componentDidLoad')
1993
2158
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "componentDidLoad", null);
1994
- __decorate$r([
2159
+ __decorate$s([
1995
2160
  globalSlimmerRegistry.MapToComponentMethod('componentWillRender')
1996
2161
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "componentWillRender", null);
1997
2162
 
1998
- var __decorate$q = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2163
+ var __decorate$r = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1999
2164
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2000
2165
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2001
2166
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -2030,14 +2195,14 @@ class LeftAlignToolbarButtonSlimmer extends imageAnnotationAction.VisualModeTool
2030
2195
  'align-left': alignLeft.AlignLeft,
2031
2196
  });
2032
2197
  })();
2033
- __decorate$q([
2198
+ __decorate$r([
2034
2199
  globalSlimmerRegistry.MapToComponentField()
2035
2200
  ], LeftAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
2036
- __decorate$q([
2201
+ __decorate$r([
2037
2202
  globalSlimmerRegistry.MapToComponentField()
2038
2203
  ], LeftAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
2039
2204
 
2040
- var __decorate$p = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2205
+ var __decorate$q = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2041
2206
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2042
2207
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2043
2208
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -2072,14 +2237,14 @@ class CenterAlignToolbarButtonSlimmer extends imageAnnotationAction.VisualModeTo
2072
2237
  'align-center': alignLeft.AlignCenter,
2073
2238
  });
2074
2239
  })();
2075
- __decorate$p([
2240
+ __decorate$q([
2076
2241
  globalSlimmerRegistry.MapToComponentField()
2077
2242
  ], CenterAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
2078
- __decorate$p([
2243
+ __decorate$q([
2079
2244
  globalSlimmerRegistry.MapToComponentField()
2080
2245
  ], CenterAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
2081
2246
 
2082
- var __decorate$o = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2247
+ var __decorate$p = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2083
2248
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2084
2249
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2085
2250
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -2114,14 +2279,14 @@ class RightAlignToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToo
2114
2279
  'align-right': alignLeft.AlignRight,
2115
2280
  });
2116
2281
  })();
2117
- __decorate$o([
2282
+ __decorate$p([
2118
2283
  globalSlimmerRegistry.MapToComponentField()
2119
2284
  ], RightAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
2120
- __decorate$o([
2285
+ __decorate$p([
2121
2286
  globalSlimmerRegistry.MapToComponentField()
2122
2287
  ], RightAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
2123
2288
 
2124
- var __decorate$n = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2289
+ var __decorate$o = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2125
2290
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2126
2291
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2127
2292
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -2156,14 +2321,14 @@ class JustifyAlignToolbarButtonSlimmer extends imageAnnotationAction.VisualModeT
2156
2321
  'align-justify': alignLeft.AlignJustify,
2157
2322
  });
2158
2323
  })();
2159
- __decorate$n([
2324
+ __decorate$o([
2160
2325
  globalSlimmerRegistry.MapToComponentField()
2161
2326
  ], JustifyAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
2162
- __decorate$n([
2327
+ __decorate$o([
2163
2328
  globalSlimmerRegistry.MapToComponentField()
2164
2329
  ], JustifyAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
2165
2330
 
2166
- var __decorate$m = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2331
+ var __decorate$n = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2167
2332
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2168
2333
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2169
2334
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -2176,6 +2341,7 @@ class HorizontalAlignmentToolbarButtonSlimmer extends imageAnnotationAction.Visu
2176
2341
  tooltip: {
2177
2342
  text: 'Left Align',
2178
2343
  },
2344
+ ariaLabel: 'Horizontal Alignment',
2179
2345
  });
2180
2346
  this.leftAlignToolbarButtonSlimmer = new LeftAlignToolbarButtonSlimmer();
2181
2347
  this.centerAlignToolbarButtonSlimmer = new CenterAlignToolbarButtonSlimmer();
@@ -2200,7 +2366,7 @@ class HorizontalAlignmentToolbarButtonSlimmer extends imageAnnotationAction.Visu
2200
2366
  }
2201
2367
  }
2202
2368
  renderBtnWrapper(renderBtn) {
2203
- return (index.h("vega-popover", { trigger: "click", showArrow: false, alignment: "center", placement: "bottom", isScreenPosition: true, ref: (ref) => (this.popoverRef = ref) },
2369
+ return (index.h("vega-popover", { trigger: "click", showArrow: false, alignment: "center", placement: "bottom", isScreenPosition: true, role: "presentation", ref: (ref) => (this.popoverRef = ref) },
2204
2370
  index.h("div", { slot: "popover-content" }, renderBtn({ showArrowIcon: true })),
2205
2371
  index.h("div", { slot: "popover" }, this.renderContent())));
2206
2372
  }
@@ -2221,22 +2387,22 @@ class HorizontalAlignmentToolbarButtonSlimmer extends imageAnnotationAction.Visu
2221
2387
  .some((block) => this.shouldDisabledToolbar(block, codeBlock.HorizontalAlignmentAnnotationAction.name)));
2222
2388
  }
2223
2389
  }
2224
- __decorate$m([
2390
+ __decorate$n([
2225
2391
  globalSlimmerRegistry.MapToComponentField()
2226
2392
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "selectionController", void 0);
2227
- __decorate$m([
2393
+ __decorate$n([
2228
2394
  globalSlimmerRegistry.InjectVegaSlimmer()
2229
2395
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "leftAlignToolbarButtonSlimmer", void 0);
2230
- __decorate$m([
2396
+ __decorate$n([
2231
2397
  globalSlimmerRegistry.InjectVegaSlimmer()
2232
2398
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "centerAlignToolbarButtonSlimmer", void 0);
2233
- __decorate$m([
2399
+ __decorate$n([
2234
2400
  globalSlimmerRegistry.InjectVegaSlimmer()
2235
2401
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "rightAlignToolbarButtonSlimmer", void 0);
2236
- __decorate$m([
2402
+ __decorate$n([
2237
2403
  globalSlimmerRegistry.InjectVegaSlimmer()
2238
2404
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "justifiedToolbarButtonSlimmer", void 0);
2239
- __decorate$m([
2405
+ __decorate$n([
2240
2406
  globalSlimmerRegistry.MapToComponentMethod('componentWillRender')
2241
2407
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "componentWillRender", null);
2242
2408
 
@@ -2277,7 +2443,7 @@ class RTEEditorState {
2277
2443
  }
2278
2444
  }
2279
2445
 
2280
- var __decorate$l = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2446
+ var __decorate$m = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2281
2447
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2282
2448
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2283
2449
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -2287,6 +2453,11 @@ var __decorate$l = (undefined && undefined.__decorate) || function (decorators,
2287
2453
  * The value controller is responsible for updating the value of the rich text editor.
2288
2454
  */
2289
2455
  class ValueController extends globalSlimmerRegistry.VegaSlimmer {
2456
+ constructor() {
2457
+ super(...arguments);
2458
+ // Deep clone of the last committed value, kept only while a commit validator is active, used to roll back rejected changes.
2459
+ this.committedSnapshot = null;
2460
+ }
2290
2461
  /**
2291
2462
  * Component lifecycle - [connectedCallback]{@link VegaRichTextEditor.connectedCallback}
2292
2463
  */
@@ -2331,15 +2502,47 @@ class ValueController extends globalSlimmerRegistry.VegaSlimmer {
2331
2502
  });
2332
2503
  }
2333
2504
  this.registerEditorRefAndContent();
2505
+ this.seedCommittedSnapshot();
2506
+ }
2507
+ /**
2508
+ * Seeds the rollback snapshot from the current value while a commit interceptor is active.
2509
+ * Runs on load and on extension changes so runtime re-registration stays protected.
2510
+ */
2511
+ seedCommittedSnapshot() {
2512
+ if (this.wordCountController.hasWordCountHardLimit()) {
2513
+ this.committedSnapshot = this.value ? this.value.clone(true) : null;
2514
+ }
2334
2515
  }
2335
2516
  /**
2336
2517
  * Updates the value of the editor and restore the selection.
2337
2518
  *
2338
2519
  * @param {VegaRTEContent} newValue The new value to set.
2339
2520
  * @param {boolean} recordHistory - Whether to record the change in history.
2340
- */
2341
- async flushChanges(newValue, recordHistory = true) {
2342
- this.value = newValue.clone();
2521
+ * @param {RTEUpdateSource} updateSource - The source of the update, defaulting to 'default'.
2522
+ */
2523
+ async flushChanges(newValue, recordHistory = true, updateSource = codeBlock.RTEUpdateSource.Default) {
2524
+ const previous = this.committedSnapshot;
2525
+ const action = new contentState.CommitValueAction(newValue, previous, this.host);
2526
+ const committed = codeBlock.ActionHandleStrategyRegistry.executeTheStrategy(action, newValue);
2527
+ if (!committed) {
2528
+ if (updateSource === codeBlock.RTEUpdateSource.Composition) {
2529
+ // The composition input characters cannot be deleted, so we force a repaint to restore the content from the model.
2530
+ this.vegaRichTextEditorRenderer.forceContentRepaint();
2531
+ }
2532
+ else {
2533
+ // The commit was vetoed, so restore the placeholder the framework skipped repainting and roll back.
2534
+ this.vegaRichTextEditorRenderer.restoreEmptyTextPlaceholders();
2535
+ }
2536
+ // Deep clone so the rolled-back value never shares nodes with the snapshot, which in-place edits would otherwise corrupt.
2537
+ this.value = (previous !== null && previous !== void 0 ? previous : newValue).clone(true);
2538
+ if (previous) {
2539
+ // Seed the snapshot again so the next commit attempt has a valid rollback point.
2540
+ this.seedCommittedSnapshot();
2541
+ }
2542
+ await waitForComponentDidRender.waitForComponentDidRender(this.host);
2543
+ return;
2544
+ }
2545
+ this.value = committed.clone();
2343
2546
  if (recordHistory) {
2344
2547
  this.historyController.registerHistory(new RTEEditorState(this.value, new componentValueHistoryControllerSlimmer_abstract.RTESelectionState(this.selectionController.getCurrentRange())));
2345
2548
  }
@@ -2363,39 +2566,49 @@ class ValueController extends globalSlimmerRegistry.VegaSlimmer {
2363
2566
  }
2364
2567
  }
2365
2568
  ValueController.VALUE_CHANGE_DEBOUNCE_TIME = 50;
2366
- __decorate$l([
2569
+ __decorate$m([
2367
2570
  globalSlimmerRegistry.MapToComponentField()
2368
2571
  ], ValueController.prototype, "host", void 0);
2369
- __decorate$l([
2572
+ __decorate$m([
2370
2573
  globalSlimmerRegistry.MapToComponentField({ writable: true })
2371
2574
  ], ValueController.prototype, "value", void 0);
2372
- __decorate$l([
2575
+ __decorate$m([
2373
2576
  globalSlimmerRegistry.MapToComponentField()
2374
2577
  ], ValueController.prototype, "changeEventEmitter", void 0);
2375
- __decorate$l([
2578
+ __decorate$m([
2376
2579
  globalSlimmerRegistry.MapToComponentField()
2377
2580
  ], ValueController.prototype, "valueController", void 0);
2378
- __decorate$l([
2581
+ __decorate$m([
2379
2582
  globalSlimmerRegistry.MapToComponentField()
2380
2583
  ], ValueController.prototype, "historyController", void 0);
2381
- __decorate$l([
2584
+ __decorate$m([
2382
2585
  globalSlimmerRegistry.MapToComponentField()
2383
2586
  ], ValueController.prototype, "selectionController", void 0);
2384
- __decorate$l([
2587
+ __decorate$m([
2588
+ globalSlimmerRegistry.MapToComponentField()
2589
+ ], ValueController.prototype, "wordCountController", void 0);
2590
+ __decorate$m([
2591
+ globalSlimmerRegistry.MapToComponentField()
2592
+ ], ValueController.prototype, "vegaRichTextEditorRenderer", void 0);
2593
+ __decorate$m([
2385
2594
  globalSlimmerRegistry.MapToComponentField()
2386
2595
  ], ValueController.prototype, "sourceEditConfig", void 0);
2387
- __decorate$l([
2596
+ __decorate$m([
2388
2597
  globalSlimmerRegistry.MapToComponentMethod('connectedCallback')
2389
2598
  ], ValueController.prototype, "connectedCallback", null);
2390
- __decorate$l([
2599
+ __decorate$m([
2391
2600
  globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
2392
2601
  ], ValueController.prototype, "disconnectedCallback", null);
2393
- __decorate$l([
2602
+ __decorate$m([
2394
2603
  globalSlimmerRegistry.MapToComponentMethod('componentWillLoad')
2395
2604
  ], ValueController.prototype, "componentWillLoad", null);
2396
- __decorate$l([
2605
+ __decorate$m([
2397
2606
  globalSlimmerRegistry.MapToComponentMethod('watchValueUpdate')
2398
2607
  ], ValueController.prototype, "watchValueUpdate", null);
2608
+ __decorate$m([
2609
+ globalSlimmerRegistry.MapToComponentMethod('componentDidLoad'),
2610
+ globalSlimmerRegistry.MapToComponentMethod('watchExtensions')
2611
+ ], ValueController.prototype, "seedCommittedSnapshot", null);
2399
2612
 
2400
2613
  /**
2401
2614
  * The rich text content controller
@@ -3900,7 +4113,7 @@ class KeyboardLinkHandler extends BaseHandler {
3900
4113
  }
3901
4114
  }
3902
4115
 
3903
- var __decorate$k = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4116
+ var __decorate$l = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
3904
4117
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3905
4118
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
3906
4119
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -3941,6 +4154,7 @@ class UserInputController extends globalSlimmerRegistry.VegaSlimmer {
3941
4154
  }
3942
4155
  this.insertCompositionTextController.removeObserver();
3943
4156
  let updateFlag = false;
4157
+ let updateSource = codeBlock.RTEUpdateSource.Default;
3944
4158
  switch (inputType) {
3945
4159
  case 'insertParagraph':
3946
4160
  updateFlag = true;
@@ -3948,6 +4162,10 @@ class UserInputController extends globalSlimmerRegistry.VegaSlimmer {
3948
4162
  break;
3949
4163
  case 'insertText':
3950
4164
  updateFlag = true;
4165
+ updateSource =
4166
+ e[codeBlock.RTE_UPDATE_SOURCE_KEY] === codeBlock.RTEUpdateSource.Composition
4167
+ ? codeBlock.RTEUpdateSource.Composition
4168
+ : codeBlock.RTEUpdateSource.Default;
3951
4169
  this.insertTextHandler.execute(this.value, this.selectionController, this.host, e);
3952
4170
  break;
3953
4171
  case 'insertLineBreak':
@@ -3968,7 +4186,7 @@ class UserInputController extends globalSlimmerRegistry.VegaSlimmer {
3968
4186
  break;
3969
4187
  }
3970
4188
  if (updateFlag) {
3971
- void this.valueController.flushChanges(this.value);
4189
+ void this.valueController.flushChanges(this.value, true, updateSource);
3972
4190
  }
3973
4191
  };
3974
4192
  }
@@ -4044,28 +4262,28 @@ class UserInputController extends globalSlimmerRegistry.VegaSlimmer {
4044
4262
  return false;
4045
4263
  }
4046
4264
  }
4047
- __decorate$k([
4265
+ __decorate$l([
4048
4266
  globalSlimmerRegistry.MapToComponentField()
4049
4267
  ], UserInputController.prototype, "host", void 0);
4050
- __decorate$k([
4268
+ __decorate$l([
4051
4269
  globalSlimmerRegistry.MapToComponentField()
4052
4270
  ], UserInputController.prototype, "value", void 0);
4053
- __decorate$k([
4271
+ __decorate$l([
4054
4272
  globalSlimmerRegistry.MapToComponentField()
4055
4273
  ], UserInputController.prototype, "valueController", void 0);
4056
- __decorate$k([
4274
+ __decorate$l([
4057
4275
  globalSlimmerRegistry.MapToComponentField()
4058
4276
  ], UserInputController.prototype, "vegaRichTextEditorRenderer", void 0);
4059
- __decorate$k([
4277
+ __decorate$l([
4060
4278
  globalSlimmerRegistry.MapToComponentField()
4061
4279
  ], UserInputController.prototype, "selectionController", void 0);
4062
- __decorate$k([
4280
+ __decorate$l([
4063
4281
  globalSlimmerRegistry.MapToComponentField()
4064
4282
  ], UserInputController.prototype, "insertCompositionTextController", void 0);
4065
- __decorate$k([
4283
+ __decorate$l([
4066
4284
  globalSlimmerRegistry.MapToComponentMethod('componentDidLoad')
4067
4285
  ], UserInputController.prototype, "addActionListener", null);
4068
- __decorate$k([
4286
+ __decorate$l([
4069
4287
  globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
4070
4288
  ], UserInputController.prototype, "removeActionListener", null);
4071
4289
 
@@ -4085,7 +4303,7 @@ class InsertImageToBlockAction extends codeBlock.ModifyContentAction {
4085
4303
  }
4086
4304
  }
4087
4305
 
4088
- var __decorate$j = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4306
+ var __decorate$k = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4089
4307
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4090
4308
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4091
4309
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -4177,26 +4395,26 @@ class InsertImageController extends globalSlimmerRegistry.VegaSlimmer {
4177
4395
  }
4178
4396
  }
4179
4397
  }
4180
- __decorate$j([
4398
+ __decorate$k([
4181
4399
  globalSlimmerRegistry.MapToComponentField()
4182
4400
  ], InsertImageController.prototype, "selectionController", void 0);
4183
- __decorate$j([
4401
+ __decorate$k([
4184
4402
  globalSlimmerRegistry.MapToComponentField()
4185
4403
  ], InsertImageController.prototype, "value", void 0);
4186
- __decorate$j([
4404
+ __decorate$k([
4187
4405
  globalSlimmerRegistry.MapToComponentField()
4188
4406
  ], InsertImageController.prototype, "valueController", void 0);
4189
- __decorate$j([
4407
+ __decorate$k([
4190
4408
  globalSlimmerRegistry.MapToComponentField()
4191
4409
  ], InsertImageController.prototype, "vegaRichTextEditorRenderer", void 0);
4192
- __decorate$j([
4410
+ __decorate$k([
4193
4411
  globalSlimmerRegistry.MapToComponentMethod('componentDidLoad')
4194
4412
  ], InsertImageController.prototype, "registerObserver", null);
4195
- __decorate$j([
4413
+ __decorate$k([
4196
4414
  globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
4197
4415
  ], InsertImageController.prototype, "unRegisterObserver", null);
4198
4416
 
4199
- var __decorate$i = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4417
+ var __decorate$j = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4200
4418
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4201
4419
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4202
4420
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -4262,20 +4480,20 @@ class FocusController extends globalSlimmerRegistry.VegaSlimmer {
4262
4480
  this.selectionController.setSelectionRange(range);
4263
4481
  }
4264
4482
  }
4265
- __decorate$i([
4483
+ __decorate$j([
4266
4484
  globalSlimmerRegistry.MapToComponentField()
4267
4485
  ], FocusController.prototype, "vegaRichTextEditorRenderer", void 0);
4268
- __decorate$i([
4486
+ __decorate$j([
4269
4487
  globalSlimmerRegistry.MapToComponentField()
4270
4488
  ], FocusController.prototype, "selectionController", void 0);
4271
- __decorate$i([
4489
+ __decorate$j([
4272
4490
  globalSlimmerRegistry.MapToComponentField()
4273
4491
  ], FocusController.prototype, "valueController", void 0);
4274
- __decorate$i([
4492
+ __decorate$j([
4275
4493
  globalSlimmerRegistry.MapToComponentField()
4276
4494
  ], FocusController.prototype, "value", void 0);
4277
4495
 
4278
- var __decorate$h = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4496
+ var __decorate$i = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4279
4497
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4280
4498
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4281
4499
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -4482,38 +4700,39 @@ class InsertCompositionTextController extends globalSlimmerRegistry.VegaSlimmer
4482
4700
  const inputEvent = new CustomEvent('beforeinput');
4483
4701
  inputEvent['data'] = text;
4484
4702
  inputEvent['inputType'] = 'insertText';
4703
+ inputEvent[codeBlock.RTE_UPDATE_SOURCE_KEY] = codeBlock.RTEUpdateSource.Composition;
4485
4704
  this.editableElementRef.dispatchEvent(inputEvent);
4486
4705
  }
4487
4706
  }
4488
- __decorate$h([
4707
+ __decorate$i([
4489
4708
  globalSlimmerRegistry.MapToComponentField()
4490
4709
  ], InsertCompositionTextController.prototype, "selectionController", void 0);
4491
- __decorate$h([
4710
+ __decorate$i([
4492
4711
  globalSlimmerRegistry.MapToComponentField()
4493
4712
  ], InsertCompositionTextController.prototype, "host", void 0);
4494
- __decorate$h([
4713
+ __decorate$i([
4495
4714
  globalSlimmerRegistry.MapToComponentField()
4496
4715
  ], InsertCompositionTextController.prototype, "value", void 0);
4497
- __decorate$h([
4716
+ __decorate$i([
4498
4717
  globalSlimmerRegistry.MapToComponentField()
4499
4718
  ], InsertCompositionTextController.prototype, "valueController", void 0);
4500
- __decorate$h([
4719
+ __decorate$i([
4501
4720
  globalSlimmerRegistry.MapToComponentField()
4502
4721
  ], InsertCompositionTextController.prototype, "userInputController", void 0);
4503
- __decorate$h([
4722
+ __decorate$i([
4504
4723
  globalSlimmerRegistry.MapToComponentField()
4505
4724
  ], InsertCompositionTextController.prototype, "vegaRichTextEditorRenderer", void 0);
4506
- __decorate$h([
4725
+ __decorate$i([
4507
4726
  globalSlimmerRegistry.MapToComponentMethod('componentDidLoad')
4508
4727
  ], InsertCompositionTextController.prototype, "addCompositionTextEventListener", null);
4509
- __decorate$h([
4728
+ __decorate$i([
4510
4729
  globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
4511
4730
  ], InsertCompositionTextController.prototype, "removeCompositionTextEventListener", null);
4512
- __decorate$h([
4731
+ __decorate$i([
4513
4732
  globalSlimmerRegistry.MapToComponentMethod('componentDidRender')
4514
4733
  ], InsertCompositionTextController.prototype, "reConnectObserver", null);
4515
4734
 
4516
- var __decorate$g = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4735
+ var __decorate$h = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4517
4736
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4518
4737
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4519
4738
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -4722,23 +4941,23 @@ class DeleteSelectedNodesController extends globalSlimmerRegistry.VegaSlimmer {
4722
4941
  }
4723
4942
  }
4724
4943
  }
4725
- __decorate$g([
4944
+ __decorate$h([
4726
4945
  globalSlimmerRegistry.MapToComponentField()
4727
4946
  ], DeleteSelectedNodesController.prototype, "host", void 0);
4728
- __decorate$g([
4947
+ __decorate$h([
4729
4948
  globalSlimmerRegistry.MapToComponentField()
4730
4949
  ], DeleteSelectedNodesController.prototype, "selectionController", void 0);
4731
- __decorate$g([
4950
+ __decorate$h([
4732
4951
  globalSlimmerRegistry.MapToComponentField()
4733
4952
  ], DeleteSelectedNodesController.prototype, "value", void 0);
4734
- __decorate$g([
4953
+ __decorate$h([
4735
4954
  globalSlimmerRegistry.MapToComponentMethod('connectedCallback')
4736
4955
  ], DeleteSelectedNodesController.prototype, "addDeleteObserver", null);
4737
- __decorate$g([
4956
+ __decorate$h([
4738
4957
  globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
4739
4958
  ], DeleteSelectedNodesController.prototype, "removeDeleteObserver", null);
4740
4959
 
4741
- var __decorate$f = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4960
+ var __decorate$g = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4742
4961
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4743
4962
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4744
4963
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -4815,22 +5034,22 @@ class HistoryController extends componentValueHistoryControllerSlimmer_abstract.
4815
5034
  await this.valueController.flushChanges(content, false);
4816
5035
  }
4817
5036
  }
4818
- __decorate$f([
5037
+ __decorate$g([
4819
5038
  globalSlimmerRegistry.MapToComponentField()
4820
5039
  ], HistoryController.prototype, "host", void 0);
4821
- __decorate$f([
5040
+ __decorate$g([
4822
5041
  globalSlimmerRegistry.MapToComponentField()
4823
5042
  ], HistoryController.prototype, "vegaRichTextEditorRenderer", void 0);
4824
- __decorate$f([
5043
+ __decorate$g([
4825
5044
  globalSlimmerRegistry.MapToComponentField()
4826
5045
  ], HistoryController.prototype, "valueController", void 0);
4827
- __decorate$f([
5046
+ __decorate$g([
4828
5047
  globalSlimmerRegistry.MapToComponentField()
4829
5048
  ], HistoryController.prototype, "value", void 0);
4830
- __decorate$f([
5049
+ __decorate$g([
4831
5050
  globalSlimmerRegistry.MapToComponentField()
4832
5051
  ], HistoryController.prototype, "selectionController", void 0);
4833
- __decorate$f([
5052
+ __decorate$g([
4834
5053
  globalSlimmerRegistry.MapToComponentMethod('componentDidLoad')
4835
5054
  ], HistoryController.prototype, "registerInitState", null);
4836
5055
 
@@ -4851,7 +5070,7 @@ class TransformToCodeBlockAction extends codeBlock.ModifyContentAction {
4851
5070
  }
4852
5071
  }
4853
5072
 
4854
- var __decorate$e = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5073
+ var __decorate$f = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4855
5074
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4856
5075
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4857
5076
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -4907,13 +5126,13 @@ class CodeBlockToolbarButtonSlimmer extends imageAnnotationAction.VisualModeTool
4907
5126
  (() => {
4908
5127
  internalIconManager.VegaInternalIconManager.register({ 'rectangle-code': rectangleCode });
4909
5128
  })();
4910
- __decorate$e([
5129
+ __decorate$f([
4911
5130
  globalSlimmerRegistry.MapToComponentField()
4912
5131
  ], CodeBlockToolbarButtonSlimmer.prototype, "selectionController", void 0);
4913
- __decorate$e([
5132
+ __decorate$f([
4914
5133
  globalSlimmerRegistry.MapToComponentField()
4915
5134
  ], CodeBlockToolbarButtonSlimmer.prototype, "valueController", void 0);
4916
- __decorate$e([
5135
+ __decorate$f([
4917
5136
  globalSlimmerRegistry.MapToComponentField()
4918
5137
  ], CodeBlockToolbarButtonSlimmer.prototype, "value", void 0);
4919
5138
 
@@ -4921,7 +5140,7 @@ const undoIcon = {
4921
5140
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --><path fill="currentColor" d="M464 424c0 13.3 10.7 24 24 24s24-10.7 24-24l0-96c0-53-43-96-96-96l-334.1 0 95-95c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L7 239c-4.5 4.5-7 10.6-7 17s2.5 12.5 7 17L143 409c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-95-95 334.1 0c26.5 0 48 21.5 48 48l0 96z"/></svg>`,
4922
5141
  };
4923
5142
 
4924
- var __decorate$d = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5143
+ var __decorate$e = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4925
5144
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4926
5145
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4927
5146
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -4950,7 +5169,7 @@ class UndoToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarBu
4950
5169
  (() => {
4951
5170
  internalIconManager.VegaInternalIconManager.register({ 'arrow-turn-left': undoIcon });
4952
5171
  })();
4953
- __decorate$d([
5172
+ __decorate$e([
4954
5173
  globalSlimmerRegistry.MapToComponentField()
4955
5174
  ], UndoToolbarButtonSlimmer.prototype, "historyController", void 0);
4956
5175
 
@@ -4958,7 +5177,7 @@ const redoIcon = {
4958
5177
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --><path fill="currentColor" d="M48 424c0 13.3-10.7 24-24 24S0 437.3 0 424l0-96c0-53 43-96 96-96l334.1 0-95-95c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L505 239c4.5 4.5 7 10.6 7 17s-2.5 12.5-7 17L369 409c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l95-95-334.1 0c-26.5 0-48 21.5-48 48l0 96z"/></svg>`,
4959
5178
  };
4960
5179
 
4961
- var __decorate$c = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5180
+ var __decorate$d = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4962
5181
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4963
5182
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4964
5183
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -4987,7 +5206,7 @@ class RedoToolbarButtonSlimmer extends imageAnnotationAction.VisualModeToolbarBu
4987
5206
  (() => {
4988
5207
  internalIconManager.VegaInternalIconManager.register({ 'arrow-turn-right': redoIcon });
4989
5208
  })();
4990
- __decorate$c([
5209
+ __decorate$d([
4991
5210
  globalSlimmerRegistry.MapToComponentField()
4992
5211
  ], RedoToolbarButtonSlimmer.prototype, "historyController", void 0);
4993
5212
 
@@ -5058,7 +5277,7 @@ const displayCode = {
5058
5277
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M512 48c8.8 0 16 7.2 16 16V352c0 8.8-7.2 16-16 16H336.5c-.3 0-.6 0-.8 0H240.4c-.3 0-.6 0-.8 0H64c-8.8 0-16-7.2-16-16V64c0-8.8 7.2-16 16-16H512zM64 416H211.7l-8 48H152c-13.3 0-24 10.7-24 24s10.7 24 24 24h72H352h72c13.3 0 24-10.7 24-24s-10.7-24-24-24H372.3l-8-48H512c35.3 0 64-28.7 64-64V64c0-35.3-28.7-64-64-64H64C28.7 0 0 28.7 0 64V352c0 35.3 28.7 64 64 64zm188.3 48l8-48h55.3l8 48H252.3zM249 177c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0l-48 48c-9.4 9.4-9.4 24.6 0 33.9l48 48c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-31-31 31-31zM361 143c-9.4-9.4-24.6-9.4-33.9 0s-9.4 24.6 0 33.9l31 31-31 31c-9.4 9.4-9.4 24.6 0 33.9s24.6 9.4 33.9 0l48-48c9.4-9.4 9.4-24.6 0-33.9l-48-48z"/></svg>`,
5059
5278
  };
5060
5279
 
5061
- var __decorate$b = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5280
+ var __decorate$c = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5062
5281
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
5063
5282
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5064
5283
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -5079,11 +5298,25 @@ class SourceEditToolbarButtonSlimmer extends imageAnnotationAction.ToolbarButton
5079
5298
  if (isSelected) {
5080
5299
  await this.saveSourceCode();
5081
5300
  }
5082
- else {
5083
- this.selectionController.setSelectionRange(new Range());
5084
- }
5301
+ // VD-8789 (keyboard a11y): the previous implementation cleared the editor
5302
+ // selection here via `selectionController.setSelectionRange(new Range())`
5303
+ // when entering source view. That call is intentionally removed so the
5304
+ // caret position is preserved when toggling back to visual mode, and so
5305
+ // the source-edit button can be re-activated from the keyboard without
5306
+ // the selection being reset out from under the user.
5085
5307
  this.sourceView = !isSelected;
5086
5308
  }
5309
+ // VD-8789 (keyboard a11y): the default `preventLostFocus` calls
5310
+ // `e.preventDefault()` on mousedown so the button never receives focus and
5311
+ // the rich-text editor selection is preserved. The source-edit toggle is
5312
+ // different — activating it switches the editor to source-view mode, where
5313
+ // the visual-mode selection is no longer relevant. We override with a no-op
5314
+ // so the button is allowed to take focus on click, matching its keyboard
5315
+ // activation path and giving keyboard / screen-reader users a stable focus
5316
+ // target to toggle back out of source view.
5317
+ preventLostFocus() {
5318
+ return {};
5319
+ }
5087
5320
  isSelected() {
5088
5321
  return this.sourceView;
5089
5322
  }
@@ -5109,25 +5342,22 @@ class SourceEditToolbarButtonSlimmer extends imageAnnotationAction.ToolbarButton
5109
5342
  (() => {
5110
5343
  internalIconManager.VegaInternalIconManager.register({ 'display-code': displayCode });
5111
5344
  })();
5112
- __decorate$b([
5345
+ __decorate$c([
5113
5346
  globalSlimmerRegistry.MapToComponentField({ writable: true })
5114
5347
  ], SourceEditToolbarButtonSlimmer.prototype, "sourceView", void 0);
5115
- __decorate$b([
5116
- globalSlimmerRegistry.MapToComponentField()
5117
- ], SourceEditToolbarButtonSlimmer.prototype, "selectionController", void 0);
5118
- __decorate$b([
5348
+ __decorate$c([
5119
5349
  globalSlimmerRegistry.MapToComponentField()
5120
5350
  ], SourceEditToolbarButtonSlimmer.prototype, "valueController", void 0);
5121
- __decorate$b([
5351
+ __decorate$c([
5122
5352
  globalSlimmerRegistry.MapToComponentField()
5123
5353
  ], SourceEditToolbarButtonSlimmer.prototype, "richTextEditorSourceViewRenderer", void 0);
5124
- __decorate$b([
5354
+ __decorate$c([
5125
5355
  globalSlimmerRegistry.MapToComponentField()
5126
5356
  ], SourceEditToolbarButtonSlimmer.prototype, "sourceEditConfig", void 0);
5127
- __decorate$b([
5357
+ __decorate$c([
5128
5358
  globalSlimmerRegistry.MapToComponentField()
5129
5359
  ], SourceEditToolbarButtonSlimmer.prototype, "host", void 0);
5130
- __decorate$b([
5360
+ __decorate$c([
5131
5361
  globalSlimmerRegistry.MapToComponentField()
5132
5362
  ], SourceEditToolbarButtonSlimmer.prototype, "value", void 0);
5133
5363
 
@@ -5166,7 +5396,7 @@ class BlockBoundaryRegistry {
5166
5396
  }
5167
5397
  }
5168
5398
 
5169
- var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5399
+ var __decorate$b = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5170
5400
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
5171
5401
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5172
5402
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
@@ -5282,34 +5512,110 @@ class RTEExtensionController extends globalSlimmerRegistry.VegaSlimmer {
5282
5512
  };
5283
5513
  }
5284
5514
  }
5285
- __decorate$a([
5515
+ __decorate$b([
5286
5516
  globalSlimmerRegistry.MapToComponentField()
5287
5517
  ], RTEExtensionController.prototype, "extensions", void 0);
5288
- __decorate$a([
5518
+ __decorate$b([
5289
5519
  globalSlimmerRegistry.MapToComponentField()
5290
5520
  ], RTEExtensionController.prototype, "host", void 0);
5291
- __decorate$a([
5521
+ __decorate$b([
5292
5522
  globalSlimmerRegistry.MapToComponentField()
5293
5523
  ], RTEExtensionController.prototype, "sourceView", void 0);
5294
- __decorate$a([
5524
+ __decorate$b([
5295
5525
  globalSlimmerRegistry.MapToComponentField()
5296
5526
  ], RTEExtensionController.prototype, "valueController", void 0);
5297
- __decorate$a([
5527
+ __decorate$b([
5298
5528
  globalSlimmerRegistry.MapToComponentField()
5299
5529
  ], RTEExtensionController.prototype, "selectionController", void 0);
5300
- __decorate$a([
5530
+ __decorate$b([
5301
5531
  globalSlimmerRegistry.MapToComponentMethod('componentWillLoad')
5302
5532
  ], RTEExtensionController.prototype, "prepareExtensionsBeforeLoad", null);
5303
- __decorate$a([
5533
+ __decorate$b([
5304
5534
  globalSlimmerRegistry.MapToComponentMethod('componentDidLoad')
5305
5535
  ], RTEExtensionController.prototype, "initialExtensionContext", null);
5306
- __decorate$a([
5536
+ __decorate$b([
5307
5537
  globalSlimmerRegistry.MapToComponentMethod('disconnectedCallback')
5308
5538
  ], RTEExtensionController.prototype, "destroyExtension", null);
5309
- __decorate$a([
5539
+ __decorate$b([
5310
5540
  globalSlimmerRegistry.MapToComponentMethod('watchExtensions')
5311
5541
  ], RTEExtensionController.prototype, "handleExtensionsChange", null);
5312
5542
 
5543
+ var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
5544
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
5545
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5546
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5547
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
5548
+ };
5549
+ /**
5550
+ * Bridges the word count extension to the editor component so the footer UI can
5551
+ * read whether the character count should be shown and its current value.
5552
+ */
5553
+ class WordCountController extends globalSlimmerRegistry.VegaSlimmer {
5554
+ constructor() {
5555
+ super(...arguments);
5556
+ this.cachedValue = null;
5557
+ this.cachedConfig = null;
5558
+ this.cachedData = null;
5559
+ }
5560
+ /**
5561
+ * Whether the character count UI should be rendered.
5562
+ *
5563
+ * @returns {boolean} True when a word count extension requests the UI.
5564
+ */
5565
+ shouldShowUI() {
5566
+ var _a;
5567
+ return !!((_a = this.findWordCountExtension()) === null || _a === void 0 ? void 0 : _a.getConfig().showCharCount);
5568
+ }
5569
+ /**
5570
+ * Compute the current character count data from the editor content.
5571
+ *
5572
+ * @returns {Nullable<VegaRTEWordCountData>} The count data or null when no word count extension is registered.
5573
+ */
5574
+ getData() {
5575
+ const extension = this.findWordCountExtension();
5576
+ if (!extension) {
5577
+ return null;
5578
+ }
5579
+ const value = this.host.value;
5580
+ const config = extension.getConfig();
5581
+ // VegaRTEContent is immutable, so a matching value/config reference means the data is unchanged.
5582
+ if (this.cachedData && value === this.cachedValue && object.deepEqual(config, this.cachedConfig)) {
5583
+ return this.cachedData;
5584
+ }
5585
+ this.cachedData = extension.getData(value);
5586
+ this.cachedValue = value;
5587
+ this.cachedConfig = config;
5588
+ return this.cachedData;
5589
+ }
5590
+ /**
5591
+ * Whether the word count extension gates commits with a hard character limit.
5592
+ *
5593
+ * @returns {boolean} True when a hard limit with a max character count is configured for this host.
5594
+ */
5595
+ hasWordCountHardLimit() {
5596
+ var _a;
5597
+ const config = (_a = this.findWordCountExtension()) === null || _a === void 0 ? void 0 : _a.getConfig();
5598
+ return !!config && Boolean(config.hardLimit) && typeGuard.isNonNullable(config.maxChars);
5599
+ }
5600
+ /**
5601
+ * Locate the word count extension by its runtime `type` discriminator.
5602
+ * Use this way instead of instanceof to avoid direct dependency on the extension class.
5603
+ *
5604
+ * @returns {Nullable<VegaRTEWordCountExtension>} The word count extension or null.
5605
+ */
5606
+ findWordCountExtension() {
5607
+ var _a;
5608
+ const extension = ((_a = this.extensions) !== null && _a !== void 0 ? _a : []).find((ext) => 'type' in ext && ext['type'] === codeBlock.RTE_WORD_COUNT_KEY);
5609
+ return extension !== null && extension !== void 0 ? extension : null;
5610
+ }
5611
+ }
5612
+ __decorate$a([
5613
+ globalSlimmerRegistry.MapToComponentField()
5614
+ ], WordCountController.prototype, "extensions", void 0);
5615
+ __decorate$a([
5616
+ globalSlimmerRegistry.MapToComponentField()
5617
+ ], WordCountController.prototype, "host", void 0);
5618
+
5313
5619
  /**
5314
5620
  * Class to format HTML code with proper indentation and style cleanup.
5315
5621
  */
@@ -5626,6 +5932,13 @@ const VegaRichTextEditor = class {
5626
5932
  this.vegaSourceCodeChange = index.createEvent(this, "vegaSourceCodeChange", 7);
5627
5933
  this.sourceCodeChange = index.createEvent(this, "sourceCodeChange", 7);
5628
5934
  this.globalSlimmers = {};
5935
+ this.ariaAttributesValueMapper = new ariaAttributesValueMapper.AriaAttributesValueMapper(() => this.vegaRichTextEditorRenderer.getRTEEditableElementRef(), {
5936
+ 'aria-label': {
5937
+ dependency: ['data-aria-label', 'label'],
5938
+ // When no label is provided, announce a meaningful role name
5939
+ defaultValue: () => this.translationSlimmer.t('Rich Text Editor. Editing area: main. '),
5940
+ },
5941
+ });
5629
5942
  this.translationSlimmer = new translationSlimmer.TranslationSlimmer();
5630
5943
  this.vegaComponentUsageRuntimeMetricsSlimmer = new componentUsageRuntimeMetrics.VegaComponentUsageRuntimeMetricsSlimmer();
5631
5944
  this.formFieldController = new formFieldControllerSlimmer.FormFieldControllerSlimmer({
@@ -5678,6 +5991,7 @@ const VegaRichTextEditor = class {
5678
5991
  this.historyController = new HistoryController();
5679
5992
  this.internalCodeBlockSelectionController = new InternalCodeBlockSelectionController();
5680
5993
  this.rteExtensionController = new RTEExtensionController();
5994
+ this.wordCountController = new WordCountController();
5681
5995
  this.sourceCodeChangeEventEmitter = eventEmitSlimmer.createEventEmitSlimmer(VegaRichTextEditor, vegaEventId.VegaSourceCodeChange);
5682
5996
  this.richTextEditorSourceViewRenderer = new VegaRichTextEditorSourceViewRenderer();
5683
5997
  this.richTextContentEditable = true;
@@ -5876,6 +6190,9 @@ const VegaRichTextEditor = class {
5876
6190
  __decorate$8([
5877
6191
  componentUsageRuntimeMetrics.InjectVegaGlobalSlimmer()
5878
6192
  ], VegaRichTextEditor.prototype, "globalSlimmers", void 0);
6193
+ __decorate$8([
6194
+ globalSlimmerRegistry.InjectVegaSlimmer()
6195
+ ], VegaRichTextEditor.prototype, "ariaAttributesValueMapper", void 0);
5879
6196
  __decorate$8([
5880
6197
  globalSlimmerRegistry.InjectVegaSlimmer()
5881
6198
  ], VegaRichTextEditor.prototype, "translationSlimmer", void 0);
@@ -5996,6 +6313,9 @@ __decorate$8([
5996
6313
  __decorate$8([
5997
6314
  globalSlimmerRegistry.InjectVegaSlimmer()
5998
6315
  ], VegaRichTextEditor.prototype, "rteExtensionController", void 0);
6316
+ __decorate$8([
6317
+ globalSlimmerRegistry.InjectVegaSlimmer()
6318
+ ], VegaRichTextEditor.prototype, "wordCountController", void 0);
5999
6319
  __decorate$8([
6000
6320
  globalSlimmerRegistry.InjectVegaSlimmer()
6001
6321
  ], VegaRichTextEditor.prototype, "sourceCodeChangeEventEmitter", void 0);
@@ -6029,7 +6349,7 @@ class VegaRichTextEditorToolbarButtonRenderer extends globalSlimmerRegistry.Vega
6029
6349
  'rich-text-editor-toolbar-button-hidden': this.hidden,
6030
6350
  'rich-text-editor-toolbar-button-selected': this.selected,
6031
6351
  }, onClick: this.handleClick, disabled: this.disabled, hidden: this.hidden },
6032
- index.h("vega-flex", { gap: "size-8", justifyContent: "center", alignItems: "center" },
6352
+ index.h("vega-flex", { "aria-hidden": "true", gap: "size-8", justifyContent: "center", alignItems: "center" },
6033
6353
  this.icon && (index.h("vega-icon", { size: "size-16", color: this.iconColor, icon: internalIconManager.VegaInternalIconManager.getIconKey(this.icon) })),
6034
6354
  this.showArrowIcon && (index.h("vega-icon", { size: "size-8", color: "text-secondary", icon: internalIconManager.VegaInternalIconManager.getIconKey(this.arrowIcon || 'chevron-down') }))),
6035
6355
  index.h("slot", null)));
@@ -6095,6 +6415,12 @@ const VegaRichTextEditorToolbarButton = class {
6095
6415
  },
6096
6416
  });
6097
6417
  this.renderer = new VegaRichTextEditorToolbarButtonRenderer();
6418
+ this.ariaAttributesValueMapper = new ariaAttributesValueMapper.AriaAttributesValueMapper(() => this.host.shadowRoot.querySelector('button'), {
6419
+ 'aria-label': {
6420
+ dependency: ['data-aria-label'],
6421
+ defaultValue: 'No label defined',
6422
+ },
6423
+ });
6098
6424
  /**
6099
6425
  * Specifies whether the rich text editor toolbar button element is disabled.
6100
6426
  *
@@ -6139,7 +6465,9 @@ const VegaRichTextEditorToolbarButton = class {
6139
6465
  this.iconColor = 'text-primary';
6140
6466
  }
6141
6467
  render() {
6142
- return component.sanitizeVegaComponent(index.h(index.Host, null, this.renderer.render()), this.host);
6468
+ // The host is a decorative wrapper around the shadow <button>; keep it out of the
6469
+ // a11y tree so VoiceOver doesn't announce it as a "group" when entering the button.
6470
+ return component.sanitizeVegaComponent(index.h(index.Host, { role: "presentation" }, this.renderer.render()), this.host);
6143
6471
  }
6144
6472
  get host() { return index.getElement(this); }
6145
6473
  };
@@ -6158,6 +6486,9 @@ __decorate$6([
6158
6486
  __decorate$6([
6159
6487
  globalSlimmerRegistry.InjectVegaSlimmer()
6160
6488
  ], VegaRichTextEditorToolbarButton.prototype, "renderer", void 0);
6489
+ __decorate$6([
6490
+ globalSlimmerRegistry.InjectVegaSlimmer()
6491
+ ], VegaRichTextEditorToolbarButton.prototype, "ariaAttributesValueMapper", void 0);
6161
6492
  VegaRichTextEditorToolbarButton.style = vegaRichTextEditorToolbarButtonCss;
6162
6493
 
6163
6494
  var __decorate$5 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
@@ -6385,6 +6716,11 @@ class VegaRichTextLinkEditorRenderer extends globalSlimmerRegistry.VegaSlimmer {
6385
6716
  this.handleFormRef = (ref) => {
6386
6717
  this.formRef = ref;
6387
6718
  };
6719
+ this.handlePopoverContentRef = (ref) => {
6720
+ if (ref) {
6721
+ this.popoverContentRef = ref;
6722
+ }
6723
+ };
6388
6724
  this.handleUrlInputRef = (ref) => {
6389
6725
  if (ref) {
6390
6726
  this.urlInputRef = ref;
@@ -6418,6 +6754,9 @@ class VegaRichTextLinkEditorRenderer extends globalSlimmerRegistry.VegaSlimmer {
6418
6754
  getPopoverRef() {
6419
6755
  return this.popoverRef;
6420
6756
  }
6757
+ getPopoverContentRef() {
6758
+ return this.popoverContentRef;
6759
+ }
6421
6760
  getFormRef() {
6422
6761
  return this.formRef;
6423
6762
  }
@@ -6431,7 +6770,7 @@ class VegaRichTextLinkEditorRenderer extends globalSlimmerRegistry.VegaSlimmer {
6431
6770
  return (index.h("vega-popover", { trigger: "click", alignment: "start", placement: "bottom", showArrow: false, isScreenPosition: true, ref: this.handlePopoverRef },
6432
6771
  index.h("span", { slot: "popover-content" },
6433
6772
  index.h("slot", null)),
6434
- index.h("div", { slot: "popover" },
6773
+ index.h("div", { slot: "popover", ref: this.handlePopoverContentRef },
6435
6774
  this.renderLinkUnlinkContent(),
6436
6775
  this.renderLinkEditContent())));
6437
6776
  }
@@ -6657,10 +6996,41 @@ class LinkEditorController extends globalSlimmerRegistry.VegaSlimmer {
6657
6996
  super(...arguments);
6658
6997
  this.linkUrlNormalizer = new LinkUrlNormalizer();
6659
6998
  this.linkTypeHandlers = LINK_TYPE_HANDLER_MAP;
6999
+ /**
7000
+ * The element the trigger click listener is currently attached to (the link
7001
+ * wrapper acting as the popover target).
7002
+ */
7003
+ this.triggerListenerEl = null;
7004
+ /**
7005
+ * Whether the popover was opened via a keyboard or screen-reader (VoiceOver)
7006
+ * activation. When true, focus is moved into the popover so screen reader
7007
+ * users land on the Edit button.
7008
+ */
7009
+ this.isVoiceOverTrigger = false;
7010
+ /**
7011
+ * The element that had focus when the VoiceOver activation happened, so focus
7012
+ * can be restored to the link once the popover is hidden.
7013
+ */
7014
+ this.focusReturnEl = null;
7015
+ /**
7016
+ * Records whether the popover was opened via a keyboard/VoiceOver activation
7017
+ * and, if so, the element to restore focus to when the popover closes.
7018
+ *
7019
+ * @param {MouseEvent} e - The click event on the link wrapper.
7020
+ * @returns {void} No return value.
7021
+ */
7022
+ this.handleTriggerClick = (e) => {
7023
+ this.isVoiceOverTrigger = this.isKeyboardOrScreenReaderActivation(e);
7024
+ this.focusReturnEl = this.isVoiceOverTrigger
7025
+ ? // eslint-disable-next-line no-restricted-globals
7026
+ ui.getDeepActiveElementInShadow(document, true)
7027
+ : null;
7028
+ };
6660
7029
  }
6661
7030
  /** Initializes the popover target after the component loads. */
6662
7031
  componentDidLoad() {
6663
7032
  this.updatePopoverTarget();
7033
+ this.attachTriggerListener();
6664
7034
  }
6665
7035
  /** Notifies observers after each render cycle. */
6666
7036
  componentDidRender() {
@@ -6679,6 +7049,7 @@ class LinkEditorController extends globalSlimmerRegistry.VegaSlimmer {
6679
7049
  watchTargetChange() {
6680
7050
  this.linkTypeConfigController.invalidateConfiguredLinkTypesCache();
6681
7051
  this.updatePopoverTarget();
7052
+ this.attachTriggerListener();
6682
7053
  }
6683
7054
  /**
6684
7055
  * Prepares the editor state before the popover is shown.
@@ -6709,6 +7080,9 @@ class LinkEditorController extends globalSlimmerRegistry.VegaSlimmer {
6709
7080
  }
6710
7081
  await this.populateEditForm();
6711
7082
  }
7083
+ if (this.status !== 'linkEdit' && this.isVoiceOverTrigger) {
7084
+ this.focusPopoverContentForVoiceOver();
7085
+ }
6712
7086
  }
6713
7087
  /**
6714
7088
  * Clears form state after the popover hides.
@@ -6725,6 +7099,7 @@ class LinkEditorController extends globalSlimmerRegistry.VegaSlimmer {
6725
7099
  if (this.resetStatusAfterHide) {
6726
7100
  this.linkEditorStateManager.setShouldResetStatusOnNextShow(true);
6727
7101
  }
7102
+ this.restoreFocusAfterVoiceOver();
6728
7103
  }
6729
7104
  /**
6730
7105
  * Switches the editor into link edit mode.
@@ -6886,6 +7261,93 @@ class LinkEditorController extends globalSlimmerRegistry.VegaSlimmer {
6886
7261
  updatePopoverTarget() {
6887
7262
  remoteInvocationRegistry.remoteInvocationRegistry.call(domNodeSubjectObserverFactory.domNodeSubjectFactory.getSubject(this.renderer.getPopoverRef(), vegaInternalEventId.VegaInternalPopoverUpdateTarget), this.target);
6888
7263
  }
7264
+ /**
7265
+ * Attaches a capture-phase click listener to the link wrapper (the popover
7266
+ * target) so a keyboard/VoiceOver activation can be distinguished from a real
7267
+ * pointer click before the popover opens. Re-attaches when the target changes.
7268
+ *
7269
+ * @returns {void} No return value.
7270
+ */
7271
+ attachTriggerListener() {
7272
+ if (this.triggerListenerEl === this.target) {
7273
+ return;
7274
+ }
7275
+ this.detachTriggerListener();
7276
+ if (this.target) {
7277
+ this.triggerListenerEl = this.target;
7278
+ this.target.addEventListener('click', this.handleTriggerClick, { capture: true });
7279
+ }
7280
+ }
7281
+ /**
7282
+ * Removes the trigger listener from the previously observed element.
7283
+ *
7284
+ * @returns {void} No return value.
7285
+ */
7286
+ detachTriggerListener() {
7287
+ if (this.triggerListenerEl) {
7288
+ this.triggerListenerEl.removeEventListener('click', this.handleTriggerClick, { capture: true });
7289
+ this.triggerListenerEl = null;
7290
+ }
7291
+ }
7292
+ /**
7293
+ * Determines whether a click on the link wrapper came from a keyboard or
7294
+ * screen reader (VoiceOver) rather than a real pointer.
7295
+ *
7296
+ * A genuine pointer click lands inside the activated element. Keyboard (Enter,
7297
+ * `detail === 0`) and VoiceOver activations dispatch a click with coordinates
7298
+ * that are not on the element, so we treat any click whose point falls outside
7299
+ * the wrapper as an assistive-technology activation.
7300
+ *
7301
+ * @param {MouseEvent} e - The click event on the link wrapper.
7302
+ * @returns {boolean} True when the activation is keyboard/screen-reader driven.
7303
+ */
7304
+ isKeyboardOrScreenReaderActivation(e) {
7305
+ if (ui.checkIsVoiceOverClick(e)) {
7306
+ return true;
7307
+ }
7308
+ const rect = this.target ? this.target.getBoundingClientRect() : null;
7309
+ if (!rect || (rect.width === 0 && rect.height === 0)) {
7310
+ return false;
7311
+ }
7312
+ const isInsideTarget = e.clientX >= rect.left &&
7313
+ e.clientX <= rect.right &&
7314
+ e.clientY >= rect.top &&
7315
+ e.clientY <= rect.bottom;
7316
+ return !isInsideTarget;
7317
+ }
7318
+ /**
7319
+ * Moves focus to the first focusable element within the popover content (the
7320
+ * Edit button) so VoiceOver users land inside the opened toolbar.
7321
+ *
7322
+ * Deferred to the next macrotask so it runs after the editor has finished
7323
+ * placing the caret/focus into the content area on the activating click.
7324
+ *
7325
+ * @returns {void} No return value.
7326
+ */
7327
+ focusPopoverContentForVoiceOver() {
7328
+ setTimeout(() => {
7329
+ const contentRef = this.renderer.getPopoverContentRef();
7330
+ if (!contentRef) {
7331
+ return;
7332
+ }
7333
+ const focusable = ui.getFirstFocusableElement(contentRef);
7334
+ (focusable !== null && focusable !== void 0 ? focusable : contentRef).focus();
7335
+ });
7336
+ }
7337
+ /**
7338
+ * Restores focus to the link wrapper after the popover is hidden following a
7339
+ * VoiceOver activation.
7340
+ *
7341
+ * @returns {void} No return value.
7342
+ */
7343
+ restoreFocusAfterVoiceOver() {
7344
+ if (this.isVoiceOverTrigger && this.focusReturnEl) {
7345
+ const returnEl = this.focusReturnEl;
7346
+ setTimeout(() => returnEl.focus());
7347
+ }
7348
+ this.isVoiceOverTrigger = false;
7349
+ this.focusReturnEl = null;
7350
+ }
6889
7351
  /**
6890
7352
  * Preserves an unchanged mailto URL when the form edits are equivalent.
6891
7353
  *