@globalpayments/vega 2.66.0 → 2.68.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 (436) hide show
  1. package/dist/cjs/{app-globals-ab28f910.js → app-globals-f7106a22.js} +15 -14
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-eb803b14.js → child-nodes-event-prevent-slimmer-f8840f1b.js} +1 -1
  3. package/dist/cjs/{code-block-ab97a0a0.js → code-block-39074880.js} +514 -319
  4. package/dist/cjs/{component-value-history-controller-slimmer.abstract-5630341e.js → component-value-history-controller-slimmer.abstract-ddedf543.js} +2 -2
  5. package/dist/cjs/{design-token-847739f1.js → design-token-e14a4e66.js} +1 -1
  6. package/dist/cjs/{dto-renderer-manager-d0f0f2c0.js → dto-renderer-manager-b7969d6c.js} +1587 -1563
  7. package/dist/cjs/{element-appender-slimmer-aead9bbb.js → element-appender-slimmer-7ee27ab3.js} +5 -5
  8. package/dist/cjs/{event-emit-slimmer-d21a0935.js → event-emit-slimmer-7afe8d78.js} +1 -1
  9. package/dist/cjs/{token-extension-aa8d5cce.js → function-extension-f0e845f2.js} +1019 -96
  10. package/dist/cjs/{image-annotation-action-d84de785.js → image-annotation-action-7f0626c8.js} +15 -25
  11. package/dist/cjs/index.cjs.js +36 -24
  12. package/dist/cjs/{internal-vega-event-manager-4d1ce667.js → internal-vega-event-manager-45d451de.js} +5 -2
  13. package/dist/cjs/{language-extension-d257e65d.js → language-extension-d0103d1a.js} +5 -5
  14. package/dist/cjs/loader.cjs.js +8 -8
  15. package/dist/cjs/{public-rules-d2b9b8f0.js → public-rules-8b67eaba.js} +3 -3
  16. package/dist/cjs/{range-d610028e.js → range-002671b6.js} +1 -1
  17. package/dist/cjs/{responsive-format-facade-71e7b74c.js → responsive-format-facade-347db035.js} +3 -3
  18. package/dist/cjs/{rich-text-editor-required-rule-a8fe5f50.js → rich-text-editor-required-rule-5392bd8a.js} +1 -1
  19. package/dist/cjs/{style-formatter-6facb42b.js → style-formatter-0a09f0dd.js} +1 -1
  20. package/dist/cjs/vega-accordion.cjs.entry.js +7 -7
  21. package/dist/cjs/vega-app-header-button.cjs.entry.js +8 -8
  22. package/dist/cjs/vega-banner.cjs.entry.js +2 -2
  23. package/dist/cjs/vega-box.cjs.entry.js +8 -8
  24. package/dist/cjs/vega-breadcrumb.cjs.entry.js +3 -3
  25. package/dist/cjs/vega-button-circle.cjs.entry.js +9 -9
  26. package/dist/cjs/vega-button-group_2.cjs.entry.js +3 -3
  27. package/dist/cjs/vega-button-link.cjs.entry.js +3 -3
  28. package/dist/cjs/vega-button.cjs.entry.js +8 -8
  29. package/dist/cjs/vega-calendar_4.cjs.entry.js +307 -269
  30. package/dist/cjs/vega-card.cjs.entry.js +7 -7
  31. package/dist/cjs/vega-carousel.cjs.entry.js +7 -7
  32. package/dist/cjs/vega-checkbox_2.cjs.entry.js +3 -3
  33. package/dist/cjs/vega-chip.cjs.entry.js +9 -9
  34. package/dist/cjs/vega-code-block.cjs.entry.js +6 -6
  35. package/dist/cjs/vega-color-picker.cjs.entry.js +2 -2
  36. package/dist/cjs/vega-combo-box.cjs.entry.js +3 -3
  37. package/dist/cjs/vega-date-picker_2.cjs.entry.js +12 -12
  38. package/dist/cjs/vega-dialog_2.cjs.entry.js +138 -44
  39. package/dist/cjs/vega-divider.cjs.entry.js +7 -7
  40. package/dist/cjs/vega-dropdown_5.cjs.entry.js +9 -9
  41. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  42. package/dist/cjs/vega-field-label.cjs.entry.js +24 -5
  43. package/dist/cjs/vega-file-uploader.cjs.entry.js +2 -2
  44. package/dist/cjs/vega-flag-icon.cjs.entry.js +6 -6
  45. package/dist/cjs/vega-flex.cjs.entry.js +8 -8
  46. package/dist/cjs/vega-font.cjs.entry.js +7 -7
  47. package/dist/cjs/vega-form.cjs.entry.js +3 -3
  48. package/dist/cjs/vega-grid.cjs.entry.js +7 -7
  49. package/dist/cjs/vega-icon.cjs.entry.js +6 -6
  50. package/dist/cjs/vega-image-uploader.cjs.entry.js +8 -8
  51. package/dist/cjs/vega-input-credit-card.cjs.entry.js +3 -3
  52. package/dist/cjs/vega-input-numeric.cjs.entry.js +3 -3
  53. package/dist/cjs/vega-input-passcode.cjs.entry.js +3 -3
  54. package/dist/cjs/vega-input-phone-number.cjs.entry.js +6 -6
  55. package/dist/cjs/vega-input-range.cjs.entry.js +3 -3
  56. package/dist/cjs/vega-input-select.cjs.entry.js +38 -14
  57. package/dist/cjs/vega-input.cjs.entry.js +14 -3
  58. package/dist/cjs/vega-item-toggle.cjs.entry.js +2 -2
  59. package/dist/cjs/vega-left-nav_5.cjs.entry.js +11 -11
  60. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +8 -8
  61. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +2 -2
  62. package/dist/cjs/vega-pagination.cjs.entry.js +7 -7
  63. package/dist/cjs/vega-popover_2.cjs.entry.js +9 -9
  64. package/dist/cjs/vega-progress-tracker.cjs.entry.js +2 -2
  65. package/dist/cjs/vega-radio_2.cjs.entry.js +3 -3
  66. package/dist/cjs/vega-rich-text-content.cjs.entry.js +93 -16
  67. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +107 -54
  68. package/dist/cjs/vega-segment-control.cjs.entry.js +2 -2
  69. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +8 -8
  70. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +3 -3
  71. package/dist/cjs/vega-sidenav_3.cjs.entry.js +10 -10
  72. package/dist/cjs/vega-signature-capture.cjs.entry.js +7 -7
  73. package/dist/cjs/vega-stepper.cjs.entry.js +3 -3
  74. package/dist/cjs/vega-tab-group_2.cjs.entry.js +3 -3
  75. package/dist/cjs/vega-table_8.cjs.entry.js +11 -11
  76. package/dist/cjs/vega-textarea.cjs.entry.js +24 -4
  77. package/dist/cjs/vega-time-picker_2.cjs.entry.js +9 -9
  78. package/dist/cjs/vega-toggle-switch.cjs.entry.js +2 -2
  79. package/dist/cjs/vega-tooltip_2.cjs.entry.js +7 -7
  80. package/dist/cjs/vega.cjs.js +8 -8
  81. package/dist/collection/components/vega-calendar/slimmers/common/helpers/calendar-event-sorter.js +3 -3
  82. package/dist/collection/components/vega-calendar/slimmers/common/renderers/vega-calendar-event-item-renderer.js +1 -1
  83. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/timed-event/layout/day-view-timed-event-layout-column.js +1 -1
  84. package/dist/collection/components/vega-calendar/vega-calendar-event/slimmers/renderers/vega-calendar-event-renderer.js +3 -4
  85. package/dist/collection/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.js +11 -3
  86. package/dist/collection/components/vega-field-label/vega-field-label.js +42 -0
  87. package/dist/collection/components/vega-input/vega-input.js +48 -2
  88. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-renderer.js +16 -5
  89. package/dist/collection/components/vega-input-select/vega-input-select.css +2 -44
  90. package/dist/collection/components/vega-input-select/vega-input-select.js +81 -1
  91. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.js +95 -16
  92. package/dist/collection/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.js +4 -1
  93. package/dist/collection/components/vega-modal/slimmers/models/vega-modal-open-state.js +9 -0
  94. package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +4 -1
  95. package/dist/collection/components/vega-modal/vega-modal.js +19 -16
  96. package/dist/collection/components/vega-rich-text-content/slimmers/controllers/vega-rich-text-content-extensions-styles-controller.js +60 -0
  97. package/dist/collection/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.js +7 -1
  98. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +17 -1
  99. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor-registry.js +61 -0
  100. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor.abstract.js +5 -0
  101. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.js +30 -6
  102. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy.js +10 -3
  103. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-text-or-decorator-node-strategy.js +2 -1
  104. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.js +28 -0
  105. package/dist/collection/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.js +1 -0
  106. package/dist/collection/components/vega-rich-text-editor/dto/actions/paste-content-action.js +17 -0
  107. package/dist/collection/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.js +5 -0
  108. package/dist/collection/components/vega-rich-text-editor/dto/annotations/annotation-style.js +87 -0
  109. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +27 -9
  110. package/dist/collection/components/vega-rich-text-editor/dto/blocks/html-block.js +1 -12
  111. package/dist/collection/components/vega-rich-text-editor/dto/blocks/list-item-block.js +6 -0
  112. package/dist/collection/components/vega-rich-text-editor/dto/blocks/text-block.js +14 -5
  113. package/dist/collection/components/vega-rich-text-editor/dto/content-state.js +11 -0
  114. package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +7 -37
  115. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +14 -3
  116. package/dist/collection/components/vega-rich-text-editor/extensions/base-extension-renderer.js +19 -1
  117. package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +44 -3
  118. package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +51 -1
  119. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-new-paragraph-interceptor.js +30 -0
  120. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-paste-content-interceptor.js +25 -0
  121. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/function-block-insert-paragraph-strategy.js +30 -0
  122. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/insert-function-block-strategy.js +99 -0
  123. package/dist/collection/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/paste-plain-text-strategy.js +68 -0
  124. package/dist/collection/components/vega-rich-text-editor/extensions/functions/actions/insert-function-block-action.js +15 -0
  125. package/dist/collection/components/vega-rich-text-editor/extensions/functions/actions/paste-plain-text-action.js +17 -0
  126. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/function-block.js +97 -0
  127. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-block.js +73 -0
  128. package/dist/collection/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.js +69 -0
  129. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-block-strategy.js +49 -0
  130. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-content-strategy.js +27 -0
  131. package/dist/collection/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-logic-control-block-strategy.js +55 -0
  132. package/dist/collection/components/vega-rich-text-editor/extensions/functions/function-extension.js +75 -0
  133. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-block-renderer.js +38 -0
  134. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +71 -0
  135. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/logic-control-block-renderer.js +20 -0
  136. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +1 -1
  137. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +3 -1
  138. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.js +5 -6
  139. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +1 -1
  140. package/dist/collection/components/vega-rich-text-editor/public-api.js +8 -1
  141. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/delete-selected-nodes-controller.js +9 -1
  142. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.js +0 -12
  143. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +3 -1
  144. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +12 -10
  145. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bold-toolbar-button-slimmer.js +2 -4
  146. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +30 -5
  147. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/clear-style-toolbar-button-slimmer.js +1 -4
  148. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.js +10 -1
  149. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/code-toolbar-button-slimmer.js +2 -4
  150. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +2 -1
  151. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +4 -1
  152. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/italic-toolbar-button-slimmer.js +2 -4
  153. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/less-indent-toolbar-button-slimmer.js +1 -4
  154. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/link-toolbar-button-slimmer.js +1 -4
  155. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/more-indent-toolbar-button-slimmer.js +1 -4
  156. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/strikethrough-toolbar-button-slimmer.js +2 -4
  157. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +2 -4
  158. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +2 -5
  159. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/underline-toolbar-button-slimmer.js +2 -4
  160. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.js +11 -0
  161. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +4 -1
  162. package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/action-handle-strategy-registry.test.js +32 -2
  163. package/dist/collection/components/vega-rich-text-editor/test/dto/action-handle-strategies/block-delete-node-content-strategy.test.js +69 -0
  164. package/dist/collection/components/vega-rich-text-editor/test/dto/annotation-style.test.js +70 -0
  165. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.css +3 -0
  166. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +1 -1
  167. package/dist/collection/components/vega-table/vega-table.css +2 -1
  168. package/dist/collection/components/vega-textarea/vega-textarea.js +88 -2
  169. package/dist/collection/global/scripts/before-vega-load.js +2 -0
  170. package/dist/collection/helpers/calendar/calendar-date-time.js +136 -0
  171. package/dist/collection/helpers/calendar/calendar-date.js +10 -4
  172. package/dist/collection/helpers/calendar/calendar-event.js +38 -193
  173. package/dist/collection/helpers/calendar/calendar-time.js +120 -0
  174. package/dist/collection/helpers/calendar/index.js +2 -0
  175. package/dist/collection/helpers/calendar/test/calendar-date-time.test.js +27 -0
  176. package/dist/collection/helpers/calendar/test/calendar-event.test.js +24 -22
  177. package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +2 -2
  178. package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +2 -2
  179. package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +6 -6
  180. package/dist/collection/helpers/calendar/test/calendar-time.test.js +45 -0
  181. package/dist/collection/helpers/calendar/test/utils.test.js +1 -29
  182. package/dist/collection/helpers/calendar/utils.js +0 -66
  183. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +5 -2
  184. package/dist/collection/helpers/rte-manager/dto-action-strategy-manager.js +2 -0
  185. package/dist/esm/{app-globals-37a60cc1.js → app-globals-2f689986.js} +6 -5
  186. package/dist/esm/{child-nodes-event-prevent-slimmer-735cb880.js → child-nodes-event-prevent-slimmer-76331524.js} +1 -1
  187. package/dist/esm/{code-block-11b2bc1c.js → code-block-e8839202.js} +511 -318
  188. package/dist/esm/{component-value-history-controller-slimmer.abstract-16c5cb96.js → component-value-history-controller-slimmer.abstract-c6f94113.js} +2 -2
  189. package/dist/esm/{design-token-297dc528.js → design-token-e9e6b011.js} +1 -1
  190. package/dist/esm/{dto-renderer-manager-a1a3b6d2.js → dto-renderer-manager-7abc53bf.js} +1587 -1565
  191. package/dist/esm/{element-appender-slimmer-f7233708.js → element-appender-slimmer-8dbc8387.js} +2 -2
  192. package/dist/esm/{event-emit-slimmer-28fd360c.js → event-emit-slimmer-4e28e9f8.js} +1 -1
  193. package/dist/esm/{token-extension-b690953f.js → function-extension-eb1d062f.js} +1018 -97
  194. package/dist/esm/{image-annotation-action-fc46c920.js → image-annotation-action-7957653a.js} +14 -24
  195. package/dist/esm/index.js +9 -9
  196. package/dist/esm/{internal-vega-event-manager-a5a5938d.js → internal-vega-event-manager-516aa721.js} +5 -2
  197. package/dist/esm/{language-extension-314a2b18.js → language-extension-3331131f.js} +3 -3
  198. package/dist/esm/loader.js +8 -8
  199. package/dist/esm/{public-rules-c6a6946d.js → public-rules-e613dead.js} +3 -3
  200. package/dist/esm/{range-b78254de.js → range-adf206fd.js} +1 -1
  201. package/dist/esm/{responsive-format-facade-a41e1be7.js → responsive-format-facade-b0712993.js} +3 -3
  202. package/dist/esm/{rich-text-editor-required-rule-d50c24da.js → rich-text-editor-required-rule-43857573.js} +1 -1
  203. package/dist/esm/{style-formatter-f7effaac.js → style-formatter-a20a1ef4.js} +1 -1
  204. package/dist/esm/vega-accordion.entry.js +7 -7
  205. package/dist/esm/vega-app-header-button.entry.js +8 -8
  206. package/dist/esm/vega-banner.entry.js +2 -2
  207. package/dist/esm/vega-box.entry.js +8 -8
  208. package/dist/esm/vega-breadcrumb.entry.js +3 -3
  209. package/dist/esm/vega-button-circle.entry.js +9 -9
  210. package/dist/esm/vega-button-group_2.entry.js +3 -3
  211. package/dist/esm/vega-button-link.entry.js +3 -3
  212. package/dist/esm/vega-button.entry.js +8 -8
  213. package/dist/esm/vega-calendar_4.entry.js +307 -269
  214. package/dist/esm/vega-card.entry.js +7 -7
  215. package/dist/esm/vega-carousel.entry.js +7 -7
  216. package/dist/esm/vega-checkbox_2.entry.js +3 -3
  217. package/dist/esm/vega-chip.entry.js +9 -9
  218. package/dist/esm/vega-code-block.entry.js +6 -6
  219. package/dist/esm/vega-color-picker.entry.js +2 -2
  220. package/dist/esm/vega-combo-box.entry.js +3 -3
  221. package/dist/esm/vega-date-picker_2.entry.js +8 -8
  222. package/dist/esm/vega-dialog_2.entry.js +132 -38
  223. package/dist/esm/vega-divider.entry.js +7 -7
  224. package/dist/esm/vega-dropdown_5.entry.js +9 -9
  225. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  226. package/dist/esm/vega-field-label.entry.js +24 -5
  227. package/dist/esm/vega-file-uploader.entry.js +2 -2
  228. package/dist/esm/vega-flag-icon.entry.js +6 -6
  229. package/dist/esm/vega-flex.entry.js +8 -8
  230. package/dist/esm/vega-font.entry.js +7 -7
  231. package/dist/esm/vega-form.entry.js +3 -3
  232. package/dist/esm/vega-grid.entry.js +7 -7
  233. package/dist/esm/vega-icon.entry.js +6 -6
  234. package/dist/esm/vega-image-uploader.entry.js +7 -7
  235. package/dist/esm/vega-input-credit-card.entry.js +3 -3
  236. package/dist/esm/vega-input-numeric.entry.js +3 -3
  237. package/dist/esm/vega-input-passcode.entry.js +3 -3
  238. package/dist/esm/vega-input-phone-number.entry.js +6 -6
  239. package/dist/esm/vega-input-range.entry.js +3 -3
  240. package/dist/esm/vega-input-select.entry.js +38 -14
  241. package/dist/esm/vega-input.entry.js +14 -3
  242. package/dist/esm/vega-item-toggle.entry.js +2 -2
  243. package/dist/esm/vega-left-nav_5.entry.js +7 -7
  244. package/dist/esm/vega-loader-wrapper_2.entry.js +6 -6
  245. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +2 -2
  246. package/dist/esm/vega-pagination.entry.js +7 -7
  247. package/dist/esm/vega-popover_2.entry.js +9 -9
  248. package/dist/esm/vega-progress-tracker.entry.js +2 -2
  249. package/dist/esm/vega-radio_2.entry.js +3 -3
  250. package/dist/esm/vega-rich-text-content.entry.js +93 -16
  251. package/dist/esm/vega-rich-text-editor_4.entry.js +107 -54
  252. package/dist/esm/vega-segment-control.entry.js +2 -2
  253. package/dist/esm/vega-selection-chip_2.entry.js +8 -8
  254. package/dist/esm/vega-selection-tile_2.entry.js +3 -3
  255. package/dist/esm/vega-sidenav_3.entry.js +6 -6
  256. package/dist/esm/vega-signature-capture.entry.js +7 -7
  257. package/dist/esm/vega-stepper.entry.js +3 -3
  258. package/dist/esm/vega-tab-group_2.entry.js +3 -3
  259. package/dist/esm/vega-table_8.entry.js +8 -8
  260. package/dist/esm/vega-textarea.entry.js +25 -5
  261. package/dist/esm/vega-time-picker_2.entry.js +9 -9
  262. package/dist/esm/vega-toggle-switch.entry.js +2 -2
  263. package/dist/esm/vega-tooltip_2.entry.js +7 -7
  264. package/dist/esm/vega.js +8 -8
  265. package/dist/sri/vega-sri-manifest.json +273 -273
  266. package/dist/types/components/vega-field-label/slimmers/renderers/vega-field-label-suffix-element-renderer.d.ts +1 -0
  267. package/dist/types/components/vega-field-label/types.d.ts +12 -0
  268. package/dist/types/components/vega-field-label/vega-field-label.d.ts +13 -1
  269. package/dist/types/components/vega-input/vega-input.d.ts +14 -2
  270. package/dist/types/components/vega-input-select/slimmers/renderers/vega-input-select-renderer.d.ts +3 -0
  271. package/dist/types/components/vega-input-select/vega-input-select.d.ts +25 -0
  272. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-open-state-controller.d.ts +31 -2
  273. package/dist/types/components/vega-modal/slimmers/controllers/vega-modal-z-index-controller.d.ts +1 -0
  274. package/dist/types/components/vega-modal/slimmers/models/vega-modal-open-state.d.ts +9 -0
  275. package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +1 -0
  276. package/dist/types/components/vega-modal/types.d.ts +9 -0
  277. package/dist/types/components/vega-modal/vega-modal.d.ts +8 -2
  278. package/dist/types/components/vega-rich-text-content/slimmers/controllers/vega-rich-text-content-extensions-styles-controller.d.ts +26 -0
  279. package/dist/types/components/vega-rich-text-content/slimmers/renderers/vega-rich-text-content-renderer.d.ts +1 -0
  280. package/dist/types/components/vega-rich-text-content/vega-rich-text-content.d.ts +7 -0
  281. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor-registry.d.ts +42 -0
  282. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-interceptor.abstract.d.ts +26 -0
  283. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy-registry.d.ts +9 -2
  284. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-delete-node-content-strategy.d.ts +7 -0
  285. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.d.ts +12 -0
  286. package/dist/types/components/vega-rich-text-editor/dto/actions/modify-content-action.abstract.d.ts +2 -1
  287. package/dist/types/components/vega-rich-text-editor/dto/actions/paste-content-action.d.ts +20 -0
  288. package/dist/types/components/vega-rich-text-editor/dto/actions/update-cursor-position-action.d.ts +1 -0
  289. package/dist/types/components/vega-rich-text-editor/dto/annotations/annotation-style.d.ts +46 -0
  290. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +10 -1
  291. package/dist/types/components/vega-rich-text-editor/dto/blocks/html-block.d.ts +3 -3
  292. package/dist/types/components/vega-rich-text-editor/dto/blocks/text-block.d.ts +6 -0
  293. package/dist/types/components/vega-rich-text-editor/dto/nodes/node.abstract.d.ts +0 -11
  294. package/dist/types/components/vega-rich-text-editor/extensions/base-extension-renderer.d.ts +16 -0
  295. package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +19 -3
  296. package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +36 -3
  297. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-new-paragraph-interceptor.d.ts +25 -0
  298. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-interceptor/prevent-paste-content-interceptor.d.ts +17 -0
  299. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/function-block-insert-paragraph-strategy.d.ts +18 -0
  300. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/insert-function-block-strategy.d.ts +27 -0
  301. package/dist/types/components/vega-rich-text-editor/extensions/functions/action-handler-strategies/paste-plain-text-strategy.d.ts +26 -0
  302. package/dist/types/components/vega-rich-text-editor/extensions/functions/actions/insert-function-block-action.d.ts +17 -0
  303. package/dist/types/components/vega-rich-text-editor/extensions/functions/actions/paste-plain-text-action.d.ts +17 -0
  304. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/function-block.d.ts +58 -0
  305. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-block.d.ts +55 -0
  306. package/dist/types/components/vega-rich-text-editor/extensions/functions/dto/logic-control-node.d.ts +48 -0
  307. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-block-strategy.d.ts +27 -0
  308. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-function-content-strategy.d.ts +14 -0
  309. package/dist/types/components/vega-rich-text-editor/extensions/functions/element-to-dto-strategies/div-to-logic-control-block-strategy.d.ts +32 -0
  310. package/dist/types/components/vega-rich-text-editor/extensions/functions/function-extension.d.ts +19 -0
  311. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/function-block-renderer.d.ts +25 -0
  312. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.d.ts +33 -0
  313. package/dist/types/components/vega-rich-text-editor/extensions/functions/renderers/logic-control-block-renderer.d.ts +12 -0
  314. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-extension.d.ts +2 -2
  315. package/dist/types/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.d.ts +2 -2
  316. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +2 -2
  317. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.d.ts +3 -4
  318. package/dist/types/components/vega-rich-text-editor/interface.d.ts +8 -2
  319. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +8 -1
  320. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/element-to-dto-strategy.abstract.d.ts +2 -11
  321. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/state-entity-rendering-registry.d.ts +1 -1
  322. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.d.ts +15 -0
  323. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/code-block-toolbar-button-slimmer.d.ts +1 -0
  324. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/visual-mode-toolbar-button-slimmer.abstract.d.ts +11 -0
  325. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +1 -0
  326. package/dist/types/components/vega-rich-text-editor/test/dto/action-handle-strategies/block-delete-node-content-strategy.test.d.ts +1 -0
  327. package/dist/types/components/vega-rich-text-editor/test/dto/annotation-style.test.d.ts +1 -0
  328. package/dist/types/components/vega-textarea/vega-textarea.d.ts +26 -0
  329. package/dist/types/components.d.ts +66 -4
  330. package/dist/types/helpers/calendar/calendar-date-time.d.ts +76 -0
  331. package/dist/types/helpers/calendar/calendar-event.d.ts +18 -57
  332. package/dist/types/helpers/calendar/calendar-time.d.ts +64 -0
  333. package/dist/types/helpers/calendar/index.d.ts +2 -0
  334. package/dist/types/helpers/calendar/test/calendar-date-time.test.d.ts +1 -0
  335. package/dist/types/helpers/calendar/test/calendar-time.test.d.ts +1 -0
  336. package/dist/types/helpers/calendar/utils.d.ts +0 -25
  337. package/dist/types/types/components.type.d.ts +1 -1
  338. package/dist/types/types/public-api.d.ts +2 -0
  339. package/dist/vega/index.esm.js +1 -1
  340. package/dist/vega/{p-6f7d42a0.entry.js → p-00376f71.entry.js} +1 -1
  341. package/dist/vega/p-018d70a5.js +1 -0
  342. package/dist/vega/p-0849f85e.js +1 -0
  343. package/dist/vega/{p-b431f9d5.entry.js → p-0a55f984.entry.js} +1 -1
  344. package/dist/vega/p-0f7dec29.entry.js +1 -0
  345. package/dist/vega/{p-47cae62d.entry.js → p-113d305b.entry.js} +1 -1
  346. package/dist/vega/{p-015cdbe7.entry.js → p-115b42e6.entry.js} +1 -1
  347. package/dist/vega/p-16358fec.entry.js +1 -0
  348. package/dist/vega/{p-af5bfe34.js → p-16d68187.js} +1 -1
  349. package/dist/vega/{p-92a22562.entry.js → p-18e8c54a.entry.js} +1 -1
  350. package/dist/vega/{p-6f6ccf67.entry.js → p-1922303e.entry.js} +1 -1
  351. package/dist/vega/{p-74d61782.entry.js → p-19256107.entry.js} +1 -1
  352. package/dist/vega/{p-59298f5e.entry.js → p-1dcb1fcd.entry.js} +2 -2
  353. package/dist/vega/{p-7f69081b.entry.js → p-1dd7f8b2.entry.js} +1 -1
  354. package/dist/vega/{p-d006e732.entry.js → p-22fe8c61.entry.js} +1 -1
  355. package/dist/vega/{p-524693d8.entry.js → p-238afe1b.entry.js} +1 -1
  356. package/dist/vega/p-240d9d35.entry.js +1 -0
  357. package/dist/vega/{p-b82d3915.entry.js → p-24419ebe.entry.js} +1 -1
  358. package/dist/vega/p-2478f65e.js +1 -0
  359. package/dist/vega/{p-358e9800.entry.js → p-2c945862.entry.js} +1 -1
  360. package/dist/vega/{p-5f58d1da.entry.js → p-2e32fbe6.entry.js} +1 -1
  361. package/dist/vega/p-2f04d2ac.js +1 -0
  362. package/dist/vega/p-30a8d9d6.entry.js +1 -0
  363. package/dist/vega/{p-e6cccee4.js → p-369810ae.js} +1 -1
  364. package/dist/vega/p-3ad87199.entry.js +1 -0
  365. package/dist/vega/{p-fe2e859f.entry.js → p-3b800f1b.entry.js} +1 -1
  366. package/dist/vega/p-437f865f.js +1 -0
  367. package/dist/vega/{p-de624f7d.entry.js → p-48bc03fa.entry.js} +1 -1
  368. package/dist/vega/{p-46830028.entry.js → p-54ddd06f.entry.js} +1 -1
  369. package/dist/vega/{p-5a0524ab.entry.js → p-56636a58.entry.js} +1 -1
  370. package/dist/vega/{p-fc8c5869.entry.js → p-56f77466.entry.js} +1 -1
  371. package/dist/vega/p-5f377954.js +1 -1
  372. package/dist/vega/{p-ab1001f5.entry.js → p-61d9cdf9.entry.js} +1 -1
  373. package/dist/vega/{p-39b9c57b.entry.js → p-626246b4.entry.js} +1 -1
  374. package/dist/vega/{p-ff3bb4e2.entry.js → p-634499cb.entry.js} +1 -1
  375. package/dist/vega/p-6609d87e.entry.js +1 -0
  376. package/dist/vega/p-69d27eaf.entry.js +1 -0
  377. package/dist/vega/{p-7efb5ebe.entry.js → p-705dad87.entry.js} +1 -1
  378. package/dist/vega/{p-8d574fbd.entry.js → p-75b5894f.entry.js} +1 -1
  379. package/dist/vega/{p-00071542.entry.js → p-76b1dae4.entry.js} +1 -1
  380. package/dist/vega/{p-54b62ecf.js → p-7747c163.js} +1 -1
  381. package/dist/vega/{p-0ed53cce.entry.js → p-787caad3.entry.js} +1 -1
  382. package/dist/vega/{p-129c0ce1.js → p-79e6e12c.js} +1 -1
  383. package/dist/vega/{p-cc519f53.entry.js → p-7dde3be9.entry.js} +1 -1
  384. package/dist/vega/p-8233d814.entry.js +1 -0
  385. package/dist/vega/{p-5e32866d.entry.js → p-83a50ac2.entry.js} +1 -1
  386. package/dist/vega/p-8506e8c3.js +1 -0
  387. package/dist/vega/{p-47fa359b.js → p-85407fb9.js} +1 -1
  388. package/dist/vega/{p-892cbe7c.entry.js → p-880569ec.entry.js} +1 -1
  389. package/dist/vega/{p-0113a83c.entry.js → p-8dba59a6.entry.js} +1 -1
  390. package/dist/vega/p-94e167b8.entry.js +1 -0
  391. package/dist/vega/{p-b2aaab66.entry.js → p-98fb9eaa.entry.js} +1 -1
  392. package/dist/vega/{p-3288a65b.entry.js → p-99bf5993.entry.js} +1 -1
  393. package/dist/vega/p-a211ae63.js +1 -0
  394. package/dist/vega/{p-fef846d5.entry.js → p-a2506cb5.entry.js} +1 -1
  395. package/dist/vega/{p-4e33fff6.entry.js → p-a6fb5a40.entry.js} +1 -1
  396. package/dist/vega/{p-bee1cc34.entry.js → p-b5060e84.entry.js} +1 -1
  397. package/dist/vega/{p-616cd622.entry.js → p-b78670c9.entry.js} +1 -1
  398. package/dist/vega/{p-d5761532.entry.js → p-b8558278.entry.js} +1 -1
  399. package/dist/vega/{p-8d655fd2.entry.js → p-bb0f2b5f.entry.js} +1 -1
  400. package/dist/vega/{p-a7631c6b.js → p-bb37a401.js} +1 -1
  401. package/dist/vega/p-bccee21e.js +1 -0
  402. package/dist/vega/{p-2553031f.entry.js → p-bd0e55a2.entry.js} +1 -1
  403. package/dist/vega/{p-65693321.entry.js → p-c0223a17.entry.js} +1 -1
  404. package/dist/vega/{p-2d430dc4.entry.js → p-c26332ae.entry.js} +1 -1
  405. package/dist/vega/{p-7f9ec104.entry.js → p-c54148fb.entry.js} +1 -1
  406. package/dist/vega/{p-276b1163.entry.js → p-d3905af1.entry.js} +2 -2
  407. package/dist/vega/p-d4893487.js +1 -0
  408. package/dist/vega/{p-d1dacaeb.entry.js → p-d67200e8.entry.js} +1 -1
  409. package/dist/vega/{p-725f0a2c.js → p-db57dddc.js} +1 -1
  410. package/dist/vega/{p-ed8bc4f0.entry.js → p-de02f404.entry.js} +1 -1
  411. package/dist/vega/{p-d4452dbc.entry.js → p-de8c5fae.entry.js} +1 -1
  412. package/dist/vega/{p-7b145620.js → p-de97c6d9.js} +1 -1
  413. package/dist/vega/{p-34800282.entry.js → p-e0979451.entry.js} +1 -1
  414. package/dist/vega/{p-1a3cb65e.entry.js → p-e6351dab.entry.js} +1 -1
  415. package/dist/vega/{p-8d096fea.entry.js → p-f0fb3fdd.entry.js} +1 -1
  416. package/dist/vega/{p-ea05a2fc.entry.js → p-f3399ef1.entry.js} +1 -1
  417. package/dist/vega/vega.esm.js +1 -1
  418. package/package.json +1 -1
  419. package/dist/vega/p-019f7f95.js +0 -1
  420. package/dist/vega/p-03a1e82e.entry.js +0 -1
  421. package/dist/vega/p-0d1eca78.entry.js +0 -1
  422. package/dist/vega/p-16370cfb.js +0 -1
  423. package/dist/vega/p-3a7f177a.entry.js +0 -1
  424. package/dist/vega/p-41c3fcb4.js +0 -1
  425. package/dist/vega/p-81105691.entry.js +0 -1
  426. package/dist/vega/p-822c6092.js +0 -1
  427. package/dist/vega/p-8edf3513.js +0 -1
  428. package/dist/vega/p-a1b7a179.entry.js +0 -1
  429. package/dist/vega/p-ab8f99e9.entry.js +0 -1
  430. package/dist/vega/p-bf7f755b.js +0 -1
  431. package/dist/vega/p-bf9476cd.entry.js +0 -1
  432. package/dist/vega/p-c1da8328.entry.js +0 -1
  433. package/dist/vega/p-c6ce2869.js +0 -1
  434. package/dist/vega/p-d0e6454e.entry.js +0 -1
  435. package/dist/vega/p-d88e88a7.js +0 -1
  436. package/dist/vega/p-f360c9ba.js +0 -1
@@ -24,6 +24,7 @@ import { VegaModalOpenStateController } from './slimmers/controllers/vega-modal-
24
24
  import { VegaModalBackdropController } from './slimmers/controllers/vega-modal-backdrop-controller';
25
25
  import { VegaModalOpenedModalStackController } from './slimmers/controllers/vega-modal-opened-modal-stack-controller';
26
26
  import { VegaModalZIndexController } from './slimmers/controllers/vega-modal-z-index-controller';
27
+ import { VegaModalOpenState } from './slimmers/models/vega-modal-open-state';
27
28
  /**
28
29
  * @vegaVersion 1.0.6
29
30
  */
@@ -45,6 +46,7 @@ export class VegaModal {
45
46
  this.componentGlobalStyleSlimmer = new ComponentGlobalStyleSlimmer(mainContentStyle);
46
47
  this.deprecatedPropertySlimmer = createDeprecatedPropertySlimmer(VegaModal, 'isVerticallyCentered', 'isVerticallyCenter', false);
47
48
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer(VegaModalRuntimeMetricsPayloadDefinition);
49
+ this.openState = this.initOpenState();
48
50
  /**
49
51
  * Provides options for controlling the behavior of the backdrop.
50
52
  * - `default`:
@@ -131,6 +133,9 @@ export class VegaModal {
131
133
  */
132
134
  this.handleClose = undefined;
133
135
  }
136
+ watchOpenState() {
137
+ methodPlaceholder();
138
+ }
134
139
  /**
135
140
  * The below method is e2e-test covered in
136
141
  * @see{module:vega-modal-size-number-e2e}
@@ -141,14 +146,11 @@ export class VegaModal {
141
146
  methodPlaceholder();
142
147
  }
143
148
  watchOpen() {
144
- methodPlaceholder();
149
+ this.openState = new VegaModalOpenState(this.open, 'property');
145
150
  }
146
151
  watchContentMaxHeight() {
147
152
  methodPlaceholder();
148
153
  }
149
- disconnectedCallback() {
150
- this.open = false;
151
- }
152
154
  /**
153
155
  * Clicking on a non-static current modal should close this modal, not other modals.
154
156
  * The below method is e2e-test covered in
@@ -194,20 +196,17 @@ export class VegaModal {
194
196
  *
195
197
  */
196
198
  async modal(option) {
197
- switch (option) {
198
- case 'show':
199
- this.open = true;
200
- break;
201
- case 'hide':
202
- this.open = false;
203
- break;
204
- default:
205
- break;
206
- }
199
+ methodPlaceholder(option);
207
200
  }
208
201
  render() {
209
202
  return sanitizeVegaComponent(this.renderer.render(), this.host);
210
203
  }
204
+ /**
205
+ * Returns the initial open state of the modal.
206
+ */
207
+ initOpenState() {
208
+ return new VegaModalOpenState(this.open, 'property');
209
+ }
211
210
  static get is() { return "vega-modal"; }
212
211
  static get encapsulation() { return "shadow"; }
213
212
  static get originalStyleUrls() { return {
@@ -503,7 +502,8 @@ export class VegaModal {
503
502
  }
504
503
  }; }
505
504
  static get states() { return {
506
- "currentBreakpoint": {}
505
+ "currentBreakpoint": {},
506
+ "openState": {}
507
507
  }; }
508
508
  static get events() { return [{
509
509
  "method": "vegaClose",
@@ -516,7 +516,7 @@ export class VegaModal {
516
516
  "name": "vegaVersion",
517
517
  "text": "1.0.10"
518
518
  }],
519
- "text": "An event emitter notifying the modal close event."
519
+ "text": "An event emitter notifying the modal close event. If a method is defined for this event, invoking event.preventDefault() prevents the modal from closing."
520
520
  },
521
521
  "complexType": {
522
522
  "original": "any",
@@ -610,6 +610,9 @@ export class VegaModal {
610
610
  }; }
611
611
  static get elementRef() { return "host"; }
612
612
  static get watchers() { return [{
613
+ "propName": "openState",
614
+ "methodName": "watchOpenState"
615
+ }, {
613
616
  "propName": "size",
614
617
  "methodName": "watchSize"
615
618
  }, {
@@ -0,0 +1,60 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
8
+ import { isArrayEqual } from '../../../../utils/array';
9
+ /**
10
+ * attach the extension styles to the host.
11
+ */
12
+ export class RTEExtensionStylesController extends VegaSlimmer {
13
+ /**
14
+ * Attach extension styles to the host after load.
15
+ */
16
+ attachExtensionStyles() {
17
+ this.attachStylesToHost();
18
+ }
19
+ /**
20
+ * Update extension context when extensions property changes.
21
+ *
22
+ * @param {VegaRTEExtension[]} newValue - New extensions array.
23
+ * @param {VegaRTEExtension[]} oldValue - Old extensions array.
24
+ */
25
+ handleExtensionsChange(newValue, oldValue) {
26
+ if (!isArrayEqual(newValue, oldValue, false, (a, b) => a === b ? 0 : 1)) {
27
+ this.attachStylesToHost();
28
+ }
29
+ }
30
+ /**
31
+ * Collects and attaches custom styles from all extensions to the host component.
32
+ */
33
+ attachStylesToHost() {
34
+ if (this.extensions) {
35
+ let customStyles = '';
36
+ for (const extension of this.extensions) {
37
+ const extensionStyles = extension.collectExtensionRendererStyles();
38
+ if (extensionStyles) {
39
+ customStyles += `${extensionStyles}\n`;
40
+ }
41
+ }
42
+ this.extensionStyles = customStyles;
43
+ }
44
+ }
45
+ }
46
+ __decorate([
47
+ MapToComponentField()
48
+ ], RTEExtensionStylesController.prototype, "extensions", void 0);
49
+ __decorate([
50
+ MapToComponentField()
51
+ ], RTEExtensionStylesController.prototype, "host", void 0);
52
+ __decorate([
53
+ MapToComponentField({ writable: true })
54
+ ], RTEExtensionStylesController.prototype, "extensionStyles", void 0);
55
+ __decorate([
56
+ MapToComponentMethod('componentWillLoad')
57
+ ], RTEExtensionStylesController.prototype, "attachExtensionStyles", null);
58
+ __decorate([
59
+ MapToComponentMethod('watchExtensions')
60
+ ], RTEExtensionStylesController.prototype, "handleExtensionsChange", null);
@@ -10,6 +10,7 @@ import { VegaDarkModeStyleController } from '../../../../helpers/theme/controlle
10
10
  import { TextColorToolbarButtonSlimmer } from '../../../vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer';
11
11
  import { VegaRTEContent } from '../../../vega-rich-text-editor/dto/content-state';
12
12
  import RTEBlockRendererFactory from '../../../vega-rich-text-editor/dto/renderers/renderer-factory';
13
+ import { vegaNonceManager } from '../../../../helpers/csp/vega-nonce-manager';
13
14
  export class VegaRichTextContentRenderer extends VegaSlimmer {
14
15
  constructor() {
15
16
  super();
@@ -30,7 +31,9 @@ export class VegaRichTextContentRenderer extends VegaSlimmer {
30
31
  return this.richTextContentRef;
31
32
  }
32
33
  render() {
33
- return h(Host, null, this.renderRichTextContent());
34
+ return (h(Host, null,
35
+ this.extensionStyles ? (h("style", { nonce: vegaNonceManager.nonce, class: "rte-extension-styles" }, this.extensionStyles)) : null,
36
+ this.renderRichTextContent()));
34
37
  }
35
38
  setRTEContent() {
36
39
  if (this.content && !(this.content instanceof VegaRTEContent)) {
@@ -76,6 +79,9 @@ __decorate([
76
79
  __decorate([
77
80
  MapToComponentField({ writable: true })
78
81
  ], VegaRichTextContentRenderer.prototype, "content", void 0);
82
+ __decorate([
83
+ MapToComponentField()
84
+ ], VegaRichTextContentRenderer.prototype, "extensionStyles", void 0);
79
85
  __decorate([
80
86
  MapToComponentMethod('componentWillLoad')
81
87
  ], VegaRichTextContentRenderer.prototype, "componentWillLoad", null);
@@ -12,6 +12,7 @@ import { VegaRichTextContentRenderer } from './slimmers/renderers/vega-rich-text
12
12
  import { VegaRichTextContentStateController } from './slimmers/controllers/vega-rich-text-content-state-controller';
13
13
  import { findParent } from '../../utils/ui';
14
14
  import { waitForComponentDidRender } from '../../helpers/common';
15
+ import { RTEExtensionStylesController } from './slimmers/controllers/vega-rich-text-content-extensions-styles-controller';
15
16
  /**
16
17
  * @vegaVersion 2.34.0
17
18
  */
@@ -21,12 +22,17 @@ export class VegaRichTextContent {
21
22
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer();
22
23
  this.vegaRichTextContentRenderer = new VegaRichTextContentRenderer();
23
24
  this.vegaRichTextContentStateController = new VegaRichTextContentStateController();
25
+ this.vegaRichTextContentExtensionsStylesController = new RTEExtensionStylesController();
24
26
  /**
25
27
  * Specifies whether the rich text content is editable.
26
28
  *
27
29
  * @vegaVersion 2.34.0
28
30
  */
29
31
  this.contentEditable = false;
32
+ /**
33
+ * Holds the custom styles generated by extensions.
34
+ */
35
+ this.extensionStyles = '';
30
36
  /**
31
37
  * Defines the configuration for rich text content extensions.
32
38
  * It enables support for custom nodes, ensuring that extended content is rendered correctly.
@@ -38,6 +44,9 @@ export class VegaRichTextContent {
38
44
  watchValueUpdate() {
39
45
  methodPlaceholder();
40
46
  }
47
+ watchExtensions(newValue, oldValue) {
48
+ methodPlaceholder(newValue, oldValue);
49
+ }
41
50
  /**
42
51
  * Invoke this method to focus on rich text content editable div
43
52
  *
@@ -112,7 +121,8 @@ export class VegaRichTextContent {
112
121
  }; }
113
122
  static get states() { return {
114
123
  "placeholder": {},
115
- "contentEditable": {}
124
+ "contentEditable": {},
125
+ "extensionStyles": {}
116
126
  }; }
117
127
  static get methods() { return {
118
128
  "vegaFocus": {
@@ -146,6 +156,9 @@ export class VegaRichTextContent {
146
156
  static get watchers() { return [{
147
157
  "propName": "content",
148
158
  "methodName": "watchValueUpdate"
159
+ }, {
160
+ "propName": "extensions",
161
+ "methodName": "watchExtensions"
149
162
  }]; }
150
163
  }
151
164
  __decorate([
@@ -160,3 +173,6 @@ __decorate([
160
173
  __decorate([
161
174
  InjectVegaSlimmer()
162
175
  ], VegaRichTextContent.prototype, "vegaRichTextContentStateController", void 0);
176
+ __decorate([
177
+ InjectVegaSlimmer()
178
+ ], VegaRichTextContent.prototype, "vegaRichTextContentExtensionsStylesController", void 0);
@@ -0,0 +1,61 @@
1
+ import { ModifyContentAction } from '../actions/modify-content-action.abstract';
2
+ /**
3
+ * Registry for action handler interceptors, which can register and retrieve interceptors for specific actions and targets.
4
+ */
5
+ export class ActionHandlerInterceptorRegistry {
6
+ /**
7
+ * Bind a specific strategy to a special action type of the rich text node.
8
+ *
9
+ * @param {string} actionType - The special action type or the action class name.
10
+ * @param {string} targetClass - The rich text node class name.
11
+ * @param {ActionHandlerInterceptor} strategy - The action handle strategy instance.
12
+ */
13
+ static register(actionType, targetClass, strategy) {
14
+ if (!this.registry.has(targetClass)) {
15
+ this.registry.set(targetClass, new Map());
16
+ }
17
+ /* eslint-disable @typescript-eslint/no-non-null-assertion */
18
+ if (!this.registry.get(targetClass).has(actionType)) {
19
+ this.registry.get(targetClass).set(actionType, new Set());
20
+ }
21
+ this.registry.get(targetClass).get(actionType).add(strategy);
22
+ /* eslint-enable @typescript-eslint/no-non-null-assertion */
23
+ }
24
+ /**
25
+ * Unregister the strategy for the specific action type and target class.
26
+ *
27
+ * @param {string} actionType - The special action type or the action class name.
28
+ * @param {string} targetClass - The rich text node class name.
29
+ * @param {ActionHandlerInterceptor} strategy - The action handler interceptor instance.
30
+ */
31
+ static unregister(actionType, targetClass, strategy) {
32
+ const strategyMap = this.registry.get(targetClass);
33
+ if (strategyMap) {
34
+ const strategySet = strategyMap.get(actionType);
35
+ if (strategySet) {
36
+ strategySet.delete(strategy);
37
+ }
38
+ }
39
+ }
40
+ /**
41
+ * Get the special interceptor strategy that before handle the action logic.
42
+ *
43
+ * @typedef T generic type
44
+ * @typedef target generic type
45
+ * @param {RTEActionType} action - The special action .
46
+ * @param {string} targetClass - The rich text node class name.
47
+ * @returns {Nullable<ActionHandlerInterceptor<T, target>>} - The action handler interceptor instance or null if not found.
48
+ */
49
+ static get(action, targetClass) {
50
+ const targetClassName = targetClass.constructor.name;
51
+ const actionType = action instanceof ModifyContentAction ? action.type : action.constructor.name;
52
+ const strategyMap = this.registry.get(targetClassName);
53
+ if (strategyMap) {
54
+ const set = strategyMap.get(actionType);
55
+ if (set && set.size > 0) {
56
+ return Array.from(set).find((interceptor) => interceptor.canIntercept(action, targetClass));
57
+ }
58
+ }
59
+ }
60
+ }
61
+ ActionHandlerInterceptorRegistry.registry = new Map();
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Abstract class for action handler interceptors, which can intercept actions before they are handled.
3
+ */
4
+ export class ActionHandlerInterceptor {
5
+ }
@@ -1,5 +1,6 @@
1
1
  import { LogUtility } from '../../../../utils/log';
2
2
  import { ModifyContentAction } from '../actions/modify-content-action.abstract';
3
+ import { ActionHandlerInterceptorRegistry } from './action-handle-interceptor-registry';
3
4
  /**
4
5
  * The strategies registry, contains static methods `register`, `get` and `getStrategyAndExecute`.
5
6
  */
@@ -18,6 +19,18 @@ export class ActionHandleStrategyRegistry {
18
19
  // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
19
20
  this.registry.get(targetClass).set(actionType, strategy);
20
21
  }
22
+ /**
23
+ * Unregister the strategy for the specific action type and target class.
24
+ *
25
+ * @param {string} actionType - The special action type or the action class name.
26
+ * @param {string} targetClass - The rich text node class name.
27
+ */
28
+ static unregister(actionType, targetClass) {
29
+ const strategyMap = this.registry.get(targetClass);
30
+ if (strategyMap) {
31
+ strategyMap.delete(actionType);
32
+ }
33
+ }
21
34
  /**
22
35
  * Get the special strategy that handle the action logic.
23
36
  *
@@ -43,20 +56,31 @@ export class ActionHandleStrategyRegistry {
43
56
  * @returns {R | undefined} The return value of the strategy method execute invoke result.
44
57
  */
45
58
  static executeTheStrategy(action, RTEInstance) {
46
- const actionType = action instanceof ModifyContentAction ? action.type : action.constructor.name;
47
- const strategy = ActionHandleStrategyRegistry.get(actionType, RTEInstance.constructor.name);
48
- if (strategy) {
49
- return strategy.execute(action, RTEInstance);
59
+ const interceptor = ActionHandlerInterceptorRegistry.get(action, RTEInstance);
60
+ // eslint-disable-next-line jsdoc/require-jsdoc
61
+ const executeStrategy = () => {
62
+ const actionType = action instanceof ModifyContentAction ? action.type : action.constructor.name;
63
+ const strategy = ActionHandleStrategyRegistry.get(actionType, RTEInstance.constructor.name);
64
+ if (strategy) {
65
+ action['executedFlag'] = true;
66
+ return strategy.execute(action, RTEInstance);
67
+ }
68
+ else {
69
+ LogUtility.warn(`Type ${actionType} action handle strategy is not registered in class ${RTEInstance.constructor.name}`);
70
+ }
71
+ };
72
+ if (interceptor) {
73
+ return interceptor.intercept(executeStrategy, action, RTEInstance);
50
74
  }
51
75
  else {
52
- LogUtility.error(`Type ${actionType} action handle strategy is not registered in class ${RTEInstance.constructor.name}`);
76
+ return executeStrategy();
53
77
  }
54
78
  }
55
79
  /**
56
80
  * Check if the action type can be handled by strategy for the specific RTE instance.
57
81
  *
58
82
  * @param {string} actionType - The special action type or the action class name.
59
- * @param {RTENode | RTEBlock} RTEInstance - The rich text editor node.
83
+ * @param {RTENode | RTEBlock | VegaRTEContent} RTEInstance - The rich text editor node.
60
84
  * @returns {boolean} - Whether the action type can be handled by the strategy.
61
85
  */
62
86
  static canHandle(actionType, RTEInstance) {
@@ -77,9 +77,7 @@ export class BlockDeleteNodeContentStrategy extends ActionHandleStrategy {
77
77
  if (currentBlockIndex > 0) {
78
78
  return currentBlock.parent.children[currentBlockIndex - 1];
79
79
  }
80
- else if ((currentBlock.parent['type'] === 'number-list' ||
81
- currentBlock.parent['type'] === 'bullet-list') &&
82
- currentBlockIndex === 0) {
80
+ else if (this.isRTEBlock(currentBlock.parent) && currentBlockIndex === 0) {
83
81
  return this.getPreviousBlock(currentBlock.parent);
84
82
  }
85
83
  }
@@ -130,4 +128,13 @@ export class BlockDeleteNodeContentStrategy extends ActionHandleStrategy {
130
128
  }
131
129
  }
132
130
  }
131
+ /**
132
+ * Checks if the given instance is not the root content block.
133
+ *
134
+ * @param {RTEBlock | VegaRTEContent} block - The instance to check.
135
+ * @returns {boolean} True if the block is not the root content block, false otherwise.
136
+ */
137
+ isRTEBlock(block) {
138
+ return block && block.constructor.name !== 'VegaRTEContent';
139
+ }
133
140
  }
@@ -101,7 +101,8 @@ export class BlockDeleteTextOrDecoratorNodeStrategy extends BlockDeleteNodeConte
101
101
  }
102
102
  }
103
103
  }
104
- //Remove the paragraph block if the content is empty
104
+ // Remove the paragraph block if the content is empty
105
+ // TODO: Check whether need to remove below logic because already handled the same logic in remove node strategy
105
106
  if (target.children.length === 0) {
106
107
  target.parent.apply(new RemoveChildrenAction(target));
107
108
  }
@@ -0,0 +1,28 @@
1
+ import { InsertChildrenAfterAction } from '../../actions/insert-children-after-block';
2
+ import { InsertChildrenBeforeAction } from '../../actions/insert-children-before-block';
3
+ import { SplitBlockWithNodeAction } from '../../actions/split-block-with-node-action';
4
+ import { ActionHandleStrategy } from '../action-handle-strategy.abstract';
5
+ /**
6
+ * Strategy to handle the paste content into function block.
7
+ */
8
+ export class PasteContentStrategy extends ActionHandleStrategy {
9
+ /**
10
+ * @inheritDoc
11
+ */
12
+ handleAction(action, target) {
13
+ if (target.parent) {
14
+ const { blocksToBeInserted, startNode, startOffset } = action;
15
+ let futureFocusBlock = target;
16
+ if (startNode === target.children[0] && startOffset === 0) {
17
+ target.parent.apply(new InsertChildrenBeforeAction(target, ...blocksToBeInserted));
18
+ }
19
+ else {
20
+ const breakAction = new SplitBlockWithNodeAction(startNode, startOffset);
21
+ target.apply(breakAction);
22
+ target.parent.apply(new InsertChildrenAfterAction(target, ...blocksToBeInserted));
23
+ futureFocusBlock = breakAction.newBlock;
24
+ }
25
+ action.futureFocusBlock = futureFocusBlock;
26
+ }
27
+ }
28
+ }
@@ -29,6 +29,7 @@ export var ModifyContentActionType;
29
29
  ModifyContentActionType["UPDATE_CURSOR_POSITION"] = "UPDATE_CURSOR_POSITION";
30
30
  ModifyContentActionType["INSERT_TEXT_TO_DECORATOR_NODE"] = "INSERT_TEXT_TO_DECORATOR_NODE";
31
31
  ModifyContentActionType["INSERT_NODE_TO_NEAREST_ROOT"] = "INSERT_NODE_TO_NEAREST_ROOT";
32
+ ModifyContentActionType["PASTE_CONTENT"] = "PASTE_CONTENT";
32
33
  })(ModifyContentActionType || (ModifyContentActionType = {}));
33
34
  /**
34
35
  * Abstract class for update node content, delete node, insert node
@@ -0,0 +1,17 @@
1
+ import { ModifyContentAction, ModifyContentActionType } from './modify-content-action.abstract';
2
+ /**
3
+ * Action to paste new content into current block.
4
+ *
5
+ * @example functionBlock.apply(new PasteContentAction(blocksToBeInserted, startNode, startOffset))
6
+ * @example host.value.apply(new PasteContentAction(blocksToBeInserted, startNode, startOffset))
7
+ */
8
+ export class PasteContentAction extends ModifyContentAction {
9
+ constructor(blocksToBeInserted, startNode, startOffset, rteRange) {
10
+ super();
11
+ this.type = ModifyContentActionType.PASTE_CONTENT;
12
+ this.blocksToBeInserted = blocksToBeInserted;
13
+ this.startNode = startNode;
14
+ this.startOffset = startOffset;
15
+ this.rteRange = rteRange;
16
+ }
17
+ }
@@ -14,10 +14,15 @@ export class UpdateCursorPositionAction extends ModifyContentAction {
14
14
  */
15
15
  constructor(nextFocusNode, offset, immediatelyRun = false) {
16
16
  super();
17
+ this.isFlushable = true;
17
18
  this.type = ModifyContentActionType.UPDATE_CURSOR_POSITION;
18
19
  this.immediatelyRun = false;
19
20
  this.nextFocusNode = nextFocusNode;
20
21
  this.offset = offset;
21
22
  this.immediatelyRun = immediatelyRun;
23
+ // Don't flush changes if we want to immediately run the cursor update. Usually the current value is the latest value.
24
+ if (this.immediatelyRun) {
25
+ this.isFlushable = false;
26
+ }
22
27
  }
23
28
  }
@@ -0,0 +1,87 @@
1
+ import { isNonNullable } from '../../../../types/type-guard';
2
+ import { camelToDashCase } from '../../../../utils/string';
3
+ import { RTEBlock } from '../blocks/block.abstract';
4
+ import { BlockAnnotation } from './block-annotation.abstract';
5
+ import { CustomStyleAnnotation } from './custom-style-annotation';
6
+ import { NodeAnnotation } from './node-annotation.abstract';
7
+ /**
8
+ * Class to handle the style representation of annotations for RTE blocks and nodes.
9
+ */
10
+ export class RTEAnnotationStyle {
11
+ constructor(dto) {
12
+ this.dtoType = dto instanceof RTEBlock ? 'block' : 'node';
13
+ this.annotationMap = dto.annotationMap;
14
+ }
15
+ /**
16
+ * Convert an AnnotationStyle object to a CSS text string.
17
+ *
18
+ * @param {RTERenderContext} options - Rendering context options.
19
+ * @param {string[]} canMergeKeyList - List of style keys that can be merged by concatenation.
20
+ * @param {Nullable<AnnotationStyle>} annotationStyle - The annotation style object, if null, get from toJSON().
21
+ * @returns {string} A string representing the CSS text.
22
+ */
23
+ toCssText(options = { standalone: false }, canMergeKeyList, annotationStyle) {
24
+ annotationStyle = annotationStyle ? annotationStyle : this.toJSON(options, canMergeKeyList);
25
+ return Object.entries(Object.assign({}, annotationStyle))
26
+ .map(([key, value]) => `${camelToDashCase(key)}: ${value};`)
27
+ .join('');
28
+ }
29
+ /**
30
+ * Convert the annotation map to a JSON representation.
31
+ *
32
+ * @param {RTERenderContext} options - Rendering context options.
33
+ * @param {string[]} canMergeKeyList - List of style keys that can be merged by concatenation.
34
+ * @returns {AnnotationStyle} - The JSON representation of the annotation styles.
35
+ */
36
+ toJSON(options = { standalone: false }, canMergeKeyList) {
37
+ const styles = Array.from(this.annotationMap.values())
38
+ .filter((annotation) => this.filterAnnotation(annotation) || annotation instanceof CustomStyleAnnotation)
39
+ .map((annotation) => annotation.renderStyle(options))
40
+ .filter(isNonNullable);
41
+ if (canMergeKeyList && canMergeKeyList.length > 0) {
42
+ return this.mergeAnnotationStyles(styles, canMergeKeyList);
43
+ }
44
+ else {
45
+ return styles.reduce((current, obj) => (Object.assign(Object.assign({}, current), obj)), {});
46
+ }
47
+ }
48
+ /**
49
+ * Filter annotations based on whether they are block or node annotations.
50
+ *
51
+ * @param {RTENodeAnnotationMapValue | RTEBlockAnnotationMapValue} annotation - The annotation to filter.
52
+ * @returns {boolean} - True if the annotation matches the DTO type, false otherwise.
53
+ */
54
+ filterAnnotation(annotation) {
55
+ return this.dtoType === 'block'
56
+ ? annotation instanceof BlockAnnotation
57
+ : annotation instanceof NodeAnnotation;
58
+ }
59
+ /**
60
+ * Merge an array of annotation styles into a single style object.
61
+ * e.g.,
62
+ * { textDecoration: 'underline', textDecoration: 'line-through' }
63
+ * -> { textDecoration: 'underline line-through' }
64
+ *
65
+ * @param {AnnotationStyle[]} styles - Array of annotation style objects to merge.
66
+ * @param {string[]} canMergeKeyList - List of style keys that can be merged by concatenation.
67
+ * @returns {AnnotationStyle} - The merged annotation style object.
68
+ */
69
+ mergeAnnotationStyles(styles, canMergeKeyList) {
70
+ const merged = {};
71
+ for (const style of styles) {
72
+ for (const key in style) {
73
+ const value = style[key];
74
+ const existing = merged[key];
75
+ if (typeof existing === 'string' &&
76
+ typeof value === 'string' &&
77
+ canMergeKeyList.includes(key)) {
78
+ merged[key] = Array.from(new Set(`${existing} ${value}`.split(/\s+/).filter(Boolean))).join(' ');
79
+ }
80
+ else {
81
+ merged[key] = value;
82
+ }
83
+ }
84
+ }
85
+ return merged;
86
+ }
87
+ }
@@ -9,12 +9,13 @@ import { HorizontalAlignmentAnnotation } from '../annotations/horizontal-alignme
9
9
  import { IndentAnnotation } from '../annotations/indent-annotation';
10
10
  import { ActionHandleStrategyRegistry } from '../action-handle-strategies/action-handle-strategy-registry';
11
11
  import { isNonNullable } from '../../../../types/type-guard';
12
- import { camelToDashCase } from '../../../../utils/string';
13
12
  import { CustomAttributeAnnotation } from '../annotations/custom-attribute-annotation';
14
13
  import { CustomClassAnnotation } from '../annotations/custom-class-annotation';
15
14
  import { CommonAnnotation, CommonAnnotationTypeEnum } from '../annotations/common-annotation.abstract';
16
15
  import { CustomStyleAnnotation } from '../annotations/custom-style-annotation';
17
16
  import { InternalWrapperAnnotation } from '../annotations/internal-wrapper-annotation';
17
+ import RTEDTOClassManager from '../../../../helpers/rte-manager/dto-class-manager';
18
+ import { RTEAnnotationStyle } from '../annotations/annotation-style';
18
19
  /**
19
20
  * Abstract class for block
20
21
  */
@@ -32,6 +33,26 @@ export class RTEBlock {
32
33
  static from(json, options) {
33
34
  throw new Error(`[Vega] ${this.constructor.name}.from(${JSON.stringify(json)}, ${options}) is not implemented. Please implement this method in the subclass.`);
34
35
  }
36
+ /**
37
+ * Generates block children from an array of VegaRTEContentBlock.
38
+ *
39
+ * @param {VegaRTEContentBlock[]} blockArray - The array of VegaRTEContentBlock to generate children from.
40
+ * @param {VegaRTETransformOptions} [options] - Optional transformation options.
41
+ * @param {VegaRTEContent | RTEBlock} [parentBlock] - Optional parent block.
42
+ * @returns {RTEBlock[]} An array of generated RTEBlock children.
43
+ */
44
+ static generateBlockChildren(blockArray, options, parentBlock) {
45
+ return blockArray
46
+ .map((child) => {
47
+ const BlockClass = RTEDTOClassManager.getRTEBlockClass(child.type);
48
+ if (BlockClass) {
49
+ const block = BlockClass.from(child, options);
50
+ block.parent = parentBlock;
51
+ return block;
52
+ }
53
+ })
54
+ .filter(isNonNullable);
55
+ }
35
56
  /**
36
57
  * The function `createAnnotationEntity` creates a block annotation entity based on the provided type
37
58
  * and value.
@@ -145,11 +166,9 @@ export class RTEBlock {
145
166
  * @returns {AnnotationStyle} - Annotation styles
146
167
  */
147
168
  getStyles(options = { standalone: false }) {
148
- return Object.assign(Object.assign({}, Array.from(this.annotationMap.values())
149
- .filter((annotation) => annotation instanceof BlockAnnotation || annotation instanceof CustomStyleAnnotation)
150
- .map((annotation) => annotation.renderStyle(options))
151
- .filter(isNonNullable)
152
- .reduce((current, obj) => (Object.assign(Object.assign({}, current), obj)), {})), (this.shouldRenderAsInternalWrapper() ? { display: 'contents' } : {}));
169
+ const rteAnnotationStyle = new RTEAnnotationStyle(this);
170
+ const blockAnnotationStyle = rteAnnotationStyle.toJSON(options);
171
+ return Object.assign(Object.assign({}, blockAnnotationStyle), (this.shouldRenderAsInternalWrapper() ? { display: 'contents' } : {}));
153
172
  }
154
173
  /**
155
174
  * Get classes from annotations
@@ -180,9 +199,8 @@ export class RTEBlock {
180
199
  */
181
200
  generateAttributeString(...attrs) {
182
201
  var _a;
183
- const styles = Object.entries(Object.assign({}, this.getStyles({ standalone: true })))
184
- .map(([key, value]) => `${camelToDashCase(key)}: ${value};`)
185
- .join('');
202
+ const blockAnnotationStyle = new RTEAnnotationStyle(this);
203
+ const styles = blockAnnotationStyle.toCssText({ standalone: true });
186
204
  const customClassAnnotation = this.annotationMap.get(CommonAnnotationTypeEnum.CUSTOM_CLASS);
187
205
  const customAttributeString = ((_a = this.getCustomAttributesAnnotation()) === null || _a === void 0 ? void 0 : _a.toString(attrs)) || [];
188
206
  const attributes = [