@globalpayments/vega 2.99.0 → 2.100.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 (509) hide show
  1. package/dist/cjs/{accessibility-88f8af84.js → accessibility-6ca2a237.js} +21 -0
  2. package/dist/cjs/{app-globals-a306dce6.js → app-globals-48d067a7.js} +11 -10
  3. package/dist/cjs/{aria-attributes-value-mapper-9a41b9cf.js → aria-attributes-value-mapper-e8c6b0e0.js} +1 -1
  4. package/dist/cjs/{code-block-ea1f5eb3.js → code-block-3b42c364.js} +53 -1
  5. package/dist/cjs/{component-value-history-controller-slimmer.abstract-7071b064.js → component-value-history-controller-slimmer.abstract-bbe3bcaf.js} +3 -3
  6. package/dist/cjs/{content-state-8d07d530.js → content-state-87a06c1a.js} +46 -2
  7. package/dist/cjs/{date-required-rule-c0c498ad.js → date-required-rule-45c802d3.js} +1 -1
  8. package/dist/cjs/{design-token-58bf7fe8.js → design-token-9d762da0.js} +3 -3
  9. package/dist/cjs/{element-appender-slimmer-a0269315.js → element-appender-slimmer-f7ba5d9a.js} +2 -2
  10. package/dist/cjs/{form-field-controller-slimmer-f73f200e.js → form-field-controller-slimmer-fbaddc91.js} +1 -1
  11. package/dist/cjs/{image-annotation-action-2a28038e.js → image-annotation-action-03d3e01a.js} +6 -5
  12. package/dist/cjs/{image-extension-9659708b.js → image-extension-ccda26d3.js} +2 -2
  13. package/dist/cjs/index.cjs.js +18 -17
  14. package/dist/cjs/{inject-keyboard-manager-4fa45f9c.js → inject-keyboard-manager-540f0876.js} +1 -1
  15. package/dist/cjs/{internal-calendar-period-factory-6196bc80.js → internal-calendar-period-factory-b11918ee.js} +1 -1
  16. package/dist/cjs/{internal-translation-controller-51f7f865.js → internal-translation-controller-27bfc8c7.js} +15 -0
  17. package/dist/cjs/{keyboard-manager-482fe257.js → keyboard-manager-16e96b62.js} +12 -5
  18. package/dist/cjs/{keyboard-manager-slimmer-a19430dd.js → keyboard-manager-slimmer-0a4e556d.js} +1 -1
  19. package/dist/cjs/{link-extension-11340e1c.js → link-extension-71eeaa9f.js} +3 -3
  20. package/dist/cjs/loader.cjs.js +12 -12
  21. package/dist/cjs/{month-view-generator-1a534451.js → month-view-generator-0a3e04de.js} +1 -1
  22. package/dist/cjs/overlay-escape-coordination-901d8942.js +38 -0
  23. package/dist/cjs/{public-rules-6c77b545.js → public-rules-3dc5d02d.js} +7 -7
  24. package/dist/cjs/{range-22ddd452.js → range-d29751e3.js} +1 -1
  25. package/dist/cjs/{responsive-format-facade-74e6d791.js → responsive-format-facade-c6d7f0a1.js} +1 -1
  26. package/dist/cjs/{rich-text-editor-required-rule-09d1093a.js → rich-text-editor-required-rule-05de7f0c.js} +1 -1
  27. package/dist/cjs/{split-cell-operation-11bfb305.js → split-cell-operation-ef783850.js} +3 -3
  28. package/dist/cjs/{state-border-formatter-bf4f9f1c.js → state-border-formatter-dda9109a.js} +1 -1
  29. package/dist/cjs/{string-format-strategy.abstract-bf37b14c.js → string-format-strategy.abstract-3a968a59.js} +1 -1
  30. package/dist/cjs/{string-input-formatter-slimmer-ffeb18a6.js → string-input-formatter-slimmer-9747039f.js} +1 -1
  31. package/dist/cjs/{string-mask-strategy-7f394726.js → string-mask-strategy-d9f85c21.js} +2 -2
  32. package/dist/cjs/{style-formatter-4ac63910.js → style-formatter-d21a9784.js} +2 -2
  33. package/dist/cjs/{time-required-rule-e2a50003.js → time-required-rule-580cbd3d.js} +1 -1
  34. package/dist/cjs/{token-extension-4686cb3b.js → token-extension-8d7bd451.js} +807 -49
  35. package/dist/cjs/{translation-slimmer-e4997f8f.js → translation-slimmer-31cd5a57.js} +1 -1
  36. package/dist/cjs/{type-guard-b8d7bb3f.js → type-guard-00b8efc0.js} +1 -1
  37. package/dist/cjs/{valid-credit-card-number-rule-f5a6f009.js → valid-credit-card-number-rule-70885128.js} +1 -1
  38. package/dist/cjs/vega-accordion.cjs.entry.js +6 -6
  39. package/dist/cjs/vega-app-header-button.cjs.entry.js +6 -6
  40. package/dist/cjs/vega-banner.cjs.entry.js +1 -1
  41. package/dist/cjs/vega-box.cjs.entry.js +6 -6
  42. package/dist/cjs/vega-button-circle.cjs.entry.js +6 -6
  43. package/dist/cjs/vega-button-group_2.cjs.entry.js +13 -6
  44. package/dist/cjs/vega-button-link.cjs.entry.js +3 -3
  45. package/dist/cjs/vega-button.cjs.entry.js +21 -5
  46. package/dist/cjs/vega-calendar_5.cjs.entry.js +8 -8
  47. package/dist/cjs/vega-card.cjs.entry.js +5 -5
  48. package/dist/cjs/vega-carousel.cjs.entry.js +4 -4
  49. package/dist/cjs/vega-checkbox_2.cjs.entry.js +3 -3
  50. package/dist/cjs/vega-chip.cjs.entry.js +6 -6
  51. package/dist/cjs/vega-code-block.cjs.entry.js +9 -9
  52. package/dist/cjs/vega-color-picker.cjs.entry.js +3 -3
  53. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +3 -3
  54. package/dist/cjs/vega-color-swatch.cjs.entry.js +3 -3
  55. package/dist/cjs/vega-combo-box.cjs.entry.js +9 -9
  56. package/dist/cjs/vega-date-picker_2.cjs.entry.js +14 -14
  57. package/dist/cjs/vega-dialog_2.cjs.entry.js +70 -4
  58. package/dist/cjs/vega-divider.cjs.entry.js +5 -5
  59. package/dist/cjs/vega-dropdown_5.cjs.entry.js +100 -17
  60. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  61. package/dist/cjs/vega-field-label.cjs.entry.js +26 -33
  62. package/dist/cjs/vega-file-uploader.cjs.entry.js +4 -4
  63. package/dist/cjs/vega-flag-icon.cjs.entry.js +5 -5
  64. package/dist/cjs/vega-flex.cjs.entry.js +6 -6
  65. package/dist/cjs/vega-font.cjs.entry.js +5 -5
  66. package/dist/cjs/vega-form.cjs.entry.js +2 -2
  67. package/dist/cjs/vega-grid.cjs.entry.js +5 -5
  68. package/dist/cjs/vega-icon.cjs.entry.js +5 -5
  69. package/dist/cjs/vega-image-uploader.cjs.entry.js +6 -6
  70. package/dist/cjs/vega-input-credit-card.cjs.entry.js +6 -6
  71. package/dist/cjs/vega-input-numeric.cjs.entry.js +5 -5
  72. package/dist/cjs/vega-input-passcode.cjs.entry.js +5 -5
  73. package/dist/cjs/vega-input-phone-number.cjs.entry.js +41 -7
  74. package/dist/cjs/vega-input-range.cjs.entry.js +4 -4
  75. package/dist/cjs/vega-input-select.cjs.entry.js +24 -7
  76. package/dist/cjs/vega-input.cjs.entry.js +8 -8
  77. package/dist/cjs/vega-left-nav_5.cjs.entry.js +7 -7
  78. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
  79. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  80. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
  81. package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
  82. package/dist/cjs/vega-popover_2.cjs.entry.js +58 -9
  83. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +4 -4
  84. package/dist/cjs/vega-radio_2.cjs.entry.js +6 -6
  85. package/dist/cjs/vega-rich-text-content.cjs.entry.js +11 -8
  86. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +703 -241
  87. package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +3 -3
  88. package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +5 -5
  89. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +156 -103
  90. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +5 -5
  91. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +2 -2
  92. package/dist/cjs/vega-sidenav_3.cjs.entry.js +4 -4
  93. package/dist/cjs/vega-signature-capture.cjs.entry.js +7 -7
  94. package/dist/cjs/vega-stepper.cjs.entry.js +2 -2
  95. package/dist/cjs/vega-tab-group_2.cjs.entry.js +3 -3
  96. package/dist/cjs/vega-table_11.cjs.entry.js +5 -5
  97. package/dist/cjs/vega-textarea.cjs.entry.js +2 -2
  98. package/dist/cjs/vega-time-picker_2.cjs.entry.js +10 -10
  99. package/dist/cjs/vega-toggle-switch.cjs.entry.js +3 -3
  100. package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -6
  101. package/dist/cjs/vega.cjs.js +12 -12
  102. package/dist/collection/components/vega-button/vega-button.js +17 -2
  103. package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.js +13 -6
  104. package/dist/collection/components/vega-button-link/vega-button-link.js +2 -2
  105. package/dist/collection/components/vega-code-block/vega-code-block.css +4 -4
  106. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-keyboard-controller.js +148 -0
  107. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-scrollable-controller.js +5 -2
  108. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-renderer.js +17 -0
  109. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +2 -2
  110. package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.css +2 -1
  111. package/dist/collection/components/vega-dropdown/vega-dropdown.js +1 -1
  112. package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.js +21 -30
  113. package/dist/collection/components/vega-field-label/vega-field-label.js +7 -5
  114. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +19 -2
  115. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +66 -0
  116. package/dist/collection/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.js +17 -0
  117. package/dist/collection/components/vega-popover/vega-popover.js +33 -1
  118. package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +4 -1
  119. package/dist/collection/components/vega-rich-text-editor/constants/constant.js +9 -0
  120. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/commit-value-strategy.js +13 -0
  121. package/dist/collection/components/vega-rich-text-editor/dto/actions/commit-value-action.js +20 -0
  122. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +11 -0
  123. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +10 -0
  124. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +11 -0
  125. package/dist/collection/components/vega-rich-text-editor/dto/nodes/code-block-node.js +6 -0
  126. package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +8 -0
  127. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +6 -0
  128. package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +30 -18
  129. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.js +1 -0
  130. package/dist/collection/components/vega-rich-text-editor/extensions/copy/copy-toolbar-button-renderer.js +1 -0
  131. package/dist/collection/components/vega-rich-text-editor/extensions/cut/cut-toolbar-button-renderer.js +1 -0
  132. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.js +51 -0
  133. 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
  134. package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/fullscreen-toolbar-button-renderer.js +3 -0
  135. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.js +6 -0
  136. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +1 -0
  137. package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/renderers/horizontal-line-toolbar-button-renderer.js +1 -0
  138. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +5 -3
  139. package/dist/collection/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.js +16 -0
  140. package/dist/collection/components/vega-rich-text-editor/extensions/special-characters/special-characters-toolbar-button-renderer.js +2 -0
  141. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.js +3 -9
  142. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-cell-renderer.js +2 -2
  143. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.js +81 -1
  144. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-popover-base-renderer.js +148 -0
  145. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +151 -5
  146. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.js +144 -2
  147. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-selection.js +26 -1
  148. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.js +1 -0
  149. 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
  150. 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
  151. 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
  152. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.css +5 -0
  153. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.js +16 -1
  154. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/caption-button-slimmer.js +1 -0
  155. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/cell-properties-button-slimmer.js +1 -0
  156. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.js +10 -9
  157. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/merge-cells-button-slimmer.js +9 -8
  158. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.js +25 -10
  159. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-properties-button-slimmer.js +1 -0
  160. 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
  161. 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
  162. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.css +10 -0
  163. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.js +2 -0
  164. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +1 -0
  165. package/dist/collection/components/vega-rich-text-editor/extensions/word-count/action-handler-interceptors/prevent-hard-limit-exceed-interceptor.js +70 -0
  166. package/dist/collection/components/vega-rich-text-editor/extensions/word-count/type.js +1 -0
  167. package/dist/collection/components/vega-rich-text-editor/extensions/word-count/word-count-extension.js +62 -0
  168. package/dist/collection/components/vega-rich-text-editor/public-api.js +1 -0
  169. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/insert-composition-text-controller.js +2 -1
  170. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +7 -1
  171. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +52 -2
  172. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/word-count-controller.js +79 -0
  173. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/toolbar-renderer.js +6 -3
  174. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +2 -1
  175. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +2 -1
  176. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +3 -2
  177. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +111 -2
  178. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +17 -6
  179. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +1 -1
  180. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +1 -1
  181. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.js +3 -2
  182. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +59 -8
  183. 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
  184. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +13 -1
  185. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +16 -0
  186. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.js +124 -0
  187. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.js +9 -1
  188. package/dist/collection/global/scripts/before-vega-load.js +2 -0
  189. package/dist/collection/helpers/keyboard/keyboard-manager.js +11 -4
  190. package/dist/collection/helpers/keyboard/overlay-escape-coordination.js +33 -0
  191. package/dist/collection/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.js +1 -1
  192. package/dist/collection/helpers/translation/locales/en.js +15 -0
  193. package/dist/collection/polyfill/libphonenumber/as-you-type.js +21 -3
  194. package/dist/collection/polyfill/libphonenumber/metadata.js +16 -0
  195. package/dist/collection/utils/accessibility.js +20 -0
  196. package/dist/esm/{accessibility-6af5cf2e.js → accessibility-c899a968.js} +21 -1
  197. package/dist/esm/{app-globals-c59364c2.js → app-globals-1e1371d5.js} +11 -10
  198. package/dist/esm/{aria-attributes-value-mapper-2c632641.js → aria-attributes-value-mapper-a5c7478e.js} +1 -1
  199. package/dist/esm/{aria-dialog-focusable-trap-slimmer-f069f54d.js → aria-dialog-focusable-trap-slimmer-b2a24a45.js} +2 -2
  200. package/dist/esm/{child-nodes-notify-observer-slimmer-499a3aa7.js → child-nodes-notify-observer-slimmer-034bc78c.js} +1 -1
  201. package/dist/esm/{code-block-e6443949.js → code-block-741d6b8e.js} +54 -4
  202. package/dist/esm/{component-value-history-controller-slimmer.abstract-ee393213.js → component-value-history-controller-slimmer.abstract-2bcd749e.js} +5 -5
  203. package/dist/esm/{content-state-43cdacff.js → content-state-2f6f4204.js} +47 -5
  204. package/dist/esm/{date-required-rule-b5b67498.js → date-required-rule-2ea3aec8.js} +1 -1
  205. package/dist/esm/{design-token-8319bb59.js → design-token-82a4e107.js} +3 -3
  206. package/dist/esm/{dom-node-subject-observer-factory-ddff8662.js → dom-node-subject-observer-factory-bb7e68a0.js} +1 -1
  207. package/dist/esm/{element-appender-slimmer-c81d1fe3.js → element-appender-slimmer-c820c0bf.js} +4 -4
  208. package/dist/esm/{event-emit-slimmer-2452278f.js → event-emit-slimmer-e8bb2292.js} +1 -1
  209. package/dist/esm/{form-field-controller-slimmer-511b7ac5.js → form-field-controller-slimmer-02165dbe.js} +4 -4
  210. package/dist/esm/{image-annotation-action-d7cb80aa.js → image-annotation-action-972c1074.js} +7 -6
  211. package/dist/esm/{image-extension-9b8abd0d.js → image-extension-59484e9a.js} +2 -2
  212. package/dist/esm/index.js +19 -19
  213. package/dist/esm/{inject-keyboard-manager-dd368d56.js → inject-keyboard-manager-6a10c9b7.js} +1 -1
  214. package/dist/esm/{internal-calendar-period-factory-d58f35c6.js → internal-calendar-period-factory-d1a60f81.js} +1 -1
  215. package/dist/esm/{internal-translation-controller-b33430c6.js → internal-translation-controller-fff376d2.js} +15 -0
  216. package/dist/esm/{keyboard-manager-b4a0d97d.js → keyboard-manager-a58288df.js} +13 -6
  217. package/dist/esm/{keyboard-manager-slimmer-0517fc70.js → keyboard-manager-slimmer-133b86cd.js} +1 -1
  218. package/dist/esm/{link-extension-230bae8d.js → link-extension-e89acb5c.js} +3 -3
  219. package/dist/esm/loader.js +14 -14
  220. package/dist/esm/{month-view-generator-f470caac.js → month-view-generator-20e32b22.js} +1 -1
  221. package/dist/esm/overlay-escape-coordination-439f7d6f.js +35 -0
  222. package/dist/esm/{public-rules-28ef32d3.js → public-rules-c154201b.js} +9 -9
  223. package/dist/esm/{range-efad2578.js → range-c818a1eb.js} +2 -2
  224. package/dist/esm/{responsive-format-facade-dec87e46.js → responsive-format-facade-07843ec3.js} +1 -1
  225. package/dist/esm/{rich-text-editor-required-rule-a697e5bd.js → rich-text-editor-required-rule-878e91c6.js} +1 -1
  226. package/dist/esm/{split-cell-operation-89b91a38.js → split-cell-operation-cc0cdf90.js} +4 -4
  227. package/dist/esm/{state-border-formatter-1e900a2f.js → state-border-formatter-3b3dcfe8.js} +1 -1
  228. package/dist/esm/{string-format-strategy.abstract-d0ce3f65.js → string-format-strategy.abstract-44381dcb.js} +1 -1
  229. package/dist/esm/{string-input-formatter-slimmer-6546cfc7.js → string-input-formatter-slimmer-76fe52d3.js} +3 -3
  230. package/dist/esm/{string-mask-strategy-dd13ae21.js → string-mask-strategy-999fba4b.js} +2 -2
  231. package/dist/esm/{style-formatter-057d7120.js → style-formatter-c4192c99.js} +2 -2
  232. package/dist/esm/{sub-state-notify-slimmer-23b7d0e8.js → sub-state-notify-slimmer-e306c849.js} +1 -1
  233. package/dist/esm/{sub-state-observer-slimmer-722f6b92.js → sub-state-observer-slimmer-bd85f381.js} +2 -2
  234. package/dist/esm/{time-required-rule-73753a54.js → time-required-rule-0554b114.js} +1 -1
  235. package/dist/esm/{token-extension-74a0eeb1.js → token-extension-35c66684.js} +809 -52
  236. package/dist/esm/{translation-slimmer-ef970ffc.js → translation-slimmer-77022f2e.js} +1 -1
  237. package/dist/esm/{type-guard-6fc96870.js → type-guard-26d83e7e.js} +1 -1
  238. package/dist/esm/{ui-d73f756a.js → ui-80e610f4.js} +1 -1
  239. package/dist/esm/{valid-credit-card-number-rule-b54a31e7.js → valid-credit-card-number-rule-f60b6904.js} +1 -1
  240. package/dist/esm/vega-accordion.entry.js +9 -9
  241. package/dist/esm/vega-app-footer.entry.js +3 -3
  242. package/dist/esm/vega-app-header-button.entry.js +9 -9
  243. package/dist/esm/vega-backdrop.entry.js +1 -1
  244. package/dist/esm/vega-banner.entry.js +4 -4
  245. package/dist/esm/vega-box.entry.js +7 -7
  246. package/dist/esm/vega-breadcrumb.entry.js +3 -3
  247. package/dist/esm/vega-button-circle.entry.js +9 -9
  248. package/dist/esm/vega-button-group_2.entry.js +18 -11
  249. package/dist/esm/vega-button-link.entry.js +6 -6
  250. package/dist/esm/vega-button.entry.js +24 -8
  251. package/dist/esm/vega-calendar_5.entry.js +13 -13
  252. package/dist/esm/vega-card.entry.js +6 -6
  253. package/dist/esm/vega-carousel.entry.js +7 -7
  254. package/dist/esm/vega-checkbox_2.entry.js +8 -8
  255. package/dist/esm/vega-chip.entry.js +9 -9
  256. package/dist/esm/vega-code-block.entry.js +12 -12
  257. package/dist/esm/vega-color-picker.entry.js +7 -7
  258. package/dist/esm/vega-color-swatch-picker.entry.js +7 -7
  259. package/dist/esm/vega-color-swatch.entry.js +6 -6
  260. package/dist/esm/vega-combo-box.entry.js +13 -13
  261. package/dist/esm/vega-date-picker_2.entry.js +20 -20
  262. package/dist/esm/vega-dialog_2.entry.js +74 -8
  263. package/dist/esm/vega-divider.entry.js +5 -5
  264. package/dist/esm/vega-dropdown_5.entry.js +107 -24
  265. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  266. package/dist/esm/vega-field-label.entry.js +29 -36
  267. package/dist/esm/vega-file-uploader.entry.js +8 -8
  268. package/dist/esm/vega-flag-icon.entry.js +5 -5
  269. package/dist/esm/vega-flex.entry.js +7 -7
  270. package/dist/esm/vega-font.entry.js +6 -6
  271. package/dist/esm/vega-form.entry.js +8 -8
  272. package/dist/esm/vega-grid.entry.js +6 -6
  273. package/dist/esm/vega-icon.entry.js +6 -6
  274. package/dist/esm/vega-image-uploader.entry.js +10 -10
  275. package/dist/esm/vega-input-credit-card.entry.js +10 -10
  276. package/dist/esm/vega-input-numeric.entry.js +10 -10
  277. package/dist/esm/vega-input-passcode.entry.js +9 -9
  278. package/dist/esm/vega-input-phone-number.entry.js +45 -11
  279. package/dist/esm/vega-input-range.entry.js +8 -8
  280. package/dist/esm/vega-input-select.entry.js +28 -11
  281. package/dist/esm/vega-input.entry.js +13 -13
  282. package/dist/esm/vega-item-toggle.entry.js +3 -3
  283. package/dist/esm/vega-left-nav_5.entry.js +12 -12
  284. package/dist/esm/vega-loader-wrapper_2.entry.js +4 -4
  285. package/dist/esm/vega-page-notification_2.entry.js +3 -3
  286. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +2 -2
  287. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +4 -4
  288. package/dist/esm/vega-pagination.entry.js +7 -7
  289. package/dist/esm/vega-popover_2.entry.js +62 -13
  290. package/dist/esm/vega-progress-tracker_2.entry.js +9 -9
  291. package/dist/esm/vega-radio_2.entry.js +11 -11
  292. package/dist/esm/vega-rich-text-content.entry.js +15 -12
  293. package/dist/esm/vega-rich-text-editor_4.entry.js +710 -248
  294. package/dist/esm/vega-rich-text-find-replace-panel.entry.js +6 -6
  295. package/dist/esm/vega-rich-text-special-characters-panel.entry.js +8 -8
  296. package/dist/esm/vega-rich-text-table-properties_3.entry.js +158 -105
  297. package/dist/esm/vega-segment-control.entry.js +3 -3
  298. package/dist/esm/vega-selection-chip_2.entry.js +10 -10
  299. package/dist/esm/vega-selection-tile_2.entry.js +8 -8
  300. package/dist/esm/vega-sidenav_3.entry.js +9 -9
  301. package/dist/esm/vega-signature-capture.entry.js +11 -11
  302. package/dist/esm/vega-stepper.entry.js +6 -6
  303. package/dist/esm/vega-tab-group_2.entry.js +6 -6
  304. package/dist/esm/vega-table_11.entry.js +10 -10
  305. package/dist/esm/vega-textarea.entry.js +6 -6
  306. package/dist/esm/vega-time-picker_2.entry.js +14 -14
  307. package/dist/esm/vega-toggle-switch.entry.js +7 -7
  308. package/dist/esm/vega-tooltip_2.entry.js +8 -8
  309. package/dist/esm/vega.js +14 -14
  310. package/dist/esm/{wait-for-component-did-render-ff7062aa.js → wait-for-component-did-render-9b91a826.js} +1 -1
  311. package/dist/sri/vega-sri-manifest.json +390 -386
  312. package/dist/types/components/vega-button/vega-button.d.ts +2 -0
  313. package/dist/types/components/vega-button-group/types.d.ts +12 -6
  314. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +1 -1
  315. package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-label-announcement-renderer.d.ts +3 -10
  316. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.d.ts +8 -0
  317. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +33 -0
  318. package/dist/types/components/vega-modal/types.d.ts +2 -1
  319. package/dist/types/components/vega-popover/slimmers/renderers/vega-popover-appender-renderer.d.ts +9 -0
  320. package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +6 -0
  321. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/commit-value-strategy.d.ts +13 -0
  322. package/dist/types/components/vega-rich-text-editor/dto/actions/commit-value-action.d.ts +20 -0
  323. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +6 -0
  324. package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +4 -0
  325. package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +6 -0
  326. package/dist/types/components/vega-rich-text-editor/dto/nodes/code-block-node.d.ts +4 -0
  327. package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +6 -0
  328. package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +4 -0
  329. package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +5 -0
  330. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.d.ts +19 -0
  331. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.d.ts +4 -0
  332. package/dist/types/components/vega-rich-text-editor/extensions/line-height/line-height-toolbar-button-renderer.d.ts +14 -1
  333. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.d.ts +2 -2
  334. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.d.ts +31 -1
  335. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-popover-base-renderer.d.ts +91 -0
  336. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.d.ts +46 -0
  337. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.d.ts +58 -0
  338. package/dist/types/components/vega-rich-text-editor/extensions/table/table-selection.d.ts +8 -0
  339. 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
  340. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.d.ts +2 -0
  341. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.d.ts +3 -0
  342. 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
  343. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.d.ts +1 -0
  344. package/dist/types/components/vega-rich-text-editor/extensions/word-count/action-handler-interceptors/prevent-hard-limit-exceed-interceptor.d.ts +38 -0
  345. package/dist/types/components/vega-rich-text-editor/extensions/word-count/type.d.ts +46 -0
  346. package/dist/types/components/vega-rich-text-editor/extensions/word-count/word-count-extension.d.ts +38 -0
  347. package/dist/types/components/vega-rich-text-editor/interface.d.ts +12 -0
  348. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +1 -0
  349. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +11 -1
  350. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/word-count-controller.d.ts +40 -0
  351. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.d.ts +14 -0
  352. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +3 -1
  353. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/toolbar-button-slimmer.abstract.d.ts +3 -2
  354. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +12 -0
  355. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +2 -0
  356. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +4 -0
  357. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/controllers/link-editor-controller.d.ts +68 -0
  358. 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
  359. package/dist/types/helpers/keyboard/keyboard-manager.d.ts +9 -0
  360. package/dist/types/helpers/keyboard/overlay-escape-coordination.d.ts +28 -0
  361. package/dist/types/helpers/slimmers/mutation-observer/aria-attributes-value-mapper.d.ts +1 -1
  362. package/dist/types/helpers/translation/interface.d.ts +16 -1
  363. package/dist/types/polyfill/libphonenumber/as-you-type.d.ts +1 -0
  364. package/dist/types/polyfill/libphonenumber/metadata.d.ts +10 -0
  365. package/dist/types/types/public-api.d.ts +1 -0
  366. package/dist/types/utils/accessibility.d.ts +9 -0
  367. package/dist/vega/index.esm.js +1 -1
  368. package/dist/vega/{p-1a37d63c.entry.js → p-01ca92e6.entry.js} +1 -1
  369. package/dist/vega/{p-840444c9.entry.js → p-02b5d4ac.entry.js} +1 -1
  370. package/dist/vega/{p-d35a31a5.entry.js → p-06a42a9f.entry.js} +1 -1
  371. package/dist/vega/{p-fd23c365.entry.js → p-0cd362f3.entry.js} +1 -1
  372. package/dist/vega/p-0e10798b.entry.js +1 -0
  373. package/dist/vega/{p-fcb6b499.js → p-0eea1ca8.js} +1 -1
  374. package/dist/vega/{p-ccbed811.entry.js → p-0f344e02.entry.js} +1 -1
  375. package/dist/vega/{p-66a785d0.entry.js → p-23db0a92.entry.js} +1 -1
  376. package/dist/vega/{p-c8ad7207.entry.js → p-284a8828.entry.js} +1 -1
  377. package/dist/vega/{p-d4d90ce2.entry.js → p-2b26e182.entry.js} +1 -1
  378. package/dist/vega/{p-6659c910.entry.js → p-2c8dc0d2.entry.js} +1 -1
  379. package/dist/vega/{p-526e3634.js → p-36a57431.js} +1 -1
  380. package/dist/vega/{p-9c9b0629.js → p-379736e2.js} +1 -1
  381. package/dist/vega/{p-df63c2fb.entry.js → p-3abb793c.entry.js} +1 -1
  382. package/dist/vega/{p-47a48329.entry.js → p-3d6a43df.entry.js} +1 -1
  383. package/dist/vega/{p-0ca3b4bf.entry.js → p-3f2a4b34.entry.js} +1 -1
  384. package/dist/vega/p-401c6764.js +1 -0
  385. package/dist/vega/{p-ce82d6bb.entry.js → p-411cadbc.entry.js} +1 -1
  386. package/dist/vega/{p-f0a0fc77.entry.js → p-46f22f6c.entry.js} +1 -1
  387. package/dist/vega/{p-f9a3805d.js → p-493108d5.js} +1 -1
  388. package/dist/vega/{p-77fb3971.entry.js → p-49de5559.entry.js} +1 -1
  389. package/dist/vega/p-4b35c748.js +1 -0
  390. package/dist/vega/{p-d62e618a.entry.js → p-4d1896e0.entry.js} +1 -1
  391. package/dist/vega/{p-55dc3053.entry.js → p-4e23e56c.entry.js} +1 -1
  392. package/dist/vega/{p-aa914dbd.entry.js → p-5006404e.entry.js} +1 -1
  393. package/dist/vega/{p-944e284d.entry.js → p-5789690b.entry.js} +1 -1
  394. package/dist/vega/{p-4f6aaac5.entry.js → p-594cb986.entry.js} +1 -1
  395. package/dist/vega/p-5a086e93.js +1 -0
  396. package/dist/vega/p-5b9b1631.entry.js +1 -0
  397. package/dist/vega/{p-c41a2d4a.js → p-5c3649f9.js} +1 -1
  398. package/dist/vega/{p-fb9475ab.entry.js → p-5d9be870.entry.js} +1 -1
  399. package/dist/vega/p-5f377954.js +1 -1
  400. package/dist/vega/{p-2044eba9.js → p-60a74fb7.js} +1 -1
  401. package/dist/vega/{p-5e9e04f3.entry.js → p-61ed7268.entry.js} +1 -1
  402. package/dist/vega/p-6336d446.entry.js +1 -0
  403. package/dist/vega/{p-b3c4943b.js → p-638b6a7d.js} +1 -1
  404. package/dist/vega/{p-bdb5180c.js → p-68744e7e.js} +1 -1
  405. package/dist/vega/p-6e9e7131.js +1 -0
  406. package/dist/vega/{p-014cd411.js → p-6eedbc4f.js} +1 -1
  407. package/dist/vega/{p-c348eaf5.js → p-6fd8f14b.js} +1 -1
  408. package/dist/vega/{p-49d7cfed.entry.js → p-7469d0d1.entry.js} +1 -1
  409. package/dist/vega/p-74b20563.entry.js +1 -0
  410. package/dist/vega/{p-2f89ee14.entry.js → p-76999ea1.entry.js} +1 -1
  411. package/dist/vega/p-77bcdd35.js +1 -0
  412. package/dist/vega/{p-a4360b7e.entry.js → p-79b49e8d.entry.js} +1 -1
  413. package/dist/vega/{p-2af1d8b8.entry.js → p-7a03ef96.entry.js} +1 -1
  414. package/dist/vega/{p-aa433430.entry.js → p-7ae4cf82.entry.js} +1 -1
  415. package/dist/vega/{p-f9bfee81.entry.js → p-7cc8855d.entry.js} +1 -1
  416. package/dist/vega/{p-3c8421d5.entry.js → p-7ddc0bec.entry.js} +1 -1
  417. package/dist/vega/{p-9c5289dc.entry.js → p-7e22610b.entry.js} +1 -1
  418. package/dist/vega/p-7f395622.entry.js +1 -0
  419. package/dist/vega/{p-860e76f5.entry.js → p-816b5fd2.entry.js} +1 -1
  420. package/dist/vega/p-8387896e.js +1 -0
  421. package/dist/vega/{p-7754b10f.entry.js → p-844ad6aa.entry.js} +1 -1
  422. package/dist/vega/p-853a05eb.js +1 -0
  423. package/dist/vega/p-85de755f.js +1 -0
  424. package/dist/vega/p-8663314e.js +1 -0
  425. package/dist/vega/{p-66728dd4.entry.js → p-86fb46d2.entry.js} +1 -1
  426. package/dist/vega/p-8cfdd0e8.entry.js +1 -0
  427. package/dist/vega/{p-444e24c6.js → p-8ebe30a8.js} +1 -1
  428. package/dist/vega/p-8f00dfe6.js +1 -0
  429. package/dist/vega/{p-66647244.js → p-8fc0a820.js} +1 -1
  430. package/dist/vega/{p-8f3b93db.js → p-9034f709.js} +1 -1
  431. package/dist/vega/{p-691bdc20.js → p-941a83db.js} +1 -1
  432. package/dist/vega/{p-5110c84f.js → p-96c090c4.js} +1 -1
  433. package/dist/vega/{p-50eda925.js → p-9ba2fdff.js} +1 -1
  434. package/dist/vega/p-9efa5d76.js +1 -0
  435. package/dist/vega/{p-cede3535.js → p-a306bb39.js} +1 -1
  436. package/dist/vega/{p-db11134b.entry.js → p-a48468b5.entry.js} +1 -1
  437. package/dist/vega/{p-22edd3cc.js → p-a488447f.js} +1 -1
  438. package/dist/vega/{p-6493f13a.entry.js → p-a647c856.entry.js} +1 -1
  439. package/dist/vega/{p-44999c88.entry.js → p-a6a89f09.entry.js} +1 -1
  440. package/dist/vega/p-a92cd703.js +1 -0
  441. package/dist/vega/p-a93b3aed.js +1 -0
  442. package/dist/vega/{p-528748fa.js → p-aa135628.js} +1 -1
  443. package/dist/vega/{p-3c152bad.entry.js → p-aaaf21eb.entry.js} +1 -1
  444. package/dist/vega/{p-66fe8b4e.entry.js → p-ab253867.entry.js} +1 -1
  445. package/dist/vega/{p-a1f220ca.js → p-ab9d53e9.js} +1 -1
  446. package/dist/vega/p-ad367b48.entry.js +1 -0
  447. package/dist/vega/{p-e18c0656.entry.js → p-af0cfea0.entry.js} +1 -1
  448. package/dist/vega/p-b07f587a.entry.js +1 -0
  449. package/dist/vega/{p-f13b39d8.js → p-b2a4314a.js} +1 -1
  450. package/dist/vega/p-b52d7724.js +3 -0
  451. package/dist/vega/{p-23c1f378.entry.js → p-b97ed9f7.entry.js} +1 -1
  452. package/dist/vega/{p-4022412e.entry.js → p-bc0e5598.entry.js} +1 -1
  453. package/dist/vega/p-bc119e75.entry.js +1 -0
  454. package/dist/vega/{p-024db952.entry.js → p-bedb575c.entry.js} +1 -1
  455. package/dist/vega/{p-d6023dc0.entry.js → p-bfe5dff7.entry.js} +1 -1
  456. package/dist/vega/{p-328ebbdb.entry.js → p-c032f626.entry.js} +1 -1
  457. package/dist/vega/{p-dd0bd78b.js → p-c34f4cbc.js} +1 -1
  458. package/dist/vega/{p-b12de1bf.entry.js → p-c422ee02.entry.js} +1 -1
  459. package/dist/vega/{p-e1c82ca9.js → p-c576e846.js} +1 -1
  460. package/dist/vega/{p-433b1395.entry.js → p-c7d46740.entry.js} +1 -1
  461. package/dist/vega/{p-f2384411.entry.js → p-cd04b149.entry.js} +1 -1
  462. package/dist/vega/{p-5147c30d.entry.js → p-cd0a108b.entry.js} +1 -1
  463. package/dist/vega/{p-3a230d4b.entry.js → p-d1bb6e7a.entry.js} +1 -1
  464. package/dist/vega/{p-200c8914.entry.js → p-d340ee3d.entry.js} +1 -1
  465. package/dist/vega/p-d897acd5.js +1 -0
  466. package/dist/vega/p-debf9e06.entry.js +1 -0
  467. package/dist/vega/{p-3c559c8b.js → p-e0a51e49.js} +1 -1
  468. package/dist/vega/{p-ba6881da.entry.js → p-e11c6ec4.entry.js} +1 -1
  469. package/dist/vega/{p-fa5cd8b1.js → p-e14323f3.js} +1 -1
  470. package/dist/vega/{p-a7517760.entry.js → p-e5abc288.entry.js} +1 -1
  471. package/dist/vega/{p-7977352b.entry.js → p-ea1a0046.entry.js} +1 -1
  472. package/dist/vega/{p-867cc602.entry.js → p-edd7aa92.entry.js} +1 -1
  473. package/dist/vega/p-ef1bbf14.js +1 -0
  474. package/dist/vega/{p-bd7725f7.entry.js → p-efc08027.entry.js} +1 -1
  475. package/dist/vega/{p-52878ea9.js → p-f485448a.js} +1 -1
  476. package/dist/vega/{p-4afd6715.entry.js → p-f8b2dbb9.entry.js} +1 -1
  477. package/dist/vega/{p-cf4b3d40.entry.js → p-f8bf379c.entry.js} +1 -1
  478. package/dist/vega/{p-4370b954.entry.js → p-f902305d.entry.js} +1 -1
  479. package/dist/vega/p-fe985b52.js +1 -0
  480. package/dist/vega/vega.esm.js +1 -1
  481. package/package.json +1 -1
  482. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-keyboard-conttroller.js +0 -85
  483. package/dist/vega/p-0b2c4c0b.js +0 -1
  484. package/dist/vega/p-1fa22fda.js +0 -1
  485. package/dist/vega/p-2529820e.js +0 -1
  486. package/dist/vega/p-35628af4.js +0 -1
  487. package/dist/vega/p-3a620268.js +0 -1
  488. package/dist/vega/p-4473d8b1.js +0 -3
  489. package/dist/vega/p-5af312f8.js +0 -1
  490. package/dist/vega/p-67e88cd7.entry.js +0 -1
  491. package/dist/vega/p-67eaf77e.js +0 -1
  492. package/dist/vega/p-6d6b4495.entry.js +0 -1
  493. package/dist/vega/p-7b133734.entry.js +0 -1
  494. package/dist/vega/p-7b84a943.entry.js +0 -1
  495. package/dist/vega/p-83ad8988.js +0 -1
  496. package/dist/vega/p-8d2a9012.js +0 -1
  497. package/dist/vega/p-8d4be607.js +0 -1
  498. package/dist/vega/p-8d77c7cf.js +0 -1
  499. package/dist/vega/p-94b54a95.js +0 -1
  500. package/dist/vega/p-9c2b3279.js +0 -1
  501. package/dist/vega/p-9c9ff871.entry.js +0 -1
  502. package/dist/vega/p-9d90e271.entry.js +0 -1
  503. package/dist/vega/p-c8fb3aac.entry.js +0 -1
  504. package/dist/vega/p-daba4af1.js +0 -1
  505. package/dist/vega/p-ded1ecc1.entry.js +0 -1
  506. package/dist/vega/p-e1a65e06.entry.js +0 -1
  507. package/dist/vega/p-e469ba27.entry.js +0 -1
  508. package/dist/vega/p-e4c5cb4f.js +0 -1
  509. /package/dist/types/components/vega-dropdown/slimmers/controllers/{vega-dropdown-keyboard-conttroller.d.ts → vega-dropdown-keyboard-controller.d.ts} +0 -0
@@ -6,7 +6,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { Fragment, h } from '@stencil/core';
8
8
  import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
9
- import { createEnterKeyHandlerToTriggerClick } from '../../../../../utils/accessibility';
9
+ import { createActivationKeyHandlerToTriggerClick } from '../../../../../utils/accessibility';
10
10
  import { htmlSanitizer, labelSanitizeStrategy, plainTextSanitizeStrategy, } from '../../../../../utils/sanitize';
11
11
  export class VegaDropdownItemRenderer extends VegaSlimmer {
12
12
  constructor() {
@@ -26,7 +26,7 @@ export class VegaDropdownItemRenderer extends VegaSlimmer {
26
26
  'danger': this.danger && this.selectType === 'none',
27
27
  }, tabIndex: this.disabled ? -1 : 0,
28
28
  /* eslint-disable-next-line react/jsx-no-bind */
29
- onClick: this.disabled ? undefined : (e) => this.onSelect(e), onKeyDown: createEnterKeyHandlerToTriggerClick({ preventDefault: true }), style: this.height > 0 && {
29
+ onClick: this.disabled ? undefined : (e) => this.onSelect(e), onKeyDown: createActivationKeyHandlerToTriggerClick({ preventDefault: true }), style: this.height > 0 && {
30
30
  height: `${this.height}px`,
31
31
  boxSizing: 'border-box',
32
32
  overflow: 'hidden',
@@ -65,7 +65,8 @@
65
65
  background-color: rgba(var(--v-bg-quaternary, 241, 248, 251, 1));
66
66
  }
67
67
 
68
- :host li:not(.vega-dropdown-item-disabled):focus {
68
+ :host li:not(.vega-dropdown-item-disabled):focus,
69
+ :host(:focus) li:not(.vega-dropdown-item-disabled) {
69
70
  background-color: rgba(var(--v-bg-quaternary, 241, 248, 251, 1));
70
71
  outline: 0;
71
72
  }
@@ -13,7 +13,7 @@ import { VegaDropdownCreateRenderer } from './slimmers/renderers/vega-dropdown-c
13
13
  import { VegaDropdownListRenderer } from './slimmers/renderers/vega-dropdown-list-renderer';
14
14
  import { VegaDropdownItemLevelRenderer } from './slimmers/renderers/vega-dropdown-item-level-renderer';
15
15
  import { VegaDropdownSearchRenderer } from './slimmers/renderers/vega-dropdown-search-renderer';
16
- import { VegaDropdownKeyboardController } from './slimmers/controllers/vega-dropdown-keyboard-conttroller';
16
+ import { VegaDropdownKeyboardController } from './slimmers/controllers/vega-dropdown-keyboard-controller';
17
17
  import { VegaDropdownAppenderController } from './slimmers/controllers/vega-dropdown-appender-controller';
18
18
  import { VegaDropdownGroupLevelRenderer } from './slimmers/renderers/vega-dropdown-group-level-renderer';
19
19
  import { VegaDropdownSearchController } from './slimmers/controllers/vega-dropdown-search-controller';
@@ -4,52 +4,43 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
4
  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;
5
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import { h } from '@stencil/core';
8
7
  import { VegaSlimmer, MapToComponentField } from 'vega-slimmer/core';
9
8
  /*
10
- * Screen-reader-only announcement.
9
+ * Builds the visually-hidden state suffix appended to the field label for AT.
11
10
  *
12
- * VoiceOver cannot reliably derive the full field state from the
13
- * visible label alone because:
14
- * - "Required" is represented visually by a decorative "*" — AT
15
- * users would hear the raw asterisk character, not a meaningful word.
11
+ * Screen-reader users cannot derive the full field state from the visible
12
+ * label alone because:
13
+ * - "Required" is represented visually by a decorative "*" — AT users
14
+ * would otherwise hear the raw asterisk character.
16
15
  * - "Disabled" has no visible text marker at all.
17
16
  *
18
- * This span provides a single, predictable AT announcement that
19
- * concatenates the label text with the plain-English states
20
- * (e.g. "Email, Required, Disabled"), ensuring VoiceOver reads
21
- * exactly what the user needs to know.
22
- *
23
- * The visible <label> below is hidden from AT (`aria-hidden="true"`)
24
- * to prevent duplicate announcements and to stop VoiceOver from
25
- * vocalising the decorative "*" as part of the label text.
17
+ * The suffix (e.g. ", Required, Disabled") is rendered as a real, visually
18
+ * hidden text node INSIDE the visible label span (not as an `aria-label`).
19
+ * A real text node reads consistently across Safari/Chrome/Firefox and,
20
+ * unlike an `aria-label` on a container with hidden children, does not make
21
+ * Chrome/Firefox announce an "empty group".
26
22
  */
27
23
  export class VegaFieldLabelLabelAnnouncementRenderer extends VegaSlimmer {
28
24
  /**
29
- * Render a label announcement.
30
- *
31
- * @returns {Nullable<HTMLElement>}
32
- */
33
- render() {
34
- return this.label && h("span", { class: "aria-announcement" }, this.generateAnnouncement());
35
- }
36
- /**
37
- * Generate a screen-reader-friendly announcement string that concatenates the label text with the field's required/optional and disabled states.
25
+ * Build the visually-hidden state suffix (the part after the label text).
38
26
  *
39
- * @returns {string} The generated announcement string.
27
+ * @returns {string} e.g. ", Required, Disabled", or '' when there is no state to announce.
40
28
  */
41
- generateAnnouncement() {
42
- let announcement = this.label;
29
+ getStateSuffix() {
30
+ if (!this.label) {
31
+ return '';
32
+ }
33
+ let suffix = '';
43
34
  if (this.isFieldRequired) {
44
- announcement += `, ${this.translationSlimmer.t('Required')}`;
35
+ suffix += `, ${this.translationSlimmer.t('Required')}`;
45
36
  }
46
37
  else if (this.optional) {
47
- announcement += `, ${this.translationSlimmer.t('Optional')}`;
38
+ suffix += `, ${this.translationSlimmer.t('Optional')}`;
48
39
  }
49
40
  if (this.disabled) {
50
- announcement += `, ${this.translationSlimmer.t('Disabled')}`;
41
+ suffix += `, ${this.translationSlimmer.t('Disabled')}`;
51
42
  }
52
- return announcement;
43
+ return suffix;
53
44
  }
54
45
  }
55
46
  __decorate([
@@ -101,19 +101,21 @@ export class VegaFieldLabel {
101
101
  render() {
102
102
  var _a;
103
103
  const shouldCenterAlign = !!((_a = this.suffixButtonConfig) === null || _a === void 0 ? void 0 : _a.centerAlign);
104
+ const stateSuffix = this.labelAnnouncementRenderer.getStateSuffix();
104
105
  return sanitizeVegaComponent(h(Host, { class: {
105
106
  'hidden': this.label === '',
106
107
  'disabled': this.disabled,
107
108
  'center-align': shouldCenterAlign,
108
109
  }, onClick: this.handleClick },
109
- this.labelAnnouncementRenderer.render(),
110
- h("label", { "aria-hidden": "true", part: "container" },
111
- h("span", { class: "vega-field-label", part: "label" }, this.label),
112
- !this.isFieldRequired && this.optional && (h("span", { class: "optional" },
110
+ h("label", { part: "container" },
111
+ h("span", { class: "vega-field-label", part: "label", role: "text" },
112
+ this.label,
113
+ stateSuffix && h("span", { class: "aria-announcement" }, stateSuffix)),
114
+ !this.isFieldRequired && this.optional && (h("span", { class: "optional", "aria-hidden": "true" },
113
115
  "(",
114
116
  this.translationSlimmer.t('Optional'),
115
117
  ")")),
116
- h("span", { class: {
118
+ h("span", { "aria-hidden": "true", class: {
117
119
  'vega-field-label-required': true,
118
120
  'hidden': !this.isFieldRequired,
119
121
  } }, "*")),
@@ -6,7 +6,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { h } from '@stencil/core';
8
8
  import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
9
- import { createEnterKeyHandlerToTriggerClick } from '../../../../utils/accessibility';
10
9
  import chevronUp from '../../../../global/icons/chevron-up';
11
10
  import chevronDown from '../../../../global/icons/chevron-down';
12
11
  import { VegaInternalIconManager } from '../../../../helpers/icon/internal-icon-manager';
@@ -16,11 +15,29 @@ export class VegaInputSelectDropdownRenderer extends VegaSlimmer {
16
15
  constructor() {
17
16
  super(...arguments);
18
17
  this.renderContainer = () => {
19
- return (h("div", { role: 'button', class: "vega-input-select-container", ref: (ref) => (this.inputSelectContainer = ref), tabIndex: 0, "aria-disabled": `${this.disabled}`, onKeyDown: createEnterKeyHandlerToTriggerClick(), part: "select-container" },
18
+ return (h("div", { role: 'button', class: "vega-input-select-container", ref: (ref) => (this.inputSelectContainer = ref), tabIndex: 0, "aria-disabled": `${this.disabled}`, onKeyDown: this.handleTriggerKeyDown, part: "select-container" },
20
19
  this.renderPrefixIcon(),
21
20
  this.renderSelectContainer(),
22
21
  this.renderToggleIcon()));
23
22
  };
23
+ /**
24
+ * VD-9605: open/close the dropdown on both Enter and Space, matching native button
25
+ * semantics. Space is preventDefaulted so activating the trigger does not scroll the page.
26
+ *
27
+ * @param {KeyboardEvent} e - keydown event on the select trigger.
28
+ * @returns {void}
29
+ */
30
+ this.handleTriggerKeyDown = (e) => {
31
+ if (e.key === 'Enter' || e.key === ' ') {
32
+ e.preventDefault();
33
+ }
34
+ if (this.disabled) {
35
+ return;
36
+ }
37
+ if (e.key === 'Enter' || e.key === ' ') {
38
+ e.currentTarget.dispatchEvent(new MouseEvent('click', { bubbles: true, cancelable: true, view: window }));
39
+ }
40
+ };
24
41
  this.renderPrefixIcon = () => {
25
42
  return this.vegaInputSelectPrefixIconRenderer.render();
26
43
  };
@@ -8,6 +8,7 @@ import { createDynamicSlimmer, InjectVegaSlimmer, MapToComponentField, MapToComp
8
8
  import { findParent } from '../../../../utils/ui';
9
9
  import { VegaModalOpenState } from '../models/vega-modal-open-state';
10
10
  import { AriaDialogFocusableTrapSlimmer } from '../../../../helpers/slimmers/aria-dialog-focusable-trap-slimmer';
11
+ import { isOverlayHandledEscape, markOverlayHandledEscape, } from '../../../../helpers/keyboard/overlay-escape-coordination';
11
12
  /**
12
13
  * Modal open state controller
13
14
  */
@@ -39,11 +40,73 @@ export class VegaModalOpenStateController extends VegaSlimmer {
39
40
  this.close('close-button');
40
41
  }
41
42
  };
43
+ /**
44
+ * Capture-phase document `keydown` listener for Escape. When this modal is
45
+ * the topmost open vega-modal we close it and stop propagation so that
46
+ * ancestor focus traps (e.g. a Bootstrap modal which closes itself on
47
+ * Escape via its own keydown listener attached to the modal element) do
48
+ * not also react to the same key press and close themselves.
49
+ *
50
+ * If an inner overlay (vega-dropdown / vega-popover) already handled this
51
+ * Escape press, it calls `markOverlayHandledEscape(event)` from its own
52
+ * capture-phase listener. `isOverlayHandledEscape` detects this so this
53
+ * modal does not also close — meaning Escape closes only the innermost
54
+ * overlay.
55
+ *
56
+ * @param {KeyboardEvent} event - The keydown event.
57
+ */
58
+ this.handleEscapeCapture = (event) => {
59
+ if (event.code !== 'Escape') {
60
+ return;
61
+ }
62
+ if (!this.openState.isOpen) {
63
+ return;
64
+ }
65
+ if (this.openedModalStackController.peek() !== this.host) {
66
+ return;
67
+ }
68
+ // If an inner overlay (vega-dropdown / vega-popover) already handled
69
+ // this Escape press in its own capture-phase listener, skip closing the
70
+ // modal — Escape should close only the innermost overlay.
71
+ if (isOverlayHandledEscape(event)) {
72
+ return;
73
+ }
74
+ // Stop the event before any descendant or ancestor focus-trap container
75
+ // (e.g. a Bootstrap modal which closes itself on Escape, or an outer
76
+ // vega-modal) reacts to it. Mark the event so an outer vega-modal in the
77
+ // same document-capture phase does not also close on the same key press.
78
+ event.stopPropagation();
79
+ event.preventDefault();
80
+ markOverlayHandledEscape(event);
81
+ this.close('escape');
82
+ };
83
+ }
84
+ /**
85
+ * Component lifecycle - [connectedCallback]
86
+ *
87
+ * Capture-phase Escape listener is registered here (rather than
88
+ * `componentDidLoad`) so it is re-added whenever the modal element is moved
89
+ * in the DOM (e.g. RTE's Insert-via-URL modal is moved to `host.parentElement`
90
+ * before being shown — that triggers disconnect+connect but does not re-fire
91
+ * `componentDidLoad`).
92
+ *
93
+ * Capture-phase Escape listener so ancestor focus-trap containers (e.g. a
94
+ * Bootstrap modal whose own keydown handler is attached to the modal
95
+ * element) do not also react to the same Escape press while a vega-modal
96
+ * is open inside them. Capture phase fires before any descendant bubble
97
+ * listener; calling `stopPropagation` then prevents those listeners from
98
+ * running. We only intervene when this is the topmost open vega-modal.
99
+ */
100
+ connectedCallback() {
101
+ // eslint-disable-next-line no-restricted-globals
102
+ document.addEventListener('keydown', this.handleEscapeCapture, true);
42
103
  }
43
104
  /**
44
105
  * Component lifecycle - [disconnectedCallback]
45
106
  */
46
107
  disconnectedCallback() {
108
+ // eslint-disable-next-line no-restricted-globals
109
+ document.removeEventListener('keydown', this.handleEscapeCapture, true);
47
110
  this.close('remove-node');
48
111
  }
49
112
  /**
@@ -325,6 +388,9 @@ __decorate([
325
388
  __decorate([
326
389
  InjectVegaSlimmer()
327
390
  ], VegaModalOpenStateController.prototype, "ariaDialogFocusableTrapSlimmer", void 0);
391
+ __decorate([
392
+ MapToComponentMethod('connectedCallback')
393
+ ], VegaModalOpenStateController.prototype, "connectedCallback", null);
328
394
  __decorate([
329
395
  MapToComponentMethod('disconnectedCallback')
330
396
  ], VegaModalOpenStateController.prototype, "disconnectedCallback", null);
@@ -25,6 +25,23 @@ export class VegaPopoverAppenderRenderer extends VegaSlimmer {
25
25
  getPopoverContentBox() {
26
26
  return this.popoverContentBox;
27
27
  }
28
+ /**
29
+ * Whether an inner overlay (e.g. an open `vega-input-select`/`vega-dropdown`
30
+ * or a nested popover) is currently displayed inside this popover's content
31
+ * box. Such overlays own the Escape key, so the popover must not close while
32
+ * one of them is open.
33
+ *
34
+ * @returns {boolean} True when a visible nested overlay content box exists.
35
+ */
36
+ hasOpenNestedOverlay() {
37
+ if (!this.popoverContentBox) {
38
+ return false;
39
+ }
40
+ const nested = this.popoverContentBox.querySelectorAll('vega-dropdown-content-box, vega-popover-content-box');
41
+ return Array.from(nested).some(
42
+ // eslint-disable-next-line spellcheck/spell-checker
43
+ (box) => box.getClientRects().length > 0);
44
+ }
28
45
  /**
29
46
  * The `render` function returns a JSX element for a `vega-popover-content-box` component with a ref assigned to `this.popoverContentBox`.
30
47
  *
@@ -13,6 +13,7 @@ import { VegaPopoverShow, VegaPopoverHide } from '../../helpers/event-manager/ev
13
13
  import { VegaPopoverAppenderRenderer } from './slimmers/renderers/vega-popover-appender-renderer';
14
14
  import { VegaPopoverAppenderController } from './slimmers/controllers/vega-popover-appender-controller';
15
15
  import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/component-usage-runtime-metrics';
16
+ import { isOverlayHandledEscape, markOverlayHandledEscape, } from '../../helpers/keyboard/overlay-escape-coordination';
16
17
  /**
17
18
  * A Popover is an overlaid window that displays rich content, and is visually tethered to the element that triggers it.
18
19
  *
@@ -505,8 +506,39 @@ __decorate([
505
506
  {
506
507
  keyCode: 'Escape',
507
508
  activeElementInScope: [host.appenderRenderer.getPopoverContentBox()],
508
- callback: host.hidePopover,
509
+ // Capture-phase + stopPropagation so ancestor focus-trap containers
510
+ // (e.g. a Bootstrap modal which closes itself on Escape via its own
511
+ // keydown listener attached to the modal element) do not also react
512
+ // to the same key press and close themselves before/instead of the
513
+ // popover. The popover's own close logic still runs here.
514
+ //
515
+ // `stopPropagation` does NOT block other document-level capture
516
+ // listeners (e.g. vega-modal's Escape handler) on the same target,
517
+ // so we also tag the event with a marker that vega-modal checks to
518
+ // avoid closing when the popover already handled this Escape press.
519
+ // We deliberately do NOT use `stopImmediatePropagation` here because
520
+ // other document listeners on the same target (e.g. focus-restore
521
+ // observers in toolbar slimmers) still need to observe the key.
522
+ // eslint-disable-next-line jsdoc/require-jsdoc
523
+ callback: /* istanbul ignore next */ (event) => {
524
+ // An inner overlay (e.g. an open vega-input-select / vega-dropdown
525
+ // or a nested popover) owns this Escape press. Skip closing so it
526
+ // dismisses only the innermost overlay, not the whole popover. This
527
+ // is order-independent within the shared KeyboardManager loop: if
528
+ // the inner overlay's handler ran first it marked the event; if it
529
+ // runs after this one, its still-open content box is detectable
530
+ // inside our content box.
531
+ if (isOverlayHandledEscape(event) || host.appenderRenderer.hasOpenNestedOverlay()) {
532
+ return;
533
+ }
534
+ if (host.isPopoverShow) {
535
+ event.stopPropagation();
536
+ markOverlayHandledEscape(event);
537
+ }
538
+ host.hidePopover();
539
+ },
509
540
  eventName: 'keydown',
541
+ capture: true,
510
542
  preventDefault: true,
511
543
  },
512
544
  {
@@ -43,7 +43,10 @@ export class VegaRichTextContentRenderer extends VegaSlimmer {
43
43
  }
44
44
  renderRichTextContent() {
45
45
  const showPlaceholder = this.shouldShowPlaceholder();
46
- return (h("div", { ref: (el) => (this.richTextContentRef = el), class: { 'showPlaceholder': showPlaceholder, 'rich-text-content': true }, "data-placeholder": this.placeholder, contenteditable: this.contentEditable }, this.renderContent()));
46
+ return (h("div", { ref: (el) => (this.richTextContentRef = el), class: { 'showPlaceholder': showPlaceholder, 'rich-text-content': true }, "data-placeholder": this.placeholder, contenteditable: this.contentEditable, role: "textbox", "aria-multiline": "true", "aria-disabled": this.contentEditable ? undefined : 'true',
47
+ // When disabled the element is not contenteditable, so it needs an explicit
48
+ // tabindex to remain a focus stop and let AT announce its disabled state.
49
+ tabindex: this.contentEditable ? undefined : '0' }, this.renderContent()));
47
50
  }
48
51
  renderContent() {
49
52
  var _a;
@@ -32,6 +32,14 @@ export const RTE_TEXT_COLORS = [
32
32
  },
33
33
  ];
34
34
  export const ZERO_WIDTH_SPACE = '\u200b';
35
+ // Identifies the input source that triggered a value flush.
36
+ export var RTEUpdateSource;
37
+ (function (RTEUpdateSource) {
38
+ RTEUpdateSource["Default"] = "default";
39
+ RTEUpdateSource["Composition"] = "composition";
40
+ })(RTEUpdateSource || (RTEUpdateSource = {}));
41
+ // Event property key used to carry the update source across the synthetic beforeinput event.
42
+ export const RTE_UPDATE_SOURCE_KEY = '__updateSource';
35
43
  export const VegaRTEDefaultTextStyleItems = [
36
44
  { key: 'title' },
37
45
  { key: 'subtitle' },
@@ -94,3 +102,4 @@ export const RTE_PASTE_MODE_DATA_TYPE = 'application/x-vega-rte-paste-mode';
94
102
  * originated from Microsoft Word.
95
103
  */
96
104
  export const RTE_PASTE_MODE_WORD = 'word';
105
+ export const RTE_WORD_COUNT_KEY = 'rte-word-count';
@@ -0,0 +1,13 @@
1
+ import { ActionHandleStrategy } from '../action-handle-strategy.abstract';
2
+ /**
3
+ * Default commit strategy — the candidate becomes the committed value. Rejection
4
+ * is handled exclusively by interceptors that veto the commit by not executing.
5
+ */
6
+ export class CommitValueStrategy extends ActionHandleStrategy {
7
+ /**
8
+ * @inheritDoc
9
+ */
10
+ handleAction(action) {
11
+ return action.candidate;
12
+ }
13
+ }
@@ -0,0 +1,20 @@
1
+ import { ModifyContentAction } from './modify-content-action.abstract';
2
+ /**
3
+ * Action type discriminator. Plain string constant — intentionally NOT added to
4
+ * {@link ModifyContentActionType} enum to keep the commit-validation flow self-contained.
5
+ */
6
+ export const COMMIT_VALUE = 'COMMIT_VALUE';
7
+ /**
8
+ * Dispatched before the editor commits a candidate value. The default strategy
9
+ * commits the candidate as-is; interceptors are the only place a commit is vetoed.
10
+ */
11
+ export class CommitValueAction extends ModifyContentAction {
12
+ constructor(candidate, previous, host) {
13
+ super();
14
+ this.candidate = candidate;
15
+ this.previous = previous;
16
+ this.host = host;
17
+ this.isFlushable = false;
18
+ this.type = COMMIT_VALUE;
19
+ }
20
+ }
@@ -183,6 +183,17 @@ export class RTEBlock {
183
183
  }
184
184
  return firstItem;
185
185
  }
186
+ /**
187
+ * Get the plain text content of the block, used for character counting.
188
+ *
189
+ * @returns {string} The concatenated plain text of all child nodes and blocks.
190
+ */
191
+ getPlainText() {
192
+ var _a;
193
+ return ((_a = this.children) !== null && _a !== void 0 ? _a : [])
194
+ .map((child) => child.getPlainText())
195
+ .join('');
196
+ }
186
197
  /**
187
198
  * Check if the block is a list item block
188
199
  *
@@ -103,6 +103,16 @@ export class RTEListItemBlock extends RTETextBlock {
103
103
  }
104
104
  return super.getLastNode();
105
105
  }
106
+ /**
107
+ * @inheritDoc
108
+ */
109
+ getPlainText() {
110
+ var _a;
111
+ const nestListText = ((_a = this.nestList) !== null && _a !== void 0 ? _a : [])
112
+ .map((list) => list.getPlainText())
113
+ .join('');
114
+ return super.getPlainText() + nestListText;
115
+ }
106
116
  /**
107
117
  * Create a new list item block.
108
118
  *
@@ -24,6 +24,8 @@ import { LogUtility } from '../../../utils/log';
24
24
  import { HTMLContentCleaner } from '../slimmers/controllers/html-cleaner';
25
25
  import { RTEFilterStylesStrategyRegistry } from './filter-styles-strategies/filter-styles-strategy-registry';
26
26
  import { DeleteSelectedContentStrategy } from './action-handle-strategies/modify-content-strategies/delete-selected-content-strategy';
27
+ import { CommitValueStrategy } from './action-handle-strategies/modify-content-strategies/commit-value-strategy';
28
+ import { COMMIT_VALUE } from './actions/commit-value-action';
27
29
  import { ReplaceNestListAction } from './actions/replace-nest-list-action';
28
30
  /**
29
31
  * Class representing the content state of the rich text editor.
@@ -189,6 +191,14 @@ export class VegaRTEContent {
189
191
  const lastBlock = this.children[this.children.length - 1];
190
192
  return lastBlock.getLastNode();
191
193
  }
194
+ /**
195
+ * Get the plain text content of the whole document, used for character counting.
196
+ *
197
+ * @returns {string} The concatenated plain text of all top-level blocks.
198
+ */
199
+ getPlainText() {
200
+ return this.children.map((block) => block.getPlainText()).join('');
201
+ }
192
202
  /**
193
203
  * Convert text to list.
194
204
  *
@@ -267,6 +277,7 @@ export class VegaRTEContent {
267
277
  ActionHandleStrategyRegistry.register(ModifyContentActionType.TRANSFORM_TO_CODE_BLOCK, VegaRTEContent.name, new BlockTransformToCodeBlockStrategy());
268
278
  ActionHandleStrategyRegistry.register(ModifyContentActionType.UPDATE_CURSOR_POSITION, VegaRTEContent.name, new UpdateCursorPositionStrategy());
269
279
  ActionHandleStrategyRegistry.register(ModifyContentActionType.DELETE_SELECTED_CONTENT, VegaRTEContent.name, new DeleteSelectedContentStrategy());
280
+ ActionHandleStrategyRegistry.register(COMMIT_VALUE, VegaRTEContent.name, new CommitValueStrategy());
270
281
  })();
271
282
  /** Minimize-safe type discriminator for VegaRTEContent. */
272
283
  VegaRTEContent.dtoName = 'VegaRTEContent';
@@ -32,6 +32,12 @@ export class RTECodeBlockNode extends RTEDecoratorNode {
32
32
  toJSON() {
33
33
  return { id: this.id, type: 'text', text: this.text, language: this.language };
34
34
  }
35
+ /**
36
+ * @inheritDoc
37
+ */
38
+ getPlainText() {
39
+ return this.text;
40
+ }
35
41
  /**
36
42
  * @inheritDoc
37
43
  */
@@ -134,6 +134,14 @@ export class RTENode {
134
134
  isTextNode() {
135
135
  return false;
136
136
  }
137
+ /**
138
+ * Get the plain text content of the node, used for character counting. Default implementation returns an empty string, subclasses should override this method to provide the actual plain text content.
139
+ *
140
+ * @returns {string} The plain text content of the node.
141
+ */
142
+ getPlainText() {
143
+ return '';
144
+ }
137
145
  /**
138
146
  * Get the HTMLElement reference associated with this node.
139
147
  *
@@ -218,6 +218,12 @@ export class RTETextNode extends RTENode {
218
218
  isContentEditable() {
219
219
  return true;
220
220
  }
221
+ /**
222
+ * @inheritDoc
223
+ */
224
+ getPlainText() {
225
+ return this.text;
226
+ }
221
227
  /**
222
228
  * Returns the inline HTML wrapper descriptor at the given depth in the
223
229
  * annotation chain. Depth 0 is the outermost wrapper, depth 1 is its child, etc.
@@ -50,7 +50,7 @@ export class VegaRTEToolbarButtonRenderer {
50
50
  * @returns {VegaRTERenderResult} - The render result for the dropdown.
51
51
  */
52
52
  renderDropdown(h, editorContext, dropdownProps, children) {
53
- return h('vega-dropdown', Object.assign({ trigger: 'click', searchable: false, maxWidth: '200', itemDisplayRule: 'ellipsis', isScreenPosition: true,
53
+ return h('vega-dropdown', Object.assign({ trigger: 'click', searchable: false, maxWidth: '200', itemDisplayRule: 'ellipsis', isScreenPosition: true, role: 'presentation',
54
54
  // eslint-disable-next-line jsdoc/require-jsdoc
55
55
  ref: (el) => {
56
56
  this.dropdownEl = el;
@@ -134,29 +134,31 @@ export class VegaRTEToolbarButtonRenderer {
134
134
  * @returns {VegaRTERenderResult} - The render result for the button.
135
135
  */
136
136
  renderButton(h, editorContext, buttonProps) {
137
- const { icon, label, showArrowIcon, tooltip } = buttonProps;
137
+ const { icon, label, showArrowIcon, tooltip, ariaLabel } = buttonProps;
138
138
  const isDisabled = this.isDisabled(editorContext);
139
139
  const button = h('vega-rich-text-editor-toolbar-button', {
140
- disabled: isDisabled,
141
- icon: icon,
142
- hidden: this.isHidden(editorContext),
143
- selected: this.isSelected(editorContext),
140
+ 'disabled': isDisabled,
141
+ 'icon': icon,
142
+ 'data-aria-label': ariaLabel !== null && ariaLabel !== void 0 ? ariaLabel : label,
143
+ 'hidden': this.isHidden(editorContext),
144
+ 'selected': this.isSelected(editorContext),
144
145
  // eslint-disable-next-line jsdoc/require-jsdoc
145
- ref: (el) => {
146
+ 'ref': (el) => {
146
147
  this.buttonEl = el;
147
148
  DomNodeSubjectObserverFactory.addUniqueObserverToNode(el, VegaClick, () => this.handleButtonClick(editorContext));
148
149
  },
149
- onMouseDown: this.preventDefault,
150
+ 'onMouseDown': this.preventDefault,
150
151
  // eslint-disable-next-line jsdoc/require-jsdoc
151
- onKeyDown: (e) => this.handleButtonKeyDown(e),
152
+ 'onKeyDown': (e) => this.handleButtonKeyDown(e),
152
153
  }, [
153
154
  this.renderButtonLabel(h, editorContext, label),
154
155
  showArrowIcon
155
156
  ? h('vega-icon', {
156
- size: 'size-8',
157
- color: isDisabled ? 'text-disabled' : 'text-secondary',
158
- style: { marginLeft: '8px' },
159
- icon: VegaInternalIconManager.getIconKey('chevron-down'),
157
+ 'size': 'size-8',
158
+ 'color': isDisabled ? 'text-disabled' : 'text-secondary',
159
+ 'style': { marginLeft: '8px' },
160
+ 'aria-hidden': 'true',
161
+ 'icon': VegaInternalIconManager.getIconKey('chevron-down'),
160
162
  })
161
163
  : null,
162
164
  ].filter(isNonNullable));
@@ -177,8 +179,9 @@ export class VegaRTEToolbarButtonRenderer {
177
179
  if (label) {
178
180
  const isDisabled = this.isDisabled(editorContext);
179
181
  return h('vega-font', {
180
- variant: 'font-field-label-sm',
181
- color: isDisabled ? 'text-disabled' : 'text-primary',
182
+ 'variant': 'font-field-label-sm',
183
+ 'color': isDisabled ? 'text-disabled' : 'text-primary',
184
+ 'aria-hidden': 'true',
182
185
  }, editorContext.translation.t(label));
183
186
  }
184
187
  return null;
@@ -210,6 +213,15 @@ export class VegaRTEToolbarButtonRenderer {
210
213
  preventDefault(e) {
211
214
  e.preventDefault();
212
215
  }
216
+ /**
217
+ * Moves focus to the toolbar button. Targets the inner focusable `<button>`
218
+ * inside the button's shadow root, falling back to the host element.
219
+ */
220
+ focusToolbarButton() {
221
+ var _a, _b, _c, _d;
222
+ const innerButton = (_c = (_b = (_a = this.buttonEl) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('button')) !== null && _c !== void 0 ? _c : null;
223
+ (_d = (innerButton !== null && innerButton !== void 0 ? innerButton : this.buttonEl)) === null || _d === void 0 ? void 0 : _d.focus();
224
+ }
213
225
  /**
214
226
  * Recursively searches for a dropdown list item by its key.
215
227
  *
@@ -263,14 +275,14 @@ export class VegaRTEToolbarButtonRenderer {
263
275
  * @param {KeyboardEvent} e The keyboard event.
264
276
  */
265
277
  handleItemsKeyDown(e) {
266
- var _a, _b, _c;
278
+ var _a, _b;
267
279
  if (e.code === 'Escape') {
268
280
  e.preventDefault();
269
281
  e.stopPropagation();
270
282
  if (this.dropdownEl) {
271
283
  void this.dropdownEl.hide();
272
284
  }
273
- (_a = this.buttonEl) === null || _a === void 0 ? void 0 : _a.focus();
285
+ this.focusToolbarButton();
274
286
  return;
275
287
  }
276
288
  if (e.code !== 'ArrowDown' && e.code !== 'ArrowUp') {
@@ -288,7 +300,7 @@ export class VegaRTEToolbarButtonRenderer {
288
300
  for (let offset = 0; offset < items.length; offset++) {
289
301
  const index = (startIndex + offset * direction + items.length) % items.length;
290
302
  if (!items[index].disabled) {
291
- (_c = (_b = items[index].shadowRoot) === null || _b === void 0 ? void 0 : _b.querySelector('li')) === null || _c === void 0 ? void 0 : _c.focus();
303
+ (_b = (_a = items[index].shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('li')) === null || _b === void 0 ? void 0 : _b.focus();
292
304
  return;
293
305
  }
294
306
  }
@@ -33,6 +33,7 @@ export class RTEBlockquoteToolbarButtonRenderer extends VegaRTEToolbarButtonRend
33
33
  render(createElement, editorContext) {
34
34
  return this.renderButton(createElement, editorContext, {
35
35
  icon: 'quote-left',
36
+ ariaLabel: editorContext.translation.t('Block quote'),
36
37
  tooltip: { text: 'Block quote' },
37
38
  });
38
39
  }