@globalpayments/vega 2.98.0 → 2.99.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 (447) hide show
  1. package/dist/cjs/{action-color-accessibility-validator-24498816.js → action-color-accessibility-validator-b8a9ef0f.js} +2 -2
  2. package/dist/cjs/{app-globals-b3f05631.js → app-globals-a306dce6.js} +10 -10
  3. package/dist/cjs/{code-block-d78c2b2c.js → code-block-ea1f5eb3.js} +43 -6
  4. package/dist/cjs/{component-global-style-slimmer-93c5fb50.js → component-global-style-slimmer-ba588eb4.js} +1 -1
  5. package/dist/cjs/{component-value-history-controller-slimmer.abstract-beb00fea.js → component-value-history-controller-slimmer.abstract-7071b064.js} +24 -5
  6. package/dist/cjs/{content-state-78a620a9.js → content-state-8d07d530.js} +60 -8
  7. package/dist/cjs/{dark-mode-style-controller-32d4054a.js → dark-mode-style-controller-f3da3342.js} +2 -2
  8. package/dist/cjs/{date-required-rule-5250f26d.js → date-required-rule-c0c498ad.js} +1 -1
  9. package/dist/cjs/{design-token-74674ee7.js → design-token-58bf7fe8.js} +3 -3
  10. package/dist/cjs/{element-appender-slimmer-597e9e48.js → element-appender-slimmer-a0269315.js} +2 -2
  11. package/dist/cjs/{form-field-controller-slimmer-a743be34.js → form-field-controller-slimmer-f73f200e.js} +2 -2
  12. package/dist/cjs/{image-annotation-action-85c4bd83.js → image-annotation-action-2a28038e.js} +3 -3
  13. package/dist/cjs/{image-extension-260fa69c.js → image-extension-9659708b.js} +2 -2
  14. package/dist/cjs/{index-592b4052.js → index-5d1adcd1.js} +86 -0
  15. package/dist/cjs/index.cjs.js +19 -19
  16. package/dist/cjs/{inject-keyboard-manager-6a6f5c9f.js → inject-keyboard-manager-4fa45f9c.js} +1 -1
  17. package/dist/cjs/{internal-calendar-period-factory-dfcdd3f6.js → internal-calendar-period-factory-6196bc80.js} +1 -1
  18. package/dist/cjs/{internal-translation-controller-1dac2df8.js → internal-translation-controller-51f7f865.js} +2 -0
  19. package/dist/cjs/{keyboard-manager-c56033b1.js → keyboard-manager-482fe257.js} +1 -1
  20. package/dist/cjs/{keyboard-manager-slimmer-7043a106.js → keyboard-manager-slimmer-a19430dd.js} +1 -1
  21. package/dist/cjs/{link-extension-220ff6a9.js → link-extension-11340e1c.js} +26 -7
  22. package/dist/cjs/loader.cjs.js +13 -13
  23. package/dist/cjs/{month-view-generator-7b704a80.js → month-view-generator-1a534451.js} +1 -1
  24. package/dist/cjs/{public-rules-5657bce4.js → public-rules-6c77b545.js} +9 -9
  25. package/dist/cjs/{range-c5afd53a.js → range-22ddd452.js} +1 -1
  26. package/dist/cjs/{responsive-format-facade-493d1763.js → responsive-format-facade-74e6d791.js} +1 -1
  27. package/dist/cjs/{rich-text-editor-required-rule-385c1b61.js → rich-text-editor-required-rule-09d1093a.js} +1 -1
  28. package/dist/cjs/{split-cell-operation-873d5db7.js → split-cell-operation-11bfb305.js} +14 -4
  29. package/dist/cjs/{state-border-formatter-711c7aaa.js → state-border-formatter-bf4f9f1c.js} +1 -1
  30. package/dist/cjs/{string-format-strategy.abstract-b61bdcbd.js → string-format-strategy.abstract-bf37b14c.js} +1 -1
  31. package/dist/cjs/{string-input-formatter-slimmer-ef65cca7.js → string-input-formatter-slimmer-ffeb18a6.js} +1 -1
  32. package/dist/cjs/{string-mask-strategy-ad3fa0ac.js → string-mask-strategy-7f394726.js} +2 -2
  33. package/dist/cjs/{style-formatter-8f711cb0.js → style-formatter-4ac63910.js} +2 -2
  34. package/dist/cjs/{time-required-rule-87417359.js → time-required-rule-e2a50003.js} +1 -1
  35. package/dist/cjs/{token-extension-78b5a026.js → token-extension-4686cb3b.js} +2920 -157
  36. package/dist/cjs/{translation-slimmer-77c7f37d.js → translation-slimmer-e4997f8f.js} +1 -1
  37. package/dist/cjs/{type-guard-a57ef3ac.js → type-guard-b8d7bb3f.js} +1 -1
  38. package/dist/cjs/{valid-credit-card-number-rule-4c0a3040.js → valid-credit-card-number-rule-f5a6f009.js} +1 -1
  39. package/dist/cjs/vega-accordion.cjs.entry.js +6 -6
  40. package/dist/cjs/vega-app-footer.cjs.entry.js +2 -2
  41. package/dist/cjs/vega-app-header-button.cjs.entry.js +5 -5
  42. package/dist/cjs/vega-box.cjs.entry.js +7 -7
  43. package/dist/cjs/vega-brand-logo.cjs.entry.js +2 -2
  44. package/dist/cjs/vega-breadcrumb.cjs.entry.js +2 -2
  45. package/dist/cjs/vega-button-circle.cjs.entry.js +6 -6
  46. package/dist/cjs/vega-button-link.cjs.entry.js +1 -1
  47. package/dist/cjs/vega-button.cjs.entry.js +4 -4
  48. package/dist/cjs/vega-calendar_5.cjs.entry.js +21 -10
  49. package/dist/cjs/vega-card.cjs.entry.js +5 -5
  50. package/dist/cjs/vega-carousel.cjs.entry.js +3 -3
  51. package/dist/cjs/vega-checkbox_2.cjs.entry.js +3 -3
  52. package/dist/cjs/vega-chip.cjs.entry.js +5 -5
  53. package/dist/cjs/vega-code-block.cjs.entry.js +11 -11
  54. package/dist/cjs/vega-color-picker.cjs.entry.js +3 -3
  55. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +4 -4
  56. package/dist/cjs/vega-color-swatch.cjs.entry.js +2 -2
  57. package/dist/cjs/vega-combo-box.cjs.entry.js +9 -9
  58. package/dist/cjs/vega-counter-badge.cjs.entry.js +2 -2
  59. package/dist/cjs/vega-date-picker_2.cjs.entry.js +14 -14
  60. package/dist/cjs/vega-dialog_2.cjs.entry.js +5 -5
  61. package/dist/cjs/vega-divider.cjs.entry.js +5 -5
  62. package/dist/cjs/vega-dropdown_5.cjs.entry.js +23 -14
  63. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  64. package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
  65. package/dist/cjs/vega-file-uploader.cjs.entry.js +4 -4
  66. package/dist/cjs/vega-flag-icon.cjs.entry.js +5 -5
  67. package/dist/cjs/vega-flex.cjs.entry.js +6 -6
  68. package/dist/cjs/vega-font.cjs.entry.js +5 -5
  69. package/dist/cjs/vega-form.cjs.entry.js +2 -2
  70. package/dist/cjs/vega-grid.cjs.entry.js +5 -5
  71. package/dist/cjs/vega-icon.cjs.entry.js +6 -6
  72. package/dist/cjs/vega-image-uploader.cjs.entry.js +7 -7
  73. package/dist/cjs/vega-input-credit-card.cjs.entry.js +7 -7
  74. package/dist/cjs/vega-input-numeric.cjs.entry.js +6 -6
  75. package/dist/cjs/vega-input-passcode.cjs.entry.js +6 -6
  76. package/dist/cjs/vega-input-phone-number.cjs.entry.js +5 -5
  77. package/dist/cjs/vega-input-range.cjs.entry.js +4 -4
  78. package/dist/cjs/vega-input-select.cjs.entry.js +6 -6
  79. package/dist/cjs/vega-input.cjs.entry.js +7 -7
  80. package/dist/cjs/vega-left-nav_5.cjs.entry.js +10 -10
  81. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
  82. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
  83. package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
  84. package/dist/cjs/vega-popover_2.cjs.entry.js +8 -8
  85. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +3 -3
  86. package/dist/cjs/vega-radio_2.cjs.entry.js +6 -6
  87. package/dist/cjs/vega-rich-text-content.cjs.entry.js +39 -11
  88. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +79 -22
  89. package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +1 -1
  90. package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +5 -5
  91. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +10 -10
  92. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +5 -5
  93. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +3 -3
  94. package/dist/cjs/vega-sidenav_3.cjs.entry.js +3 -3
  95. package/dist/cjs/vega-signature-capture.cjs.entry.js +8 -8
  96. package/dist/cjs/vega-stepper.cjs.entry.js +3 -3
  97. package/dist/cjs/vega-tab-group_2.cjs.entry.js +21 -8
  98. package/dist/cjs/vega-table_11.cjs.entry.js +81 -45
  99. package/dist/cjs/vega-textarea.cjs.entry.js +3 -3
  100. package/dist/cjs/vega-time-picker_2.cjs.entry.js +10 -10
  101. package/dist/cjs/vega-toggle-switch.cjs.entry.js +3 -3
  102. package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -6
  103. package/dist/cjs/vega.cjs.js +13 -13
  104. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +5 -2
  105. package/dist/collection/components/vega-calendar/vega-calendar-event-preview/slimmers/renderers/vega-calendar-event-preview-detail-renderer.js +9 -1
  106. package/dist/collection/components/vega-counter-badge/vega-counter-badge.js +2 -2
  107. package/dist/collection/components/vega-dropdown/vega-dropdown-group/slimmers/renderers/vega-dropdown-group-renderer.js +6 -4
  108. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +10 -2
  109. package/dist/collection/components/vega-field-label/vega-field-label.css +1 -0
  110. package/dist/collection/components/vega-rich-text-editor/constants/constant.js +16 -0
  111. package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-style-default-styles.js +2 -1
  112. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +11 -0
  113. package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy-registry.js +2 -1
  114. package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy.abstract.js +5 -2
  115. package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/title-heading-node-filter-styles-strategy.js +36 -2
  116. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.js +20 -3
  117. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +12 -0
  118. package/dist/collection/components/vega-rich-text-editor/extensions/block-boundary-registry.js +34 -0
  119. package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +20 -0
  120. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/insert-function-block-strategy.js +3 -2
  121. package/dist/collection/components/vega-rich-text-editor/extensions/functions/constants.js +8 -0
  122. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/function-block.js +14 -3
  123. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-block.js +2 -1
  124. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-containing-function-block-strategy.js +19 -0
  125. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-block-strategy.js +9 -5
  126. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-content-strategy.js +3 -3
  127. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-logic-control-block-strategy.js +4 -2
  128. package/dist/collection/components/vega-rich-text-editor/extensions/functions/function-extension.js +18 -0
  129. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-block-renderer.js +5 -2
  130. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/logic-control-block-renderer.js +2 -1
  131. package/dist/collection/components/vega-rich-text-editor/extensions/functions/utils.js +36 -0
  132. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-extension.js +1 -0
  133. package/dist/collection/components/vega-rich-text-editor/extensions/paste/action-handler-strategies/image-replace-src-strategy.js +21 -0
  134. package/dist/collection/components/vega-rich-text-editor/extensions/paste/actions/image-replace-src-action.js +13 -0
  135. package/dist/collection/components/vega-rich-text-editor/extensions/paste/parse-local-images-helper/paste-image-parser.js +295 -0
  136. package/dist/collection/components/vega-rich-text-editor/extensions/paste/parse-local-images-helper/pending-image-registry.js +116 -0
  137. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.js +13 -4
  138. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-extension.js +70 -7
  139. package/dist/collection/components/vega-rich-text-editor/extensions/paste/strategies/default-paste-strategy.js +38 -0
  140. package/dist/collection/components/vega-rich-text-editor/extensions/paste/strategies/paste-processing-strategy.abstract.js +55 -0
  141. package/dist/collection/components/vega-rich-text-editor/extensions/paste/strategies/paste-strategy-selector.js +59 -0
  142. package/dist/collection/components/vega-rich-text-editor/extensions/paste/strategies/word-paste-strategy.js +416 -0
  143. package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-code-block-transformer.js +106 -0
  144. package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-image-transformer.js +198 -0
  145. package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-list-transformer.js +591 -0
  146. package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-paragraph-transformer.js +112 -0
  147. package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-table-transformer.js +551 -0
  148. package/dist/collection/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-transformer.js +7 -0
  149. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-block.js +10 -0
  150. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +4 -2
  151. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node.js +44 -0
  152. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +2 -0
  153. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-style-annotation-handler.js +7 -4
  154. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.js +17 -0
  155. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +18 -4
  156. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +21 -2
  157. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.js +7 -0
  158. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-source-view-renderer.js +5 -2
  159. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.js +14 -7
  160. package/dist/collection/components/vega-tab-group/vega-tab-group.css +6 -0
  161. package/dist/collection/components/vega-tab-group/vega-tab-group.js +5 -0
  162. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.js +31 -1
  163. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.js +18 -11
  164. package/dist/collection/helpers/translation/locales/en.js +2 -0
  165. package/dist/collection/utils/sanitize/index.js +3 -2
  166. package/dist/collection/utils/sanitize/strategies/index.js +1 -0
  167. package/dist/collection/utils/sanitize/strategies/label-sanitize-strategy.js +14 -0
  168. package/dist/collection/utils/sanitize/strategies/plain-text-sanitize-strategy.js +70 -0
  169. package/dist/esm/{action-color-accessibility-validator-ce55cb07.js → action-color-accessibility-validator-08877515.js} +2 -2
  170. package/dist/esm/{app-globals-95c7110a.js → app-globals-c59364c2.js} +10 -10
  171. package/dist/esm/{code-block-9c513169.js → code-block-e6443949.js} +39 -7
  172. package/dist/esm/{component-global-style-slimmer-ac703085.js → component-global-style-slimmer-7d60a04a.js} +1 -1
  173. package/dist/esm/{component-value-history-controller-slimmer.abstract-9cef2a2a.js → component-value-history-controller-slimmer.abstract-ee393213.js} +24 -5
  174. package/dist/esm/{content-state-25c81c08.js → content-state-43cdacff.js} +60 -9
  175. package/dist/esm/{dark-mode-style-controller-ca5afd2d.js → dark-mode-style-controller-352f15ff.js} +2 -2
  176. package/dist/esm/{date-required-rule-85334d0c.js → date-required-rule-b5b67498.js} +1 -1
  177. package/dist/esm/{design-token-10ff79b5.js → design-token-8319bb59.js} +3 -3
  178. package/dist/esm/{element-appender-slimmer-8a06ecdd.js → element-appender-slimmer-c81d1fe3.js} +2 -2
  179. package/dist/esm/{form-field-controller-slimmer-68fc5380.js → form-field-controller-slimmer-511b7ac5.js} +2 -2
  180. package/dist/esm/{image-annotation-action-d7f2aecc.js → image-annotation-action-d7cb80aa.js} +3 -3
  181. package/dist/esm/{image-extension-fbd1ed6e.js → image-extension-9b8abd0d.js} +2 -2
  182. package/dist/esm/{index-3b327f29.js → index-35451d12.js} +86 -1
  183. package/dist/esm/index.js +19 -19
  184. package/dist/esm/{inject-keyboard-manager-ea1aad5b.js → inject-keyboard-manager-dd368d56.js} +1 -1
  185. package/dist/esm/{internal-calendar-period-factory-7b294fb6.js → internal-calendar-period-factory-d58f35c6.js} +1 -1
  186. package/dist/esm/{internal-translation-controller-fac22598.js → internal-translation-controller-b33430c6.js} +2 -0
  187. package/dist/esm/{keyboard-manager-50da85d7.js → keyboard-manager-b4a0d97d.js} +1 -1
  188. package/dist/esm/{keyboard-manager-slimmer-1f7c8bfb.js → keyboard-manager-slimmer-0517fc70.js} +1 -1
  189. package/dist/esm/{link-extension-e8ee103e.js → link-extension-230bae8d.js} +26 -7
  190. package/dist/esm/loader.js +13 -13
  191. package/dist/esm/{month-view-generator-a1a9a4ec.js → month-view-generator-f470caac.js} +1 -1
  192. package/dist/esm/{public-rules-49de79c7.js → public-rules-28ef32d3.js} +9 -9
  193. package/dist/esm/{range-b678c693.js → range-efad2578.js} +1 -1
  194. package/dist/esm/{responsive-format-facade-f19b601c.js → responsive-format-facade-dec87e46.js} +1 -1
  195. package/dist/esm/{rich-text-editor-required-rule-578e0958.js → rich-text-editor-required-rule-a697e5bd.js} +1 -1
  196. package/dist/esm/{split-cell-operation-1c8e7585.js → split-cell-operation-89b91a38.js} +14 -4
  197. package/dist/esm/{state-border-formatter-bfda33aa.js → state-border-formatter-1e900a2f.js} +1 -1
  198. package/dist/esm/{string-format-strategy.abstract-1f4ff1b3.js → string-format-strategy.abstract-d0ce3f65.js} +1 -1
  199. package/dist/esm/{string-input-formatter-slimmer-0006a107.js → string-input-formatter-slimmer-6546cfc7.js} +1 -1
  200. package/dist/esm/{string-mask-strategy-bbbcdbef.js → string-mask-strategy-dd13ae21.js} +2 -2
  201. package/dist/esm/{style-formatter-e9adc8f4.js → style-formatter-057d7120.js} +2 -2
  202. package/dist/esm/{time-required-rule-1ce2d0a0.js → time-required-rule-73753a54.js} +1 -1
  203. package/dist/esm/{token-extension-f2d009e3.js → token-extension-74a0eeb1.js} +2918 -155
  204. package/dist/esm/{translation-slimmer-ee0f0e76.js → translation-slimmer-ef970ffc.js} +1 -1
  205. package/dist/esm/{type-guard-f2624334.js → type-guard-6fc96870.js} +1 -1
  206. package/dist/esm/{valid-credit-card-number-rule-60212b1d.js → valid-credit-card-number-rule-b54a31e7.js} +1 -1
  207. package/dist/esm/vega-accordion.entry.js +6 -6
  208. package/dist/esm/vega-app-footer.entry.js +2 -2
  209. package/dist/esm/vega-app-header-button.entry.js +5 -5
  210. package/dist/esm/vega-box.entry.js +7 -7
  211. package/dist/esm/vega-brand-logo.entry.js +2 -2
  212. package/dist/esm/vega-breadcrumb.entry.js +2 -2
  213. package/dist/esm/vega-button-circle.entry.js +6 -6
  214. package/dist/esm/vega-button-link.entry.js +1 -1
  215. package/dist/esm/vega-button.entry.js +4 -4
  216. package/dist/esm/vega-calendar_5.entry.js +21 -10
  217. package/dist/esm/vega-card.entry.js +5 -5
  218. package/dist/esm/vega-carousel.entry.js +3 -3
  219. package/dist/esm/vega-checkbox_2.entry.js +3 -3
  220. package/dist/esm/vega-chip.entry.js +5 -5
  221. package/dist/esm/vega-code-block.entry.js +11 -11
  222. package/dist/esm/vega-color-picker.entry.js +3 -3
  223. package/dist/esm/vega-color-swatch-picker.entry.js +4 -4
  224. package/dist/esm/vega-color-swatch.entry.js +2 -2
  225. package/dist/esm/vega-combo-box.entry.js +9 -9
  226. package/dist/esm/vega-counter-badge.entry.js +2 -2
  227. package/dist/esm/vega-date-picker_2.entry.js +14 -14
  228. package/dist/esm/vega-dialog_2.entry.js +5 -5
  229. package/dist/esm/vega-divider.entry.js +5 -5
  230. package/dist/esm/vega-dropdown_5.entry.js +23 -14
  231. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  232. package/dist/esm/vega-field-label.entry.js +3 -3
  233. package/dist/esm/vega-file-uploader.entry.js +4 -4
  234. package/dist/esm/vega-flag-icon.entry.js +5 -5
  235. package/dist/esm/vega-flex.entry.js +6 -6
  236. package/dist/esm/vega-font.entry.js +5 -5
  237. package/dist/esm/vega-form.entry.js +2 -2
  238. package/dist/esm/vega-grid.entry.js +5 -5
  239. package/dist/esm/vega-icon.entry.js +6 -6
  240. package/dist/esm/vega-image-uploader.entry.js +7 -7
  241. package/dist/esm/vega-input-credit-card.entry.js +7 -7
  242. package/dist/esm/vega-input-numeric.entry.js +6 -6
  243. package/dist/esm/vega-input-passcode.entry.js +6 -6
  244. package/dist/esm/vega-input-phone-number.entry.js +5 -5
  245. package/dist/esm/vega-input-range.entry.js +4 -4
  246. package/dist/esm/vega-input-select.entry.js +6 -6
  247. package/dist/esm/vega-input.entry.js +7 -7
  248. package/dist/esm/vega-left-nav_5.entry.js +10 -10
  249. package/dist/esm/vega-loader-wrapper_2.entry.js +3 -3
  250. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -2
  251. package/dist/esm/vega-pagination.entry.js +4 -4
  252. package/dist/esm/vega-popover_2.entry.js +8 -8
  253. package/dist/esm/vega-progress-tracker_2.entry.js +3 -3
  254. package/dist/esm/vega-radio_2.entry.js +6 -6
  255. package/dist/esm/vega-rich-text-content.entry.js +39 -11
  256. package/dist/esm/vega-rich-text-editor_4.entry.js +79 -22
  257. package/dist/esm/vega-rich-text-find-replace-panel.entry.js +1 -1
  258. package/dist/esm/vega-rich-text-special-characters-panel.entry.js +5 -5
  259. package/dist/esm/vega-rich-text-table-properties_3.entry.js +10 -10
  260. package/dist/esm/vega-selection-chip_2.entry.js +5 -5
  261. package/dist/esm/vega-selection-tile_2.entry.js +3 -3
  262. package/dist/esm/vega-sidenav_3.entry.js +3 -3
  263. package/dist/esm/vega-signature-capture.entry.js +8 -8
  264. package/dist/esm/vega-stepper.entry.js +3 -3
  265. package/dist/esm/vega-tab-group_2.entry.js +21 -8
  266. package/dist/esm/vega-table_11.entry.js +53 -17
  267. package/dist/esm/vega-textarea.entry.js +3 -3
  268. package/dist/esm/vega-time-picker_2.entry.js +10 -10
  269. package/dist/esm/vega-toggle-switch.entry.js +3 -3
  270. package/dist/esm/vega-tooltip_2.entry.js +6 -6
  271. package/dist/esm/vega.js +13 -13
  272. package/dist/sri/vega-sri-manifest.json +349 -349
  273. package/dist/types/components/vega-calendar/vega-calendar-event-preview/slimmers/renderers/vega-calendar-event-preview-detail-renderer.d.ts +2 -0
  274. package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.d.ts +1 -0
  275. package/dist/types/components/vega-rich-text-editor/constants/constant.d.ts +16 -0
  276. package/dist/types/components/vega-rich-text-editor/dto/annotations/text-style-default-styles.d.ts +1 -0
  277. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +9 -0
  278. package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy-registry.d.ts +1 -0
  279. package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/filter-styles-strategy.abstract.d.ts +3 -2
  280. package/dist/types/components/vega-rich-text-editor/dto/filter-styles-strategies/text-node/title-heading-node-filter-styles-strategy.d.ts +25 -3
  281. package/dist/types/components/vega-rich-text-editor/dto/renderers/blocks/block-text-nodes-renderer.abstract.d.ts +7 -0
  282. package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.d.ts +11 -0
  283. package/dist/types/components/vega-rich-text-editor/extensions/block-boundary-registry.d.ts +21 -0
  284. package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +15 -0
  285. package/dist/types/components/vega-rich-text-editor/extensions/functions/constants.d.ts +4 -0
  286. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/function-block.d.ts +7 -0
  287. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-containing-function-block-strategy.d.ts +8 -0
  288. package/dist/types/components/vega-rich-text-editor/extensions/functions/function-extension.d.ts +6 -0
  289. package/dist/types/components/vega-rich-text-editor/extensions/functions/utils.d.ts +29 -0
  290. package/dist/types/components/vega-rich-text-editor/extensions/paste/action-handler-strategies/image-replace-src-strategy.d.ts +12 -0
  291. package/dist/types/components/vega-rich-text-editor/extensions/paste/actions/image-replace-src-action.d.ts +11 -0
  292. package/dist/types/components/vega-rich-text-editor/extensions/paste/parse-local-images-helper/paste-image-parser.d.ts +136 -0
  293. package/dist/types/components/vega-rich-text-editor/extensions/paste/parse-local-images-helper/pending-image-registry.d.ts +68 -0
  294. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.d.ts +9 -4
  295. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-extension.d.ts +39 -2
  296. package/dist/types/components/vega-rich-text-editor/extensions/paste/strategies/default-paste-strategy.d.ts +29 -0
  297. package/dist/types/components/vega-rich-text-editor/extensions/paste/strategies/paste-processing-strategy.abstract.d.ts +61 -0
  298. package/dist/types/components/vega-rich-text-editor/extensions/paste/strategies/paste-strategy-selector.d.ts +45 -0
  299. package/dist/types/components/vega-rich-text-editor/extensions/paste/strategies/word-paste-strategy.d.ts +186 -0
  300. package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-code-block-transformer.d.ts +51 -0
  301. package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-image-transformer.d.ts +86 -0
  302. package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-list-transformer.d.ts +271 -0
  303. package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-paragraph-transformer.d.ts +25 -0
  304. package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-table-transformer.d.ts +240 -0
  305. package/dist/types/components/vega-rich-text-editor/extensions/paste/word-paste-transformers/word-structure-transformer.d.ts +36 -0
  306. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-block.d.ts +8 -0
  307. package/dist/types/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.d.ts +2 -2
  308. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node.d.ts +19 -1
  309. package/dist/types/components/vega-rich-text-editor/interface.d.ts +10 -0
  310. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/text-style-annotation-handler.d.ts +4 -1
  311. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.d.ts +8 -0
  312. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/source-edit-toolbar-button-slimmer.d.ts +1 -0
  313. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.d.ts +1 -0
  314. package/dist/types/components/vega-tab-group/types.d.ts +3 -1
  315. package/dist/types/components/vega-tab-group/vega-tab-group.d.ts +2 -0
  316. package/dist/types/components/vega-table/interface.d.ts +4 -4
  317. package/dist/types/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.d.ts +16 -0
  318. package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.d.ts +8 -10
  319. package/dist/types/helpers/translation/interface.d.ts +3 -1
  320. package/dist/types/types/public-api.d.ts +1 -0
  321. package/dist/types/utils/sanitize/index.d.ts +3 -2
  322. package/dist/types/utils/sanitize/strategies/index.d.ts +1 -0
  323. package/dist/types/utils/sanitize/strategies/label-sanitize-strategy.d.ts +9 -0
  324. package/dist/types/utils/sanitize/strategies/plain-text-sanitize-strategy.d.ts +36 -0
  325. package/dist/vega/index.esm.js +1 -1
  326. package/dist/vega/{p-0cbf09f7.entry.js → p-024db952.entry.js} +1 -1
  327. package/dist/vega/p-0b2c4c0b.js +1 -0
  328. package/dist/vega/{p-c2277448.entry.js → p-0ca3b4bf.entry.js} +1 -1
  329. package/dist/vega/{p-6f537797.entry.js → p-1a37d63c.entry.js} +1 -1
  330. package/dist/vega/{p-b622c455.js → p-1fa22fda.js} +1 -1
  331. package/dist/vega/{p-d609c3fd.js → p-2044eba9.js} +1 -1
  332. package/dist/vega/{p-56db3323.js → p-22edd3cc.js} +1 -1
  333. package/dist/vega/{p-5f96e741.entry.js → p-23c1f378.entry.js} +1 -1
  334. package/dist/vega/{p-6c95a6a3.js → p-2529820e.js} +1 -1
  335. package/dist/vega/{p-8d96f0e8.entry.js → p-2af1d8b8.entry.js} +1 -1
  336. package/dist/vega/{p-17c69503.entry.js → p-2f89ee14.entry.js} +1 -1
  337. package/dist/vega/{p-2bb5a232.js → p-3091b105.js} +1 -1
  338. package/dist/vega/{p-52c69f9e.entry.js → p-328ebbdb.entry.js} +1 -1
  339. package/dist/vega/p-35628af4.js +1 -0
  340. package/dist/vega/{p-9abf7d0a.entry.js → p-35d37477.entry.js} +1 -1
  341. package/dist/vega/{p-8c56d74d.entry.js → p-3a230d4b.entry.js} +1 -1
  342. package/dist/vega/{p-4bfe3258.entry.js → p-3c152bad.entry.js} +1 -1
  343. package/dist/vega/p-3c559c8b.js +1 -0
  344. package/dist/vega/{p-d470fce2.entry.js → p-3c8421d5.entry.js} +1 -1
  345. package/dist/vega/{p-7dcd2850.entry.js → p-4022412e.entry.js} +1 -1
  346. package/dist/vega/{p-c70748f7.entry.js → p-433b1395.entry.js} +1 -1
  347. package/dist/vega/{p-b98ead05.entry.js → p-4370b954.entry.js} +1 -1
  348. package/dist/vega/p-444e24c6.js +1 -0
  349. package/dist/vega/p-4473d8b1.js +3 -0
  350. package/dist/vega/{p-a484e32d.entry.js → p-44999c88.entry.js} +1 -1
  351. package/dist/vega/{p-f29ea345.entry.js → p-47a48329.entry.js} +1 -1
  352. package/dist/vega/{p-0cf3b5c1.entry.js → p-49d7cfed.entry.js} +1 -1
  353. package/dist/vega/{p-92528dc9.entry.js → p-4afd6715.entry.js} +1 -1
  354. package/dist/vega/{p-461100b8.entry.js → p-4f6aaac5.entry.js} +1 -1
  355. package/dist/vega/p-50eda925.js +1 -0
  356. package/dist/vega/{p-ae2abdfa.js → p-5110c84f.js} +1 -1
  357. package/dist/vega/{p-2a245138.entry.js → p-5147c30d.entry.js} +1 -1
  358. package/dist/vega/{p-874e5624.js → p-52878ea9.js} +1 -1
  359. package/dist/vega/{p-b00ec194.entry.js → p-55dc3053.entry.js} +1 -1
  360. package/dist/vega/p-5af312f8.js +1 -0
  361. package/dist/vega/{p-3e09aeed.js → p-5b3c8a56.js} +1 -1
  362. package/dist/vega/{p-2acf9b42.entry.js → p-5e9e04f3.entry.js} +1 -1
  363. package/dist/vega/p-5f377954.js +1 -1
  364. package/dist/vega/p-6493f13a.entry.js +1 -0
  365. package/dist/vega/{p-56598858.entry.js → p-6659c910.entry.js} +1 -1
  366. package/dist/vega/{p-95c18f79.entry.js → p-66728dd4.entry.js} +1 -1
  367. package/dist/vega/{p-4cbfc01e.entry.js → p-66a785d0.entry.js} +1 -1
  368. package/dist/vega/{p-36d9e782.entry.js → p-66fe8b4e.entry.js} +1 -1
  369. package/dist/vega/p-67e88cd7.entry.js +1 -0
  370. package/dist/vega/{p-456f678b.js → p-691bdc20.js} +1 -1
  371. package/dist/vega/{p-94975537.entry.js → p-6d6b4495.entry.js} +1 -1
  372. package/dist/vega/p-7754b10f.entry.js +1 -0
  373. package/dist/vega/{p-085d1647.entry.js → p-77fb3971.entry.js} +1 -1
  374. package/dist/vega/{p-544ce391.entry.js → p-7977352b.entry.js} +1 -1
  375. package/dist/vega/{p-a91927eb.entry.js → p-7b133734.entry.js} +1 -1
  376. package/dist/vega/p-7b84a943.entry.js +1 -0
  377. package/dist/vega/{p-02d3ce79.entry.js → p-840444c9.entry.js} +1 -1
  378. package/dist/vega/{p-3737b9e2.entry.js → p-860e76f5.entry.js} +1 -1
  379. package/dist/vega/{p-72fd17a1.entry.js → p-867cc602.entry.js} +1 -1
  380. package/dist/vega/p-8d2a9012.js +1 -0
  381. package/dist/vega/{p-7e8fdac4.js → p-8d4be607.js} +1 -1
  382. package/dist/vega/p-8d77c7cf.js +1 -0
  383. package/dist/vega/{p-4fd0cf01.js → p-8f3b93db.js} +1 -1
  384. package/dist/vega/{p-56417ec5.entry.js → p-944e284d.entry.js} +1 -1
  385. package/dist/vega/{p-6fd4f2c6.js → p-94b54a95.js} +1 -1
  386. package/dist/vega/p-9c2b3279.js +1 -0
  387. package/dist/vega/{p-ca3c1317.entry.js → p-9c5289dc.entry.js} +1 -1
  388. package/dist/vega/{p-810c9c29.js → p-9c9b0629.js} +1 -1
  389. package/dist/vega/{p-585e4f1c.entry.js → p-9c9ff871.entry.js} +1 -1
  390. package/dist/vega/{p-2f07d719.entry.js → p-9d90e271.entry.js} +1 -1
  391. package/dist/vega/{p-d319ebb5.js → p-9e9f49f4.js} +1 -1
  392. package/dist/vega/{p-dcd3e3a7.js → p-a1f220ca.js} +1 -1
  393. package/dist/vega/{p-035e2f05.entry.js → p-a4360b7e.entry.js} +1 -1
  394. package/dist/vega/{p-6d4518d7.entry.js → p-a7517760.entry.js} +1 -1
  395. package/dist/vega/{p-c5fb8a69.entry.js → p-aa433430.entry.js} +1 -1
  396. package/dist/vega/{p-1cff027b.entry.js → p-aa914dbd.entry.js} +1 -1
  397. package/dist/vega/{p-72ab5cd5.entry.js → p-b12de1bf.entry.js} +1 -1
  398. package/dist/vega/p-b21cc390.entry.js +1 -0
  399. package/dist/vega/{p-dbb4b1d1.js → p-b3c4943b.js} +1 -1
  400. package/dist/vega/{p-1aedbfd2.entry.js → p-ba6881da.entry.js} +1 -1
  401. package/dist/vega/{p-9834d5d4.entry.js → p-bd7725f7.entry.js} +1 -1
  402. package/dist/vega/{p-a090b2be.js → p-c348eaf5.js} +1 -1
  403. package/dist/vega/{p-ccbe3f1b.entry.js → p-c8ad7207.entry.js} +1 -1
  404. package/dist/vega/{p-b3733762.entry.js → p-c8fb3aac.entry.js} +1 -1
  405. package/dist/vega/p-cc569b54.js +1 -0
  406. package/dist/vega/{p-c98c2f5f.entry.js → p-ccbed811.entry.js} +1 -1
  407. package/dist/vega/{p-da867019.entry.js → p-ce82d6bb.entry.js} +1 -1
  408. package/dist/vega/{p-a81ad3bd.js → p-cede3535.js} +1 -1
  409. package/dist/vega/p-d35a31a5.entry.js +1 -0
  410. package/dist/vega/{p-ac94ba1b.entry.js → p-d4d90ce2.entry.js} +1 -1
  411. package/dist/vega/{p-cb81126a.entry.js → p-d6023dc0.entry.js} +1 -1
  412. package/dist/vega/{p-a8174ad8.entry.js → p-d62e618a.entry.js} +1 -1
  413. package/dist/vega/{p-1ea9ad9a.js → p-dd0bd78b.js} +1 -1
  414. package/dist/vega/{p-36d2df7a.entry.js → p-ded1ecc1.entry.js} +1 -1
  415. package/dist/vega/p-df63c2fb.entry.js +1 -0
  416. package/dist/vega/{p-c6d775b8.entry.js → p-e1a65e06.entry.js} +1 -1
  417. package/dist/vega/{p-39c5054b.js → p-e1c82ca9.js} +1 -1
  418. package/dist/vega/{p-f6c0e9e7.entry.js → p-e469ba27.entry.js} +1 -1
  419. package/dist/vega/{p-373541fa.js → p-e4c5cb4f.js} +1 -1
  420. package/dist/vega/{p-ec64cc59.entry.js → p-f0a0fc77.entry.js} +1 -1
  421. package/dist/vega/{p-12e8a1b2.js → p-f13b39d8.js} +1 -1
  422. package/dist/vega/{p-4e065ef7.entry.js → p-f2384411.entry.js} +1 -1
  423. package/dist/vega/{p-8d2501b2.js → p-f9a3805d.js} +1 -1
  424. package/dist/vega/{p-1e0a8fd3.js → p-fa5cd8b1.js} +1 -1
  425. package/dist/vega/{p-2c2e8615.js → p-fcb6b499.js} +1 -1
  426. package/dist/vega/vega.esm.js +1 -1
  427. package/package.json +1 -1
  428. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-constants.js +0 -6
  429. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-constants.d.ts +0 -6
  430. package/dist/vega/p-03eeadc1.entry.js +0 -1
  431. package/dist/vega/p-0eb29065.js +0 -3
  432. package/dist/vega/p-10d30c03.js +0 -1
  433. package/dist/vega/p-1250b1ab.entry.js +0 -1
  434. package/dist/vega/p-1abd3c17.js +0 -1
  435. package/dist/vega/p-2d158cbd.js +0 -1
  436. package/dist/vega/p-3d0b4074.js +0 -1
  437. package/dist/vega/p-56493601.js +0 -1
  438. package/dist/vega/p-571ec00b.js +0 -1
  439. package/dist/vega/p-5b1f5e4a.entry.js +0 -1
  440. package/dist/vega/p-6234852e.entry.js +0 -1
  441. package/dist/vega/p-781b7a54.js +0 -1
  442. package/dist/vega/p-cd69aeae.js +0 -1
  443. package/dist/vega/p-cfe268a8.entry.js +0 -1
  444. package/dist/vega/p-de8f0d98.js +0 -1
  445. package/dist/vega/p-f0e828d8.js +0 -1
  446. package/dist/vega/p-f62c5a20.entry.js +0 -1
  447. package/dist/vega/p-fa65956c.entry.js +0 -1
@@ -4,18 +4,18 @@ Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  const index = require('./index-58ea899e.js');
6
6
  const component = require('./component-1e352960.js');
7
- const injectKeyboardManager = require('./inject-keyboard-manager-6a6f5c9f.js');
7
+ const injectKeyboardManager = require('./inject-keyboard-manager-4fa45f9c.js');
8
8
  const globalSlimmerRegistry = require('./global-slimmer-registry-b3bce7e0.js');
9
9
  const componentUsageRuntimeMetrics = require('./component-usage-runtime-metrics-389d1548.js');
10
- const elementAppenderSlimmer = require('./element-appender-slimmer-597e9e48.js');
10
+ const elementAppenderSlimmer = require('./element-appender-slimmer-a0269315.js');
11
11
  const deprecatedPropertySlimmer = require('./deprecated-property-slimmer-300a3929.js');
12
- require('./keyboard-manager-c56033b1.js');
12
+ require('./keyboard-manager-482fe257.js');
13
13
  require('./ui-c91c37a7.js');
14
- require('./type-guard-a57ef3ac.js');
14
+ require('./type-guard-b8d7bb3f.js');
15
15
  require('./breakpoints-ebde4837.js');
16
16
  require('./ui-32120990.js');
17
17
  require('./typography-3ea4fe41.js');
18
- require('./internal-translation-controller-1dac2df8.js');
18
+ require('./internal-translation-controller-51f7f865.js');
19
19
  require('./change-manager-a297e4d2.js');
20
20
  require('./static-subject-title-70c73b16.js');
21
21
  require('./internal-vega-z-index-manager-f03ddb37.js');
@@ -24,7 +24,7 @@ require('./dynamic-slimmer-f31fdfd7.js');
24
24
  require('./page-resize-observer-slimmer-273d62ef.js');
25
25
  require('./breakpoints-1cc2c4c6.js');
26
26
  require('./try-get-document-c0ebd39a.js');
27
- require('./responsive-format-facade-493d1763.js');
27
+ require('./responsive-format-facade-74e6d791.js');
28
28
  require('./pixel-98f2a10c.js');
29
29
  require('./array-249289f2.js');
30
30
  require('./feature-flag-controller-c19d0b58.js');
@@ -1,11 +1,11 @@
1
1
  'use strict';
2
2
 
3
3
  const index = require('./index-58ea899e.js');
4
- const appGlobals = require('./app-globals-b3f05631.js');
4
+ const appGlobals = require('./app-globals-a306dce6.js');
5
5
  require('./feature-flag-controller-c19d0b58.js');
6
6
  require('./global-slimmer-registry-b3bce7e0.js');
7
7
  require('./index-3ca118c4.js');
8
- require('./token-extension-78b5a026.js');
8
+ require('./token-extension-4686cb3b.js');
9
9
  require('./misc-3d30df91.js');
10
10
  require('./ui-c91c37a7.js');
11
11
  require('./create-public-api-runtime-metrics-slimmer-91b0cbfb.js');
@@ -19,34 +19,34 @@ require('./breakpoints-ebde4837.js');
19
19
  require('./try-get-document-c0ebd39a.js');
20
20
  require('./internal-vega-event-manager-7003c84a.js');
21
21
  require('./vega-event-id-58afed7a.js');
22
- require('./internal-translation-controller-1dac2df8.js');
22
+ require('./internal-translation-controller-51f7f865.js');
23
23
  require('./change-manager-a297e4d2.js');
24
24
  require('./static-subject-title-70c73b16.js');
25
- require('./internal-calendar-period-factory-dfcdd3f6.js');
26
- require('./type-guard-a57ef3ac.js');
25
+ require('./internal-calendar-period-factory-6196bc80.js');
26
+ require('./type-guard-b8d7bb3f.js');
27
27
  require('./typography-3ea4fe41.js');
28
- require('./link-extension-220ff6a9.js');
29
- require('./code-block-d78c2b2c.js');
28
+ require('./code-block-ea1f5eb3.js');
30
29
  require('./dom-node-subject-observer-factory-c82df135.js');
31
30
  require('./observer-f49483e8.js');
32
31
  require('./vega-internal-event-id-f4d33037.js');
33
32
  require('./string-39438062.js');
34
- require('./dark-mode-style-controller-32d4054a.js');
33
+ require('./dark-mode-style-controller-f3da3342.js');
35
34
  require('./tinycolor-polyfill-502efaa8.js');
36
35
  require('./vega-nonce-manager-df69d3ed.js');
37
- require('./index-592b4052.js');
36
+ require('./index-5d1adcd1.js');
38
37
  require('./object-b53e9416.js');
39
- require('./content-state-78a620a9.js');
38
+ require('./content-state-8d07d530.js');
39
+ require('./link-extension-11340e1c.js');
40
40
  require('./internal-icon-manager-40bcac72.js');
41
41
  require('./icon-manager-be358b32.js');
42
- require('./split-cell-operation-873d5db7.js');
42
+ require('./split-cell-operation-11bfb305.js');
43
43
  require('./remote-invocation-registry-fc22fdd0.js');
44
44
  require('./pixel-98f2a10c.js');
45
45
  require('./timer-5f33058b.js');
46
- require('./image-extension-260fa69c.js');
46
+ require('./image-extension-9659708b.js');
47
47
  require('./copy-d021c780.js');
48
48
  require('./vega-dialog-controller-16be85d5.js');
49
- require('./valid-credit-card-number-rule-4c0a3040.js');
49
+ require('./valid-credit-card-number-rule-f5a6f009.js');
50
50
  require('./internal-form-field-validation-rule.abstract-07cdff46.js');
51
51
  require('./vega-env-manager-23b8b23c.js');
52
52
 
@@ -60,13 +60,16 @@ export class VegaCalendarEventItemRenderer extends VegaSlimmer {
60
60
  // Step 2: append preview additional fields slot to preview component.
61
61
  const additionalFieldsSlot = this.host.querySelector('[slot=event-preview-additional-fields]');
62
62
  additionalFieldsSlot && preview.append(additionalFieldsSlot);
63
- // Step 3: append event slot to preview component.
63
+ // Step 3: append header slot to preview component if it exists.
64
+ const headerSlot = this.host.querySelector('[slot=event-preview-header]');
65
+ headerSlot && preview.append(headerSlot);
66
+ // Step 4: append event slot to preview component.
64
67
  const eventSlotName = getCalendarEventSlotName(event.event.key);
65
68
  const eventSlot = this.host.querySelector(`[slot=${eventSlotName}]`);
66
69
  const previewEventSlot = preview.querySelector(`[slot=${eventSlotName}]`);
67
70
  // Since event slot is used by vega-calendar-event, we should clone it to avoid remove from original position.
68
71
  eventSlot && !previewEventSlot && preview.append(eventSlot.cloneNode(true));
69
- // Step 4: append preview component to popover container to display.
72
+ // Step 5: append preview component to popover container to display.
70
73
  previewContainer.append(preview);
71
74
  }
72
75
  }
@@ -65,7 +65,7 @@ export class VegaCalendarEventPreviewDetailRenderer extends VegaSlimmer {
65
65
  this.renderActions(),
66
66
  h("vega-box", { class: "preview-content" },
67
67
  h("vega-flex", { gap: "size-16", direction: "col" },
68
- this.renderBasicFields(),
68
+ this.renderHeader(),
69
69
  this.renderDivider(),
70
70
  h("slot", { name: "event-preview-additional-fields" }))))));
71
71
  }
@@ -75,6 +75,14 @@ export class VegaCalendarEventPreviewDetailRenderer extends VegaSlimmer {
75
75
  showEditButton && (h("vega-button-circle", { "data-aria-label": VegaInternalTranslation.t('Edit event'), icon: VegaInternalIconManager.getIconKey('pen'), color: "text-primary", variant: "icon-only", "data-action-type": PreviewActionButtonType.Edit, ref: this.handleActionButtonClick })),
76
76
  h("vega-button-circle", { "data-aria-label": VegaInternalTranslation.t('Close event preview detail'), icon: VegaInternalIconManager.getIconKey('close'), color: "text-primary", variant: "icon-only", "data-action-type": PreviewActionButtonType.Close, ref: this.handleActionButtonClick })));
77
77
  }
78
+ renderHeader() {
79
+ const haveHeaderSlot = this.hasHeaderSlot();
80
+ return haveHeaderSlot ? h("slot", { name: "event-preview-header" }) : this.renderBasicFields();
81
+ }
82
+ hasHeaderSlot() {
83
+ const headerSlot = this.host.querySelector('[slot=event-preview-header]');
84
+ return Boolean(headerSlot);
85
+ }
78
86
  renderBasicFields() {
79
87
  const currentEvent = this.currentEvent;
80
88
  return (h(Fragment, null,
@@ -53,12 +53,12 @@ export class VegaCounterBadge {
53
53
  render() {
54
54
  return sanitizeVegaComponent(h(Host, null,
55
55
  h("div", { class: {
56
- 'dot': this.count > 0 && this.dot,
56
+ 'dot': this.dot,
57
57
  'counter': this.count > 0 && !this.dot,
58
58
  'multi-digit': this.count >= 10 && !this.dot,
59
59
  'v-bg-danger': this.color != 'bg-action',
60
60
  'v-bg-action': this.color == 'bg-action',
61
- 'default-position': this.count > 0,
61
+ 'default-position': this.dot || this.count > 0,
62
62
  }, style: { right: `${-this.offset[0]}px`, top: `${this.offset[1]}px` } }, this.renderCounter()),
63
63
  h("slot", null)), this.host);
64
64
  }
@@ -6,15 +6,17 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { h } from '@stencil/core';
8
8
  import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
9
+ import { htmlSanitizer, plainTextSanitizeStrategy } from '../../../../../utils/sanitize';
9
10
  export class VegaDropdownGroupRenderer extends VegaSlimmer {
10
11
  render() {
11
- return (h("li", { role: "group", "aria-label": this.label, class: "vega-dropdown-group" },
12
- this.renderLabel(),
12
+ const plainTextLabel = htmlSanitizer.sanitize(this.label, plainTextSanitizeStrategy);
13
+ return (h("li", { role: "group", "aria-label": plainTextLabel, class: "vega-dropdown-group" },
14
+ this.renderLabel(plainTextLabel),
13
15
  this.renderChildren(),
14
16
  this.renderDivide()));
15
17
  }
16
- renderLabel() {
17
- return (this.label && (h("div", { class: "vega-dropdown-group-label", "aria-hidden": "true" }, this.label)));
18
+ renderLabel(plainTextLabel) {
19
+ return (this.label && (h("div", { class: "vega-dropdown-group-label", "aria-hidden": "true" }, plainTextLabel)));
18
20
  }
19
21
  renderChildren() {
20
22
  return (h("ul", { role: "none", class: "vega-dropdown-group-items" },
@@ -7,7 +7,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  import { Fragment, h } from '@stencil/core';
8
8
  import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
9
9
  import { createEnterKeyHandlerToTriggerClick } from '../../../../../utils/accessibility';
10
- import { htmlSanitizer, labelSanitizeStrategy } from '../../../../../utils/sanitize';
10
+ import { htmlSanitizer, labelSanitizeStrategy, plainTextSanitizeStrategy, } from '../../../../../utils/sanitize';
11
11
  export class VegaDropdownItemRenderer extends VegaSlimmer {
12
12
  constructor() {
13
13
  super(...arguments);
@@ -18,7 +18,8 @@ export class VegaDropdownItemRenderer extends VegaSlimmer {
18
18
  };
19
19
  }
20
20
  render() {
21
- return (h("li", { key: this.label, role: "menuitem", "aria-label": this.count > 0 ? `${this.label}, ${this.count}` : this.label, "aria-disabled": `${this.disabled}`, class: {
21
+ const plainTextLabel = this.getPlainTextLabel();
22
+ return (h("li", { key: this.label, role: "menuitem", "aria-label": this.count > 0 ? `${plainTextLabel}, ${this.count}` : plainTextLabel, "aria-disabled": `${this.disabled}`, class: {
22
23
  'vega-dropdown-item-selected': this.selected,
23
24
  'vega-dropdown-item-disabled': this.disabled,
24
25
  [`vega-dropdown-item-display-${this.itemDisplayRule}`]: true,
@@ -73,6 +74,13 @@ export class VegaDropdownItemRenderer extends VegaSlimmer {
73
74
  onSelect(e) {
74
75
  this.vegaDropdownItemClickController.handleClick(e);
75
76
  }
77
+ getPlainTextLabel() {
78
+ const slotText = this.host.textContent.trim();
79
+ if (slotText) {
80
+ return slotText;
81
+ }
82
+ return htmlSanitizer.sanitize(this.label, plainTextSanitizeStrategy);
83
+ }
76
84
  renderLabelWithTooltip() {
77
85
  var _a, _b, _c;
78
86
  if (!this.label) {
@@ -5,6 +5,7 @@
5
5
  */
6
6
  :host {
7
7
  display: inline-block;
8
+ position: relative;
8
9
  }
9
10
 
10
11
  :host(.center-align) {
@@ -78,3 +78,19 @@ export const VegaRTEOneRowHeightPx = 22;
78
78
  export const RTE_DEFAULT_LINK_TYPE_KEY = 'url';
79
79
  export const RTE_EMAIL_LINK_TYPE_KEY = 'email';
80
80
  export const RTE_SUPPORTED_LINK_TYPE_KEYS = [RTE_DEFAULT_LINK_TYPE_KEY, RTE_EMAIL_LINK_TYPE_KEY];
81
+ /**
82
+ * Semantic marker used by renderers to identify elements that terminate
83
+ * continue-inline grouping during HTML -> DTO conversion.
84
+ */
85
+ export const RTE_BLOCK_BOUNDARY_ATTRIBUTE = 'data-vega-rte-block-boundary';
86
+ /**
87
+ * Custom DataTransfer MIME type used to tag a synthetic paste with the chosen
88
+ * paste mode (e.g. 'rich' or 'plain'), so downstream paste handling can decide
89
+ * whether to preserve the original inline styles.
90
+ */
91
+ export const RTE_PASTE_MODE_DATA_TYPE = 'application/x-vega-rte-paste-mode';
92
+ /**
93
+ * Custom DataTransfer MIME type value used to indicate that the paste content
94
+ * originated from Microsoft Word.
95
+ */
96
+ export const RTE_PASTE_MODE_WORD = 'word';
@@ -1,9 +1,10 @@
1
+ export const TEXT_STYLE_DEFAULT_FONT_WEIGHT = '500';
1
2
  const TEXT_STYLE_BASE = {
2
3
  fontFamily: 'Inter',
3
4
  fontSize: '16px',
4
5
  lineHeight: '22px',
5
6
  minHeight: '22px',
6
- fontWeight: '500',
7
+ fontWeight: TEXT_STYLE_DEFAULT_FONT_WEIGHT,
7
8
  };
8
9
  const PARAGRAPH_TEXT_STYLE = Object.assign(Object.assign({}, TEXT_STYLE_BASE), { marginTop: '0px', marginBottom: '0px' });
9
10
  export const TEXT_STYLE_VALUES = [
@@ -158,6 +158,17 @@ export class RTEBlock {
158
158
  }
159
159
  }
160
160
  }
161
+ /**
162
+ * Whether caret nearest-element detection may descend into this block's children.
163
+ * Transparent wrappers (e.g. html-block) return true so the caret resolves to the
164
+ * real inner node; atomic widgets like the table block return false so the caret
165
+ * stays anchored to the block boundary.
166
+ *
167
+ * @returns {boolean} True when descending is allowed.
168
+ */
169
+ allowsCaretDescend() {
170
+ return true;
171
+ }
161
172
  /**
162
173
  * Get the first node of the block
163
174
  *
@@ -39,6 +39,7 @@ export class RTEFilterStylesStrategyRegistry {
39
39
  * @param {RTEFilterStyles} styles - The full set of styles to filter.
40
40
  * @param {string[]} classNames - The class names to consider.
41
41
  * @returns {RTEFilterInlineStylesResult} The result of filtering, including the remaining styles and class names.
42
+ * The instance is also passed to matched strategies so they can make decisions from DTO annotations.
42
43
  */
43
44
  static executeTheStrategyFilterAction(blockOrNodeInstance, styles, classNames) {
44
45
  const dtoClassName = blockOrNodeInstance.dtoName;
@@ -47,7 +48,7 @@ export class RTEFilterStylesStrategyRegistry {
47
48
  return strategy.canFilter(blockOrNodeInstance);
48
49
  });
49
50
  return matchedStrategies.reduce((result, strategy) => {
50
- return strategy.filterAndDeleteStyles(result.styles, result.classNames);
51
+ return strategy.filterAndDeleteStyles(result.styles, result.classNames, blockOrNodeInstance);
51
52
  }, {
52
53
  styles,
53
54
  classNames,
@@ -36,13 +36,16 @@ export class RTEFilterStylesStrategy {
36
36
  return annotations;
37
37
  }
38
38
  /**
39
- * Filters and deletes the matched styles from the full styles object, add the corresponding class name if necessary, and returns the result.
39
+ * Filters and deletes matched styles from the full styles object, adds the corresponding class name if necessary, and returns the result.
40
40
  *
41
41
  * @param {RTEFilterStyles} fullStyles - The full set of styles to filter.
42
42
  * @param {string[]} classNames - The class names to consider.
43
+ * @param {RTEBlock | RTENode} [_blockOrNodeInstance] - The block or node the styles belong to. It is optional for strategies that only need styles and class names.
43
44
  * @returns {RTEFilterInlineStylesResult} The filtered styles and class names.
44
45
  */
45
- filterAndDeleteStyles(fullStyles, classNames) {
46
+ filterAndDeleteStyles(fullStyles, classNames,
47
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars
48
+ _blockOrNodeInstance) {
46
49
  const classSet = new Set(classNames);
47
50
  const shouldAddClass = this.extractAndDeleteMatchedStyles(fullStyles);
48
51
  if (shouldAddClass && this.classNameToBeAdded) {
@@ -1,8 +1,15 @@
1
+ import { NodeAnnotationTypeEnum } from '../../annotations/node-annotation.abstract';
2
+ import { TEXT_STYLE_DEFAULT_FONT_WEIGHT } from '../../annotations/text-style-default-styles';
1
3
  import { RTEFilterStylesStrategy } from '../filter-styles-strategy.abstract';
2
4
  import { Predicate } from '../predicate';
3
5
  /**
4
- * The TitleHeadingNodeFilterStylesStrategy is responsible for filtering styles from text nodes that are children of title and heading blocks.
5
- * In title and heading blocks, the text nodes will have a default bold style.
6
+ * Filters the default bold style from text nodes inside title and heading blocks.
7
+ * The source DTO distinguishes an explicitly non-bold node (`bold: false`) from
8
+ * a node with no bold annotation, even though both initially produce no weight in `fullStyles`.
9
+ *
10
+ * Bold nodes keep the existing strip/refill behaviour. Default nodes without a bold annotation
11
+ * remain bare for compatibility, while explicitly non-bold nodes receive the base weight so
12
+ * source-mode refill does not restore bold (VD-9375).
6
13
  */
7
14
  export class TitleHeadingNodeFilterStylesStrategy extends RTEFilterStylesStrategy {
8
15
  constructor() {
@@ -29,6 +36,19 @@ export class TitleHeadingNodeFilterStylesStrategy extends RTEFilterStylesStrateg
29
36
  filterAnnotations(annotations) {
30
37
  return annotations;
31
38
  }
39
+ /**
40
+ * Removes the default bold weight and preserves an explicit non-bold marker when needed.
41
+ *
42
+ * @inheritDoc
43
+ */
44
+ filterAndDeleteStyles(fullStyles, classNames, blockOrNodeInstance) {
45
+ var _a;
46
+ const result = super.filterAndDeleteStyles(fullStyles, classNames);
47
+ if (this.isExplicitlyNonBold(blockOrNodeInstance) && ((_a = result.styles) === null || _a === void 0 ? void 0 : _a.fontWeight) === undefined) {
48
+ result.styles = Object.assign(Object.assign({}, result.styles), { fontWeight: TitleHeadingNodeFilterStylesStrategy.NON_BOLD_FONT_WEIGHT });
49
+ }
50
+ return result;
51
+ }
32
52
  /**
33
53
  * Determines whether the dto instance is text node and its parent block is a heading or title.
34
54
  *
@@ -58,6 +78,18 @@ export class TitleHeadingNodeFilterStylesStrategy extends RTEFilterStylesStrateg
58
78
  const selectors = this.parentElementSelectors.map((key) => `.${TitleHeadingNodeFilterStylesStrategy.RTE_CONTENT_CONTAINER_CLASS_NAME} ${key}`);
59
79
  return `${selectors.join(',')} { ${this.convertStylesMapToCssText()} }`;
60
80
  }
81
+ /**
82
+ * Checks the annotation rather than `fullStyles`, because both an explicit `bold: false` node and
83
+ * a node without a bold annotation produce no font weight before this strategy runs.
84
+ *
85
+ * @param {RTEBlock | RTENode} [blockOrNodeInstance] - The block or node the styles belong to.
86
+ * @returns {boolean} True when the node has a `bold: false` annotation.
87
+ */
88
+ isExplicitlyNonBold(blockOrNodeInstance) {
89
+ var _a;
90
+ const boldAnnotation = (_a = blockOrNodeInstance) === null || _a === void 0 ? void 0 : _a.getAnnotationByType(NodeAnnotationTypeEnum.BOLD);
91
+ return (boldAnnotation === null || boldAnnotation === void 0 ? void 0 : boldAnnotation.bold) === false;
92
+ }
61
93
  /**
62
94
  * Checks if the parent block of the given node instance is a heading or title.
63
95
  *
@@ -96,6 +128,8 @@ export class TitleHeadingNodeFilterStylesStrategy extends RTEFilterStylesStrateg
96
128
  TitleHeadingNodeFilterStylesStrategy.BOLD_STYLES = {
97
129
  fontWeight: '700',
98
130
  };
131
+ /** Base weight used to preserve an explicitly non-bold title or heading node. */
132
+ TitleHeadingNodeFilterStylesStrategy.NON_BOLD_FONT_WEIGHT = TEXT_STYLE_DEFAULT_FONT_WEIGHT;
99
133
  TitleHeadingNodeFilterStylesStrategy.NON_HEADING_TITLE_ELEMENT_TAGS = [
100
134
  'TD',
101
135
  'TH',
@@ -3,6 +3,7 @@ import { InternalAnnotationTypeEnum } from '../../annotations/annotation.abstrac
3
3
  import { RTEBlockRenderer } from './block-renderer.abstract';
4
4
  import RTELinkWrapperRenderer from './link-wrapper-renderer';
5
5
  import RTEDTORendererManager from '../../../../../helpers/rte-manager/dto-renderer-manager';
6
+ import { NodeTypeEnum } from '../../nodes/node.abstract';
6
7
  import RTETextNodeRenderer from '../nodes/text-node-renderer';
7
8
  /**
8
9
  * Abstract class for rendering blocks that contain text nodes with support for rendering text with link styles.
@@ -75,9 +76,25 @@ export class RTEBlockTextNodesRenderer extends RTEBlockRenderer {
75
76
  */
76
77
  renderNodeFromDepth(node, depth, renderContext) {
77
78
  if (depth === 0) {
78
- const nodeRenderer = RTEDTORendererManager.getRTERenderer(node.type);
79
- return nodeRenderer.render(node, renderContext, h);
79
+ return this.getNodeRenderer(node).render(node, renderContext, h);
80
80
  }
81
- return RTETextNodeRenderer.renderFromAnnotation(node, node.getInlineHtmlAnnotationAtDepth(depth));
81
+ const annotation = node.getInlineHtmlAnnotationAtDepth(depth);
82
+ if (node.type !== NodeTypeEnum.TEXT) {
83
+ // Non-text nodes (e.g. tokens) must keep their own markup even when nested inside a
84
+ // shared inline HTML wrapper; the plain text renderer would drop attributes such as
85
+ // token-key. Render via the node's own renderer, then re-apply the remaining chain.
86
+ const inner = this.getNodeRenderer(node).render(node, renderContext, h);
87
+ return annotation ? RTETextNodeRenderer.wrapWithInlineHtml(inner, annotation) : inner;
88
+ }
89
+ return RTETextNodeRenderer.renderFromAnnotation(node, annotation);
90
+ }
91
+ /**
92
+ * Resolves the registered renderer for the given node's type.
93
+ *
94
+ * @param {RTETextNode} node - The node whose renderer is needed.
95
+ * @returns {VegaRTEBaseRenderer<RTENode, VNode>} The node renderer.
96
+ */
97
+ getNodeRenderer(node) {
98
+ return RTEDTORendererManager.getRTERenderer(node.type);
82
99
  }
83
100
  }
@@ -16,6 +16,18 @@ class RTETextNodeRenderer extends RTENodeRenderer {
16
16
  const textNodeDom = this.renderText(node);
17
17
  return annotation ? this.renderWithWrapper(textNodeDom, annotation) : textNodeDom;
18
18
  }
19
+ /**
20
+ * Wrap an already-rendered inner element with the given inline HTML annotation chain.
21
+ * Lets non-text nodes (e.g. tokens) keep their own markup while still being nested
22
+ * inside a shared inline HTML wrapper emitted by the grouped node renderer.
23
+ *
24
+ * @param {HTMLElement} inner - The already-rendered inner element to wrap.
25
+ * @param {InlineHtmlAnnotation} annotation - The inline HTML annotation chain to apply.
26
+ * @returns {HTMLElement} The wrapped element.
27
+ */
28
+ wrapWithInlineHtml(inner, annotation) {
29
+ return this.renderWithWrapper(inner, annotation);
30
+ }
19
31
  render(node) {
20
32
  return this.renderFromAnnotation(node, node.getAnnotationByType(NodeAnnotationTypeEnum.INLINE_HTML));
21
33
  }
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Per-editor registry for block-boundary predicates contributed by extensions.
3
+ */
4
+ export class BlockBoundaryRegistry {
5
+ constructor() {
6
+ this.predicates = new Set();
7
+ }
8
+ /**
9
+ * Register a block-boundary predicate.
10
+ *
11
+ * @param {BlockBoundaryPredicate} predicate - Predicate to register.
12
+ * @returns {() => void} Unregister callback.
13
+ */
14
+ register(predicate) {
15
+ this.predicates.add(predicate);
16
+ return () => {
17
+ this.predicates.delete(predicate);
18
+ };
19
+ }
20
+ /**
21
+ * Returns true when any registered predicate marks the element as a boundary.
22
+ *
23
+ * @param {HTMLElement} element - Element to inspect.
24
+ * @returns {boolean} Whether the element is a boundary.
25
+ */
26
+ isBoundary(element) {
27
+ for (const predicate of this.predicates) {
28
+ if (predicate(element)) {
29
+ return true;
30
+ }
31
+ }
32
+ return false;
33
+ }
34
+ }
@@ -10,6 +10,7 @@ import { methodPlaceholder } from 'vega-slimmer/core';
10
10
  import htmlElementToAnnotationGenerator from '../slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator';
11
11
  import { RTEFilterStylesStrategyRegistry } from '../dto/filter-styles-strategies/filter-styles-strategy-registry';
12
12
  import { RTEExtensionStateStore } from './rte-extension-state-store';
13
+ import stateEntityRenderingRegistry from '../slimmers/controllers/state-entity-rendering-registry';
13
14
  const patchedBlockClasses = new WeakSet();
14
15
  const annotationHandlersByClass = new WeakMap();
15
16
  /**
@@ -258,4 +259,23 @@ export class VegaRTEExtension {
258
259
  registerAnnotationHandler(handler) {
259
260
  htmlElementToAnnotationGenerator.registerHandler(handler);
260
261
  }
262
+ /**
263
+ * Register an extension-defined block-boundary predicate for the current editor instance.
264
+ *
265
+ * @param {BlockBoundaryPredicate} predicate - Predicate to register.
266
+ * @returns {Nullable<() => void>} Unregister callback when context is available.
267
+ */
268
+ registerBlockBoundaryPredicate(predicate) {
269
+ var _a, _b, _c;
270
+ return (_c = (_b = (_a = this.extensionContext) === null || _a === void 0 ? void 0 : _a.blockBoundaryRegistry) === null || _b === void 0 ? void 0 : _b.register(predicate)) !== null && _c !== void 0 ? _c : null;
271
+ }
272
+ /**
273
+ * Get the registered dto by dom element.
274
+ *
275
+ * @param {HTMLElement} el - The DOM element to get the registered DTO for.
276
+ * @returns {Nullable<RTENode | RTEBlock>} - The registered DTO associated with the DOM element.
277
+ */
278
+ getDTOEntityByDom(el) {
279
+ return stateEntityRenderingRegistry.getEntityByDOM(el);
280
+ }
261
281
  }
@@ -4,6 +4,7 @@ import { generateUUID } from '../../../../../utils/misc';
4
4
  import { InsertChildrenAfterAction } from '../../../dto/actions/insert-children-after-block';
5
5
  import { AppendChildrenAction } from '../../../dto/actions/append-child-nodes-action';
6
6
  import { RTEFunctionBlock } from '../dto/function-block';
7
+ import { FUNCTION_CONTENT_CLASS } from '../constants';
7
8
  /**
8
9
  * Strategy to handle the insertion of a function block into the rich text editor.
9
10
  */
@@ -46,7 +47,7 @@ export class InsertFunctionBlockStrategy extends ActionHandleStrategy {
46
47
  {
47
48
  id: `${id}-2`,
48
49
  annotations: {
49
- customClass: ['statementelement'],
50
+ customClass: [FUNCTION_CONTENT_CLASS],
50
51
  },
51
52
  type: 'paragraph',
52
53
  nodes: [
@@ -65,7 +66,7 @@ export class InsertFunctionBlockStrategy extends ActionHandleStrategy {
65
66
  {
66
67
  id: `${id}-4`,
67
68
  annotations: {
68
- customClass: ['statementelement'],
69
+ customClass: [FUNCTION_CONTENT_CLASS],
69
70
  },
70
71
  type: 'paragraph',
71
72
  nodes: [
@@ -0,0 +1,8 @@
1
+ export const FUNCTION_BLOCK_CLASS = 'statement';
2
+ export const FUNCTION_CONTENT_CLASS = 'statementelement';
3
+ export const FUNCTION_SYNTAX_CLASS = 'statementsyntax';
4
+ export const FUNCTION_ELEMENT_CLASSES = [
5
+ FUNCTION_BLOCK_CLASS,
6
+ FUNCTION_CONTENT_CLASS,
7
+ FUNCTION_SYNTAX_CLASS,
8
+ ];
@@ -2,6 +2,8 @@ import { generateUUID } from '../../../../../utils/misc';
2
2
  import { RTEAnnotationStyle } from '../../../dto/annotations/annotation-style';
3
3
  import { RTEBlock } from '../../../dto/blocks/block.abstract';
4
4
  import { RTETextBlock } from '../../../dto/blocks/text-block';
5
+ import { FUNCTION_BLOCK_CLASS, FUNCTION_CONTENT_CLASS } from '../constants';
6
+ import { RTE_BLOCK_BOUNDARY_ATTRIBUTE } from '../../../constants/constant';
5
7
  /**
6
8
  * RTE Function Block
7
9
  */
@@ -21,7 +23,7 @@ export class RTEFunctionBlock extends RTEBlock {
21
23
  */
22
24
  static from(block, options) {
23
25
  const functionBlock = new RTEFunctionBlock(block.id);
24
- const defaultAnnotation = { customClass: ['statement'] };
26
+ const defaultAnnotation = { customClass: [FUNCTION_BLOCK_CLASS] };
25
27
  let { annotations } = block;
26
28
  annotations = annotations
27
29
  ? Object.assign(Object.assign({}, annotations), defaultAnnotation) : defaultAnnotation;
@@ -39,14 +41,14 @@ export class RTEFunctionBlock extends RTEBlock {
39
41
  .map((child) => {
40
42
  if (child instanceof RTETextBlock) {
41
43
  const attrStr = this.getFunctionContentStyle(child);
42
- return `<div class="statementelement"${attrStr}>${child.getChildrenHtml()}</div>`;
44
+ return `<div class="${FUNCTION_CONTENT_CLASS}"${attrStr}>${child.getChildrenHtml()}</div>`;
43
45
  }
44
46
  else {
45
47
  return child.toHtml();
46
48
  }
47
49
  })
48
50
  .join('');
49
- return `<div class="statement">${childrenHtml}</div>`;
51
+ return `<div class="${FUNCTION_BLOCK_CLASS}" ${RTE_BLOCK_BOUNDARY_ATTRIBUTE}>${childrenHtml}</div>`;
50
52
  }
51
53
  /**
52
54
  * @inheritDoc
@@ -67,6 +69,15 @@ export class RTEFunctionBlock extends RTEBlock {
67
69
  getLastNode() {
68
70
  return this.children[this.children.length - 1].getLastNode();
69
71
  }
72
+ /**
73
+ * The function block is an atomic caret boundary: descending would resolve the caret onto a
74
+ * `contenteditable="false"` logic-control node instead of staying anchored to the block.
75
+ *
76
+ * @inheritDoc
77
+ */
78
+ allowsCaretDescend() {
79
+ return false;
80
+ }
70
81
  /**
71
82
  * @inheritDoc
72
83
  */
@@ -1,4 +1,5 @@
1
1
  import { RTEBlock } from '../../../dto/blocks/block.abstract';
2
+ import { FUNCTION_SYNTAX_CLASS } from '../constants';
2
3
  import { RTELogicControlNode } from '../dto/logic-control-node';
3
4
  /**
4
5
  * Class representing a logic control block in the rich text editor.
@@ -48,7 +49,7 @@ export class RTELogicControlBlock extends RTEBlock {
48
49
  * @returns {string} - The HTML string of the logic control block.
49
50
  */
50
51
  toHtml() {
51
- return `<div class='statementsyntax' contenteditable='false'>${this.statementText}</div>`;
52
+ return `<div class='${FUNCTION_SYNTAX_CLASS}' contenteditable='false'>${this.statementText}</div>`;
52
53
  }
53
54
  /**
54
55
  * Clone the current block instance.
@@ -0,0 +1,19 @@
1
+ import { HtmlBlockStrategy } from '../../../slimmers/controllers/helper/element-to-dto-strategy/html-block-strategy';
2
+ import { FUNCTION_BLOCK_CLASS } from '../constants';
3
+ import { RTE_BLOCK_BOUNDARY_ATTRIBUTE } from '../../../constants/constant';
4
+ import { isFunctionBlockElement } from '../utils';
5
+ /** Preserve a div that contains a function block during auto-formatting. */
6
+ export class FunctionBlockContainerStrategy extends HtmlBlockStrategy {
7
+ /**
8
+ * @inheritDoc
9
+ */
10
+ canHandle(elementsArray, currentIndex) {
11
+ const element = elementsArray[currentIndex];
12
+ if (element.nodeType !== Node.ELEMENT_NODE)
13
+ return 0;
14
+ const containsFunctionBlock = !!element.querySelector(`[${RTE_BLOCK_BOUNDARY_ATTRIBUTE}], .${FUNCTION_BLOCK_CLASS}`);
15
+ return element.nodeName === 'DIV' && !isFunctionBlockElement(element) && containsFunctionBlock
16
+ ? 1
17
+ : 0;
18
+ }
19
+ }