@globalpayments/vega 2.91.0 → 2.93.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 (637) hide show
  1. package/dist/cjs/{app-globals-7bb10088.js → app-globals-f7ad9275.js} +17 -10
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-76d19d56.js → child-nodes-event-prevent-slimmer-e67ee84c.js} +2 -2
  3. package/dist/cjs/{code-block-c1039791.js → code-block-2f3d0f38.js} +64 -11
  4. package/dist/cjs/{component-value-history-controller-slimmer.abstract-1d36641d.js → component-value-history-controller-slimmer.abstract-31d2c7aa.js} +72 -39
  5. package/dist/cjs/{content-state-a6105949.js → content-state-13daf87a.js} +91 -8
  6. package/dist/cjs/copy-d021c780.js +7 -0
  7. package/dist/cjs/{date-required-rule-c4997459.js → date-required-rule-e65ddd7d.js} +1 -1
  8. package/dist/cjs/{design-token-f65eab4a.js → design-token-47393cbb.js} +3 -3
  9. package/dist/cjs/{element-appender-slimmer-316668d0.js → element-appender-slimmer-29c4ac60.js} +18 -9
  10. package/dist/cjs/{event-emit-slimmer-5bab10c2.js → event-emit-slimmer-d234a619.js} +1 -1
  11. package/dist/cjs/{file-uploader-required-rule-cc51d4ab.js → file-uploader-required-rule-5520bbec.js} +1 -1
  12. package/dist/cjs/{form-field-controller-slimmer-b0c35330.js → form-field-controller-slimmer-3bfcf88c.js} +1 -1
  13. package/dist/cjs/{image-annotation-action-e4596726.js → image-annotation-action-c2b163bb.js} +3 -3
  14. package/dist/cjs/image-extension-4e99b620.js +39 -0
  15. package/dist/cjs/index-58ea899e.js +4 -0
  16. package/dist/cjs/index.cjs.js +30 -22
  17. package/dist/cjs/{inject-keyboard-manager-1f5bbb19.js → inject-keyboard-manager-4b2ebbe4.js} +1 -1
  18. package/dist/cjs/{internal-calendar-period-factory-9c66cf36.js → internal-calendar-period-factory-7a0ecdb1.js} +1 -1
  19. package/dist/cjs/{internal-translation-controller-5905469e.js → internal-translation-controller-31f2b057.js} +18 -0
  20. package/dist/cjs/{internal-vega-event-manager-7196a847.js → internal-vega-event-manager-13c4012b.js} +2 -1
  21. package/dist/cjs/{keyboard-manager-61e8ce38.js → keyboard-manager-c78b46bd.js} +1 -1
  22. package/dist/cjs/{keyboard-manager-slimmer-079a7e87.js → keyboard-manager-slimmer-d350c931.js} +1 -1
  23. package/dist/cjs/{link-extension-a7ac28f3.js → link-extension-455c02b3.js} +3 -3
  24. package/dist/cjs/loader.cjs.js +17 -15
  25. package/dist/cjs/{month-view-generator-48215a05.js → month-view-generator-006562dc.js} +1 -1
  26. package/dist/cjs/{public-rules-66540638.js → public-rules-c59eba88.js} +10 -10
  27. package/dist/cjs/{range-dea19a90.js → range-bf80fa40.js} +25 -3
  28. package/dist/cjs/{replace-selected-text-action-6d1ebbf9.js → replace-selected-text-action-a80f5a6a.js} +1 -1
  29. package/dist/cjs/{required-field-rule-b12a29e1.js → required-field-rule-400690c3.js} +1 -1
  30. package/dist/cjs/{responsive-format-facade-10ff730e.js → responsive-format-facade-1af54330.js} +2 -2
  31. package/dist/cjs/{rich-text-editor-required-rule-63492ca3.js → rich-text-editor-required-rule-1085c71a.js} +1 -1
  32. package/dist/cjs/{split-cell-operation-30e5dd4a.js → split-cell-operation-2fa5c9e4.js} +3 -3
  33. package/dist/cjs/{state-border-formatter-e7779964.js → state-border-formatter-501f6645.js} +1 -1
  34. package/dist/cjs/{string-format-strategy.abstract-a22f0cb1.js → string-format-strategy.abstract-a02bf002.js} +1 -1
  35. package/dist/cjs/{string-input-formatter-slimmer-8179eb40.js → string-input-formatter-slimmer-9cca6151.js} +1 -1
  36. package/dist/cjs/{string-mask-strategy-8b9bb0c1.js → string-mask-strategy-4c174ebf.js} +2 -2
  37. package/dist/cjs/{style-formatter-380b9a86.js → style-formatter-2c749500.js} +2 -2
  38. package/dist/cjs/{time-required-rule-080d975b.js → time-required-rule-04994a5e.js} +1 -1
  39. package/dist/cjs/{token-extension-619379a3.js → token-extension-d217914d.js} +3622 -742
  40. package/dist/cjs/{translation-slimmer-2af6f141.js → translation-slimmer-7fb6e94c.js} +1 -1
  41. package/dist/cjs/{type-guard-0171e779.js → type-guard-1c3770d4.js} +1 -1
  42. package/dist/cjs/{valid-credit-card-number-rule-fdfca83e.js → valid-credit-card-number-rule-f719a8c6.js} +1 -1
  43. package/dist/cjs/vega-accordion.cjs.entry.js +21 -13
  44. package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
  45. package/dist/cjs/vega-app-header-button.cjs.entry.js +10 -10
  46. package/dist/cjs/vega-banner.cjs.entry.js +6 -9
  47. package/dist/cjs/vega-box.cjs.entry.js +7 -7
  48. package/dist/cjs/vega-breadcrumb.cjs.entry.js +5 -5
  49. package/dist/cjs/vega-button-circle.cjs.entry.js +10 -10
  50. package/dist/cjs/vega-button-group_2.cjs.entry.js +5 -5
  51. package/dist/cjs/vega-button-link.cjs.entry.js +5 -5
  52. package/dist/cjs/vega-button.cjs.entry.js +8 -8
  53. package/dist/cjs/vega-calendar_5.cjs.entry.js +12 -12
  54. package/dist/cjs/vega-card.cjs.entry.js +6 -6
  55. package/dist/cjs/vega-carousel.cjs.entry.js +7 -7
  56. package/dist/cjs/vega-checkbox_2.cjs.entry.js +8 -8
  57. package/dist/cjs/vega-chip.cjs.entry.js +10 -10
  58. package/dist/cjs/vega-code-block.cjs.entry.js +15 -18
  59. package/dist/cjs/vega-color-picker.cjs.entry.js +7 -7
  60. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +9 -9
  61. package/dist/cjs/vega-color-swatch.cjs.entry.js +5 -5
  62. package/dist/cjs/vega-combo-box.cjs.entry.js +21 -15
  63. package/dist/cjs/vega-date-picker_2.cjs.entry.js +18 -18
  64. package/dist/cjs/vega-dialog_2.cjs.entry.js +21 -10
  65. package/dist/cjs/vega-divider.cjs.entry.js +6 -6
  66. package/dist/cjs/vega-dropdown_5.cjs.entry.js +694 -196
  67. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  68. package/dist/cjs/{vega-event-id-df22d80e.js → vega-event-id-58afed7a.js} +2 -0
  69. package/dist/cjs/vega-field-label.cjs.entry.js +16 -12
  70. package/dist/cjs/vega-file-uploader.cjs.entry.js +9 -9
  71. package/dist/cjs/vega-flag-icon.cjs.entry.js +6 -6
  72. package/dist/cjs/vega-flex.cjs.entry.js +7 -7
  73. package/dist/cjs/vega-font.cjs.entry.js +6 -6
  74. package/dist/cjs/vega-form.cjs.entry.js +8 -8
  75. package/dist/cjs/vega-grid.cjs.entry.js +6 -6
  76. package/dist/cjs/vega-icon.cjs.entry.js +6 -6
  77. package/dist/cjs/vega-image-uploader.cjs.entry.js +11 -11
  78. package/dist/cjs/vega-input-credit-card.cjs.entry.js +12 -12
  79. package/dist/cjs/vega-input-numeric.cjs.entry.js +11 -11
  80. package/dist/cjs/vega-input-passcode.cjs.entry.js +11 -11
  81. package/dist/cjs/vega-input-phone-number.cjs.entry.js +9 -9
  82. package/dist/cjs/vega-input-range.cjs.entry.js +8 -8
  83. package/dist/cjs/vega-input-select.cjs.entry.js +11 -11
  84. package/dist/cjs/vega-input.cjs.entry.js +12 -12
  85. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  86. package/dist/cjs/vega-left-nav_5.cjs.entry.js +11 -11
  87. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +4 -4
  88. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  89. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +4 -4
  90. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +3 -3
  91. package/dist/cjs/vega-pagination.cjs.entry.js +9 -9
  92. package/dist/cjs/vega-popover_2.cjs.entry.js +12 -12
  93. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +7 -7
  94. package/dist/cjs/vega-radio_2.cjs.entry.js +11 -11
  95. package/dist/cjs/vega-rich-text-content.cjs.entry.js +7 -7
  96. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +677 -95
  97. package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +233 -0
  98. package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +8 -8
  99. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +13 -13
  100. package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
  101. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +10 -10
  102. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +8 -8
  103. package/dist/cjs/vega-sidenav_3.cjs.entry.js +7 -7
  104. package/dist/cjs/vega-signature-capture.cjs.entry.js +12 -12
  105. package/dist/cjs/vega-stepper.cjs.entry.js +7 -7
  106. package/dist/cjs/vega-tab-group_2.cjs.entry.js +5 -5
  107. package/dist/cjs/vega-table_11.cjs.entry.js +912 -429
  108. package/dist/cjs/vega-textarea.cjs.entry.js +9 -11
  109. package/dist/cjs/vega-time-picker_2.cjs.entry.js +35 -15
  110. package/dist/cjs/vega-toggle-switch.cjs.entry.js +5 -5
  111. package/dist/cjs/vega-tooltip_2.cjs.entry.js +7 -7
  112. package/dist/cjs/vega.cjs.js +17 -15
  113. package/dist/cjs/xmark-large-faae5a80.js +7 -0
  114. package/dist/collection/collection-manifest.json +6 -0
  115. package/dist/collection/components/vega-accordion/slimmers/vega-accordion-renderer.js +11 -3
  116. package/dist/collection/components/vega-box/vega-box.js +3 -3
  117. package/dist/collection/components/vega-code-block/slimmers/renderers/vega-code-block-copy-button-renderer.js +1 -1
  118. package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +4 -1
  119. package/dist/collection/components/vega-combo-box/vega-combo-box.js +7 -1
  120. package/dist/collection/components/vega-dialog/vega-dialog.js +1 -1
  121. package/dist/collection/components/vega-dropdown/constants.js +1 -0
  122. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +9 -0
  123. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.js +97 -4
  124. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-select-all-controller.js +219 -0
  125. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-selected-controller.js +78 -13
  126. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +13 -1
  127. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +7 -0
  128. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.js +52 -1
  129. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +4 -1
  130. package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.js +5 -0
  131. package/dist/collection/components/vega-dropdown/vega-dropdown.js +126 -1
  132. package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.js +5 -4
  133. package/dist/collection/components/vega-field-label/vega-field-label.css +20 -0
  134. package/dist/collection/components/vega-field-label/vega-field-label.js +7 -4
  135. package/dist/collection/components/vega-hint/vega-hint.js +1 -1
  136. package/dist/collection/components/vega-input/vega-input.css +1 -0
  137. package/dist/collection/components/vega-input/vega-input.js +1 -1
  138. package/dist/collection/components/vega-input-select/vega-input-select.js +1 -1
  139. package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +4 -1
  140. package/dist/collection/components/vega-modal/vega-modal.css +0 -1
  141. package/dist/collection/components/vega-modal/vega-modal.js +38 -0
  142. package/dist/collection/components/vega-rich-text-editor/assets/cut.js +3 -0
  143. package/dist/collection/components/vega-rich-text-editor/assets/redo.js +1 -1
  144. package/dist/collection/components/vega-rich-text-editor/assets/undo.js +1 -1
  145. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-text-or-decorator-node-strategy.js +16 -1
  146. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-line-break-strategy.js +11 -5
  147. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-merge-nodes-strategy.js +25 -0
  148. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-split-with-text-node-strategy.js +9 -4
  149. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/delete-selected-content-strategy.js +16 -0
  150. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.js +61 -5
  151. package/dist/collection/components/vega-rich-text-editor/dto/actions/delete-selected-content-action.js +17 -0
  152. package/dist/collection/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.js +1 -0
  153. package/dist/collection/components/vega-rich-text-editor/dto/actions/paste-content-action.js +1 -0
  154. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +2 -0
  155. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +6 -1
  156. package/dist/collection/components/vega-rich-text-editor/dto/range.js +24 -2
  157. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-interceptors/blockquote-exit-on-enter-interceptor.js +61 -0
  158. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/block-transform-to-blockquote-strategy.js +40 -0
  159. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/remove-blockquote-strategy.js +20 -0
  160. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/actions/remove-blockquote-action.js +17 -0
  161. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/actions/transform-to-blockquote-action.js +19 -0
  162. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/assets/quote-left.js +4 -0
  163. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/blockquote-extension.js +47 -0
  164. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/dto/blockquote-annotation.js +76 -0
  165. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/dto/rte-blockquote-block.js +70 -0
  166. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/element-to-dto-strategies/blockquote-to-blockquote-block-strategy.js +53 -0
  167. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/filter-styles-strategies/blockquote-block/blockquote-filter-styles-strategy.js +41 -0
  168. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-block-renderer.js +21 -0
  169. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.js +260 -0
  170. package/dist/collection/components/vega-rich-text-editor/extensions/copy/action-handler-strategies/copy-selected-content-strategy.js +226 -0
  171. package/dist/collection/components/vega-rich-text-editor/extensions/copy/actions/copy-selected-content-action.js +21 -0
  172. package/dist/collection/components/vega-rich-text-editor/extensions/copy/copy-extension.js +20 -0
  173. package/dist/collection/components/vega-rich-text-editor/extensions/copy/copy-toolbar-button-renderer.js +58 -0
  174. package/dist/collection/components/vega-rich-text-editor/extensions/cut/cut-extension.js +15 -0
  175. package/dist/collection/components/vega-rich-text-editor/extensions/cut/cut-toolbar-button-renderer.js +44 -0
  176. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/assets/find-and-replace.js +3 -0
  177. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/find-replace-extension.js +18 -0
  178. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/find-controller.js +105 -0
  179. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/find-replace-controller.abstract.js +68 -0
  180. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/block-search-strategy.abstract.js +8 -0
  181. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/code-block-search-strategy.js +19 -0
  182. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/container-block-search-strategy.js +23 -0
  183. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/list-item-block-search-strategy.js +30 -0
  184. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/text-block-search-strategy.js +20 -0
  185. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-highlight-manager.js +266 -0
  186. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-state.js +346 -0
  187. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/replace-controller.js +113 -0
  188. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.js +194 -0
  189. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/vega-rich-text-find-replace-panel/slimmers/renderers/find-replace-panel-renderer.js +153 -0
  190. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/vega-rich-text-find-replace-panel/vega-rich-text-find-replace-panel.css +50 -0
  191. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/vega-rich-text-find-replace-panel/vega-rich-text-find-replace-panel.js +156 -0
  192. package/dist/collection/components/vega-rich-text-editor/extensions/functions/function-extension.js +2 -1
  193. package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/horizontal-line-extension.js +2 -1
  194. package/dist/collection/components/vega-rich-text-editor/extensions/image/image-extension.js +34 -0
  195. package/dist/collection/components/vega-rich-text-editor/extensions/image/type.js +1 -0
  196. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-extension.js +2 -1
  197. package/dist/collection/components/vega-rich-text-editor/extensions/line-height/line-height-extension.js +2 -1
  198. package/dist/collection/components/vega-rich-text-editor/extensions/paste/assets/paste.js +3 -0
  199. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.js +144 -0
  200. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-constants.js +6 -0
  201. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-extension.js +442 -0
  202. package/dist/collection/components/vega-rich-text-editor/extensions/special-characters/special-characters-extension.js +2 -1
  203. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +1 -1
  204. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +6 -4
  205. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/slimmers/controllers/selection-widget-keyboard-controller.js +1 -1
  206. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-extension.js +2 -1
  207. package/dist/collection/components/vega-rich-text-editor/helpers/utils.js +14 -0
  208. package/dist/collection/components/vega-rich-text-editor/public-api.js +7 -0
  209. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/abstract-delete-content-handler.js +133 -0
  210. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/backward-delete-content-handler.js +35 -0
  211. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.js +1 -1
  212. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/forward-delete-content-handler.js +93 -0
  213. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +1 -1
  214. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +385 -25
  215. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +69 -36
  216. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +9 -3
  217. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +59 -14
  218. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.js +6 -1
  219. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +28 -1
  220. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +1 -1
  221. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.js +1 -1
  222. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.js +1 -1
  223. package/dist/collection/components/vega-table/slimmers/controllers/dto/column-render-input-model.js +32 -0
  224. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.js +77 -0
  225. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.js +121 -0
  226. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-cell-renderer.js +39 -14
  227. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js +207 -7
  228. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-row-renderer.js +16 -3
  229. package/dist/collection/components/vega-table/vega-table-cell/vega-table-cell.js +24 -4
  230. package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-col-span-controller.js +11 -2
  231. package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +5 -1
  232. package/dist/collection/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.js +22 -1
  233. package/dist/collection/components/vega-table/vega-table.css +5 -0
  234. package/dist/collection/components/vega-table/vega-table.js +5 -0
  235. package/dist/collection/components/vega-text/vega-text.js +1 -1
  236. package/dist/collection/components/vega-textarea/vega-textarea.js +2 -4
  237. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +4 -0
  238. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +4 -0
  239. package/dist/collection/components/vega-time-picker/vega-time-picker.js +39 -0
  240. package/dist/collection/constants/ui.js +1 -0
  241. package/dist/collection/global/scripts/before-vega-load.js +12 -0
  242. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -1
  243. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
  244. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +11 -4
  245. package/dist/collection/helpers/translation/locales/en.js +18 -0
  246. package/dist/collection/helpers/ui/element-appender.js +5 -2
  247. package/dist/esm/{app-globals-6041f52f.js → app-globals-9950d055.js} +17 -10
  248. package/dist/esm/{aria-dialog-focusable-trap-slimmer-1332c071.js → aria-dialog-focusable-trap-slimmer-9eae86c6.js} +1 -1
  249. package/dist/esm/{child-nodes-event-prevent-slimmer-50022584.js → child-nodes-event-prevent-slimmer-96c14f5a.js} +2 -2
  250. package/dist/esm/{code-block-37294847.js → code-block-ae2337c2.js} +65 -13
  251. package/dist/esm/{component-value-history-controller-slimmer.abstract-45ccddc9.js → component-value-history-controller-slimmer.abstract-b1ee1b8e.js} +73 -40
  252. package/dist/esm/{content-state-67950b80.js → content-state-c3b85ae6.js} +92 -9
  253. package/dist/esm/copy-54e45e2d.js +5 -0
  254. package/dist/esm/{date-required-rule-958cf380.js → date-required-rule-e06115f8.js} +1 -1
  255. package/dist/esm/{design-token-e7e78f18.js → design-token-4e682056.js} +3 -3
  256. package/dist/esm/{element-appender-slimmer-ebda526d.js → element-appender-slimmer-a4485ef6.js} +19 -10
  257. package/dist/esm/{event-emit-slimmer-b94cec83.js → event-emit-slimmer-db4a82e0.js} +1 -1
  258. package/dist/esm/{file-uploader-required-rule-82188a61.js → file-uploader-required-rule-96952e1a.js} +1 -1
  259. package/dist/esm/{form-field-controller-slimmer-0a2ba886.js → form-field-controller-slimmer-a1c7b28c.js} +3 -3
  260. package/dist/esm/{image-annotation-action-7f7a5678.js → image-annotation-action-4c77d314.js} +3 -3
  261. package/dist/esm/image-extension-7108c27d.js +37 -0
  262. package/dist/esm/index-090d31ca.js +4 -0
  263. package/dist/esm/index.js +24 -23
  264. package/dist/esm/{inject-keyboard-manager-2b19c121.js → inject-keyboard-manager-e8ddb78d.js} +1 -1
  265. package/dist/esm/{internal-calendar-period-factory-fff8aaee.js → internal-calendar-period-factory-6f19d767.js} +1 -1
  266. package/dist/esm/{internal-translation-controller-aa09ca87.js → internal-translation-controller-09b8bd13.js} +18 -0
  267. package/dist/esm/{internal-vega-event-manager-956cf128.js → internal-vega-event-manager-48690e5b.js} +2 -1
  268. package/dist/esm/{keyboard-manager-3e5b157f.js → keyboard-manager-ec18721b.js} +1 -1
  269. package/dist/esm/{keyboard-manager-slimmer-ba5cc767.js → keyboard-manager-slimmer-531ddb0e.js} +1 -1
  270. package/dist/esm/{link-extension-afb404fb.js → link-extension-74eaa826.js} +3 -3
  271. package/dist/esm/loader.js +18 -16
  272. package/dist/esm/{month-view-generator-7a0c869c.js → month-view-generator-afd78ff8.js} +1 -1
  273. package/dist/esm/{public-rules-f64b0b78.js → public-rules-5fce32a5.js} +11 -11
  274. package/dist/esm/{range-4d09a305.js → range-8f877dbf.js} +25 -3
  275. package/dist/esm/{replace-selected-text-action-12bc8b82.js → replace-selected-text-action-c9278a0f.js} +1 -1
  276. package/dist/esm/{required-field-rule-a4634842.js → required-field-rule-897fe8d1.js} +1 -1
  277. package/dist/esm/{responsive-format-facade-844c5e09.js → responsive-format-facade-299e6304.js} +2 -2
  278. package/dist/esm/{rich-text-editor-required-rule-d62d418e.js → rich-text-editor-required-rule-3047bab0.js} +1 -1
  279. package/dist/esm/{split-cell-operation-c515669e.js → split-cell-operation-98d58410.js} +3 -3
  280. package/dist/esm/{state-border-formatter-f53847a5.js → state-border-formatter-da52b626.js} +1 -1
  281. package/dist/esm/{string-format-strategy.abstract-a0327405.js → string-format-strategy.abstract-a45b5ff7.js} +1 -1
  282. package/dist/esm/{string-input-formatter-slimmer-12de4a25.js → string-input-formatter-slimmer-4a032fed.js} +3 -3
  283. package/dist/esm/{string-mask-strategy-3bb03155.js → string-mask-strategy-37e53e48.js} +2 -2
  284. package/dist/esm/{style-formatter-df7bf8ec.js → style-formatter-3d5ddfb1.js} +2 -2
  285. package/dist/esm/{sub-state-notify-slimmer-7ef94141.js → sub-state-notify-slimmer-0f72ce74.js} +1 -1
  286. package/dist/esm/{sub-state-observer-slimmer-d9ad2bdd.js → sub-state-observer-slimmer-64532d94.js} +1 -1
  287. package/dist/esm/{time-required-rule-db0dee53.js → time-required-rule-355b73d2.js} +1 -1
  288. package/dist/esm/{token-extension-8ff92d14.js → token-extension-ecfafe94.js} +3618 -745
  289. package/dist/esm/{translation-slimmer-4904e7fe.js → translation-slimmer-3ea56354.js} +1 -1
  290. package/dist/esm/{type-guard-a2cbaae9.js → type-guard-2bfb2c7b.js} +1 -1
  291. package/dist/esm/{valid-credit-card-number-rule-a3f9858d.js → valid-credit-card-number-rule-52c6b029.js} +1 -1
  292. package/dist/esm/vega-accordion.entry.js +21 -13
  293. package/dist/esm/vega-app-footer.entry.js +3 -3
  294. package/dist/esm/vega-app-header-button.entry.js +10 -10
  295. package/dist/esm/vega-banner.entry.js +5 -8
  296. package/dist/esm/vega-box.entry.js +7 -7
  297. package/dist/esm/vega-breadcrumb.entry.js +5 -5
  298. package/dist/esm/vega-button-circle.entry.js +11 -11
  299. package/dist/esm/vega-button-group_2.entry.js +8 -8
  300. package/dist/esm/vega-button-link.entry.js +5 -5
  301. package/dist/esm/vega-button.entry.js +9 -9
  302. package/dist/esm/vega-calendar_5.entry.js +15 -15
  303. package/dist/esm/vega-card.entry.js +6 -6
  304. package/dist/esm/vega-carousel.entry.js +7 -7
  305. package/dist/esm/vega-checkbox_2.entry.js +10 -10
  306. package/dist/esm/vega-chip.entry.js +10 -10
  307. package/dist/esm/vega-code-block.entry.js +15 -18
  308. package/dist/esm/vega-color-picker.entry.js +9 -9
  309. package/dist/esm/vega-color-swatch-picker.entry.js +11 -11
  310. package/dist/esm/vega-color-swatch.entry.js +5 -5
  311. package/dist/esm/vega-combo-box.entry.js +23 -17
  312. package/dist/esm/vega-date-picker_2.entry.js +22 -22
  313. package/dist/esm/vega-dialog_2.entry.js +23 -12
  314. package/dist/esm/vega-divider.entry.js +6 -6
  315. package/dist/esm/vega-dropdown_5.entry.js +700 -202
  316. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  317. package/dist/esm/{vega-event-id-268f8def.js → vega-event-id-270fe47e.js} +2 -1
  318. package/dist/esm/vega-field-label.entry.js +16 -12
  319. package/dist/esm/vega-file-uploader.entry.js +11 -11
  320. package/dist/esm/vega-flag-icon.entry.js +6 -6
  321. package/dist/esm/vega-flex.entry.js +7 -7
  322. package/dist/esm/vega-font.entry.js +6 -6
  323. package/dist/esm/vega-form.entry.js +11 -11
  324. package/dist/esm/vega-grid.entry.js +6 -6
  325. package/dist/esm/vega-icon.entry.js +6 -6
  326. package/dist/esm/vega-image-uploader.entry.js +13 -13
  327. package/dist/esm/vega-input-credit-card.entry.js +14 -14
  328. package/dist/esm/vega-input-numeric.entry.js +14 -14
  329. package/dist/esm/vega-input-passcode.entry.js +13 -13
  330. package/dist/esm/vega-input-phone-number.entry.js +11 -11
  331. package/dist/esm/vega-input-range.entry.js +10 -10
  332. package/dist/esm/vega-input-select.entry.js +13 -13
  333. package/dist/esm/vega-input.entry.js +15 -15
  334. package/dist/esm/{vega-internal-event-id-22151a4d.js → vega-internal-event-id-827eb1ce.js} +1 -1
  335. package/dist/esm/vega-item-toggle.entry.js +3 -3
  336. package/dist/esm/vega-left-nav_5.entry.js +14 -14
  337. package/dist/esm/vega-loader-wrapper_2.entry.js +4 -4
  338. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  339. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +5 -5
  340. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +4 -4
  341. package/dist/esm/vega-pagination.entry.js +10 -10
  342. package/dist/esm/vega-popover_2.entry.js +14 -14
  343. package/dist/esm/vega-progress-tracker_2.entry.js +10 -10
  344. package/dist/esm/vega-radio_2.entry.js +13 -13
  345. package/dist/esm/vega-rich-text-content.entry.js +10 -10
  346. package/dist/esm/vega-rich-text-editor_4.entry.js +681 -99
  347. package/dist/esm/vega-rich-text-find-replace-panel.entry.js +229 -0
  348. package/dist/esm/vega-rich-text-special-characters-panel.entry.js +8 -8
  349. package/dist/esm/vega-rich-text-table-properties_3.entry.js +14 -14
  350. package/dist/esm/vega-segment-control.entry.js +3 -3
  351. package/dist/esm/vega-selection-chip_2.entry.js +13 -13
  352. package/dist/esm/vega-selection-tile_2.entry.js +11 -11
  353. package/dist/esm/vega-sidenav_3.entry.js +10 -10
  354. package/dist/esm/vega-signature-capture.entry.js +14 -14
  355. package/dist/esm/vega-stepper.entry.js +9 -9
  356. package/dist/esm/vega-tab-group_2.entry.js +5 -5
  357. package/dist/esm/vega-table_11.entry.js +915 -432
  358. package/dist/esm/vega-textarea.entry.js +11 -13
  359. package/dist/esm/vega-time-picker_2.entry.js +37 -17
  360. package/dist/esm/vega-toggle-switch.entry.js +7 -7
  361. package/dist/esm/vega-tooltip_2.entry.js +8 -8
  362. package/dist/esm/vega.js +18 -16
  363. package/dist/esm/{wait-for-component-did-render-0488922a.js → wait-for-component-did-render-0c237cb8.js} +1 -1
  364. package/dist/esm/xmark-large-c5ae7944.js +5 -0
  365. package/dist/sri/vega-sri-manifest.json +392 -376
  366. package/dist/types/components/vega-accordion/slimmers/vega-accordion-renderer.d.ts +2 -0
  367. package/dist/types/components/vega-combo-box/types.d.ts +6 -1
  368. package/dist/types/components/vega-combo-box/vega-combo-box.d.ts +1 -0
  369. package/dist/types/components/vega-dropdown/constants.d.ts +1 -0
  370. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +2 -0
  371. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.d.ts +36 -0
  372. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-select-all-controller.d.ts +107 -0
  373. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-selected-controller.d.ts +17 -0
  374. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.d.ts +5 -0
  375. package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +2 -0
  376. package/dist/types/components/vega-dropdown/types.d.ts +8 -0
  377. package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.d.ts +25 -0
  378. package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.d.ts +1 -0
  379. package/dist/types/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.d.ts +4 -0
  380. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +48 -0
  381. package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.d.ts +1 -0
  382. package/dist/types/components/vega-field-label/types.d.ts +12 -0
  383. package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +2 -1
  384. package/dist/types/components/vega-modal/vega-modal.d.ts +9 -1
  385. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-merge-nodes-strategy.d.ts +9 -0
  386. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/delete-selected-content-strategy.d.ts +13 -0
  387. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.d.ts +14 -4
  388. package/dist/types/components/vega-rich-text-editor/dto/actions/delete-selected-content-action.d.ts +12 -0
  389. package/dist/types/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.d.ts +2 -1
  390. package/dist/types/components/vega-rich-text-editor/dto/actions/paste-content-action.d.ts +7 -0
  391. package/dist/types/components/vega-rich-text-editor/dto/range.d.ts +16 -0
  392. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-interceptors/blockquote-exit-on-enter-interceptor.d.ts +34 -0
  393. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/block-transform-to-blockquote-strategy.d.ts +13 -0
  394. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/remove-blockquote-strategy.d.ts +13 -0
  395. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/actions/remove-blockquote-action.d.ts +14 -0
  396. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/actions/transform-to-blockquote-action.d.ts +18 -0
  397. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/assets/quote-left.d.ts +3 -0
  398. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/blockquote-extension.d.ts +9 -0
  399. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/dto/blockquote-annotation.d.ts +48 -0
  400. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/dto/rte-blockquote-block.d.ts +56 -0
  401. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/element-to-dto-strategies/blockquote-to-blockquote-block-strategy.d.ts +35 -0
  402. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/filter-styles-strategies/blockquote-block/blockquote-filter-styles-strategy.d.ts +31 -0
  403. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-block-renderer.d.ts +18 -0
  404. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.d.ts +113 -0
  405. package/dist/types/components/vega-rich-text-editor/extensions/copy/action-handler-strategies/copy-selected-content-strategy.d.ts +79 -0
  406. package/dist/types/components/vega-rich-text-editor/extensions/copy/actions/copy-selected-content-action.d.ts +18 -0
  407. package/dist/types/components/vega-rich-text-editor/extensions/copy/copy-extension.d.ts +10 -0
  408. package/dist/types/components/vega-rich-text-editor/extensions/copy/copy-toolbar-button-renderer.d.ts +36 -0
  409. package/dist/types/components/vega-rich-text-editor/extensions/cut/cut-extension.d.ts +11 -0
  410. package/dist/types/components/vega-rich-text-editor/extensions/cut/cut-toolbar-button-renderer.d.ts +24 -0
  411. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/assets/find-and-replace.d.ts +3 -0
  412. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/find-replace-extension.d.ts +15 -0
  413. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/find-controller.d.ts +65 -0
  414. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/find-replace-controller.abstract.d.ts +65 -0
  415. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/block-search-strategy.abstract.d.ts +29 -0
  416. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/code-block-search-strategy.d.ts +17 -0
  417. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/container-block-search-strategy.d.ts +21 -0
  418. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/list-item-block-search-strategy.d.ts +21 -0
  419. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/text-block-search-strategy.d.ts +18 -0
  420. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-highlight-manager.d.ts +88 -0
  421. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-state.d.ts +200 -0
  422. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/replace-controller.d.ts +73 -0
  423. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.d.ts +64 -0
  424. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/vega-rich-text-find-replace-panel/slimmers/renderers/find-replace-panel-renderer.d.ts +28 -0
  425. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/vega-rich-text-find-replace-panel/vega-rich-text-find-replace-panel.d.ts +56 -0
  426. package/dist/types/components/vega-rich-text-editor/extensions/functions/function-extension.d.ts +1 -0
  427. package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/horizontal-line-extension.d.ts +1 -0
  428. package/dist/types/components/vega-rich-text-editor/extensions/image/image-extension.d.ts +27 -0
  429. package/dist/types/components/vega-rich-text-editor/extensions/image/type.d.ts +13 -0
  430. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-extension.d.ts +1 -0
  431. package/dist/types/components/vega-rich-text-editor/extensions/line-height/line-height-extension.d.ts +1 -0
  432. package/dist/types/components/vega-rich-text-editor/extensions/paste/assets/paste.d.ts +3 -0
  433. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.d.ts +58 -0
  434. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-constants.d.ts +6 -0
  435. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-extension.d.ts +150 -0
  436. package/dist/types/components/vega-rich-text-editor/extensions/special-characters/special-characters-extension.d.ts +1 -0
  437. package/dist/types/components/vega-rich-text-editor/extensions/table/table-extension.d.ts +1 -0
  438. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +1 -0
  439. package/dist/types/components/vega-rich-text-editor/helpers/utils.d.ts +7 -0
  440. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +7 -0
  441. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/abstract-delete-content-handler.d.ts +60 -0
  442. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/backward-delete-content-handler.d.ts +8 -0
  443. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/forward-delete-content-handler.d.ts +8 -0
  444. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.d.ts +114 -3
  445. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +22 -13
  446. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.d.ts +2 -1
  447. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.d.ts +10 -2
  448. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.d.ts +1 -0
  449. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +6 -0
  450. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +4 -4
  451. package/dist/types/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.d.ts +1 -1
  452. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.d.ts +1 -1
  453. package/dist/types/components/vega-table/interface.d.ts +18 -0
  454. package/dist/types/components/vega-table/slimmers/controllers/dto/column-render-input-model.d.ts +13 -0
  455. package/dist/types/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.d.ts +43 -0
  456. package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.d.ts +38 -0
  457. package/dist/types/components/vega-table/slimmers/renderers/vega-table-cell-renderer.d.ts +11 -2
  458. package/dist/types/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.d.ts +4 -0
  459. package/dist/types/components/vega-table/slimmers/renderers/vega-table-row-renderer.d.ts +1 -0
  460. package/dist/types/components/vega-table/vega-table-cell/slimmers/controllers/vega-table-row-state-subscriber.d.ts +1 -1
  461. package/dist/types/components/vega-table/vega-table-cell/vega-table-cell.d.ts +9 -0
  462. package/dist/types/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.d.ts +1 -0
  463. package/dist/types/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.d.ts +9 -0
  464. package/dist/types/components/vega-table/vega-table.d.ts +2 -0
  465. package/dist/types/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.d.ts +1 -0
  466. package/dist/types/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.d.ts +1 -0
  467. package/dist/types/components/vega-time-picker/types.d.ts +7 -0
  468. package/dist/types/components/vega-time-picker/vega-time-picker.d.ts +11 -1
  469. package/dist/types/components.d.ts +114 -3
  470. package/dist/types/constants/ui.d.ts +1 -1
  471. package/dist/types/global/icons/copy.d.ts +3 -0
  472. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
  473. package/dist/types/helpers/translation/interface.d.ts +20 -1
  474. package/dist/types/helpers/ui/element-appender.d.ts +4 -1
  475. package/dist/types/types/components.type.d.ts +5 -1
  476. package/dist/types/types/ui.type.d.ts +1 -1
  477. package/dist/vega/index.esm.js +1 -1
  478. package/dist/vega/{p-94845302.entry.js → p-05f937c5.entry.js} +1 -1
  479. package/dist/vega/p-07562b9c.js +1 -0
  480. package/dist/vega/p-09d50f59.entry.js +1 -0
  481. package/dist/vega/{p-cc8bf6e7.entry.js → p-0cb78838.entry.js} +1 -1
  482. package/dist/vega/p-0e607b44.js +1 -0
  483. package/dist/vega/{p-1acd5f04.entry.js → p-0f1d6ceb.entry.js} +1 -1
  484. package/dist/vega/{p-ef44d516.js → p-140616fe.js} +1 -1
  485. package/dist/vega/{p-e75e75c9.entry.js → p-1818f399.entry.js} +1 -1
  486. package/dist/vega/{p-4037126d.js → p-18a5e8bc.js} +1 -1
  487. package/dist/vega/{p-2b22091e.js → p-19c42e30.js} +1 -1
  488. package/dist/vega/{p-c87c7ef4.js → p-1efab41b.js} +1 -1
  489. package/dist/vega/{p-cd2a1ffb.js → p-21e21f51.js} +1 -1
  490. package/dist/vega/{p-4644ccf9.entry.js → p-26c7fe8b.entry.js} +1 -1
  491. package/dist/vega/p-282b37cb.js +1 -0
  492. package/dist/vega/p-29e3eb12.js +1 -0
  493. package/dist/vega/{p-6ecb3c7d.entry.js → p-2dc5edd0.entry.js} +1 -1
  494. package/dist/vega/{p-014e2cf9.js → p-2de61f1b.js} +1 -1
  495. package/dist/vega/{p-b77e85e0.entry.js → p-2de88b4a.entry.js} +1 -1
  496. package/dist/vega/{p-12b5c5e3.entry.js → p-2fcc604c.entry.js} +1 -1
  497. package/dist/vega/{p-73b9868f.js → p-32a67ba1.js} +1 -1
  498. package/dist/vega/p-392e049c.entry.js +1 -0
  499. package/dist/vega/{p-70352240.entry.js → p-3932f964.entry.js} +1 -1
  500. package/dist/vega/{p-5ffc7cb8.js → p-3a68b729.js} +1 -1
  501. package/dist/vega/{p-9e327397.entry.js → p-3c9da3cd.entry.js} +1 -1
  502. package/dist/vega/{p-4cef4812.js → p-3f183b52.js} +1 -1
  503. package/dist/vega/{p-216ef41e.entry.js → p-3f7b10b9.entry.js} +1 -1
  504. package/dist/vega/{p-64b5fe2a.entry.js → p-422d88ae.entry.js} +1 -1
  505. package/dist/vega/p-4256252c.js +3 -0
  506. package/dist/vega/{p-329c808e.entry.js → p-44439ecc.entry.js} +1 -1
  507. package/dist/vega/p-45e8424a.entry.js +1 -0
  508. package/dist/vega/p-4c49b2e3.js +1 -0
  509. package/dist/vega/{p-a14d8767.js → p-4d9562bc.js} +1 -1
  510. package/dist/vega/p-4e1aa86f.js +1 -0
  511. package/dist/vega/p-4ef5c4a7.entry.js +1 -0
  512. package/dist/vega/{p-7f086e54.entry.js → p-4f327808.entry.js} +1 -1
  513. package/dist/vega/{p-8019c156.js → p-5139e516.js} +1 -1
  514. package/dist/vega/{p-5bed3fd2.entry.js → p-56c4e349.entry.js} +1 -1
  515. package/dist/vega/{p-fea33425.js → p-5dbfffcd.js} +1 -1
  516. package/dist/vega/p-5f377954.js +1 -1
  517. package/dist/vega/p-615a2b8c.entry.js +1 -0
  518. package/dist/vega/{p-aaa6e976.entry.js → p-63101cb4.entry.js} +1 -1
  519. package/dist/vega/{p-a4826f3f.entry.js → p-653a6dd8.entry.js} +1 -1
  520. package/dist/vega/{p-044496e0.entry.js → p-66b7d1c7.entry.js} +1 -1
  521. package/dist/vega/{p-42a1d300.entry.js → p-6712a9c7.entry.js} +1 -1
  522. package/dist/vega/p-698fbd73.js +1 -0
  523. package/dist/vega/p-6ad7144a.entry.js +1 -0
  524. package/dist/vega/{p-6e7c1b19.entry.js → p-6b1893f6.entry.js} +1 -1
  525. package/dist/vega/{p-cec8ffdc.js → p-6d40635e.js} +1 -1
  526. package/dist/vega/{p-81591449.entry.js → p-73fd18d9.entry.js} +1 -1
  527. package/dist/vega/p-751a5cd6.entry.js +1 -0
  528. package/dist/vega/{p-42f3c0b1.entry.js → p-7b93a756.entry.js} +1 -1
  529. package/dist/vega/p-7c8e579e.entry.js +1 -0
  530. package/dist/vega/{p-0707aa21.js → p-7d54e9c1.js} +1 -1
  531. package/dist/vega/p-832d1a72.entry.js +1 -0
  532. package/dist/vega/p-846b1ab9.entry.js +1 -0
  533. package/dist/vega/p-88863658.js +1 -0
  534. package/dist/vega/p-88a6c89a.js +1 -0
  535. package/dist/vega/p-890a5254.js +1 -0
  536. package/dist/vega/{p-14bfc113.js → p-8bc15ed0.js} +1 -1
  537. package/dist/vega/{p-50d7a1c4.entry.js → p-8c1a5fa4.entry.js} +1 -1
  538. package/dist/vega/p-8d27b9cc.js +1 -0
  539. package/dist/vega/{p-3863187f.entry.js → p-944b43ce.entry.js} +1 -1
  540. package/dist/vega/{p-aea912ac.js → p-95d6c85f.js} +1 -1
  541. package/dist/vega/{p-da067259.entry.js → p-99b699be.entry.js} +1 -1
  542. package/dist/vega/{p-d00b3910.js → p-9a01be93.js} +1 -1
  543. package/dist/vega/p-9a472a04.entry.js +1 -0
  544. package/dist/vega/{p-e9a82603.entry.js → p-9cafbc26.entry.js} +1 -1
  545. package/dist/vega/{p-cd21adb8.js → p-a2bd621e.js} +1 -1
  546. package/dist/vega/{p-5a4e598f.js → p-a359e53c.js} +1 -1
  547. package/dist/vega/p-a9a87b9a.js +1 -0
  548. package/dist/vega/p-acbba6da.entry.js +1 -0
  549. package/dist/vega/{p-c75872a4.entry.js → p-ad35dea4.entry.js} +1 -1
  550. package/dist/vega/{p-8bc23bcf.entry.js → p-af98539f.entry.js} +1 -1
  551. package/dist/vega/{p-141f74ff.js → p-afb96938.js} +1 -1
  552. package/dist/vega/{p-6820b488.entry.js → p-b042e3b4.entry.js} +1 -1
  553. package/dist/vega/{p-822f70b0.js → p-b1ff70bf.js} +1 -1
  554. package/dist/vega/{p-c65a5778.entry.js → p-b39d4a88.entry.js} +1 -1
  555. package/dist/vega/{p-5df53125.entry.js → p-b5bee669.entry.js} +1 -1
  556. package/dist/vega/p-b5f308ee.entry.js +1 -0
  557. package/dist/vega/p-b6225d01.js +1 -0
  558. package/dist/vega/{p-8982796b.entry.js → p-bbabb1c8.entry.js} +1 -1
  559. package/dist/vega/p-bbf1f988.entry.js +1 -0
  560. package/dist/vega/{p-5fcb825c.entry.js → p-c2d28797.entry.js} +1 -1
  561. package/dist/vega/{p-42ed76ee.entry.js → p-c3c0e415.entry.js} +1 -1
  562. package/dist/vega/{p-5e282e41.js → p-c553d37e.js} +1 -1
  563. package/dist/vega/{p-2f48162f.entry.js → p-c5ecbc53.entry.js} +1 -1
  564. package/dist/vega/p-c9c6daa6.entry.js +1 -0
  565. package/dist/vega/p-cb81fc2a.entry.js +1 -0
  566. package/dist/vega/p-ccb9bf86.js +1 -0
  567. package/dist/vega/{p-49b4ab2b.js → p-ccf7518b.js} +1 -1
  568. package/dist/vega/{p-da2b1fd0.entry.js → p-cf8d5b3f.entry.js} +1 -1
  569. package/dist/vega/{p-bb0040d4.entry.js → p-d3a36d19.entry.js} +1 -1
  570. package/dist/vega/{p-ce27c273.entry.js → p-d44943e2.entry.js} +1 -1
  571. package/dist/vega/{p-ae728041.entry.js → p-d4bb6f93.entry.js} +1 -1
  572. package/dist/vega/p-d62b85ff.entry.js +1 -0
  573. package/dist/vega/p-d7f32ccf.entry.js +1 -0
  574. package/dist/vega/{p-d0060bdb.js → p-dca3278f.js} +1 -1
  575. package/dist/vega/{p-15da9d58.entry.js → p-ddd28a8e.entry.js} +1 -1
  576. package/dist/vega/p-ddf03de1.entry.js +1 -0
  577. package/dist/vega/{p-21775cc7.js → p-e0ecafca.js} +1 -1
  578. package/dist/vega/p-e33e1e90.js +1 -0
  579. package/dist/vega/{p-316a1e5c.entry.js → p-e410c4ad.entry.js} +1 -1
  580. package/dist/vega/p-e4309574.js +1 -0
  581. package/dist/vega/p-e5187a86.entry.js +1 -0
  582. package/dist/vega/{p-335e3237.entry.js → p-e86c6802.entry.js} +1 -1
  583. package/dist/vega/{p-4979fd7d.js → p-ef605271.js} +1 -1
  584. package/dist/vega/{p-0e03daa6.js → p-f0d4c78c.js} +1 -1
  585. package/dist/vega/p-f2f22b5d.entry.js +1 -0
  586. package/dist/vega/{p-58a00869.entry.js → p-f8a29127.entry.js} +1 -1
  587. package/dist/vega/{p-a04b95aa.entry.js → p-fbd3be00.entry.js} +1 -1
  588. package/dist/vega/p-fd70418f.js +1 -0
  589. package/dist/vega/{p-9756c6b9.entry.js → p-fda6e2cc.entry.js} +1 -1
  590. package/dist/vega/p-ff8dd200.js +1 -0
  591. package/dist/vega/{p-522dd15f.entry.js → p-ffdacaf9.entry.js} +1 -1
  592. package/dist/vega/vega.esm.js +1 -1
  593. package/package.json +2 -16
  594. package/readme.md +0 -5
  595. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/delete-content-handler.js +0 -92
  596. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/delete-content-handler.d.ts +0 -26
  597. package/dist/vega/p-0605c656.entry.js +0 -1
  598. package/dist/vega/p-144d4b30.js +0 -1
  599. package/dist/vega/p-2944c76e.entry.js +0 -1
  600. package/dist/vega/p-3372f34a.entry.js +0 -1
  601. package/dist/vega/p-3cf298a4.entry.js +0 -1
  602. package/dist/vega/p-3fe43f7a.entry.js +0 -1
  603. package/dist/vega/p-507612f6.entry.js +0 -1
  604. package/dist/vega/p-53ed3b1f.js +0 -1
  605. package/dist/vega/p-57f7c257.js +0 -1
  606. package/dist/vega/p-5e1cd1cc.js +0 -1
  607. package/dist/vega/p-5e1ec2b8.entry.js +0 -1
  608. package/dist/vega/p-61d42e9b.entry.js +0 -1
  609. package/dist/vega/p-63ae5ada.entry.js +0 -1
  610. package/dist/vega/p-66905cbf.js +0 -1
  611. package/dist/vega/p-689070f9.entry.js +0 -1
  612. package/dist/vega/p-74fa0f5b.entry.js +0 -1
  613. package/dist/vega/p-7bb39b97.js +0 -1
  614. package/dist/vega/p-7f139b74.js +0 -1
  615. package/dist/vega/p-85d78ac1.js +0 -1
  616. package/dist/vega/p-92a144bc.js +0 -1
  617. package/dist/vega/p-9f608b97.js +0 -1
  618. package/dist/vega/p-aca134a3.entry.js +0 -1
  619. package/dist/vega/p-b2f89dbd.js +0 -1
  620. package/dist/vega/p-b2f9698a.entry.js +0 -1
  621. package/dist/vega/p-b504a8b4.entry.js +0 -1
  622. package/dist/vega/p-b7b0930a.entry.js +0 -1
  623. package/dist/vega/p-bd94b904.entry.js +0 -1
  624. package/dist/vega/p-c0c2a917.js +0 -3
  625. package/dist/vega/p-c40555c4.entry.js +0 -1
  626. package/dist/vega/p-cb4033ef.js +0 -1
  627. package/dist/vega/p-d14ddf80.js +0 -1
  628. package/dist/vega/p-dc78e8d6.js +0 -1
  629. package/dist/vega/p-ddc2d219.js +0 -1
  630. package/dist/vega/p-f362c07b.entry.js +0 -1
  631. package/dist/vega/p-fb1ef3e6.entry.js +0 -1
  632. package/dist/vega/p-fc103347.entry.js +0 -1
  633. /package/dist/cjs/{feature-flag-controller-438a1510.js → feature-flag-controller-c19d0b58.js} +0 -0
  634. /package/dist/collection/{components/vega-code-block/assets → global/icons}/copy.js +0 -0
  635. /package/dist/esm/{feature-flag-controller-2a89f20c.js → feature-flag-controller-3fd04ea9.js} +0 -0
  636. /package/dist/types/components/{vega-code-block/assets/copy.d.ts → vega-rich-text-editor/assets/cut.d.ts} +0 -0
  637. /package/dist/vega/{p-bc73ce30.js → p-87a4d75f.js} +0 -0
@@ -14,7 +14,7 @@ import { sanitizeVegaComponent } from '../../utils/component';
14
14
  */
15
15
  /**
16
16
  * This is an internal used component and shouldn't be used by client,
17
- * it doesn't show up in storybook either.
17
+ * it is not part of the public component surface.
18
18
  */
19
19
  export class VegaHint {
20
20
  constructor() {
@@ -112,6 +112,7 @@ vega-field-label {
112
112
  letter-spacing: 0px;
113
113
  color: rgba(var(--v-text-primary, 32, 54, 69, 1));
114
114
  background-color: rgba(var(--v-bg-primary, 252, 252, 252, 1));
115
+ font-feature-settings: "calt" 0;
115
116
  }
116
117
  @media screen and (min-width: 768px) and (max-width: 1023px) {
117
118
  .vega-input-input input {
@@ -590,7 +590,7 @@ export class VegaInput {
590
590
  "mutable": false,
591
591
  "complexType": {
592
592
  "original": "Nullable<LabelSuffixButtonConfig>",
593
- "resolved": "{ icon: string; } & Partial<Pick<HTMLVegaTooltipElement, \"size\" | \"trigger\" | \"minWidth\" | \"maxWidth\" | \"text\" | \"placement\" | \"alignment\">>",
593
+ "resolved": "{ icon: string; buttonSize?: VegaButtonCircleSize; centerAlign?: boolean; } & Partial<Pick<HTMLVegaTooltipElement, \"size\" | \"trigger\" | \"minWidth\" | \"maxWidth\" | \"text\" | \"placement\" | \"alignment\">>",
594
594
  "references": {
595
595
  "Nullable": {
596
596
  "location": "import",
@@ -307,7 +307,7 @@ export class VegaInputSelect {
307
307
  "mutable": false,
308
308
  "complexType": {
309
309
  "original": "Nullable<LabelSuffixButtonConfig>",
310
- "resolved": "{ icon: string; } & Partial<Pick<HTMLVegaTooltipElement, \"size\" | \"trigger\" | \"minWidth\" | \"maxWidth\" | \"text\" | \"placement\" | \"alignment\">>",
310
+ "resolved": "{ icon: string; buttonSize?: VegaButtonCircleSize; centerAlign?: boolean; } & Partial<Pick<HTMLVegaTooltipElement, \"size\" | \"trigger\" | \"minWidth\" | \"maxWidth\" | \"text\" | \"placement\" | \"alignment\">>",
311
311
  "references": {
312
312
  "Nullable": {
313
313
  "location": "import",
@@ -36,7 +36,7 @@ export class VegaModalRenderer extends VegaSlimmer {
36
36
  h("vega-box", { class: "modal-dialog", role: "dialog", "aria-modal": "true", "aria-labelledby": this.titleId, width: isResponsiveSizeType(this.size) ? this.size : DefaultModalSize, height: this.height, margin: this.margin }, this.renderContainer())));
37
37
  }
38
38
  renderContainer() {
39
- return (h("div", { class: "modal-container", ref: (node) => (this.modalContainer = node) },
39
+ return (h("vega-box", { class: "modal-container", corners: this.corners, ref: (node) => (this.modalContainer = node) },
40
40
  this.renderHeader(),
41
41
  this.renderContent(),
42
42
  this.renderFooter()));
@@ -117,6 +117,9 @@ __decorate([
117
117
  __decorate([
118
118
  MapToComponentField()
119
119
  ], VegaModalRenderer.prototype, "height", void 0);
120
+ __decorate([
121
+ MapToComponentField()
122
+ ], VegaModalRenderer.prototype, "corners", void 0);
120
123
  __decorate([
121
124
  MapToComponentField()
122
125
  ], VegaModalRenderer.prototype, "showCloseButton", void 0);
@@ -5223,7 +5223,6 @@
5223
5223
  background-color: rgba(var(--v-bg-primary, 252, 252, 252, 1));
5224
5224
  color: rgba(var(--v-text-primary, 32, 54, 69, 1));
5225
5225
  box-shadow: var(--v-shadow-modal, 0px 6px 40px 0px rgba(2, 2, 15, 0.04), 0px 4px 24px 0px rgba(2, 2, 15, 0.08), 0px 8px 80px 0px rgba(2, 2, 15, 0.16));
5226
- border-radius: 12px;
5227
5226
  box-sizing: border-box;
5228
5227
  pointer-events: auto;
5229
5228
  overflow: hidden;
@@ -130,6 +130,14 @@ export class VegaModal {
130
130
  * @vegaVersion 2.81.0
131
131
  */
132
132
  this.margin = { y: 'size-64', x: 'auto' };
133
+ /**
134
+ * Defines the corner of the modal dialog.
135
+ * It accepts a string value representing a valid
136
+ * border radius token.
137
+ *
138
+ * @vegaVersion 2.93.0
139
+ */
140
+ this.corners = 'rounded-12';
133
141
  /**
134
142
  * Provides a callback function that is triggered when a user clicks the
135
143
  * close button located in the top right corner of the modal.
@@ -560,6 +568,36 @@ export class VegaModal {
560
568
  "attribute": "content-max-height",
561
569
  "reflect": false
562
570
  },
571
+ "corners": {
572
+ "type": "string",
573
+ "mutable": false,
574
+ "complexType": {
575
+ "original": "ResponsiveType<CornersType>",
576
+ "resolved": "\"rounded-12\" | \"rounded-16\" | \"rounded-2\" | \"rounded-24\" | \"rounded-32\" | \"rounded-4\" | \"rounded-48\" | \"rounded-8\" | \"rounded-full\" | \"rounded-none\" | { S?: CornersType; M?: CornersType; L?: CornersType; XL?: CornersType; default?: CornersType; } | { left?: \"rounded-none\" | \"rounded-full\" | \"rounded-2\" | \"rounded-4\" | \"rounded-8\" | \"rounded-12\" | \"rounded-16\" | \"rounded-24\" | \"rounded-32\" | \"rounded-48\"; right?: \"rounded-none\" | \"rounded-full\" | \"rounded-2\" | \"rounded-4\" | \"rounded-8\" | \"rounded-12\" | \"rounded-16\" | \"rounded-24\" | \"rounded-32\" | \"rounded-48\"; top?: \"rounded-none\" | \"rounded-full\" | \"rounded-2\" | \"rounded-4\" | \"rounded-8\" | \"rounded-12\" | \"rounded-16\" | \"rounded-24\" | \"rounded-32\" | \"rounded-48\"; bottom?: \"rounded-none\" | \"rounded-full\" | \"rounded-2\" | \"rounded-4\" | \"rounded-8\" | \"rounded-12\" | \"rounded-16\" | \"rounded-24\" | \"rounded-32\" | \"rounded-48\"; \"top-left\"?: \"rounded-none\" | \"rounded-full\" | \"rounded-2\" | \"rounded-4\" | \"rounded-8\" | \"rounded-12\" | \"rounded-16\" | \"rounded-24\" | \"rounded-32\" | \"rounded-48\"; \"top-right\"?: \"rounded-none\" | \"rounded-full\" | \"rounded-2\" | \"rounded-4\" | \"rounded-8\" | \"rounded-12\" | \"rounded-16\" | \"rounded-24\" | \"rounded-32\" | \"rounded-48\"; \"bottom-left\"?: \"rounded-none\" | \"rounded-full\" | \"rounded-2\" | \"rounded-4\" | \"rounded-8\" | \"rounded-12\" | \"rounded-16\" | \"rounded-24\" | \"rounded-32\" | \"rounded-48\"; \"bottom-right\"?: \"rounded-none\" | \"rounded-full\" | \"rounded-2\" | \"rounded-4\" | \"rounded-8\" | \"rounded-12\" | \"rounded-16\" | \"rounded-24\" | \"rounded-32\" | \"rounded-48\"; }",
577
+ "references": {
578
+ "ResponsiveType": {
579
+ "location": "import",
580
+ "path": "../../types/ui.type"
581
+ },
582
+ "CornersType": {
583
+ "location": "import",
584
+ "path": "../../types/ui.type"
585
+ }
586
+ }
587
+ },
588
+ "required": false,
589
+ "optional": false,
590
+ "docs": {
591
+ "tags": [{
592
+ "name": "vegaVersion",
593
+ "text": "2.93.0"
594
+ }],
595
+ "text": "Defines the corner of the modal dialog.\n It accepts a string value representing a valid\n border radius token."
596
+ },
597
+ "attribute": "corners",
598
+ "reflect": false,
599
+ "defaultValue": "'rounded-12'"
600
+ },
563
601
  "handleClose": {
564
602
  "type": "unknown",
565
603
  "mutable": false,
@@ -0,0 +1,3 @@
1
+ export default {
2
+ icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --><path fill="currentColor" d="M48 112a64 64 0 1 1 128 0 64 64 0 1 1 -128 0zm176 0C224 50.1 173.9 0 112 0S0 50.1 0 112 50.1 224 112 224c24 0 46.3-7.6 64.5-20.4l57.3 52.4-57.3 52.4C158.3 295.6 136 288 112 288 50.1 288 0 338.1 0 400s50.1 112 112 112 112-50.1 112-112c0-20.5-5.5-39.6-15.1-56.2L504.2 73.7c9.8-8.9 10.5-24.1 1.5-33.9s-24.1-10.5-33.9-1.5l-202.4 185.2-60.5-55.3c9.6-16.5 15.1-35.7 15.1-56.2zM471.8 473.7c9.8 8.9 25 8.3 33.9-1.5s8.3-25-1.5-33.9L338.6 286.8 302.7 319 471.8 473.7zM48 400a64 64 0 1 1 128 0 64 64 0 1 1 -128 0z"/></svg>`,
3
+ };
@@ -1,3 +1,3 @@
1
1
  export default {
2
- icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M48 424c0 13.3-10.7 24-24 24S0 437.3 0 424l0-96c0-53 43-96 96-96l334.1 0-95-95c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L505 239c4.5 4.5 7 10.6 7 17s-2.5 12.5-7 17L369 409c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l95-95-334.1 0c-26.5 0-48 21.5-48 48l0 96z"/></svg>`,
2
+ icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --><path fill="currentColor" d="M48 424c0 13.3-10.7 24-24 24S0 437.3 0 424l0-96c0-53 43-96 96-96l334.1 0-95-95c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0L505 239c4.5 4.5 7 10.6 7 17s-2.5 12.5-7 17L369 409c-9.4 9.4-24.6 9.4-33.9 0s-9.4-24.6 0-33.9l95-95-334.1 0c-26.5 0-48 21.5-48 48l0 96z"/></svg>`,
3
3
  };
@@ -1,3 +1,3 @@
1
1
  export default {
2
- icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M464 424c0 13.3 10.7 24 24 24s24-10.7 24-24l0-96c0-53-43-96-96-96l-334.1 0 95-95c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L7 239c-4.5 4.5-7 10.6-7 17s2.5 12.5 7 17L143 409c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-95-95 334.1 0c26.5 0 48 21.5 48 48l0 96z"/></svg>`,
2
+ icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 7.2.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2026 Fonticons, Inc. --><path fill="currentColor" d="M464 424c0 13.3 10.7 24 24 24s24-10.7 24-24l0-96c0-53-43-96-96-96l-334.1 0 95-95c9.4-9.4 9.4-24.6 0-33.9s-24.6-9.4-33.9 0L7 239c-4.5 4.5-7 10.6-7 17s2.5 12.5 7 17L143 409c9.4 9.4 24.6 9.4 33.9 0s9.4-24.6 0-33.9l-95-95 334.1 0c26.5 0 48 21.5 48 48l0 96z"/></svg>`,
3
3
  };
@@ -138,13 +138,28 @@ export class BlockDeleteTextOrDecoratorNodeStrategy extends BlockDeleteNodeConte
138
138
  }
139
139
  else {
140
140
  const shouldRemoveNode = previousNode;
141
- if (shouldRemoveNode && !shouldRemoveNode.isContentEditable()) {
141
+ if (shouldRemoveNode &&
142
+ !shouldRemoveNode.isContentEditable() &&
143
+ shouldRemoveNode.parent === target) {
142
144
  previousNode = this.getPreviousNode(shouldRemoveNode);
143
145
  shouldRemoveNode.parent.apply(new RemoveChildrenAction(shouldRemoveNode));
144
146
  if (!previousNode) {
145
147
  action.nextNode = startContainerNode;
146
148
  }
147
149
  }
150
+ else if (previousNode &&
151
+ previousNode.parent !== target &&
152
+ target.type === previousNode.parent.type) {
153
+ // The caret sits at the start of a block whose first node is a non-editable node
154
+ // (e.g. a token). Merge this block into the previous one, mirroring the text-node
155
+ // behavior so Backspace/Delete join the two blocks instead of doing nothing.
156
+ //
157
+ // This also covers the case where the previous block ENDS with a non-editable node
158
+ // (e.g. another token): the previous node is non-editable but lives in a different
159
+ // block, so it must not be removed here — the blocks merge instead, keeping that
160
+ // trailing token intact.
161
+ previousNode.parent.apply(new MergeTwoBlocksNodesAction(target));
162
+ }
148
163
  }
149
164
  if (previousNode) {
150
165
  action.previousNode = previousNode;
@@ -29,11 +29,16 @@ export class BlockInsertLineBreakStrategy extends ActionHandleStrategy {
29
29
  if (nodesSplitIndex > -1) {
30
30
  const beforeNodes = target.children.slice(0, nodesSplitIndex);
31
31
  const afterNodes = target.children.slice(nodesSplitIndex + 1);
32
- if (beforeText) {
33
- beforeNodes.push(splitNode.cloneWithText(beforeText));
32
+ if (splitNode.isContentEditable()) {
33
+ if (beforeText) {
34
+ beforeNodes.push(splitNode.cloneWithText(beforeText));
35
+ }
36
+ if (afterText) {
37
+ afterNodes.unshift(splitNode.cloneWithText(afterText));
38
+ }
34
39
  }
35
- if (afterText) {
36
- afterNodes.unshift(splitNode.cloneWithText(afterText));
40
+ else {
41
+ startOffsetOfNode > 0 ? beforeNodes.push(splitNode) : afterNodes.unshift(splitNode);
37
42
  }
38
43
  this.mergeLineBreakNodes(beforeNodes, lineBreakNode, afterNodes, target);
39
44
  }
@@ -50,7 +55,8 @@ export class BlockInsertLineBreakStrategy extends ActionHandleStrategy {
50
55
  */
51
56
  mergeLineBreakNodes(beforeNodes, lineBreakNode, afterNodes, target) {
52
57
  if (afterNodes.length === 0 || (afterNodes[0] && afterNodes[0].text === '')) {
53
- afterNodes.push(new RTETextNode(generateUUID(), '\n', target, beforeNodes[beforeNodes.length - 1] && beforeNodes[beforeNodes.length - 1].annotationMap));
58
+ const lastBeforeNode = beforeNodes[beforeNodes.length - 1];
59
+ afterNodes.push(new RTETextNode(generateUUID(), '\n', target, lastBeforeNode && new Map(lastBeforeNode.annotationMap)));
54
60
  }
55
61
  target.apply(new ReplaceChildNodesAction([...beforeNodes, lineBreakNode, ...afterNodes]));
56
62
  }
@@ -1,5 +1,8 @@
1
1
  import { AppendChildrenAction } from '../../actions/append-child-nodes-action';
2
+ import { LinkGroupAnnotationAction } from '../../actions/link-group-annotation-action';
2
3
  import { RemoveChildrenAction } from '../../actions/remove-child-action';
4
+ import { NodeAnnotationTypeEnum } from '../../annotations/node-annotation.abstract';
5
+ import { RTETextNode } from '../../nodes/text-node';
3
6
  import { ActionHandleStrategy } from '../action-handle-strategy.abstract';
4
7
  /**
5
8
  * Append the second block child nodes to the first block child nodes and remove the second block strategy.
@@ -19,7 +22,29 @@ export class BlockMergeNodesStrategy extends ActionHandleStrategy {
19
22
  shouldMergeNodes = anotherBlock.children.filter((node) => node.text);
20
23
  }
21
24
  target.apply(new AppendChildrenAction(shouldMergeNodes));
25
+ if (target.type !== 'image') {
26
+ this.transferLinkGroups(shouldMergeNodes, target);
27
+ }
22
28
  anotherBlock.parent.apply(new RemoveChildrenAction(anotherBlock));
23
29
  }
24
30
  }
31
+ /**
32
+ * Re-registers the link group annotation on the target block for any merged nodes that carry a
33
+ * link. The link group annotation lives on the block being removed, so without this the merged
34
+ * link nodes would lose their hyperlink rendering.
35
+ *
36
+ * @param {RTENode[]} mergedNodes - The nodes that were appended to the target block.
37
+ * @param {RTETextBlock} target - The text block that received the merged nodes.
38
+ */
39
+ transferLinkGroups(mergedNodes, target) {
40
+ mergedNodes.forEach((node) => {
41
+ if (!(node instanceof RTETextNode)) {
42
+ return;
43
+ }
44
+ const linkAnnotation = node.getAnnotationByType(NodeAnnotationTypeEnum.LINK);
45
+ if (linkAnnotation) {
46
+ target.apply(new LinkGroupAnnotationAction(linkAnnotation.link.groupKey, [node], 'link'));
47
+ }
48
+ });
49
+ }
25
50
  }
@@ -27,11 +27,16 @@ export class BlockSplitWithTextNodeStrategy extends ActionHandleStrategy {
27
27
  if (nodesSplitIndex > -1) {
28
28
  const beforeNodes = textBlock.children.slice(0, nodesSplitIndex);
29
29
  const afterNodes = textBlock.children.slice(nodesSplitIndex + 1);
30
- if (beforeText) {
31
- beforeNodes.push(splitNode.cloneWithText(beforeText));
30
+ if (splitNode.isContentEditable()) {
31
+ if (beforeText) {
32
+ beforeNodes.push(splitNode.cloneWithText(beforeText));
33
+ }
34
+ if (afterText) {
35
+ afterNodes.unshift(splitNode.cloneWithText(afterText));
36
+ }
32
37
  }
33
- if (afterText) {
34
- afterNodes.unshift(splitNode.cloneWithText(afterText));
38
+ else {
39
+ startOffsetOfNode > 0 ? beforeNodes.push(splitNode) : afterNodes.unshift(splitNode);
35
40
  }
36
41
  textBlock.apply(new ReplaceChildNodesAction(beforeNodes));
37
42
  const newBlock = textBlock.cloneWithNodes(afterNodes);
@@ -0,0 +1,16 @@
1
+ import changeManager from '../../../../../helpers/change-manager/change-manager';
2
+ import domNodeSubjectFactory from '../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-factory';
3
+ import { VegaInternalRichTextEditDeleteSelectedNodes } from '../../../../../helpers/event-manager/event-id/vega-internal-event-id';
4
+ import { ActionHandleStrategy } from '../action-handle-strategy.abstract';
5
+ /**
6
+ * DeleteSelectedContentStrategy is responsible for handling the deletion of selected content within the rich text editor.
7
+ */
8
+ export class DeleteSelectedContentStrategy extends ActionHandleStrategy {
9
+ /**
10
+ * @inheritDoc
11
+ */
12
+ handleAction(action) {
13
+ const { host, mergeFlag } = action;
14
+ changeManager.notify(domNodeSubjectFactory.getSubject(host, VegaInternalRichTextEditDeleteSelectedNodes), { host, detail: mergeFlag });
15
+ }
16
+ }
@@ -1,28 +1,84 @@
1
1
  import { InsertChildrenAfterAction } from '../../actions/insert-children-after-block';
2
2
  import { InsertChildrenBeforeAction } from '../../actions/insert-children-before-block';
3
+ import { ReplaceChildNodesAction } from '../../actions/replace-child-nodes-action';
3
4
  import { SplitBlockWithNodeAction } from '../../actions/split-block-with-node-action';
5
+ import { RTETextNode } from '../../nodes/text-node';
4
6
  import { ActionHandleStrategy } from '../action-handle-strategy.abstract';
5
- /**
6
- * Strategy to handle the paste content into function block.
7
- */
7
+ /** Handles pasted content in a block. */
8
8
  export class PasteContentStrategy extends ActionHandleStrategy {
9
9
  /**
10
- * @inheritDoc
10
+ * Handles pasted content for the target block.
11
+ *
12
+ * @param {PasteContentAction} action - The paste action to apply.
13
+ * @param {RTEBlock} target - The block receiving the pasted content.
14
+ * @returns {void}
11
15
  */
12
16
  handleAction(action, target) {
13
17
  if (target.parent) {
14
18
  const { blocksToBeInserted, startNode, startOffset } = action;
15
19
  let futureFocusBlock = target;
20
+ const singlePastedBlock = blocksToBeInserted[0];
21
+ // Check if the pasted block is a text block with all text node children.
22
+ // Do NOT allow inline merge for list blocks or other special block types.
23
+ const canInlineMergeSingleBlock = blocksToBeInserted.length === 1 &&
24
+ startNode instanceof RTETextNode &&
25
+ !['RTEListBlock', 'RTEHtmlBlock'].includes(singlePastedBlock.constructor.name) &&
26
+ singlePastedBlock.children.length > 0 &&
27
+ singlePastedBlock.children.every((child) => { var _a, _b; return ((_b = (_a = child).isTextNode) === null || _b === void 0 ? void 0 : _b.call(_a)) === true; });
16
28
  if (startNode === target.children[0] && startOffset === 0) {
17
29
  target.parent.apply(new InsertChildrenBeforeAction(target, ...blocksToBeInserted));
18
30
  }
31
+ else if (canInlineMergeSingleBlock) {
32
+ this.inlineMergeSingleBlock(action, target);
33
+ return;
34
+ }
19
35
  else {
20
36
  const breakAction = new SplitBlockWithNodeAction(startNode, startOffset);
21
37
  target.apply(breakAction);
22
38
  target.parent.apply(new InsertChildrenAfterAction(target, ...blocksToBeInserted));
23
- futureFocusBlock = breakAction.newBlock;
39
+ futureFocusBlock = blocksToBeInserted[blocksToBeInserted.length - 1];
40
+ action.futureFocusAtEnd = true;
24
41
  }
25
42
  action.futureFocusBlock = futureFocusBlock;
26
43
  }
27
44
  }
45
+ /**
46
+ * Merges a single pasted block inline at the cursor position.
47
+ *
48
+ * @param {PasteContentAction} action - The paste action being processed.
49
+ * @param {RTEBlock} target - The block receiving the inline merge.
50
+ * @returns {void}
51
+ */
52
+ inlineMergeSingleBlock(action, target) {
53
+ const { blocksToBeInserted, startNode, startOffset } = action;
54
+ const singleBlock = blocksToBeInserted[0];
55
+ const pastedNodes = singleBlock.children;
56
+ const splitNode = startNode;
57
+ const nodesSplitIndex = target.children.indexOf(splitNode);
58
+ if (nodesSplitIndex === -1) {
59
+ const breakAction = new SplitBlockWithNodeAction(startNode, startOffset);
60
+ target.apply(breakAction);
61
+ target.parent.apply(new InsertChildrenAfterAction(target, ...blocksToBeInserted));
62
+ action.futureFocusBlock = singleBlock;
63
+ action.futureFocusAtEnd = true;
64
+ return;
65
+ }
66
+ const beforeText = splitNode.text.slice(0, startOffset);
67
+ const afterText = splitNode.text.slice(startOffset);
68
+ const beforeNodes = target.children.slice(0, nodesSplitIndex);
69
+ const afterNodes = target.children.slice(nodesSplitIndex + 1);
70
+ if (beforeText) {
71
+ beforeNodes.push(splitNode.cloneWithText(beforeText));
72
+ }
73
+ if (afterText) {
74
+ afterNodes.unshift(splitNode.cloneWithText(afterText));
75
+ }
76
+ target.apply(new ReplaceChildNodesAction([...beforeNodes, ...pastedNodes, ...afterNodes]));
77
+ const lastPastedNode = pastedNodes[pastedNodes.length - 1];
78
+ action.futureFocusBlock = target;
79
+ action.futureFocusNode = lastPastedNode;
80
+ if (lastPastedNode.isTextNode()) {
81
+ action.futureFocusNodeOffset = lastPastedNode.text.length;
82
+ }
83
+ }
28
84
  }
@@ -0,0 +1,17 @@
1
+ import { ModifyContentAction, ModifyContentActionType } from './modify-content-action.abstract';
2
+ /**
3
+ * Delete the currently selected content from the editor.
4
+ *
5
+ * @example currentVegaRTEContent.apply(new DeleteSelectedContentAction(host, mergeFlag))
6
+ */
7
+ export class DeleteSelectedContentAction extends ModifyContentAction {
8
+ constructor(host, mergeFlag, flushable = false) {
9
+ super();
10
+ this.type = ModifyContentActionType.DELETE_SELECTED_CONTENT;
11
+ // mergeFlag indicates whether the action should merge adjacent text nodes after deletion.
12
+ this.mergeFlag = false;
13
+ this.host = host;
14
+ this.mergeFlag = mergeFlag;
15
+ this.isFlushable = flushable;
16
+ }
17
+ }
@@ -30,6 +30,7 @@ export var ModifyContentActionType;
30
30
  ModifyContentActionType["INSERT_TEXT_TO_DECORATOR_NODE"] = "INSERT_TEXT_TO_DECORATOR_NODE";
31
31
  ModifyContentActionType["INSERT_NODE_TO_NEAREST_ROOT"] = "INSERT_NODE_TO_NEAREST_ROOT";
32
32
  ModifyContentActionType["PASTE_CONTENT"] = "PASTE_CONTENT";
33
+ ModifyContentActionType["DELETE_SELECTED_CONTENT"] = "DELETE_SELECTED_CONTENT";
33
34
  })(ModifyContentActionType || (ModifyContentActionType = {}));
34
35
  /**
35
36
  * Abstract class for update node content, delete node, insert node
@@ -9,6 +9,7 @@ export class PasteContentAction extends ModifyContentAction {
9
9
  constructor(blocksToBeInserted, startNode, startOffset, rteRange) {
10
10
  super();
11
11
  this.type = ModifyContentActionType.PASTE_CONTENT;
12
+ this.futureFocusAtEnd = false;
12
13
  this.blocksToBeInserted = blocksToBeInserted;
13
14
  this.startNode = startNode;
14
15
  this.startOffset = startOffset;
@@ -23,6 +23,7 @@ import { StylePreservator } from '../../../helpers/csp/styles-preservator';
23
23
  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
+ import { DeleteSelectedContentStrategy } from './action-handle-strategies/modify-content-strategies/delete-selected-content-strategy';
26
27
  /**
27
28
  * Class representing the content state of the rich text editor.
28
29
  */
@@ -259,6 +260,7 @@ export class VegaRTEContent {
259
260
  ActionHandleStrategyRegistry.register(ModifyContentActionType.INSERT_CHILDREN_AFTER, VegaRTEContent.name, new InsertChildrenAfterStrategy());
260
261
  ActionHandleStrategyRegistry.register(ModifyContentActionType.TRANSFORM_TO_CODE_BLOCK, VegaRTEContent.name, new BlockTransformToCodeBlockStrategy());
261
262
  ActionHandleStrategyRegistry.register(ModifyContentActionType.UPDATE_CURSOR_POSITION, VegaRTEContent.name, new UpdateCursorPositionStrategy());
263
+ ActionHandleStrategyRegistry.register(ModifyContentActionType.DELETE_SELECTED_CONTENT, VegaRTEContent.name, new DeleteSelectedContentStrategy());
262
264
  })();
263
265
  /** Minimize-safe type discriminator for VegaRTEContent. */
264
266
  VegaRTEContent.dtoName = 'VegaRTEContent';
@@ -39,6 +39,7 @@ import { UnderlineAnnotationAction } from '../actions/underline-annotation-actio
39
39
  import { TextColorAnnotationAction } from '../actions/text-color-annotation-action';
40
40
  import { StrikethroughAnnotationAction } from '../actions/strikethrough-annotation-action';
41
41
  import { CodeAnnotationAction } from '../actions/code-annotation-action';
42
+ import { escapeHtml } from '../../helpers/utils';
42
43
  /**
43
44
  * Text node
44
45
  */
@@ -418,7 +419,11 @@ export class RTETextNode extends RTENode {
418
419
  if (this.text === '\n') {
419
420
  return `<br>`;
420
421
  }
421
- return this.shouldRenderAsPlainText() ? this.text : `<${NodeTag}${attrStr}>${this.text}</${NodeTag}>`;
422
+ if (this.shouldRenderAsPlainText()) {
423
+ return this.text;
424
+ }
425
+ const content = NodeTag === 'code' ? escapeHtml(this.text) : this.text;
426
+ return `<${NodeTag}${attrStr}>${content}</${NodeTag}>`;
422
427
  }
423
428
  /**
424
429
  * Determines if the text node should be rendered as plain text.
@@ -144,8 +144,8 @@ export class RTERange {
144
144
  : this._endNode.getRangeContainer();
145
145
  if (startContainer && endContainer) {
146
146
  range = new Range();
147
- range.setStart(startContainer, this._startOffset);
148
- range.setEnd(endContainer, this._endOffset);
147
+ range.setStart(startContainer, this.clampOffsetToContainer(startContainer, this._startOffset));
148
+ range.setEnd(endContainer, this.clampOffsetToContainer(endContainer, this._endOffset));
149
149
  this._startContainer = startContainer;
150
150
  this._endContainer = endContainer;
151
151
  this._oldNativeRange = range;
@@ -156,6 +156,28 @@ export class RTERange {
156
156
  return this._oldNativeRange;
157
157
  }
158
158
  }
159
+ /**
160
+ * Clamps an offset to the valid bound of a DOM container so that
161
+ * `Range.setStart` / `Range.setEnd` never throw `IndexSizeError`.
162
+ *
163
+ * A stored selection offset can become stale or unit-mismatched when an undo
164
+ * restores a selection captured against different content — for example after
165
+ * find-and-replace shrinks a text node, or when the selection node's DOM
166
+ * container is its parent element (offset measured in child-node count rather
167
+ * than characters, as for non-editable token / logic-control nodes). Text
168
+ * containers are bounded by character length, element containers by child count.
169
+ *
170
+ * @param {Node} container - The DOM container the offset applies to.
171
+ * @param {number} offset - The desired offset.
172
+ * @returns {number} The offset clamped to `[0, container length]`.
173
+ */
174
+ clampOffsetToContainer(container, offset) {
175
+ var _a, _b;
176
+ const max = container.nodeType === Node.TEXT_NODE
177
+ ? (_b = (_a = container.textContent) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0
178
+ : container.childNodes.length;
179
+ return Math.max(0, Math.min(offset, max));
180
+ }
159
181
  /**
160
182
  * Retrieves an RTENode based on the given element by checking its type and parent elements.
161
183
  *
@@ -0,0 +1,61 @@
1
+ import RTEDTOClassManager from '../../../../../helpers/rte-manager/dto-class-manager';
2
+ import { generateUUID } from '../../../../../utils/misc';
3
+ import { ActionHandlerInterceptor, } from '../../../dto/action-handle-strategies/action-handle-interceptor.abstract';
4
+ import { InsertChildrenAfterAction } from '../../../dto/actions/insert-children-after-block';
5
+ import { RemoveChildrenAction } from '../../../dto/actions/remove-child-action';
6
+ import { RTEBlockquoteBlock } from '../dto/rte-blockquote-block';
7
+ /**
8
+ * Lets the caret exit the blockquote via the keyboard. Pressing Enter on an empty
9
+ * trailing paragraph inside a blockquote (i.e. the second Enter press at the end of
10
+ * the quote) moves that empty paragraph out to a new paragraph after the blockquote,
11
+ * instead of stacking another empty line inside the quote.
12
+ */
13
+ export class BlockquoteExitOnEnterInterceptor extends ActionHandlerInterceptor {
14
+ /**
15
+ * Intercept only when the caret sits in an empty paragraph that is the last child of a blockquote.
16
+ *
17
+ * @param {InsertNewParagraphAction} _action - the action to be intercepted
18
+ * @param {RTETextBlock} target - the paragraph block receiving the Enter key press
19
+ * @returns {boolean} - whether the action should be intercepted
20
+ */
21
+ canIntercept(_action, target) {
22
+ const parent = target.parent;
23
+ return (parent instanceof RTEBlockquoteBlock &&
24
+ !target.isNotEmpty() &&
25
+ parent.children[parent.children.length - 1] === target);
26
+ }
27
+ /**
28
+ * Move the empty paragraph out of the blockquote and place a new paragraph after it.
29
+ *
30
+ * @param {ActionHandlerExecution} _execution - the original execution function
31
+ * @param {InsertNewParagraphAction} action - the action containing insert metadata
32
+ * @param {RTETextBlock} target - the empty paragraph block to move out of the blockquote
33
+ */
34
+ intercept(_execution, action, target) {
35
+ const blockquote = target.parent;
36
+ const newParagraph = this.createNewParagraph('');
37
+ if (newParagraph) {
38
+ // Insert the replacement paragraph after the blockquote before removing the
39
+ // empty one so the blockquote is still present as an anchor for the insert.
40
+ blockquote.parent.apply(new InsertChildrenAfterAction(blockquote, newParagraph));
41
+ blockquote.apply(new RemoveChildrenAction(target));
42
+ action.newBlock = newParagraph;
43
+ }
44
+ }
45
+ /**
46
+ * Create a new empty paragraph block.
47
+ *
48
+ * @param {string} text - paragraph text
49
+ * @returns {Nullable<RTETextBlock>} - paragraph block when paragraph dto class is available
50
+ */
51
+ createNewParagraph(text) {
52
+ const dtoClass = RTEDTOClassManager.getRTEBlockClass('paragraph');
53
+ if (dtoClass) {
54
+ return dtoClass.from({
55
+ id: generateUUID(),
56
+ type: 'paragraph',
57
+ nodes: [{ id: generateUUID(), type: 'text', text }],
58
+ });
59
+ }
60
+ }
61
+ }
@@ -0,0 +1,40 @@
1
+ import { generateUUID } from '../../../../../utils/misc';
2
+ import { ActionHandleStrategy } from '../../../dto/action-handle-strategies/action-handle-strategy.abstract';
3
+ import { RTEBlockquoteBlock } from '../dto/rte-blockquote-block';
4
+ /**
5
+ * Wrap the selected blocks into a new `<blockquote>` block while preserving
6
+ * their order.
7
+ */
8
+ export class BlockTransformToBlockquoteStrategy extends ActionHandleStrategy {
9
+ /**
10
+ * @inheritDoc
11
+ */
12
+ handleAction(action, target) {
13
+ const selectedBlocks = action.selectedBlocks;
14
+ const children = target.children;
15
+ const selectedSet = new Set(selectedBlocks);
16
+ const firstIndex = children.indexOf(selectedBlocks[0]);
17
+ // The selected blocks may not be contiguous in `children` (e.g. a table
18
+ // sitting between two selected paragraphs must stay untouched), so the
19
+ // insert position is the first selected block's index, adjusted for any
20
+ // non-selected siblings that come before it.
21
+ const insertIndex = children
22
+ .slice(0, firstIndex)
23
+ .filter((block) => !selectedSet.has(block)).length;
24
+ const blockquote = new RTEBlockquoteBlock(generateUUID());
25
+ blockquote.parent = target;
26
+ blockquote.children = selectedBlocks;
27
+ selectedBlocks.forEach((block) => {
28
+ block.parent = blockquote;
29
+ });
30
+ // Remove selected blocks individually rather than assuming a single
31
+ // contiguous run, so non-selected siblings interleaved with the
32
+ // selection (e.g. a table) are preserved instead of being spliced away.
33
+ for (let i = children.length - 1; i >= 0; i--) {
34
+ if (selectedSet.has(children[i])) {
35
+ children.splice(i, 1);
36
+ }
37
+ }
38
+ children.splice(insertIndex, 0, blockquote);
39
+ }
40
+ }
@@ -0,0 +1,20 @@
1
+ import { InsertChildrenBeforeAction } from '../../../dto/actions/insert-children-before-block';
2
+ import { RemoveChildrenAction } from '../../../dto/actions/remove-child-action';
3
+ import { ActionHandleStrategy } from '../../../dto/action-handle-strategies/action-handle-strategy.abstract';
4
+ /**
5
+ * Unwrap a `<blockquote>` — lift its children to the parent in their original
6
+ * order and remove the blockquote.
7
+ */
8
+ export class RemoveBlockquoteStrategy extends ActionHandleStrategy {
9
+ /**
10
+ * @inheritDoc
11
+ */
12
+ handleAction(_action, target) {
13
+ const parent = target.parent;
14
+ const childrenToLift = [...target.children];
15
+ if (childrenToLift.length > 0) {
16
+ parent.apply(new InsertChildrenBeforeAction(target, ...childrenToLift));
17
+ }
18
+ parent.apply(new RemoveChildrenAction(target));
19
+ }
20
+ }
@@ -0,0 +1,17 @@
1
+ import { ModifyContentAction } from '../../../dto/actions/modify-content-action.abstract';
2
+ /**
3
+ * Action type discriminator. Plain string constant — intentionally NOT added
4
+ * to {@link ModifyContentActionType} enum to keep the extension self-contained.
5
+ */
6
+ export const REMOVE_BLOCKQUOTE = 'REMOVE_BLOCKQUOTE';
7
+ /**
8
+ * Unwrap a `<blockquote>` block — lift its children into the parent in place
9
+ * and remove the blockquote wrapper. Targets the blockquote block itself.
10
+ */
11
+ export class RemoveBlockquoteAction extends ModifyContentAction {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.isFlushable = true;
15
+ this.type = REMOVE_BLOCKQUOTE;
16
+ }
17
+ }