@heartlandone/vega 2.71.0 → 2.72.0-RTE-table-preview

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 (694) hide show
  1. package/dist/cjs/{app-globals-837be7a6.js → app-globals-4d077e56.js} +19 -17
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-f8840f1b.js → child-nodes-event-prevent-slimmer-871855df.js} +1 -1
  3. package/dist/cjs/{code-block-bb4cbafa.js → code-block-bf3642ef.js} +29 -67
  4. package/dist/cjs/column-operation-1cac8386.js +1325 -0
  5. package/dist/cjs/{component-value-history-controller-slimmer.abstract-cf7b4bda.js → component-value-history-controller-slimmer.abstract-ebecb74a.js} +28 -7
  6. package/dist/cjs/{date-required-rule-4e1f84fd.js → date-required-rule-99cca681.js} +3 -3
  7. package/dist/cjs/{design-token-00fe8d2f.js → design-token-ac429fe9.js} +6 -7
  8. package/dist/cjs/{dom-node-subject-observer-factory-f040608b.js → dom-node-subject-observer-factory-1c8f7880.js} +5 -1
  9. package/dist/cjs/{dto-renderer-manager-c917dade.js → dto-renderer-manager-04428a77.js} +6 -4
  10. package/dist/cjs/{element-appender-slimmer-f8e89f37.js → element-appender-slimmer-1b062054.js} +52 -14
  11. package/dist/cjs/{event-emit-slimmer-7afe8d78.js → event-emit-slimmer-f7255138.js} +2 -2
  12. package/dist/cjs/{form-field-controller-slimmer-f865d397.js → form-field-controller-slimmer-57525f26.js} +3 -3
  13. package/dist/cjs/{image-annotation-action-8843adbf.js → image-annotation-action-7fa5d30d.js} +3 -3
  14. package/dist/cjs/index-58ea899e.js +12 -8
  15. package/dist/cjs/{index-4b896e76.js → index-c7fbf32b.js} +2 -2
  16. package/dist/cjs/index.cjs.js +37 -36
  17. package/dist/cjs/{inject-keyboard-manager-13c66257.js → inject-keyboard-manager-a6101379.js} +1 -1
  18. package/dist/cjs/{internal-vega-event-manager-45d451de.js → internal-vega-event-manager-0e1ba774.js} +3 -2
  19. package/dist/cjs/{keyboard-manager-af0d08a6.js → keyboard-manager-d8adb0ed.js} +1 -1
  20. package/dist/cjs/{keyboard-manager-slimmer-62f072cd.js → keyboard-manager-slimmer-15e65357.js} +1 -1
  21. package/dist/cjs/{language-extension-99c6fb40.js → language-extension-6ad0b5a0.js} +4 -4
  22. package/dist/cjs/loader.cjs.js +15 -13
  23. package/dist/cjs/month-view-generator-706c5477.js +102 -0
  24. package/dist/cjs/{public-rules-759c745b.js → public-rules-76bcf49c.js} +15 -15
  25. package/dist/cjs/{range-0b597850.js → range-449bcdd0.js} +1 -1
  26. package/dist/cjs/{responsive-format-facade-1d9c13a9.js → responsive-format-facade-e61c7f7e.js} +4 -4
  27. package/dist/cjs/{rich-text-editor-required-rule-92d0640e.js → rich-text-editor-required-rule-40216fee.js} +1 -1
  28. package/dist/cjs/{string-format-strategy.abstract-07a95352.js → string-format-strategy.abstract-a8264fca.js} +1 -1
  29. package/dist/cjs/{string-input-formatter-slimmer-8236b5e1.js → string-input-formatter-slimmer-4332d1c7.js} +4 -4
  30. package/dist/cjs/{string-mask-strategy-6bdad95e.js → string-mask-strategy-4e7d3780.js} +2 -2
  31. package/dist/cjs/{style-formatter-1daa8371.js → style-formatter-e2a0ad27.js} +2 -2
  32. package/dist/cjs/{sub-state-notify-slimmer-78682046.js → sub-state-notify-slimmer-9fe1ab65.js} +2 -2
  33. package/dist/cjs/{sub-state-observer-slimmer-73aecfff.js → sub-state-observer-slimmer-2f6f4d28.js} +2 -2
  34. package/dist/cjs/{function-extension-28a4d781.js → table-extension-1f162c4c.js} +1950 -20
  35. package/dist/cjs/{time-required-rule-ccf178e7.js → time-required-rule-9d39a620.js} +3 -3
  36. package/dist/cjs/{type-guard-f12b5bae.js → type-guard-69d2cf01.js} +1224 -1
  37. package/dist/cjs/{valid-credit-card-number-rule-ce5c9147.js → valid-credit-card-number-rule-9f40d1d9.js} +1 -1
  38. package/dist/cjs/vega-accordion.cjs.entry.js +13 -12
  39. package/dist/cjs/vega-app-header-button.cjs.entry.js +18 -17
  40. package/dist/cjs/vega-banner.cjs.entry.js +3 -3
  41. package/dist/cjs/vega-box.cjs.entry.js +17 -16
  42. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  43. package/dist/cjs/vega-button-circle.cjs.entry.js +17 -16
  44. package/dist/cjs/vega-button-group_2.cjs.entry.js +60 -10
  45. package/dist/cjs/vega-button-link.cjs.entry.js +5 -5
  46. package/dist/cjs/vega-button.cjs.entry.js +17 -15
  47. package/dist/cjs/vega-calendar_4.cjs.entry.js +87 -909
  48. package/dist/cjs/vega-card.cjs.entry.js +16 -15
  49. package/dist/cjs/vega-carousel.cjs.entry.js +16 -14
  50. package/dist/cjs/vega-checkbox_2.cjs.entry.js +7 -7
  51. package/dist/cjs/vega-chip.cjs.entry.js +18 -17
  52. package/dist/cjs/vega-code-block.cjs.entry.js +13 -13
  53. package/dist/cjs/vega-color-picker.cjs.entry.js +6 -6
  54. package/dist/cjs/vega-combo-box.cjs.entry.js +13 -13
  55. package/dist/cjs/vega-date-picker_2.cjs.entry.js +1759 -1568
  56. package/dist/cjs/vega-dialog_2.cjs.entry.js +22 -21
  57. package/dist/cjs/vega-divider.cjs.entry.js +12 -11
  58. package/dist/cjs/vega-dropdown_5.cjs.entry.js +21 -31
  59. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  60. package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
  61. package/dist/cjs/vega-file-uploader.cjs.entry.js +6 -6
  62. package/dist/cjs/vega-flag-icon.cjs.entry.js +12 -11
  63. package/dist/cjs/vega-flex.cjs.entry.js +17 -16
  64. package/dist/cjs/vega-font.cjs.entry.js +16 -15
  65. package/dist/cjs/vega-form.cjs.entry.js +9 -9
  66. package/dist/cjs/vega-grid.cjs.entry.js +16 -15
  67. package/dist/cjs/vega-icon.cjs.entry.js +16 -15
  68. package/dist/cjs/vega-image-uploader.cjs.entry.js +18 -16
  69. package/dist/cjs/vega-input-credit-card.cjs.entry.js +14 -14
  70. package/dist/cjs/vega-input-numeric.cjs.entry.js +13 -13
  71. package/dist/cjs/vega-input-passcode.cjs.entry.js +12 -12
  72. package/dist/cjs/vega-input-phone-number.cjs.entry.js +19 -18
  73. package/dist/cjs/vega-input-range.cjs.entry.js +7 -7
  74. package/dist/cjs/vega-input-select.cjs.entry.js +16 -15
  75. package/dist/cjs/vega-input.cjs.entry.js +11 -11
  76. package/dist/cjs/{vega-internal-event-id-6d4a2c53.js → vega-internal-event-id-a5ef414b.js} +6 -4
  77. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  78. package/dist/cjs/vega-left-nav_5.cjs.entry.js +20 -19
  79. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +13 -11
  80. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  81. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +4 -4
  82. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
  83. package/dist/cjs/vega-pagination.cjs.entry.js +15 -13
  84. package/dist/cjs/vega-popover_2.cjs.entry.js +24 -23
  85. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +905 -0
  86. package/dist/cjs/vega-radio_2.cjs.entry.js +10 -10
  87. package/dist/cjs/vega-rich-text-content.cjs.entry.js +9 -8
  88. package/dist/cjs/{vega-rich-text-editor_4.cjs.entry.js → vega-rich-text-editor_5.cjs.entry.js} +766 -279
  89. package/dist/cjs/vega-rich-text-table-selection-widget.cjs.entry.js +184 -0
  90. package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
  91. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +18 -16
  92. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +8 -8
  93. package/dist/cjs/vega-sidenav_3.cjs.entry.js +18 -16
  94. package/dist/cjs/vega-signature-capture.cjs.entry.js +15 -14
  95. package/dist/cjs/vega-stepper.cjs.entry.js +7 -7
  96. package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
  97. package/dist/cjs/vega-table_11.cjs.entry.js +39 -38
  98. package/dist/cjs/vega-textarea.cjs.entry.js +7 -7
  99. package/dist/cjs/vega-time-picker_2.cjs.entry.js +40 -39
  100. package/dist/cjs/vega-toggle-switch.cjs.entry.js +6 -6
  101. package/dist/cjs/vega-tooltip_2.cjs.entry.js +16 -14
  102. package/dist/cjs/vega.cjs.js +15 -13
  103. package/dist/collection/collection-manifest.json +23 -13
  104. package/dist/collection/components/vega-button/vega-button.css +4 -0
  105. package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/controllers/vega-button-group-item-sub-state-controller.js +7 -0
  106. package/dist/collection/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.js +25 -2
  107. package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +31 -2
  108. package/dist/collection/components/vega-button-group/vega-button-group.js +37 -0
  109. package/dist/collection/components/vega-button-link/vega-button-link.css +4 -0
  110. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +149 -0
  111. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-format-controller.js +3 -1
  112. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-keyboard-controller.js +1 -1
  113. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-value-controller.js +10 -26
  114. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +107 -445
  115. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-input-renderer-base.abstract.js +5 -1
  116. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-range-input-renderer.js +24 -17
  117. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.js +15 -20
  118. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-single-input-renderer.js +6 -17
  119. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/constants.js +14 -0
  120. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/dto/calendar-selection.js +126 -0
  121. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-allow-repick-controller.js +70 -0
  122. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-current-period-controller.js +204 -0
  123. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-min-max-date-controller.js +56 -0
  124. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-selection-controller.js +191 -0
  125. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-state-base.abstract.js +54 -0
  126. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-today-controller.js +37 -0
  127. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.js +76 -0
  128. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +192 -0
  129. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +168 -0
  130. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +669 -278
  131. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +667 -3
  132. package/dist/collection/components/vega-date-picker/vega-date-picker.css +0 -11
  133. package/dist/collection/components/vega-date-picker/vega-date-picker.js +23 -40
  134. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +3 -15
  135. package/dist/collection/components/vega-input-phone-number/slimmers/renderers/phone-number-input-renderer.js +1 -1
  136. package/dist/collection/components/vega-input-select/vega-input-select.js +1 -1
  137. package/dist/collection/components/vega-popover/vega-popover.js +14 -4
  138. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.js +75 -0
  139. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-direction-controller.js +88 -0
  140. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-step-controller.js +153 -0
  141. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.js +125 -0
  142. package/dist/collection/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-render-mode-controller.js +40 -0
  143. package/dist/collection/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.js +94 -0
  144. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/slimmers/controllers/vega-progress-tracker-step-state-controller.js +43 -0
  145. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.css +79 -0
  146. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.js +84 -0
  147. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +69 -153
  148. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.js +88 -85
  149. package/dist/collection/components/vega-rich-text-editor/dto/annotations/text-style-annotation.js +11 -63
  150. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +15 -1
  151. package/dist/collection/components/vega-rich-text-editor/extensions/base-extension-renderer.js +2 -1
  152. package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +8 -0
  153. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-cell-children-remove-interceptor.js +42 -0
  154. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-cell-content-delete-interceptor.js +25 -0
  155. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-row-insert-interceptor.js +23 -0
  156. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-block-strategy.js +25 -0
  157. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-column-strategy.js +57 -0
  158. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-row-strategy.js +57 -0
  159. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-block-strategy.js +54 -0
  160. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-column-strategy.js +42 -0
  161. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-row-strategy.js +117 -0
  162. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/select-table-column-strategy.js +22 -0
  163. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/table-column-strategy.abstract.js +19 -0
  164. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/toggle-header-row-strategy.js +133 -0
  165. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/toggle-header-table-column-strategy.js +99 -0
  166. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/delete-table-block-action.js +13 -0
  167. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/delete-table-column-action.js +13 -0
  168. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/delete-table-row-action.js +18 -0
  169. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/insert-table-block-action.js +13 -0
  170. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/insert-table-column-action.js +19 -0
  171. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/insert-table-row-action.js +26 -0
  172. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/select-table-column-action.js +13 -0
  173. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/table-annotations-action.js +18 -0
  174. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/table-caption-action.js +13 -0
  175. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/table-cell-annotations-action.js +18 -0
  176. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/toggle-header-row-action.js +13 -0
  177. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/toggle-header-table-column-action.js +15 -0
  178. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-annotation.js +91 -0
  179. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-caption-annotation.js +57 -0
  180. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-cell-annotation.js +120 -0
  181. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-head-cell-annotation.js +40 -0
  182. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-block.js +117 -0
  183. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-body-block.js +55 -0
  184. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-caption-block.js +65 -0
  185. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-cell-block.js +63 -0
  186. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-head-block.js +59 -0
  187. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-head-cell-block.js +46 -0
  188. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-row-block.js +59 -0
  189. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-body-renderer.js +15 -0
  190. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.js +22 -0
  191. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-cell-renderer.js +74 -0
  192. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.js +99 -0
  193. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-head-cell-renderer.js +12 -0
  194. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-head-renderer.js +15 -0
  195. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +103 -0
  196. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-row-renderer.js +15 -0
  197. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.js +145 -0
  198. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/caption-operation.js +78 -0
  199. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/column-operation.js +109 -0
  200. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/row-operation.js +132 -0
  201. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/setting-event-handler.abstract.js +44 -0
  202. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +118 -0
  203. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-icon.js +3 -0
  204. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-selection.js +348 -0
  205. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.js +229 -0
  206. package/dist/collection/components/vega-rich-text-editor/extensions/table/utils/utils.js +102 -0
  207. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/slimmers/controllers/selection-widget-keyboard-controller.js +36 -0
  208. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/slimmers/renderers/selection-widget-renderer.js +83 -0
  209. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/vega-rich-text-table-selection-widget.css +41 -0
  210. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/vega-rich-text-table-selection-widget.js +80 -0
  211. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/assets/icon.js +20 -0
  212. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/caption-button-slimmer.js +27 -0
  213. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/cell-properties-button-slimmer.js +26 -0
  214. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.js +86 -0
  215. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.js +101 -0
  216. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-properties-button-slimmer.js +26 -0
  217. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-setting-button-slimmer.abstract.js +75 -0
  218. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/vega-rich-text-table-setting-renderer.js +50 -0
  219. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.css +20 -0
  220. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.js +166 -0
  221. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/insert-token-node-strategy.js +5 -1
  222. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.js +12 -1
  223. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.js +16 -10
  224. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-node.js +1 -1
  225. package/dist/collection/components/vega-rich-text-editor/public-api.js +1 -0
  226. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +20 -0
  227. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +23 -2
  228. package/dist/collection/components/vega-rich-text-editor/test/dto/annotation-style.test.js +2 -1
  229. package/dist/collection/components/vega-rich-text-editor/test/dto/annotations.test.js +9 -0
  230. package/dist/collection/components/vega-rich-text-editor/test/dto/blocks/text-block.test.js +1 -1
  231. package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +15 -15
  232. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/caption-operation.test.js +99 -0
  233. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-annotation.test.js +89 -0
  234. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-caption-annotations.test.js +79 -0
  235. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-cell-annotation.test.js +128 -0
  236. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-dto.test.js +517 -0
  237. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-test-utils.js +172 -0
  238. package/dist/collection/components/vega-rich-text-editor/test/spec-utils.js +5 -2
  239. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.css +4 -0
  240. package/dist/collection/constants/regex.js +1 -0
  241. package/dist/collection/constants/ui.js +3 -0
  242. package/dist/collection/global/scripts/before-vega-load.js +2 -0
  243. package/dist/collection/helpers/calendar/calendar-date.js +273 -1
  244. package/dist/collection/helpers/calendar/calendar-period/calendar-period.abstract.js +9 -0
  245. package/dist/collection/helpers/calendar/calendar-period/month-period.js +16 -4
  246. package/dist/collection/helpers/calendar/test/calendar-date.test.js +73 -0
  247. package/dist/collection/helpers/calendar/test/calendar-period/day-period.test.js +9 -0
  248. package/dist/collection/helpers/calendar/test/calendar-period/month-period.test.js +41 -0
  249. package/dist/collection/helpers/calendar/test/calendar-period/week-period.test.js +11 -0
  250. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +3 -2
  251. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +3 -1
  252. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +5 -2
  253. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +2 -1
  254. package/dist/collection/helpers/slimmers/position-calculation/position-calculation-controller.js +7 -0
  255. package/dist/collection/helpers/ui/element-appender.js +35 -5
  256. package/dist/collection/types/type-guard.js +10 -0
  257. package/dist/collection/utils/date.js +14 -3
  258. package/dist/collection/utils/e2e-utils.js +8 -2
  259. package/dist/collection/utils/spec-utils.js +4 -3
  260. package/dist/collection/utils/test/date.test.js +2 -0
  261. package/dist/esm/{app-globals-fd4b7d97.js → app-globals-e7a8d0cc.js} +9 -7
  262. package/dist/esm/{child-nodes-event-prevent-slimmer-76331524.js → child-nodes-event-prevent-slimmer-9ae34332.js} +1 -1
  263. package/dist/esm/{code-block-ecb4491b.js → code-block-3d3a9030.js} +30 -68
  264. package/dist/esm/column-operation-4a93bf52.js +1300 -0
  265. package/dist/esm/{component-value-history-controller-slimmer.abstract-5d618b88.js → component-value-history-controller-slimmer.abstract-d84e7bab.js} +28 -7
  266. package/dist/esm/{date-required-rule-8944f3bf.js → date-required-rule-a9980386.js} +1 -1
  267. package/dist/esm/{design-token-2d77e8f5.js → design-token-1575f6d9.js} +4 -5
  268. package/dist/esm/{dom-node-subject-observer-factory-dca87b70.js → dom-node-subject-observer-factory-f81f215f.js} +4 -2
  269. package/dist/esm/{dto-renderer-manager-d862ae78.js → dto-renderer-manager-23784148.js} +5 -5
  270. package/dist/esm/{element-appender-slimmer-6791c332.js → element-appender-slimmer-1a50e184.js} +51 -13
  271. package/dist/esm/{event-emit-slimmer-4e28e9f8.js → event-emit-slimmer-966716fa.js} +2 -2
  272. package/dist/esm/{form-field-controller-slimmer-bf071b75.js → form-field-controller-slimmer-0020997d.js} +4 -4
  273. package/dist/esm/{image-annotation-action-d0af138c.js → image-annotation-action-dba16587.js} +3 -3
  274. package/dist/esm/index-090d31ca.js +12 -8
  275. package/dist/esm/{index-c943d263.js → index-d72e7fb3.js} +2 -2
  276. package/dist/esm/index.js +21 -21
  277. package/dist/esm/{inject-keyboard-manager-ffd351b9.js → inject-keyboard-manager-9241968c.js} +1 -1
  278. package/dist/esm/{internal-vega-event-manager-516aa721.js → internal-vega-event-manager-4f51b17c.js} +3 -2
  279. package/dist/esm/{keyboard-manager-5d8f3582.js → keyboard-manager-89acac79.js} +1 -1
  280. package/dist/esm/{keyboard-manager-slimmer-f39214e4.js → keyboard-manager-slimmer-e303cb7d.js} +1 -1
  281. package/dist/esm/{language-extension-8f51f5ff.js → language-extension-710fe56d.js} +2 -2
  282. package/dist/esm/loader.js +17 -15
  283. package/dist/esm/month-view-generator-4bec99fd.js +98 -0
  284. package/dist/esm/{page-resize-observer-slimmer-0bf7fbf3.js → page-resize-observer-slimmer-8744cb44.js} +1 -1
  285. package/dist/esm/polyfills/core-js.js +0 -0
  286. package/dist/esm/polyfills/dom.js +0 -0
  287. package/dist/esm/polyfills/es5-html-element.js +0 -0
  288. package/dist/esm/polyfills/index.js +0 -0
  289. package/dist/esm/polyfills/system.js +0 -0
  290. package/dist/esm/{public-rules-d10e76f4.js → public-rules-522ba4b1.js} +15 -15
  291. package/dist/esm/{range-f7b9e2fb.js → range-cdd85d30.js} +1 -1
  292. package/dist/esm/{responsive-format-facade-267935ae.js → responsive-format-facade-405f90d2.js} +6 -6
  293. package/dist/esm/{rich-text-editor-required-rule-774b822b.js → rich-text-editor-required-rule-7d2d9615.js} +1 -1
  294. package/dist/esm/{string-format-strategy.abstract-452f4398.js → string-format-strategy.abstract-75540c16.js} +1 -1
  295. package/dist/esm/{string-input-formatter-slimmer-3acd240c.js → string-input-formatter-slimmer-96ccc8cf.js} +4 -4
  296. package/dist/esm/{string-mask-strategy-6232a1c1.js → string-mask-strategy-4a18ed1a.js} +2 -2
  297. package/dist/esm/{style-formatter-3f88c491.js → style-formatter-52cd20f7.js} +2 -2
  298. package/dist/esm/{sub-state-notify-slimmer-56380f02.js → sub-state-notify-slimmer-97953a87.js} +2 -2
  299. package/dist/esm/{sub-state-observer-slimmer-3504e2f2.js → sub-state-observer-slimmer-3f2b954f.js} +2 -2
  300. package/dist/esm/{function-extension-8d39db56.js → table-extension-164b0d6c.js} +1952 -23
  301. package/dist/esm/{time-required-rule-a01163b5.js → time-required-rule-8ec1faf5.js} +1 -1
  302. package/dist/esm/{type-guard-12f7654b.js → type-guard-b48aec98.js} +1204 -2
  303. package/dist/esm/{ui-8424715a.js → ui-28fd4193.js} +1 -1
  304. package/dist/esm/{valid-credit-card-number-rule-81443274.js → valid-credit-card-number-rule-96eaf9b1.js} +1 -1
  305. package/dist/esm/vega-accordion.entry.js +15 -14
  306. package/dist/esm/vega-app-header-button.entry.js +20 -19
  307. package/dist/esm/vega-banner.entry.js +3 -3
  308. package/dist/esm/vega-box.entry.js +19 -18
  309. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  310. package/dist/esm/vega-button-circle.entry.js +19 -18
  311. package/dist/esm/vega-button-group_2.entry.js +60 -10
  312. package/dist/esm/vega-button-link.entry.js +5 -5
  313. package/dist/esm/vega-button.entry.js +19 -17
  314. package/dist/esm/vega-calendar_4.entry.js +46 -868
  315. package/dist/esm/vega-card.entry.js +18 -17
  316. package/dist/esm/vega-carousel.entry.js +18 -16
  317. package/dist/esm/vega-checkbox_2.entry.js +9 -9
  318. package/dist/esm/vega-chip.entry.js +20 -19
  319. package/dist/esm/vega-code-block.entry.js +14 -14
  320. package/dist/esm/vega-color-picker.entry.js +8 -8
  321. package/dist/esm/vega-combo-box.entry.js +15 -15
  322. package/dist/esm/vega-date-picker_2.entry.js +1746 -1555
  323. package/dist/esm/vega-dialog_2.entry.js +18 -17
  324. package/dist/esm/vega-divider.entry.js +14 -13
  325. package/dist/esm/vega-dropdown_5.entry.js +21 -31
  326. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  327. package/dist/esm/vega-field-label.entry.js +3 -3
  328. package/dist/esm/vega-file-uploader.entry.js +8 -8
  329. package/dist/esm/vega-flag-icon.entry.js +14 -13
  330. package/dist/esm/vega-flex.entry.js +19 -18
  331. package/dist/esm/vega-font.entry.js +18 -17
  332. package/dist/esm/vega-form.entry.js +11 -11
  333. package/dist/esm/vega-grid.entry.js +18 -17
  334. package/dist/esm/vega-icon.entry.js +18 -17
  335. package/dist/esm/vega-image-uploader.entry.js +19 -17
  336. package/dist/esm/vega-input-credit-card.entry.js +16 -16
  337. package/dist/esm/vega-input-numeric.entry.js +15 -15
  338. package/dist/esm/vega-input-passcode.entry.js +14 -14
  339. package/dist/esm/vega-input-phone-number.entry.js +18 -17
  340. package/dist/esm/vega-input-range.entry.js +9 -9
  341. package/dist/esm/vega-input-select.entry.js +17 -16
  342. package/dist/esm/vega-input.entry.js +13 -13
  343. package/dist/esm/{vega-internal-event-id-5c3e5f7f.js → vega-internal-event-id-54ce7562.js} +4 -3
  344. package/dist/esm/vega-item-toggle.entry.js +4 -4
  345. package/dist/esm/vega-left-nav_5.entry.js +18 -17
  346. package/dist/esm/vega-loader-wrapper_2.entry.js +13 -11
  347. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  348. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +4 -4
  349. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -2
  350. package/dist/esm/vega-pagination.entry.js +17 -15
  351. package/dist/esm/vega-popover_2.entry.js +24 -23
  352. package/dist/esm/vega-progress-tracker_2.entry.js +900 -0
  353. package/dist/esm/vega-radio_2.entry.js +12 -12
  354. package/dist/esm/vega-rich-text-content.entry.js +10 -9
  355. package/dist/esm/{vega-rich-text-editor_4.entry.js → vega-rich-text-editor_5.entry.js} +767 -281
  356. package/dist/esm/vega-rich-text-table-selection-widget.entry.js +180 -0
  357. package/dist/esm/vega-segment-control.entry.js +5 -5
  358. package/dist/esm/vega-selection-chip_2.entry.js +20 -18
  359. package/dist/esm/vega-selection-tile_2.entry.js +10 -10
  360. package/dist/esm/vega-sidenav_3.entry.js +16 -14
  361. package/dist/esm/vega-signature-capture.entry.js +17 -16
  362. package/dist/esm/vega-stepper.entry.js +9 -9
  363. package/dist/esm/vega-tab-group_2.entry.js +6 -6
  364. package/dist/esm/vega-table_11.entry.js +16 -15
  365. package/dist/esm/vega-text.entry.js +2 -2
  366. package/dist/esm/vega-textarea.entry.js +9 -9
  367. package/dist/esm/vega-time-picker_2.entry.js +21 -20
  368. package/dist/esm/vega-toggle-switch.entry.js +8 -8
  369. package/dist/esm/vega-tooltip_2.entry.js +18 -16
  370. package/dist/esm/vega.js +17 -15
  371. package/dist/sri/vega-sri-manifest.json +342 -346
  372. package/dist/types/components/vega-button-group/types.d.ts +2 -1
  373. package/dist/types/components/vega-button-group/vega-button-group-item/slimmers/controllers/vega-button-group-item-sub-state-controller.d.ts +1 -0
  374. package/dist/types/components/vega-button-group/vega-button-group-item/slimmers/renderers/vega-button-group-item-renderer.d.ts +11 -0
  375. package/dist/types/components/vega-button-group/vega-button-group-item/vega-button-group-item.d.ts +7 -0
  376. package/dist/types/components/vega-button-group/vega-button-group.d.ts +8 -0
  377. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.d.ts +60 -0
  378. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-value-controller.d.ts +3 -4
  379. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +29 -124
  380. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-input-renderer-base.abstract.d.ts +1 -0
  381. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-range-input-renderer.d.ts +5 -5
  382. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-renderer.d.ts +2 -3
  383. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-single-input-renderer.d.ts +1 -4
  384. package/dist/types/components/vega-date-picker/types.d.ts +9 -0
  385. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/constants.d.ts +1 -0
  386. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/dto/calendar-selection.d.ts +62 -0
  387. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-allow-repick-controller.d.ts +31 -0
  388. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-current-period-controller.d.ts +78 -0
  389. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-min-max-date-controller.d.ts +20 -0
  390. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-selection-controller.d.ts +75 -0
  391. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-state-base.abstract.d.ts +29 -0
  392. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/controllers/vega-date-picker-calendar-today-controller.d.ts +15 -0
  393. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +18 -0
  394. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.d.ts +40 -0
  395. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +32 -0
  396. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +182 -0
  397. package/dist/types/components/vega-date-picker/vega-date-picker.d.ts +6 -14
  398. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +0 -4
  399. package/dist/types/components/vega-popover/vega-popover.d.ts +2 -1
  400. package/dist/types/components/vega-progress-tracker/slimmers/controllers/dto/internal-progress-tracker-step.d.ts +55 -0
  401. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-direction-controller.d.ts +27 -0
  402. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-step-controller.d.ts +63 -0
  403. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-current-steps-controller.d.ts +39 -0
  404. package/dist/types/components/vega-progress-tracker/slimmers/controllers/vega-progress-tracker-render-mode-controller.d.ts +21 -0
  405. package/dist/types/components/vega-progress-tracker/slimmers/renderers/vega-progress-tracker-renderer.d.ts +21 -0
  406. package/dist/types/components/vega-progress-tracker/type.d.ts +1 -0
  407. package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/slimmers/controllers/vega-progress-tracker-step-state-controller.d.ts +12 -0
  408. package/dist/types/components/vega-progress-tracker/vega-progress-tracker-step/vega-progress-tracker-step.d.ts +22 -0
  409. package/dist/types/components/vega-progress-tracker/vega-progress-tracker.d.ts +24 -10
  410. package/dist/types/components/vega-rich-text-editor/dto/annotations/annotation.abstract.d.ts +2 -5
  411. package/dist/types/components/vega-rich-text-editor/dto/annotations/block-annotation.abstract.d.ts +3 -3
  412. package/dist/types/components/vega-rich-text-editor/dto/annotations/text-style-annotation.d.ts +7 -0
  413. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +10 -6
  414. package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +5 -0
  415. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-cell-children-remove-interceptor.d.ts +25 -0
  416. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-cell-content-delete-interceptor.d.ts +20 -0
  417. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-row-insert-interceptor.d.ts +19 -0
  418. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-block-strategy.d.ts +14 -0
  419. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-column-strategy.d.ts +31 -0
  420. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-row-strategy.d.ts +28 -0
  421. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-block-strategy.d.ts +27 -0
  422. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-column-strategy.d.ts +19 -0
  423. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-row-strategy.d.ts +27 -0
  424. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/select-table-column-strategy.d.ts +12 -0
  425. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/table-column-strategy.abstract.d.ts +20 -0
  426. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/toggle-header-row-strategy.d.ts +41 -0
  427. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/toggle-header-table-column-strategy.d.ts +45 -0
  428. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/delete-table-block-action.d.ts +12 -0
  429. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/delete-table-column-action.d.ts +15 -0
  430. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/delete-table-row-action.d.ts +17 -0
  431. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/insert-table-block-action.d.ts +20 -0
  432. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/insert-table-column-action.d.ts +23 -0
  433. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/insert-table-row-action.d.ts +23 -0
  434. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/select-table-column-action.d.ts +18 -0
  435. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/table-annotations-action.d.ts +16 -0
  436. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/table-caption-action.d.ts +14 -0
  437. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/table-cell-annotations-action.d.ts +16 -0
  438. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/toggle-header-row-action.d.ts +12 -0
  439. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/toggle-header-table-column-action.d.ts +16 -0
  440. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-annotation.d.ts +64 -0
  441. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-caption-annotation.d.ts +26 -0
  442. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-cell-annotation.d.ts +66 -0
  443. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-head-cell-annotation.d.ts +22 -0
  444. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-block.d.ts +78 -0
  445. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-body-block.d.ts +42 -0
  446. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-caption-block.d.ts +41 -0
  447. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-cell-block.d.ts +45 -0
  448. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-head-block.d.ts +42 -0
  449. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-head-cell-block.d.ts +30 -0
  450. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-row-block.d.ts +44 -0
  451. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-body-renderer.d.ts +12 -0
  452. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.d.ts +13 -0
  453. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-cell-renderer.d.ts +37 -0
  454. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.d.ts +51 -0
  455. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-head-cell-renderer.d.ts +12 -0
  456. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-head-renderer.d.ts +12 -0
  457. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.d.ts +39 -0
  458. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-row-renderer.d.ts +12 -0
  459. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.d.ts +65 -0
  460. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/caption-operation.d.ts +36 -0
  461. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/column-operation.d.ts +55 -0
  462. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/row-operation.d.ts +61 -0
  463. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/setting-event-handler.abstract.d.ts +46 -0
  464. package/dist/types/components/vega-rich-text-editor/extensions/table/table-extension.d.ts +31 -0
  465. package/dist/types/components/vega-rich-text-editor/extensions/table/table-icon.d.ts +3 -0
  466. package/dist/types/components/vega-rich-text-editor/extensions/table/table-selection.d.ts +142 -0
  467. package/dist/types/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.d.ts +85 -0
  468. package/dist/types/components/vega-rich-text-editor/extensions/table/utils/utils.d.ts +53 -0
  469. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/slimmers/controllers/selection-widget-keyboard-controller.d.ts +15 -0
  470. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/slimmers/renderers/selection-widget-renderer.d.ts +31 -0
  471. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/vega-rich-text-table-selection-widget.d.ts +27 -0
  472. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/assets/icon.d.ts +2 -0
  473. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/caption-button-slimmer.d.ts +11 -0
  474. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/cell-properties-button-slimmer.d.ts +11 -0
  475. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.d.ts +28 -0
  476. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.d.ts +36 -0
  477. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-properties-button-slimmer.d.ts +11 -0
  478. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-setting-button-slimmer.abstract.d.ts +36 -0
  479. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/vega-rich-text-table-setting-renderer.d.ts +11 -0
  480. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.d.ts +46 -0
  481. package/dist/types/components/vega-rich-text-editor/extensions/tokens/span-to-token-node-strategy.d.ts +7 -0
  482. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-extension.d.ts +1 -1
  483. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-node-renderer.d.ts +7 -0
  484. package/dist/types/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.d.ts +2 -2
  485. package/dist/types/components/vega-rich-text-editor/interface.d.ts +26 -3
  486. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +1 -0
  487. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/extension-controller.d.ts +4 -0
  488. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +19 -6
  489. package/dist/types/components/vega-rich-text-editor/test/extensions/table/caption-operation.test.d.ts +1 -0
  490. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-annotation.test.d.ts +1 -0
  491. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-caption-annotations.test.d.ts +1 -0
  492. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-cell-annotation.test.d.ts +1 -0
  493. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-dto.test.d.ts +1 -0
  494. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-test-utils.d.ts +11 -0
  495. package/dist/types/components/vega-rich-text-editor/test/spec-utils.d.ts +4 -0
  496. package/dist/types/components.d.ts +286 -6
  497. package/dist/types/constants/regex.d.ts +1 -0
  498. package/dist/types/constants/ui.d.ts +1 -1
  499. package/dist/types/helpers/calendar/calendar-date.d.ts +86 -2
  500. package/dist/types/helpers/calendar/calendar-period/calendar-period.abstract.d.ts +7 -0
  501. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +3 -1
  502. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +5 -2
  503. package/dist/types/helpers/ui/element-appender.d.ts +14 -0
  504. package/dist/types/types/components.type.d.ts +5 -0
  505. package/dist/types/types/type-guard.d.ts +8 -0
  506. package/dist/types/utils/date.d.ts +11 -2
  507. package/dist/types/utils/e2e-utils.d.ts +7 -0
  508. package/dist/types/utils/spec-utils.d.ts +2 -1
  509. package/dist/vega/index.esm.js +1 -1
  510. package/dist/vega/p-09561e90.entry.js +1 -0
  511. package/dist/vega/p-095c778c.entry.js +1 -0
  512. package/dist/vega/{p-e6351dab.entry.js → p-0bca50ab.entry.js} +1 -1
  513. package/dist/vega/{p-7d9cd9c8.js → p-10ac8b57.js} +1 -1
  514. package/dist/vega/{p-dde03224.entry.js → p-11a7daad.entry.js} +1 -1
  515. package/dist/vega/{p-447c7590.js → p-1282b67e.js} +1 -1
  516. package/dist/vega/{p-7b42da4f.entry.js → p-137e5c70.entry.js} +1 -1
  517. package/dist/vega/p-161b9c5b.js +1 -0
  518. package/dist/vega/p-174db33b.js +1 -0
  519. package/dist/vega/p-1815e753.entry.js +1 -0
  520. package/dist/vega/{p-1bb0c934.js → p-18bcfd7a.js} +1 -1
  521. package/dist/vega/p-194722fe.entry.js +1 -0
  522. package/dist/vega/{p-de97c6d9.js → p-1be7c6c4.js} +1 -1
  523. package/dist/vega/p-1c33d25e.entry.js +1 -0
  524. package/dist/vega/p-1dd07d64.entry.js +1 -0
  525. package/dist/vega/{p-a6010b93.entry.js → p-1e0d8228.entry.js} +1 -1
  526. package/dist/vega/p-207cfa6a.js +1 -0
  527. package/dist/vega/p-218e29c2.js +1 -0
  528. package/dist/vega/{p-75b5894f.entry.js → p-2249b040.entry.js} +1 -1
  529. package/dist/vega/p-23183d4d.js +1 -0
  530. package/dist/vega/p-238ec2b9.entry.js +1 -0
  531. package/dist/vega/p-2428457e.entry.js +1 -0
  532. package/dist/vega/p-263ad7b6.js +1 -0
  533. package/dist/vega/{p-ea96635b.entry.js → p-2688bc6f.entry.js} +1 -1
  534. package/dist/vega/{p-8350506e.js → p-26a43b4c.js} +1 -1
  535. package/dist/vega/p-285815b5.entry.js +1 -0
  536. package/dist/vega/{p-cac6239b.entry.js → p-2c07b213.entry.js} +1 -1
  537. package/dist/vega/{p-c0223a17.entry.js → p-31a65402.entry.js} +1 -1
  538. package/dist/vega/p-34a1a0c5.entry.js +1 -0
  539. package/dist/vega/{p-19522949.js → p-3d85411d.js} +1 -1
  540. package/dist/vega/p-3f561dd5.entry.js +1 -0
  541. package/dist/vega/{p-74168615.js → p-40f39194.js} +1 -1
  542. package/dist/vega/p-475f7bda.js +1 -0
  543. package/dist/vega/p-4785203e.entry.js +1 -0
  544. package/dist/vega/p-5051f0c1.entry.js +1 -0
  545. package/dist/vega/p-529daab4.entry.js +1 -0
  546. package/dist/vega/p-53c6ce54.entry.js +1 -0
  547. package/dist/vega/{p-db57dddc.js → p-5504ebdf.js} +1 -1
  548. package/dist/vega/p-5585d2b5.js +1 -0
  549. package/dist/vega/{p-98fb9eaa.entry.js → p-56ce0c4b.entry.js} +1 -1
  550. package/dist/vega/p-58f5da43.js +1 -0
  551. package/dist/vega/{p-2f09c6aa.js → p-596895ec.js} +1 -1
  552. package/dist/vega/{p-fde50319.js → p-5b472921.js} +1 -1
  553. package/dist/vega/p-5d7e908a.entry.js +1 -0
  554. package/dist/vega/p-5f377954.js +1 -1
  555. package/dist/vega/{p-a0467b83.js → p-5fb6a3b5.js} +1 -1
  556. package/dist/vega/p-63c84ff6.entry.js +1 -0
  557. package/dist/vega/p-6961fac0.entry.js +1 -0
  558. package/dist/vega/{p-35cd469a.entry.js → p-699e46d1.entry.js} +1 -1
  559. package/dist/vega/p-6aa7ace9.js +1 -0
  560. package/dist/vega/p-6b631ff1.entry.js +1 -0
  561. package/dist/vega/{p-71f9c4d4.js → p-6c1ef2ed.js} +1 -1
  562. package/dist/vega/p-6ee3b103.js +1 -0
  563. package/dist/vega/{p-4a467973.js → p-71f2235e.js} +1 -1
  564. package/dist/vega/p-776b2f3d.entry.js +1 -0
  565. package/dist/vega/p-7ac32e71.js +1 -0
  566. package/dist/vega/p-7e6c5eb8.entry.js +1 -0
  567. package/dist/vega/{p-61d9cdf9.entry.js → p-7eaa8ac0.entry.js} +1 -1
  568. package/dist/vega/p-8014cb45.entry.js +1 -0
  569. package/dist/vega/p-877b36ae.entry.js +1 -0
  570. package/dist/vega/{p-18e8c54a.entry.js → p-883c5174.entry.js} +1 -1
  571. package/dist/vega/{p-58769a72.entry.js → p-8b969a71.entry.js} +1 -1
  572. package/dist/vega/p-8f6d42b0.entry.js +1 -0
  573. package/dist/vega/{p-7c1d08db.entry.js → p-8feb1298.entry.js} +1 -1
  574. package/dist/vega/p-95188267.entry.js +1 -0
  575. package/dist/vega/p-96aa0f3b.js +1 -0
  576. package/dist/vega/p-9a83a6b0.js +1 -0
  577. package/dist/vega/{p-52efaadb.entry.js → p-9e2cf904.entry.js} +1 -1
  578. package/dist/vega/p-9e545fde.entry.js +1 -0
  579. package/dist/vega/p-9f4364ec.entry.js +1 -0
  580. package/dist/vega/p-a33dc7eb.entry.js +1 -0
  581. package/dist/vega/p-a3a80712.js +1 -0
  582. package/dist/vega/{p-924b4e24.js → p-a4ec6575.js} +1 -1
  583. package/dist/vega/{p-3925c16b.js → p-a8dad05d.js} +1 -1
  584. package/dist/vega/{p-b9798158.js → p-b47df664.js} +1 -1
  585. package/dist/vega/{p-652626b6.entry.js → p-b737b93a.entry.js} +1 -1
  586. package/dist/vega/p-baa44cf5.entry.js +1 -0
  587. package/dist/vega/p-badc14cc.entry.js +1 -0
  588. package/dist/vega/{p-3c865f86.entry.js → p-bc2451f7.entry.js} +1 -1
  589. package/dist/vega/p-bdb5362c.entry.js +1 -0
  590. package/dist/vega/p-be33db7b.js +1 -0
  591. package/dist/vega/p-bfe01850.js +1 -0
  592. package/dist/vega/p-c141b10e.entry.js +1 -0
  593. package/dist/vega/p-c465b6dd.entry.js +1 -0
  594. package/dist/vega/{p-8fae8f9e.js → p-d1d0f08a.js} +1 -1
  595. package/dist/vega/{p-ad65f65f.entry.js → p-d6032515.entry.js} +1 -1
  596. package/dist/vega/{p-91d71ae9.entry.js → p-d69a6454.entry.js} +1 -1
  597. package/dist/vega/p-d6cc786a.entry.js +1 -0
  598. package/dist/vega/p-d85d7862.entry.js +1 -0
  599. package/dist/vega/p-d991fb11.js +1 -0
  600. package/dist/vega/{p-c2f21426.entry.js → p-da77d71f.entry.js} +1 -1
  601. package/dist/vega/{p-9ce249a9.js → p-de70aac1.js} +1 -1
  602. package/dist/vega/p-e47ae7bc.entry.js +1 -0
  603. package/dist/vega/p-e8495b6c.entry.js +1 -0
  604. package/dist/vega/{p-0f7dec29.entry.js → p-e8654ab5.entry.js} +1 -1
  605. package/dist/vega/p-e94701e2.entry.js +1 -0
  606. package/dist/vega/{p-3e040167.entry.js → p-e9e1293a.entry.js} +1 -1
  607. package/dist/vega/p-ef48178e.entry.js +1 -0
  608. package/dist/vega/{p-8c6b6ad7.entry.js → p-f729743c.entry.js} +1 -1
  609. package/dist/vega/{p-1f26de89.js → p-fb6b3b98.js} +1 -1
  610. package/dist/vega/p-fca7c998.entry.js +1 -0
  611. package/dist/vega/vega.esm.js +1 -1
  612. package/package.json +2 -3
  613. package/style/vega-icons.css +17266 -0
  614. package/dist/cjs/date-0a6bb035.js +0 -95
  615. package/dist/cjs/mobilefriendly-aa2e50e9.js +0 -13
  616. package/dist/cjs/remote-invocation-registry-fc22fdd0.js +0 -65
  617. package/dist/cjs/state-background-color-formatter-aa5570f6.js +0 -85
  618. package/dist/cjs/vega-progress-tracker.cjs.entry.js +0 -252
  619. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.js +0 -282
  620. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-element-appender-controller.js +0 -35
  621. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-mobile-controller.js +0 -53
  622. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-month-year-change-event-controller.js +0 -139
  623. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.js +0 -49
  624. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.js +0 -341
  625. package/dist/esm/date-c55b97f0.js +0 -87
  626. package/dist/esm/mobilefriendly-c5d0573d.js +0 -11
  627. package/dist/esm/remote-invocation-registry-d69245c2.js +0 -63
  628. package/dist/esm/state-background-color-formatter-0f01d27a.js +0 -82
  629. package/dist/esm/vega-progress-tracker.entry.js +0 -248
  630. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-controller.d.ts +0 -96
  631. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-element-appender-controller.d.ts +0 -12
  632. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-mobile-controller.d.ts +0 -18
  633. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-month-year-change-event-controller.d.ts +0 -46
  634. package/dist/types/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.d.ts +0 -15
  635. package/dist/types/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-month-year-dropdown-renderer.d.ts +0 -97
  636. package/dist/vega/p-08835909.js +0 -1
  637. package/dist/vega/p-0cdb38d3.js +0 -1
  638. package/dist/vega/p-0e5297b9.entry.js +0 -1
  639. package/dist/vega/p-0feceaac.entry.js +0 -1
  640. package/dist/vega/p-115b42e6.entry.js +0 -1
  641. package/dist/vega/p-1372b984.js +0 -1
  642. package/dist/vega/p-1739a877.entry.js +0 -1
  643. package/dist/vega/p-1a59703b.entry.js +0 -1
  644. package/dist/vega/p-1e92737c.entry.js +0 -1
  645. package/dist/vega/p-235bf01b.entry.js +0 -1
  646. package/dist/vega/p-257ff60b.entry.js +0 -1
  647. package/dist/vega/p-25a3fad7.entry.js +0 -1
  648. package/dist/vega/p-2622f0a8.entry.js +0 -1
  649. package/dist/vega/p-26c4f07c.entry.js +0 -1
  650. package/dist/vega/p-2ec7e020.entry.js +0 -1
  651. package/dist/vega/p-308aa2e3.js +0 -1
  652. package/dist/vega/p-330c224f.entry.js +0 -1
  653. package/dist/vega/p-33f3f306.js +0 -1
  654. package/dist/vega/p-35252108.js +0 -1
  655. package/dist/vega/p-37020002.entry.js +0 -1
  656. package/dist/vega/p-379f1b40.entry.js +0 -1
  657. package/dist/vega/p-38cb2b40.js +0 -1
  658. package/dist/vega/p-4e13a26f.js +0 -1
  659. package/dist/vega/p-54e56f0d.entry.js +0 -1
  660. package/dist/vega/p-5972c101.entry.js +0 -1
  661. package/dist/vega/p-5d827fe5.js +0 -1
  662. package/dist/vega/p-5e708ad5.entry.js +0 -1
  663. package/dist/vega/p-65a9af84.entry.js +0 -1
  664. package/dist/vega/p-67eb405d.entry.js +0 -1
  665. package/dist/vega/p-67f159c3.js +0 -1
  666. package/dist/vega/p-69aec6af.entry.js +0 -1
  667. package/dist/vega/p-71ddccf2.entry.js +0 -1
  668. package/dist/vega/p-77e64f26.js +0 -1
  669. package/dist/vega/p-785d9ac3.entry.js +0 -1
  670. package/dist/vega/p-796d840c.entry.js +0 -1
  671. package/dist/vega/p-7a590741.entry.js +0 -1
  672. package/dist/vega/p-824a06ba.js +0 -1
  673. package/dist/vega/p-85f9a980.js +0 -1
  674. package/dist/vega/p-867a4970.js +0 -1
  675. package/dist/vega/p-880569ec.entry.js +0 -1
  676. package/dist/vega/p-8ac2f43f.entry.js +0 -1
  677. package/dist/vega/p-8ff96b8c.entry.js +0 -13
  678. package/dist/vega/p-9794fd88.entry.js +0 -1
  679. package/dist/vega/p-9e59345f.entry.js +0 -1
  680. package/dist/vega/p-a10b9f2e.js +0 -12
  681. package/dist/vega/p-a630ce73.entry.js +0 -1
  682. package/dist/vega/p-b1faebe0.js +0 -1
  683. package/dist/vega/p-b27fcac4.entry.js +0 -1
  684. package/dist/vega/p-b5ba0c11.js +0 -1
  685. package/dist/vega/p-b8b9ed2c.js +0 -1
  686. package/dist/vega/p-b9b81702.entry.js +0 -1
  687. package/dist/vega/p-bcc396c2.entry.js +0 -1
  688. package/dist/vega/p-bccee21e.js +0 -1
  689. package/dist/vega/p-bfb86c3e.entry.js +0 -1
  690. package/dist/vega/p-c224b44c.js +0 -1
  691. package/dist/vega/p-c6ae78f2.entry.js +0 -1
  692. package/dist/vega/p-cbabb07a.entry.js +0 -1
  693. package/dist/vega/p-fb320b50.entry.js +0 -1
  694. package/dist/vega/p-ff470366.entry.js +0 -1
@@ -58,10 +58,22 @@ export class RTEExtensionController extends VegaSlimmer {
58
58
  flushValue: this.flushValue,
59
59
  isSourceEditMode: this.isSourceEditMode,
60
60
  getSelectedNodes: this.getSelectedNodes,
61
+ setSelectedNodes: this.selectionController.setSelectedNodes.bind(this.selectionController),
62
+ getSelection: this.selectionController.getSelection.bind(this.selectionController),
61
63
  });
62
64
  }
63
65
  }
64
66
  }
67
+ /**
68
+ * Destroys all registered extensions.
69
+ */
70
+ destroyExtension() {
71
+ if (this.extensions) {
72
+ for (const extension of this.extensions) {
73
+ extension.destroyExtension();
74
+ }
75
+ }
76
+ }
65
77
  /**
66
78
  * Update extension context when extensions property changes.
67
79
  *
@@ -69,6 +81,11 @@ export class RTEExtensionController extends VegaSlimmer {
69
81
  * @param {VegaRTEExtension[]} oldValue - Old extensions array.
70
82
  */
71
83
  handleExtensionsChange(newValue, oldValue) {
84
+ if (oldValue) {
85
+ for (const extension of oldValue) {
86
+ extension.destroyExtension();
87
+ }
88
+ }
72
89
  if (!isArrayEqual(newValue, oldValue, false, (a, b) => a === b ? 0 : 1)) {
73
90
  this.initialExtensionContext();
74
91
  }
@@ -92,6 +109,9 @@ __decorate([
92
109
  __decorate([
93
110
  MapToComponentMethod('connectedCallback')
94
111
  ], RTEExtensionController.prototype, "initialExtensionContext", null);
112
+ __decorate([
113
+ MapToComponentMethod('disconnectedCallback')
114
+ ], RTEExtensionController.prototype, "destroyExtension", null);
95
115
  __decorate([
96
116
  MapToComponentMethod('watchExtensions')
97
117
  ], RTEExtensionController.prototype, "handleExtensionsChange", null);
@@ -91,6 +91,19 @@ export class SelectionController extends AutoRunWhenReRenderTaskQueueSlimmer {
91
91
  getSelectedNodes() {
92
92
  return Array.from(this.selectionMap.values()).flat();
93
93
  }
94
+ /**
95
+ * Set the selected rich text nodes
96
+ *
97
+ * @param {RTENode[]} nodes - The rich text nodes to set as selected
98
+ * @param {RTERangeOptions} [rangeOptions] - The range options to set the selection range
99
+ */
100
+ setSelectedNodes(nodes, rangeOptions) {
101
+ this.clearSelectionMap();
102
+ this.addNodesToSelectionMap(nodes);
103
+ if (rangeOptions) {
104
+ this.currentRange = this.currentRange.updateRTERange(rangeOptions);
105
+ }
106
+ }
94
107
  /**
95
108
  * Get the selected rich text blocks
96
109
  *
@@ -246,7 +259,16 @@ export class SelectionController extends AutoRunWhenReRenderTaskQueueSlimmer {
246
259
  node.childNodes.forEach(filterNode);
247
260
  };
248
261
  filterNode(commonAncestor);
249
- selectedNodes.forEach((node) => {
262
+ this.addNodesToSelectionMap(selectedNodes);
263
+ this.getSelectedNodes().forEach((node) => node.apply(new SelectionChangeAction(range)));
264
+ }
265
+ /**
266
+ * Add nodes to the selection map
267
+ *
268
+ * @param {RTENode[]} nodes - The rich text nodes to add
269
+ */
270
+ addNodesToSelectionMap(nodes) {
271
+ nodes.forEach((node) => {
250
272
  if (this.selectionMap.has(node.parent)) {
251
273
  this.selectionMap.get(node.parent).push(node);
252
274
  }
@@ -254,7 +276,6 @@ export class SelectionController extends AutoRunWhenReRenderTaskQueueSlimmer {
254
276
  this.selectionMap.set(node.parent, [node]);
255
277
  }
256
278
  });
257
- this.getSelectedNodes().forEach((node) => node.apply(new SelectionChangeAction(range)));
258
279
  }
259
280
  /**
260
281
  * Clear the selection map.
@@ -17,7 +17,7 @@ describe('annotation-style', () => {
17
17
  });
18
18
  const blockAnnotationStyle = new RTEAnnotationStyle(textBlock);
19
19
  expect(blockAnnotationStyle.toCssText()).toEqual('color: red;font-size: 16px;');
20
- expect(blockAnnotationStyle.toCssText({ standalone: true })).toEqual('font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: center;color: red;');
20
+ expect(blockAnnotationStyle.toCssText({ standalone: true })).toEqual('font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: center;color: red;');
21
21
  expect(blockAnnotationStyle.toCssText(null, null, {})).toEqual('');
22
22
  expect(blockAnnotationStyle.toCssText(null, null, { color: 'red' })).toEqual('color: red;');
23
23
  expect(blockAnnotationStyle.toCssText(null, null, { backgroundColor: 'blue', fontWeight: 'bold' })).toEqual('background-color: blue;font-weight: bold;');
@@ -56,6 +56,7 @@ describe('annotation-style', () => {
56
56
  fontSize: '16px',
57
57
  fontWeight: '500',
58
58
  lineHeight: '22px',
59
+ minHeight: '22px',
59
60
  marginBottom: '0px',
60
61
  marginTop: '0px',
61
62
  textAlign: 'center',
@@ -47,6 +47,7 @@ describe('annotations', () => {
47
47
  fontSize: '16px',
48
48
  fontWeight: '500',
49
49
  lineHeight: '22px',
50
+ minHeight: '22px',
50
51
  marginBottom: '0px',
51
52
  marginTop: '0px',
52
53
  });
@@ -55,18 +56,21 @@ describe('annotations', () => {
55
56
  fontSize: '36px',
56
57
  fontWeight: '500',
57
58
  lineHeight: '40px',
59
+ minHeight: '40px',
58
60
  });
59
61
  expect(new TextStyleAnnotation('subtitle').renderStyle({ standalone: true })).toEqual({
60
62
  fontFamily: 'Inter',
61
63
  fontSize: '28px',
62
64
  fontWeight: '500',
63
65
  lineHeight: '32px',
66
+ minHeight: '32px',
64
67
  });
65
68
  expect(new TextStyleAnnotation('heading-1').renderStyle({ standalone: true })).toEqual({
66
69
  fontFamily: 'Inter',
67
70
  fontSize: '22px',
68
71
  fontWeight: '500',
69
72
  lineHeight: '24px',
73
+ minHeight: '24px',
70
74
  marginBottom: '0px',
71
75
  marginTop: '0px',
72
76
  });
@@ -75,6 +79,7 @@ describe('annotations', () => {
75
79
  fontSize: '20px',
76
80
  fontWeight: '500',
77
81
  lineHeight: '24px',
82
+ minHeight: '24px',
78
83
  marginBottom: '0px',
79
84
  marginTop: '0px',
80
85
  });
@@ -83,6 +88,7 @@ describe('annotations', () => {
83
88
  fontSize: '18px',
84
89
  fontWeight: '500',
85
90
  lineHeight: '22px',
91
+ minHeight: '22px',
86
92
  marginBottom: '0px',
87
93
  marginTop: '0px',
88
94
  });
@@ -91,6 +97,7 @@ describe('annotations', () => {
91
97
  fontSize: '16px',
92
98
  fontWeight: '500',
93
99
  lineHeight: '22px',
100
+ minHeight: '22px',
94
101
  marginBottom: '0px',
95
102
  marginTop: '0px',
96
103
  });
@@ -99,6 +106,7 @@ describe('annotations', () => {
99
106
  fontSize: '14px',
100
107
  fontWeight: '500',
101
108
  lineHeight: '22px',
109
+ minHeight: '22px',
102
110
  marginBottom: '0px',
103
111
  marginTop: '0px',
104
112
  });
@@ -107,6 +115,7 @@ describe('annotations', () => {
107
115
  fontSize: '12px',
108
116
  fontWeight: '500',
109
117
  lineHeight: '22px',
118
+ minHeight: '22px',
110
119
  marginBottom: '0px',
111
120
  marginTop: '0px',
112
121
  });
@@ -187,7 +187,7 @@ describe('text block', () => {
187
187
  },
188
188
  ],
189
189
  };
190
- expect(RTETextBlock.from(textBlock).toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><a href="www.google.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"><span>This is a text.</span></a></p>`);
190
+ expect(RTETextBlock.from(textBlock).toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><a href="www.google.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"><span>This is a text.</span></a></p>`);
191
191
  expect(RTETextBlock.from(textBlock, { autoMatchFormat: false }).toHtml()).toEqual(`<p><a href="www.google.com"><span>This is a text.</span></a></p>`);
192
192
  });
193
193
  });
@@ -316,7 +316,7 @@ describe('content state', () => {
316
316
  nodes: [{ id: '1-1', type: 'text', text: 'This is a paragraph' }],
317
317
  },
318
318
  ]);
319
- expect(contentState.toHtml()).toEqualHtml(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;margin-top: 0px; margin-bottom: 0px;"><span>This is a paragraph</span></p>`);
319
+ expect(contentState.toHtml()).toEqualHtml(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;margin-top: 0px; margin-bottom: 0px;"><span>This is a paragraph</span></p>`);
320
320
  });
321
321
  it('should convert text node with annotations to HTML correctly', () => {
322
322
  const contentState = VegaRTEContent.fromJSON([
@@ -336,7 +336,7 @@ describe('content state', () => {
336
336
  ],
337
337
  },
338
338
  ]);
339
- expect(contentState.toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">This is a paragraph.</span><code style="font-family: Roboto Mono;white-space: pre-wrap;"> code</code><span> text</span></p>`);
339
+ expect(contentState.toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">This is a paragraph.</span><code style="font-family: Roboto Mono;white-space: pre-wrap;"> code</code><span> text</span></p>`);
340
340
  });
341
341
  it('should convert text block with annotations to HTML with inline styles correctly', () => {
342
342
  const contentState = VegaRTEContent.fromJSON([
@@ -354,7 +354,7 @@ describe('content state', () => {
354
354
  ],
355
355
  },
356
356
  ]);
357
- expect(contentState.toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: right;"><span style="font-weight: 700;text-decoration: underline;">This is a paragraph</span></p>`);
357
+ expect(contentState.toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: right;"><span style="font-weight: 700;text-decoration: underline;">This is a paragraph</span></p>`);
358
358
  });
359
359
  it('should convert image block to HTML correctly', () => {
360
360
  const contentState = VegaRTEContent.fromJSON([
@@ -399,7 +399,7 @@ describe('content state', () => {
399
399
  ],
400
400
  },
401
401
  ]);
402
- expect(contentState.toHtml()).toEqual(`<ul style="padding-left: 8px;margin-left: 16px;"><li style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 1</span></li><li style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 2</span></li></ul>`);
402
+ expect(contentState.toHtml()).toEqual(`<ul style="padding-left: 8px;margin-left: 16px;"><li style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 1</span></li><li style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 2</span></li></ul>`);
403
403
  });
404
404
  it('should convert number list block to HTML correctly', () => {
405
405
  const contentState = VegaRTEContent.fromJSON([
@@ -420,7 +420,7 @@ describe('content state', () => {
420
420
  ],
421
421
  },
422
422
  ]);
423
- expect(contentState.toHtml()).toEqual(`<ol style="padding-left: 8px;margin-left: 16px;"><li style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 1</span></li><li style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 2</span></li></ol>`);
423
+ expect(contentState.toHtml()).toEqual(`<ol style="padding-left: 8px;margin-left: 16px;"><li style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 1</span></li><li style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 2</span></li></ol>`);
424
424
  });
425
425
  it('should convert code block to HTML correctly', () => {
426
426
  const contentState = VegaRTEContent.fromJSON([
@@ -456,7 +456,7 @@ describe('content state', () => {
456
456
  ],
457
457
  },
458
458
  ]);
459
- expect(contentState.toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><a href="https://example.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"><span>This is a link</span></a></p>`);
459
+ expect(contentState.toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><a href="https://example.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"><span>This is a link</span></a></p>`);
460
460
  });
461
461
  it('should convert a complex value to HTML correctly', () => {
462
462
  const contentState = VegaRTEContent.fromJSON([
@@ -789,7 +789,7 @@ describe('content state', () => {
789
789
  ],
790
790
  },
791
791
  ]);
792
- expect(contentState.toHtml()).toEqual(`<div style="font-family: Inter;font-size: 36px;line-height: 40px;font-weight: 500;"><span style="font-weight: 700;">Title</span></div><div style="font-family: Inter;font-size: 28px;line-height: 32px;font-weight: 500;"><span>Subtitle</span></div><h1 style="font-family: Inter;font-size: 22px;line-height: 24px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">Heading 1</span></h1><h2 style="font-family: Inter;font-size: 20px;line-height: 24px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">Heading 2</span></h2><h3 style="font-family: Inter;font-size: 18px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">Heading 3</span></h3><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Paragraph</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">Bold text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-style: italic;">Italic text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="text-decoration: underline;">Underline text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="text-decoration: underline;">Strikethrough text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><code style="font-family: Roboto Mono;white-space: pre-wrap;">Code text</code></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="color: #BD2947;">Color text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: left;"><span>Left align</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: right;"><span>Right align</span></p><ul style="padding-left: 8px;margin-left: 16px;"><li style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>list item 1</span></li><li style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>list item 2</span></li></ul><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;margin-left: 32px;"><span>More indent</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><a href="https://www.google.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"><span>Link text</span></a></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span></span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span></span></p>`);
792
+ expect(contentState.toHtml()).toEqual(`<div style="font-family: Inter;font-size: 36px;line-height: 40px;min-height: 40px;font-weight: 500;"><span style="font-weight: 700;">Title</span></div><div style="font-family: Inter;font-size: 28px;line-height: 32px;min-height: 32px;font-weight: 500;"><span>Subtitle</span></div><h1 style="font-family: Inter;font-size: 22px;line-height: 24px;min-height: 24px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">Heading 1</span></h1><h2 style="font-family: Inter;font-size: 20px;line-height: 24px;min-height: 24px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">Heading 2</span></h2><h3 style="font-family: Inter;font-size: 18px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">Heading 3</span></h3><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Paragraph</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-weight: 700;">Bold text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="font-style: italic;">Italic text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="text-decoration: underline;">Underline text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="text-decoration: underline;">Strikethrough text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><code style="font-family: Roboto Mono;white-space: pre-wrap;">Code text</code></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span style="color: #BD2947;">Color text</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: left;"><span>Left align</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: right;"><span>Right align</span></p><ul style="padding-left: 8px;margin-left: 16px;"><li style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>list item 1</span></li><li style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>list item 2</span></li></ul><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;margin-left: 32px;"><span>More indent</span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><a href="https://www.google.com" target="_blank" style="color: rgba(var(--v-text-link, 19, 98, 226, 1));"><span>Link text</span></a></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span></span></p><p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span></span></p>`);
793
793
  });
794
794
  it('should convert paragraph with custom attributes to HTML correctly', () => {
795
795
  const contentState = VegaRTEContent.fromJSON([
@@ -818,7 +818,7 @@ describe('content state', () => {
818
818
  ],
819
819
  },
820
820
  ]);
821
- expect(contentState.toHtml()).toEqualHtml(`<p id="p-element" dir="dir-p" style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500; margin-top: 0px; margin-bottom: 0px;"><span id="span-element" dir="dir-span">This is a paragraph</span></p>`);
821
+ expect(contentState.toHtml()).toEqualHtml(`<p id="p-element" dir="dir-p" style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500; margin-top: 0px; margin-bottom: 0px;"><span id="span-element" dir="dir-span">This is a paragraph</span></p>`);
822
822
  });
823
823
  it('should convert text node with custom attributes to HTML correctly', () => {
824
824
  const contentState = VegaRTEContent.fromJSON([
@@ -868,7 +868,7 @@ describe('content state', () => {
868
868
  ],
869
869
  },
870
870
  ]);
871
- expect(contentState.toHtml()).toEqual(`<p id="p-element" dir="dir-p" style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span id="text1" style="font-weight: 700;">This is a paragraph.</span><code id="text2" style="font-family: Roboto Mono;white-space: pre-wrap;"> code</code><span id="text3"> text</span></p>`);
871
+ expect(contentState.toHtml()).toEqual(`<p id="p-element" dir="dir-p" style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span id="text1" style="font-weight: 700;">This is a paragraph.</span><code id="text2" style="font-family: Roboto Mono;white-space: pre-wrap;"> code</code><span id="text3"> text</span></p>`);
872
872
  });
873
873
  it('should convert bullet list block with custom attributes to HTML correctly', () => {
874
874
  const contentState = VegaRTEContent.fromJSON([
@@ -904,7 +904,7 @@ describe('content state', () => {
904
904
  },
905
905
  },
906
906
  ]);
907
- expect(contentState.toHtml()).toEqual(`<ul id="ul" style="padding-left: 8px;margin-left: 16px;"><li id="list1" style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 1</span></li><li id="list2" style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 2</span></li></ul>`);
907
+ expect(contentState.toHtml()).toEqual(`<ul id="ul" style="padding-left: 8px;margin-left: 16px;"><li id="list1" style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 1</span></li><li id="list2" style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>Item 2</span></li></ul>`);
908
908
  });
909
909
  it('should convert paragraph with custom class to HTML correctly', () => {
910
910
  const contentState = VegaRTEContent.fromJSON([
@@ -1025,7 +1025,7 @@ describe('content state', () => {
1025
1025
  ],
1026
1026
  },
1027
1027
  ]);
1028
- expect(contentState.toHtml()).toEqualHtml(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 700; margin-top: 0px; margin-bottom: 0px;"><span style="font-weight: 700">This is a paragraph</span></p>`);
1028
+ expect(contentState.toHtml()).toEqualHtml(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 700; margin-top: 0px; margin-bottom: 0px;"><span style="font-weight: 700">This is a paragraph</span></p>`);
1029
1029
  });
1030
1030
  it('should convert text node with custom style to HTML correctly', () => {
1031
1031
  const contentState = VegaRTEContent.fromJSON([
@@ -1074,7 +1074,7 @@ describe('content state', () => {
1074
1074
  ],
1075
1075
  },
1076
1076
  ]);
1077
- expect(contentState.toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: right;"><span style="font-weight: 700;padding: 20px;">This is a paragraph.</span><code style="font-family: Roboto Mono;white-space: pre-wrap;padding: 30px;"> code</code><span style="padding: 40px;"> text</span></p>`);
1077
+ expect(contentState.toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;text-align: right;"><span style="font-weight: 700;padding: 20px;">This is a paragraph.</span><code style="font-family: Roboto Mono;white-space: pre-wrap;padding: 30px;"> code</code><span style="padding: 40px;"> text</span></p>`);
1078
1078
  });
1079
1079
  it('should convert bullet list block with custom style to HTML correctly', () => {
1080
1080
  const contentState = VegaRTEContent.fromJSON([
@@ -1110,7 +1110,7 @@ describe('content state', () => {
1110
1110
  },
1111
1111
  },
1112
1112
  ]);
1113
- expect(contentState.toHtml()).toEqual(`<ul style="padding-left: 8px;margin-left: 16px;padding: 60px;"><li style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;padding: 40px;"><span>Item 1</span></li><li style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;padding: 50px;"><span>Item 2</span></li></ul>`);
1113
+ expect(contentState.toHtml()).toEqual(`<ul style="padding-left: 8px;margin-left: 16px;padding: 60px;"><li style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;padding: 40px;"><span>Item 1</span></li><li style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;padding: 50px;"><span>Item 2</span></li></ul>`);
1114
1114
  });
1115
1115
  it('should log warning when call toHtml with deprecated parameter', () => {
1116
1116
  setVegaLogLevel('warn');
@@ -2839,8 +2839,8 @@ Line 1
2839
2839
  nodes: [{ id: '1-1', type: 'text', text: 'This is a paragraph' }],
2840
2840
  },
2841
2841
  ];
2842
- expect(VegaRTEContent.fromJSON(content).toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>This is a paragraph</span></p>`);
2843
- expect(VegaRTEContent.fromJSON(content).toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>This is a paragraph</span></p>`);
2842
+ expect(VegaRTEContent.fromJSON(content).toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>This is a paragraph</span></p>`);
2843
+ expect(VegaRTEContent.fromJSON(content).toHtml()).toEqual(`<p style="font-family: Inter;font-size: 16px;line-height: 22px;min-height: 22px;font-weight: 500;margin-top: 0px;margin-bottom: 0px;"><span>This is a paragraph</span></p>`);
2844
2844
  expect(VegaRTEContent.fromJSON(content, { autoMatchFormat: false }).toHtml()).toEqual(`<p><span>This is a paragraph</span></p>`);
2845
2845
  expect(VegaRTEContent.fromJSON(content, { autoMatchFormat: false }).toHtml()).toEqual(`<p><span>This is a paragraph</span></p>`);
2846
2846
  });
@@ -0,0 +1,99 @@
1
+ import { CaptionOperationEventHandler } from '../../../extensions/table/setting-event-handlers/caption-operation';
2
+ import { TableSettingType } from '../../../extensions/table/setting-event-handlers/setting-event-handler.abstract';
3
+ import { RTETableBlock } from '../../../extensions/table/dto/table-block';
4
+ import { RTETableCaptionBlock, } from '../../../extensions/table/dto/table-caption-block';
5
+ /**
6
+ * Lightweight helper to create a fresh table block with optional caption attached.
7
+ *
8
+ * @param {RTETableCaptionBlock | null | undefined} caption - Optional caption DTO used to seed the table.
9
+ * @returns {RTETableBlock} Table block instance wired with the provided caption.
10
+ */
11
+ const createTableBlock = (caption) => {
12
+ const tableBlock = new RTETableBlock('table-id');
13
+ if (caption) {
14
+ tableBlock.setCaption(caption);
15
+ }
16
+ return tableBlock;
17
+ };
18
+ /**
19
+ * Creates a caption handler stub with cursor-sync side effects mocked out.
20
+ *
21
+ * @returns {CaptionOperationEventHandler} Configured handler ready for unit tests.
22
+ */
23
+ const createHandler = () => {
24
+ const handler = new CaptionOperationEventHandler();
25
+ handler.syncCursorPosition = jest.fn();
26
+ return handler;
27
+ };
28
+ describe('CaptionOperationEventHandler', () => {
29
+ const extensionContext = {};
30
+ /**
31
+ * Guards that the provided block is a text block.
32
+ *
33
+ * @param {VegaRTEContentBlock | undefined} block - Candidate caption child.
34
+ * @returns {block is VegaRTETextBlock} True when the block exposes `nodes`.
35
+ */
36
+ const isTextBlock = (block) => Boolean(block && 'nodes' in block);
37
+ /**
38
+ * Extracts the first caption text node, if present.
39
+ *
40
+ * @param {VegaRTETableCaptionBlock | null | undefined} caption - Caption DTO emitted by `toJSON`.
41
+ * @returns {string | undefined} Placeholder or undefined when caption lacks text.
42
+ */
43
+ const getFirstCaptionText = (caption) => {
44
+ var _a, _b, _c;
45
+ const firstChild = (_a = caption === null || caption === void 0 ? void 0 : caption.children) === null || _a === void 0 ? void 0 : _a[0];
46
+ if (isTextBlock(firstChild)) {
47
+ return (_c = (_b = firstChild.nodes) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.text;
48
+ }
49
+ return undefined;
50
+ };
51
+ it('creates captions pre-filled with placeholder guidance', () => {
52
+ var _a;
53
+ const handler = createHandler();
54
+ const tableBlock = createTableBlock();
55
+ handler.execute([TableSettingType.CAPTION, 'rte-table-caption'], extensionContext, tableBlock);
56
+ const captionJson = (_a = tableBlock.getCaption()) === null || _a === void 0 ? void 0 : _a.toJSON();
57
+ expect(getFirstCaptionText(captionJson)).toBe('');
58
+ });
59
+ it('restores the placeholder when caption content has been cleared', () => {
60
+ var _a;
61
+ const handler = createHandler();
62
+ const emptyCaption = RTETableCaptionBlock.from({
63
+ id: 'caption-id',
64
+ type: 'table-caption',
65
+ children: [],
66
+ });
67
+ emptyCaption.children = [];
68
+ const tableBlock = createTableBlock(emptyCaption);
69
+ handler.execute([TableSettingType.CAPTION, 'rte-table-caption'], extensionContext, tableBlock);
70
+ const captionJson = (_a = tableBlock.getCaption()) === null || _a === void 0 ? void 0 : _a.toJSON();
71
+ expect(getFirstCaptionText(captionJson)).toBe('');
72
+ });
73
+ it('preserves existing caption content when it is already populated', () => {
74
+ var _a;
75
+ const handler = createHandler();
76
+ const hydratedCaption = RTETableCaptionBlock.from({
77
+ id: 'caption-id',
78
+ type: 'table-caption',
79
+ children: [
80
+ {
81
+ id: 'paragraph-id',
82
+ type: 'paragraph',
83
+ nodes: [
84
+ {
85
+ id: 'text-id',
86
+ type: 'text',
87
+ text: 'Custom caption content',
88
+ },
89
+ ],
90
+ },
91
+ ],
92
+ });
93
+ const tableBlock = createTableBlock(hydratedCaption);
94
+ handler.execute([TableSettingType.CAPTION, 'rte-table-caption'], extensionContext, tableBlock);
95
+ expect(tableBlock.getCaption()).toBe(hydratedCaption);
96
+ const captionJson = (_a = tableBlock.getCaption()) === null || _a === void 0 ? void 0 : _a.toJSON();
97
+ expect(getFirstCaptionText(captionJson)).toBe('Custom caption content');
98
+ });
99
+ });
@@ -0,0 +1,89 @@
1
+ import { RTETableExtensionAnnotationTypeEnum, RTETableAnnotation, } from '../../../extensions/table/annotations/table-annotation';
2
+ import { RTETableBlock } from '../../../extensions/table/dto/table-block';
3
+ import { RTETableAnnotationsAction } from '../../../extensions/table/actions/table-annotations-action';
4
+ describe('RTETableAnnotation', () => {
5
+ test('defaults width to 100% and includes border collapse in style', () => {
6
+ const annotation = new RTETableAnnotation();
7
+ const style = annotation.renderStyle();
8
+ expect(style).toEqual({ borderCollapse: 'collapse', margin: '0 auto' });
9
+ });
10
+ test('renderStyle handles alignment correctly', () => {
11
+ const leftAligned = new RTETableAnnotation({ alignment: 'left' });
12
+ expect(leftAligned.renderStyle().margin).toBe('0');
13
+ const rightAligned = new RTETableAnnotation({ alignment: 'right' });
14
+ expect(rightAligned.renderStyle().margin).toBe('0 0 0 auto');
15
+ const centerAligned = new RTETableAnnotation({ alignment: 'center' });
16
+ expect(centerAligned.renderStyle().margin).toBe('0 auto');
17
+ });
18
+ test('renderStyle merges provided values', () => {
19
+ const annotation = new RTETableAnnotation({
20
+ backgroundColor: '#fafafa',
21
+ border: { style: 'solid', width: '2px', color: '#123' },
22
+ height: '200px',
23
+ alignment: 'center',
24
+ });
25
+ expect(annotation.renderStyle()).toEqual({
26
+ borderCollapse: 'collapse',
27
+ backgroundColor: '#fafafa',
28
+ border: 'solid 2px #123',
29
+ height: '200px',
30
+ margin: '0 auto',
31
+ });
32
+ });
33
+ test('borderStr handles missing and provided borders', () => {
34
+ expect(new RTETableAnnotation({ border: undefined }).borderStr).toBeNull();
35
+ expect(new RTETableAnnotation({
36
+ border: { style: 'dotted', width: '3px', color: '#222' },
37
+ }).borderStr).toBe('dotted 3px #222');
38
+ });
39
+ test('clone duplicates all values', () => {
40
+ const original = new RTETableAnnotation({
41
+ backgroundColor: '#0f0',
42
+ border: { style: 'dashed', width: '1px', color: '#000' },
43
+ height: '50px',
44
+ alignment: 'right',
45
+ });
46
+ const clone = original.clone();
47
+ expect(clone).not.toBe(original);
48
+ expect(clone).toEqual(original);
49
+ });
50
+ test('from returns tuple with type constant', () => {
51
+ const [type, annotation] = RTETableAnnotation.from({
52
+ backgroundColor: '#abc',
53
+ });
54
+ expect(type).toBe(RTETableExtensionAnnotationTypeEnum.TABLE);
55
+ expect(annotation).toBeInstanceOf(RTETableAnnotation);
56
+ expect(annotation.backgroundColor).toBe('#abc');
57
+ });
58
+ test('toJSON filters undefined values', () => {
59
+ const annotation = new RTETableAnnotation({
60
+ backgroundColor: '#f00',
61
+ height: '20px',
62
+ border: undefined,
63
+ });
64
+ expect(annotation.toJSON()).toEqual({
65
+ table: {
66
+ backgroundColor: '#f00',
67
+ height: '20px',
68
+ alignment: 'center',
69
+ },
70
+ });
71
+ });
72
+ test('renderClass returns the extension helper class', () => {
73
+ expect(new RTETableAnnotation().renderClass()).toBe('v-rte--extension-table');
74
+ });
75
+ test('should apply annotation correctly', () => {
76
+ const tableBlock = new RTETableBlock('table-id');
77
+ tableBlock.apply(new RTETableAnnotationsAction({
78
+ backgroundColor: '#3c3ffa',
79
+ }));
80
+ expect(tableBlock.toJSON()).toEqual({
81
+ id: 'table-id',
82
+ type: 'table-block',
83
+ annotations: {
84
+ table: { backgroundColor: '#3c3ffa', alignment: 'center' },
85
+ },
86
+ children: [],
87
+ });
88
+ });
89
+ });
@@ -0,0 +1,79 @@
1
+ import { RTETableCaptionAnnotation } from '../../../extensions/table/annotations/table-caption-annotation';
2
+ import { RTETableExtensionAnnotationTypeEnum } from '../../../extensions/table/annotations/table-annotation';
3
+ describe('RTETableCaptionAnnotation', () => {
4
+ it('should have CAPTION type', () => {
5
+ const annotation = new RTETableCaptionAnnotation();
6
+ expect(annotation.type).toBe(RTETableExtensionAnnotationTypeEnum.CAPTION);
7
+ });
8
+ it('clone should return a new instance with same type', () => {
9
+ const annotation = new RTETableCaptionAnnotation();
10
+ const cloned = annotation.clone();
11
+ expect(cloned).toBeInstanceOf(RTETableCaptionAnnotation);
12
+ expect(cloned).not.toBe(annotation);
13
+ expect(cloned.type).toBe(annotation.type);
14
+ });
15
+ describe('renderClass', () => {
16
+ it('should return CSS class when not standalone', () => {
17
+ const annotation = new RTETableCaptionAnnotation();
18
+ const context = { standalone: false };
19
+ const className = annotation.renderClass(context);
20
+ expect(className).toBe('v-rte--extension-table-caption');
21
+ });
22
+ it('should return CSS class when context is undefined', () => {
23
+ const annotation = new RTETableCaptionAnnotation();
24
+ const className = annotation.renderClass();
25
+ expect(className).toBe('v-rte--extension-table-caption');
26
+ });
27
+ it('should return null when standalone', () => {
28
+ const annotation = new RTETableCaptionAnnotation();
29
+ const context = { standalone: true };
30
+ const className = annotation.renderClass(context);
31
+ expect(className).toBeNull();
32
+ });
33
+ });
34
+ describe('renderStyle', () => {
35
+ it('should return null when not standalone', () => {
36
+ const annotation = new RTETableCaptionAnnotation();
37
+ const context = { standalone: false };
38
+ const style = annotation.renderStyle(context);
39
+ expect(style).toBeNull();
40
+ });
41
+ it('should return null when context is undefined', () => {
42
+ const annotation = new RTETableCaptionAnnotation();
43
+ const style = annotation.renderStyle();
44
+ expect(style).toBeNull();
45
+ });
46
+ it('should return correct style when standalone', () => {
47
+ const annotation = new RTETableCaptionAnnotation();
48
+ const context = { standalone: true };
49
+ const style = annotation.renderStyle(context);
50
+ expect(style).toEqual({
51
+ padding: '8px',
52
+ border: '1px solid #ddd',
53
+ borderBottom: 'none',
54
+ backgroundColor: '#f7f7f7',
55
+ position: 'relative',
56
+ textAlign: 'center',
57
+ minHeight: '22px',
58
+ });
59
+ });
60
+ });
61
+ describe('toJSON', () => {
62
+ it('should return caption style JSON', () => {
63
+ const annotation = new RTETableCaptionAnnotation();
64
+ const json = annotation.toJSON();
65
+ expect(json).not.toBeNull();
66
+ expect(json).toEqual({
67
+ caption: {
68
+ padding: '8px 12px',
69
+ border: '1px solid #ddd',
70
+ borderBottom: 'none',
71
+ backgroundColor: '#f7f7f7',
72
+ position: 'relative',
73
+ textAlign: 'center',
74
+ minHeight: '22px',
75
+ },
76
+ });
77
+ });
78
+ });
79
+ });