@globalpayments/vega 2.91.0 → 2.92.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 (476) hide show
  1. package/dist/cjs/{app-globals-7bb10088.js → app-globals-2f326662.js} +13 -10
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-76d19d56.js → child-nodes-event-prevent-slimmer-b9a5b3e2.js} +1 -1
  3. package/dist/cjs/{code-block-c1039791.js → code-block-6435d641.js} +24 -1
  4. package/dist/cjs/{component-value-history-controller-slimmer.abstract-1d36641d.js → component-value-history-controller-slimmer.abstract-e4c9a5ba.js} +3 -3
  5. package/dist/cjs/{content-state-a6105949.js → content-state-96ec9114.js} +32 -3
  6. package/dist/cjs/copy-d021c780.js +7 -0
  7. package/dist/cjs/{date-required-rule-c4997459.js → date-required-rule-8c9e312b.js} +1 -1
  8. package/dist/cjs/{design-token-f65eab4a.js → design-token-3548af29.js} +3 -3
  9. package/dist/cjs/{element-appender-slimmer-316668d0.js → element-appender-slimmer-3bf69990.js} +3 -3
  10. package/dist/cjs/{file-uploader-required-rule-cc51d4ab.js → file-uploader-required-rule-5520bbec.js} +1 -1
  11. package/dist/cjs/{form-field-controller-slimmer-b0c35330.js → form-field-controller-slimmer-e0efac05.js} +1 -1
  12. package/dist/cjs/{image-annotation-action-e4596726.js → image-annotation-action-853f72c8.js} +2 -2
  13. package/dist/cjs/index-58ea899e.js +4 -0
  14. package/dist/cjs/index.cjs.js +25 -20
  15. package/dist/cjs/{inject-keyboard-manager-1f5bbb19.js → inject-keyboard-manager-0dccff1a.js} +1 -1
  16. package/dist/cjs/{internal-calendar-period-factory-9c66cf36.js → internal-calendar-period-factory-6187ec4c.js} +1 -1
  17. package/dist/cjs/{internal-translation-controller-5905469e.js → internal-translation-controller-48ebfd0f.js} +14 -0
  18. package/dist/cjs/{keyboard-manager-61e8ce38.js → keyboard-manager-dfe8d924.js} +1 -1
  19. package/dist/cjs/{keyboard-manager-slimmer-079a7e87.js → keyboard-manager-slimmer-4a2560a1.js} +1 -1
  20. package/dist/cjs/{link-extension-a7ac28f3.js → link-extension-28d95849.js} +3 -3
  21. package/dist/cjs/loader.cjs.js +14 -13
  22. package/dist/cjs/{month-view-generator-48215a05.js → month-view-generator-2e59b188.js} +1 -1
  23. package/dist/cjs/{public-rules-66540638.js → public-rules-8727c42c.js} +10 -10
  24. package/dist/cjs/{range-dea19a90.js → range-5cb3d1e4.js} +25 -3
  25. package/dist/cjs/{replace-selected-text-action-6d1ebbf9.js → replace-selected-text-action-a31563ed.js} +1 -1
  26. package/dist/cjs/{required-field-rule-b12a29e1.js → required-field-rule-400690c3.js} +1 -1
  27. package/dist/cjs/{responsive-format-facade-10ff730e.js → responsive-format-facade-98b89142.js} +2 -2
  28. package/dist/cjs/{rich-text-editor-required-rule-63492ca3.js → rich-text-editor-required-rule-8e4d577d.js} +1 -1
  29. package/dist/cjs/{split-cell-operation-30e5dd4a.js → split-cell-operation-9e3ab88d.js} +3 -3
  30. package/dist/cjs/{state-border-formatter-e7779964.js → state-border-formatter-626b0a14.js} +1 -1
  31. package/dist/cjs/{string-format-strategy.abstract-a22f0cb1.js → string-format-strategy.abstract-981f43e1.js} +1 -1
  32. package/dist/cjs/{string-input-formatter-slimmer-8179eb40.js → string-input-formatter-slimmer-fc4a0ba5.js} +1 -1
  33. package/dist/cjs/{string-mask-strategy-8b9bb0c1.js → string-mask-strategy-b47fa159.js} +2 -2
  34. package/dist/cjs/{style-formatter-380b9a86.js → style-formatter-baf18624.js} +2 -2
  35. package/dist/cjs/{time-required-rule-080d975b.js → time-required-rule-e77d174f.js} +1 -1
  36. package/dist/cjs/{token-extension-619379a3.js → token-extension-3aec039f.js} +1609 -15
  37. package/dist/cjs/{translation-slimmer-2af6f141.js → translation-slimmer-1e05769e.js} +1 -1
  38. package/dist/cjs/{type-guard-0171e779.js → type-guard-7ab48d6c.js} +1 -1
  39. package/dist/cjs/{valid-credit-card-number-rule-fdfca83e.js → valid-credit-card-number-rule-52ba9c67.js} +1 -1
  40. package/dist/cjs/vega-accordion.cjs.entry.js +18 -10
  41. package/dist/cjs/vega-app-header-button.cjs.entry.js +7 -7
  42. package/dist/cjs/vega-banner.cjs.entry.js +3 -6
  43. package/dist/cjs/vega-box.cjs.entry.js +7 -7
  44. package/dist/cjs/vega-breadcrumb.cjs.entry.js +2 -2
  45. package/dist/cjs/vega-button-circle.cjs.entry.js +7 -7
  46. package/dist/cjs/vega-button-group_2.cjs.entry.js +2 -2
  47. package/dist/cjs/vega-button-link.cjs.entry.js +2 -2
  48. package/dist/cjs/vega-button.cjs.entry.js +5 -5
  49. package/dist/cjs/vega-calendar_5.cjs.entry.js +9 -9
  50. package/dist/cjs/vega-card.cjs.entry.js +6 -6
  51. package/dist/cjs/vega-carousel.cjs.entry.js +4 -4
  52. package/dist/cjs/vega-checkbox_2.cjs.entry.js +5 -5
  53. package/dist/cjs/vega-chip.cjs.entry.js +7 -7
  54. package/dist/cjs/vega-code-block.cjs.entry.js +12 -15
  55. package/dist/cjs/vega-color-picker.cjs.entry.js +4 -4
  56. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +6 -6
  57. package/dist/cjs/vega-color-swatch.cjs.entry.js +2 -2
  58. package/dist/cjs/vega-combo-box.cjs.entry.js +11 -11
  59. package/dist/cjs/vega-date-picker_2.cjs.entry.js +15 -15
  60. package/dist/cjs/vega-dialog_2.cjs.entry.js +5 -5
  61. package/dist/cjs/vega-divider.cjs.entry.js +6 -6
  62. package/dist/cjs/vega-dropdown_5.cjs.entry.js +9 -9
  63. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  64. package/dist/cjs/vega-field-label.cjs.entry.js +13 -9
  65. package/dist/cjs/vega-file-uploader.cjs.entry.js +6 -6
  66. package/dist/cjs/vega-flag-icon.cjs.entry.js +6 -6
  67. package/dist/cjs/vega-flex.cjs.entry.js +7 -7
  68. package/dist/cjs/vega-font.cjs.entry.js +6 -6
  69. package/dist/cjs/vega-form.cjs.entry.js +5 -5
  70. package/dist/cjs/vega-grid.cjs.entry.js +6 -6
  71. package/dist/cjs/vega-icon.cjs.entry.js +6 -6
  72. package/dist/cjs/vega-image-uploader.cjs.entry.js +8 -8
  73. package/dist/cjs/vega-input-credit-card.cjs.entry.js +9 -9
  74. package/dist/cjs/vega-input-numeric.cjs.entry.js +8 -8
  75. package/dist/cjs/vega-input-passcode.cjs.entry.js +8 -8
  76. package/dist/cjs/vega-input-phone-number.cjs.entry.js +6 -6
  77. package/dist/cjs/vega-input-range.cjs.entry.js +5 -5
  78. package/dist/cjs/vega-input-select.cjs.entry.js +8 -8
  79. package/dist/cjs/vega-input.cjs.entry.js +9 -9
  80. package/dist/cjs/vega-left-nav_5.cjs.entry.js +8 -8
  81. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +4 -4
  82. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +2 -2
  83. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
  84. package/dist/cjs/vega-pagination.cjs.entry.js +6 -6
  85. package/dist/cjs/vega-popover_2.cjs.entry.js +9 -9
  86. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +4 -4
  87. package/dist/cjs/vega-radio_2.cjs.entry.js +8 -8
  88. package/dist/cjs/vega-rich-text-content.cjs.entry.js +6 -6
  89. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +220 -48
  90. package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +233 -0
  91. package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +5 -5
  92. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +11 -11
  93. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +7 -7
  94. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +5 -5
  95. package/dist/cjs/vega-sidenav_3.cjs.entry.js +4 -4
  96. package/dist/cjs/vega-signature-capture.cjs.entry.js +9 -9
  97. package/dist/cjs/vega-stepper.cjs.entry.js +4 -4
  98. package/dist/cjs/vega-tab-group_2.cjs.entry.js +2 -2
  99. package/dist/cjs/vega-table_11.cjs.entry.js +6 -6
  100. package/dist/cjs/vega-textarea.cjs.entry.js +5 -5
  101. package/dist/cjs/vega-time-picker_2.cjs.entry.js +11 -11
  102. package/dist/cjs/vega-toggle-switch.cjs.entry.js +2 -2
  103. package/dist/cjs/vega-tooltip_2.cjs.entry.js +7 -7
  104. package/dist/cjs/vega.cjs.js +14 -13
  105. package/dist/cjs/xmark-large-faae5a80.js +7 -0
  106. package/dist/collection/collection-manifest.json +6 -0
  107. package/dist/collection/components/vega-accordion/slimmers/vega-accordion-renderer.js +11 -3
  108. package/dist/collection/components/vega-box/vega-box.js +3 -3
  109. package/dist/collection/components/vega-code-block/slimmers/renderers/vega-code-block-copy-button-renderer.js +1 -1
  110. package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.js +5 -4
  111. package/dist/collection/components/vega-field-label/vega-field-label.css +20 -0
  112. package/dist/collection/components/vega-field-label/vega-field-label.js +6 -3
  113. package/dist/collection/components/vega-input/vega-input.css +1 -0
  114. package/dist/collection/components/vega-input/vega-input.js +1 -1
  115. package/dist/collection/components/vega-input-select/vega-input-select.js +1 -1
  116. package/dist/collection/components/vega-rich-text-editor/assets/cut.js +3 -0
  117. 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
  118. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-merge-nodes-strategy.js +25 -0
  119. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/delete-selected-content-strategy.js +16 -0
  120. package/dist/collection/components/vega-rich-text-editor/dto/actions/delete-selected-content-action.js +17 -0
  121. package/dist/collection/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.js +1 -0
  122. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +2 -0
  123. package/dist/collection/components/vega-rich-text-editor/dto/range.js +24 -2
  124. package/dist/collection/components/vega-rich-text-editor/extensions/copy/action-handler-strategies/copy-selected-content-strategy.js +226 -0
  125. package/dist/collection/components/vega-rich-text-editor/extensions/copy/actions/copy-selected-content-action.js +21 -0
  126. package/dist/collection/components/vega-rich-text-editor/extensions/copy/copy-extension.js +20 -0
  127. package/dist/collection/components/vega-rich-text-editor/extensions/copy/copy-toolbar-button-renderer.js +58 -0
  128. package/dist/collection/components/vega-rich-text-editor/extensions/cut/cut-extension.js +15 -0
  129. package/dist/collection/components/vega-rich-text-editor/extensions/cut/cut-toolbar-button-renderer.js +44 -0
  130. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/assets/find-and-replace.js +3 -0
  131. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/find-replace-extension.js +18 -0
  132. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/find-controller.js +105 -0
  133. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/find-replace-controller.abstract.js +68 -0
  134. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/block-search-strategy.abstract.js +8 -0
  135. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/code-block-search-strategy.js +19 -0
  136. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/container-block-search-strategy.js +23 -0
  137. 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
  138. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/block-search-strategies/text-block-search-strategy.js +20 -0
  139. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-highlight-manager.js +266 -0
  140. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-state.js +346 -0
  141. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/replace-controller.js +113 -0
  142. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.js +194 -0
  143. 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
  144. 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
  145. 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
  146. package/dist/collection/components/vega-rich-text-editor/extensions/functions/function-extension.js +2 -1
  147. package/dist/collection/components/vega-rich-text-editor/extensions/horizontal-line/horizontal-line-extension.js +2 -1
  148. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-extension.js +2 -1
  149. package/dist/collection/components/vega-rich-text-editor/extensions/line-height/line-height-extension.js +2 -1
  150. package/dist/collection/components/vega-rich-text-editor/extensions/special-characters/special-characters-extension.js +2 -1
  151. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +2 -1
  152. 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
  153. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-extension.js +2 -1
  154. package/dist/collection/components/vega-rich-text-editor/public-api.js +4 -0
  155. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/abstract-delete-content-handler.js +133 -0
  156. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/backward-delete-content-handler.js +35 -0
  157. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/forward-delete-content-handler.js +93 -0
  158. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.js +9 -3
  159. package/dist/collection/components/vega-textarea/vega-textarea.js +1 -1
  160. package/dist/collection/global/scripts/before-vega-load.js +6 -0
  161. package/dist/collection/helpers/translation/locales/en.js +14 -0
  162. package/dist/esm/{app-globals-6041f52f.js → app-globals-5e0d319a.js} +13 -10
  163. package/dist/esm/{aria-dialog-focusable-trap-slimmer-1332c071.js → aria-dialog-focusable-trap-slimmer-9eae86c6.js} +1 -1
  164. package/dist/esm/{child-nodes-event-prevent-slimmer-50022584.js → child-nodes-event-prevent-slimmer-f24618c5.js} +2 -2
  165. package/dist/esm/{code-block-37294847.js → code-block-b71b2aa4.js} +26 -3
  166. package/dist/esm/{component-value-history-controller-slimmer.abstract-45ccddc9.js → component-value-history-controller-slimmer.abstract-282df6e5.js} +4 -4
  167. package/dist/esm/{content-state-67950b80.js → content-state-909099f8.js} +33 -4
  168. package/dist/esm/copy-54e45e2d.js +5 -0
  169. package/dist/esm/{date-required-rule-958cf380.js → date-required-rule-15edb04a.js} +1 -1
  170. package/dist/esm/{design-token-e7e78f18.js → design-token-cb5ed6b9.js} +3 -3
  171. package/dist/esm/{element-appender-slimmer-ebda526d.js → element-appender-slimmer-e41120ee.js} +4 -4
  172. package/dist/esm/{event-emit-slimmer-b94cec83.js → event-emit-slimmer-03deba18.js} +1 -1
  173. package/dist/esm/{file-uploader-required-rule-82188a61.js → file-uploader-required-rule-96952e1a.js} +1 -1
  174. package/dist/esm/{form-field-controller-slimmer-0a2ba886.js → form-field-controller-slimmer-cfe1d8a7.js} +3 -3
  175. package/dist/esm/{image-annotation-action-7f7a5678.js → image-annotation-action-98232dc4.js} +3 -3
  176. package/dist/esm/index-090d31ca.js +4 -0
  177. package/dist/esm/index.js +24 -23
  178. package/dist/esm/{inject-keyboard-manager-2b19c121.js → inject-keyboard-manager-13cc77ab.js} +1 -1
  179. package/dist/esm/{internal-calendar-period-factory-fff8aaee.js → internal-calendar-period-factory-c3d70f3b.js} +1 -1
  180. package/dist/esm/{internal-translation-controller-aa09ca87.js → internal-translation-controller-8e8a514a.js} +14 -0
  181. package/dist/esm/{internal-vega-event-manager-956cf128.js → internal-vega-event-manager-75e5e3bb.js} +1 -1
  182. package/dist/esm/{keyboard-manager-3e5b157f.js → keyboard-manager-fe885db1.js} +1 -1
  183. package/dist/esm/{keyboard-manager-slimmer-ba5cc767.js → keyboard-manager-slimmer-61d4c79b.js} +1 -1
  184. package/dist/esm/{link-extension-afb404fb.js → link-extension-f1a3bea7.js} +3 -3
  185. package/dist/esm/loader.js +17 -16
  186. package/dist/esm/{month-view-generator-7a0c869c.js → month-view-generator-85eecb95.js} +1 -1
  187. package/dist/esm/{public-rules-f64b0b78.js → public-rules-323bea4b.js} +11 -11
  188. package/dist/esm/{range-4d09a305.js → range-e63068d1.js} +25 -3
  189. package/dist/esm/{replace-selected-text-action-12bc8b82.js → replace-selected-text-action-c0817b2b.js} +1 -1
  190. package/dist/esm/{required-field-rule-a4634842.js → required-field-rule-897fe8d1.js} +1 -1
  191. package/dist/esm/{responsive-format-facade-844c5e09.js → responsive-format-facade-fb424f5b.js} +2 -2
  192. package/dist/esm/{rich-text-editor-required-rule-d62d418e.js → rich-text-editor-required-rule-0edb8ba7.js} +1 -1
  193. package/dist/esm/{split-cell-operation-c515669e.js → split-cell-operation-93b4d775.js} +3 -3
  194. package/dist/esm/{state-border-formatter-f53847a5.js → state-border-formatter-1a528ca4.js} +1 -1
  195. package/dist/esm/{string-format-strategy.abstract-a0327405.js → string-format-strategy.abstract-72fc98aa.js} +1 -1
  196. package/dist/esm/{string-input-formatter-slimmer-12de4a25.js → string-input-formatter-slimmer-b0c480d8.js} +3 -3
  197. package/dist/esm/{string-mask-strategy-3bb03155.js → string-mask-strategy-4e00c173.js} +2 -2
  198. package/dist/esm/{style-formatter-df7bf8ec.js → style-formatter-5c1bea8d.js} +2 -2
  199. package/dist/esm/{sub-state-notify-slimmer-7ef94141.js → sub-state-notify-slimmer-0f72ce74.js} +1 -1
  200. package/dist/esm/{sub-state-observer-slimmer-d9ad2bdd.js → sub-state-observer-slimmer-64532d94.js} +1 -1
  201. package/dist/esm/{time-required-rule-db0dee53.js → time-required-rule-df500b14.js} +1 -1
  202. package/dist/esm/{token-extension-8ff92d14.js → token-extension-32d1fa56.js} +1610 -20
  203. package/dist/esm/{translation-slimmer-4904e7fe.js → translation-slimmer-60408f13.js} +1 -1
  204. package/dist/esm/{type-guard-a2cbaae9.js → type-guard-91087018.js} +1 -1
  205. package/dist/esm/{valid-credit-card-number-rule-a3f9858d.js → valid-credit-card-number-rule-681ecb75.js} +1 -1
  206. package/dist/esm/vega-accordion.entry.js +21 -13
  207. package/dist/esm/vega-app-footer.entry.js +3 -3
  208. package/dist/esm/vega-app-header-button.entry.js +10 -10
  209. package/dist/esm/vega-banner.entry.js +5 -8
  210. package/dist/esm/vega-box.entry.js +7 -7
  211. package/dist/esm/vega-breadcrumb.entry.js +5 -5
  212. package/dist/esm/vega-button-circle.entry.js +11 -11
  213. package/dist/esm/vega-button-group_2.entry.js +8 -8
  214. package/dist/esm/vega-button-link.entry.js +5 -5
  215. package/dist/esm/vega-button.entry.js +9 -9
  216. package/dist/esm/vega-calendar_5.entry.js +15 -15
  217. package/dist/esm/vega-card.entry.js +6 -6
  218. package/dist/esm/vega-carousel.entry.js +7 -7
  219. package/dist/esm/vega-checkbox_2.entry.js +10 -10
  220. package/dist/esm/vega-chip.entry.js +10 -10
  221. package/dist/esm/vega-code-block.entry.js +15 -18
  222. package/dist/esm/vega-color-picker.entry.js +9 -9
  223. package/dist/esm/vega-color-swatch-picker.entry.js +11 -11
  224. package/dist/esm/vega-color-swatch.entry.js +5 -5
  225. package/dist/esm/vega-combo-box.entry.js +16 -16
  226. package/dist/esm/vega-date-picker_2.entry.js +22 -22
  227. package/dist/esm/vega-dialog_2.entry.js +10 -10
  228. package/dist/esm/vega-divider.entry.js +6 -6
  229. package/dist/esm/vega-dropdown_5.entry.js +16 -16
  230. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  231. package/dist/esm/{vega-event-id-268f8def.js → vega-event-id-d3017041.js} +1 -1
  232. package/dist/esm/vega-field-label.entry.js +16 -12
  233. package/dist/esm/vega-file-uploader.entry.js +11 -11
  234. package/dist/esm/vega-flag-icon.entry.js +6 -6
  235. package/dist/esm/vega-flex.entry.js +7 -7
  236. package/dist/esm/vega-font.entry.js +6 -6
  237. package/dist/esm/vega-form.entry.js +11 -11
  238. package/dist/esm/vega-grid.entry.js +6 -6
  239. package/dist/esm/vega-icon.entry.js +6 -6
  240. package/dist/esm/vega-image-uploader.entry.js +13 -13
  241. package/dist/esm/vega-input-credit-card.entry.js +14 -14
  242. package/dist/esm/vega-input-numeric.entry.js +14 -14
  243. package/dist/esm/vega-input-passcode.entry.js +13 -13
  244. package/dist/esm/vega-input-phone-number.entry.js +11 -11
  245. package/dist/esm/vega-input-range.entry.js +10 -10
  246. package/dist/esm/vega-input-select.entry.js +13 -13
  247. package/dist/esm/vega-input.entry.js +15 -15
  248. package/dist/esm/{vega-internal-event-id-22151a4d.js → vega-internal-event-id-827eb1ce.js} +1 -1
  249. package/dist/esm/vega-item-toggle.entry.js +3 -3
  250. package/dist/esm/vega-left-nav_5.entry.js +14 -14
  251. package/dist/esm/vega-loader-wrapper_2.entry.js +4 -4
  252. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  253. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +5 -5
  254. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +4 -4
  255. package/dist/esm/vega-pagination.entry.js +10 -10
  256. package/dist/esm/vega-popover_2.entry.js +14 -14
  257. package/dist/esm/vega-progress-tracker_2.entry.js +10 -10
  258. package/dist/esm/vega-radio_2.entry.js +13 -13
  259. package/dist/esm/vega-rich-text-content.entry.js +10 -10
  260. package/dist/esm/vega-rich-text-editor_4.entry.js +227 -55
  261. package/dist/esm/vega-rich-text-find-replace-panel.entry.js +229 -0
  262. package/dist/esm/vega-rich-text-special-characters-panel.entry.js +8 -8
  263. package/dist/esm/vega-rich-text-table-properties_3.entry.js +14 -14
  264. package/dist/esm/vega-segment-control.entry.js +3 -3
  265. package/dist/esm/vega-selection-chip_2.entry.js +13 -13
  266. package/dist/esm/vega-selection-tile_2.entry.js +11 -11
  267. package/dist/esm/vega-sidenav_3.entry.js +10 -10
  268. package/dist/esm/vega-signature-capture.entry.js +14 -14
  269. package/dist/esm/vega-stepper.entry.js +9 -9
  270. package/dist/esm/vega-tab-group_2.entry.js +5 -5
  271. package/dist/esm/vega-table_11.entry.js +12 -12
  272. package/dist/esm/vega-textarea.entry.js +10 -10
  273. package/dist/esm/vega-time-picker_2.entry.js +16 -16
  274. package/dist/esm/vega-toggle-switch.entry.js +7 -7
  275. package/dist/esm/vega-tooltip_2.entry.js +8 -8
  276. package/dist/esm/vega.js +17 -16
  277. package/dist/esm/{wait-for-component-did-render-0488922a.js → wait-for-component-did-render-0c237cb8.js} +1 -1
  278. package/dist/esm/xmark-large-c5ae7944.js +5 -0
  279. package/dist/sri/vega-sri-manifest.json +387 -375
  280. package/dist/types/components/vega-accordion/slimmers/vega-accordion-renderer.d.ts +2 -0
  281. package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.d.ts +1 -0
  282. package/dist/types/components/vega-field-label/types.d.ts +12 -0
  283. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-merge-nodes-strategy.d.ts +9 -0
  284. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/delete-selected-content-strategy.d.ts +13 -0
  285. package/dist/types/components/vega-rich-text-editor/dto/actions/delete-selected-content-action.d.ts +12 -0
  286. package/dist/types/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.d.ts +2 -1
  287. package/dist/types/components/vega-rich-text-editor/dto/range.d.ts +16 -0
  288. package/dist/types/components/vega-rich-text-editor/extensions/copy/action-handler-strategies/copy-selected-content-strategy.d.ts +79 -0
  289. package/dist/types/components/vega-rich-text-editor/extensions/copy/actions/copy-selected-content-action.d.ts +18 -0
  290. package/dist/types/components/vega-rich-text-editor/extensions/copy/copy-extension.d.ts +10 -0
  291. package/dist/types/components/vega-rich-text-editor/extensions/copy/copy-toolbar-button-renderer.d.ts +36 -0
  292. package/dist/types/components/vega-rich-text-editor/extensions/cut/cut-extension.d.ts +11 -0
  293. package/dist/types/components/vega-rich-text-editor/extensions/cut/cut-toolbar-button-renderer.d.ts +24 -0
  294. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/assets/find-and-replace.d.ts +3 -0
  295. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/find-replace-extension.d.ts +15 -0
  296. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/find-controller.d.ts +65 -0
  297. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/find-replace-controller.abstract.d.ts +65 -0
  298. 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
  299. 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
  300. 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
  301. 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
  302. 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
  303. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-highlight-manager.d.ts +88 -0
  304. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-state.d.ts +200 -0
  305. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/replace-controller.d.ts +73 -0
  306. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.d.ts +64 -0
  307. 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
  308. 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
  309. package/dist/types/components/vega-rich-text-editor/extensions/functions/function-extension.d.ts +1 -0
  310. package/dist/types/components/vega-rich-text-editor/extensions/horizontal-line/horizontal-line-extension.d.ts +1 -0
  311. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-extension.d.ts +1 -0
  312. package/dist/types/components/vega-rich-text-editor/extensions/line-height/line-height-extension.d.ts +1 -0
  313. package/dist/types/components/vega-rich-text-editor/extensions/special-characters/special-characters-extension.d.ts +1 -0
  314. package/dist/types/components/vega-rich-text-editor/extensions/table/table-extension.d.ts +1 -0
  315. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +1 -0
  316. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +4 -0
  317. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/abstract-delete-content-handler.d.ts +60 -0
  318. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/backward-delete-content-handler.d.ts +8 -0
  319. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/forward-delete-content-handler.d.ts +8 -0
  320. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/user-input-controller.d.ts +2 -1
  321. package/dist/types/components.d.ts +34 -0
  322. package/dist/types/global/icons/copy.d.ts +3 -0
  323. package/dist/types/helpers/translation/interface.d.ts +15 -1
  324. package/dist/types/types/ui.type.d.ts +1 -1
  325. package/dist/vega/index.esm.js +1 -1
  326. package/dist/vega/{p-cb4033ef.js → p-0179f55d.js} +1 -1
  327. package/dist/vega/{p-8bc23bcf.entry.js → p-06c2ce2c.entry.js} +1 -1
  328. package/dist/vega/{p-fb1ef3e6.entry.js → p-07b56f2b.entry.js} +1 -1
  329. package/dist/vega/{p-141f74ff.js → p-136226f8.js} +1 -1
  330. package/dist/vega/{p-e9a82603.entry.js → p-18413b62.entry.js} +1 -1
  331. package/dist/vega/p-209e0166.js +1 -0
  332. package/dist/vega/{p-014e2cf9.js → p-228c5de8.js} +1 -1
  333. package/dist/vega/{p-cc8bf6e7.entry.js → p-22f73e6e.entry.js} +1 -1
  334. package/dist/vega/p-2314494a.entry.js +1 -0
  335. package/dist/vega/p-2353b64f.entry.js +1 -0
  336. package/dist/vega/p-29e3eb12.js +1 -0
  337. package/dist/vega/p-2da12975.entry.js +1 -0
  338. package/dist/vega/{p-8019c156.js → p-2def8e3e.js} +1 -1
  339. package/dist/vega/{p-5bed3fd2.entry.js → p-2e58d99e.entry.js} +1 -1
  340. package/dist/vega/{p-bb0040d4.entry.js → p-30561e1d.entry.js} +1 -1
  341. package/dist/vega/{p-fc103347.entry.js → p-35df0f0a.entry.js} +1 -1
  342. package/dist/vega/{p-15da9d58.entry.js → p-37dffdf6.entry.js} +1 -1
  343. package/dist/vega/{p-5ffc7cb8.js → p-3a68b729.js} +1 -1
  344. package/dist/vega/{p-507612f6.entry.js → p-3cf4339a.entry.js} +1 -1
  345. package/dist/vega/{p-4cef4812.js → p-3f183b52.js} +1 -1
  346. package/dist/vega/{p-42ed76ee.entry.js → p-40501057.entry.js} +1 -1
  347. package/dist/vega/{p-12b5c5e3.entry.js → p-438b7404.entry.js} +1 -1
  348. package/dist/vega/{p-8982796b.entry.js → p-43c3848f.entry.js} +1 -1
  349. package/dist/vega/{p-9756c6b9.entry.js → p-450bf94d.entry.js} +1 -1
  350. package/dist/vega/{p-0e03daa6.js → p-45ab490c.js} +1 -1
  351. package/dist/vega/{p-94845302.entry.js → p-481601c0.entry.js} +1 -1
  352. package/dist/vega/{p-0707aa21.js → p-4953bb1a.js} +1 -1
  353. package/dist/vega/{p-2b22091e.js → p-4d9061fb.js} +1 -1
  354. package/dist/vega/{p-b2f9698a.entry.js → p-4e39adf5.entry.js} +1 -1
  355. package/dist/vega/{p-316a1e5c.entry.js → p-5038b6d7.entry.js} +1 -1
  356. package/dist/vega/{p-3cf298a4.entry.js → p-5319da71.entry.js} +1 -1
  357. package/dist/vega/p-53c76d9d.entry.js +1 -0
  358. package/dist/vega/{p-64b5fe2a.entry.js → p-5545a235.entry.js} +1 -1
  359. package/dist/vega/{p-c75872a4.entry.js → p-56cf1a65.entry.js} +1 -1
  360. package/dist/vega/{p-216ef41e.entry.js → p-5829a66d.entry.js} +1 -1
  361. package/dist/vega/p-590c8720.entry.js +1 -0
  362. package/dist/vega/{p-5e282e41.js → p-5946fadf.js} +1 -1
  363. package/dist/vega/{p-822f70b0.js → p-5beec481.js} +1 -1
  364. package/dist/vega/p-5de1acdb.js +1 -0
  365. package/dist/vega/p-5df9047c.js +1 -0
  366. package/dist/vega/p-5f377954.js +1 -1
  367. package/dist/vega/{p-aaa6e976.entry.js → p-625351a3.entry.js} +1 -1
  368. package/dist/vega/p-683cfe24.js +1 -0
  369. package/dist/vega/p-68e16c70.entry.js +1 -0
  370. package/dist/vega/{p-ef44d516.js → p-70817cf5.js} +1 -1
  371. package/dist/vega/{p-a14d8767.js → p-71e2a3ec.js} +1 -1
  372. package/dist/vega/{p-a4826f3f.entry.js → p-7798254d.entry.js} +1 -1
  373. package/dist/vega/p-7be548a7.js +1 -0
  374. package/dist/vega/{p-4037126d.js → p-802bf369.js} +1 -1
  375. package/dist/vega/{p-b77e85e0.entry.js → p-82279b03.entry.js} +1 -1
  376. package/dist/vega/{p-f362c07b.entry.js → p-8509c140.entry.js} +1 -1
  377. package/dist/vega/p-88a6c89a.js +1 -0
  378. package/dist/vega/p-890a5254.js +1 -0
  379. package/dist/vega/p-8aa07ed0.js +1 -0
  380. package/dist/vega/{p-da2b1fd0.entry.js → p-8b9a8603.entry.js} +1 -1
  381. package/dist/vega/{p-14bfc113.js → p-8bc15ed0.js} +1 -1
  382. package/dist/vega/{p-aea912ac.js → p-8d69b201.js} +1 -1
  383. package/dist/vega/p-8da860f6.js +1 -0
  384. package/dist/vega/{p-329c808e.entry.js → p-8f078d0d.entry.js} +1 -1
  385. package/dist/vega/p-916dfa7e.entry.js +1 -0
  386. package/dist/vega/{p-42a1d300.entry.js → p-9219201a.entry.js} +1 -1
  387. package/dist/vega/{p-cd2a1ffb.js → p-92823583.js} +1 -1
  388. package/dist/vega/{p-cec8ffdc.js → p-93dfab05.js} +1 -1
  389. package/dist/vega/{p-7f086e54.entry.js → p-9440a8a5.entry.js} +1 -1
  390. package/dist/vega/p-970115d6.js +1 -0
  391. package/dist/vega/{p-da067259.entry.js → p-9b1d718c.entry.js} +1 -1
  392. package/dist/vega/{p-c65a5778.entry.js → p-9cdedcfb.entry.js} +1 -1
  393. package/dist/vega/{p-6e7c1b19.entry.js → p-9fafc956.entry.js} +1 -1
  394. package/dist/vega/{p-70352240.entry.js → p-a268a4fb.entry.js} +1 -1
  395. package/dist/vega/{p-cd21adb8.js → p-a2bd621e.js} +1 -1
  396. package/dist/vega/p-a361456d.js +1 -0
  397. package/dist/vega/{p-73b9868f.js → p-aa32f2f3.js} +1 -1
  398. package/dist/vega/p-b6225d01.js +1 -0
  399. package/dist/vega/{p-58a00869.entry.js → p-b6ebfd5c.entry.js} +1 -1
  400. package/dist/vega/{p-fea33425.js → p-b730bf6e.js} +1 -1
  401. package/dist/vega/{p-81591449.entry.js → p-b799fc1f.entry.js} +1 -1
  402. package/dist/vega/{p-4644ccf9.entry.js → p-c0629528.entry.js} +1 -1
  403. package/dist/vega/{p-50d7a1c4.entry.js → p-c2e0f8b7.entry.js} +1 -1
  404. package/dist/vega/{p-522dd15f.entry.js → p-c67ce78c.entry.js} +1 -1
  405. package/dist/vega/{p-6ecb3c7d.entry.js → p-c78aeaf3.entry.js} +1 -1
  406. package/dist/vega/{p-5df53125.entry.js → p-c78e8081.entry.js} +1 -1
  407. package/dist/vega/{p-1acd5f04.entry.js → p-c8eaf91c.entry.js} +1 -1
  408. package/dist/vega/p-ca9852bb.js +1 -0
  409. package/dist/vega/{p-ce27c273.entry.js → p-cd1844ad.entry.js} +1 -1
  410. package/dist/vega/{p-a04b95aa.entry.js → p-cd9fb2ca.entry.js} +1 -1
  411. package/dist/vega/p-ce7e9515.entry.js +1 -0
  412. package/dist/vega/p-d0ce752f.entry.js +1 -0
  413. package/dist/vega/{p-044496e0.entry.js → p-d20587b4.entry.js} +1 -1
  414. package/dist/vega/{p-ae728041.entry.js → p-d3c8b871.entry.js} +1 -1
  415. package/dist/vega/{p-c87c7ef4.js → p-d7369441.js} +1 -1
  416. package/dist/vega/p-de885ef2.js +1 -0
  417. package/dist/vega/{p-b7b0930a.entry.js → p-dee38163.entry.js} +1 -1
  418. package/dist/vega/{p-6820b488.entry.js → p-e160a727.entry.js} +1 -1
  419. package/dist/vega/{p-49b4ab2b.js → p-e371738b.js} +1 -1
  420. package/dist/vega/{p-4979fd7d.js → p-e3803943.js} +1 -1
  421. package/dist/vega/p-e41d9d0e.entry.js +1 -0
  422. package/dist/vega/p-e5502873.entry.js +1 -0
  423. package/dist/vega/{p-5fcb825c.entry.js → p-e9cee498.entry.js} +1 -1
  424. package/dist/vega/p-ea22cba0.js +1 -0
  425. package/dist/vega/p-ea54ce0a.js +3 -0
  426. package/dist/vega/p-ee3155bd.js +1 -0
  427. package/dist/vega/{p-0605c656.entry.js → p-eee01ba7.entry.js} +1 -1
  428. package/dist/vega/{p-3fe43f7a.entry.js → p-ef2b9846.entry.js} +1 -1
  429. package/dist/vega/p-f0bc2bbb.js +1 -0
  430. package/dist/vega/{p-3863187f.entry.js → p-f365601c.entry.js} +1 -1
  431. package/dist/vega/p-f4a01959.js +1 -0
  432. package/dist/vega/{p-9e327397.entry.js → p-f515d189.entry.js} +1 -1
  433. package/dist/vega/{p-b504a8b4.entry.js → p-f5aefb2f.entry.js} +1 -1
  434. package/dist/vega/{p-2f48162f.entry.js → p-f6bccb06.entry.js} +1 -1
  435. package/dist/vega/{p-e75e75c9.entry.js → p-f70f7ad8.entry.js} +1 -1
  436. package/dist/vega/{p-42f3c0b1.entry.js → p-f7739cbb.entry.js} +1 -1
  437. package/dist/vega/{p-335e3237.entry.js → p-fc5dfb52.entry.js} +1 -1
  438. package/dist/vega/p-fd70418f.js +1 -0
  439. package/dist/vega/vega.esm.js +1 -1
  440. package/package.json +1 -1
  441. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/delete-content-handler.js +0 -92
  442. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/delete-content-handler.d.ts +0 -26
  443. package/dist/vega/p-144d4b30.js +0 -1
  444. package/dist/vega/p-21775cc7.js +0 -1
  445. package/dist/vega/p-2944c76e.entry.js +0 -1
  446. package/dist/vega/p-3372f34a.entry.js +0 -1
  447. package/dist/vega/p-53ed3b1f.js +0 -1
  448. package/dist/vega/p-57f7c257.js +0 -1
  449. package/dist/vega/p-5a4e598f.js +0 -1
  450. package/dist/vega/p-5e1cd1cc.js +0 -1
  451. package/dist/vega/p-5e1ec2b8.entry.js +0 -1
  452. package/dist/vega/p-61d42e9b.entry.js +0 -1
  453. package/dist/vega/p-63ae5ada.entry.js +0 -1
  454. package/dist/vega/p-66905cbf.js +0 -1
  455. package/dist/vega/p-689070f9.entry.js +0 -1
  456. package/dist/vega/p-74fa0f5b.entry.js +0 -1
  457. package/dist/vega/p-7bb39b97.js +0 -1
  458. package/dist/vega/p-7f139b74.js +0 -1
  459. package/dist/vega/p-85d78ac1.js +0 -1
  460. package/dist/vega/p-92a144bc.js +0 -1
  461. package/dist/vega/p-9f608b97.js +0 -1
  462. package/dist/vega/p-aca134a3.entry.js +0 -1
  463. package/dist/vega/p-b2f89dbd.js +0 -1
  464. package/dist/vega/p-bd94b904.entry.js +0 -1
  465. package/dist/vega/p-c0c2a917.js +0 -3
  466. package/dist/vega/p-c40555c4.entry.js +0 -1
  467. package/dist/vega/p-d0060bdb.js +0 -1
  468. package/dist/vega/p-d00b3910.js +0 -1
  469. package/dist/vega/p-d14ddf80.js +0 -1
  470. package/dist/vega/p-dc78e8d6.js +0 -1
  471. package/dist/vega/p-ddc2d219.js +0 -1
  472. /package/dist/cjs/{feature-flag-controller-438a1510.js → feature-flag-controller-c19d0b58.js} +0 -0
  473. /package/dist/collection/{components/vega-code-block/assets → global/icons}/copy.js +0 -0
  474. /package/dist/esm/{feature-flag-controller-2a89f20c.js → feature-flag-controller-3fd04ea9.js} +0 -0
  475. /package/dist/types/components/{vega-code-block/assets/copy.d.ts → vega-rich-text-editor/assets/cut.d.ts} +0 -0
  476. /package/dist/vega/{p-bc73ce30.js → p-87a4d75f.js} +0 -0
@@ -0,0 +1,153 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { h } from '@stencil/core';
8
+ import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
9
+ import { VegaInternalIconManager } from '../../../../../../../helpers/icon/internal-icon-manager';
10
+ import chevronUp from '../../../../../../../global/icons/chevron-up';
11
+ import chevronDown from '../../../../../../../global/icons/chevron-down';
12
+ import xmarkLarge from '../../../../../../../global/icons/xmark-large';
13
+ import { DomNodeSubjectObserverFactory } from '../../../../../../../helpers/change-manager/subject/dom-node-subject/dom-node-subject-observer-factory';
14
+ import { VegaChange, VegaClick } from '../../../../../../../helpers/event-manager/event-id/vega-event-id';
15
+ import { VegaInternalTranslation } from '../../../../../../../helpers/translation/internal-translation-controller';
16
+ /**
17
+ * Renderer slimmer for the Find & Replace panel.
18
+ * Renders a search input, a "current/total" counter, and prev/next/close icon buttons.
19
+ */
20
+ export class FindReplacePanelRenderer extends VegaSlimmer {
21
+ render() {
22
+ const hasResults = this.total > 0;
23
+ return (h("div", { class: "find-replace-panel", role: "presentation" },
24
+ this.renderHeader(),
25
+ h("vega-divider", { direction: "horizontal" }),
26
+ h("div", { class: "find-replace-panel__field" },
27
+ h("vega-field-label", { label: VegaInternalTranslation.t('Find in text') }),
28
+ h("div", { class: "find-replace-panel__body" },
29
+ h("vega-input", { size: "small", label: "", class: "find-replace-panel__input", ref: (ref) => {
30
+ if (ref) {
31
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, (e) => {
32
+ this.onKeywordChange(e.detail);
33
+ });
34
+ }
35
+ } }),
36
+ h("vega-flex", { alignItems: "center", gap: "size-4", class: "find-replace-panel__nav" },
37
+ h("vega-font", { variant: "font-field-label-sm", color: "text-secondary", class: "find-replace-panel__counter" }, hasResults ? `${this.currentIndex}/${this.total}` : '-/-'),
38
+ this.renderNavButton('prev', 'rte-find-replace-prev', VegaInternalTranslation.t('Previous match')),
39
+ this.renderNavButton('next', 'rte-find-replace-next', VegaInternalTranslation.t('Next match'))))),
40
+ h("div", { class: "find-replace-panel__field" },
41
+ h("vega-field-label", { label: VegaInternalTranslation.t('Replace with') }),
42
+ h("div", { class: "find-replace-panel__body" },
43
+ h("vega-input", { disabled: !hasResults, size: "small", label: "", class: "find-replace-panel__input", ref: (ref) => {
44
+ if (ref) {
45
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, (e) => {
46
+ this.onReplacementChange(e.detail);
47
+ });
48
+ }
49
+ } }))),
50
+ h("vega-accordion", { class: "find-replace-panel__field", expand: false, drawsBackground: false },
51
+ h("div", { class: "find-replace-panel__accordion-title", slot: "title" }, VegaInternalTranslation.t('Advanced options')),
52
+ h("vega-flex", { slot: "content", gap: "size-16", class: "advanced-options-content" },
53
+ this.renderSearchOptionToggle('match-case', VegaInternalTranslation.t('Match case'), this.matchCase),
54
+ this.renderSearchOptionToggle('whole-words', VegaInternalTranslation.t('Whole words'), this.wholeWords))),
55
+ h("div", { class: "find-replace-panel__footer" }, this.renderActionButtons())));
56
+ }
57
+ renderHeader() {
58
+ return (h("div", { class: "find-replace-panel__header" },
59
+ h("vega-font", null, VegaInternalTranslation.t('Find and replace')),
60
+ this.renderNavButton('close', 'rte-find-replace-close', VegaInternalTranslation.t('Close'), 'extra-small')));
61
+ }
62
+ renderNavButton(itemKey, iconKey, label, size) {
63
+ return (h("vega-button-circle", { ref: (ref) => {
64
+ if (ref) {
65
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
66
+ this.emitAction(itemKey);
67
+ });
68
+ }
69
+ }, variant: "icon-only", size: size || 'small', icon: VegaInternalIconManager.getIconKey(iconKey), label: label }));
70
+ }
71
+ renderSearchOptionToggle(actionKey, label, isActive) {
72
+ return (h("vega-toggle-switch", { size: "small", label: label, checked: isActive, ref: (ref) => {
73
+ if (ref) {
74
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, () => {
75
+ this.onToggleSearchOption(actionKey);
76
+ });
77
+ }
78
+ } }));
79
+ }
80
+ renderFindButton() {
81
+ return (h("vega-button", { size: "small", variant: "secondary", ref: (ref) => {
82
+ if (ref) {
83
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
84
+ this.emitAction('find');
85
+ });
86
+ }
87
+ } }, VegaInternalTranslation.t('Find')));
88
+ }
89
+ renderActionButtons() {
90
+ const shouldDisableReplace = this.total === 0;
91
+ return (h("vega-flex", { alignItems: "center", gap: "size-16" },
92
+ h("vega-button-link", { size: "small", disabled: shouldDisableReplace, ref: (ref) => {
93
+ if (ref) {
94
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
95
+ this.emitAction('replace-all');
96
+ });
97
+ }
98
+ } }, VegaInternalTranslation.t('Replace All')),
99
+ h("vega-button-link", { size: "small", disabled: shouldDisableReplace, ref: (ref) => {
100
+ if (ref) {
101
+ DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
102
+ this.emitAction('replace');
103
+ });
104
+ }
105
+ } }, VegaInternalTranslation.t('Replace')),
106
+ this.renderFindButton()));
107
+ }
108
+ onKeywordChange(value) {
109
+ this.changeEventEmitter.emit({ type: 'keyword', value });
110
+ }
111
+ onReplacementChange(value) {
112
+ this.changeEventEmitter.emit({ type: 'replace', value });
113
+ }
114
+ onToggleSearchOption(actionKey) {
115
+ if (actionKey === 'match-case') {
116
+ this.matchCase = !this.matchCase;
117
+ this.emitAction(actionKey, this.matchCase);
118
+ }
119
+ else if (actionKey === 'whole-words') {
120
+ this.wholeWords = !this.wholeWords;
121
+ this.emitAction(actionKey, this.wholeWords);
122
+ }
123
+ }
124
+ emitAction(action, data) {
125
+ const payload = data !== undefined ? { action, data } : { action };
126
+ this.clickEventEmitter.emit(payload);
127
+ }
128
+ }
129
+ (() => {
130
+ VegaInternalIconManager.register({
131
+ 'rte-find-replace-prev': chevronUp,
132
+ 'rte-find-replace-next': chevronDown,
133
+ 'rte-find-replace-close': xmarkLarge,
134
+ });
135
+ })();
136
+ __decorate([
137
+ MapToComponentField()
138
+ ], FindReplacePanelRenderer.prototype, "changeEventEmitter", void 0);
139
+ __decorate([
140
+ MapToComponentField()
141
+ ], FindReplacePanelRenderer.prototype, "clickEventEmitter", void 0);
142
+ __decorate([
143
+ MapToComponentField()
144
+ ], FindReplacePanelRenderer.prototype, "currentIndex", void 0);
145
+ __decorate([
146
+ MapToComponentField()
147
+ ], FindReplacePanelRenderer.prototype, "total", void 0);
148
+ __decorate([
149
+ MapToComponentField({ writable: true })
150
+ ], FindReplacePanelRenderer.prototype, "matchCase", void 0);
151
+ __decorate([
152
+ MapToComponentField({ writable: true })
153
+ ], FindReplacePanelRenderer.prototype, "wholeWords", void 0);
@@ -0,0 +1,50 @@
1
+ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */ /* This file is generated by vega-design 2.0.77 */
2
+ /**
3
+ * Deprecated. Not for use in new websites.
4
+ * https://developer.mozilla.org/en-US/docs/Web/CSS/word-break#break-word
5
+ */
6
+ :host .find-replace-panel {
7
+ box-sizing: border-box;
8
+ width: 360px;
9
+ }
10
+ :host .find-replace-panel__header {
11
+ display: flex;
12
+ align-items: center;
13
+ justify-content: space-between;
14
+ padding-bottom: 12px;
15
+ }
16
+ :host .find-replace-panel__field {
17
+ padding-top: 12px;
18
+ }
19
+ :host .find-replace-panel__body {
20
+ display: flex;
21
+ align-items: center;
22
+ gap: 8px;
23
+ margin-top: 8px;
24
+ }
25
+ :host .find-replace-panel__input {
26
+ flex: 1;
27
+ }
28
+ :host .find-replace-panel__nav {
29
+ flex-shrink: 0;
30
+ }
31
+ :host .find-replace-panel__counter {
32
+ white-space: nowrap;
33
+ min-width: 36px;
34
+ text-align: center;
35
+ }
36
+ :host .find-replace-panel__footer {
37
+ display: flex;
38
+ justify-content: flex-end;
39
+ padding-top: 20px;
40
+ }
41
+ :host .advanced-options-content {
42
+ margin-top: -12px;
43
+ }
44
+ :host .find-replace-panel__accordion-title {
45
+ font-size: 16px;
46
+ font-weight: 500;
47
+ color: rgba(var(--v-text-primary, 32, 54, 69, 1));
48
+ line-height: 22px;
49
+ padding: 0;
50
+ }
@@ -0,0 +1,156 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Component, Element, Event, h, Host, Method, State } from '@stencil/core';
8
+ import { InjectVegaGlobalSlimmer, InjectVegaSlimmer } from 'vega-slimmer/core';
9
+ import { sanitizeVegaComponent } from '../../../../../utils/component';
10
+ import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../../../../helpers/slimmers/component-usage-runtime-metrics';
11
+ import { createEventEmitSlimmer, } from '../../../../../helpers/event-manager/slimmers/event-emit-slimmer';
12
+ import { VegaChange, VegaClick } from '../../../../../helpers/event-manager/event-id/vega-event-id';
13
+ import { FindReplacePanelRenderer } from './slimmers/renderers/find-replace-panel-renderer';
14
+ /**
15
+ * Internal panel component for the Find & Replace extension.
16
+ * Renders a search input, match counter, and prev/next/close buttons.
17
+ *
18
+ * - Emits `vegaChange` (payload: { type, value }) when find/replace inputs change.
19
+ * - Emits `vegaClick` (payload: `{ action: string; data?: unknown }`) when a button is clicked.
20
+ * - Exposes `updateResult(currentIndex, total)` for the toolbar renderer to push match counts back.
21
+ *
22
+ * @vegaVersion 2.92.0
23
+ */
24
+ export class VegaRichTextFindReplacePanel {
25
+ constructor() {
26
+ this.globalSlimmers = {};
27
+ this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer();
28
+ this.changeEventEmitter = createEventEmitSlimmer(VegaRichTextFindReplacePanel, VegaChange);
29
+ this.clickEventEmitter = createEventEmitSlimmer(VegaRichTextFindReplacePanel, VegaClick);
30
+ this.renderer = new FindReplacePanelRenderer();
31
+ this.currentIndex = 0;
32
+ this.total = 0;
33
+ this.matchCase = false;
34
+ this.wholeWords = false;
35
+ }
36
+ /**
37
+ * Updates the displayed match counter. Called by the toolbar renderer after each search or navigation.
38
+ *
39
+ * @param {number} currentIndex - 1-based index of the active match (0 when there are no matches).
40
+ * @param {number} total - Total number of matches.
41
+ * @vegaVersion 2.92.0
42
+ */
43
+ async updateResult(currentIndex, total) {
44
+ this.currentIndex = currentIndex;
45
+ this.total = total;
46
+ }
47
+ render() {
48
+ return sanitizeVegaComponent(h(Host, null, this.renderer.render()), this.host);
49
+ }
50
+ static get is() { return "vega-rich-text-find-replace-panel"; }
51
+ static get encapsulation() { return "shadow"; }
52
+ static get originalStyleUrls() { return {
53
+ "$": ["vega-rich-text-find-replace-panel.scss"]
54
+ }; }
55
+ static get styleUrls() { return {
56
+ "$": ["vega-rich-text-find-replace-panel.css"]
57
+ }; }
58
+ static get states() { return {
59
+ "currentIndex": {},
60
+ "total": {},
61
+ "matchCase": {},
62
+ "wholeWords": {}
63
+ }; }
64
+ static get events() { return [{
65
+ "method": "vegaChange",
66
+ "name": "vegaChange",
67
+ "bubbles": true,
68
+ "cancelable": true,
69
+ "composed": true,
70
+ "docs": {
71
+ "tags": [{
72
+ "name": "vegaVersion",
73
+ "text": "2.92.0"
74
+ }],
75
+ "text": "Emitted when a panel input value changes.\nPayload includes the input type (`keyword` or `replace`) and value."
76
+ },
77
+ "complexType": {
78
+ "original": "{ type: 'keyword' | 'replace'; value: string }",
79
+ "resolved": "{ type: \"keyword\" | \"replace\"; value: string; }",
80
+ "references": {}
81
+ }
82
+ }, {
83
+ "method": "vegaClick",
84
+ "name": "vegaClick",
85
+ "bubbles": true,
86
+ "cancelable": true,
87
+ "composed": true,
88
+ "docs": {
89
+ "tags": [{
90
+ "name": "vegaVersion",
91
+ "text": "2.92.0"
92
+ }],
93
+ "text": "Emitted when a panel action button is clicked.\nPayload includes the action key and optional data."
94
+ },
95
+ "complexType": {
96
+ "original": "{ action: string; data?: unknown }",
97
+ "resolved": "{ action: string; data?: unknown; }",
98
+ "references": {}
99
+ }
100
+ }]; }
101
+ static get methods() { return {
102
+ "updateResult": {
103
+ "complexType": {
104
+ "signature": "(currentIndex: number, total: number) => Promise<void>",
105
+ "parameters": [{
106
+ "tags": [{
107
+ "name": "param",
108
+ "text": "currentIndex - 1-based index of the active match (0 when there are no matches)."
109
+ }],
110
+ "text": "- 1-based index of the active match (0 when there are no matches)."
111
+ }, {
112
+ "tags": [{
113
+ "name": "param",
114
+ "text": "total - Total number of matches."
115
+ }],
116
+ "text": "- Total number of matches."
117
+ }],
118
+ "references": {
119
+ "Promise": {
120
+ "location": "global"
121
+ }
122
+ },
123
+ "return": "Promise<void>"
124
+ },
125
+ "docs": {
126
+ "text": "Updates the displayed match counter. Called by the toolbar renderer after each search or navigation.",
127
+ "tags": [{
128
+ "name": "param",
129
+ "text": "currentIndex - 1-based index of the active match (0 when there are no matches)."
130
+ }, {
131
+ "name": "param",
132
+ "text": "total - Total number of matches."
133
+ }, {
134
+ "name": "vegaVersion",
135
+ "text": "2.92.0"
136
+ }]
137
+ }
138
+ }
139
+ }; }
140
+ static get elementRef() { return "host"; }
141
+ }
142
+ __decorate([
143
+ InjectVegaGlobalSlimmer()
144
+ ], VegaRichTextFindReplacePanel.prototype, "globalSlimmers", void 0);
145
+ __decorate([
146
+ InjectVegaSlimmer()
147
+ ], VegaRichTextFindReplacePanel.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
148
+ __decorate([
149
+ InjectVegaSlimmer()
150
+ ], VegaRichTextFindReplacePanel.prototype, "changeEventEmitter", void 0);
151
+ __decorate([
152
+ InjectVegaSlimmer()
153
+ ], VegaRichTextFindReplacePanel.prototype, "clickEventEmitter", void 0);
154
+ __decorate([
155
+ InjectVegaSlimmer()
156
+ ], VegaRichTextFindReplacePanel.prototype, "renderer", void 0);
@@ -40,7 +40,7 @@ export class VegaRTEFunctionExtension extends VegaRTEExtension {
40
40
  }
41
41
  /** @inheritDoc */
42
42
  prepareBeforeLoad(host) {
43
- this.registerToolbarButtonRenderer('functions', new FunctionToolbarButtonRenderer(), host);
43
+ this.registerToolbarButtonRenderer(VegaRTEFunctionExtension.TOOLBAR_BUTTON_KEY, new FunctionToolbarButtonRenderer(), host);
44
44
  }
45
45
  /**
46
46
  * Remove the appen children strategies to prevent default insert new paragraph logic in function block
@@ -64,3 +64,4 @@ export class VegaRTEFunctionExtension extends VegaRTEExtension {
64
64
  VegaRTEExtension.registerActionHandlerInterceptor(RTETextBlock.name, ModifyContentActionType.INSERT_NEW_PARAGRAPH, new PreventNewParagraphInterceptor());
65
65
  VegaRTEExtension.registerActionHandlerInterceptor(RTETextBlock.name, ModifyContentActionType.PASTE_CONTENT, new PreventPasteContentInterceptor());
66
66
  })();
67
+ VegaRTEFunctionExtension.TOOLBAR_BUTTON_KEY = 'functions';
@@ -24,7 +24,7 @@ export class VegaRTEHorizontalLineExtension extends VegaRTEExtension {
24
24
  // Register the renderer
25
25
  this.registerRenderer('horizontal-line', this.blockRenderer);
26
26
  // Register the toolbar button
27
- this.registerToolbarButtonRenderer('horizontalLine', this.toolbarButtonRenderer);
27
+ this.registerToolbarButtonRenderer(VegaRTEHorizontalLineExtension.TOOLBAR_BUTTON_KEY, this.toolbarButtonRenderer);
28
28
  // Register HTML → DTO conversion strategy
29
29
  this.registerElementToBlockDTOClassStrategy(new HrToHorizontalLineBlockStrategy());
30
30
  // Register filter styles strategy for source edit round-trip
@@ -39,3 +39,4 @@ export class VegaRTEHorizontalLineExtension extends VegaRTEExtension {
39
39
  VegaRTEExtension.registerActionHandleStrategy(RTEImageBlock.name, INSERT_HORIZONTAL_LINE_BLOCK, insertStrategy);
40
40
  VegaRTEExtension.registerActionHandleStrategy(RTEHorizontalLineBlock.name, INSERT_HORIZONTAL_LINE_BLOCK, insertStrategy);
41
41
  })();
42
+ VegaRTEHorizontalLineExtension.TOOLBAR_BUTTON_KEY = 'horizontalLine';
@@ -46,7 +46,7 @@ export class VegaRTELanguageExtension extends VegaRTEExtension {
46
46
  */
47
47
  prepareBeforeLoad(host) {
48
48
  this.languageToolbarButtonRenderer = new RTELanguageToolbarButtonRenderer(this.languageList, this.languageChangeCallBack, this.languageState.selectedLanguage);
49
- this.registerToolbarButtonRenderer('languages', this.languageToolbarButtonRenderer, host);
49
+ this.registerToolbarButtonRenderer(VegaRTELanguageExtension.TOOLBAR_BUTTON_KEY, this.languageToolbarButtonRenderer, host);
50
50
  }
51
51
  /**
52
52
  * Initializes the language extension.
@@ -138,3 +138,4 @@ export class VegaRTELanguageExtension extends VegaRTEExtension {
138
138
  return result;
139
139
  }
140
140
  }
141
+ VegaRTELanguageExtension.TOOLBAR_BUTTON_KEY = 'languages';
@@ -32,7 +32,7 @@ export class VegaRTELineHeightExtension extends VegaRTEExtension {
32
32
  */
33
33
  prepareBeforeLoad(host) {
34
34
  this.toolbarButtonRenderer = new RTELineHeightToolbarButtonRenderer(this.options);
35
- this.registerToolbarButtonRenderer('lineHeight', this.toolbarButtonRenderer, host);
35
+ this.registerToolbarButtonRenderer(VegaRTELineHeightExtension.TOOLBAR_BUTTON_KEY, this.toolbarButtonRenderer, host);
36
36
  }
37
37
  }
38
38
  (() => {
@@ -42,3 +42,4 @@ export class VegaRTELineHeightExtension extends VegaRTEExtension {
42
42
  attachLineHeightFromJson(BlockClass);
43
43
  });
44
44
  })();
45
+ VegaRTELineHeightExtension.TOOLBAR_BUTTON_KEY = 'lineHeight';
@@ -13,7 +13,7 @@ export class VegaRTESpecialCharactersExtension extends VegaRTEExtension {
13
13
  }
14
14
  /** @inheritDoc */
15
15
  prepareBeforeLoad(host) {
16
- this.registerToolbarButtonRenderer('special-characters', new RTESpecialCharactersToolbarButtonRenderer(this.categories), host);
16
+ this.registerToolbarButtonRenderer(VegaRTESpecialCharactersExtension.TOOLBAR_BUTTON_KEY, new RTESpecialCharactersToolbarButtonRenderer(this.categories), host);
17
17
  }
18
18
  /**
19
19
  * Builds the final list of special character categories from the provided config.
@@ -32,3 +32,4 @@ export class VegaRTESpecialCharactersExtension extends VegaRTEExtension {
32
32
  return [...defaultCategories, ...config.categories];
33
33
  }
34
34
  }
35
+ VegaRTESpecialCharactersExtension.TOOLBAR_BUTTON_KEY = 'special-characters';
@@ -92,7 +92,7 @@ export class VegaRTETableExtension extends VegaRTEExtension {
92
92
  this.tableHeadCellRenderer = new RTETableHeadCellRenderer();
93
93
  this.tableSelection = new RTETableSelection();
94
94
  RTETableColorManager.setTableColors(colors);
95
- this.registerToolbarButtonRenderer('table', this.toolbarButtonRenderer);
95
+ this.registerToolbarButtonRenderer(VegaRTETableExtension.TOOLBAR_BUTTON_KEY, this.toolbarButtonRenderer);
96
96
  this.registerBlockBasicStrategies(RTETableBlock.name);
97
97
  this.registerBlockBasicStrategies(RTETableHeadBlock.name);
98
98
  this.registerBlockBasicStrategies(RTETableHeadCellBlock.name);
@@ -180,3 +180,4 @@ export class VegaRTETableExtension extends VegaRTEExtension {
180
180
  VegaRTEExtension.registerFilterStylesStrategy(RTETableCellBlock.dtoName, new TableCellFilterStylesStrategy());
181
181
  VegaRTEExtension.registerFilterStylesStrategy(RTETableHeadCellBlock.dtoName, new TableCellFilterStylesStrategy('th'));
182
182
  })();
183
+ VegaRTETableExtension.TOOLBAR_BUTTON_KEY = 'table';
@@ -13,7 +13,7 @@ export class SelectionWidgetKeyboardController extends KeyboardManagerSlimmer {
13
13
  constructor() {
14
14
  super(() => [
15
15
  {
16
- keyCode: 'Backspace',
16
+ keyCode: ['Backspace', 'Delete'],
17
17
  eventName: 'keydown',
18
18
  activeElementInScope: [this.selectionWidgetRenderer.getWidgetHandleRef()],
19
19
  callback: this.handleDeleteKeyDown,
@@ -21,7 +21,7 @@ export class VegaRTETokenExtension extends VegaRTEExtension {
21
21
  }
22
22
  /** @inheritDoc */
23
23
  prepareBeforeLoad(host) {
24
- this.registerToolbarButtonRenderer('token', new RTETokenToolbarButtonRenderer(this.tokenList), host);
24
+ this.registerToolbarButtonRenderer(VegaRTETokenExtension.TOOLBAR_BUTTON_KEY, new RTETokenToolbarButtonRenderer(this.tokenList), host);
25
25
  }
26
26
  }
27
27
  (() => {
@@ -29,3 +29,4 @@ export class VegaRTETokenExtension extends VegaRTEExtension {
29
29
  VegaRTEExtension.registerActionHandleStrategy(RTETextBlock.name, 'INSERT_TOKEN_NODE', insertTokenNodeStrategy);
30
30
  VegaRTEExtension.registerActionHandleStrategy(RTEListItemBlock.name, 'INSERT_TOKEN_NODE', insertTokenNodeStrategy);
31
31
  })();
32
+ VegaRTETokenExtension.TOOLBAR_BUTTON_KEY = 'token';
@@ -21,9 +21,12 @@ export { VegaRTEFunctionExtension } from './extensions/functions/function-extens
21
21
  export { VegaRTETableExtension } from './extensions/table/table-extension';
22
22
  export { VegaRTEHorizontalLineExtension } from './extensions/horizontal-line/horizontal-line-extension';
23
23
  export { VegaRTESpecialCharactersExtension } from './extensions/special-characters/special-characters-extension';
24
+ export { VegaRTEFindReplaceExtension } from './extensions/find-replace/find-replace-extension';
24
25
  export { VegaRTESpecialCharactersEssentials, VegaRTESpecialCharactersLatin, VegaRTESpecialCharactersMathematical, VegaRTESpecialCharactersArrows, VegaRTESpecialCharactersCurrency, VegaRTESpecialCharactersText, } from './extensions/special-characters/constants/default-categories';
25
26
  export { VegaRTELineHeightExtension } from './extensions/line-height/line-height-extension';
26
27
  export { VegaRTELinkExtension } from './extensions/link/link-extension';
28
+ export { VegaRTECopyExtension } from './extensions/copy/copy-extension';
29
+ export { VegaRTECutExtension } from './extensions/cut/cut-extension';
27
30
  // actions
28
31
  export { ModifyContentAction, ModifyContentActionType } from './dto/actions/modify-content-action.abstract';
29
32
  export { AppendChildrenAction } from './dto/actions/append-child-nodes-action';
@@ -33,6 +36,7 @@ export { InsertChildrenBeforeAction } from './dto/actions/insert-children-before
33
36
  export { InsertNodeToNearestRootAction } from './dto/actions/insert-node-to-nearest-root-action';
34
37
  export { UpdateCursorPositionAction } from './dto/actions/update-cursor-position-action';
35
38
  export { InsertNewParagraphAction } from './dto/actions/insert-new-paragraph-action';
39
+ export { DeleteSelectedContentAction } from './dto/actions/delete-selected-content-action';
36
40
  // annotations
37
41
  export { CustomAttributeAnnotation } from './dto/annotations/custom-attribute-annotation';
38
42
  export { CustomClassAnnotation } from './dto/annotations/custom-class-annotation';
@@ -0,0 +1,133 @@
1
+ import { AppendChildrenAction } from '../../../../dto/actions/append-child-nodes-action';
2
+ import { InsertChildrenBeforeAction } from '../../../../dto/actions/insert-children-before-block';
3
+ import { RemoveChildrenAction } from '../../../../dto/actions/remove-child-action';
4
+ import { ReplaceChildNodesAction } from '../../../../dto/actions/replace-child-nodes-action';
5
+ import { RTEBlock } from '../../../../dto/blocks/block.abstract';
6
+ import { RTETextBlock } from '../../../../dto/blocks/text-block';
7
+ import { RTETextNode } from '../../../../dto/nodes/text-node';
8
+ import { BaseHandler } from './base-handler';
9
+ /**
10
+ * Hosts the deletion logic shared by the forward and backward delete handlers. Subclasses implement
11
+ * the single-block deletion behaviour for their specific direction. User press backspace or delete
12
+ * will trigger one of those subclasses.
13
+ */
14
+ export class AbstractDeleteContentHandler extends BaseHandler {
15
+ /**
16
+ * Delete the selected node(s) from the current state.
17
+ */
18
+ handleEvent() {
19
+ const selectedBlocks = this.selectionController.getSelectedBlocks();
20
+ if (selectedBlocks.length >= 2) {
21
+ this.deleteContentWithMultipleNodes();
22
+ }
23
+ else {
24
+ this.deleteContentWithSingleBlock();
25
+ }
26
+ }
27
+ /**
28
+ * Computes the caret position one step to the right, used to translate a forward delete into a backspace.
29
+ *
30
+ * @param {Nullable<RTENode>} node - The node the caret is currently in.
31
+ * @param {number} offset - The current caret offset within the node.
32
+ * @returns {Nullable<ForwardDeletePosition>} The shifted position, or null when the caret is at the end of the content.
33
+ */
34
+ getForwardDeletePosition(node, offset) {
35
+ if (!node) {
36
+ return null;
37
+ }
38
+ // Delete the character to the right within the same node.
39
+ if (offset < node.getRangeEndOffset()) {
40
+ return { node, offset: offset + 1 };
41
+ }
42
+ // The caret is at the end of the node, move to the next node.
43
+ const nextNode = this.getNextNode(node);
44
+ if (!nextNode) {
45
+ return null;
46
+ }
47
+ // When the next node lives in the same block, the end of the current node and the
48
+ // start of the next node are the same caret position, so the character to delete is
49
+ // the first character of the next node, mirroring a backspace at offset 1.
50
+ if (nextNode.parent === node.parent) {
51
+ return { node: nextNode, offset: 1 };
52
+ }
53
+ // The next node lives in a different block, so deleting forward should merge that
54
+ // block or remove the next line break, mirroring a backspace at the block start.
55
+ return { node: nextNode, offset: 0 };
56
+ }
57
+ /**
58
+ * Returns the next node relative to the given node, crossing block boundaries when needed.
59
+ *
60
+ * @param {RTENode} node - The current node.
61
+ * @returns {Nullable<RTENode>} The next node, or null when the given node is the last node of the content.
62
+ */
63
+ getNextNode(node) {
64
+ const block = node.parent;
65
+ const nodeIndex = block.children.indexOf(node);
66
+ if (nodeIndex >= 0 && nodeIndex < block.children.length - 1) {
67
+ return block.children[nodeIndex + 1];
68
+ }
69
+ const nextBlock = this.getNextBlock(block);
70
+ return nextBlock ? nextBlock.getFirstNode() : null;
71
+ }
72
+ /**
73
+ * Returns the next block relative to the given block, ascending out of nested list structures when needed.
74
+ *
75
+ * @param {RTEBlock} block - The current block.
76
+ * @returns {Nullable<RTEBlock>} The next block, or null when the given block is the last block of the content.
77
+ */
78
+ getNextBlock(block) {
79
+ const parent = block.parent;
80
+ if (!parent || !parent.children) {
81
+ return null;
82
+ }
83
+ const siblings = parent.children;
84
+ const blockIndex = siblings.indexOf(block);
85
+ if (blockIndex >= 0 && siblings[blockIndex + 1]) {
86
+ return siblings[blockIndex + 1];
87
+ }
88
+ if (parent instanceof RTEBlock) {
89
+ return this.getNextBlock(parent);
90
+ }
91
+ return null;
92
+ }
93
+ /**
94
+ * Deletes the content within multiple nodes selected by the user.
95
+ */
96
+ deleteContentWithMultipleNodes() {
97
+ const selectedNodes = this.selectionController.getSelectedNodes();
98
+ const cursorNode = this.removeSelectionRange(true);
99
+ const lastSelectedNode = selectedNodes[selectedNodes.length - 1];
100
+ if (selectedNodes.length > 1 &&
101
+ lastSelectedNode instanceof RTETextNode &&
102
+ lastSelectedNode.isEmpty()) {
103
+ lastSelectedNode.parent.apply(new RemoveChildrenAction(lastSelectedNode));
104
+ }
105
+ this.convertFirstBlockToParagraph(cursorNode.parent);
106
+ }
107
+ /**
108
+ * If the first block is not paragraph, convert the block to paragraph after delete all text
109
+ *
110
+ * @param {RTEBlock} block - The first block instance
111
+ */
112
+ convertFirstBlockToParagraph(block) {
113
+ const firstBlock = this.currentState.children[0];
114
+ if (firstBlock === block &&
115
+ block instanceof RTETextBlock &&
116
+ block.children.length === 1 &&
117
+ block.children[0].isEmpty() &&
118
+ block.type !== 'paragraph') {
119
+ const paragraph = this.createEmptyParagraph();
120
+ paragraph.apply(new ReplaceChildNodesAction(block.children));
121
+ block.parent.apply(new InsertChildrenBeforeAction(block, paragraph));
122
+ block.parent.apply(new RemoveChildrenAction(block));
123
+ }
124
+ }
125
+ /**
126
+ * Creates a new paragraph element with a text node and appends it to the current state.
127
+ */
128
+ insertDefaultParagraph() {
129
+ const paragraph = this.createEmptyParagraph();
130
+ this.currentState.apply(new AppendChildrenAction([paragraph]));
131
+ this.selectionController.enqueueSelectionRangeFutureState(paragraph.children[0], 1);
132
+ }
133
+ }