@globalpayments/vega 2.47.1 → 2.49.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 (381) hide show
  1. package/dist/cjs/{app-globals-fdf98585.js → app-globals-e17dedba.js} +3 -3
  2. package/dist/cjs/{content-state-b1ec39e3.js → content-state-6a48bcb5.js} +240 -5
  3. package/dist/cjs/{design-token-0c22ffa8.js → design-token-6e2c52f1.js} +1 -1
  4. package/dist/cjs/{element-appender-slimmer-b3109dd1.js → element-appender-slimmer-9fb99abd.js} +2 -2
  5. package/dist/cjs/{form-field-controller-slimmer-2432e295.js → form-field-controller-slimmer-527c25a0.js} +2 -2
  6. package/dist/cjs/{image-annotation-action-becd6f24.js → image-annotation-action-9c2b9c8e.js} +1 -1
  7. package/dist/cjs/{index-ec9a1f36.js → index-c4dec3aa.js} +1 -1
  8. package/dist/cjs/index.cjs.js +6 -6
  9. package/dist/cjs/{inject-keyboard-manager-d1eac696.js → inject-keyboard-manager-b301e887.js} +1 -1
  10. package/dist/cjs/{keyboard-manager-97d0ddfa.js → keyboard-manager-2ccf4b16.js} +25 -5
  11. package/dist/cjs/{keyboard-manager-slimmer-23ce5dcf.js → keyboard-manager-slimmer-900cf2f5.js} +1 -1
  12. package/dist/cjs/loader.cjs.js +5 -5
  13. package/dist/cjs/{min-number-rule-5bcccc8f.js → min-number-rule-965fc43d.js} +2 -2
  14. package/dist/cjs/{public-rules-3c2a69b4.js → public-rules-10ec636d.js} +3 -3
  15. package/dist/cjs/{responsive-format-facade-e48962dd.js → responsive-format-facade-9be0a851.js} +1 -1
  16. package/dist/cjs/{rich-text-editor-required-rule-f08f5891.js → rich-text-editor-required-rule-5faded94.js} +1 -1
  17. package/dist/cjs/{string-input-formatter-slimmer-56a2401f.js → string-input-formatter-slimmer-50322824.js} +2 -2
  18. package/dist/cjs/{style-formatter-48ef74d4.js → style-formatter-5b95a2a6.js} +1 -1
  19. package/dist/cjs/{sub-state-notify-slimmer-b16c9094.js → sub-state-notify-slimmer-7f437b19.js} +1 -1
  20. package/dist/cjs/{sub-state-observer-slimmer-1b6de09f.js → sub-state-observer-slimmer-e90362cd.js} +1 -1
  21. package/dist/cjs/vega-accordion.cjs.entry.js +4 -4
  22. package/dist/cjs/vega-app-header-button.cjs.entry.js +4 -4
  23. package/dist/cjs/vega-box.cjs.entry.js +5 -5
  24. package/dist/cjs/vega-button-circle.cjs.entry.js +4 -4
  25. package/dist/cjs/vega-button-group_2.cjs.entry.js +3 -3
  26. package/dist/cjs/vega-button.cjs.entry.js +3 -3
  27. package/dist/cjs/vega-calendar_3.cjs.entry.js +3 -3
  28. package/dist/cjs/vega-card.cjs.entry.js +4 -4
  29. package/dist/cjs/vega-carousel.cjs.entry.js +3 -3
  30. package/dist/cjs/vega-checkbox_2.cjs.entry.js +3 -3
  31. package/dist/cjs/vega-chip.cjs.entry.js +4 -4
  32. package/dist/cjs/vega-color-picker.cjs.entry.js +3 -3
  33. package/dist/cjs/vega-combo-box.cjs.entry.js +5 -5
  34. package/dist/cjs/vega-date-picker_2.cjs.entry.js +10 -10
  35. package/dist/cjs/vega-dialog_2.cjs.entry.js +4 -4
  36. package/dist/cjs/vega-divider.cjs.entry.js +4 -4
  37. package/dist/cjs/vega-dropdown_5.cjs.entry.js +8 -8
  38. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  39. package/dist/cjs/vega-file-uploader.cjs.entry.js +3 -3
  40. package/dist/cjs/vega-flag-icon.cjs.entry.js +4 -4
  41. package/dist/cjs/vega-flex.cjs.entry.js +5 -5
  42. package/dist/cjs/vega-font.cjs.entry.js +4 -4
  43. package/dist/cjs/vega-form.cjs.entry.js +4 -4
  44. package/dist/cjs/vega-grid.cjs.entry.js +4 -4
  45. package/dist/cjs/vega-icon.cjs.entry.js +4 -4
  46. package/dist/cjs/vega-image-uploader.cjs.entry.js +16 -7
  47. package/dist/cjs/vega-input-credit-card.cjs.entry.js +3 -3
  48. package/dist/cjs/vega-input-numeric.cjs.entry.js +11 -8
  49. package/dist/cjs/vega-input-phone-number.cjs.entry.js +3 -3
  50. package/dist/cjs/vega-input-range.cjs.entry.js +3 -3
  51. package/dist/cjs/vega-input-select.cjs.entry.js +5 -5
  52. package/dist/cjs/vega-input.cjs.entry.js +8 -8
  53. package/dist/cjs/{vega-internal-event-id-dc866d43.js → vega-internal-event-id-bfea9b93.js} +4 -0
  54. package/dist/cjs/vega-left-nav_5.cjs.entry.js +447 -194
  55. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
  56. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +1 -1
  57. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +1 -1
  58. package/dist/cjs/vega-pagination.cjs.entry.js +3 -3
  59. package/dist/cjs/vega-popover_2.cjs.entry.js +11 -11
  60. package/dist/cjs/vega-radio_2.cjs.entry.js +8 -5
  61. package/dist/cjs/vega-rich-text-content.cjs.entry.js +19 -13
  62. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +480 -196
  63. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +6 -6
  64. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +4 -4
  65. package/dist/cjs/vega-sidenav_3.cjs.entry.js +5 -5
  66. package/dist/cjs/vega-signature-capture.cjs.entry.js +6 -6
  67. package/dist/cjs/vega-stepper.cjs.entry.js +6 -6
  68. package/dist/cjs/vega-tab-group_2.cjs.entry.js +55 -19
  69. package/dist/cjs/vega-table_8.cjs.entry.js +5 -5
  70. package/dist/cjs/vega-textarea.cjs.entry.js +3 -3
  71. package/dist/cjs/vega-time-picker_2.cjs.entry.js +8 -8
  72. package/dist/cjs/vega-toggle-switch.cjs.entry.js +10 -4
  73. package/dist/cjs/vega-tooltip_2.cjs.entry.js +11 -11
  74. package/dist/cjs/vega.cjs.js +5 -5
  75. package/dist/collection/collection-manifest.json +1 -1
  76. package/dist/collection/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-actions-renderer.js +4 -1
  77. package/dist/collection/components/vega-image-uploader/vega-image-uploader.js +11 -1
  78. package/dist/collection/components/vega-input/vega-input.js +4 -4
  79. package/dist/collection/components/vega-nav/slimmers/vega-left-nav-group-hierarchy-controller.js +31 -0
  80. package/dist/collection/components/vega-nav/vega-left-nav/test/vega-left-nav-mock-data.js +147 -0
  81. package/dist/collection/components/vega-nav/vega-left-nav/vega-left-nav.js +42 -8
  82. package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-initialize-selected-controller.js +56 -0
  83. package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-link-click-controller.js +70 -0
  84. package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-open-state-controller.js +47 -0
  85. package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-other-groups-click-controller.js +60 -0
  86. package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/renderers/vega-left-nav-group-renderer.js +10 -9
  87. package/dist/collection/components/vega-nav/vega-left-nav-group/vega-left-nav-group.js +21 -6
  88. package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.js +21 -0
  89. package/dist/collection/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.js +13 -1
  90. package/dist/collection/components/vega-nav/vega-left-nav-link/vega-left-nav-link.js +5 -0
  91. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.css +3 -0
  92. package/dist/collection/components/vega-rich-text-editor/dto/annotations/bold-annotation.js +6 -0
  93. package/dist/collection/components/vega-rich-text-editor/dto/annotations/code-annotation.js +6 -0
  94. package/dist/collection/components/vega-rich-text-editor/dto/annotations/horizontal-alignment-annotation.js +6 -0
  95. package/dist/collection/components/vega-rich-text-editor/dto/annotations/image-annotation.js +6 -0
  96. package/dist/collection/components/vega-rich-text-editor/dto/annotations/indent-annotation.js +6 -0
  97. package/dist/collection/components/vega-rich-text-editor/dto/annotations/italic-annotation.js +6 -0
  98. package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-annotation.js +6 -0
  99. package/dist/collection/components/vega-rich-text-editor/dto/annotations/link-group-annotation.js +7 -0
  100. package/dist/collection/components/vega-rich-text-editor/dto/annotations/selection-range-annotation.js +8 -0
  101. package/dist/collection/components/vega-rich-text-editor/dto/annotations/strikethrough-annotation.js +6 -0
  102. package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-color-annotation.js +6 -0
  103. package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-style-annotation.js +15 -0
  104. package/dist/collection/components/vega-rich-text-editor/dto/annotations/underline-annotation.js +6 -0
  105. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +8 -0
  106. package/dist/collection/components/vega-rich-text-editor/dto/blocks/image-block.js +14 -0
  107. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-block.js +14 -0
  108. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +20 -0
  109. package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +25 -1
  110. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +47 -2
  111. package/dist/collection/components/vega-rich-text-editor/dto/editor-state.js +36 -0
  112. package/dist/collection/components/vega-rich-text-editor/dto/nodes/image-node.js +6 -0
  113. package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +8 -0
  114. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +7 -1
  115. package/dist/collection/components/vega-rich-text-editor/dto/range.js +8 -0
  116. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/image-block-renderer.js +1 -1
  117. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-block-renderer.js +1 -1
  118. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/list-item-block-renderer.js +1 -1
  119. package/dist/collection/components/vega-rich-text-editor/dto/renderers/blocks/text-block-renderer.js +7 -1
  120. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/image-node-renderer.js +1 -1
  121. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +2 -2
  122. package/dist/collection/components/vega-rich-text-editor/dto/selection-state.js +17 -0
  123. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract.js +15 -5
  124. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/continue-inline-to-rte-text-block-strategy.js +3 -0
  125. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.js +3 -2
  126. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/inline-block-to-rte-text-block-strategy.js +16 -1
  127. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/vega-image-to-rte-image-block-strategy.js +18 -15
  128. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/history-controller.js +137 -0
  129. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +54 -15
  130. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/value-controller.js +13 -1
  131. package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +116 -0
  132. package/dist/collection/components/vega-rich-text-editor/test/dto/nodes/text-node.test.js +12 -0
  133. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +5 -0
  134. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/slimmers/renderers/vega-rich-text-image-editor-renderer.js +4 -0
  135. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.js +2 -1
  136. package/dist/collection/components/vega-stepper/vega-stepper.js +2 -2
  137. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-pages-controller.js +22 -12
  138. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-renderer.js +6 -2
  139. package/dist/collection/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.js +20 -4
  140. package/dist/collection/components/vega-tab-group/vega-tab-group.css +16 -0
  141. package/dist/collection/components/vega-tab-group/vega-tab-group.js +32 -0
  142. package/dist/collection/components/vega-toggle-switch/vega-toggle-switch.js +8 -2
  143. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +2 -0
  144. package/dist/collection/helpers/keyboard/keyboard-manager.js +25 -5
  145. package/dist/collection/helpers/keyboard/test/keyboard-manager.test.js +204 -105
  146. package/dist/collection/helpers/validator/rules/max-number-rule.js +1 -1
  147. package/dist/collection/helpers/validator/rules/min-number-rule.js +1 -1
  148. package/dist/collection/helpers/validator/test/rules/max-number-rule.test.js +2 -2
  149. package/dist/collection/helpers/validator/test/rules/min-number-rule.test.js +2 -2
  150. package/dist/esm/{app-globals-53b6125a.js → app-globals-b7b43a4e.js} +3 -3
  151. package/dist/esm/{content-state-7437e069.js → content-state-dbc9f635.js} +240 -5
  152. package/dist/esm/{design-token-fb43f78a.js → design-token-e263e6a2.js} +1 -1
  153. package/dist/esm/{element-appender-slimmer-0a0b20e9.js → element-appender-slimmer-55d63b1f.js} +2 -2
  154. package/dist/esm/{form-field-controller-slimmer-2978abd4.js → form-field-controller-slimmer-e7dc3db1.js} +2 -2
  155. package/dist/esm/{image-annotation-action-51248df9.js → image-annotation-action-1aa938ab.js} +1 -1
  156. package/dist/esm/{index-96374234.js → index-4aa167d6.js} +1 -1
  157. package/dist/esm/index.js +6 -6
  158. package/dist/esm/{inject-keyboard-manager-ab0bfb8b.js → inject-keyboard-manager-f513be4a.js} +1 -1
  159. package/dist/esm/{keyboard-manager-8c4ef91b.js → keyboard-manager-262be5ce.js} +25 -5
  160. package/dist/esm/{keyboard-manager-slimmer-6f5cb52a.js → keyboard-manager-slimmer-42bf9773.js} +1 -1
  161. package/dist/esm/loader.js +5 -5
  162. package/dist/esm/{min-number-rule-a6082418.js → min-number-rule-86421853.js} +2 -2
  163. package/dist/esm/{public-rules-cfc196c9.js → public-rules-5cf6aa95.js} +3 -3
  164. package/dist/esm/{responsive-format-facade-ae799f25.js → responsive-format-facade-bc2f8ad3.js} +1 -1
  165. package/dist/esm/{rich-text-editor-required-rule-baf61553.js → rich-text-editor-required-rule-6a7cd3ee.js} +1 -1
  166. package/dist/esm/{string-input-formatter-slimmer-8c7987ac.js → string-input-formatter-slimmer-c61f82d6.js} +2 -2
  167. package/dist/esm/{style-formatter-bf71b8e7.js → style-formatter-0f221459.js} +1 -1
  168. package/dist/esm/{sub-state-notify-slimmer-2216c7dc.js → sub-state-notify-slimmer-4e3cf09d.js} +1 -1
  169. package/dist/esm/{sub-state-observer-slimmer-da938c88.js → sub-state-observer-slimmer-be7a6ce3.js} +1 -1
  170. package/dist/esm/vega-accordion.entry.js +4 -4
  171. package/dist/esm/vega-app-header-button.entry.js +4 -4
  172. package/dist/esm/vega-box.entry.js +5 -5
  173. package/dist/esm/vega-button-circle.entry.js +4 -4
  174. package/dist/esm/vega-button-group_2.entry.js +3 -3
  175. package/dist/esm/vega-button.entry.js +3 -3
  176. package/dist/esm/vega-calendar_3.entry.js +3 -3
  177. package/dist/esm/vega-card.entry.js +4 -4
  178. package/dist/esm/vega-carousel.entry.js +3 -3
  179. package/dist/esm/vega-checkbox_2.entry.js +3 -3
  180. package/dist/esm/vega-chip.entry.js +4 -4
  181. package/dist/esm/vega-color-picker.entry.js +3 -3
  182. package/dist/esm/vega-combo-box.entry.js +5 -5
  183. package/dist/esm/vega-date-picker_2.entry.js +10 -10
  184. package/dist/esm/vega-dialog_2.entry.js +4 -4
  185. package/dist/esm/vega-divider.entry.js +4 -4
  186. package/dist/esm/vega-dropdown_5.entry.js +8 -8
  187. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  188. package/dist/esm/vega-file-uploader.entry.js +3 -3
  189. package/dist/esm/vega-flag-icon.entry.js +4 -4
  190. package/dist/esm/vega-flex.entry.js +5 -5
  191. package/dist/esm/vega-font.entry.js +4 -4
  192. package/dist/esm/vega-form.entry.js +4 -4
  193. package/dist/esm/vega-grid.entry.js +4 -4
  194. package/dist/esm/vega-icon.entry.js +4 -4
  195. package/dist/esm/vega-image-uploader.entry.js +16 -7
  196. package/dist/esm/vega-input-credit-card.entry.js +3 -3
  197. package/dist/esm/vega-input-numeric.entry.js +11 -8
  198. package/dist/esm/vega-input-phone-number.entry.js +3 -3
  199. package/dist/esm/vega-input-range.entry.js +3 -3
  200. package/dist/esm/vega-input-select.entry.js +5 -5
  201. package/dist/esm/vega-input.entry.js +8 -8
  202. package/dist/esm/{vega-internal-event-id-7d1ff289.js → vega-internal-event-id-85ad403f.js} +3 -1
  203. package/dist/esm/vega-left-nav_5.entry.js +447 -194
  204. package/dist/esm/vega-loader-wrapper_2.entry.js +3 -3
  205. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +1 -1
  206. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +1 -1
  207. package/dist/esm/vega-pagination.entry.js +3 -3
  208. package/dist/esm/vega-popover_2.entry.js +11 -11
  209. package/dist/esm/vega-radio_2.entry.js +8 -5
  210. package/dist/esm/vega-rich-text-content.entry.js +19 -13
  211. package/dist/esm/vega-rich-text-editor_4.entry.js +480 -196
  212. package/dist/esm/vega-selection-chip_2.entry.js +6 -6
  213. package/dist/esm/vega-selection-tile_2.entry.js +4 -4
  214. package/dist/esm/vega-sidenav_3.entry.js +5 -5
  215. package/dist/esm/vega-signature-capture.entry.js +6 -6
  216. package/dist/esm/vega-stepper.entry.js +6 -6
  217. package/dist/esm/vega-tab-group_2.entry.js +55 -19
  218. package/dist/esm/vega-table_8.entry.js +5 -5
  219. package/dist/esm/vega-textarea.entry.js +3 -3
  220. package/dist/esm/vega-time-picker_2.entry.js +8 -8
  221. package/dist/esm/vega-toggle-switch.entry.js +10 -4
  222. package/dist/esm/vega-tooltip_2.entry.js +11 -11
  223. package/dist/esm/vega.js +5 -5
  224. package/dist/types/components/vega-image-uploader/slimmers/renderers/vega-image-uploader-actions-renderer.d.ts +1 -0
  225. package/dist/types/components/vega-image-uploader/vega-image-uploader.d.ts +3 -0
  226. package/dist/types/components/vega-input/vega-input.d.ts +2 -2
  227. package/dist/types/components/vega-nav/interface.d.ts +11 -0
  228. package/dist/types/components/vega-nav/slimmers/vega-left-nav-group-hierarchy-controller.d.ts +15 -0
  229. package/dist/types/components/vega-nav/vega-left-nav/test/vega-left-nav-mock-data.d.ts +4 -0
  230. package/dist/types/components/vega-nav/vega-left-nav/vega-left-nav.d.ts +21 -4
  231. package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-initialize-selected-controller.d.ts +20 -0
  232. package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-link-click-controller.d.ts +25 -0
  233. package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-open-state-controller.d.ts +27 -0
  234. package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-other-groups-click-controller.d.ts +17 -0
  235. package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/renderers/vega-left-nav-group-renderer.d.ts +2 -1
  236. package/dist/types/components/vega-nav/vega-left-nav-group/vega-left-nav-group.d.ts +12 -5
  237. package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/controllers/vega-left-nav-link-controller.d.ts +5 -0
  238. package/dist/types/components/vega-nav/vega-left-nav-link/slimmers/renderers/vega-left-nav-link-renderer.d.ts +2 -0
  239. package/dist/types/components/vega-nav/vega-left-nav-link/vega-left-nav-link.d.ts +2 -0
  240. package/dist/types/components/vega-rich-text-editor/dto/annotations/block-annotation.abstract.d.ts +1 -0
  241. package/dist/types/components/vega-rich-text-editor/dto/annotations/bold-annotation.d.ts +4 -0
  242. package/dist/types/components/vega-rich-text-editor/dto/annotations/code-annotation.d.ts +4 -0
  243. package/dist/types/components/vega-rich-text-editor/dto/annotations/horizontal-alignment-annotation.d.ts +4 -0
  244. package/dist/types/components/vega-rich-text-editor/dto/annotations/image-annotation.d.ts +4 -0
  245. package/dist/types/components/vega-rich-text-editor/dto/annotations/indent-annotation.d.ts +4 -0
  246. package/dist/types/components/vega-rich-text-editor/dto/annotations/italic-annotation.d.ts +4 -0
  247. package/dist/types/components/vega-rich-text-editor/dto/annotations/link-annotation.d.ts +4 -0
  248. package/dist/types/components/vega-rich-text-editor/dto/annotations/link-group-annotation.d.ts +1 -0
  249. package/dist/types/components/vega-rich-text-editor/dto/annotations/node-annotation.abstract.d.ts +1 -0
  250. package/dist/types/components/vega-rich-text-editor/dto/annotations/selection-range-annotation.d.ts +6 -0
  251. package/dist/types/components/vega-rich-text-editor/dto/annotations/strikethrough-annotation.d.ts +4 -0
  252. package/dist/types/components/vega-rich-text-editor/dto/annotations/text-color-annotation.d.ts +4 -0
  253. package/dist/types/components/vega-rich-text-editor/dto/annotations/text-style-annotation.d.ts +4 -0
  254. package/dist/types/components/vega-rich-text-editor/dto/annotations/underline-annotation.d.ts +4 -0
  255. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +9 -1
  256. package/dist/types/components/vega-rich-text-editor/dto/blocks/image-block.d.ts +4 -0
  257. package/dist/types/components/vega-rich-text-editor/dto/blocks/list-block.d.ts +4 -0
  258. package/dist/types/components/vega-rich-text-editor/dto/blocks/list-item-block.d.ts +4 -0
  259. package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +4 -0
  260. package/dist/types/components/vega-rich-text-editor/dto/content-state.d.ts +19 -1
  261. package/dist/types/components/vega-rich-text-editor/dto/editor-state.d.ts +20 -0
  262. package/dist/types/components/vega-rich-text-editor/dto/nodes/image-node.d.ts +4 -0
  263. package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +9 -1
  264. package/dist/types/components/vega-rich-text-editor/dto/nodes/text-node.d.ts +4 -0
  265. package/dist/types/components/vega-rich-text-editor/dto/range.d.ts +6 -0
  266. package/dist/types/components/vega-rich-text-editor/dto/selection-state.d.ts +14 -0
  267. package/dist/types/components/vega-rich-text-editor/interface.d.ts +7 -1
  268. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/block-to-rte-block-strategy.abstract.d.ts +1 -0
  269. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.d.ts +2 -2
  270. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/history-controller.d.ts +54 -0
  271. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +14 -1
  272. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/value-controller.d.ts +4 -1
  273. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +2 -0
  274. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/controllers/vega-tab-group-pages-controller.d.ts +1 -0
  275. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-renderer.d.ts +1 -0
  276. package/dist/types/components/vega-tab-group/slimmers/vega-tab-group/renderers/vega-tab-group-tab-list-renderer.d.ts +3 -0
  277. package/dist/types/components/vega-tab-group/types.d.ts +2 -0
  278. package/dist/types/components/vega-tab-group/vega-tab-group.d.ts +7 -1
  279. package/dist/types/components/vega-toggle-switch/vega-toggle-switch.d.ts +1 -0
  280. package/dist/types/components.d.ts +26 -14
  281. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +2 -0
  282. package/dist/types/helpers/keyboard/keyboard-manager.d.ts +11 -1
  283. package/dist/types/types/components.type.d.ts +2 -1
  284. package/dist/types/types/ui.type.d.ts +1 -1
  285. package/dist/vega/index.esm.js +1 -1
  286. package/dist/vega/{p-df44a712.entry.js → p-01fd343e.entry.js} +1 -1
  287. package/dist/vega/{p-50a076d0.entry.js → p-0a18f5f6.entry.js} +1 -1
  288. package/dist/vega/{p-7bc3a42b.js → p-1abe125f.js} +1 -1
  289. package/dist/vega/{p-4b541ce8.entry.js → p-2198de3e.entry.js} +1 -1
  290. package/dist/vega/{p-0073c3de.entry.js → p-24e0cdcc.entry.js} +1 -1
  291. package/dist/vega/{p-4f7f93ef.entry.js → p-2565cb0c.entry.js} +1 -1
  292. package/dist/vega/p-26e4221c.entry.js +1 -0
  293. package/dist/vega/{p-1c08e94a.entry.js → p-27e3825f.entry.js} +1 -1
  294. package/dist/vega/{p-aa109e80.entry.js → p-2bd64faf.entry.js} +1 -1
  295. package/dist/vega/{p-ab26cad6.js → p-2da83c2a.js} +1 -1
  296. package/dist/vega/{p-410755ca.entry.js → p-2fadef27.entry.js} +1 -1
  297. package/dist/vega/{p-01b4d6ba.entry.js → p-33ffaa71.entry.js} +1 -1
  298. package/dist/vega/{p-343b4522.entry.js → p-34a70d18.entry.js} +1 -1
  299. package/dist/vega/{p-f9b07b5e.entry.js → p-353d32c0.entry.js} +1 -1
  300. package/dist/vega/{p-d6d9c300.entry.js → p-3aa244d4.entry.js} +1 -1
  301. package/dist/vega/p-429616af.entry.js +1 -0
  302. package/dist/vega/p-44b0a005.js +1 -0
  303. package/dist/vega/{p-e1a06741.entry.js → p-472727a4.entry.js} +1 -1
  304. package/dist/vega/p-4e167a8c.js +1 -0
  305. package/dist/vega/p-4e68dfd9.js +1 -0
  306. package/dist/vega/p-4e76904e.entry.js +1 -0
  307. package/dist/vega/{p-8c32ff75.entry.js → p-4fa94b35.entry.js} +1 -1
  308. package/dist/vega/{p-b64d5c3a.entry.js → p-52e17867.entry.js} +1 -1
  309. package/dist/vega/p-56a0b13d.js +1 -0
  310. package/dist/vega/{p-1b731247.entry.js → p-57cdacb1.entry.js} +1 -1
  311. package/dist/vega/{p-bcb43c54.entry.js → p-57e813f2.entry.js} +1 -1
  312. package/dist/vega/{p-b06e5916.entry.js → p-58b8c06b.entry.js} +1 -1
  313. package/dist/vega/{p-bd5ca7cc.entry.js → p-59ccf915.entry.js} +1 -1
  314. package/dist/vega/{p-324dd09a.entry.js → p-5a8f129f.entry.js} +1 -1
  315. package/dist/vega/p-5cbadf95.entry.js +1 -0
  316. package/dist/vega/{p-b2643e88.js → p-5e3a15a1.js} +1 -1
  317. package/dist/vega/p-5f377954.js +1 -1
  318. package/dist/vega/{p-4b1a7d31.entry.js → p-63414091.entry.js} +1 -1
  319. package/dist/vega/{p-0b56725e.entry.js → p-6aa569e5.entry.js} +1 -1
  320. package/dist/vega/{p-b9f48611.js → p-6b75fe39.js} +1 -1
  321. package/dist/vega/{p-69cc3fa2.js → p-6cabdb36.js} +1 -1
  322. package/dist/vega/{p-bab6ca81.js → p-6d7d923b.js} +1 -1
  323. package/dist/vega/{p-b6caa1e2.entry.js → p-6ec8a9d8.entry.js} +1 -1
  324. package/dist/vega/{p-d7642125.js → p-72ecfd40.js} +1 -1
  325. package/dist/vega/p-7db32dc0.entry.js +1 -0
  326. package/dist/vega/{p-f0bc8f6d.js → p-7f6702f7.js} +1 -1
  327. package/dist/vega/{p-c706de06.entry.js → p-84aac4b1.entry.js} +1 -1
  328. package/dist/vega/{p-213752bd.js → p-88c9efbb.js} +1 -1
  329. package/dist/vega/{p-b65de502.entry.js → p-8aec8dac.entry.js} +1 -1
  330. package/dist/vega/{p-1e2886b5.js → p-8afa2115.js} +1 -1
  331. package/dist/vega/p-8bc4c015.entry.js +1 -0
  332. package/dist/vega/p-96b4c0cc.entry.js +1 -0
  333. package/dist/vega/p-a8b681ed.entry.js +1 -0
  334. package/dist/vega/{p-b4dfa967.entry.js → p-ac82ca73.entry.js} +1 -1
  335. package/dist/vega/{p-c86a4896.entry.js → p-ba6c7f00.entry.js} +1 -1
  336. package/dist/vega/{p-2c1c88c0.entry.js → p-be40684b.entry.js} +1 -1
  337. package/dist/vega/p-bf1894ec.js +1 -0
  338. package/dist/vega/{p-79cc1f41.entry.js → p-c1e1adf9.entry.js} +1 -1
  339. package/dist/vega/p-c5f8b3a3.entry.js +1 -0
  340. package/dist/vega/p-c754b32c.js +1 -0
  341. package/dist/vega/{p-d4a61b1d.entry.js → p-c96effa5.entry.js} +1 -1
  342. package/dist/vega/{p-d6c37085.entry.js → p-ca34443a.entry.js} +1 -1
  343. package/dist/vega/{p-96410d71.entry.js → p-cb637815.entry.js} +1 -1
  344. package/dist/vega/{p-0523efe8.entry.js → p-ccdd49be.entry.js} +1 -1
  345. package/dist/vega/p-cd205d96.js +1 -0
  346. package/dist/vega/{p-a1bdf9a0.entry.js → p-ce70a54a.entry.js} +1 -1
  347. package/dist/vega/{p-e5695801.entry.js → p-d6591d70.entry.js} +1 -1
  348. package/dist/vega/{p-80c86d79.js → p-d7937711.js} +1 -1
  349. package/dist/vega/{p-59e9f57a.js → p-dbc82247.js} +1 -1
  350. package/dist/vega/{p-d6620b42.entry.js → p-e29da13d.entry.js} +1 -1
  351. package/dist/vega/p-e719b1a9.entry.js +1 -0
  352. package/dist/vega/{p-4f54ba1f.entry.js → p-f7423232.entry.js} +1 -1
  353. package/dist/vega/{p-611282a7.entry.js → p-fb853d5f.entry.js} +1 -1
  354. package/dist/vega/{p-8f80b321.entry.js → p-fd018044.entry.js} +1 -1
  355. package/dist/vega/p-fda0c179.entry.js +1 -0
  356. package/dist/vega/p-ff41dc6a.entry.js +1 -0
  357. package/dist/vega/vega.esm.js +1 -1
  358. package/package.json +1 -1
  359. package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-controller.js +0 -30
  360. package/dist/collection/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-sibling-observer-controller.js +0 -48
  361. package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-controller.d.ts +0 -11
  362. package/dist/types/components/vega-nav/vega-left-nav-group/slimmers/controllers/vega-left-nav-group-sibling-observer-controller.d.ts +0 -18
  363. package/dist/vega/p-08679cd9.entry.js +0 -1
  364. package/dist/vega/p-12d60f5f.js +0 -1
  365. package/dist/vega/p-214aa52e.js +0 -1
  366. package/dist/vega/p-2863aa51.entry.js +0 -1
  367. package/dist/vega/p-2e65e175.js +0 -1
  368. package/dist/vega/p-31de5cb4.entry.js +0 -1
  369. package/dist/vega/p-3d3cd394.js +0 -1
  370. package/dist/vega/p-3e285c35.js +0 -1
  371. package/dist/vega/p-7594875a.entry.js +0 -1
  372. package/dist/vega/p-8af3fc79.entry.js +0 -1
  373. package/dist/vega/p-8ee31f00.entry.js +0 -1
  374. package/dist/vega/p-952913fc.entry.js +0 -1
  375. package/dist/vega/p-b07add9c.entry.js +0 -1
  376. package/dist/vega/p-b9051ad2.js +0 -1
  377. package/dist/vega/p-c2321aa8.entry.js +0 -1
  378. package/dist/vega/p-ceb9f5aa.entry.js +0 -1
  379. package/dist/vega/p-db7a6878.entry.js +0 -1
  380. package/dist/vega/p-e59ff7d1.entry.js +0 -1
  381. package/dist/vega/p-f2373487.js +0 -1
@@ -5,53 +5,55 @@ import { g as getActiveElement, s as sanitizeVegaComponent } from './component-c
5
5
  import { c as createEnterKeyHandlerToTriggerClick } from './accessibility-e5fd0fab.js';
6
6
  import { C as ChangeManager } from './change-manager-6a7eb88c.js';
7
7
  import { d as domNodeSubjectFactory, b as VegaDropdownClick, f as VegaChange, P as VegaImageInserted, a as VegaClick, M as VegaPopoverShow, N as VegaPopoverHide } from './dom-node-subject-factory-f77cf9cc.js';
8
- import { V as VegaInternalComponentDidRender, b as VegaInternalRichTextEditorSelectionRangeChange, a as VegaInternalRichTextEditorFlushChanges, u as VegaInternalRichTextEditDeleteSelectedNodes, v as VegaInternalRichTextImageClick, w as VegaInternalRichTextImageDeleteButtonClicked, q as VegaInternalPopoverUpdateTarget } from './vega-internal-event-id-7d1ff289.js';
9
- import { b as ToolbarButtonSlimmer, I as ImageAnnotationAction, T as TextNodeRenderingRegistry, a as TextColorToolbarButtonSlimmer } from './image-annotation-action-51248df9.js';
8
+ import { V as VegaInternalComponentDidRender, b as VegaInternalRichTextEditorSelectionRangeChange, a as VegaInternalRichTextEditorFlushChanges, u as VegaInternalRichTextEditDeleteSelectedNodes, v as VegaInternalRichTextImageClick, w as VegaInternalRichTextImageDeleteButtonClicked, q as VegaInternalPopoverUpdateTarget } from './vega-internal-event-id-85ad403f.js';
9
+ import { b as ToolbarButtonSlimmer, I as ImageAnnotationAction, T as TextNodeRenderingRegistry, a as TextColorToolbarButtonSlimmer } from './image-annotation-action-1aa938ab.js';
10
10
  import { V as VegaInternalIconManager } from './internal-icon-manager-58cf8aa6.js';
11
- import { f as RTETextNode, l as BoldAnnotationAction, h as NodeAnnotationTypeEnum, T as TextSplittableAction, m as ItalicAnnotation, U as UnderlineAnnotation, R as RTETextBlock, n as TextStyleAnnotationAction, o as TextStyleAnnotation, p as BoldAnnotation, q as BlockAnnotationTypeEnum, C as ClearFormattingAnnotationAction, r as CodeAnnotationAction, S as StrikethroughAnnotation, A as AnnotationAction, t as SelectionRangeAnnotation, L as LinkAnnotationAction, u as IndentAnnotation, e as RTEImageNode, M as ModifyContentAction, v as ModifyContentActionType, b as RTEListItemBlock, H as HorizontalAlignmentAnnotation, g as RTENode, s as stateEntityRenderingRegistry, Z as ZERO_WIDTH_SPACE, I as InternalAnnotationTypeEnum, V as VegaRTEContent, w as AppendChildNodesAction, x as UpdateTextAction, y as MergeTwoBlocksNodesAction, z as SplitBlockWithNodeAction, D as BreakSingleBlockAction, E as RemoveChildAction, F as ReplaceChildNodesAction, G as InsertBlocksBeforeAction, k as RTE_TEXT_COLORS, c as RTEListBlock, a as RTEImageBlock, J as InsertBlocksAfterAction } from './content-state-7437e069.js';
11
+ import { f as RTETextNode, l as BoldAnnotationAction, h as NodeAnnotationTypeEnum, T as TextSplittableAction, m as ItalicAnnotation, U as UnderlineAnnotation, R as RTETextBlock, n as TextStyleAnnotationAction, o as TextStyleAnnotation, p as BoldAnnotation, q as BlockAnnotationTypeEnum, C as ClearFormattingAnnotationAction, r as CodeAnnotationAction, S as StrikethroughAnnotation, A as AnnotationAction, t as SelectionRangeAnnotation, L as LinkAnnotationAction, u as IndentAnnotation, e as RTEImageNode, M as ModifyContentAction, v as ModifyContentActionType, b as RTEListItemBlock, H as HorizontalAlignmentAnnotation, g as RTENode, s as stateEntityRenderingRegistry, Z as ZERO_WIDTH_SPACE, I as InternalAnnotationTypeEnum, V as VegaRTEContent, w as AppendChildNodesAction, x as UpdateTextAction, y as MergeTwoBlocksNodesAction, z as SplitBlockWithNodeAction, D as BreakSingleBlockAction, E as RemoveChildAction, F as ReplaceChildNodesAction, G as InsertBlocksBeforeAction, k as RTE_TEXT_COLORS, c as RTEListBlock, a as RTEImageBlock, J as InsertBlocksAfterAction } from './content-state-dbc9f635.js';
12
12
  import { D as DomNodeSubjectObserverFactory } from './dom-node-subject-observer-factory-715dccf9.js';
13
13
  import { g as generateUUID } from './create-public-api-runtime-metrics-slimmer-8ada793f.js';
14
- import { a as waitForComponentDidRender } from './index-96374234.js';
15
- import { F as FormFieldControllerSlimmer } from './form-field-controller-slimmer-2978abd4.js';
14
+ import { a as waitForComponentDidRender } from './index-4aa167d6.js';
15
+ import { F as FormFieldControllerSlimmer } from './form-field-controller-slimmer-e7dc3db1.js';
16
16
  import { c as createEventEmitSlimmer } from './event-emit-slimmer-b7d511f6.js';
17
- import { c as createSubStateNotifySlimmer } from './sub-state-notify-slimmer-2216c7dc.js';
17
+ import { c as createSubStateNotifySlimmer } from './sub-state-notify-slimmer-4e3cf09d.js';
18
18
  import { d as debounce } from './timer-9321173b.js';
19
19
  import { S as SynchronizeTaskQueue } from './synchronize-task-queue-ac8acc3b.js';
20
20
  import { O as Observer } from './observer-3959f9dd.js';
21
21
  import { f as findParent, r as rgbToHex } from './ui-ed1283bb.js';
22
22
  import { b as FORM_ELEMENT_VALUE_CHANGE, D as DARK_MODE_CHANGE } from './static-subject-title-ca83d6b6.js';
23
23
  import { D as DarkModeStateControllerSlimmer } from './dark-mode-state-controller-slimmer-f1c2c299.js';
24
- import { R as RichTextEditorRequiredRule } from './rich-text-editor-required-rule-baf61553.js';
24
+ import { i as isNonNullable } from './type-guard-158f6d7a.js';
25
+ import { R as RichTextEditorRequiredRule } from './rich-text-editor-required-rule-6a7cd3ee.js';
25
26
  import { C as ChildNodesEventPreventSlimmer } from './child-nodes-event-prevent-slimmer-d3a94ef2.js';
26
27
  import { T as TranslationSlimmer } from './translation-slimmer-88966d5c.js';
27
28
  import { V as VegaInternalThemeManager } from './dark-mode-style-controller-2ada8e22.js';
29
+ import { K as KeyboardManagerSlimmer } from './keyboard-manager-slimmer-42bf9773.js';
28
30
  import { c as chevronDown } from './chevron-down-4a75d28e.js';
29
31
  import { t as trashCan } from './trash-can-8819a939.js';
30
32
  import { r as remoteInvocationRegistry } from './remote-invocation-registry-d69245c2.js';
31
33
  import './icon-manager-638dd4d4.js';
32
- import './type-guard-158f6d7a.js';
33
- import './breakpoints-d9faf11c.js';
34
- import './ui-8424715a.js';
35
- import './regex-dfe11abf.js';
36
- import './typography-396de03f.js';
37
34
  import './dynamic-slimmer-90b8af32.js';
38
35
  import './wait-for-vega-handler-b18eb955.js';
39
36
  import './string-be824360.js';
40
37
  import './translation-cf7f020a.js';
41
38
  import './page-resize-observer-slimmer-15a84d26.js';
39
+ import './ui-8424715a.js';
40
+ import './breakpoints-d9faf11c.js';
42
41
  import './internal-form-field-validation-rule.abstract-f5b6bdbf.js';
43
42
  import './mutation-observer-slimmer-6cef9549.js';
44
43
  import './mutation-observer-filters-7ee2b410.js';
45
44
  import './array-3113609f.js';
46
45
  import './number-4398f2e1.js';
47
- import './sub-state-observer-slimmer-da938c88.js';
46
+ import './sub-state-observer-slimmer-be7a6ce3.js';
48
47
  import './internal-vega-event-manager-87dc436c.js';
48
+ import './regex-dfe11abf.js';
49
+ import './typography-396de03f.js';
49
50
  import './vega-env-manager-8f8dc473.js';
50
51
  import './feature-flag-controller-690eac1d.js';
51
52
  import './index-44c794b4.js';
52
53
  import './_commonjsHelpers-9943807e.js';
54
+ import './keyboard-manager-262be5ce.js';
53
55
 
54
- var __decorate$z = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
56
+ var __decorate$A = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
55
57
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
56
58
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
57
59
  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;
@@ -141,38 +143,38 @@ class VegaRichTextEditorRenderer extends VegaSlimmer {
141
143
  return (this.label && (h("vega-field-label", { onClick: this.richTextContentFocus, isFieldRequired: this.required, disabled: this.disabled, label: this.label })));
142
144
  }
143
145
  }
144
- __decorate$z([
146
+ __decorate$A([
145
147
  MapToComponentField()
146
148
  ], VegaRichTextEditorRenderer.prototype, "host", void 0);
147
- __decorate$z([
149
+ __decorate$A([
148
150
  MapToComponentField()
149
151
  ], VegaRichTextEditorRenderer.prototype, "toolbarRenderer", void 0);
150
- __decorate$z([
152
+ __decorate$A([
151
153
  MapToComponentField()
152
154
  ], VegaRichTextEditorRenderer.prototype, "label", void 0);
153
- __decorate$z([
155
+ __decorate$A([
154
156
  MapToComponentField()
155
157
  ], VegaRichTextEditorRenderer.prototype, "required", void 0);
156
- __decorate$z([
158
+ __decorate$A([
157
159
  MapToComponentField()
158
160
  ], VegaRichTextEditorRenderer.prototype, "hint", void 0);
159
- __decorate$z([
161
+ __decorate$A([
160
162
  MapToComponentField()
161
163
  ], VegaRichTextEditorRenderer.prototype, "disabled", void 0);
162
- __decorate$z([
164
+ __decorate$A([
163
165
  MapToComponentField()
164
166
  ], VegaRichTextEditorRenderer.prototype, "rows", void 0);
165
- __decorate$z([
167
+ __decorate$A([
166
168
  MapToComponentField()
167
169
  ], VegaRichTextEditorRenderer.prototype, "placeholder", void 0);
168
- __decorate$z([
170
+ __decorate$A([
169
171
  MapToComponentField()
170
172
  ], VegaRichTextEditorRenderer.prototype, "value", void 0);
171
- __decorate$z([
173
+ __decorate$A([
172
174
  MapToComponentMethod('componentDidRender')
173
175
  ], VegaRichTextEditorRenderer.prototype, "componentDidRender", null);
174
176
 
175
- var __decorate$y = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
177
+ var __decorate$z = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
176
178
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
177
179
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
178
180
  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;
@@ -222,49 +224,49 @@ class ToolbarRenderer extends VegaSlimmer {
222
224
  })));
223
225
  }
224
226
  }
225
- __decorate$y([
227
+ __decorate$z([
226
228
  MapToComponentField()
227
229
  ], ToolbarRenderer.prototype, "toolbarItems", void 0);
228
- __decorate$y([
230
+ __decorate$z([
229
231
  MapToComponentField()
230
232
  ], ToolbarRenderer.prototype, "clearStyleToolbarButtonSlimmer", void 0);
231
- __decorate$y([
233
+ __decorate$z([
232
234
  MapToComponentField()
233
235
  ], ToolbarRenderer.prototype, "boldToolbarButtonSlimmer", void 0);
234
- __decorate$y([
236
+ __decorate$z([
235
237
  MapToComponentField()
236
238
  ], ToolbarRenderer.prototype, "textStylesToolbarButtonSlimmer", void 0);
237
- __decorate$y([
239
+ __decorate$z([
238
240
  MapToComponentField()
239
241
  ], ToolbarRenderer.prototype, "italicToolbarButtonSlimmer", void 0);
240
- __decorate$y([
242
+ __decorate$z([
241
243
  MapToComponentField()
242
244
  ], ToolbarRenderer.prototype, "underlineToolbarButtonSlimmer", void 0);
243
- __decorate$y([
245
+ __decorate$z([
244
246
  MapToComponentField()
245
247
  ], ToolbarRenderer.prototype, "textColorToolbarButtonSlimmer", void 0);
246
- __decorate$y([
248
+ __decorate$z([
247
249
  MapToComponentField()
248
250
  ], ToolbarRenderer.prototype, "bulletsNumbersToolbarButtonSlimmer", void 0);
249
- __decorate$y([
251
+ __decorate$z([
250
252
  MapToComponentField()
251
253
  ], ToolbarRenderer.prototype, "horizontalAlignmentToolbarButtonSlimmer", void 0);
252
- __decorate$y([
254
+ __decorate$z([
253
255
  MapToComponentField()
254
256
  ], ToolbarRenderer.prototype, "strikethroughToolbarButtonSlimmer", void 0);
255
- __decorate$y([
257
+ __decorate$z([
256
258
  MapToComponentField()
257
259
  ], ToolbarRenderer.prototype, "imageToolbarButtonSlimmer", void 0);
258
- __decorate$y([
260
+ __decorate$z([
259
261
  MapToComponentField()
260
262
  ], ToolbarRenderer.prototype, "moreIndentToolbarButtonSlimmer", void 0);
261
- __decorate$y([
263
+ __decorate$z([
262
264
  MapToComponentField()
263
265
  ], ToolbarRenderer.prototype, "lessIndentToolbarButtonSlimmer", void 0);
264
- __decorate$y([
266
+ __decorate$z([
265
267
  MapToComponentField()
266
268
  ], ToolbarRenderer.prototype, "codeToolbarButtonSlimmer", void 0);
267
- __decorate$y([
269
+ __decorate$z([
268
270
  MapToComponentField()
269
271
  ], ToolbarRenderer.prototype, "linkToolbarButtonSlimmer", void 0);
270
272
 
@@ -272,7 +274,7 @@ const bold = {
272
274
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 384 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M0 64C0 46.3 14.3 32 32 32H80 96 224c70.7 0 128 57.3 128 128c0 31.3-11.3 60.1-30 82.3c37.1 22.4 62 63.1 62 109.7c0 70.7-57.3 128-128 128H96 80 32c-17.7 0-32-14.3-32-32s14.3-32 32-32H48V256 96H32C14.3 96 0 81.7 0 64zM224 224c35.3 0 64-28.7 64-64s-28.7-64-64-64H112V224H224zM112 288V416H256c35.3 0 64-28.7 64-64s-28.7-64-64-64H224 112z"/></svg>`,
273
275
  };
274
276
 
275
- var __decorate$x = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
277
+ var __decorate$y = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
276
278
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
277
279
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
278
280
  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;
@@ -314,7 +316,7 @@ class BoldToolbarButtonSlimmer extends ToolbarButtonSlimmer {
314
316
  (() => {
315
317
  VegaInternalIconManager.register({ bold });
316
318
  })();
317
- __decorate$x([
319
+ __decorate$y([
318
320
  MapToComponentField()
319
321
  ], BoldToolbarButtonSlimmer.prototype, "selectionController", void 0);
320
322
 
@@ -341,7 +343,7 @@ class ItalicAnnotationAction extends TextSplittableAction {
341
343
  }
342
344
  }
343
345
 
344
- var __decorate$w = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
346
+ var __decorate$x = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
345
347
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
346
348
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
347
349
  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;
@@ -381,7 +383,7 @@ class ItalicToolbarButtonSlimmer extends ToolbarButtonSlimmer {
381
383
  (() => {
382
384
  VegaInternalIconManager.register({ italic });
383
385
  })();
384
- __decorate$w([
386
+ __decorate$x([
385
387
  MapToComponentField()
386
388
  ], ItalicToolbarButtonSlimmer.prototype, "selectionController", void 0);
387
389
 
@@ -408,7 +410,7 @@ class UnderlineAnnotationAction extends TextSplittableAction {
408
410
  }
409
411
  }
410
412
 
411
- var __decorate$v = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
413
+ var __decorate$w = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
412
414
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
413
415
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
414
416
  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;
@@ -451,7 +453,7 @@ class UnderlineToolbarButtonSlimmer extends ToolbarButtonSlimmer {
451
453
  (() => {
452
454
  VegaInternalIconManager.register({ underline });
453
455
  })();
454
- __decorate$v([
456
+ __decorate$w([
455
457
  MapToComponentField()
456
458
  ], UnderlineToolbarButtonSlimmer.prototype, "selectionController", void 0);
457
459
 
@@ -459,7 +461,7 @@ const textSize = {
459
461
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M64 128V96h96l0 320H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H256c17.7 0 32-14.3 32-32s-14.3-32-32-32H224l0-320h96v32c0 17.7 14.3 32 32 32s32-14.3 32-32V80c0-26.5-21.5-48-48-48H192 48C21.5 32 0 53.5 0 80v48c0 17.7 14.3 32 32 32s32-14.3 32-32zM384 304V288h64l0 128H432c-17.7 0-32 14.3-32 32s14.3 32 32 32h96c17.7 0 32-14.3 32-32s-14.3-32-32-32H512l0-128h64v16c0 17.7 14.3 32 32 32s32-14.3 32-32V272c0-26.5-21.5-48-48-48H368c-26.5 0-48 21.5-48 48v32c0 17.7 14.3 32 32 32s32-14.3 32-32z"/></svg>`,
460
462
  };
461
463
 
462
- var __decorate$u = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
464
+ var __decorate$v = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
463
465
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
464
466
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
465
467
  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;
@@ -569,10 +571,10 @@ TextStylesToolbarButtonSlimmer.items = [
569
571
  label: 'Paragraph',
570
572
  },
571
573
  ];
572
- __decorate$u([
574
+ __decorate$v([
573
575
  MapToComponentField()
574
576
  ], TextStylesToolbarButtonSlimmer.prototype, "selectionController", void 0);
575
- __decorate$u([
577
+ __decorate$v([
576
578
  MapToComponentField()
577
579
  ], TextStylesToolbarButtonSlimmer.prototype, "focusController", void 0);
578
580
 
@@ -580,7 +582,7 @@ const TextSlash = {
580
582
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 640 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M38.8 5.1C28.4-3.1 13.3-1.2 5.1 9.2S-1.2 34.7 9.2 42.9l592 464c10.4 8.2 25.5 6.3 33.7-4.1s6.3-25.5-4.1-33.7L355.7 253.5 400.2 96H503L497 120.2c-4.3 17.1 6.1 34.5 23.3 38.8s34.5-6.1 38.8-23.3l11-44.1C577.6 61.3 554.7 32 523.5 32H376.1h-.3H204.5c-22 0-41.2 15-46.6 36.4l-6.3 25.2L38.8 5.1zm168 131.7c.1-.3 .2-.7 .3-1L217 96H333.7L301.3 210.8l-94.5-74.1zM243.3 416H192c-17.7 0-32 14.3-32 32s14.3 32 32 32H352c17.7 0 32-14.3 32-32s-14.3-32-32-32H309.8l17.6-62.1L272.9 311 243.3 416z"/></svg>`,
581
583
  };
582
584
 
583
- var __decorate$t = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
585
+ var __decorate$u = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
584
586
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
585
587
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
586
588
  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;
@@ -617,7 +619,7 @@ class ClearStyleToolbarButtonSlimmer extends ToolbarButtonSlimmer {
617
619
  'text-slash': TextSlash,
618
620
  });
619
621
  })();
620
- __decorate$t([
622
+ __decorate$u([
621
623
  MapToComponentField()
622
624
  ], ClearStyleToolbarButtonSlimmer.prototype, "selectionController", void 0);
623
625
 
@@ -625,7 +627,7 @@ const codeSimple = {
625
627
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M214.6 118.6c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0l-160 160c-12.5 12.5-12.5 32.8 0 45.3l160 160c12.5 12.5 32.8 12.5 45.3 0s12.5-32.8 0-45.3L77.3 256 214.6 118.6zm146.7 0L498.7 256 361.4 393.4c-12.5 12.5-12.5 32.8 0 45.3s32.8 12.5 45.3 0l160-160c12.5-12.5 12.5-32.8 0-45.3l-160-160c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3z"/></svg>`,
626
628
  };
627
629
 
628
- var __decorate$s = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
630
+ var __decorate$t = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
629
631
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
630
632
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
631
633
  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;
@@ -663,7 +665,7 @@ class CodeToolbarButtonSlimmer extends ToolbarButtonSlimmer {
663
665
  (() => {
664
666
  VegaInternalIconManager.register({ 'code-simple': codeSimple });
665
667
  })();
666
- __decorate$s([
668
+ __decorate$t([
667
669
  MapToComponentField()
668
670
  ], CodeToolbarButtonSlimmer.prototype, "selectionController", void 0);
669
671
 
@@ -690,7 +692,7 @@ class StrikethroughAnnotationAction extends TextSplittableAction {
690
692
  }
691
693
  }
692
694
 
693
- var __decorate$r = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
695
+ var __decorate$s = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
694
696
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
695
697
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
696
698
  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;
@@ -733,7 +735,7 @@ class StrikethroughToolbarButtonSlimmer extends ToolbarButtonSlimmer {
733
735
  (() => {
734
736
  VegaInternalIconManager.register({ strikethrough });
735
737
  })();
736
- __decorate$r([
738
+ __decorate$s([
737
739
  MapToComponentField()
738
740
  ], StrikethroughToolbarButtonSlimmer.prototype, "selectionController", void 0);
739
741
 
@@ -760,7 +762,7 @@ class SelectionChangeAction extends AnnotationAction {
760
762
  }
761
763
  }
762
764
 
763
- var __decorate$q = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
765
+ var __decorate$r = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
764
766
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
765
767
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
766
768
  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;
@@ -842,7 +844,7 @@ class LinkToolbarButtonSlimmer extends ToolbarButtonSlimmer {
842
844
  (() => {
843
845
  VegaInternalIconManager.register({ link: link });
844
846
  })();
845
- __decorate$q([
847
+ __decorate$r([
846
848
  MapToComponentField()
847
849
  ], LinkToolbarButtonSlimmer.prototype, "selectionController", void 0);
848
850
 
@@ -869,7 +871,7 @@ class IndentAnnotationAction extends AnnotationAction {
869
871
  }
870
872
  }
871
873
 
872
- var __decorate$p = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
874
+ var __decorate$q = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
873
875
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
874
876
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
875
877
  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;
@@ -905,7 +907,7 @@ class MoreIndentToolbarButtonSlimmer extends ToolbarButtonSlimmer {
905
907
  (() => {
906
908
  VegaInternalIconManager.register({ indent: indent });
907
909
  })();
908
- __decorate$p([
910
+ __decorate$q([
909
911
  MapToComponentField()
910
912
  ], MoreIndentToolbarButtonSlimmer.prototype, "selectionController", void 0);
911
913
 
@@ -913,7 +915,7 @@ const outdent = {
913
915
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M6 64C6 46.3 20.3 32 38 32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H38C20.3 96 6 81.7 6 64zM198 192c0-17.7 14.3-32 32-32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H230c-17.7 0-32-14.3-32-32zm32 96H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H230c-17.7 0-32-14.3-32-32s14.3-32 32-32zM6 448c0-17.7 14.3-32 32-32H422c17.7 0 32 14.3 32 32s-14.3 32-32 32H38c-17.7 0-32-14.3-32-32zm.2-179.4c-8.2-6.4-8.2-18.9 0-25.3l101.9-79.3c10.5-8.2 25.8-.7 25.8 12.6V335.3c0 13.3-15.3 20.8-25.8 12.6L6.2 268.6z"/></svg>`,
914
916
  };
915
917
 
916
- var __decorate$o = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
918
+ var __decorate$p = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
917
919
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
918
920
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
919
921
  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;
@@ -950,7 +952,7 @@ class LessIndentToolbarButtonSlimmer extends ToolbarButtonSlimmer {
950
952
  (() => {
951
953
  VegaInternalIconManager.register({ outdent: outdent });
952
954
  })();
953
- __decorate$o([
955
+ __decorate$p([
954
956
  MapToComponentField()
955
957
  ], LessIndentToolbarButtonSlimmer.prototype, "selectionController", void 0);
956
958
 
@@ -971,7 +973,7 @@ class ImageUpdateUrlAction extends ModifyContentAction {
971
973
  }
972
974
  }
973
975
 
974
- var __decorate$n = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
976
+ var __decorate$o = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
975
977
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
976
978
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
977
979
  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;
@@ -1029,13 +1031,13 @@ class ImageToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1029
1031
  (() => {
1030
1032
  VegaInternalIconManager.register({ image: image });
1031
1033
  })();
1032
- __decorate$n([
1034
+ __decorate$o([
1033
1035
  MapToComponentField()
1034
1036
  ], ImageToolbarButtonSlimmer.prototype, "insertImageController", void 0);
1035
- __decorate$n([
1037
+ __decorate$o([
1036
1038
  MapToComponentField()
1037
1039
  ], ImageToolbarButtonSlimmer.prototype, "imageInsertedEventEmitter", void 0);
1038
- __decorate$n([
1040
+ __decorate$o([
1039
1041
  MapToComponentField()
1040
1042
  ], ImageToolbarButtonSlimmer.prototype, "selectionController", void 0);
1041
1043
 
@@ -1072,7 +1074,7 @@ class TransformParagraphAction extends ModifyContentAction {
1072
1074
  }
1073
1075
  }
1074
1076
 
1075
- var __decorate$m = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1077
+ var __decorate$n = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1076
1078
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1077
1079
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1078
1080
  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;
@@ -1130,14 +1132,14 @@ class BulletsToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1130
1132
  }
1131
1133
  }
1132
1134
  }
1133
- __decorate$m([
1135
+ __decorate$n([
1134
1136
  MapToComponentField()
1135
1137
  ], BulletsToolbarButtonSlimmer.prototype, "selectionController", void 0);
1136
- __decorate$m([
1138
+ __decorate$n([
1137
1139
  MapToComponentField()
1138
1140
  ], BulletsToolbarButtonSlimmer.prototype, "popoverRef", void 0);
1139
1141
 
1140
- var __decorate$l = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1142
+ var __decorate$m = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1141
1143
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1142
1144
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1143
1145
  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;
@@ -1193,14 +1195,14 @@ class NumbersToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1193
1195
  }
1194
1196
  }
1195
1197
  }
1196
- __decorate$l([
1198
+ __decorate$m([
1197
1199
  MapToComponentField()
1198
1200
  ], NumbersToolbarButtonSlimmer.prototype, "selectionController", void 0);
1199
- __decorate$l([
1201
+ __decorate$m([
1200
1202
  MapToComponentField()
1201
1203
  ], NumbersToolbarButtonSlimmer.prototype, "popoverRef", void 0);
1202
1204
 
1203
- var __decorate$k = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1205
+ var __decorate$l = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1204
1206
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1205
1207
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1206
1208
  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;
@@ -1249,16 +1251,16 @@ class BulletsNumbersToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1249
1251
  'list-ol': ListOL,
1250
1252
  });
1251
1253
  })();
1252
- __decorate$k([
1254
+ __decorate$l([
1253
1255
  MapToComponentField()
1254
1256
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "selectionController", void 0);
1255
- __decorate$k([
1257
+ __decorate$l([
1256
1258
  InjectVegaSlimmer()
1257
1259
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "bulletsToolbarButtonSlimmer", void 0);
1258
- __decorate$k([
1260
+ __decorate$l([
1259
1261
  InjectVegaSlimmer()
1260
1262
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "numbersToolbarButtonSlimmer", void 0);
1261
- __decorate$k([
1263
+ __decorate$l([
1262
1264
  MapToComponentMethod('componentWillRender')
1263
1265
  ], BulletsNumbersToolbarButtonSlimmer.prototype, "componentWillRender", null);
1264
1266
 
@@ -1285,7 +1287,7 @@ const AlignLeft = {
1285
1287
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M288 64c0 17.7-14.3 32-32 32H32C14.3 96 0 81.7 0 64S14.3 32 32 32H256c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H256c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/></svg>`,
1286
1288
  };
1287
1289
 
1288
- var __decorate$j = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1290
+ var __decorate$k = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1289
1291
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1290
1292
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1291
1293
  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;
@@ -1320,10 +1322,10 @@ class LeftAlignToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1320
1322
  'align-left': AlignLeft,
1321
1323
  });
1322
1324
  })();
1323
- __decorate$j([
1325
+ __decorate$k([
1324
1326
  MapToComponentField()
1325
1327
  ], LeftAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
1326
- __decorate$j([
1328
+ __decorate$k([
1327
1329
  MapToComponentField()
1328
1330
  ], LeftAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
1329
1331
 
@@ -1331,7 +1333,7 @@ const AlignCenter = {
1331
1333
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M352 64c0-17.7-14.3-32-32-32H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H320c17.7 0 32-14.3 32-32zm96 128c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32zM0 448c0 17.7 14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM352 320c0-17.7-14.3-32-32-32H128c-17.7 0-32 14.3-32 32s14.3 32 32 32H320c17.7 0 32-14.3 32-32z"/></svg>`,
1332
1334
  };
1333
1335
 
1334
- var __decorate$i = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1336
+ var __decorate$j = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1335
1337
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1336
1338
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1337
1339
  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;
@@ -1366,10 +1368,10 @@ class CenterAlignToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1366
1368
  'align-center': AlignCenter,
1367
1369
  });
1368
1370
  })();
1369
- __decorate$i([
1371
+ __decorate$j([
1370
1372
  MapToComponentField()
1371
1373
  ], CenterAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
1372
- __decorate$i([
1374
+ __decorate$j([
1373
1375
  MapToComponentField()
1374
1376
  ], CenterAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
1375
1377
 
@@ -1377,7 +1379,7 @@ const AlignRight = {
1377
1379
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M448 64c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32zm0 256c0 17.7-14.3 32-32 32H192c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32zM0 192c0-17.7 14.3-32 32-32H416c17.7 0 32 14.3 32 32s-14.3 32-32 32H32c-17.7 0-32-14.3-32-32zM448 448c0 17.7-14.3 32-32 32H32c-17.7 0-32-14.3-32-32s14.3-32 32-32H416c17.7 0 32 14.3 32 32z"/></svg>`,
1378
1380
  };
1379
1381
 
1380
- var __decorate$h = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1382
+ var __decorate$i = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1381
1383
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1382
1384
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1383
1385
  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;
@@ -1412,10 +1414,10 @@ class RightAlignToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1412
1414
  'align-right': AlignRight,
1413
1415
  });
1414
1416
  })();
1415
- __decorate$h([
1417
+ __decorate$i([
1416
1418
  MapToComponentField()
1417
1419
  ], RightAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
1418
- __decorate$h([
1420
+ __decorate$i([
1419
1421
  MapToComponentField()
1420
1422
  ], RightAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
1421
1423
 
@@ -1423,7 +1425,7 @@ const AlignJustify = {
1423
1425
  icon: `<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 448 512"><!--! Font Awesome Pro 6.3.0 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license (Commercial License) Copyright 2023 Fonticons, Inc. --><path fill="currentColor" d="M448 64c0-17.7-14.3-32-32-32H32C14.3 32 0 46.3 0 64S14.3 96 32 96H416c17.7 0 32-14.3 32-32zm0 256c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32zM0 192c0 17.7 14.3 32 32 32H416c17.7 0 32-14.3 32-32s-14.3-32-32-32H32c-17.7 0-32 14.3-32 32zM448 448c0-17.7-14.3-32-32-32H32c-17.7 0-32 14.3-32 32s14.3 32 32 32H416c17.7 0 32-14.3 32-32z"/></svg>`,
1424
1426
  };
1425
1427
 
1426
- var __decorate$g = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1428
+ var __decorate$h = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1427
1429
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1428
1430
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1429
1431
  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;
@@ -1458,14 +1460,14 @@ class JustifyAlignToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1458
1460
  'align-justify': AlignJustify,
1459
1461
  });
1460
1462
  })();
1461
- __decorate$g([
1463
+ __decorate$h([
1462
1464
  MapToComponentField()
1463
1465
  ], JustifyAlignToolbarButtonSlimmer.prototype, "selectionController", void 0);
1464
- __decorate$g([
1466
+ __decorate$h([
1465
1467
  MapToComponentField()
1466
1468
  ], JustifyAlignToolbarButtonSlimmer.prototype, "popoverRef", void 0);
1467
1469
 
1468
- var __decorate$f = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1470
+ var __decorate$g = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1469
1471
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1470
1472
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1471
1473
  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;
@@ -1517,22 +1519,22 @@ class HorizontalAlignmentToolbarButtonSlimmer extends ToolbarButtonSlimmer {
1517
1519
  return false;
1518
1520
  }
1519
1521
  }
1520
- __decorate$f([
1522
+ __decorate$g([
1521
1523
  MapToComponentField()
1522
1524
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "selectionController", void 0);
1523
- __decorate$f([
1525
+ __decorate$g([
1524
1526
  InjectVegaSlimmer()
1525
1527
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "leftAlignToolbarButtonSlimmer", void 0);
1526
- __decorate$f([
1528
+ __decorate$g([
1527
1529
  InjectVegaSlimmer()
1528
1530
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "centerAlignToolbarButtonSlimmer", void 0);
1529
- __decorate$f([
1531
+ __decorate$g([
1530
1532
  InjectVegaSlimmer()
1531
1533
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "rightAlignToolbarButtonSlimmer", void 0);
1532
- __decorate$f([
1534
+ __decorate$g([
1533
1535
  InjectVegaSlimmer()
1534
1536
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "justifiedToolbarButtonSlimmer", void 0);
1535
- __decorate$f([
1537
+ __decorate$g([
1536
1538
  MapToComponentMethod('componentWillRender')
1537
1539
  ], HorizontalAlignmentToolbarButtonSlimmer.prototype, "componentWillRender", null);
1538
1540
 
@@ -1818,6 +1820,14 @@ class RTERange {
1818
1820
  }
1819
1821
  return new RTERange(this._startContainer, this._endContainer, this._startOffset, this._endOffset, this._startNode, this._endNode, this._oldNativeRange);
1820
1822
  }
1823
+ /**
1824
+ * Creates a new instance of the `RTERange` class with the same properties as the current instance.
1825
+ *
1826
+ * @returns {RTERange} A new `RTERange` instance with the same start and end containers, offsets, and nodes.
1827
+ */
1828
+ clone() {
1829
+ return new RTERange(this._startContainer, this._endContainer, this._startOffset, this._endOffset, this._startNode, this._endNode, this._oldNativeRange);
1830
+ }
1821
1831
  /**
1822
1832
  * Creates a Range object based on start and end nodes and offsets.
1823
1833
  * Invoke this method to get the future range state if the range content modified.
@@ -1875,7 +1885,25 @@ class RTERange {
1875
1885
  }
1876
1886
  }
1877
1887
 
1878
- var __decorate$e = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1888
+ /**
1889
+ * Represents the state of the selection in the RTE.
1890
+ */
1891
+ class RTESelectionState {
1892
+ constructor(range) {
1893
+ this.range = range;
1894
+ }
1895
+ /**
1896
+ * Clones the selection state, updating the range nodes based on the provided content.
1897
+ *
1898
+ * @returns {RTESelectionState} A new instance of RTESelectionState with the updated range.
1899
+ */
1900
+ clone() {
1901
+ const newRange = this.range.clone();
1902
+ return new RTESelectionState(newRange);
1903
+ }
1904
+ }
1905
+
1906
+ var __decorate$f = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
1879
1907
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
1880
1908
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
1881
1909
  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;
@@ -1890,7 +1918,7 @@ class SelectionController extends VegaSlimmer {
1890
1918
  this.currentRange = new RTERange();
1891
1919
  this.updateCaretPositionTaskQueue = new SynchronizeTaskQueue(1);
1892
1920
  this.handleSelectionWithDebounce = debounce(this.handleSelectionChange, SelectionController.SELECTION_CHANGE_DEBOUNCE_TIME, this);
1893
- this.selectedNodes = [];
1921
+ this.pendingRestoreSelectionNodes = [];
1894
1922
  /**
1895
1923
  * Sets the next selection state with specified start and end nodes, offsets, and a timestamp.
1896
1924
  *
@@ -1930,6 +1958,7 @@ class SelectionController extends VegaSlimmer {
1930
1958
  * Watches the internal value of the editor
1931
1959
  */
1932
1960
  watchValueUpdate() {
1961
+ this.prepareRestoreSelectionState();
1933
1962
  this.restoreSelection();
1934
1963
  }
1935
1964
  /**
@@ -1964,6 +1993,14 @@ class SelectionController extends VegaSlimmer {
1964
1993
  getSelectedBlocks() {
1965
1994
  return Array.from(this.selectionMap.keys());
1966
1995
  }
1996
+ /**
1997
+ * Set the selection state
1998
+ *
1999
+ * @param {RTESelectionState} state - The selection state to set
2000
+ */
2001
+ setSelectionState(state) {
2002
+ this.selectionState = state;
2003
+ }
1967
2004
  /**
1968
2005
  * Sets the next selection state with specified start and end nodes, offsets, push the update task to a queue
1969
2006
  *
@@ -2021,23 +2058,15 @@ class SelectionController extends VegaSlimmer {
2021
2058
  * Restore the selection to the current selected nodes
2022
2059
  */
2023
2060
  restoreSelection() {
2024
- if (this.selectedNodes.length > 0) {
2025
- const startNode = this.selectedNodes[0];
2026
- const endNode = this.selectedNodes.length > 1 ? this.selectedNodes[this.selectedNodes.length - 1] : startNode;
2027
- if (startNode === endNode && startNode.text.length === 0) {
2061
+ if (this.selectionState) {
2062
+ const { startNode, endNode, startOffset, endOffset } = this.selectionState.range;
2063
+ if (startNode instanceof RTETextNode && startNode === endNode && startNode.text.length === 0) {
2028
2064
  this.enqueueSelectionRangeFutureState(startNode, ZERO_WIDTH_SPACE.length);
2029
2065
  }
2030
2066
  else {
2031
- const { startContainer, endContainer, startOffset, endOffset } = this.currentRange;
2032
- if (stateEntityRenderingRegistry.getDOMByEntity(startNode) === startContainer.parentElement &&
2033
- stateEntityRenderingRegistry.getDOMByEntity(endNode) === endContainer.parentElement) {
2034
- this.enqueueSelectionRangeFutureState(startNode, startOffset, endNode, endOffset);
2035
- }
2036
- else {
2037
- this.enqueueSelectionRangeFutureState(startNode, 0, endNode, endNode.text.length);
2038
- }
2067
+ this.enqueueSelectionRangeFutureState(startNode, startOffset, endNode, endOffset);
2039
2068
  }
2040
- this.selectedNodes = [];
2069
+ this.selectionState = null;
2041
2070
  }
2042
2071
  }
2043
2072
  /**
@@ -2125,50 +2154,123 @@ class SelectionController extends VegaSlimmer {
2125
2154
  */
2126
2155
  registerSelectionRangeChangeObserver() {
2127
2156
  this.selectionRangeChangeObserver = new Observer(this.isAcceptableSelectionRangeChange.bind(this), (payload) => {
2128
- this.selectedNodes.push(payload.node);
2157
+ this.pendingRestoreSelectionNodes.push(payload.node);
2129
2158
  });
2130
2159
  ChangeManager.register(domNodeSubjectFactory.getSubject(this.host, VegaInternalRichTextEditorSelectionRangeChange), this.selectionRangeChangeObserver);
2131
2160
  }
2161
+ /**
2162
+ * Prepare the selection state to restore
2163
+ */
2164
+ prepareRestoreSelectionState() {
2165
+ if (this.pendingRestoreSelectionNodes.length > 0) {
2166
+ const startNode = this.pendingRestoreSelectionNodes[0];
2167
+ const endNode = this.pendingRestoreSelectionNodes.length > 1
2168
+ ? this.pendingRestoreSelectionNodes[this.pendingRestoreSelectionNodes.length - 1]
2169
+ : startNode;
2170
+ const { startOffset, endOffset, endContainer, startContainer } = this.currentRange;
2171
+ const nodesInCurrentRange = stateEntityRenderingRegistry.getDOMByEntity(startNode) === startContainer.parentElement &&
2172
+ stateEntityRenderingRegistry.getDOMByEntity(endNode) === endContainer.parentElement;
2173
+ if (nodesInCurrentRange) {
2174
+ this.currentRange = this.currentRange.updateRTERange({
2175
+ startNode,
2176
+ endNode,
2177
+ startOffset,
2178
+ endOffset,
2179
+ });
2180
+ this.selectionState = new RTESelectionState(this.currentRange);
2181
+ }
2182
+ else {
2183
+ this.currentRange = this.currentRange.updateRTERange({
2184
+ startNode,
2185
+ endNode,
2186
+ startOffset: 0,
2187
+ endOffset: endNode.text.length,
2188
+ });
2189
+ this.selectionState = new RTESelectionState(this.currentRange);
2190
+ }
2191
+ this.pendingRestoreSelectionNodes = [];
2192
+ }
2193
+ }
2132
2194
  }
2133
2195
  SelectionController.SELECTION_CHANGE_DEBOUNCE_TIME = 50;
2134
- __decorate$e([
2196
+ __decorate$f([
2135
2197
  MapToComponentField()
2136
2198
  ], SelectionController.prototype, "vegaRichTextEditorRenderer", void 0);
2137
- __decorate$e([
2199
+ __decorate$f([
2138
2200
  MapToComponentField({ writable: true })
2139
2201
  ], SelectionController.prototype, "selectionMap", void 0);
2140
- __decorate$e([
2202
+ __decorate$f([
2141
2203
  MapToComponentField()
2142
2204
  ], SelectionController.prototype, "host", void 0);
2143
- __decorate$e([
2205
+ __decorate$f([
2144
2206
  MapToComponentField()
2145
2207
  ], SelectionController.prototype, "value", void 0);
2146
- __decorate$e([
2208
+ __decorate$f([
2147
2209
  MapToComponentField()
2148
2210
  ], SelectionController.prototype, "disabled", void 0);
2149
- __decorate$e([
2211
+ __decorate$f([
2150
2212
  MapToComponentField()
2151
2213
  ], SelectionController.prototype, "valueController", void 0);
2152
- __decorate$e([
2214
+ __decorate$f([
2153
2215
  MapToComponentField()
2154
2216
  ], SelectionController.prototype, "insertCompositionTextController", void 0);
2155
- __decorate$e([
2217
+ __decorate$f([
2218
+ MapToComponentField()
2219
+ ], SelectionController.prototype, "historyController", void 0);
2220
+ __decorate$f([
2156
2221
  MapToComponentMethod('connectedCallback')
2157
2222
  ], SelectionController.prototype, "connectedCallback", null);
2158
- __decorate$e([
2223
+ __decorate$f([
2159
2224
  MapToComponentMethod('disconnectedCallback')
2160
2225
  ], SelectionController.prototype, "disconnectedCallback", null);
2161
- __decorate$e([
2226
+ __decorate$f([
2162
2227
  MapToComponentMethod('componentDidLoad')
2163
2228
  ], SelectionController.prototype, "componentDidLoad", null);
2164
- __decorate$e([
2229
+ __decorate$f([
2165
2230
  MapToComponentMethod('watchValueUpdate')
2166
2231
  ], SelectionController.prototype, "watchValueUpdate", null);
2167
- __decorate$e([
2232
+ __decorate$f([
2168
2233
  MapToComponentMethod('componentDidUpdate')
2169
2234
  ], SelectionController.prototype, "updateCaretPosition", null);
2170
2235
 
2171
- var __decorate$d = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2236
+ /**
2237
+ * Represents the state of the RTE
2238
+ */
2239
+ class RTEEditorState {
2240
+ constructor(content, selection) {
2241
+ this.content = content.clone(true);
2242
+ this.selection = selection.clone();
2243
+ this.refreshSelectionNodes();
2244
+ }
2245
+ /**
2246
+ * Clones the editor state, updating the content and selection based on the provided content.
2247
+ *
2248
+ * @returns {RTEEditorState} A new instance of RTEEditorState with the updated content and selection.
2249
+ */
2250
+ clone() {
2251
+ return new RTEEditorState(this.content, this.selection);
2252
+ }
2253
+ /**
2254
+ * Refreshes the selection nodes in the editor state.
2255
+ */
2256
+ refreshSelectionNodes() {
2257
+ const { startNode: oldStartNode, endNode: oldEndNode, startOffset, endOffset, } = this.selection.range;
2258
+ if (oldStartNode && oldEndNode) {
2259
+ const startNode = this.content.findNodeById(oldStartNode.id);
2260
+ const endNode = this.content.findNodeById(oldEndNode.id);
2261
+ if (startNode && endNode) {
2262
+ this.selection.range.updateRTERange({
2263
+ startNode,
2264
+ endNode,
2265
+ startOffset,
2266
+ endOffset,
2267
+ });
2268
+ }
2269
+ }
2270
+ }
2271
+ }
2272
+
2273
+ var __decorate$e = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
2172
2274
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
2173
2275
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
2174
2276
  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;
@@ -2224,8 +2326,12 @@ class ValueController extends VegaSlimmer {
2224
2326
  * Updates the value of the editor and restore the selection.
2225
2327
  *
2226
2328
  * @param {VegaRTEContent} newValue The new value to set.
2329
+ * @param {boolean} recordHistory - Whether to record the change in history.
2227
2330
  */
2228
- async flushChanges(newValue) {
2331
+ async flushChanges(newValue, recordHistory = true) {
2332
+ if (recordHistory) {
2333
+ this.historyController.registerHistory(new RTEEditorState(newValue, new RTESelectionState(this.selectionController.getCurrentRange())));
2334
+ }
2229
2335
  this.value = newValue.clone();
2230
2336
  await waitForComponentDidRender(this.host);
2231
2337
  }
@@ -2239,28 +2345,34 @@ class ValueController extends VegaSlimmer {
2239
2345
  }
2240
2346
  }
2241
2347
  ValueController.VALUE_CHANGE_DEBOUNCE_TIME = 50;
2242
- __decorate$d([
2348
+ __decorate$e([
2243
2349
  MapToComponentField()
2244
2350
  ], ValueController.prototype, "host", void 0);
2245
- __decorate$d([
2351
+ __decorate$e([
2246
2352
  MapToComponentField({ writable: true })
2247
2353
  ], ValueController.prototype, "value", void 0);
2248
- __decorate$d([
2354
+ __decorate$e([
2249
2355
  MapToComponentField()
2250
2356
  ], ValueController.prototype, "changeEventEmitter", void 0);
2251
- __decorate$d([
2357
+ __decorate$e([
2252
2358
  MapToComponentField()
2253
2359
  ], ValueController.prototype, "valueController", void 0);
2254
- __decorate$d([
2360
+ __decorate$e([
2361
+ MapToComponentField()
2362
+ ], ValueController.prototype, "historyController", void 0);
2363
+ __decorate$e([
2364
+ MapToComponentField()
2365
+ ], ValueController.prototype, "selectionController", void 0);
2366
+ __decorate$e([
2255
2367
  MapToComponentMethod('connectedCallback')
2256
2368
  ], ValueController.prototype, "connectedCallback", null);
2257
- __decorate$d([
2369
+ __decorate$e([
2258
2370
  MapToComponentMethod('disconnectedCallback')
2259
2371
  ], ValueController.prototype, "disconnectedCallback", null);
2260
- __decorate$d([
2372
+ __decorate$e([
2261
2373
  MapToComponentMethod('componentWillLoad')
2262
2374
  ], ValueController.prototype, "componentWillLoad", null);
2263
- __decorate$d([
2375
+ __decorate$e([
2264
2376
  MapToComponentMethod('watchValueUpdate')
2265
2377
  ], ValueController.prototype, "watchValueUpdate", null);
2266
2378
 
@@ -2816,14 +2928,14 @@ class ElementToDTOStrategyOutput {
2816
2928
  /**
2817
2929
  * Transform current output and children output to DTO
2818
2930
  *
2819
- * @returns {RTEContentBlock} - DTO.
2931
+ * @returns {Nullable<RTEContentBlock>} - DTO.
2820
2932
  */
2821
2933
  toDto() {
2822
2934
  const currentBlock = this.currentStrategy.handle(this.currentElements);
2823
2935
  if (this.childrenOutput.length > 0 && currentBlock) {
2824
2936
  this.currentStrategy.appendChildBlocks(currentBlock, this.childrenOutput
2825
2937
  .map((childOutput) => childOutput.toDto())
2826
- .filter(Boolean));
2938
+ .filter(isNonNullable));
2827
2939
  }
2828
2940
  return currentBlock;
2829
2941
  }
@@ -2861,12 +2973,12 @@ class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
2861
2973
  childNodes.push({
2862
2974
  id: generateUUID(),
2863
2975
  type: 'text',
2864
- text: child.textContent,
2976
+ text: String(child.textContent),
2865
2977
  annotations: annotations,
2866
2978
  });
2867
2979
  }
2868
2980
  else {
2869
- childNodes.push(...this.generateChildNodes(Array.from(child.childNodes), Object.assign({}, annotations, this.generateTextNodeAnnotations(child))));
2981
+ childNodes.push(...this.generateChildNodes(Array.from(child.childNodes), Object.assign({}, annotations, this.generateTextNodeAnnotations(child, annotations))));
2870
2982
  }
2871
2983
  });
2872
2984
  return childNodes;
@@ -2894,7 +3006,7 @@ class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
2894
3006
  * @returns {boolean} - boolean.
2895
3007
  */
2896
3008
  isInvalidTextNode(element) {
2897
- if (element.nodeValue.includes('\t')) {
3009
+ if (element.nodeValue && element.nodeValue.includes('\t')) {
2898
3010
  const value = element.nodeValue.replace(/\n|\t/gm, '');
2899
3011
  if (value.length === 0)
2900
3012
  return true;
@@ -2905,9 +3017,10 @@ class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
2905
3017
  * Generate annotations map for text node element.
2906
3018
  *
2907
3019
  * @param {HTMLElement} element - current element.
3020
+ * @param {VegaRTETextAnnotations} parentAnnotations - parent annotations
2908
3021
  * @returns {VegaRTETextAnnotations | VegaRTECodeAnnotations} - Text node annotations.
2909
3022
  */
2910
- generateTextNodeAnnotations(element) {
3023
+ generateTextNodeAnnotations(element, parentAnnotations) {
2911
3024
  if (this.isCode(element))
2912
3025
  return { code: true };
2913
3026
  const annotations = {
@@ -2916,6 +3029,10 @@ class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
2916
3029
  underline: this.isUnderline(element),
2917
3030
  strikethrough: this.isStrikethrough(element),
2918
3031
  };
3032
+ parentAnnotations.bold && (annotations.bold = true);
3033
+ parentAnnotations.underline && (annotations.underline = true);
3034
+ parentAnnotations.italic && (annotations.italic = true);
3035
+ parentAnnotations.strikethrough && (annotations.strikethrough = true);
2919
3036
  const color = this.getColor(element);
2920
3037
  const link = this.getLink(element);
2921
3038
  if (color)
@@ -2931,7 +3048,9 @@ class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
2931
3048
  * @returns {boolean} - boolean.
2932
3049
  */
2933
3050
  isCode(element) {
2934
- return element.classList.contains('v-rte--code') || element.nodeName === 'CODE';
3051
+ return (element.classList.contains('v-rte--code') ||
3052
+ element.nodeName === 'CODE' ||
3053
+ element.style.fontFamily === 'monospace');
2935
3054
  }
2936
3055
  /**
2937
3056
  * Is bold element.
@@ -2941,6 +3060,7 @@ class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
2941
3060
  */
2942
3061
  isBold(element) {
2943
3062
  return (element.nodeName === 'STRONG' ||
3063
+ element.nodeName === 'B' ||
2944
3064
  element.style.fontWeight === 'bold' ||
2945
3065
  element.style.fontWeight === '700');
2946
3066
  }
@@ -2962,6 +3082,7 @@ class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
2962
3082
  isUnderline(element) {
2963
3083
  return (element.style.textDecoration.includes('underline') ||
2964
3084
  element.nodeName === 'U' ||
3085
+ element.nodeName === 'INS' ||
2965
3086
  element.classList.contains('v-rte--underline'));
2966
3087
  }
2967
3088
  /**
@@ -2973,6 +3094,7 @@ class BlockToRTEBlockStrategyAbstract extends ElementToDTOStrategy {
2973
3094
  isStrikethrough(element) {
2974
3095
  return (element.style.textDecoration.includes('line-through') ||
2975
3096
  element.nodeName === 'S' ||
3097
+ element.nodeName === 'DEL' ||
2976
3098
  element.classList.contains('v-rte--strikethrough'));
2977
3099
  }
2978
3100
  /**
@@ -3151,6 +3273,9 @@ ContinueInlineToRTETextBlockStrategy.canHandleTags = [
3151
3273
  'U',
3152
3274
  'A',
3153
3275
  'VEGA-RICH-TEXT-LINK-EDITOR',
3276
+ 'B',
3277
+ 'INS',
3278
+ 'DEL',
3154
3279
  ];
3155
3280
 
3156
3281
  /** Transform ul element to list block DTO */
@@ -3258,7 +3383,16 @@ class InlineBlockToRTETextBlockStrategy extends BlockToRTEBlockStrategyAbstract
3258
3383
  * @returns {number} - can be handled element count.
3259
3384
  */
3260
3385
  canHandle(elementsArray, currentIndex) {
3261
- return ['heading-1', 'heading-2', 'heading-3', 'title', 'subtitle'].includes(this.getElementType(elementsArray[currentIndex]))
3386
+ return [
3387
+ 'heading-1',
3388
+ 'heading-2',
3389
+ 'heading-3',
3390
+ 'heading-4',
3391
+ 'heading-5',
3392
+ 'heading-6',
3393
+ 'title',
3394
+ 'subtitle',
3395
+ ].includes(this.getElementType(elementsArray[currentIndex]))
3262
3396
  ? 1
3263
3397
  : 0;
3264
3398
  }
@@ -3323,6 +3457,12 @@ class InlineBlockToRTETextBlockStrategy extends BlockToRTEBlockStrategyAbstract
3323
3457
  return 'heading-2';
3324
3458
  case 'H3':
3325
3459
  return 'heading-3';
3460
+ case 'H4':
3461
+ return 'heading-4';
3462
+ case 'H5':
3463
+ return 'heading-5';
3464
+ case 'H6':
3465
+ return 'heading-6';
3326
3466
  default:
3327
3467
  return '';
3328
3468
  }
@@ -3403,22 +3543,24 @@ class VegaImageToRTEImageBlockStrategy extends BlockToRTEBlockStrategyAbstract {
3403
3543
  handle(elementsArray) {
3404
3544
  const element = elementsArray[0];
3405
3545
  const image = element.querySelector('img');
3406
- return RTEImageBlock.from({
3407
- id: generateUUID(),
3408
- type: 'image',
3409
- nodes: [
3410
- {
3411
- id: generateUUID(),
3412
- type: 'image',
3413
- url: image.src,
3414
- annotations: {
3415
- size: element.size || 'md',
3416
- alt: element.alt,
3546
+ if (isNonNullable(image)) {
3547
+ return RTEImageBlock.from({
3548
+ id: generateUUID(),
3549
+ type: 'image',
3550
+ nodes: [
3551
+ {
3552
+ id: generateUUID(),
3553
+ type: 'image',
3554
+ url: image.src,
3555
+ annotations: {
3556
+ size: element.size || 'md',
3557
+ alt: element.alt,
3558
+ },
3417
3559
  },
3418
- },
3419
- ],
3420
- annotations: this.generateBlockAnnotations(element),
3421
- });
3560
+ ],
3561
+ annotations: this.generateBlockAnnotations(element),
3562
+ });
3563
+ }
3422
3564
  }
3423
3565
  /* istanbul ignore next */
3424
3566
  /**
@@ -3742,7 +3884,7 @@ class InsertPasteHandler extends BaseHandler {
3742
3884
  }
3743
3885
  }
3744
3886
 
3745
- var __decorate$c = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
3887
+ var __decorate$d = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
3746
3888
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3747
3889
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
3748
3890
  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;
@@ -3857,28 +3999,28 @@ class UserInputController extends VegaSlimmer {
3857
3999
  }
3858
4000
  }
3859
4001
  }
3860
- __decorate$c([
4002
+ __decorate$d([
3861
4003
  MapToComponentField()
3862
4004
  ], UserInputController.prototype, "host", void 0);
3863
- __decorate$c([
4005
+ __decorate$d([
3864
4006
  MapToComponentField()
3865
4007
  ], UserInputController.prototype, "value", void 0);
3866
- __decorate$c([
4008
+ __decorate$d([
3867
4009
  MapToComponentField()
3868
4010
  ], UserInputController.prototype, "valueController", void 0);
3869
- __decorate$c([
4011
+ __decorate$d([
3870
4012
  MapToComponentField()
3871
4013
  ], UserInputController.prototype, "vegaRichTextEditorRenderer", void 0);
3872
- __decorate$c([
4014
+ __decorate$d([
3873
4015
  MapToComponentField()
3874
4016
  ], UserInputController.prototype, "selectionController", void 0);
3875
- __decorate$c([
4017
+ __decorate$d([
3876
4018
  MapToComponentField()
3877
4019
  ], UserInputController.prototype, "insertCompositionTextController", void 0);
3878
- __decorate$c([
4020
+ __decorate$d([
3879
4021
  MapToComponentMethod('componentDidLoad')
3880
4022
  ], UserInputController.prototype, "addActionListener", null);
3881
- __decorate$c([
4023
+ __decorate$d([
3882
4024
  MapToComponentMethod('disconnectedCallback')
3883
4025
  ], UserInputController.prototype, "removeActionListener", null);
3884
4026
 
@@ -3898,7 +4040,7 @@ class InsertImageToBlockAction extends ModifyContentAction {
3898
4040
  }
3899
4041
  }
3900
4042
 
3901
- var __decorate$b = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4043
+ var __decorate$c = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
3902
4044
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3903
4045
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
3904
4046
  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;
@@ -3987,26 +4129,26 @@ class InsertImageController extends VegaSlimmer {
3987
4129
  }
3988
4130
  }
3989
4131
  }
3990
- __decorate$b([
4132
+ __decorate$c([
3991
4133
  MapToComponentField()
3992
4134
  ], InsertImageController.prototype, "selectionController", void 0);
3993
- __decorate$b([
4135
+ __decorate$c([
3994
4136
  MapToComponentField()
3995
4137
  ], InsertImageController.prototype, "value", void 0);
3996
- __decorate$b([
4138
+ __decorate$c([
3997
4139
  MapToComponentField()
3998
4140
  ], InsertImageController.prototype, "valueController", void 0);
3999
- __decorate$b([
4141
+ __decorate$c([
4000
4142
  MapToComponentField()
4001
4143
  ], InsertImageController.prototype, "vegaRichTextEditorRenderer", void 0);
4002
- __decorate$b([
4144
+ __decorate$c([
4003
4145
  MapToComponentMethod('componentDidLoad')
4004
4146
  ], InsertImageController.prototype, "registerObserver", null);
4005
- __decorate$b([
4147
+ __decorate$c([
4006
4148
  MapToComponentMethod('disconnectedCallback')
4007
4149
  ], InsertImageController.prototype, "unRegisterObserver", null);
4008
4150
 
4009
- var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4151
+ var __decorate$b = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4010
4152
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4011
4153
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4012
4154
  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;
@@ -4062,20 +4204,20 @@ class FocusController extends VegaSlimmer {
4062
4204
  this.selectionController.setSelectionRange(range);
4063
4205
  }
4064
4206
  }
4065
- __decorate$a([
4207
+ __decorate$b([
4066
4208
  MapToComponentField()
4067
4209
  ], FocusController.prototype, "vegaRichTextEditorRenderer", void 0);
4068
- __decorate$a([
4210
+ __decorate$b([
4069
4211
  MapToComponentField()
4070
4212
  ], FocusController.prototype, "selectionController", void 0);
4071
- __decorate$a([
4213
+ __decorate$b([
4072
4214
  MapToComponentField()
4073
4215
  ], FocusController.prototype, "valueController", void 0);
4074
- __decorate$a([
4216
+ __decorate$b([
4075
4217
  MapToComponentField()
4076
4218
  ], FocusController.prototype, "value", void 0);
4077
4219
 
4078
- var __decorate$9 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4220
+ var __decorate$a = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4079
4221
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4080
4222
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4081
4223
  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;
@@ -4115,14 +4257,14 @@ class TextNodeColorController extends VegaSlimmer {
4115
4257
  return true;
4116
4258
  }
4117
4259
  }
4118
- __decorate$9([
4260
+ __decorate$a([
4119
4261
  MapToComponentMethod('connectedCallback')
4120
4262
  ], TextNodeColorController.prototype, "connectedCallback", null);
4121
- __decorate$9([
4263
+ __decorate$a([
4122
4264
  MapToComponentMethod('disconnectedCallback')
4123
4265
  ], TextNodeColorController.prototype, "disconnectResizeObserver", null);
4124
4266
 
4125
- var __decorate$8 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4267
+ var __decorate$9 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4126
4268
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4127
4269
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4128
4270
  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;
@@ -4330,35 +4472,35 @@ class InsertCompositionTextController extends VegaSlimmer {
4330
4472
  this.editableElementRef.dispatchEvent(inputEvent);
4331
4473
  }
4332
4474
  }
4333
- __decorate$8([
4475
+ __decorate$9([
4334
4476
  MapToComponentField()
4335
4477
  ], InsertCompositionTextController.prototype, "selectionController", void 0);
4336
- __decorate$8([
4478
+ __decorate$9([
4337
4479
  MapToComponentField()
4338
4480
  ], InsertCompositionTextController.prototype, "host", void 0);
4339
- __decorate$8([
4481
+ __decorate$9([
4340
4482
  MapToComponentField()
4341
4483
  ], InsertCompositionTextController.prototype, "value", void 0);
4342
- __decorate$8([
4484
+ __decorate$9([
4343
4485
  MapToComponentField()
4344
4486
  ], InsertCompositionTextController.prototype, "valueController", void 0);
4345
- __decorate$8([
4487
+ __decorate$9([
4346
4488
  MapToComponentField()
4347
4489
  ], InsertCompositionTextController.prototype, "userInputController", void 0);
4348
- __decorate$8([
4490
+ __decorate$9([
4349
4491
  MapToComponentField()
4350
4492
  ], InsertCompositionTextController.prototype, "vegaRichTextEditorRenderer", void 0);
4351
- __decorate$8([
4493
+ __decorate$9([
4352
4494
  MapToComponentMethod('componentDidLoad')
4353
4495
  ], InsertCompositionTextController.prototype, "addCompositionTextEventListener", null);
4354
- __decorate$8([
4496
+ __decorate$9([
4355
4497
  MapToComponentMethod('disconnectedCallback')
4356
4498
  ], InsertCompositionTextController.prototype, "removeCompositionTextEventListener", null);
4357
- __decorate$8([
4499
+ __decorate$9([
4358
4500
  MapToComponentMethod('componentDidRender')
4359
4501
  ], InsertCompositionTextController.prototype, "reConnectObserver", null);
4360
4502
 
4361
- var __decorate$7 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4503
+ var __decorate$8 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4362
4504
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4363
4505
  if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4364
4506
  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;
@@ -4521,22 +4663,155 @@ class DeleteSelectedNodesController extends VegaSlimmer {
4521
4663
  return JSON.stringify(annotationsA) === JSON.stringify(annotationsB);
4522
4664
  }
4523
4665
  }
4524
- __decorate$7([
4666
+ __decorate$8([
4525
4667
  MapToComponentField()
4526
4668
  ], DeleteSelectedNodesController.prototype, "host", void 0);
4527
- __decorate$7([
4669
+ __decorate$8([
4528
4670
  MapToComponentField()
4529
4671
  ], DeleteSelectedNodesController.prototype, "selectionController", void 0);
4530
- __decorate$7([
4672
+ __decorate$8([
4531
4673
  MapToComponentField()
4532
4674
  ], DeleteSelectedNodesController.prototype, "value", void 0);
4533
- __decorate$7([
4675
+ __decorate$8([
4534
4676
  MapToComponentMethod('connectedCallback')
4535
4677
  ], DeleteSelectedNodesController.prototype, "addDeleteObserver", null);
4536
- __decorate$7([
4678
+ __decorate$8([
4537
4679
  MapToComponentMethod('disconnectedCallback')
4538
4680
  ], DeleteSelectedNodesController.prototype, "removeDeleteObserver", null);
4539
4681
 
4682
+ var __decorate$7 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
4683
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4684
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4685
+ 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;
4686
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
4687
+ };
4688
+ /**
4689
+ * History controller for RTE.
4690
+ */
4691
+ class HistoryController extends KeyboardManagerSlimmer {
4692
+ constructor() {
4693
+ super(() => this.getKeyboardShortcutOptions.call(this));
4694
+ this.redoStack = [];
4695
+ this.undoStack = [];
4696
+ this.registerHistoryDelay = 300;
4697
+ this.registerHistoryDebounced = debounce(() => {
4698
+ this.internalRegisterHistory(new RTEEditorState(this.value, new RTESelectionState(this.selectionController.getCurrentRange())));
4699
+ }, this.registerHistoryDelay, this);
4700
+ }
4701
+ /**
4702
+ * Component lifecycle - [componentDidLoad]
4703
+ */
4704
+ registerInitState() {
4705
+ if (this.value) {
4706
+ this.internalRegisterHistory(new RTEEditorState(this.value, new RTESelectionState(this.selectionController.getCurrentRange())));
4707
+ }
4708
+ }
4709
+ /**
4710
+ * Restores the previous state from the undo stack.
4711
+ */
4712
+ async undo() {
4713
+ if (this.undoStack.length > 0) {
4714
+ const clonedState = this.undoStack.pop().clone();
4715
+ this.redoStack.push(clonedState);
4716
+ const prev = this.undoStack[this.undoStack.length - 1];
4717
+ if (prev) {
4718
+ await this.restoreState(prev.clone());
4719
+ }
4720
+ }
4721
+ }
4722
+ /**
4723
+ * Restores the next state from the redo stack.
4724
+ */
4725
+ async redo() {
4726
+ if (this.redoStack.length > 0) {
4727
+ const clonedState = this.redoStack.pop().clone();
4728
+ this.undoStack.push(clonedState);
4729
+ await this.restoreState(clonedState);
4730
+ }
4731
+ }
4732
+ /**
4733
+ * Registers history based on the editor state.
4734
+ *
4735
+ * @param {RTEEditorState} editorState - The state to record in history.
4736
+ */
4737
+ registerHistory(editorState) {
4738
+ // TODO: feat: add a `force` option to register history immediately when needed.
4739
+ this.registerHistoryDebounced(editorState);
4740
+ }
4741
+ /**
4742
+ * Internal function to register history immediately.
4743
+ *
4744
+ * @param {RTEEditorState} state - The state to record in history.
4745
+ */
4746
+ internalRegisterHistory(state) {
4747
+ this.redoStack = []; // clear redo stack when new action happens.
4748
+ this.undoStack.push(state);
4749
+ }
4750
+ /**
4751
+ * Restores the editor state based on the provided history state.
4752
+ *
4753
+ * @param {RTEEditorState} state - The state to restore to.
4754
+ */
4755
+ async restoreState(state) {
4756
+ const { content, selection } = state;
4757
+ this.selectionController.setSelectionState(selection);
4758
+ await this.valueController.flushChanges(content, false);
4759
+ }
4760
+ /**
4761
+ * Returns the keyboard shortcut options for undo/redo functionality.
4762
+ *
4763
+ * @returns {KeyboardEventListener[]} - An array of keyboard shortcut options.
4764
+ */
4765
+ getKeyboardShortcutOptions() {
4766
+ const baseOption = {
4767
+ keyCode: 'KeyZ',
4768
+ activeElementInScope: [this.vegaRichTextEditorRenderer.getRTEEditableElementRef()],
4769
+ eventName: 'keydown',
4770
+ modifierPressed: true,
4771
+ };
4772
+ return [
4773
+ Object.assign(Object.assign({}, baseOption), { shiftKey: false,
4774
+ /**
4775
+ * Callback function for the undo action.
4776
+ *
4777
+ * @param {KeyboardEvent} e - The keyboard event triggered by the user.
4778
+ */
4779
+ callback: (e) => {
4780
+ e.preventDefault();
4781
+ void this.undo();
4782
+ } }),
4783
+ Object.assign(Object.assign({}, baseOption), { shiftKey: true,
4784
+ /**
4785
+ * Callback function for the redo action.
4786
+ *
4787
+ * @param {KeyboardEvent} e - The keyboard event triggered by the user.
4788
+ */
4789
+ callback: (e) => {
4790
+ e.preventDefault();
4791
+ void this.redo();
4792
+ } }),
4793
+ ];
4794
+ }
4795
+ }
4796
+ __decorate$7([
4797
+ MapToComponentField()
4798
+ ], HistoryController.prototype, "host", void 0);
4799
+ __decorate$7([
4800
+ MapToComponentField()
4801
+ ], HistoryController.prototype, "vegaRichTextEditorRenderer", void 0);
4802
+ __decorate$7([
4803
+ MapToComponentField()
4804
+ ], HistoryController.prototype, "valueController", void 0);
4805
+ __decorate$7([
4806
+ MapToComponentField()
4807
+ ], HistoryController.prototype, "value", void 0);
4808
+ __decorate$7([
4809
+ MapToComponentField()
4810
+ ], HistoryController.prototype, "selectionController", void 0);
4811
+ __decorate$7([
4812
+ MapToComponentMethod('componentDidLoad')
4813
+ ], HistoryController.prototype, "registerInitState", null);
4814
+
4540
4815
  const vegaRichTextEditorCss = ":host{display:block}:host vega-field-label{margin-bottom:8px}:host vega-text{margin-bottom:16px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-secondary, 107, 116, 125, 1))}@media screen and (min-width: 768px) and (max-width: 1023px){:host vega-text{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host vega-text{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host vega-text{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}:host .rich-text-editor-container{display:flex;box-sizing:content-box;position:relative;box-sizing:content-box;background-color:rgba(var(--v-bg-primary, 252, 252, 252, 1));border:1px solid rgba(var(--v-border-input-field, 171, 198, 216, 1));border-radius:8px;font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px;color:rgba(var(--v-text-primary, 32, 54, 69, 1));margin-top:12px;overflow:auto;resize:vertical;padding-top:12px;padding-right:16px;padding-bottom:32px;padding-left:16px}@media screen and (min-width: 768px) and (max-width: 1023px){:host .rich-text-editor-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .rich-text-editor-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .rich-text-editor-container{font-family:\"Inter\", sans-serif;font-size:16px;font-weight:400;line-height:24px;letter-spacing:0px}}:host .rich-text-editor-container:hover{border:1px solid rgba(var(--v-border-input-field-hover, 115, 160, 190, 1))}:host .rich-text-editor-container:focus-within{border:1px solid rgba(var(--v-border-input-field-focus, 19, 98, 226, 1));outline:2px solid rgba(var(--v-border-color-action, 19, 98, 226, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-focus, 19, 98, 226, 1))}:host .rich-text-editor-container.disabled{background-color:rgba(var(--v-bg-secondary, 245, 247, 247, 1));border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1));cursor:not-allowed}:host .rich-text-editor-container.disabled:hover,:host .rich-text-editor-container.disabled:focus-within{border:1px solid rgba(var(--v-border-input-field-disabled, 222, 225, 227, 1))}:host .rich-text-editor-container.disabled:focus-within{outline:none}:host .rich-text-editor-container.disabled vega-rich-text-content{pointer-events:none;opacity:0.35}:host .rich-text-editor-container.error{border:1px solid rgba(var(--v-border-input-field-danger, 230, 50, 87, 1))}:host .rich-text-editor-container.error:hover{border:1px solid rgba(var(--v-border-input-field-danger-hover, 255, 87, 114, 1))}:host .rich-text-editor-container.error:focus-within{outline:2px solid rgba(var(--v-border-color-danger, 230, 50, 87, 1));outline-offset:3px;border:1px solid rgba(var(--v-border-color-input-field-danger-focus, 233, 71, 104, 1))}:host .rich-text-editor-container .text-editor-counter{position:absolute;bottom:8px;right:8px;display:flex;padding-left:4px;padding-right:4px;padding-top:2px;padding-bottom:2px;border-radius:4px;font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-inverted-primary, 252, 252, 252, 1));background-color:rgba(var(--v-bg-textarea-count, 4, 4, 28, 0.6))}@media screen and (min-width: 768px) and (max-width: 1023px){:host .rich-text-editor-container .text-editor-counter{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){:host .rich-text-editor-container .text-editor-counter{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){:host .rich-text-editor-container .text-editor-counter{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}:host .rich-text-editor-container .text-editor-counter.counter-exceed-max-length{background-color:rgba(var(--v-bg-textarea-counter-exceed-max-length, 214, 46, 81))}.toolbar-btn-group{display:flex;justify-content:center;align-items:center}.toolbar-btn-group>*:not(:first-child):not(:last-child) ::part(rich-text-editor-toolbar-button){border-radius:0px}.toolbar-btn-group>*:first-child:not(:last-child) ::part(rich-text-editor-toolbar-button){border-top-left-radius:4px;border-bottom-left-radius:4px;border-top-right-radius:0px;border-bottom-right-radius:0px}.toolbar-btn-group>*:last-child:not(:first-child) ::part(rich-text-editor-toolbar-button){border-top-left-radius:0px;border-bottom-left-radius:0px;border-top-right-radius:4px;border-bottom-right-radius:4px}.toolbar-btn-group>*:not(:first-child) ::part(rich-text-editor-toolbar-button){margin-left:-1px}.toolbar-btn-group .toolbar-btn-color-preview-box{display:flex;border:1px solid rgba(var(--v-border-chip, 205, 209, 211, 1));box-sizing:border-box;border-radius:4px;width:16px;height:16px;justify-content:center;align-items:center;margin-left:6px}.toolbar-btn-group .toolbar-btn-color-preview-box.disabled{opacity:0.35}.toolbar-btn-group .toolbar-btn-link-wrapper{position:relative}.toolbar-btn-group .toolbar-btn-link-wrapper vega-rich-text-link-editor{position:absolute;bottom:0;left:0;right:0}.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px;color:rgba(var(--v-text-error, 189, 41, 71, 1));display:block;margin-top:12px}@media screen and (min-width: 768px) and (max-width: 1023px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1024px) and (max-width: 1439px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}@media screen and (min-width: 1440px) and (max-width: 9999px){.vega-error{font-family:\"Inter\", sans-serif;font-size:14px;font-weight:400;line-height:18px;letter-spacing:0px}}.vega-hidden{display:none}";
4541
4816
 
4542
4817
  var __decorate$6 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
@@ -4603,6 +4878,7 @@ const VegaRichTextEditor = class {
4603
4878
  this.changeEventPreventSlimmer = new ChildNodesEventPreventSlimmer([VegaChange], () => this.vegaRichTextEditorRenderer.getRichTextWrapperRef());
4604
4879
  this.textNodeColorController = new TextNodeColorController();
4605
4880
  this.deleteSelectedNodesController = new DeleteSelectedNodesController();
4881
+ this.historyController = new HistoryController();
4606
4882
  this.richTextContentEditable = true;
4607
4883
  this.selectionMap = new Map();
4608
4884
  this.isInDarkMode = VegaInternalThemeManager.isDarkMode();
@@ -4827,6 +5103,9 @@ __decorate$6([
4827
5103
  __decorate$6([
4828
5104
  InjectVegaSlimmer()
4829
5105
  ], VegaRichTextEditor.prototype, "deleteSelectedNodesController", void 0);
5106
+ __decorate$6([
5107
+ InjectVegaSlimmer()
5108
+ ], VegaRichTextEditor.prototype, "historyController", void 0);
4830
5109
  VegaRichTextEditor.style = vegaRichTextEditorCss;
4831
5110
 
4832
5111
  var __decorate$5 = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
@@ -5020,6 +5299,10 @@ class VegaRichTextImageEditorRenderer extends VegaSlimmer {
5020
5299
  { key: 'lg', text: this.translationSlimmer.t('Lg') },
5021
5300
  ], selected: this.size, ref: (ref) => {
5022
5301
  DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaChange, (e) => {
5302
+ // The below line is covered in `history.spec#should register history, and undo/redo for image size change`
5303
+ // Prevent handling vegaChange triggered by DOM ref reuse (e.g., undo/redo) when the image editor is not visible.
5304
+ if (!this.selected)
5305
+ return;
5023
5306
  const size = e.detail;
5024
5307
  this.size = size;
5025
5308
  this.changeEventEmitter.emit({
@@ -5129,6 +5412,7 @@ const VegaRichTextImageEditor = class {
5129
5412
  *
5130
5413
  * @vegaVersion 2.34.0
5131
5414
  */
5415
+ /* eslint-disable-next-line @stencil/strict-mutable */
5132
5416
  this.size = 'md';
5133
5417
  }
5134
5418
  render() {