@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
@@ -0,0 +1,1300 @@
1
+ import { C as ChangeManager } from './change-manager-6a7eb88c.js';
2
+ import { O as Observer } from './observer-3959f9dd.js';
3
+ import { B as BlockAnnotation, f as RTEBlock, M as ModifyContentAction, i as RTENode, d as ActionHandleStrategy, j as InsertChildrenBeforeAction, l as RemoveChildrenAction } from './code-block-3d3a9030.js';
4
+ import { c as cleanObject } from './object-66c37948.js';
5
+ import { i as isNonNullable } from './type-guard-b48aec98.js';
6
+ import { g as generateUUID } from './create-public-api-runtime-metrics-slimmer-bedf3a1e.js';
7
+ import { U as UpdateCursorPositionAction, V as VegaRTEContent } from './dto-renderer-manager-23784148.js';
8
+
9
+ var RTETableExtensionAnnotationTypeEnum;
10
+ (function (RTETableExtensionAnnotationTypeEnum) {
11
+ RTETableExtensionAnnotationTypeEnum["TABLE"] = "EXTENSION_TABLE";
12
+ RTETableExtensionAnnotationTypeEnum["CELL"] = "EXTENSION_TABLE_CELL";
13
+ RTETableExtensionAnnotationTypeEnum["CAPTION"] = "EXTENSION_TABLE_CAPTION";
14
+ })(RTETableExtensionAnnotationTypeEnum || (RTETableExtensionAnnotationTypeEnum = {}));
15
+ /**
16
+ * Class representing a table annotation in the rich text editor.
17
+ */
18
+ class RTETableAnnotation extends BlockAnnotation {
19
+ constructor({ backgroundColor, border, width, height, alignment = 'center', } = {}) {
20
+ super();
21
+ this.type = RTETableExtensionAnnotationTypeEnum.TABLE;
22
+ this.backgroundColor = backgroundColor;
23
+ this.border = border;
24
+ this.width = width;
25
+ this.height = height;
26
+ this.alignment = alignment;
27
+ }
28
+ /**
29
+ * @inheritDoc
30
+ */
31
+ static from(value) {
32
+ return [RTETableExtensionAnnotationTypeEnum.TABLE, new RTETableAnnotation(value)];
33
+ }
34
+ /**
35
+ * Generates the CSS border string from the border properties.
36
+ *
37
+ * @returns {Nullable<string>} The CSS border string.
38
+ */
39
+ get borderStr() {
40
+ if (!this.border) {
41
+ return null;
42
+ }
43
+ return `${this.border.style} ${this.border.width} ${this.border.color}`;
44
+ }
45
+ /**
46
+ * @inheritDoc
47
+ */
48
+ clone() {
49
+ return new RTETableAnnotation({
50
+ backgroundColor: this.backgroundColor,
51
+ border: this.border,
52
+ width: this.width,
53
+ height: this.height,
54
+ alignment: this.alignment,
55
+ });
56
+ }
57
+ /**
58
+ * @inheritDoc
59
+ */
60
+ toJSON() {
61
+ return {
62
+ table: cleanObject({
63
+ backgroundColor: this.backgroundColor,
64
+ border: this.border,
65
+ width: this.width,
66
+ height: this.height,
67
+ alignment: this.alignment,
68
+ }),
69
+ };
70
+ }
71
+ /**
72
+ * @inheritDoc
73
+ */
74
+ renderStyle() {
75
+ const defaultStyles = {
76
+ borderCollapse: 'collapse',
77
+ };
78
+ const tableStyles = Object.assign({ backgroundColor: this.backgroundColor, border: this.borderStr, width: this.width, height: this.height }, this.renderAlignmentStyle());
79
+ return cleanObject(Object.assign(Object.assign({}, defaultStyles), tableStyles));
80
+ }
81
+ /**
82
+ * @inheritDoc
83
+ */
84
+ renderClass() {
85
+ return 'v-rte--extension-table';
86
+ }
87
+ /**
88
+ * Generates the alignment styles for the table.
89
+ *
90
+ * @returns {Record<string, string>} The alignment styles.
91
+ */
92
+ renderAlignmentStyle() {
93
+ return {
94
+ margin: this.alignment === 'center' ? '0 auto' : this.alignment === 'left' ? '0' : '0 0 0 auto',
95
+ };
96
+ }
97
+ }
98
+
99
+ /**
100
+ * Class representing a table block in the rich text editor.
101
+ */
102
+ class RTETableBlock extends RTEBlock {
103
+ constructor(id) {
104
+ super(id);
105
+ this.type = 'table-block';
106
+ this.children = [];
107
+ this.annotationMap.set(RTETableExtensionAnnotationTypeEnum.TABLE, new RTETableAnnotation());
108
+ }
109
+ /**
110
+ * @inheritDoc
111
+ */
112
+ static from(block, options) {
113
+ var _a;
114
+ const tableBlock = new RTETableBlock(block.id);
115
+ super.convertAnnotationsToMap(tableBlock.annotationMap, Object.assign({}, block.annotations));
116
+ tableBlock.children = super.generateBlockChildren(block.children, options, tableBlock);
117
+ if ((_a = block.annotations) === null || _a === void 0 ? void 0 : _a.table) {
118
+ tableBlock.annotationMap.set(...RTETableAnnotation.from(block.annotations.table));
119
+ }
120
+ return tableBlock;
121
+ }
122
+ /**
123
+ * @inheritDoc
124
+ */
125
+ clone(parent) {
126
+ const clonedBlock = new RTETableBlock(this.id);
127
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
128
+ clonedBlock.parent = parent;
129
+ clonedBlock.annotationMap = super.cloneAnnotations();
130
+ return clonedBlock;
131
+ }
132
+ /**
133
+ * @inheritDoc
134
+ */
135
+ getLastNode() {
136
+ return this.children[this.children.length - 1].getLastNode();
137
+ }
138
+ /**
139
+ * Get the first node of the table block.
140
+ *
141
+ * @returns {RTENode} The first node of the table block.
142
+ */
143
+ getFirstNode() {
144
+ if (this.hasCaption()) {
145
+ return this.children[0].children[0].getLastNode();
146
+ }
147
+ else {
148
+ const childNode = this.children[0].children[0]
149
+ .children[0];
150
+ return childNode.getLastNode();
151
+ }
152
+ }
153
+ /**
154
+ * @inheritDoc
155
+ */
156
+ isNotEmpty() {
157
+ return this.children.length > 0;
158
+ }
159
+ /**
160
+ * @inheritDoc
161
+ */
162
+ toHtml() {
163
+ const childrenHtml = this.children.map((child) => child.toHtml()).join('');
164
+ const attrStr = super.generateAttributeString();
165
+ const classes = super.getClasses();
166
+ return `<table class='${classes}' ${attrStr}>${childrenHtml}</table>`;
167
+ }
168
+ /**
169
+ * @inheritDoc
170
+ */
171
+ toJSON() {
172
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
173
+ }
174
+ /**
175
+ * Retrieves the caption block from the children collection, if present.
176
+ *
177
+ * @returns {Nullable<RTETableCaptionBlock>} The caption block or `null`.
178
+ */
179
+ getCaption() {
180
+ const caption = this.children.find((child) => child.type === 'table-caption');
181
+ return caption !== null && caption !== void 0 ? caption : null;
182
+ }
183
+ /**
184
+ * Inserts, replaces, or removes the caption block within the children.
185
+ *
186
+ * @param {Nullable<RTETableCaptionBlock>} caption - The caption block to set, or `null` to remove.
187
+ */
188
+ setCaption(caption) {
189
+ const index = this.children.findIndex((child) => child.type === 'table-caption');
190
+ if (!caption) {
191
+ if (index >= 0) {
192
+ this.children.splice(index, 1);
193
+ }
194
+ return;
195
+ }
196
+ caption.parent = this;
197
+ if (index >= 0) {
198
+ this.children[index] = caption;
199
+ }
200
+ else {
201
+ this.children.unshift(caption);
202
+ }
203
+ }
204
+ /**
205
+ * Checks whether the table currently stores a caption block reference.
206
+ *
207
+ * @returns {boolean} `true` when a caption DTO is attached; otherwise `false`.
208
+ */
209
+ hasCaption() {
210
+ return isNonNullable(this.getCaption());
211
+ }
212
+ }
213
+
214
+ /**
215
+ * The `RemoteInvocationRegistry` provides methods for performing remote invocation calls
216
+ * and registering remote invocation handlers.
217
+ */
218
+ class RemoteInvocationRegistry {
219
+ /**
220
+ * This function performs a remote invocation call and returning the result.
221
+ *
222
+ * @typedef T generic type
223
+ * @param {HTMLElement} subject the dom node subject
224
+ * @param {unknown[]} args - The `args` parameter of specific method.
225
+ * @returns {Nullable<T>} The result of call `remoteInvocation`.
226
+ */
227
+ call(subject, ...args) {
228
+ let result = null;
229
+ ChangeManager.notify(subject, {
230
+ args,
231
+ resultCallback:
232
+ /* eslint-disable jsdoc/require-jsdoc */
233
+ (response) => {
234
+ result = response;
235
+ },
236
+ });
237
+ return result;
238
+ }
239
+ /**
240
+ * The function registers a remote invocation handler.
241
+ *
242
+ * @param {HTMLElement} subject the dom node subject
243
+ * @param {Function}remoteInvocationHandler - The method that is ultimately called.
244
+ */
245
+ register(subject, remoteInvocationHandler) {
246
+ const observer = new Observer(this.isAcceptableObserver.bind(this), (payload) => {
247
+ const result = remoteInvocationHandler(...payload.args);
248
+ payload.resultCallback(result);
249
+ });
250
+ ChangeManager.register(subject, observer);
251
+ }
252
+ /**
253
+ * The function un-registers a remote invocation call handler.
254
+ *
255
+ * @param {HTMLElement} subject the dom node subject
256
+ */
257
+ unRegister(subject) {
258
+ ChangeManager.clearObserversBySubject(subject);
259
+ }
260
+ /**
261
+ * The function isAcceptableObserver checks if the input matches a specified type T.
262
+ *
263
+ * @param {unknown} _input - The `_input` parameter is of type `unknown`, which means it can hold any
264
+ * value.
265
+ * @returns {boolean} The `isAcceptableObserver` function is returning `true`.
266
+ */
267
+ isAcceptableObserver(_input) {
268
+ return true;
269
+ }
270
+ }
271
+ const remoteInvocationRegistry = new RemoteInvocationRegistry();
272
+
273
+ var TableSettingType;
274
+ (function (TableSettingType) {
275
+ TableSettingType["ROW"] = "ROW";
276
+ TableSettingType["CAPTION"] = "CAPTION";
277
+ TableSettingType["COLUMN"] = "COLUMN";
278
+ TableSettingType["MERGE_CELLS"] = "MERGE_CELLS";
279
+ TableSettingType["TABLE_PROPERTIES"] = "TABLE_PROPERTIES";
280
+ TableSettingType["CELL_PROPERTIES"] = "CELL_PROPERTIES";
281
+ })(TableSettingType || (TableSettingType = {}));
282
+ /**
283
+ * Abstract class for setting event handlers.
284
+ */
285
+ class SettingEventHandler {
286
+ /**
287
+ * Applies a cursor update action so the editor focuses on the resolved node.
288
+ *
289
+ * @param {RTETableBlock} block - Table block currently being toggled.
290
+ * @param {Nullable<RTENode>} focusNode - Target node that should receive the caret.
291
+ */
292
+ syncCursorPosition(block, focusNode) {
293
+ const rootContent = this.findRootContent(block);
294
+ if (focusNode && rootContent) {
295
+ const offset = focusNode.getRangeEndOffset();
296
+ rootContent.apply(new UpdateCursorPositionAction(focusNode, offset));
297
+ }
298
+ }
299
+ /**
300
+ * Walks up the parent chain to locate the nearest VegaRTEContent root.
301
+ *
302
+ * @param {RTETableBlock} block - Table block used as the starting point.
303
+ * @returns {Nullable<VegaRTEContent>} Content root containing the table, if found.
304
+ */
305
+ findRootContent(block) {
306
+ let currentParent = block.parent;
307
+ while (currentParent) {
308
+ if (currentParent instanceof VegaRTEContent) {
309
+ return currentParent;
310
+ }
311
+ currentParent = currentParent.parent;
312
+ }
313
+ }
314
+ }
315
+
316
+ const DELETE_TABLE_ROW = 'DELETE_TABLE_ROW';
317
+ /**
318
+ * Action class for deleting a specific table row.
319
+ */
320
+ class DeleteTableRowAction extends ModifyContentAction {
321
+ /**
322
+ * Constructs an InsertTableRowAction.
323
+ *
324
+ * @param {RTETableRowBlock[]} rowsToBeRemoved - The rows to be removed from the table.
325
+ */
326
+ constructor(rowsToBeRemoved) {
327
+ super();
328
+ this.isFlushable = true;
329
+ this.type = DELETE_TABLE_ROW;
330
+ this.rowsToBeRemoved = rowsToBeRemoved;
331
+ }
332
+ }
333
+
334
+ const INSERT_TABLE_ROW = 'INSERT_TABLE_ROW';
335
+ var InsertTableRowDirection;
336
+ (function (InsertTableRowDirection) {
337
+ InsertTableRowDirection["ABOVE"] = "ABOVE";
338
+ InsertTableRowDirection["BELOW"] = "BELOW";
339
+ })(InsertTableRowDirection || (InsertTableRowDirection = {}));
340
+ /**
341
+ * Action class for inserting a new row into a table within the rich text editor.
342
+ */
343
+ class InsertTableRowAction extends ModifyContentAction {
344
+ /**
345
+ * Constructs an InsertTableRowAction.
346
+ *
347
+ * @param {InsertTableRowDirection} insertDirection - The direction to insert the new row (above or below the current row).
348
+ * @param {RTETableRowBlock[]} selectedRows - The currently selected rows in the table.
349
+ */
350
+ constructor(insertDirection, selectedRows = []) {
351
+ super();
352
+ this.isFlushable = true;
353
+ this.type = INSERT_TABLE_ROW;
354
+ this.selectedRows = [];
355
+ this.insertDirection = insertDirection;
356
+ this.selectedRows = selectedRows;
357
+ }
358
+ }
359
+
360
+ const TOGGLE_HEADER_ROW = 'TOGGLE_HEADER_ROW';
361
+ /**
362
+ * Action to convert selected rows to header rows or revert them back to normal rows.
363
+ */
364
+ class ToggleHeaderRowAction extends ModifyContentAction {
365
+ constructor(selectedRows) {
366
+ super();
367
+ this.isFlushable = true;
368
+ this.type = TOGGLE_HEADER_ROW;
369
+ this.selectedRows = selectedRows;
370
+ }
371
+ }
372
+
373
+ /**
374
+ * Class representing a table row block in the rich text editor.
375
+ */
376
+ class RTETableRowBlock extends RTEBlock {
377
+ constructor(id) {
378
+ super(id);
379
+ this.type = 'table-row';
380
+ this.children = [];
381
+ }
382
+ /**
383
+ * @inheritDoc
384
+ */
385
+ static from(block, options) {
386
+ const tableBlock = new RTETableRowBlock(block.id);
387
+ super.convertAnnotationsToMap(tableBlock.annotationMap, Object.assign({}, block.annotations));
388
+ tableBlock.children = super.generateBlockChildren(block.children, options, tableBlock);
389
+ return tableBlock;
390
+ }
391
+ /**
392
+ * @inheritDoc
393
+ */
394
+ clone(parent) {
395
+ const clonedBlock = new RTETableRowBlock(this.id);
396
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
397
+ clonedBlock.parent = parent;
398
+ clonedBlock.annotationMap = super.cloneAnnotations();
399
+ return clonedBlock;
400
+ }
401
+ /**
402
+ * @inheritDoc
403
+ */
404
+ getLastNode() {
405
+ return this.children[this.children.length - 1].getLastNode();
406
+ }
407
+ /**
408
+ * @inheritDoc
409
+ */
410
+ isNotEmpty() {
411
+ return this.children.length > 0;
412
+ }
413
+ /**
414
+ * @inheritDoc
415
+ */
416
+ toHtml() {
417
+ const childrenHtml = this.children
418
+ .map((child) => {
419
+ return child.toHtml();
420
+ })
421
+ .join('');
422
+ return `<tr>${childrenHtml}</tr>`;
423
+ }
424
+ /**
425
+ * @inheritDoc
426
+ */
427
+ toJSON() {
428
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
429
+ }
430
+ }
431
+
432
+ /**
433
+ * Class representing a table body block in the rich text editor.
434
+ */
435
+ class RTETableBodyBlock extends RTEBlock {
436
+ constructor(id) {
437
+ super(id);
438
+ this.type = 'table-body';
439
+ this.children = [];
440
+ }
441
+ /**
442
+ * @inheritDoc
443
+ */
444
+ static from(block, options) {
445
+ const tableBodyBlock = new RTETableBodyBlock(block.id);
446
+ super.convertAnnotationsToMap(tableBodyBlock.annotationMap, Object.assign({}, block.annotations));
447
+ tableBodyBlock.children = super.generateBlockChildren(block.children, options, tableBodyBlock);
448
+ return tableBodyBlock;
449
+ }
450
+ /**
451
+ * @inheritDoc
452
+ */
453
+ clone(parent) {
454
+ const clonedBlock = new RTETableBodyBlock(this.id);
455
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
456
+ clonedBlock.parent = parent;
457
+ clonedBlock.annotationMap = super.cloneAnnotations();
458
+ return clonedBlock;
459
+ }
460
+ /**
461
+ * @inheritDoc
462
+ */
463
+ getLastNode() {
464
+ return this.children[this.children.length - 1].getLastNode();
465
+ }
466
+ /**
467
+ * @inheritDoc
468
+ */
469
+ isNotEmpty() {
470
+ return this.children.length > 0;
471
+ }
472
+ /**
473
+ * @inheritDoc
474
+ */
475
+ toHtml() {
476
+ const childrenHtml = this.children.map((child) => child.toHtml()).join('');
477
+ return `<tbody>${childrenHtml}</tbody>`;
478
+ }
479
+ /**
480
+ * @inheritDoc
481
+ */
482
+ toJSON() {
483
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
484
+ }
485
+ }
486
+
487
+ /**
488
+ * Class representing a table head block in the rich text editor.
489
+ */
490
+ class RTETableHeadBlock extends RTEBlock {
491
+ constructor(id) {
492
+ super(id);
493
+ this.type = 'table-head';
494
+ this.children = [];
495
+ }
496
+ /**
497
+ * @inheritDoc
498
+ */
499
+ static from(block, options) {
500
+ const tableBlock = new RTETableHeadBlock(block.id);
501
+ super.convertAnnotationsToMap(tableBlock.annotationMap, Object.assign({}, block.annotations));
502
+ tableBlock.children = super.generateBlockChildren(block.children, options, tableBlock);
503
+ return tableBlock;
504
+ }
505
+ /**
506
+ * @inheritDoc
507
+ */
508
+ clone(parent) {
509
+ const clonedBlock = new RTETableHeadBlock(this.id);
510
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
511
+ clonedBlock.parent = parent;
512
+ clonedBlock.annotationMap = super.cloneAnnotations();
513
+ return clonedBlock;
514
+ }
515
+ /**
516
+ * @inheritDoc
517
+ */
518
+ getLastNode() {
519
+ return this.children[this.children.length - 1].getLastNode();
520
+ }
521
+ /**
522
+ * @inheritDoc
523
+ */
524
+ isNotEmpty() {
525
+ return this.children.length > 0;
526
+ }
527
+ /**
528
+ * @inheritDoc
529
+ */
530
+ toHtml() {
531
+ const childrenHtml = this.children
532
+ .map((child) => {
533
+ return child.toHtml();
534
+ })
535
+ .join('');
536
+ return `<thead>${childrenHtml}</thead>`;
537
+ }
538
+ /**
539
+ * @inheritDoc
540
+ */
541
+ toJSON() {
542
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
543
+ }
544
+ }
545
+
546
+ /**
547
+ * Recursively searches for a parent block of a specific type.
548
+ *
549
+ * @typedef T - Generic type extending RTEBlock.
550
+ * @param {RTEBlock} block - The starting block to search from.
551
+ * @param {ClassType<unknown>} dtoClass - The class type to match the parent block against.
552
+ * @returns {T | null} - The found parent block of the specified type, or null if not found.
553
+ */
554
+ function getParentBlockByType(block, dtoClass) {
555
+ if (block) {
556
+ if (block instanceof dtoClass) {
557
+ return block;
558
+ }
559
+ else {
560
+ return getParentBlockByType(block.parent, dtoClass);
561
+ }
562
+ }
563
+ return null;
564
+ }
565
+ /**
566
+ * Generate the table body with the specified number of rows and columns.
567
+ *
568
+ * @param {number} rowCount - The number of rows in the table body.
569
+ * @param {number} columnCount - The number of columns in the table body.
570
+ * @returns {VegaRTETableBodyBlock} The generated table body block.
571
+ */
572
+ function generateTableBody(rowCount, columnCount) {
573
+ return {
574
+ id: generateUUID(),
575
+ type: 'table-body',
576
+ children: Array.from({ length: rowCount }, () => generateTableRow(columnCount)),
577
+ };
578
+ }
579
+ /**
580
+ * Create a table row block with the specified number of columns and cell type.
581
+ *
582
+ * @param {number} columnCount - The number of columns in the row.
583
+ * @returns {VegaRTETableRowBlock} The created table row block.
584
+ */
585
+ function generateTableRow(columnCount) {
586
+ return {
587
+ id: generateUUID(),
588
+ type: 'table-row',
589
+ children: Array.from({ length: columnCount }, () => getDefaultCellBlockTemplate('table-cell')),
590
+ };
591
+ }
592
+ /**
593
+ * Get all table rows from a table block (including rows from all table bodies and headers).
594
+ *
595
+ * @param {RTETableBlock} tableBlock - The table block.
596
+ * @returns {RTETableRowBlock[]} Array of all table row blocks.
597
+ */
598
+ function getAllTableRows(tableBlock) {
599
+ return tableBlock.children
600
+ .filter((child) => child instanceof RTETableBodyBlock || child instanceof RTETableHeadBlock)
601
+ .flatMap((body) => body.children);
602
+ }
603
+ /**
604
+ * Find the first node within a block recursively.
605
+ *
606
+ * @param {Nullable<RTEBlock>} block - The block to find the first node in.
607
+ * @returns {Nullable<RTENode>} The focusable node within the block.
608
+ */
609
+ function getFirstNode(block) {
610
+ if (!block || !block.children || !block.children[0])
611
+ return null;
612
+ const firstNode = block.children[0];
613
+ if (firstNode instanceof RTENode) {
614
+ return firstNode;
615
+ }
616
+ return getFirstNode(firstNode);
617
+ }
618
+ /**
619
+ * Get the default cell block template.
620
+ *
621
+ * @param {string} cellType - The type of the cell block.
622
+ * @returns {VegaRTETableCellBlock} The default cell block template.
623
+ */
624
+ function getDefaultCellBlockTemplate(cellType) {
625
+ const id = generateUUID();
626
+ return {
627
+ id,
628
+ type: cellType,
629
+ children: [
630
+ {
631
+ id: `${id}-p`,
632
+ type: 'paragraph',
633
+ nodes: [
634
+ {
635
+ id: `${id}-p-t`,
636
+ type: 'text',
637
+ text: '',
638
+ },
639
+ ],
640
+ },
641
+ ],
642
+ };
643
+ }
644
+
645
+ var RowOperationType;
646
+ (function (RowOperationType) {
647
+ RowOperationType["HEADER_ROW"] = "HEADER_ROW";
648
+ RowOperationType["ADD_ROW_ABOVE"] = "ADD_ROW_ABOVE";
649
+ RowOperationType["ADD_ROW_BELOW"] = "ADD_ROW_BELOW";
650
+ RowOperationType["DELETE_ROW"] = "DELETE_ROW";
651
+ RowOperationType["SELECT_ROW"] = "SELECT_ROW";
652
+ })(RowOperationType || (RowOperationType = {}));
653
+ /**
654
+ * Event handler for row operations in a table.
655
+ */
656
+ class RowOperationEventHandler extends SettingEventHandler {
657
+ /**
658
+ * @inheritDoc
659
+ */
660
+ canHandle(action) {
661
+ return action[0] === TableSettingType.ROW;
662
+ }
663
+ /**
664
+ * @inheritDoc
665
+ */
666
+ execute(action, extensionContext) {
667
+ const operation = action[1];
668
+ switch (operation) {
669
+ case RowOperationType.ADD_ROW_ABOVE:
670
+ case RowOperationType.ADD_ROW_BELOW:
671
+ this.handleInsertRow(operation, extensionContext);
672
+ break;
673
+ case RowOperationType.DELETE_ROW:
674
+ this.handleDeleteRow(extensionContext);
675
+ break;
676
+ case RowOperationType.HEADER_ROW:
677
+ this.handleToggleHeader(extensionContext);
678
+ break;
679
+ case RowOperationType.SELECT_ROW:
680
+ this.handleSelectRow(extensionContext);
681
+ break;
682
+ }
683
+ }
684
+ /**
685
+ * Adds a new row to the table at the specified position.
686
+ *
687
+ * @param {RowOperationType} direction - The position to insert the new row (above or below).
688
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
689
+ */
690
+ handleInsertRow(direction, extensionContext) {
691
+ const selectedRows = this.getAllSelectedRows(extensionContext);
692
+ if (selectedRows.length > 0) {
693
+ const action = new InsertTableRowAction(direction === RowOperationType.ADD_ROW_ABOVE
694
+ ? InsertTableRowDirection.ABOVE
695
+ : InsertTableRowDirection.BELOW, selectedRows);
696
+ this.applyActionToTable(selectedRows[0], action);
697
+ }
698
+ }
699
+ /**
700
+ * Deletes the selected row(s) from the table.
701
+ *
702
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
703
+ */
704
+ handleDeleteRow(extensionContext) {
705
+ const selectedRows = this.getAllSelectedRows(extensionContext);
706
+ if (selectedRows.length) {
707
+ const action = new DeleteTableRowAction(selectedRows);
708
+ this.applyActionToTable(selectedRows[0], action);
709
+ }
710
+ }
711
+ /**
712
+ * Converts selected rows to header rows or reverts them back to normal rows.
713
+ *
714
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
715
+ */
716
+ handleToggleHeader(extensionContext) {
717
+ const selectedRows = this.getAllSelectedRows(extensionContext);
718
+ if (selectedRows.length > 0) {
719
+ const action = new ToggleHeaderRowAction(selectedRows);
720
+ this.applyActionToTable(selectedRows[0], action);
721
+ }
722
+ }
723
+ /**
724
+ * Selects the focus row(s) in the table.
725
+ *
726
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
727
+ */
728
+ handleSelectRow(extensionContext) {
729
+ const selectedRows = this.getAllSelectedRows(extensionContext);
730
+ if (selectedRows.length > 0 && extensionContext && extensionContext.tableSelection) {
731
+ const allCells = selectedRows.flatMap((row) => row.children);
732
+ extensionContext.tableSelection.setSelectedCells(allCells);
733
+ }
734
+ }
735
+ /**
736
+ * Get all selected table rows.
737
+ *
738
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
739
+ * @returns {RTETableRowBlock[]} The selected table row blocks.
740
+ */
741
+ getAllSelectedRows(extensionContext) {
742
+ const selectedRows = new Set();
743
+ if (extensionContext && extensionContext.tableSelection) {
744
+ const { tableSelection } = extensionContext;
745
+ const selectedCells = tableSelection.getSelectedCells();
746
+ selectedCells.forEach((cell) => {
747
+ const rowBlock = getParentBlockByType(cell, RTETableRowBlock);
748
+ if (rowBlock) {
749
+ selectedRows.add(rowBlock);
750
+ }
751
+ });
752
+ }
753
+ return Array.from(selectedRows);
754
+ }
755
+ /**
756
+ * Applies the given action to the table containing the reference block.
757
+ *
758
+ * @param {RTEBlock} refBlock - The reference block within the table.
759
+ * @param {ModifyContentAction} action - The action to apply to the table.
760
+ */
761
+ applyActionToTable(refBlock, action) {
762
+ const table = getParentBlockByType(refBlock, RTETableBlock);
763
+ if (table) {
764
+ table.apply(action);
765
+ }
766
+ }
767
+ }
768
+
769
+ /**
770
+ * Class representing a table cell annotation in the rich text editor.
771
+ */
772
+ class RTETableCellAnnotation extends BlockAnnotation {
773
+ constructor({ backgroundColor, padding = RTETableCellAnnotation.DEFAULT_PADDING, border = RTETableCellAnnotation.DEFAULT_BORDER, width, height, textAlign = RTETableCellAnnotation.DEFAULT_HORIZONTAL_TEXT_ALIGN, verticalAlign = RTETableCellAnnotation.DEFAULT_VERTICAL_TEXT_ALIGN, } = {}) {
774
+ super();
775
+ this.type = RTETableExtensionAnnotationTypeEnum.CELL;
776
+ this.backgroundColor = backgroundColor;
777
+ this.padding = padding;
778
+ this.border = border;
779
+ this.width = width;
780
+ this.height = height;
781
+ this.textAlign = textAlign;
782
+ this.verticalAlign = verticalAlign;
783
+ }
784
+ /**
785
+ * @inheritDoc
786
+ */
787
+ static from(cellAnnotation) {
788
+ return [RTETableExtensionAnnotationTypeEnum.CELL, new RTETableCellAnnotation(cellAnnotation)];
789
+ }
790
+ /**
791
+ * Generates the CSS border string from the border properties.
792
+ *
793
+ * @returns {Nullable<string>} The CSS border string.
794
+ */
795
+ get borderStr() {
796
+ if (!this.border)
797
+ return null;
798
+ return `${this.border.style} ${this.border.width} ${this.border.color}`;
799
+ }
800
+ /**
801
+ * @inheritDoc
802
+ */
803
+ clone() {
804
+ return new RTETableCellAnnotation({
805
+ backgroundColor: this.backgroundColor,
806
+ padding: this.padding,
807
+ border: this.border,
808
+ width: this.width,
809
+ height: this.height,
810
+ textAlign: this.textAlign,
811
+ verticalAlign: this.verticalAlign,
812
+ });
813
+ }
814
+ /**
815
+ * @inheritDoc
816
+ */
817
+ toJSON() {
818
+ return {
819
+ tableCell: cleanObject({
820
+ backgroundColor: this.backgroundColor,
821
+ padding: this.padding,
822
+ border: this.border,
823
+ width: this.width,
824
+ height: this.height,
825
+ textAlign: this.textAlign,
826
+ verticalAlign: this.verticalAlign,
827
+ }),
828
+ };
829
+ }
830
+ /**
831
+ * @inheritDoc
832
+ */
833
+ renderStyle(options) {
834
+ const style = {
835
+ backgroundColor: this.backgroundColor,
836
+ padding: this.padding,
837
+ border: this.borderStr,
838
+ width: this.width,
839
+ height: this.height,
840
+ textAlign: this.textAlign,
841
+ verticalAlign: this.verticalAlign,
842
+ };
843
+ if (!(options === null || options === void 0 ? void 0 : options.standalone)) {
844
+ return cleanObject(this.removeDefaultValues(style));
845
+ }
846
+ return cleanObject(style);
847
+ }
848
+ /**
849
+ * @inheritDoc
850
+ */
851
+ renderClass() {
852
+ return null;
853
+ }
854
+ /**
855
+ * Removes default values from the style object to avoid redundancy.
856
+ *
857
+ * @param {Record<string, Nullable<string>>} style - The style object to clean.
858
+ * @returns {Record<string, Nullable<string>>} The cleaned style object.
859
+ */
860
+ removeDefaultValues(style) {
861
+ const cleanedStyle = Object.assign({}, style);
862
+ if (cleanedStyle.padding === RTETableCellAnnotation.DEFAULT_PADDING) {
863
+ delete cleanedStyle.padding;
864
+ }
865
+ if (cleanedStyle.border ===
866
+ `${RTETableCellAnnotation.DEFAULT_BORDER.style} ${RTETableCellAnnotation.DEFAULT_BORDER.width} ${RTETableCellAnnotation.DEFAULT_BORDER.color}`) {
867
+ delete cleanedStyle.border;
868
+ }
869
+ if (cleanedStyle.textAlign === RTETableCellAnnotation.DEFAULT_HORIZONTAL_TEXT_ALIGN) {
870
+ delete cleanedStyle.textAlign;
871
+ }
872
+ if (cleanedStyle.verticalAlign === RTETableCellAnnotation.DEFAULT_VERTICAL_TEXT_ALIGN) {
873
+ delete cleanedStyle.verticalAlign;
874
+ }
875
+ return cleanedStyle;
876
+ }
877
+ }
878
+ RTETableCellAnnotation.DEFAULT_PADDING = '12px';
879
+ RTETableCellAnnotation.DEFAULT_BORDER = {
880
+ style: 'solid',
881
+ width: '1px',
882
+ color: '#ddd',
883
+ };
884
+ RTETableCellAnnotation.DEFAULT_HORIZONTAL_TEXT_ALIGN = 'left';
885
+ RTETableCellAnnotation.DEFAULT_VERTICAL_TEXT_ALIGN = 'middle';
886
+
887
+ /**
888
+ * Class representing a table cell block in the rich text editor.
889
+ */
890
+ class RTETableCellBlock extends RTEBlock {
891
+ constructor(id) {
892
+ super(id);
893
+ this.type = 'table-cell';
894
+ this.children = [];
895
+ this.annotationMap.set(RTETableExtensionAnnotationTypeEnum.CELL, new RTETableCellAnnotation());
896
+ }
897
+ /**
898
+ * @inheritDoc
899
+ */
900
+ static from(block, options) {
901
+ var _a;
902
+ const tableCellBlock = new RTETableCellBlock(block.id);
903
+ super.convertAnnotationsToMap(tableCellBlock.annotationMap, Object.assign({}, block.annotations));
904
+ if ((_a = block.annotations) === null || _a === void 0 ? void 0 : _a.tableCell) {
905
+ tableCellBlock.annotationMap.set(...RTETableCellAnnotation.from(block.annotations.tableCell));
906
+ }
907
+ tableCellBlock.children = super.generateBlockChildren(block.children, options, tableCellBlock);
908
+ return tableCellBlock;
909
+ }
910
+ /**
911
+ * @inheritDoc
912
+ */
913
+ clone(parent) {
914
+ const clonedBlock = new RTETableCellBlock(this.id);
915
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
916
+ clonedBlock.parent = parent;
917
+ clonedBlock.annotationMap = super.cloneAnnotations();
918
+ return clonedBlock;
919
+ }
920
+ /**
921
+ * @inheritDoc
922
+ */
923
+ getLastNode() {
924
+ return this.children[this.children.length - 1].getLastNode();
925
+ }
926
+ /**
927
+ * @inheritDoc
928
+ */
929
+ isNotEmpty() {
930
+ return this.children.length > 0;
931
+ }
932
+ /**
933
+ * @inheritDoc
934
+ */
935
+ toHtml() {
936
+ const childrenHtml = this.children.map((child) => child.toHtml()).join('');
937
+ const attrStr = super.generateAttributeString();
938
+ return `<td${attrStr}>${childrenHtml}</td>`;
939
+ }
940
+ /**
941
+ * @inheritDoc
942
+ */
943
+ toJSON() {
944
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
945
+ }
946
+ }
947
+
948
+ /**
949
+ * Class representing a table head cell annotation in the rich text editor.
950
+ */
951
+ class RTETableHeadCellAnnotation extends RTETableCellAnnotation {
952
+ constructor(annotation = {}) {
953
+ super(annotation);
954
+ }
955
+ /**
956
+ * @inheritDoc
957
+ */
958
+ static from(cellAnnotation) {
959
+ return [RTETableExtensionAnnotationTypeEnum.CELL, new RTETableHeadCellAnnotation(cellAnnotation)];
960
+ }
961
+ /**
962
+ * @inheritDoc
963
+ */
964
+ clone() {
965
+ return new RTETableHeadCellAnnotation({
966
+ backgroundColor: this.backgroundColor,
967
+ padding: this.padding,
968
+ border: this.border,
969
+ width: this.width,
970
+ height: this.height,
971
+ textAlign: this.textAlign,
972
+ verticalAlign: this.verticalAlign,
973
+ });
974
+ }
975
+ /**
976
+ * @inheritDoc
977
+ */
978
+ renderStyle(options) {
979
+ var _a;
980
+ const styles = super.renderStyle(options);
981
+ return cleanObject(Object.assign(Object.assign({}, styles), { backgroundColor: (_a = this.backgroundColor) !== null && _a !== void 0 ? _a : RTETableHeadCellAnnotation.DEFAULT_BACKGROUND_COLOR }));
982
+ }
983
+ }
984
+ RTETableHeadCellAnnotation.DEFAULT_BACKGROUND_COLOR = '#f2f2f2';
985
+
986
+ /**
987
+ * Class representing a table head block in the rich text editor.
988
+ */
989
+ class RTETableHeadCellBlock extends RTETableCellBlock {
990
+ constructor(id) {
991
+ super(id);
992
+ this.type = 'table-head-cell';
993
+ this.annotationMap.set(RTETableExtensionAnnotationTypeEnum.CELL, new RTETableHeadCellAnnotation());
994
+ }
995
+ /**
996
+ * @inheritDoc
997
+ */
998
+ static from(block, options) {
999
+ const tableCellBlock = new RTETableHeadCellBlock(block.id);
1000
+ super.convertAnnotationsToMap(tableCellBlock.annotationMap, Object.assign({}, block.annotations));
1001
+ tableCellBlock.children = super.generateBlockChildren(block.children, options, tableCellBlock);
1002
+ return tableCellBlock;
1003
+ }
1004
+ /**
1005
+ * @inheritDoc
1006
+ */
1007
+ clone(parent) {
1008
+ const clonedBlock = new RTETableHeadCellBlock(this.id);
1009
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
1010
+ clonedBlock.parent = parent;
1011
+ clonedBlock.annotationMap = super.cloneAnnotations();
1012
+ return clonedBlock;
1013
+ }
1014
+ /**
1015
+ * @inheritDoc
1016
+ */
1017
+ toHtml() {
1018
+ const childrenHtml = this.children.map((child) => child.toHtml()).join('');
1019
+ const attrStr = super.generateAttributeString();
1020
+ return `<th${attrStr}>${childrenHtml}</th>`;
1021
+ }
1022
+ /**
1023
+ * @inheritDoc
1024
+ */
1025
+ toJSON() {
1026
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
1027
+ }
1028
+ }
1029
+
1030
+ /**
1031
+ * Abstract base strategy for handling table column operations.
1032
+ * Provides common functionality for all column-related strategies.
1033
+ */
1034
+ class TableColumnStrategy extends ActionHandleStrategy {
1035
+ /**
1036
+ * Finds the index range of cells within a table row.
1037
+ * Returns the start and end indices of the given cell range.
1038
+ *
1039
+ * @param {(RTETableCellBlock | RTETableHeadCellBlock)[]} cellRange - The range of table cells to find indices for.
1040
+ * @returns {[number, number]} A tuple containing the start and end indices.
1041
+ */
1042
+ getBoundaryCellIndexOfRow(cellRange) {
1043
+ const firstCell = cellRange[0];
1044
+ const lastCell = cellRange[cellRange.length - 1];
1045
+ return [firstCell.parent.children.indexOf(firstCell), lastCell.parent.children.indexOf(lastCell)];
1046
+ }
1047
+ }
1048
+
1049
+ /**
1050
+ * Strategy to handle the toggle of header state of a table column.
1051
+ */
1052
+ class ToggleHeaderTableColumnStrategy extends TableColumnStrategy {
1053
+ /**
1054
+ * Check if all selected cells are header cells.
1055
+ *
1056
+ * @param {(RTETableCellBlock | RTETableHeadCellBlock)[]} selectedCellRange - The range of selected table cell blocks.
1057
+ * @returns {boolean} True if all selected cells are header cells, false otherwise.
1058
+ */
1059
+ static isFullHeaderSelection(selectedCellRange) {
1060
+ if (selectedCellRange.length === 0) {
1061
+ return false;
1062
+ }
1063
+ const endSelectedCell = selectedCellRange[selectedCellRange.length - 1];
1064
+ const endSelectedCellIndex = endSelectedCell.parent.children.findIndex((child) => child === endSelectedCell);
1065
+ const table = getParentBlockByType(endSelectedCell, RTETableBlock);
1066
+ if (table) {
1067
+ const allTableRows = getAllTableRows(table);
1068
+ return allTableRows.every((row) => {
1069
+ const cell = row.children[endSelectedCellIndex];
1070
+ return cell instanceof RTETableHeadCellBlock;
1071
+ });
1072
+ }
1073
+ return false;
1074
+ }
1075
+ /**
1076
+ * @inheritDoc
1077
+ */
1078
+ handleAction(action, target) {
1079
+ var _a;
1080
+ const headerOn = action.headerOn;
1081
+ const [startCellIndex, endCellIndex] = this.getBoundaryCellIndexOfRow(action.tableCellHeaderRange);
1082
+ const allTableBodyRows = ((_a = target.children.find((body) => body instanceof RTETableBodyBlock)) === null || _a === void 0 ? void 0 : _a.children) || [];
1083
+ allTableBodyRows.forEach((row) => {
1084
+ const firstTableCellIndex = row.children.findIndex((cell) => !(cell instanceof RTETableHeadCellBlock));
1085
+ if (headerOn) {
1086
+ this.toggleCellsToHeader(firstTableCellIndex, endCellIndex, row);
1087
+ }
1088
+ else {
1089
+ this.toggleHeaderCellsToCells(firstTableCellIndex, row, startCellIndex);
1090
+ }
1091
+ });
1092
+ const root = this.getRootContent(target);
1093
+ if (root && action.tableCellHeaderRange[0].parent) {
1094
+ const focusNode = action.tableCellHeaderRange[0].parent.getFirstNode();
1095
+ focusNode && root.apply(new UpdateCursorPositionAction(focusNode, 0));
1096
+ }
1097
+ }
1098
+ /**
1099
+ * Toggles the specified header cells in a row to cells.
1100
+ *
1101
+ * @param {number} firstTableCellIndex - The index of the first table cell in the row.
1102
+ * @param {RTETableRowBlock} row - The table row block containing the cells to toggle.
1103
+ * @param {number} startCellIndex - The index of the first cell to toggle.
1104
+ */
1105
+ toggleHeaderCellsToCells(firstTableCellIndex, row, startCellIndex) {
1106
+ const lastTableHeaderCellIndex = firstTableCellIndex >= 0 ? firstTableCellIndex - 1 : row.children.length - 1;
1107
+ for (let cellIndex = startCellIndex; cellIndex <= lastTableHeaderCellIndex; cellIndex++) {
1108
+ const cellToToggle = row.children[cellIndex];
1109
+ const newCell = RTETableCellBlock.from(cellToToggle.toJSON());
1110
+ this.replaceCellInRow(row, cellToToggle, newCell);
1111
+ }
1112
+ }
1113
+ /**
1114
+ * Toggles the specified cells in a row to header cells.
1115
+ *
1116
+ * @param {number} firstTableCellIndex - The index of the first table cell in the row.
1117
+ * @param {number} endCellIndex - The index of the last cell to toggle.
1118
+ * @param {RTETableRowBlock} row - The table row block containing the cells to toggle.
1119
+ */
1120
+ toggleCellsToHeader(firstTableCellIndex, endCellIndex, row) {
1121
+ for (let tableCellIndex = firstTableCellIndex; tableCellIndex <= endCellIndex; tableCellIndex++) {
1122
+ const cellToToggle = row.children[tableCellIndex];
1123
+ const newHeaderCell = RTETableHeadCellBlock.from(cellToToggle.toJSON());
1124
+ this.replaceCellInRow(row, cellToToggle, newHeaderCell);
1125
+ }
1126
+ }
1127
+ /**
1128
+ * Replaces a cell in a given row at the specified index with a new cell.
1129
+ *
1130
+ * @param {RTETableRowBlock} row - The table row block containing the cell to replace.
1131
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} oldCell - The cell to replace.
1132
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} newCell - The new cell to insert.
1133
+ */
1134
+ replaceCellInRow(row, oldCell, newCell) {
1135
+ row.apply(new InsertChildrenBeforeAction(oldCell, newCell));
1136
+ row.apply(new RemoveChildrenAction(oldCell));
1137
+ }
1138
+ }
1139
+
1140
+ const DELETE_TABLE_COLUMN = 'DELETE_TABLE_COLUMN';
1141
+ /**
1142
+ * Action to delete a table column
1143
+ */
1144
+ class DeleteTableColumnAction extends ModifyContentAction {
1145
+ constructor(target) {
1146
+ super();
1147
+ this.isFlushable = true;
1148
+ this.type = DELETE_TABLE_COLUMN;
1149
+ this.tableCellDeleteRange = target;
1150
+ }
1151
+ }
1152
+
1153
+ const INSERT_TABLE_COLUMN = 'INSERT_TABLE_COLUMN';
1154
+ var InsertTableColumnDirection;
1155
+ (function (InsertTableColumnDirection) {
1156
+ InsertTableColumnDirection["LEFT"] = "LEFT";
1157
+ InsertTableColumnDirection["RIGHT"] = "RIGHT";
1158
+ })(InsertTableColumnDirection || (InsertTableColumnDirection = {}));
1159
+ /**
1160
+ * Action to insert a table column into the RTETable.
1161
+ */
1162
+ class InsertTableColumnAction extends ModifyContentAction {
1163
+ constructor(insertDirection, tableCellInsertRange) {
1164
+ super();
1165
+ this.isFlushable = true;
1166
+ this.type = INSERT_TABLE_COLUMN;
1167
+ this.tableCellInsertRange = tableCellInsertRange;
1168
+ this.insertDirection = insertDirection;
1169
+ }
1170
+ }
1171
+
1172
+ const SELECT_TABLE_COLUMN = 'SELECT_TABLE_COLUMN';
1173
+ /**
1174
+ * Action to select a table column into the RTETable.
1175
+ */
1176
+ class SelectTableColumnAction extends ModifyContentAction {
1177
+ constructor(tableCellSelectRange, selectCellCallback) {
1178
+ super();
1179
+ this.type = SELECT_TABLE_COLUMN;
1180
+ this.tableCellSelectRange = tableCellSelectRange;
1181
+ this.selectCellCallback = selectCellCallback;
1182
+ }
1183
+ }
1184
+
1185
+ const TOGGLE_HEADER_TABLE_COLUMN = 'TOGGLE_HEADER_TABLE_COLUMN';
1186
+ /**
1187
+ * Action to toggle header state of a table column in the RTETable.
1188
+ */
1189
+ class ToggleHeaderTableColumnAction extends ModifyContentAction {
1190
+ constructor(tableCellHeaderRange, headerOn) {
1191
+ super();
1192
+ this.isFlushable = true;
1193
+ this.type = TOGGLE_HEADER_TABLE_COLUMN;
1194
+ this.headerOn = false;
1195
+ this.tableCellHeaderRange = tableCellHeaderRange;
1196
+ this.headerOn = headerOn;
1197
+ }
1198
+ }
1199
+
1200
+ var ColumnOperationType;
1201
+ (function (ColumnOperationType) {
1202
+ ColumnOperationType["HEADER_COLUMN"] = "HEADER_COLUMN";
1203
+ ColumnOperationType["ADD_COLUMN_LEFT"] = "ADD_COLUMN_LEFT";
1204
+ ColumnOperationType["ADD_COLUMN_RIGHT"] = "ADD_COLUMN_RIGHT";
1205
+ ColumnOperationType["DELETE_COLUMN"] = "DELETE_COLUMN";
1206
+ ColumnOperationType["SELECT_COLUMN"] = "SELECT_COLUMN";
1207
+ })(ColumnOperationType || (ColumnOperationType = {}));
1208
+ /**
1209
+ * Event handler for column operations in a table.
1210
+ */
1211
+ class ColumnOperationEventHandler extends SettingEventHandler {
1212
+ /**
1213
+ * @inheritDoc
1214
+ */
1215
+ canHandle(action) {
1216
+ return action[0] === TableSettingType.COLUMN;
1217
+ }
1218
+ /**
1219
+ * @inheritDoc
1220
+ */
1221
+ execute(action, extensionContext) {
1222
+ const selectedCells = extensionContext.tableSelection.getSelectedCells();
1223
+ if (!selectedCells || selectedCells.length === 0) {
1224
+ return;
1225
+ }
1226
+ const operation = action[1];
1227
+ switch (operation) {
1228
+ case ColumnOperationType.ADD_COLUMN_LEFT:
1229
+ case ColumnOperationType.ADD_COLUMN_RIGHT:
1230
+ this.handleInsertColumn(operation, selectedCells);
1231
+ break;
1232
+ case ColumnOperationType.DELETE_COLUMN:
1233
+ this.handleDeleteColumn(selectedCells);
1234
+ break;
1235
+ case ColumnOperationType.SELECT_COLUMN:
1236
+ this.handleSelectColumn(selectedCells, extensionContext);
1237
+ break;
1238
+ case ColumnOperationType.HEADER_COLUMN:
1239
+ this.handleToggleHeaderColumn(selectedCells);
1240
+ break;
1241
+ }
1242
+ }
1243
+ /**
1244
+ * Adds a new column to the table at the specified position.
1245
+ *
1246
+ * @param {ColumnOperationType} direction - The position to insert the new column (left or right).
1247
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1248
+ */
1249
+ handleInsertColumn(direction, selectedCells) {
1250
+ const action = new InsertTableColumnAction(direction === ColumnOperationType.ADD_COLUMN_LEFT
1251
+ ? InsertTableColumnDirection.LEFT
1252
+ : InsertTableColumnDirection.RIGHT, selectedCells);
1253
+ this.applyActionOnTable(action, selectedCells[0]);
1254
+ }
1255
+ /**
1256
+ * Deletes the selected column from the table.
1257
+ *
1258
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1259
+ */
1260
+ handleDeleteColumn(selectedCells) {
1261
+ const action = new DeleteTableColumnAction(selectedCells);
1262
+ this.applyActionOnTable(action, selectedCells[0]);
1263
+ }
1264
+ /**
1265
+ * Selects the entire column in the table.
1266
+ *
1267
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1268
+ * @param {RTETableExtensionContext} extensionContext - The table extension context.
1269
+ */
1270
+ handleSelectColumn(selectedCells, extensionContext) {
1271
+ const action = new SelectTableColumnAction(selectedCells, (allSelectedCells) => {
1272
+ extensionContext.tableSelection.setSelectedCells(allSelectedCells);
1273
+ });
1274
+ this.applyActionOnTable(action, selectedCells[0]);
1275
+ }
1276
+ /**
1277
+ * Toggles the header state of the selected column in the table.
1278
+ *
1279
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1280
+ */
1281
+ handleToggleHeaderColumn(selectedCells) {
1282
+ const headerOn = !ToggleHeaderTableColumnStrategy.isFullHeaderSelection(selectedCells);
1283
+ const action = new ToggleHeaderTableColumnAction(selectedCells, headerOn);
1284
+ this.applyActionOnTable(action, selectedCells[0]);
1285
+ }
1286
+ /**
1287
+ * Apply the specified action on the table containing the selected cell.
1288
+ *
1289
+ * @param {DeleteTableColumnAction | InsertTableColumnAction} action - The action to apply.
1290
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} selectedCell - The selected table cell.
1291
+ */
1292
+ applyActionOnTable(action, selectedCell) {
1293
+ const table = getParentBlockByType(selectedCell, RTETableBlock);
1294
+ if (table) {
1295
+ table.apply(action);
1296
+ }
1297
+ }
1298
+ }
1299
+
1300
+ export { ColumnOperationEventHandler as C, DELETE_TABLE_ROW as D, InsertTableRowDirection as I, RTETableExtensionAnnotationTypeEnum as R, SettingEventHandler as S, TableSettingType as T, RowOperationEventHandler as a, RTETableBlock as b, RTETableCellBlock as c, RTETableRowBlock as d, RTETableBodyBlock as e, RTETableHeadBlock as f, generateTableBody as g, getParentBlockByType as h, RTETableHeadCellBlock as i, TableColumnStrategy as j, getAllTableRows as k, InsertTableColumnDirection as l, getDefaultCellBlockTemplate as m, getFirstNode as n, INSERT_TABLE_ROW as o, TOGGLE_HEADER_ROW as p, INSERT_TABLE_COLUMN as q, remoteInvocationRegistry as r, DELETE_TABLE_COLUMN as s, TOGGLE_HEADER_TABLE_COLUMN as t, ToggleHeaderTableColumnStrategy as u, SELECT_TABLE_COLUMN as v, ColumnOperationType as w, RowOperationType as x };