@heartlandone/vega 2.74.0 → 2.75.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 (742) hide show
  1. package/dist/cjs/align-left-4a76df69.js +22 -0
  2. package/dist/cjs/{app-globals-e9f2edcf.js → app-globals-6c9a0e62.js} +21 -19
  3. package/dist/cjs/{child-nodes-event-prevent-slimmer-536d29fc.js → child-nodes-event-prevent-slimmer-aca87dac.js} +1 -1
  4. package/dist/cjs/click-outside-only-to-dismiss-strategy-407f6d1e.js +32 -0
  5. package/dist/cjs/{code-block-c8ae7e0a.js → code-block-d9001f03.js} +36 -5
  6. package/dist/cjs/{component-value-history-controller-slimmer.abstract-13968181.js → component-value-history-controller-slimmer.abstract-b00e9f58.js} +28 -7
  7. package/dist/cjs/{dto-renderer-manager-ca753971.js → content-state-466f277f.js} +17 -60
  8. package/dist/cjs/{date-required-rule-99cca681.js → date-required-rule-30ee62d0.js} +1 -1
  9. package/dist/cjs/{design-token-4e23c50a.js → design-token-a569577e.js} +2 -2
  10. package/dist/cjs/{dom-node-subject-observer-factory-1c8f7880.js → dom-node-subject-observer-factory-b5e71bf6.js} +4 -0
  11. package/dist/cjs/dto-renderer-manager-ae5fcbba.js +58 -0
  12. package/dist/cjs/{element-appender-slimmer-dc769946.js → element-appender-slimmer-b7fdd82e.js} +164 -40
  13. package/dist/cjs/{event-emit-slimmer-6a591353.js → event-emit-slimmer-2dacabbd.js} +2 -2
  14. package/dist/cjs/{form-field-controller-slimmer-6e3e14fd.js → form-field-controller-slimmer-3ea2464a.js} +3 -3
  15. package/dist/cjs/{image-annotation-action-92df8979.js → image-annotation-action-4435d531.js} +4 -32
  16. package/dist/cjs/{index-638a0f0d.js → index-19e5b936.js} +2 -2
  17. package/dist/cjs/index-58ea899e.js +4 -0
  18. package/dist/cjs/index.cjs.js +54 -49
  19. package/dist/cjs/{inject-keyboard-manager-a6101379.js → inject-keyboard-manager-d21b4387.js} +1 -1
  20. package/dist/cjs/{internal-vega-event-manager-d587a33c.js → internal-vega-event-manager-6befeb34.js} +13 -2
  21. package/dist/cjs/{keyboard-manager-d8adb0ed.js → keyboard-manager-3dea6b28.js} +1 -1
  22. package/dist/cjs/{keyboard-manager-slimmer-15e65357.js → keyboard-manager-slimmer-0d45f944.js} +1 -1
  23. package/dist/cjs/{language-extension-d78389f9.js → language-extension-26331915.js} +8 -8
  24. package/dist/cjs/loader.cjs.js +20 -15
  25. package/dist/cjs/{month-view-generator-706c5477.js → month-view-generator-49cc5fc2.js} +1 -1
  26. package/dist/cjs/{public-rules-23a86d33.js → public-rules-942bd931.js} +8 -8
  27. package/dist/cjs/{range-80f19554.js → range-cafe69a9.js} +1 -1
  28. package/dist/cjs/{responsive-format-facade-8d195366.js → responsive-format-facade-6c22bbbd.js} +5 -4
  29. package/dist/cjs/{rich-text-editor-required-rule-80304585.js → rich-text-editor-required-rule-0dcb08c8.js} +2 -2
  30. package/dist/cjs/sanitize-fb222510.js +131 -0
  31. package/dist/cjs/split-cell-operation-9930fde8.js +2133 -0
  32. package/dist/cjs/{string-format-strategy.abstract-a8264fca.js → string-format-strategy.abstract-63514c60.js} +1 -1
  33. package/dist/cjs/{string-input-formatter-slimmer-338bbd73.js → string-input-formatter-slimmer-655d0322.js} +4 -4
  34. package/dist/cjs/{string-mask-strategy-4e7d3780.js → string-mask-strategy-d23ac21a.js} +2 -2
  35. package/dist/cjs/{style-formatter-dbda894b.js → style-formatter-0e0ae896.js} +2 -2
  36. package/dist/cjs/{sub-state-notify-slimmer-1efa69c4.js → sub-state-notify-slimmer-3fa87162.js} +2 -2
  37. package/dist/cjs/{sub-state-observer-slimmer-6afa62f5.js → sub-state-observer-slimmer-77deba40.js} +2 -2
  38. package/dist/cjs/table-extension-5f27207f.js +6321 -0
  39. package/dist/cjs/{time-required-rule-9d39a620.js → time-required-rule-c96ecdc9.js} +1 -1
  40. package/dist/cjs/{type-guard-69d2cf01.js → type-guard-a0f026d8.js} +12 -0
  41. package/dist/cjs/{valid-credit-card-number-rule-9f40d1d9.js → valid-credit-card-number-rule-c854bed9.js} +1 -1
  42. package/dist/cjs/vega-accordion.cjs.entry.js +15 -11
  43. package/dist/cjs/vega-app-header-button.cjs.entry.js +16 -12
  44. package/dist/cjs/vega-banner.cjs.entry.js +3 -3
  45. package/dist/cjs/vega-box.cjs.entry.js +16 -12
  46. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  47. package/dist/cjs/vega-button-circle.cjs.entry.js +16 -12
  48. package/dist/cjs/vega-button-group_2.cjs.entry.js +7 -7
  49. package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
  50. package/dist/cjs/vega-button.cjs.entry.js +15 -11
  51. package/dist/cjs/vega-calendar_4.cjs.entry.js +9 -9
  52. package/dist/cjs/vega-card.cjs.entry.js +15 -11
  53. package/dist/cjs/vega-carousel.cjs.entry.js +14 -10
  54. package/dist/cjs/vega-checkbox_2.cjs.entry.js +7 -7
  55. package/dist/cjs/vega-chip.cjs.entry.js +16 -12
  56. package/dist/cjs/vega-code-block.cjs.entry.js +11 -11
  57. package/dist/cjs/vega-color-picker.cjs.entry.js +6 -6
  58. package/dist/cjs/vega-combo-box.cjs.entry.js +12 -11
  59. package/dist/cjs/vega-date-picker_2.cjs.entry.js +397 -346
  60. package/dist/cjs/vega-dialog_2.cjs.entry.js +24 -20
  61. package/dist/cjs/vega-divider.cjs.entry.js +16 -12
  62. package/dist/cjs/vega-dropdown_5.cjs.entry.js +42 -21
  63. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  64. package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
  65. package/dist/cjs/vega-file-uploader.cjs.entry.js +6 -6
  66. package/dist/cjs/vega-flag-icon.cjs.entry.js +14 -10
  67. package/dist/cjs/vega-flex.cjs.entry.js +16 -12
  68. package/dist/cjs/vega-font.cjs.entry.js +15 -11
  69. package/dist/cjs/vega-form.cjs.entry.js +9 -9
  70. package/dist/cjs/vega-grid.cjs.entry.js +15 -11
  71. package/dist/cjs/vega-icon.cjs.entry.js +15 -11
  72. package/dist/cjs/vega-image-uploader.cjs.entry.js +19 -15
  73. package/dist/cjs/vega-input-credit-card.cjs.entry.js +11 -11
  74. package/dist/cjs/vega-input-numeric.cjs.entry.js +11 -11
  75. package/dist/cjs/vega-input-passcode.cjs.entry.js +10 -10
  76. package/dist/cjs/vega-input-phone-number.cjs.entry.js +18 -14
  77. package/dist/cjs/vega-input-range.cjs.entry.js +7 -7
  78. package/dist/cjs/vega-input-select.cjs.entry.js +24 -16
  79. package/dist/cjs/vega-input.cjs.entry.js +340 -99
  80. package/dist/cjs/{vega-internal-event-id-f2465f1b.js → vega-internal-event-id-73334b4b.js} +4 -0
  81. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  82. package/dist/cjs/vega-left-nav_5.cjs.entry.js +21 -17
  83. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +19 -15
  84. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  85. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +4 -4
  86. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +2 -2
  87. package/dist/cjs/vega-pagination.cjs.entry.js +17 -13
  88. package/dist/cjs/vega-popover_2.cjs.entry.js +19 -15
  89. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +16 -12
  90. package/dist/cjs/vega-radio_2.cjs.entry.js +10 -10
  91. package/dist/cjs/vega-rich-text-content.cjs.entry.js +18 -20
  92. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +192 -237
  93. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +1521 -0
  94. package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
  95. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +18 -14
  96. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +8 -8
  97. package/dist/cjs/vega-sidenav_3.cjs.entry.js +23 -19
  98. package/dist/cjs/vega-signature-capture.cjs.entry.js +17 -13
  99. package/dist/cjs/vega-stepper.cjs.entry.js +7 -7
  100. package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
  101. package/dist/cjs/vega-table_11.cjs.entry.js +22 -19
  102. package/dist/cjs/vega-textarea.cjs.entry.js +7 -7
  103. package/dist/cjs/vega-time-picker_2.cjs.entry.js +23 -18
  104. package/dist/cjs/vega-toggle-switch.cjs.entry.js +6 -6
  105. package/dist/cjs/vega-tooltip_2.cjs.entry.js +18 -14
  106. package/dist/cjs/vega.cjs.js +20 -15
  107. package/dist/collection/collection-manifest.json +10 -0
  108. package/dist/collection/components/vega-app-header-button/vega-app-header-button.js +1 -1
  109. package/dist/collection/components/vega-button-group/vega-button-group-item/vega-button-group-item.js +1 -1
  110. package/dist/collection/components/vega-calendar/vega-calendar.js +1 -1
  111. package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +2 -1
  112. package/dist/collection/components/vega-date-picker/assets/icons.js +4 -1
  113. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-calendar-open-state-controller.js +2 -1
  114. package/dist/collection/components/vega-date-picker/slimmers/renderers/vega-date-picker-calendar-renderer.js +2 -2
  115. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.js +109 -0
  116. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.js +4 -0
  117. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.js +42 -70
  118. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +12 -56
  119. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +435 -108
  120. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +5 -0
  121. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-search-controller.js +5 -1
  122. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +7 -0
  123. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +3 -2
  124. package/dist/collection/components/vega-dropdown/vega-dropdown.js +19 -4
  125. package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
  126. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.js +51 -0
  127. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-renderer.js +6 -0
  128. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.js +142 -0
  129. package/dist/collection/components/vega-input/slimmers/renderers/vega-input-renderer.js +12 -1
  130. package/dist/collection/components/vega-input/vega-input.js +200 -3
  131. package/dist/collection/components/vega-input-select/slimmers/renderers/vega-input-select-dropdown-renderer.js +8 -3
  132. package/dist/collection/components/vega-popover/slimmers/controllers/vega-popover-appender-controller.js +1 -0
  133. package/dist/collection/components/vega-rich-text-content/vega-rich-text-content.js +9 -1
  134. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy.abstract.js +10 -0
  135. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +24 -2
  136. package/dist/collection/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.js +0 -10
  137. package/dist/collection/components/vega-rich-text-editor/extensions/base-extension-renderer.js +2 -1
  138. package/dist/collection/components/vega-rich-text-editor/extensions/extension.abstract.js +18 -1
  139. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-cell-children-remove-interceptor.js +42 -0
  140. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-cell-content-delete-interceptor.js +26 -0
  141. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-row-insert-interceptor.js +23 -0
  142. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-block-strategy.js +25 -0
  143. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-column-strategy.js +57 -0
  144. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-row-strategy.js +57 -0
  145. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-block-strategy.js +54 -0
  146. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-column-strategy.js +42 -0
  147. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-row-strategy.js +163 -0
  148. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/merge-cells-strategy.js +120 -0
  149. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/select-table-column-strategy.js +22 -0
  150. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/split-cell-horizontally-strategy.js +143 -0
  151. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/split-cell-vertically-strategy.js +80 -0
  152. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/table-column-strategy.abstract.js +19 -0
  153. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/toggle-header-row-strategy.js +133 -0
  154. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/toggle-header-table-column-strategy.js +99 -0
  155. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/update-table-cell-properties-strategy.js +24 -0
  156. package/dist/collection/components/vega-rich-text-editor/extensions/table/action-handler-strategies/update-table-properties-strategy.js +29 -0
  157. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/delete-table-block-action.js +13 -0
  158. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/delete-table-column-action.js +13 -0
  159. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/delete-table-row-action.js +18 -0
  160. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/insert-table-block-action.js +13 -0
  161. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/insert-table-column-action.js +19 -0
  162. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/insert-table-row-action.js +26 -0
  163. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/merge-cells-action.js +17 -0
  164. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/select-table-column-action.js +13 -0
  165. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/split-cell-horizontally-action.js +12 -0
  166. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/split-cell-vertically-action.js +12 -0
  167. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/table-annotations-action.js +18 -0
  168. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/table-caption-action.js +13 -0
  169. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/table-cell-annotations-action.js +18 -0
  170. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/table-head-cell-annotations-action.js +18 -0
  171. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/toggle-header-row-action.js +13 -0
  172. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/toggle-header-table-column-action.js +15 -0
  173. package/dist/collection/components/vega-rich-text-editor/extensions/table/actions/update-table-properties-action.js +38 -0
  174. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotation-handler/table-annotation-handler-base.js +76 -0
  175. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotation-handler/table-annotation-handler.js +69 -0
  176. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotation-handler/table-cell-annotation-handler.js +108 -0
  177. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotation-handler/table-head-cell-annotation-handler.js +14 -0
  178. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-annotation.js +106 -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 +161 -0
  181. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-color-annotation.js +66 -0
  182. package/dist/collection/components/vega-rich-text-editor/extensions/table/annotations/table-head-cell-annotation.js +45 -0
  183. package/dist/collection/components/vega-rich-text-editor/extensions/table/constants/styles.constants.js +21 -0
  184. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-block.js +119 -0
  185. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-body-block.js +56 -0
  186. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-caption-block.js +69 -0
  187. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-cell-block.js +97 -0
  188. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-head-block.js +60 -0
  189. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-head-cell-block.js +53 -0
  190. package/dist/collection/components/vega-rich-text-editor/extensions/table/dto/table-row-block.js +60 -0
  191. package/dist/collection/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/caption-to-caption-block-strategy.js +50 -0
  192. package/dist/collection/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/table-to-table-block-strategy.js +42 -0
  193. package/dist/collection/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/tbody-to-table-body-block-strategy.js +42 -0
  194. package/dist/collection/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/td-to-table-cell-block-strategy.js +71 -0
  195. package/dist/collection/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/thead-to-table-head-block-strategy.js +42 -0
  196. package/dist/collection/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/tr-to-table-row-block-strategy.js +42 -0
  197. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-body-renderer.js +15 -0
  198. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.js +22 -0
  199. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-cell-renderer.js +76 -0
  200. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.js +254 -0
  201. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-head-cell-renderer.js +12 -0
  202. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-head-renderer.js +15 -0
  203. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +142 -0
  204. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-row-renderer.js +15 -0
  205. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.js +152 -0
  206. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/caption-operation.js +78 -0
  207. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/cell-properties-cancel-event-handler.js +17 -0
  208. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/cell-properties-change-event-handler.js +15 -0
  209. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/cell-properties-save-event-handler.js +19 -0
  210. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/cell-properties.js +135 -0
  211. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/column-operation.js +109 -0
  212. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/merge-cells-operation.js +100 -0
  213. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/row-operation.js +132 -0
  214. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/setting-event-handler.abstract.js +45 -0
  215. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/split-cell-operation.js +57 -0
  216. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/table-properties-cancel-event-handler.js +19 -0
  217. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/table-properties-change-event-handler.js +20 -0
  218. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/table-properties-save-event-handler.js +20 -0
  219. package/dist/collection/components/vega-rich-text-editor/extensions/table/setting-event-handlers/table-properties.js +50 -0
  220. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +164 -0
  221. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-icon.js +3 -0
  222. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-selection.js +460 -0
  223. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.js +234 -0
  224. package/dist/collection/components/vega-rich-text-editor/extensions/table/utils/table-color-manager.js +51 -0
  225. package/dist/collection/components/vega-rich-text-editor/extensions/table/utils/utils.js +355 -0
  226. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/align-bottom.js +3 -0
  227. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/align-middle.js +3 -0
  228. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/align-top.js +3 -0
  229. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/objects-align-center-horizontal.js +3 -0
  230. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/objects-align-left.js +3 -0
  231. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/objects-align-right.js +3 -0
  232. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/controllers/vega-rich-text-table-properties-color-controller.js +58 -0
  233. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-cell-properties-form-field-renderer.js +106 -0
  234. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-basic-form-field-renderer.abstract.js +291 -0
  235. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-form-field-renderer.js +58 -0
  236. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-form-renderer.js +111 -0
  237. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.css +149 -0
  238. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.js +251 -0
  239. 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
  240. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-selection-widget/slimmers/renderers/selection-widget-renderer.js +83 -0
  241. 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
  242. 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
  243. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/assets/icon.js +20 -0
  244. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/caption-button-slimmer.js +27 -0
  245. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/cell-properties-button-slimmer.js +26 -0
  246. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.js +86 -0
  247. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/merge-cells-button-slimmer.js +117 -0
  248. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.js +103 -0
  249. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/table-properties-button-slimmer.js +26 -0
  250. 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
  251. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/vega-rich-text-table-setting-renderer.js +55 -0
  252. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.css +20 -0
  253. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.js +222 -0
  254. package/dist/collection/components/vega-rich-text-editor/public-api.js +1 -0
  255. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +20 -0
  256. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator.js +10 -0
  257. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +23 -2
  258. package/dist/collection/components/vega-rich-text-editor/test/dto/content-state.test.js +252 -0
  259. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/annotation-handler/annotation-handler-registration.test.js +164 -0
  260. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/annotation-handler/table-annotation-handler.test.js +288 -0
  261. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/annotation-handler/table-cell-annotation-handler.test.js +316 -0
  262. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/annotation-handler/table-head-cell-annotation-handler.test.js +411 -0
  263. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/caption-operation.test.js +99 -0
  264. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-annotation.test.js +181 -0
  265. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-caption-annotations.test.js +79 -0
  266. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-cell-annotation.test.js +323 -0
  267. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-color-annotation.test.js +32 -0
  268. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-dto.test.js +1094 -0
  269. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-element-to-dto-strategies.test.js +1539 -0
  270. package/dist/collection/components/vega-rich-text-editor/test/extensions/table/table-test-utils.js +172 -0
  271. package/dist/collection/components/vega-rich-text-editor/test/spec-utils.js +5 -2
  272. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.css +4 -0
  273. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +0 -5
  274. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +1 -1
  275. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +2 -1
  276. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +2 -1
  277. package/dist/collection/constants/ui.js +2 -0
  278. package/dist/collection/global/scripts/before-vega-load.js +2 -0
  279. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +13 -2
  280. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +2 -0
  281. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +2 -0
  282. package/dist/collection/helpers/event-manager/test/component-event-id-map.test.js +3 -1
  283. package/dist/collection/helpers/event-manager/test/vega-event-manager.test.js +3 -1
  284. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +60 -32
  285. package/dist/collection/helpers/slimmers/element-appender/test/element-appender-slimmer.test.js +3 -2
  286. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.js +28 -0
  287. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.js +33 -0
  288. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.js +42 -0
  289. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.js +22 -0
  290. package/dist/collection/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.js +1 -0
  291. package/dist/collection/types/test/type-guard.test.js +8 -1
  292. package/dist/collection/types/type-guard.js +11 -0
  293. package/dist/collection/utils/sanitize.js +126 -0
  294. package/dist/collection/utils/spec-utils.js +4 -3
  295. package/dist/collection/utils/test/sanitize.test.js +65 -0
  296. package/dist/esm/align-left-7f959adf.js +17 -0
  297. package/dist/esm/{app-globals-9203a3e5.js → app-globals-4146c01c.js} +10 -8
  298. package/dist/esm/{child-nodes-event-prevent-slimmer-e6f98de5.js → child-nodes-event-prevent-slimmer-225e7b58.js} +1 -1
  299. package/dist/esm/click-outside-only-to-dismiss-strategy-3d286c1b.js +30 -0
  300. package/dist/esm/{code-block-4e0d321d.js → code-block-36393b45.js} +37 -6
  301. package/dist/esm/{component-value-history-controller-slimmer.abstract-0ab0d9f0.js → component-value-history-controller-slimmer.abstract-82339b2b.js} +28 -7
  302. package/dist/esm/{dto-renderer-manager-402e89d0.js → content-state-e8ef033a.js} +15 -60
  303. package/dist/esm/{date-required-rule-a9980386.js → date-required-rule-47ecc28f.js} +1 -1
  304. package/dist/esm/{design-token-175c4c0c.js → design-token-c57a58b4.js} +2 -2
  305. package/dist/esm/{dom-node-subject-observer-factory-1aaa1159.js → dom-node-subject-observer-factory-d4e16f66.js} +3 -1
  306. package/dist/esm/dto-renderer-manager-12bc9121.js +56 -0
  307. package/dist/esm/{element-appender-slimmer-7e7aa230.js → element-appender-slimmer-a7341fc1.js} +161 -37
  308. package/dist/esm/{event-emit-slimmer-2d791d0e.js → event-emit-slimmer-1bb4b533.js} +2 -2
  309. package/dist/esm/{form-field-controller-slimmer-257928c1.js → form-field-controller-slimmer-907bf7c2.js} +3 -3
  310. package/dist/esm/{image-annotation-action-2cdbbd57.js → image-annotation-action-82cef6e4.js} +4 -31
  311. package/dist/esm/index-090d31ca.js +4 -0
  312. package/dist/esm/{index-0d487fae.js → index-2466b0c0.js} +2 -2
  313. package/dist/esm/index.js +26 -22
  314. package/dist/esm/{inject-keyboard-manager-9241968c.js → inject-keyboard-manager-83d76ff5.js} +1 -1
  315. package/dist/esm/{internal-vega-event-manager-fdee2a0a.js → internal-vega-event-manager-2cbb828a.js} +13 -2
  316. package/dist/esm/{keyboard-manager-89acac79.js → keyboard-manager-c92808d8.js} +1 -1
  317. package/dist/esm/{keyboard-manager-slimmer-e303cb7d.js → keyboard-manager-slimmer-79c78ce8.js} +1 -1
  318. package/dist/esm/{language-extension-4bed2436.js → language-extension-dcc43702.js} +2 -2
  319. package/dist/esm/loader.js +20 -15
  320. package/dist/esm/{month-view-generator-4bec99fd.js → month-view-generator-16192182.js} +1 -1
  321. package/dist/esm/polyfills/core-js.js +0 -0
  322. package/dist/esm/polyfills/dom.js +0 -0
  323. package/dist/esm/polyfills/es5-html-element.js +0 -0
  324. package/dist/esm/polyfills/index.js +0 -0
  325. package/dist/esm/polyfills/system.js +0 -0
  326. package/dist/esm/{public-rules-05e83e40.js → public-rules-b8ea651f.js} +8 -8
  327. package/dist/esm/{range-5086f250.js → range-872aad9f.js} +1 -1
  328. package/dist/esm/{responsive-format-facade-f995d6de.js → responsive-format-facade-9278eae4.js} +5 -4
  329. package/dist/esm/{rich-text-editor-required-rule-0d1147a8.js → rich-text-editor-required-rule-36dd4242.js} +1 -1
  330. package/dist/esm/sanitize-fd0cb40d.js +129 -0
  331. package/dist/esm/split-cell-operation-6749f654.js +2090 -0
  332. package/dist/esm/{string-format-strategy.abstract-75540c16.js → string-format-strategy.abstract-fc60db79.js} +1 -1
  333. package/dist/esm/{string-input-formatter-slimmer-3a42d9b8.js → string-input-formatter-slimmer-7a1e8754.js} +4 -4
  334. package/dist/esm/{string-mask-strategy-4a18ed1a.js → string-mask-strategy-0b0accaa.js} +2 -2
  335. package/dist/esm/{style-formatter-f4067407.js → style-formatter-e937952a.js} +2 -2
  336. package/dist/esm/{sub-state-notify-slimmer-71b9bbd5.js → sub-state-notify-slimmer-2ecdba12.js} +2 -2
  337. package/dist/esm/{sub-state-observer-slimmer-41a1b380.js → sub-state-observer-slimmer-2d5dba8d.js} +2 -2
  338. package/dist/esm/table-extension-6b31754b.js +6302 -0
  339. package/dist/esm/{time-required-rule-8ec1faf5.js → time-required-rule-5fa43804.js} +1 -1
  340. package/dist/esm/{type-guard-b48aec98.js → type-guard-c65a227d.js} +12 -1
  341. package/dist/esm/{valid-credit-card-number-rule-96eaf9b1.js → valid-credit-card-number-rule-666c415d.js} +1 -1
  342. package/dist/esm/vega-accordion.entry.js +15 -11
  343. package/dist/esm/vega-app-header-button.entry.js +16 -12
  344. package/dist/esm/vega-banner.entry.js +3 -3
  345. package/dist/esm/vega-box.entry.js +16 -12
  346. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  347. package/dist/esm/vega-button-circle.entry.js +16 -12
  348. package/dist/esm/vega-button-group_2.entry.js +7 -7
  349. package/dist/esm/vega-button-link.entry.js +4 -4
  350. package/dist/esm/vega-button.entry.js +15 -11
  351. package/dist/esm/vega-calendar_4.entry.js +9 -9
  352. package/dist/esm/vega-card.entry.js +15 -11
  353. package/dist/esm/vega-carousel.entry.js +14 -10
  354. package/dist/esm/vega-checkbox_2.entry.js +7 -7
  355. package/dist/esm/vega-chip.entry.js +16 -12
  356. package/dist/esm/vega-code-block.entry.js +11 -11
  357. package/dist/esm/vega-color-picker.entry.js +6 -6
  358. package/dist/esm/vega-combo-box.entry.js +12 -11
  359. package/dist/esm/vega-date-picker_2.entry.js +397 -346
  360. package/dist/esm/vega-dialog_2.entry.js +18 -14
  361. package/dist/esm/vega-divider.entry.js +16 -12
  362. package/dist/esm/vega-dropdown_5.entry.js +42 -21
  363. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  364. package/dist/esm/vega-field-label.entry.js +3 -3
  365. package/dist/esm/vega-file-uploader.entry.js +6 -6
  366. package/dist/esm/vega-flag-icon.entry.js +14 -10
  367. package/dist/esm/vega-flex.entry.js +16 -12
  368. package/dist/esm/vega-font.entry.js +15 -11
  369. package/dist/esm/vega-form.entry.js +9 -9
  370. package/dist/esm/vega-grid.entry.js +15 -11
  371. package/dist/esm/vega-icon.entry.js +15 -11
  372. package/dist/esm/vega-image-uploader.entry.js +18 -14
  373. package/dist/esm/vega-input-credit-card.entry.js +11 -11
  374. package/dist/esm/vega-input-numeric.entry.js +11 -11
  375. package/dist/esm/vega-input-passcode.entry.js +10 -10
  376. package/dist/esm/vega-input-phone-number.entry.js +18 -14
  377. package/dist/esm/vega-input-range.entry.js +7 -7
  378. package/dist/esm/vega-input-select.entry.js +24 -16
  379. package/dist/esm/vega-input.entry.js +340 -99
  380. package/dist/esm/{vega-internal-event-id-4a06d705.js → vega-internal-event-id-3edc9b4e.js} +3 -1
  381. package/dist/esm/vega-item-toggle.entry.js +3 -3
  382. package/dist/esm/vega-left-nav_5.entry.js +17 -13
  383. package/dist/esm/vega-loader-wrapper_2.entry.js +17 -13
  384. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  385. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +4 -4
  386. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -2
  387. package/dist/esm/vega-pagination.entry.js +17 -13
  388. package/dist/esm/vega-popover_2.entry.js +19 -15
  389. package/dist/esm/vega-progress-tracker_2.entry.js +16 -12
  390. package/dist/esm/vega-radio_2.entry.js +10 -10
  391. package/dist/esm/vega-rich-text-content.entry.js +16 -18
  392. package/dist/esm/vega-rich-text-editor_4.entry.js +170 -215
  393. package/dist/esm/vega-rich-text-table-properties_3.entry.js +1515 -0
  394. package/dist/esm/vega-segment-control.entry.js +3 -3
  395. package/dist/esm/vega-selection-chip_2.entry.js +18 -14
  396. package/dist/esm/vega-selection-tile_2.entry.js +8 -8
  397. package/dist/esm/vega-sidenav_3.entry.js +19 -15
  398. package/dist/esm/vega-signature-capture.entry.js +17 -13
  399. package/dist/esm/vega-stepper.entry.js +7 -7
  400. package/dist/esm/vega-tab-group_2.entry.js +4 -4
  401. package/dist/esm/vega-table_11.entry.js +16 -13
  402. package/dist/esm/vega-textarea.entry.js +7 -7
  403. package/dist/esm/vega-time-picker_2.entry.js +23 -18
  404. package/dist/esm/vega-toggle-switch.entry.js +6 -6
  405. package/dist/esm/vega-tooltip_2.entry.js +18 -14
  406. package/dist/esm/vega.js +20 -15
  407. package/dist/sri/vega-sri-manifest.json +353 -329
  408. package/dist/types/components/vega-date-picker/assets/icons.d.ts +1 -1
  409. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-header-render.d.ts +20 -0
  410. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-renderer.d.ts +1 -0
  411. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-calendar-year-month-switcher-renderer.d.ts +4 -11
  412. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +4 -9
  413. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +2 -0
  414. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.d.ts +2 -0
  415. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +7 -2
  416. package/dist/types/components/vega-input/slimmers/controllers/vega-input-render-mode-controller.d.ts +27 -0
  417. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-renderer.d.ts +1 -0
  418. package/dist/types/components/vega-input/slimmers/renderers/vega-input-input-suggestions-renderer.d.ts +40 -0
  419. package/dist/types/components/vega-input/slimmers/renderers/vega-input-renderer.d.ts +3 -0
  420. package/dist/types/components/vega-input/types.d.ts +4 -0
  421. package/dist/types/components/vega-input/vega-input.d.ts +55 -1
  422. package/dist/types/components/vega-popover/slimmers/controllers/vega-popover-appender-controller.d.ts +1 -0
  423. package/dist/types/components/vega-rich-text-content/vega-rich-text-content.d.ts +3 -0
  424. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/action-handle-strategy.abstract.d.ts +7 -0
  425. package/dist/types/components/vega-rich-text-editor/dto/annotations/annotation.abstract.d.ts +2 -5
  426. package/dist/types/components/vega-rich-text-editor/dto/annotations/block-annotation.abstract.d.ts +3 -3
  427. package/dist/types/components/vega-rich-text-editor/dto/annotations/custom-attribute-annotation.d.ts +1 -1
  428. package/dist/types/components/vega-rich-text-editor/dto/blocks/block.abstract.d.ts +10 -6
  429. package/dist/types/components/vega-rich-text-editor/dto/renderers/nodes/text-node-renderer.d.ts +0 -2
  430. package/dist/types/components/vega-rich-text-editor/extensions/extension.abstract.d.ts +15 -2
  431. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-cell-children-remove-interceptor.d.ts +25 -0
  432. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-cell-content-delete-interceptor.d.ts +20 -0
  433. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-interceptors/prevent-row-insert-interceptor.d.ts +19 -0
  434. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-block-strategy.d.ts +14 -0
  435. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-column-strategy.d.ts +31 -0
  436. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/delete-table-row-strategy.d.ts +28 -0
  437. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-block-strategy.d.ts +27 -0
  438. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-column-strategy.d.ts +19 -0
  439. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/insert-table-row-strategy.d.ts +44 -0
  440. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/merge-cells-strategy.d.ts +38 -0
  441. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/select-table-column-strategy.d.ts +12 -0
  442. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/split-cell-horizontally-strategy.d.ts +43 -0
  443. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/split-cell-vertically-strategy.d.ts +27 -0
  444. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/table-column-strategy.abstract.d.ts +20 -0
  445. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/toggle-header-row-strategy.d.ts +41 -0
  446. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/toggle-header-table-column-strategy.d.ts +45 -0
  447. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/update-table-cell-properties-strategy.d.ts +13 -0
  448. package/dist/types/components/vega-rich-text-editor/extensions/table/action-handler-strategies/update-table-properties-strategy.d.ts +12 -0
  449. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/delete-table-block-action.d.ts +12 -0
  450. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/delete-table-column-action.d.ts +15 -0
  451. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/delete-table-row-action.d.ts +17 -0
  452. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/insert-table-block-action.d.ts +20 -0
  453. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/insert-table-column-action.d.ts +23 -0
  454. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/insert-table-row-action.d.ts +23 -0
  455. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/merge-cells-action.d.ts +33 -0
  456. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/select-table-column-action.d.ts +18 -0
  457. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/split-cell-horizontally-action.d.ts +10 -0
  458. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/split-cell-vertically-action.d.ts +10 -0
  459. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/table-annotations-action.d.ts +16 -0
  460. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/table-caption-action.d.ts +14 -0
  461. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/table-cell-annotations-action.d.ts +14 -0
  462. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/table-head-cell-annotations-action.d.ts +15 -0
  463. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/toggle-header-row-action.d.ts +12 -0
  464. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/toggle-header-table-column-action.d.ts +16 -0
  465. package/dist/types/components/vega-rich-text-editor/extensions/table/actions/update-table-properties-action.d.ts +18 -0
  466. package/dist/types/components/vega-rich-text-editor/extensions/table/annotation-handler/table-annotation-handler-base.d.ts +36 -0
  467. package/dist/types/components/vega-rich-text-editor/extensions/table/annotation-handler/table-annotation-handler.d.ts +26 -0
  468. package/dist/types/components/vega-rich-text-editor/extensions/table/annotation-handler/table-cell-annotation-handler.d.ts +56 -0
  469. package/dist/types/components/vega-rich-text-editor/extensions/table/annotation-handler/table-head-cell-annotation-handler.d.ts +13 -0
  470. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-annotation.d.ts +73 -0
  471. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-caption-annotation.d.ts +26 -0
  472. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-cell-annotation.d.ts +76 -0
  473. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-color-annotation.d.ts +43 -0
  474. package/dist/types/components/vega-rich-text-editor/extensions/table/annotations/table-head-cell-annotation.d.ts +22 -0
  475. package/dist/types/components/vega-rich-text-editor/extensions/table/constants/styles.constants.d.ts +3 -0
  476. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-block.d.ts +79 -0
  477. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-body-block.d.ts +42 -0
  478. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-caption-block.d.ts +41 -0
  479. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-cell-block.d.ts +64 -0
  480. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-head-block.d.ts +42 -0
  481. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-head-cell-block.d.ts +34 -0
  482. package/dist/types/components/vega-rich-text-editor/extensions/table/dto/table-row-block.d.ts +44 -0
  483. package/dist/types/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/caption-to-caption-block-strategy.d.ts +29 -0
  484. package/dist/types/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/table-to-table-block-strategy.d.ts +26 -0
  485. package/dist/types/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/tbody-to-table-body-block-strategy.d.ts +26 -0
  486. package/dist/types/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/td-to-table-cell-block-strategy.d.ts +27 -0
  487. package/dist/types/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/thead-to-table-head-block-strategy.d.ts +26 -0
  488. package/dist/types/components/vega-rich-text-editor/extensions/table/element-to-dto-strategies/tr-to-table-row-block-strategy.d.ts +26 -0
  489. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-body-renderer.d.ts +12 -0
  490. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-caption-renderer.d.ts +13 -0
  491. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-cell-renderer.d.ts +37 -0
  492. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.d.ts +88 -0
  493. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-head-cell-renderer.d.ts +12 -0
  494. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-head-renderer.d.ts +12 -0
  495. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.d.ts +54 -0
  496. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-row-renderer.d.ts +12 -0
  497. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.d.ts +66 -0
  498. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/caption-operation.d.ts +36 -0
  499. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/cell-properties-cancel-event-handler.d.ts +17 -0
  500. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/cell-properties-change-event-handler.d.ts +15 -0
  501. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/cell-properties-save-event-handler.d.ts +17 -0
  502. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/cell-properties.d.ts +62 -0
  503. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/column-operation.d.ts +55 -0
  504. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/merge-cells-operation.d.ts +44 -0
  505. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/row-operation.d.ts +61 -0
  506. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/setting-event-handler.abstract.d.ts +48 -0
  507. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/split-cell-operation.d.ts +31 -0
  508. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/table-properties-cancel-event-handler.d.ts +19 -0
  509. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/table-properties-change-event-handler.d.ts +17 -0
  510. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/table-properties-save-event-handler.d.ts +17 -0
  511. package/dist/types/components/vega-rich-text-editor/extensions/table/setting-event-handlers/table-properties.d.ts +33 -0
  512. package/dist/types/components/vega-rich-text-editor/extensions/table/table-extension.d.ts +36 -0
  513. package/dist/types/components/vega-rich-text-editor/extensions/table/table-icon.d.ts +3 -0
  514. package/dist/types/components/vega-rich-text-editor/extensions/table/table-selection.d.ts +164 -0
  515. package/dist/types/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.d.ts +86 -0
  516. package/dist/types/components/vega-rich-text-editor/extensions/table/utils/table-color-manager.d.ts +26 -0
  517. package/dist/types/components/vega-rich-text-editor/extensions/table/utils/utils.d.ts +153 -0
  518. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/align-bottom.d.ts +3 -0
  519. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/align-middle.d.ts +3 -0
  520. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/align-top.d.ts +3 -0
  521. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/objects-align-center-horizontal.d.ts +3 -0
  522. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/objects-align-left.d.ts +3 -0
  523. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/assets/objects-align-right.d.ts +3 -0
  524. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/controllers/vega-rich-text-table-properties-color-controller.d.ts +29 -0
  525. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-cell-properties-form-field-renderer.d.ts +49 -0
  526. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-basic-form-field-renderer.abstract.d.ts +111 -0
  527. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-form-field-renderer.d.ts +27 -0
  528. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/slimmers/renderers/vega-rich-text-table-properties-form-renderer.d.ts +39 -0
  529. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-properties/vega-rich-text-table-properties.d.ts +60 -0
  530. 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
  531. 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
  532. 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
  533. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/assets/icon.d.ts +2 -0
  534. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/caption-button-slimmer.d.ts +11 -0
  535. 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
  536. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.d.ts +28 -0
  537. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/merge-cells-button-slimmer.d.ts +23 -0
  538. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.d.ts +36 -0
  539. 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
  540. 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
  541. 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 +12 -0
  542. package/dist/types/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/vega-rich-text-table-setting.d.ts +58 -0
  543. package/dist/types/components/vega-rich-text-editor/interface.d.ts +34 -2
  544. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +1 -0
  545. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/extension-controller.d.ts +4 -0
  546. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/element-to-dto-strategy/annotation-handler/html-element-to-annotation-generator.d.ts +9 -0
  547. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +19 -6
  548. package/dist/types/components/vega-rich-text-editor/test/extensions/table/annotation-handler/annotation-handler-registration.test.d.ts +1 -0
  549. package/dist/types/components/vega-rich-text-editor/test/extensions/table/annotation-handler/table-annotation-handler.test.d.ts +1 -0
  550. package/dist/types/components/vega-rich-text-editor/test/extensions/table/annotation-handler/table-cell-annotation-handler.test.d.ts +8 -0
  551. package/dist/types/components/vega-rich-text-editor/test/extensions/table/annotation-handler/table-head-cell-annotation-handler.test.d.ts +1 -0
  552. package/dist/types/components/vega-rich-text-editor/test/extensions/table/caption-operation.test.d.ts +1 -0
  553. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-annotation.test.d.ts +1 -0
  554. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-caption-annotations.test.d.ts +1 -0
  555. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-cell-annotation.test.d.ts +1 -0
  556. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-color-annotation.test.d.ts +1 -0
  557. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-dto.test.d.ts +1 -0
  558. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-element-to-dto-strategies.test.d.ts +1 -0
  559. package/dist/types/components/vega-rich-text-editor/test/extensions/table/table-test-utils.d.ts +11 -0
  560. package/dist/types/components/vega-rich-text-editor/test/spec-utils.d.ts +4 -0
  561. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +0 -2
  562. package/dist/types/components.d.ts +186 -7
  563. package/dist/types/constants/ui.d.ts +1 -1
  564. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +2 -0
  565. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +2 -0
  566. package/dist/types/helpers/slimmers/element-appender/element-appender-slimmer.d.ts +4 -9
  567. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-outside-only-to-dismiss-strategy.d.ts +21 -0
  568. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/click-trigger-strategy.d.ts +21 -0
  569. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/hover-trigger-strategy.d.ts +22 -0
  570. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/none-trigger-strategy.d.ts +18 -0
  571. package/dist/types/helpers/slimmers/element-appender/trigger-strategies/trigger-strategy.interface.d.ts +37 -0
  572. package/dist/types/types/components.type.d.ts +6 -0
  573. package/dist/types/types/type-guard.d.ts +8 -0
  574. package/dist/types/types/ui.type.d.ts +9 -0
  575. package/dist/types/utils/sanitize.d.ts +71 -0
  576. package/dist/types/utils/spec-utils.d.ts +2 -1
  577. package/dist/types/utils/test/sanitize.test.d.ts +1 -0
  578. package/dist/vega/index.esm.js +1 -1
  579. package/dist/vega/{p-9fb71d8c.entry.js → p-01dc2e48.entry.js} +1 -1
  580. package/dist/vega/p-0459a474.entry.js +1 -0
  581. package/dist/vega/p-0770a0eb.entry.js +1 -0
  582. package/dist/vega/{p-4957f07a.entry.js → p-0bf4a3a7.entry.js} +1 -1
  583. package/dist/vega/p-0d57293b.js +1 -0
  584. package/dist/vega/p-1199ebf6.entry.js +1 -0
  585. package/dist/vega/p-11a6c1b7.js +1 -0
  586. package/dist/vega/p-1415d93b.entry.js +1 -0
  587. package/dist/vega/p-1431c8b9.js +1 -0
  588. package/dist/vega/{p-b007d0d5.entry.js → p-18560714.entry.js} +1 -1
  589. package/dist/vega/p-1a161082.entry.js +1 -0
  590. package/dist/vega/p-1b44db34.js +1 -0
  591. package/dist/vega/{p-161b9c5b.js → p-1f83cebf.js} +1 -1
  592. package/dist/vega/{p-30e7544c.js → p-20010bd6.js} +1 -1
  593. package/dist/vega/p-205d8401.js +1 -0
  594. package/dist/vega/p-20a98a99.entry.js +1 -0
  595. package/dist/vega/{p-7f9acdf7.entry.js → p-228784f7.entry.js} +1 -1
  596. package/dist/vega/{p-3566ad76.js → p-22989693.js} +1 -1
  597. package/dist/vega/p-273911b2.entry.js +1 -0
  598. package/dist/vega/{p-6b9d2996.entry.js → p-28e630b2.entry.js} +1 -1
  599. package/dist/vega/{p-9ea8eb49.js → p-29f6b2d5.js} +1 -1
  600. package/dist/vega/p-2af2e1ad.entry.js +1 -0
  601. package/dist/vega/p-2af78c38.entry.js +1 -0
  602. package/dist/vega/{p-3b32e75d.entry.js → p-2c830cba.entry.js} +1 -1
  603. package/dist/vega/p-3224d794.entry.js +1 -0
  604. package/dist/vega/{p-7a8c4cf8.entry.js → p-326b5392.entry.js} +1 -1
  605. package/dist/vega/p-3413a678.entry.js +1 -0
  606. package/dist/vega/p-3532aa12.js +1 -0
  607. package/dist/vega/p-395cdd84.entry.js +1 -0
  608. package/dist/vega/{p-44bc9ea9.entry.js → p-3a6ff599.entry.js} +1 -1
  609. package/dist/vega/p-3be82c0f.entry.js +1 -0
  610. package/dist/vega/p-3c0f55f7.entry.js +1 -0
  611. package/dist/vega/p-3e30567a.js +1 -0
  612. package/dist/vega/p-3e5f362f.js +1 -0
  613. package/dist/vega/p-42cd1fde.js +1 -0
  614. package/dist/vega/p-476a173a.js +1 -0
  615. package/dist/vega/p-4b6c60cb.entry.js +1 -0
  616. package/dist/vega/{p-ead1da57.entry.js → p-4c36b528.entry.js} +1 -1
  617. package/dist/vega/{p-c7f292dd.entry.js → p-4ecf0ee7.entry.js} +1 -1
  618. package/dist/vega/{p-f6cd7a08.entry.js → p-4f4c7593.entry.js} +1 -1
  619. package/dist/vega/p-585edae4.entry.js +1 -0
  620. package/dist/vega/p-5b048141.js +1 -0
  621. package/dist/vega/p-5f377954.js +1 -1
  622. package/dist/vega/{p-a2d1c2f3.js → p-5fdb9047.js} +1 -1
  623. package/dist/vega/{p-82dbff54.entry.js → p-60483e3d.entry.js} +1 -1
  624. package/dist/vega/{p-de70aac1.js → p-60851f9d.js} +1 -1
  625. package/dist/vega/{p-9d8e2939.entry.js → p-61145506.entry.js} +1 -1
  626. package/dist/vega/{p-674fe99e.js → p-61ddae59.js} +1 -1
  627. package/dist/vega/p-64386be8.entry.js +1 -0
  628. package/dist/vega/p-6490b69a.entry.js +1 -0
  629. package/dist/vega/p-6bc1552e.entry.js +1 -0
  630. package/dist/vega/{p-2ae5ad30.entry.js → p-6e4e7192.entry.js} +1 -1
  631. package/dist/vega/{p-be0b67b8.entry.js → p-76d144f5.entry.js} +1 -1
  632. package/dist/vega/p-76eb9cd0.entry.js +1 -0
  633. package/dist/vega/{p-a5d4d168.entry.js → p-77c9949d.entry.js} +1 -1
  634. package/dist/vega/p-8187878e.js +1 -0
  635. package/dist/vega/p-8198a77c.js +1 -0
  636. package/dist/vega/p-82ad1006.entry.js +1 -0
  637. package/dist/vega/p-839c9d62.entry.js +1 -0
  638. package/dist/vega/{p-a58bdbad.entry.js → p-849f78a7.entry.js} +1 -1
  639. package/dist/vega/{p-748eb5a2.js → p-85bfa0f7.js} +1 -1
  640. package/dist/vega/{p-676eaf3f.entry.js → p-87764570.entry.js} +1 -1
  641. package/dist/vega/p-88c894e8.entry.js +1 -0
  642. package/dist/vega/{p-184d8443.js → p-89083d63.js} +1 -1
  643. package/dist/vega/{p-a8dad05d.js → p-920719ad.js} +1 -1
  644. package/dist/vega/{p-ce2ffff7.js → p-9472d19a.js} +1 -1
  645. package/dist/vega/p-96657262.entry.js +1 -0
  646. package/dist/vega/p-979e4bd4.entry.js +1 -0
  647. package/dist/vega/{p-9b673fd4.entry.js → p-9c624e03.entry.js} +1 -1
  648. package/dist/vega/p-a01f985f.entry.js +1 -0
  649. package/dist/vega/{p-a4ec6575.js → p-a2aeb646.js} +1 -1
  650. package/dist/vega/p-a495463f.entry.js +1 -0
  651. package/dist/vega/p-b4ea3fad.js +1 -0
  652. package/dist/vega/p-b56b0b89.js +1 -0
  653. package/dist/vega/{p-c7194674.entry.js → p-b5b75a2f.entry.js} +1 -1
  654. package/dist/vega/{p-d991fb11.js → p-badad9ed.js} +1 -1
  655. package/dist/vega/{p-2409a475.entry.js → p-bccaf3d2.entry.js} +1 -1
  656. package/dist/vega/p-bde5c990.entry.js +1 -0
  657. package/dist/vega/p-beb6c1ce.entry.js +1 -0
  658. package/dist/vega/p-c02b01ec.entry.js +1 -0
  659. package/dist/vega/p-c1fdcb62.js +1 -0
  660. package/dist/vega/p-c5e7035b.entry.js +1 -0
  661. package/dist/vega/p-c78fe943.js +1 -0
  662. package/dist/vega/{p-f2c8c363.js → p-c841be8d.js} +1 -1
  663. package/dist/vega/p-cd078909.entry.js +1 -0
  664. package/dist/vega/{p-d1d0f08a.js → p-d0e31633.js} +1 -1
  665. package/dist/vega/p-d5c09a94.entry.js +1 -0
  666. package/dist/vega/p-d907f8a2.js +1 -0
  667. package/dist/vega/{p-6c1ef2ed.js → p-dd11f735.js} +1 -1
  668. package/dist/vega/{p-96797fee.entry.js → p-de850e98.entry.js} +1 -1
  669. package/dist/vega/{p-3d85411d.js → p-e16b3adf.js} +1 -1
  670. package/dist/vega/p-e1dd23f8.entry.js +1 -0
  671. package/dist/vega/{p-3226c208.js → p-e1de1cdc.js} +1 -1
  672. package/dist/vega/{p-6e84e451.entry.js → p-e7cfb6b6.entry.js} +1 -1
  673. package/dist/vega/{p-5be29f14.js → p-e819940c.js} +1 -1
  674. package/dist/vega/p-e95ed6f3.entry.js +1 -0
  675. package/dist/vega/p-ebb14c84.js +1 -0
  676. package/dist/vega/p-f0a8aed3.entry.js +1 -0
  677. package/dist/vega/p-f2b8abd3.entry.js +1 -0
  678. package/dist/vega/p-fb238751.entry.js +1 -0
  679. package/dist/vega/p-fcabf0dc.js +1 -0
  680. package/dist/vega/p-fdebc47f.entry.js +1 -0
  681. package/dist/vega/vega.esm.js +1 -1
  682. package/package.json +1 -1
  683. package/style/vega-icons.css +17266 -0
  684. package/dist/cjs/function-extension-5972c73c.js +0 -2927
  685. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/text-node-color-controller.js +0 -51
  686. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/text-node-rendering-registry.js +0 -26
  687. package/dist/esm/function-extension-45e413ff.js +0 -2908
  688. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/text-node-color-controller.d.ts +0 -22
  689. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/text-node-rendering-registry.d.ts +0 -22
  690. package/dist/vega/p-05feab84.entry.js +0 -1
  691. package/dist/vega/p-071f9d00.entry.js +0 -1
  692. package/dist/vega/p-0f601e59.entry.js +0 -1
  693. package/dist/vega/p-1a7e97d2.entry.js +0 -1
  694. package/dist/vega/p-207cfa6a.js +0 -1
  695. package/dist/vega/p-29618be2.js +0 -1
  696. package/dist/vega/p-301096ee.js +0 -1
  697. package/dist/vega/p-310a6294.entry.js +0 -1
  698. package/dist/vega/p-3162a7fd.entry.js +0 -1
  699. package/dist/vega/p-3398f553.entry.js +0 -1
  700. package/dist/vega/p-370ee9e3.entry.js +0 -1
  701. package/dist/vega/p-38b8efe5.entry.js +0 -1
  702. package/dist/vega/p-398220f5.entry.js +0 -1
  703. package/dist/vega/p-3a279b71.js +0 -1
  704. package/dist/vega/p-3ebc8b5b.entry.js +0 -1
  705. package/dist/vega/p-3f56d184.entry.js +0 -1
  706. package/dist/vega/p-42b7b5df.js +0 -1
  707. package/dist/vega/p-451ddd84.js +0 -1
  708. package/dist/vega/p-59fa3f68.js +0 -1
  709. package/dist/vega/p-5a0c92db.entry.js +0 -1
  710. package/dist/vega/p-5b71c85e.js +0 -1
  711. package/dist/vega/p-5c492358.entry.js +0 -1
  712. package/dist/vega/p-697eb0e1.js +0 -1
  713. package/dist/vega/p-73383099.js +0 -1
  714. package/dist/vega/p-779cd090.entry.js +0 -1
  715. package/dist/vega/p-7c238c19.entry.js +0 -1
  716. package/dist/vega/p-8bd496b4.js +0 -1
  717. package/dist/vega/p-94cf46ca.entry.js +0 -1
  718. package/dist/vega/p-950bf9a9.entry.js +0 -1
  719. package/dist/vega/p-95b11cdd.entry.js +0 -1
  720. package/dist/vega/p-99676172.entry.js +0 -1
  721. package/dist/vega/p-9a83a6b0.js +0 -1
  722. package/dist/vega/p-9b7daab0.entry.js +0 -1
  723. package/dist/vega/p-a6dfef41.entry.js +0 -1
  724. package/dist/vega/p-a7f151fe.entry.js +0 -1
  725. package/dist/vega/p-b0ed81e2.js +0 -1
  726. package/dist/vega/p-b18c12cb.entry.js +0 -1
  727. package/dist/vega/p-b19d4e26.entry.js +0 -1
  728. package/dist/vega/p-b4be03bb.entry.js +0 -1
  729. package/dist/vega/p-ba223773.entry.js +0 -1
  730. package/dist/vega/p-bb9db84a.entry.js +0 -1
  731. package/dist/vega/p-c34feecd.entry.js +0 -1
  732. package/dist/vega/p-c4700277.entry.js +0 -1
  733. package/dist/vega/p-c796307d.entry.js +0 -1
  734. package/dist/vega/p-ca9b4af9.entry.js +0 -1
  735. package/dist/vega/p-cadd84ec.entry.js +0 -1
  736. package/dist/vega/p-e3fa091a.js +0 -1
  737. package/dist/vega/p-edbecf19.entry.js +0 -1
  738. package/dist/vega/p-f0bde406.js +0 -1
  739. package/dist/vega/p-f38a4be2.entry.js +0 -1
  740. package/dist/vega/p-f844f3f1.entry.js +0 -1
  741. package/dist/vega/p-f92752d2.entry.js +0 -1
  742. package/dist/vega/p-fbda4a20.entry.js +0 -1
@@ -0,0 +1,2133 @@
1
+ 'use strict';
2
+
3
+ const codeBlock = require('./code-block-d9001f03.js');
4
+ const object = require('./object-e2e28e3d.js');
5
+ const darkModeStyleController = require('./dark-mode-style-controller-c21172aa.js');
6
+ require('./global-slimmer-registry-b3bce7e0.js');
7
+ const createPublicApiRuntimeMetricsSlimmer = require('./create-public-api-runtime-metrics-slimmer-e2e274e1.js');
8
+ const ui = require('./ui-9e181079.js');
9
+ const typeGuard = require('./type-guard-a0f026d8.js');
10
+ const contentState = require('./content-state-466f277f.js');
11
+
12
+ const ThemeManagerRuntimeMetricsPayloadDefinition = [
13
+ {
14
+ payloadKey: 'IS_OVERRIDECOLORS_METHOD_CALLED',
15
+ payloadDescription: 'Indicate if the method overrideColors of public API ThemeManager is called',
16
+ /**
17
+ * Indicate whether the method is collected when the method been called .
18
+ *
19
+ * @param {string} scope - The class name of public api
20
+ * @param {string} methodName - The method name called by the public api
21
+ * @returns {boolean} A boolean value
22
+ */
23
+ canAccept: (scope, methodName) => scope === 'ThemeManager' && methodName === 'overrideColors',
24
+ /**
25
+ * The function checks if the method is be called.
26
+ *
27
+ * @returns {boolean} A boolean value
28
+ */
29
+ payloadValue: () => {
30
+ return true;
31
+ },
32
+ },
33
+ {
34
+ payloadKey: 'IS_RESET_METHOD_CALLED',
35
+ payloadDescription: 'Indicate if the method reset of public API ThemeManager is called',
36
+ /**
37
+ * Indicate whether the method is collected when the method been called .
38
+ *
39
+ * @param {string} scope - The class name of public api
40
+ * @param {string} methodName - The method name called by the public api
41
+ * @returns {boolean} A boolean value
42
+ */
43
+ canAccept: (scope, methodName) => scope === 'ThemeManager' && methodName === 'reset',
44
+ /**
45
+ * The function checks if the method is be called.
46
+ *
47
+ * @returns {boolean} A boolean value
48
+ */
49
+ payloadValue: () => {
50
+ return true;
51
+ },
52
+ },
53
+ {
54
+ payloadKey: 'IS_TOGGLEDARKMODE_METHOD_CALLED',
55
+ payloadDescription: 'Indicate if the method toggleDarkMode of public API ThemeManager is called',
56
+ /**
57
+ * Indicate whether the method is collected when the method been called .
58
+ *
59
+ * @param {string} scope - The class name of public api
60
+ * @param {string} methodName - The method name called by the public api
61
+ * @returns {boolean} A boolean value
62
+ */
63
+ canAccept: (scope, methodName) => scope === 'ThemeManager' && methodName === 'toggleDarkMode',
64
+ /**
65
+ * The function checks if the method is be called.
66
+ *
67
+ * @returns {boolean} A boolean value
68
+ */
69
+ payloadValue: () => {
70
+ return true;
71
+ },
72
+ },
73
+ {
74
+ payloadKey: 'IS_ISDARKMODE_METHOD_CALLED',
75
+ payloadDescription: 'Indicate if the method isDarkMode of public API ThemeManager is called',
76
+ /**
77
+ * Indicate whether the method is collected when the method been called .
78
+ *
79
+ * @param {string} scope - The class name of public api
80
+ * @param {string} methodName - The method name called by the public api
81
+ * @returns {boolean} A boolean value
82
+ */
83
+ canAccept: (scope, methodName) => scope === 'ThemeManager' && methodName === 'isDarkMode',
84
+ /**
85
+ * The function checks if the method is be called.
86
+ *
87
+ * @returns {boolean} A boolean value
88
+ */
89
+ payloadValue: () => {
90
+ return true;
91
+ },
92
+ },
93
+ {
94
+ payloadKey: 'IS_APPLY_BRANDING_METHOD_CALLED',
95
+ payloadDescription: 'Indicate if the method applyBranding of public API ThemeManager is called',
96
+ /**
97
+ * Indicate whether the method is collected when the method been called .
98
+ *
99
+ * @param {string} scope - The class name of public api
100
+ * @param {string} methodName - The method name called by the public api
101
+ * @returns {boolean} A boolean value
102
+ */
103
+ canAccept: (scope, methodName) => scope === 'ThemeManager' && methodName === 'applyBranding',
104
+ /**
105
+ * The function checks if the method is be called.
106
+ *
107
+ * @returns {boolean} A boolean value
108
+ */
109
+ payloadValue: () => {
110
+ return true;
111
+ },
112
+ },
113
+ ];
114
+
115
+ var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
116
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
117
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
118
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
119
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
120
+ };
121
+ /**
122
+ * Vega components theme manager
123
+ */
124
+ class ThemeManager {
125
+ constructor() {
126
+ this.vegaPublicAPIRuntimeMetricsSlimmer = createPublicApiRuntimeMetricsSlimmer.createPublicAPIRuntimeMetricsSlimmer(ThemeManager, ['overrideColors', 'reset', 'toggleDarkMode', 'isDarkMode', 'applyBranding'], ThemeManagerRuntimeMetricsPayloadDefinition);
127
+ }
128
+ /**
129
+ * It takes the colors you passed in, parses them into the correct format, and then applies them to the theme
130
+ *
131
+ * @param {VegaThemeOverrideColors} overrideColors - OverrideColors - This is the object that you pass to the function.
132
+ * @vegaVersion 1.20.0
133
+ */
134
+ async overrideColors(overrideColors) {
135
+ void darkModeStyleController.VegaInternalThemeManager.overrideColors(overrideColors);
136
+ }
137
+ /**
138
+ * It removes all the custom override theme styles from the DOM
139
+ *
140
+ * @vegaVersion 1.20.0
141
+ */
142
+ async reset() {
143
+ void darkModeStyleController.VegaInternalThemeManager.reset();
144
+ }
145
+ /**
146
+ * This function toggles the dark mode of a webpage by adding or removing a 'dark' class to the HTML element.
147
+ *
148
+ * @param {boolean | undefined} darkMode - A boolean or undefined value that determines whether to enable or disable dark mode.
149
+ * If it is true, dark mode is enabled.
150
+ * If it is false, dark mode is disabled.
151
+ * @vegaVersion 1.32.0
152
+ */
153
+ toggleDarkMode(darkMode) {
154
+ darkModeStyleController.VegaInternalThemeManager.toggleDarkMode(darkMode);
155
+ }
156
+ /**
157
+ * The function checks if the HTML element has a class of "dark" and returns a boolean value accordingly.
158
+ *
159
+ * @returns {boolean} A boolean value indicating whether the HTML element has a class of "dark", which is
160
+ * typically used to indicate that the website is in dark mode.
161
+ * @vegaVersion 1.32.0
162
+ */
163
+ isDarkMode() {
164
+ return darkModeStyleController.VegaInternalThemeManager.isDarkMode();
165
+ }
166
+ /**
167
+ * This function switches the Vega theme to a brand theme based on the provided options.
168
+ *
169
+ * @param {BrandOptions} options - The options includes 'gp', 'genius' and 'heartland' options
170
+ * @vegaVersion 2.47.0
171
+ */
172
+ applyBranding(options) {
173
+ darkModeStyleController.VegaInternalThemeManager.applyBranding(options);
174
+ }
175
+ }
176
+ __decorate([
177
+ createPublicApiRuntimeMetricsSlimmer.InjectVegaTelemetrySlimmer()
178
+ ], ThemeManager.prototype, "vegaPublicAPIRuntimeMetricsSlimmer", void 0);
179
+ const VegaThemeManager = new ThemeManager();
180
+
181
+ const RTE_TABLE_BORDER_STYLES = [
182
+ 'none',
183
+ 'solid',
184
+ 'dashed',
185
+ 'dotted',
186
+ 'double',
187
+ 'groove',
188
+ 'ridge',
189
+ 'inset',
190
+ 'outset',
191
+ ];
192
+ const RTE_TABLE_DEFAULT_COLORS = [
193
+ { key: 'white', dark: '#04041C', light: '#FCFCFC' },
194
+ { key: 'red', dark: '#AA091C', light: '#FF4C61' },
195
+ { key: 'orange', dark: '#974502', light: '#FDAB68' },
196
+ { key: 'yellow', dark: '#735C00', light: '#FFDC4C' },
197
+ { key: 'green', dark: '#2E6D18', light: '#7BDA58' },
198
+ { key: 'teal', dark: '#287171', light: '#7BD1D1' },
199
+ { key: 'gray', dark: '#595959', light: '#999999' },
200
+ { key: 'black', dark: '#FCFCFC', light: '#04041C' },
201
+ ];
202
+
203
+ /**
204
+ * Manages table colors for the rich text editor.
205
+ */
206
+ class RTETableColorManager {
207
+ /**
208
+ * Get the list of table colors.
209
+ *
210
+ * @returns {VegaRTEColorSchema[]} - Array of table colors.
211
+ */
212
+ static getTableColors() {
213
+ return RTETableColorManager.TABLE_COLORS;
214
+ }
215
+ /**
216
+ * Set the list of table colors.
217
+ *
218
+ * @param {VegaRTEColorSchema[]} colors - Array of table colors.
219
+ */
220
+ static setTableColors(colors) {
221
+ RTETableColorManager.TABLE_COLORS = colors;
222
+ }
223
+ /**
224
+ * Get color key from color value
225
+ *
226
+ * @param {string} colorValue - color value
227
+ * @returns {string} - color key
228
+ */
229
+ static getColorKey(colorValue) {
230
+ var _a;
231
+ let result = null;
232
+ const tableColors = RTETableColorManager.TABLE_COLORS;
233
+ if (tableColors) {
234
+ const hexColor = (_a = ui.rgbToHex(colorValue)) === null || _a === void 0 ? void 0 : _a.toUpperCase();
235
+ if (hexColor) {
236
+ result = tableColors.find((schema) => VegaThemeManager.isDarkMode() ? schema.dark === hexColor : schema.light === hexColor);
237
+ }
238
+ else {
239
+ for (const color of tableColors) {
240
+ if (color.key === colorValue) {
241
+ result = color;
242
+ break;
243
+ }
244
+ }
245
+ }
246
+ }
247
+ return result ? result.key : '';
248
+ }
249
+ }
250
+ RTETableColorManager.TABLE_COLORS = RTE_TABLE_DEFAULT_COLORS;
251
+
252
+ /**
253
+ * Class representing a table color annotation in the rich text editor.
254
+ */
255
+ class RTETableColorAnnotation extends codeBlock.BlockAnnotation {
256
+ constructor(colorKey) {
257
+ super();
258
+ this.type = exports.RTETableExtensionAnnotationTypeEnum.COLOR;
259
+ if (colorKey) {
260
+ this.color = this.formatColor(colorKey);
261
+ }
262
+ }
263
+ /**
264
+ * Render the style for the annotation
265
+ *
266
+ * @returns {AnnotationStyle} The style object containing the color
267
+ */
268
+ renderStyle() {
269
+ const color = this.color
270
+ ? darkModeStyleController.VegaInternalThemeManager.isDarkMode()
271
+ ? this.color.dark
272
+ : this.color.light
273
+ : '';
274
+ return { color };
275
+ }
276
+ /**
277
+ * Render the CSS class for the annotation
278
+ *
279
+ * @returns {Nullable<string>} Always returns null as no CSS class is used
280
+ */
281
+ renderClass() {
282
+ return null;
283
+ }
284
+ /**
285
+ * Convert the annotation to a JSON representation
286
+ *
287
+ * @returns {Record<string, string>} A JSON object containing the color key
288
+ */
289
+ toJSON() {
290
+ var _a;
291
+ return {
292
+ color: ((_a = this.color) === null || _a === void 0 ? void 0 : _a.key) || '',
293
+ };
294
+ }
295
+ /**
296
+ * Clone the current annotation
297
+ *
298
+ * @returns {BlockAnnotation<RTETableExtensionAnnotationTypeEnum.COLOR>} A new instance of RTETableColorAnnotation with the same color key
299
+ */
300
+ clone() {
301
+ var _a;
302
+ return new RTETableColorAnnotation((_a = this.color) === null || _a === void 0 ? void 0 : _a.key);
303
+ }
304
+ /**
305
+ * format table color
306
+ *
307
+ * @param {string} colorKey - table color
308
+ * @returns {Nullable<VegaRTEColorSchema>} - VegaRTEColorSchema
309
+ */
310
+ formatColor(colorKey) {
311
+ return RTETableColorManager.getTableColors().find((item) => item.key === colorKey);
312
+ }
313
+ }
314
+
315
+ exports.RTETableExtensionAnnotationTypeEnum = void 0;
316
+ (function (RTETableExtensionAnnotationTypeEnum) {
317
+ RTETableExtensionAnnotationTypeEnum["TABLE"] = "EXTENSION_TABLE";
318
+ RTETableExtensionAnnotationTypeEnum["CELL"] = "EXTENSION_TABLE_CELL";
319
+ RTETableExtensionAnnotationTypeEnum["CAPTION"] = "EXTENSION_TABLE_CAPTION";
320
+ RTETableExtensionAnnotationTypeEnum["COLOR"] = "EXTENSION_TABLE_COLOR";
321
+ })(exports.RTETableExtensionAnnotationTypeEnum || (exports.RTETableExtensionAnnotationTypeEnum = {}));
322
+ /**
323
+ * Class representing a table annotation in the rich text editor.
324
+ */
325
+ class RTETableAnnotation extends codeBlock.BlockAnnotation {
326
+ constructor({ backgroundColor, border, width, height, alignment, borderCollapse } = {}, useInternalStyle = true) {
327
+ super();
328
+ this.type = exports.RTETableExtensionAnnotationTypeEnum.TABLE;
329
+ this.useInternalStyle = useInternalStyle;
330
+ this.backgroundColor = backgroundColor;
331
+ this.border = border;
332
+ this.width = width;
333
+ this.height = height;
334
+ this.alignment =
335
+ useInternalStyle && alignment === undefined ? RTETableAnnotation.DEFAULT_ALIGNMENT : alignment;
336
+ this.backgroundColorAnnotation = new RTETableColorAnnotation(backgroundColor);
337
+ this.borderColorAnnotation = new RTETableColorAnnotation(border === null || border === void 0 ? void 0 : border.color);
338
+ this.borderCollapse =
339
+ useInternalStyle && borderCollapse === undefined
340
+ ? RTETableAnnotation.DEFAULT_BORDER_COLLAPSE
341
+ : borderCollapse;
342
+ }
343
+ /**
344
+ * @inheritDoc
345
+ */
346
+ static from(value, useInternalStyle = true) {
347
+ return [exports.RTETableExtensionAnnotationTypeEnum.TABLE, new RTETableAnnotation(value, useInternalStyle)];
348
+ }
349
+ /**
350
+ * Generates the CSS border string from the border properties.
351
+ *
352
+ * @returns {Nullable<string>} The CSS border string.
353
+ */
354
+ get borderStr() {
355
+ if (!this.border) {
356
+ return null;
357
+ }
358
+ return `${this.border.style} ${this.border.width} ${this.borderColorAnnotation.renderStyle().color}`.trim();
359
+ }
360
+ /**
361
+ * @inheritDoc
362
+ */
363
+ clone() {
364
+ return new RTETableAnnotation({
365
+ backgroundColor: this.backgroundColor,
366
+ border: this.border,
367
+ width: this.width,
368
+ height: this.height,
369
+ alignment: this.alignment,
370
+ borderCollapse: this.borderCollapse,
371
+ }, this.useInternalStyle);
372
+ }
373
+ /**
374
+ * @inheritDoc
375
+ */
376
+ toJSON() {
377
+ return {
378
+ table: object.cleanObject({
379
+ backgroundColor: this.backgroundColor,
380
+ border: this.border,
381
+ width: this.width,
382
+ height: this.height,
383
+ alignment: this.alignment,
384
+ borderCollapse: this.borderCollapse,
385
+ }),
386
+ };
387
+ }
388
+ /**
389
+ * @inheritDoc
390
+ */
391
+ renderStyle() {
392
+ const backgroundColor = this.backgroundColorAnnotation.renderStyle().color;
393
+ const tableStyles = Object.assign({ border: this.borderStr, width: this.width, height: this.height, borderCollapse: this.borderCollapse }, this.renderAlignmentStyle());
394
+ backgroundColor && (tableStyles.backgroundColor = backgroundColor);
395
+ return object.cleanObject(tableStyles);
396
+ }
397
+ /**
398
+ * @inheritDoc
399
+ */
400
+ renderClass() {
401
+ return 'v-rte--extension-table';
402
+ }
403
+ /**
404
+ * Generates the alignment styles for the table.
405
+ *
406
+ * @returns {Record<string, string>} The alignment styles.
407
+ */
408
+ renderAlignmentStyle() {
409
+ if (!this.alignment)
410
+ return {};
411
+ return {
412
+ margin: this.alignment === 'center' ? '0 auto' : this.alignment === 'left' ? '0' : '0 0 0 auto',
413
+ };
414
+ }
415
+ }
416
+ RTETableAnnotation.DEFAULT_BORDER_COLLAPSE = 'collapse';
417
+ RTETableAnnotation.DEFAULT_ALIGNMENT = 'center';
418
+
419
+ /**
420
+ * Class representing a table block in the rich text editor.
421
+ */
422
+ class RTETableBlock extends codeBlock.RTEBlock {
423
+ constructor(id, options) {
424
+ super(id);
425
+ this.type = 'table-block';
426
+ this.children = [];
427
+ const { autoMatchFormat } = options || { autoMatchFormat: true };
428
+ if (autoMatchFormat) {
429
+ this.annotationMap.set(exports.RTETableExtensionAnnotationTypeEnum.TABLE, new RTETableAnnotation());
430
+ }
431
+ }
432
+ /**
433
+ * @inheritDoc
434
+ */
435
+ static from(block, options) {
436
+ var _a;
437
+ const tableBlock = new RTETableBlock(block.id, options);
438
+ super.convertAnnotationsToMap(tableBlock.annotationMap, Object.assign({}, block.annotations));
439
+ tableBlock.children = super.generateBlockChildren(block.children, options, tableBlock);
440
+ if ((_a = block.annotations) === null || _a === void 0 ? void 0 : _a.table) {
441
+ tableBlock.annotationMap.set(...RTETableAnnotation.from(block.annotations.table, options === null || options === void 0 ? void 0 : options.autoMatchFormat));
442
+ }
443
+ return tableBlock;
444
+ }
445
+ /**
446
+ * @inheritDoc
447
+ */
448
+ clone(parent) {
449
+ const clonedBlock = new RTETableBlock(this.id);
450
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
451
+ clonedBlock.parent = parent;
452
+ clonedBlock.annotationMap = super.cloneAnnotations();
453
+ return clonedBlock;
454
+ }
455
+ /**
456
+ * @inheritDoc
457
+ */
458
+ getLastNode() {
459
+ return this.children[this.children.length - 1].getLastNode();
460
+ }
461
+ /**
462
+ * Get the first node of the table block.
463
+ *
464
+ * @returns {RTENode} The first node of the table block.
465
+ */
466
+ getFirstNode() {
467
+ if (this.hasCaption()) {
468
+ return this.children[0].children[0].getLastNode();
469
+ }
470
+ else {
471
+ const childNode = this.children[0].children[0]
472
+ .children[0];
473
+ return childNode.getLastNode();
474
+ }
475
+ }
476
+ /**
477
+ * @inheritDoc
478
+ */
479
+ isNotEmpty() {
480
+ return this.children.length > 0;
481
+ }
482
+ /**
483
+ * @inheritDoc
484
+ */
485
+ toHtml() {
486
+ const childrenHtml = this.children.map((child) => child.toHtml()).join('');
487
+ const attrStr = super.generateAttributeString();
488
+ return `<table${attrStr}>${childrenHtml}</table>`;
489
+ }
490
+ /**
491
+ * @inheritDoc
492
+ */
493
+ toJSON() {
494
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
495
+ }
496
+ /**
497
+ * Retrieves the caption block from the children collection, if present.
498
+ *
499
+ * @returns {Nullable<RTETableCaptionBlock>} The caption block or `null`.
500
+ */
501
+ getCaption() {
502
+ const caption = this.children.find((child) => child.type === 'table-caption');
503
+ return caption !== null && caption !== void 0 ? caption : null;
504
+ }
505
+ /**
506
+ * Inserts, replaces, or removes the caption block within the children.
507
+ *
508
+ * @param {Nullable<RTETableCaptionBlock>} caption - The caption block to set, or `null` to remove.
509
+ */
510
+ setCaption(caption) {
511
+ const index = this.children.findIndex((child) => child.type === 'table-caption');
512
+ if (!caption) {
513
+ if (index >= 0) {
514
+ this.children.splice(index, 1);
515
+ }
516
+ return;
517
+ }
518
+ caption.parent = this;
519
+ if (index >= 0) {
520
+ this.children[index] = caption;
521
+ }
522
+ else {
523
+ this.children.unshift(caption);
524
+ }
525
+ }
526
+ /**
527
+ * Checks whether the table currently stores a caption block reference.
528
+ *
529
+ * @returns {boolean} `true` when a caption DTO is attached; otherwise `false`.
530
+ */
531
+ hasCaption() {
532
+ return typeGuard.isNonNullable(this.getCaption());
533
+ }
534
+ }
535
+
536
+ exports.TableSettingType = void 0;
537
+ (function (TableSettingType) {
538
+ TableSettingType["ROW"] = "ROW";
539
+ TableSettingType["CAPTION"] = "CAPTION";
540
+ TableSettingType["COLUMN"] = "COLUMN";
541
+ TableSettingType["MERGE_CELLS"] = "MERGE_CELLS";
542
+ TableSettingType["TABLE"] = "TABLE";
543
+ TableSettingType["CELL"] = "CELL";
544
+ TableSettingType["SPLIT_CELL"] = "SPLIT_CELL";
545
+ })(exports.TableSettingType || (exports.TableSettingType = {}));
546
+ /**
547
+ * Abstract class for setting event handlers.
548
+ */
549
+ class SettingEventHandler {
550
+ /**
551
+ * Applies a cursor update action so the editor focuses on the resolved node.
552
+ *
553
+ * @param {RTETableBlock} block - Table block currently being toggled.
554
+ * @param {Nullable<RTENode>} focusNode - Target node that should receive the caret.
555
+ */
556
+ syncCursorPosition(block, focusNode) {
557
+ const rootContent = this.findRootContent(block);
558
+ if (focusNode && rootContent) {
559
+ const offset = focusNode.getRangeEndOffset();
560
+ rootContent.apply(new contentState.UpdateCursorPositionAction(focusNode, offset));
561
+ }
562
+ }
563
+ /**
564
+ * Walks up the parent chain to locate the nearest VegaRTEContent root.
565
+ *
566
+ * @param {RTETableBlock} block - Table block used as the starting point.
567
+ * @returns {Nullable<VegaRTEContent>} Content root containing the table, if found.
568
+ */
569
+ findRootContent(block) {
570
+ let currentParent = block.parent;
571
+ while (currentParent) {
572
+ if (currentParent instanceof contentState.VegaRTEContent) {
573
+ return currentParent;
574
+ }
575
+ currentParent = currentParent.parent;
576
+ }
577
+ }
578
+ }
579
+
580
+ const DELETE_TABLE_ROW = 'DELETE_TABLE_ROW';
581
+ /**
582
+ * Action class for deleting a specific table row.
583
+ */
584
+ class DeleteTableRowAction extends codeBlock.ModifyContentAction {
585
+ /**
586
+ * Constructs an InsertTableRowAction.
587
+ *
588
+ * @param {RTETableRowBlock[]} rowsToBeRemoved - The rows to be removed from the table.
589
+ */
590
+ constructor(rowsToBeRemoved) {
591
+ super();
592
+ this.isFlushable = true;
593
+ this.type = DELETE_TABLE_ROW;
594
+ this.rowsToBeRemoved = rowsToBeRemoved;
595
+ }
596
+ }
597
+
598
+ const INSERT_TABLE_ROW = 'INSERT_TABLE_ROW';
599
+ exports.InsertTableRowDirection = void 0;
600
+ (function (InsertTableRowDirection) {
601
+ InsertTableRowDirection["ABOVE"] = "ABOVE";
602
+ InsertTableRowDirection["BELOW"] = "BELOW";
603
+ })(exports.InsertTableRowDirection || (exports.InsertTableRowDirection = {}));
604
+ /**
605
+ * Action class for inserting a new row into a table within the rich text editor.
606
+ */
607
+ class InsertTableRowAction extends codeBlock.ModifyContentAction {
608
+ /**
609
+ * Constructs an InsertTableRowAction.
610
+ *
611
+ * @param {InsertTableRowDirection} insertDirection - The direction to insert the new row (above or below the current row).
612
+ * @param {RTETableRowBlock[]} selectedRows - The currently selected rows in the table.
613
+ */
614
+ constructor(insertDirection, selectedRows = []) {
615
+ super();
616
+ this.isFlushable = true;
617
+ this.type = INSERT_TABLE_ROW;
618
+ this.selectedRows = [];
619
+ this.insertDirection = insertDirection;
620
+ this.selectedRows = selectedRows;
621
+ }
622
+ }
623
+
624
+ const TOGGLE_HEADER_ROW = 'TOGGLE_HEADER_ROW';
625
+ /**
626
+ * Action to convert selected rows to header rows or revert them back to normal rows.
627
+ */
628
+ class ToggleHeaderRowAction extends codeBlock.ModifyContentAction {
629
+ constructor(selectedRows) {
630
+ super();
631
+ this.isFlushable = true;
632
+ this.type = TOGGLE_HEADER_ROW;
633
+ this.selectedRows = selectedRows;
634
+ }
635
+ }
636
+
637
+ /**
638
+ * Class representing a table row block in the rich text editor.
639
+ */
640
+ class RTETableRowBlock extends codeBlock.RTEBlock {
641
+ constructor(id) {
642
+ super(id);
643
+ this.type = 'table-row';
644
+ this.children = [];
645
+ }
646
+ /**
647
+ * @inheritDoc
648
+ */
649
+ static from(block, options) {
650
+ const rowBlock = new RTETableRowBlock(block.id);
651
+ super.convertAnnotationsToMap(rowBlock.annotationMap, Object.assign({}, block.annotations));
652
+ rowBlock.children = super.generateBlockChildren(block.children, options, rowBlock);
653
+ return rowBlock;
654
+ }
655
+ /**
656
+ * @inheritDoc
657
+ */
658
+ clone(parent) {
659
+ const clonedBlock = new RTETableRowBlock(this.id);
660
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
661
+ clonedBlock.parent = parent;
662
+ clonedBlock.annotationMap = super.cloneAnnotations();
663
+ return clonedBlock;
664
+ }
665
+ /**
666
+ * @inheritDoc
667
+ */
668
+ getLastNode() {
669
+ return this.children[this.children.length - 1].getLastNode();
670
+ }
671
+ /**
672
+ * @inheritDoc
673
+ */
674
+ isNotEmpty() {
675
+ return this.children.length > 0;
676
+ }
677
+ /**
678
+ * @inheritDoc
679
+ */
680
+ toHtml() {
681
+ const childrenHtml = this.children
682
+ .map((child) => {
683
+ return child.toHtml();
684
+ })
685
+ .join('');
686
+ const attrStr = super.generateAttributeString();
687
+ return `<tr${attrStr}>${childrenHtml}</tr>`;
688
+ }
689
+ /**
690
+ * @inheritDoc
691
+ */
692
+ toJSON() {
693
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
694
+ }
695
+ }
696
+
697
+ /**
698
+ * Class representing a table body block in the rich text editor.
699
+ */
700
+ class RTETableBodyBlock extends codeBlock.RTEBlock {
701
+ constructor(id) {
702
+ super(id);
703
+ this.type = 'table-body';
704
+ this.children = [];
705
+ }
706
+ /**
707
+ * @inheritDoc
708
+ */
709
+ static from(block, options) {
710
+ const tableBodyBlock = new RTETableBodyBlock(block.id);
711
+ super.convertAnnotationsToMap(tableBodyBlock.annotationMap, Object.assign({}, block.annotations));
712
+ tableBodyBlock.children = super.generateBlockChildren(block.children, options, tableBodyBlock);
713
+ return tableBodyBlock;
714
+ }
715
+ /**
716
+ * @inheritDoc
717
+ */
718
+ clone(parent) {
719
+ const clonedBlock = new RTETableBodyBlock(this.id);
720
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
721
+ clonedBlock.parent = parent;
722
+ clonedBlock.annotationMap = super.cloneAnnotations();
723
+ return clonedBlock;
724
+ }
725
+ /**
726
+ * @inheritDoc
727
+ */
728
+ getLastNode() {
729
+ return this.children[this.children.length - 1].getLastNode();
730
+ }
731
+ /**
732
+ * @inheritDoc
733
+ */
734
+ isNotEmpty() {
735
+ return this.children.length > 0;
736
+ }
737
+ /**
738
+ * @inheritDoc
739
+ */
740
+ toHtml() {
741
+ const childrenHtml = this.children.map((child) => child.toHtml()).join('');
742
+ const attrStr = super.generateAttributeString();
743
+ return `<tbody${attrStr}>${childrenHtml}</tbody>`;
744
+ }
745
+ /**
746
+ * @inheritDoc
747
+ */
748
+ toJSON() {
749
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
750
+ }
751
+ }
752
+
753
+ /**
754
+ * Class representing a table cell annotation in the rich text editor.
755
+ */
756
+ class RTETableCellAnnotation extends codeBlock.BlockAnnotation {
757
+ constructor({ backgroundColor, padding, border, width, height, textAlign, verticalAlign, minWidth, boxSizing, } = {}, useInternalStyle = true) {
758
+ super();
759
+ this.type = exports.RTETableExtensionAnnotationTypeEnum.CELL;
760
+ this.useInternalStyle = useInternalStyle;
761
+ this.backgroundColor = backgroundColor;
762
+ this.width = width;
763
+ this.height = height;
764
+ this.backgroundColorAnnotation = new RTETableColorAnnotation(backgroundColor);
765
+ this.borderColorAnnotation = new RTETableColorAnnotation(border === null || border === void 0 ? void 0 : border.color);
766
+ this.padding =
767
+ useInternalStyle && padding === undefined ? RTETableCellAnnotation.DEFAULT_PADDING : padding;
768
+ this.border =
769
+ useInternalStyle && border === undefined ? RTETableCellAnnotation.DEFAULT_BORDER : border;
770
+ this.textAlign =
771
+ useInternalStyle && textAlign === undefined
772
+ ? RTETableCellAnnotation.DEFAULT_HORIZONTAL_TEXT_ALIGN
773
+ : textAlign;
774
+ this.verticalAlign =
775
+ useInternalStyle && verticalAlign === undefined
776
+ ? RTETableCellAnnotation.DEFAULT_VERTICAL_TEXT_ALIGN
777
+ : verticalAlign;
778
+ this.minWidth =
779
+ useInternalStyle && minWidth === undefined
780
+ ? RTETableCellAnnotation.DEFAULT_CELL_MIN_WIDTH
781
+ : minWidth;
782
+ this.boxSizing =
783
+ useInternalStyle && boxSizing === undefined
784
+ ? RTETableCellAnnotation.DEFAULT_BOX_SIZING
785
+ : boxSizing;
786
+ }
787
+ /**
788
+ * @inheritDoc
789
+ */
790
+ static from(cellAnnotation, useInternalStyle) {
791
+ return [
792
+ exports.RTETableExtensionAnnotationTypeEnum.CELL,
793
+ new RTETableCellAnnotation(cellAnnotation, useInternalStyle),
794
+ ];
795
+ }
796
+ /**
797
+ * Generates the CSS border string from the border properties.
798
+ *
799
+ * @returns {Nullable<string>} The CSS border string.
800
+ */
801
+ get borderStr() {
802
+ if (!this.border)
803
+ return null;
804
+ return `${this.border.style} ${this.border.width} ${this.borderColorAnnotation.renderStyle().color ||
805
+ RTETableCellAnnotation.DEFAULT_BORDER.color}`;
806
+ }
807
+ /**
808
+ * @inheritDoc
809
+ */
810
+ clone() {
811
+ return new RTETableCellAnnotation({
812
+ backgroundColor: this.backgroundColor,
813
+ padding: this.padding,
814
+ border: this.border,
815
+ width: this.width,
816
+ height: this.height,
817
+ textAlign: this.textAlign,
818
+ verticalAlign: this.verticalAlign,
819
+ minWidth: this.minWidth,
820
+ boxSizing: this.boxSizing,
821
+ }, this.useInternalStyle);
822
+ }
823
+ /**
824
+ * @inheritDoc
825
+ */
826
+ toJSON() {
827
+ return {
828
+ tableCell: object.cleanObject({
829
+ backgroundColor: this.backgroundColor,
830
+ padding: this.padding,
831
+ border: this.border,
832
+ width: this.width,
833
+ height: this.height,
834
+ textAlign: this.textAlign,
835
+ verticalAlign: this.verticalAlign,
836
+ minWidth: this.minWidth,
837
+ boxSizing: this.boxSizing,
838
+ }),
839
+ };
840
+ }
841
+ /**
842
+ * @inheritDoc
843
+ */
844
+ renderStyle(options) {
845
+ const backgroundColor = this.backgroundColorAnnotation.renderStyle().color;
846
+ const style = {
847
+ padding: this.padding,
848
+ border: this.borderStr,
849
+ width: this.width,
850
+ height: this.height,
851
+ textAlign: this.textAlign,
852
+ verticalAlign: this.verticalAlign,
853
+ minWidth: this.minWidth,
854
+ boxSizing: this.boxSizing,
855
+ };
856
+ if (backgroundColor) {
857
+ style.backgroundColor = backgroundColor;
858
+ }
859
+ if (!(options === null || options === void 0 ? void 0 : options.standalone)) {
860
+ return object.cleanObject(this.removeDefaultValues(style));
861
+ }
862
+ return object.cleanObject(style);
863
+ }
864
+ /**
865
+ * @inheritDoc
866
+ */
867
+ renderClass() {
868
+ return null;
869
+ }
870
+ /**
871
+ * Removes default values from the style object to avoid redundancy.
872
+ *
873
+ * @param {Record<string, Nullable<string>>} style - The style object to clean.
874
+ * @returns {Record<string, Nullable<string>>} The cleaned style object.
875
+ */
876
+ removeDefaultValues(style) {
877
+ const cleanedStyle = Object.assign({}, style);
878
+ if (cleanedStyle.padding === RTETableCellAnnotation.DEFAULT_PADDING) {
879
+ delete cleanedStyle.padding;
880
+ }
881
+ if (cleanedStyle.border ===
882
+ `${RTETableCellAnnotation.DEFAULT_BORDER.style} ${RTETableCellAnnotation.DEFAULT_BORDER.width} ${RTETableCellAnnotation.DEFAULT_BORDER.color}`) {
883
+ delete cleanedStyle.border;
884
+ }
885
+ if (cleanedStyle.textAlign === RTETableCellAnnotation.DEFAULT_HORIZONTAL_TEXT_ALIGN) {
886
+ delete cleanedStyle.textAlign;
887
+ }
888
+ if (cleanedStyle.verticalAlign === RTETableCellAnnotation.DEFAULT_VERTICAL_TEXT_ALIGN) {
889
+ delete cleanedStyle.verticalAlign;
890
+ }
891
+ if (cleanedStyle.minWidth === RTETableCellAnnotation.DEFAULT_CELL_MIN_WIDTH) {
892
+ delete cleanedStyle.minWidth;
893
+ }
894
+ if (cleanedStyle.boxSizing === RTETableCellAnnotation.DEFAULT_BOX_SIZING) {
895
+ delete cleanedStyle.boxSizing;
896
+ }
897
+ return cleanedStyle;
898
+ }
899
+ }
900
+ RTETableCellAnnotation.DEFAULT_PADDING = '12px';
901
+ RTETableCellAnnotation.DEFAULT_BORDER = {
902
+ style: 'solid',
903
+ width: '1px',
904
+ color: '#ddd',
905
+ };
906
+ RTETableCellAnnotation.DEFAULT_HORIZONTAL_TEXT_ALIGN = 'left';
907
+ RTETableCellAnnotation.DEFAULT_VERTICAL_TEXT_ALIGN = 'middle';
908
+ RTETableCellAnnotation.DEFAULT_CELL_MIN_WIDTH = '55px';
909
+ RTETableCellAnnotation.DEFAULT_BOX_SIZING = 'border-box';
910
+
911
+ /**
912
+ * Class representing a table cell block in the rich text editor.
913
+ */
914
+ class RTETableCellBlock extends codeBlock.RTEBlock {
915
+ constructor(id, options) {
916
+ super(id);
917
+ this.type = 'table-cell';
918
+ this.children = [];
919
+ const { autoMatchFormat } = options || { autoMatchFormat: true };
920
+ if (autoMatchFormat) {
921
+ this.annotationMap.set(exports.RTETableExtensionAnnotationTypeEnum.CELL, new RTETableCellAnnotation());
922
+ }
923
+ }
924
+ /**
925
+ * @inheritDoc
926
+ */
927
+ static from(block, options) {
928
+ var _a;
929
+ const tableCellBlock = new RTETableCellBlock(block.id, options);
930
+ super.convertAnnotationsToMap(tableCellBlock.annotationMap, Object.assign({}, block.annotations));
931
+ if ((_a = block.annotations) === null || _a === void 0 ? void 0 : _a.tableCell) {
932
+ tableCellBlock.annotationMap.set(...RTETableCellAnnotation.from(block.annotations.tableCell, options === null || options === void 0 ? void 0 : options.autoMatchFormat));
933
+ }
934
+ tableCellBlock.children = super.generateBlockChildren(block.children, options, tableCellBlock);
935
+ return tableCellBlock;
936
+ }
937
+ /**
938
+ * @inheritDoc
939
+ */
940
+ clone(parent) {
941
+ const clonedBlock = new RTETableCellBlock(this.id);
942
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
943
+ clonedBlock.parent = parent;
944
+ clonedBlock.annotationMap = super.cloneAnnotations();
945
+ return clonedBlock;
946
+ }
947
+ /**
948
+ * @inheritDoc
949
+ */
950
+ getLastNode() {
951
+ return this.children[this.children.length - 1].getLastNode();
952
+ }
953
+ /**
954
+ * @inheritDoc
955
+ */
956
+ isNotEmpty() {
957
+ return this.children.length > 0;
958
+ }
959
+ /**
960
+ * Get the rowSpan of the table cell
961
+ *
962
+ * @returns {number} - rowSpan value
963
+ */
964
+ get rowSpan() {
965
+ const rowSpan = this.getCustomAttributeByName('rowspan');
966
+ return !isNaN(Number(rowSpan)) ? Math.max(Number(rowSpan), 1) : 1;
967
+ }
968
+ /**
969
+ * Get the colSpan of the table cell
970
+ *
971
+ * @returns {number} - colSpan value
972
+ */
973
+ get colSpan() {
974
+ const colSpan = this.getCustomAttributeByName('colspan');
975
+ return !isNaN(Number(colSpan)) ? Math.max(Number(colSpan), 1) : 1;
976
+ }
977
+ /**
978
+ * @inheritDoc
979
+ */
980
+ toHtml() {
981
+ const childrenHtml = this.children.map((child) => child.toHtml()).join('');
982
+ const attrStr = super.generateAttributeString();
983
+ return `<td${attrStr}>${childrenHtml}</td>`;
984
+ }
985
+ /**
986
+ * @inheritDoc
987
+ */
988
+ toJSON() {
989
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
990
+ }
991
+ /**
992
+ * Get custom attribute by name
993
+ *
994
+ * @param {string} attrName - attribute name
995
+ * @returns {Nullable<string>} - attribute value
996
+ */
997
+ getCustomAttributeByName(attrName) {
998
+ const customAttrAnnotation = this.getCustomAttributesAnnotation();
999
+ if (customAttrAnnotation) {
1000
+ const customAttributes = customAttrAnnotation.toJSON()['customAttribute'] || {};
1001
+ return customAttributes[attrName];
1002
+ }
1003
+ }
1004
+ }
1005
+
1006
+ /**
1007
+ * Class representing a table head block in the rich text editor.
1008
+ */
1009
+ class RTETableHeadBlock extends codeBlock.RTEBlock {
1010
+ constructor(id) {
1011
+ super(id);
1012
+ this.type = 'table-head';
1013
+ this.children = [];
1014
+ }
1015
+ /**
1016
+ * @inheritDoc
1017
+ */
1018
+ static from(block, options) {
1019
+ const headBlock = new RTETableHeadBlock(block.id);
1020
+ super.convertAnnotationsToMap(headBlock.annotationMap, Object.assign({}, block.annotations));
1021
+ headBlock.children = super.generateBlockChildren(block.children, options, headBlock);
1022
+ return headBlock;
1023
+ }
1024
+ /**
1025
+ * @inheritDoc
1026
+ */
1027
+ clone(parent) {
1028
+ const clonedBlock = new RTETableHeadBlock(this.id);
1029
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
1030
+ clonedBlock.parent = parent;
1031
+ clonedBlock.annotationMap = super.cloneAnnotations();
1032
+ return clonedBlock;
1033
+ }
1034
+ /**
1035
+ * @inheritDoc
1036
+ */
1037
+ getLastNode() {
1038
+ return this.children[this.children.length - 1].getLastNode();
1039
+ }
1040
+ /**
1041
+ * @inheritDoc
1042
+ */
1043
+ isNotEmpty() {
1044
+ return this.children.length > 0;
1045
+ }
1046
+ /**
1047
+ * @inheritDoc
1048
+ */
1049
+ toHtml() {
1050
+ const childrenHtml = this.children
1051
+ .map((child) => {
1052
+ return child.toHtml();
1053
+ })
1054
+ .join('');
1055
+ const attrStr = super.generateAttributeString();
1056
+ return `<thead${attrStr}>${childrenHtml}</thead>`;
1057
+ }
1058
+ /**
1059
+ * @inheritDoc
1060
+ */
1061
+ toJSON() {
1062
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
1063
+ }
1064
+ }
1065
+
1066
+ /**
1067
+ * Class representing a table head cell annotation in the rich text editor.
1068
+ */
1069
+ class RTETableHeadCellAnnotation extends RTETableCellAnnotation {
1070
+ constructor(annotation = {}, useInternalStyle = true) {
1071
+ super(annotation, useInternalStyle);
1072
+ }
1073
+ /**
1074
+ * @inheritDoc
1075
+ */
1076
+ static from(cellAnnotation, useInternalStyle) {
1077
+ return [
1078
+ exports.RTETableExtensionAnnotationTypeEnum.CELL,
1079
+ new RTETableHeadCellAnnotation(cellAnnotation, useInternalStyle),
1080
+ ];
1081
+ }
1082
+ /**
1083
+ * @inheritDoc
1084
+ */
1085
+ clone() {
1086
+ return new RTETableHeadCellAnnotation({
1087
+ backgroundColor: this.backgroundColor,
1088
+ padding: this.padding,
1089
+ border: this.border,
1090
+ width: this.width,
1091
+ height: this.height,
1092
+ textAlign: this.textAlign,
1093
+ verticalAlign: this.verticalAlign,
1094
+ minWidth: this.minWidth,
1095
+ boxSizing: this.boxSizing,
1096
+ }, this.useInternalStyle);
1097
+ }
1098
+ /**
1099
+ * @inheritDoc
1100
+ */
1101
+ renderStyle(options) {
1102
+ var _a;
1103
+ const styles = super.renderStyle(options);
1104
+ return object.cleanObject(Object.assign(Object.assign({}, styles), { backgroundColor: (_a = styles.backgroundColor) !== null && _a !== void 0 ? _a : RTETableHeadCellAnnotation.DEFAULT_BACKGROUND_COLOR }));
1105
+ }
1106
+ }
1107
+ RTETableHeadCellAnnotation.DEFAULT_BACKGROUND_COLOR = '#f2f2f2';
1108
+
1109
+ /**
1110
+ * Class representing a table head block in the rich text editor.
1111
+ */
1112
+ class RTETableHeadCellBlock extends RTETableCellBlock {
1113
+ constructor(id, options) {
1114
+ super(id, options);
1115
+ this.type = 'table-head-cell';
1116
+ const { autoMatchFormat } = options || { autoMatchFormat: true };
1117
+ if (autoMatchFormat) {
1118
+ this.annotationMap.set(exports.RTETableExtensionAnnotationTypeEnum.CELL, new RTETableHeadCellAnnotation());
1119
+ }
1120
+ }
1121
+ /**
1122
+ * @inheritDoc
1123
+ */
1124
+ static from(block, options) {
1125
+ var _a;
1126
+ const headCellBlock = new RTETableHeadCellBlock(block.id, options);
1127
+ super.convertAnnotationsToMap(headCellBlock.annotationMap, Object.assign({}, block.annotations));
1128
+ if ((_a = block.annotations) === null || _a === void 0 ? void 0 : _a.tableCell) {
1129
+ headCellBlock.annotationMap.set(...RTETableHeadCellAnnotation.from(block.annotations.tableCell, options === null || options === void 0 ? void 0 : options.autoMatchFormat));
1130
+ }
1131
+ headCellBlock.children = super.generateBlockChildren(block.children, options, headCellBlock);
1132
+ return headCellBlock;
1133
+ }
1134
+ /**
1135
+ * @inheritDoc
1136
+ */
1137
+ clone(parent) {
1138
+ const clonedBlock = new RTETableHeadCellBlock(this.id);
1139
+ clonedBlock.children = this.children.map((child) => child.clone(clonedBlock));
1140
+ clonedBlock.parent = parent;
1141
+ clonedBlock.annotationMap = super.cloneAnnotations();
1142
+ return clonedBlock;
1143
+ }
1144
+ /**
1145
+ * @inheritDoc
1146
+ */
1147
+ toHtml() {
1148
+ const childrenHtml = this.children.map((child) => child.toHtml()).join('');
1149
+ const attrStr = super.generateAttributeString();
1150
+ return `<th${attrStr}>${childrenHtml}</th>`;
1151
+ }
1152
+ /**
1153
+ * @inheritDoc
1154
+ */
1155
+ toJSON() {
1156
+ return Object.assign(Object.assign({}, super.toJSON()), { type: this.type, children: this.children.map((child) => child.toJSON()) });
1157
+ }
1158
+ }
1159
+
1160
+ const MERGE_CELLS = 'MERGE_CELLS';
1161
+ /**
1162
+ * Action to merge cells into the RTETable.
1163
+ */
1164
+ class MergeCellsAction extends codeBlock.ModifyContentAction {
1165
+ constructor(targetCell, mergeCells, colSpan, rowSpan, direction) {
1166
+ super();
1167
+ this.type = MERGE_CELLS;
1168
+ this.isFlushable = true;
1169
+ this.targetCell = targetCell;
1170
+ this.mergeCells = mergeCells;
1171
+ this.colSpan = colSpan;
1172
+ this.rowSpan = rowSpan;
1173
+ this.direction = direction;
1174
+ }
1175
+ }
1176
+
1177
+ exports.MergeCellsOperationType = void 0;
1178
+ (function (MergeCellsOperationType) {
1179
+ MergeCellsOperationType["MERGE_CELLS"] = "MERGE_CELLS";
1180
+ MergeCellsOperationType["MERGE_CELL_UP"] = "MERGE_CELL_UP";
1181
+ MergeCellsOperationType["MERGE_CELL_RIGHT"] = "MERGE_CELL_RIGHT";
1182
+ MergeCellsOperationType["MERGE_CELL_DOWN"] = "MERGE_CELL_DOWN";
1183
+ MergeCellsOperationType["MERGE_CELL_LEFT"] = "MERGE_CELL_LEFT";
1184
+ })(exports.MergeCellsOperationType || (exports.MergeCellsOperationType = {}));
1185
+ /**
1186
+ * Event handler for merge cells operations in a table.
1187
+ */
1188
+ class MergeCellsOperationEventHandler extends SettingEventHandler {
1189
+ /**
1190
+ * @inheritDoc
1191
+ */
1192
+ canHandle(action) {
1193
+ return action[0] === exports.TableSettingType.MERGE_CELLS;
1194
+ }
1195
+ /**
1196
+ * @inheritDoc
1197
+ */
1198
+ execute(action, extensionContext) {
1199
+ const selectedCells = extensionContext.tableSelection.getSelectedCells();
1200
+ const operation = action[1];
1201
+ switch (operation) {
1202
+ case exports.MergeCellsOperationType.MERGE_CELL_UP:
1203
+ case exports.MergeCellsOperationType.MERGE_CELL_RIGHT:
1204
+ case exports.MergeCellsOperationType.MERGE_CELL_DOWN:
1205
+ case exports.MergeCellsOperationType.MERGE_CELL_LEFT:
1206
+ {
1207
+ const mergeCells = this.getDirectionMergeCells(operation, selectedCells[0]);
1208
+ this.handleMergeCells(mergeCells, operation);
1209
+ }
1210
+ break;
1211
+ default:
1212
+ {
1213
+ if (selectedCells.length > 1) {
1214
+ this.handleMergeCells(selectedCells, exports.MergeCellsOperationType.MERGE_CELLS);
1215
+ }
1216
+ }
1217
+ break;
1218
+ }
1219
+ }
1220
+ /**
1221
+ * Get the adjacent cell in the specified direction.
1222
+ *
1223
+ * @param {MergeCellsOperationType} direction - The direction to look for the adjacent cell.
1224
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} cell - The current cell.
1225
+ * @returns {Array<RTETableCellBlock | RTETableHeadCellBlock>} Array containing the cells to merge.
1226
+ */
1227
+ getDirectionMergeCells(direction, cell) {
1228
+ const adjacent = getAdjacentCell(cell, direction);
1229
+ if (!adjacent) {
1230
+ return [cell];
1231
+ }
1232
+ switch (direction) {
1233
+ case exports.MergeCellsOperationType.MERGE_CELL_UP:
1234
+ return [adjacent, cell];
1235
+ case exports.MergeCellsOperationType.MERGE_CELL_DOWN:
1236
+ return [cell, adjacent];
1237
+ case exports.MergeCellsOperationType.MERGE_CELL_LEFT:
1238
+ return [adjacent, cell];
1239
+ default:
1240
+ return [cell, adjacent];
1241
+ }
1242
+ }
1243
+ /**
1244
+ * Handle the merge cells operation by creating and applying a MergeCellsAction.
1245
+ *
1246
+ * @param {Array<RTETableCellBlock | RTETableHeadCellBlock>} mergeCells - The cells to merge.
1247
+ * @param {MergeCellsOperationType} direction - The merge cell direction.
1248
+ */
1249
+ handleMergeCells(mergeCells, direction) {
1250
+ if (mergeCells.length < 2) {
1251
+ return;
1252
+ }
1253
+ const rectInfo = getRectangularBounds(mergeCells);
1254
+ const { minRow, maxRow, minCol, maxCol, targetCell } = rectInfo;
1255
+ const colSpan = maxCol - minCol + 1;
1256
+ const rowSpan = maxRow - minRow + 1;
1257
+ const action = new MergeCellsAction(targetCell, mergeCells, colSpan, rowSpan, direction);
1258
+ this.applyActionOnTable(action, targetCell);
1259
+ }
1260
+ /**
1261
+ * Apply the specified action on the table containing the selected cell.
1262
+ *
1263
+ * @param {MergeCellsAction} action - The action to apply.
1264
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} selectedCell - The selected table cell.
1265
+ */
1266
+ applyActionOnTable(action, selectedCell) {
1267
+ const table = getParentBlockByType(selectedCell, RTETableBlock);
1268
+ if (table) {
1269
+ table.apply(action);
1270
+ }
1271
+ }
1272
+ }
1273
+
1274
+ /**
1275
+ * Recursively searches for a parent block of a specific type.
1276
+ *
1277
+ * @typedef T - Generic type extending RTEBlock.
1278
+ * @param {RTEBlock} block - The starting block to search from.
1279
+ * @param {ClassType<unknown>} dtoClass - The class type to match the parent block against.
1280
+ * @returns {T | null} - The found parent block of the specified type, or null if not found.
1281
+ */
1282
+ function getParentBlockByType(block, dtoClass) {
1283
+ if (block) {
1284
+ if (block instanceof dtoClass) {
1285
+ return block;
1286
+ }
1287
+ else {
1288
+ return getParentBlockByType(block.parent, dtoClass);
1289
+ }
1290
+ }
1291
+ return null;
1292
+ }
1293
+ /**
1294
+ * Generate the table body with the specified number of rows and columns.
1295
+ *
1296
+ * @param {number} rowCount - The number of rows in the table body.
1297
+ * @param {number} columnCount - The number of columns in the table body.
1298
+ * @returns {VegaRTETableBodyBlock} The generated table body block.
1299
+ */
1300
+ function generateTableBody(rowCount, columnCount) {
1301
+ return {
1302
+ id: createPublicApiRuntimeMetricsSlimmer.generateUUID(),
1303
+ type: 'table-body',
1304
+ children: Array.from({ length: rowCount }, () => generateTableRow(columnCount)),
1305
+ };
1306
+ }
1307
+ /**
1308
+ * Create a table row block with the specified number of columns and cell type.
1309
+ *
1310
+ * @param {number} columnCount - The number of columns in the row.
1311
+ * @returns {VegaRTETableRowBlock} The created table row block.
1312
+ */
1313
+ function generateTableRow(columnCount) {
1314
+ return {
1315
+ id: createPublicApiRuntimeMetricsSlimmer.generateUUID(),
1316
+ type: 'table-row',
1317
+ children: Array.from({ length: columnCount }, () => getDefaultCellBlockTemplate('table-cell')),
1318
+ };
1319
+ }
1320
+ /**
1321
+ * Get all table rows from a table block (including rows from all table bodies and headers).
1322
+ *
1323
+ * @param {RTETableBlock} tableBlock - The table block.
1324
+ * @returns {RTETableRowBlock[]} Array of all table row blocks.
1325
+ */
1326
+ function getAllTableRows(tableBlock) {
1327
+ return tableBlock.children
1328
+ .filter((child) => child instanceof RTETableBodyBlock || child instanceof RTETableHeadBlock)
1329
+ .flatMap((body) => body.children);
1330
+ }
1331
+ /**
1332
+ * Find the first node within a block recursively.
1333
+ *
1334
+ * @param {Nullable<RTEBlock>} block - The block to find the first node in.
1335
+ * @returns {Nullable<RTENode>} The focusable node within the block.
1336
+ */
1337
+ function getFirstNode(block) {
1338
+ if (!block || !block.children || !block.children[0])
1339
+ return null;
1340
+ const firstNode = block.children[0];
1341
+ if (firstNode instanceof codeBlock.RTENode) {
1342
+ return firstNode;
1343
+ }
1344
+ return getFirstNode(firstNode);
1345
+ }
1346
+ /**
1347
+ * Get the default cell block template.
1348
+ *
1349
+ * @param {string} cellType - The type of the cell block.
1350
+ * @returns {VegaRTETableCellBlock} The default cell block template.
1351
+ */
1352
+ function getDefaultCellBlockTemplate(cellType) {
1353
+ const id = createPublicApiRuntimeMetricsSlimmer.generateUUID();
1354
+ return {
1355
+ id,
1356
+ type: cellType,
1357
+ children: [
1358
+ {
1359
+ id: `${id}-p`,
1360
+ type: 'paragraph',
1361
+ nodes: [
1362
+ {
1363
+ id: `${id}-p-t`,
1364
+ type: 'text',
1365
+ text: '',
1366
+ },
1367
+ ],
1368
+ },
1369
+ ],
1370
+ };
1371
+ }
1372
+ /**
1373
+ * Get the actual col span and row span of a cell.
1374
+ *
1375
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} cell - The cell to check.
1376
+ * @returns {CellSpan} The actual span values.
1377
+ */
1378
+ function getCellSpan(cell) {
1379
+ return { colSpan: cell.colSpan, rowSpan: cell.rowSpan };
1380
+ }
1381
+ /**
1382
+ * Get the actual column position of a cell considering previous cells' colspan
1383
+ * and cells from previous rows with rowspan that extend into the current row.
1384
+ *
1385
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} cell - The cell to check.
1386
+ * @param {RTETableRowBlock[]} allRows - The table all rows.
1387
+ * @returns {number} The actual column position.
1388
+ */
1389
+ function getActualColumnPosition(cell, allRows) {
1390
+ const tableGrid = buildTableGrid(allRows);
1391
+ for (let row = 0; row < tableGrid.length; row++) {
1392
+ const cols = tableGrid[row];
1393
+ for (let col = 0; col < cols.length; col++) {
1394
+ if (cols[col] === cell.id) {
1395
+ return col;
1396
+ }
1397
+ }
1398
+ }
1399
+ return -1;
1400
+ }
1401
+ /**
1402
+ * Build a 2D grid representation of a table section where each occupied position
1403
+ * contains the cell id covering that (row, col) coordinate, accounting for colSpan/rowSpan.
1404
+ *
1405
+ * @param {RTETableRowBlock[]} allRows - All rows in the current table section.
1406
+ * @returns {string[][]} The table grid.
1407
+ */
1408
+ function buildTableGrid(allRows) {
1409
+ const grid = [];
1410
+ allRows.forEach((row, rowIndex) => {
1411
+ if (!grid[rowIndex]) {
1412
+ grid[rowIndex] = [];
1413
+ }
1414
+ let colIndex = 0;
1415
+ row.children.forEach((cell) => {
1416
+ const { colSpan, rowSpan } = getCellSpan(cell);
1417
+ while (grid[rowIndex][colIndex] !== undefined) {
1418
+ colIndex++;
1419
+ }
1420
+ for (let r = 0; r < rowSpan; r++) {
1421
+ for (let c = 0; c < colSpan; c++) {
1422
+ if (!grid[rowIndex + r]) {
1423
+ grid[rowIndex + r] = [];
1424
+ }
1425
+ grid[rowIndex + r][colIndex + c] = cell.id;
1426
+ }
1427
+ }
1428
+ colIndex += colSpan;
1429
+ });
1430
+ });
1431
+ return grid;
1432
+ }
1433
+ /**
1434
+ * Get the adjacent cell in the specified direction based on the table matrix.
1435
+ *
1436
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} cell - The current cell.
1437
+ * @param {AdjacentCellDirection} direction - The direction to locate the adjacent cell.
1438
+ * @returns {RTETableCellBlock | RTETableHeadCellBlock | null} The adjacent cell or null.
1439
+ */
1440
+ function getAdjacentCell(cell, direction) {
1441
+ if (!cell) {
1442
+ return null;
1443
+ }
1444
+ const row = cell.parent;
1445
+ const sectionRows = row.parent.children;
1446
+ const rowIndex = sectionRows.indexOf(row);
1447
+ const { colSpan, rowSpan } = getCellSpan(cell);
1448
+ const cellColPosition = getActualColumnPosition(cell, sectionRows);
1449
+ let targetRowIndex = rowIndex;
1450
+ let targetColPosition = cellColPosition;
1451
+ switch (direction) {
1452
+ case exports.MergeCellsOperationType.MERGE_CELL_LEFT:
1453
+ targetColPosition = cellColPosition - 1;
1454
+ break;
1455
+ case exports.MergeCellsOperationType.MERGE_CELL_RIGHT:
1456
+ targetColPosition = cellColPosition + colSpan;
1457
+ break;
1458
+ case exports.MergeCellsOperationType.MERGE_CELL_UP:
1459
+ targetRowIndex = rowIndex - 1;
1460
+ break;
1461
+ default:
1462
+ targetRowIndex = rowIndex + rowSpan;
1463
+ break;
1464
+ }
1465
+ return findCellAtPosition(sectionRows, targetRowIndex, targetColPosition);
1466
+ }
1467
+ /**
1468
+ * Find the cell that covers the specified matrix position.
1469
+ *
1470
+ * @param {RTETableRowBlock[]} rows - Rows in the current table section.
1471
+ * @param {number} targetRowIndex - Target matrix row index.
1472
+ * @param {number} targetColPosition - Target matrix column position.
1473
+ * @returns {RTETableCellBlock | RTETableHeadCellBlock | null} The covering cell or null.
1474
+ */
1475
+ function findCellAtPosition(rows, targetRowIndex, targetColPosition) {
1476
+ for (let r = 0; r < rows.length; r++) {
1477
+ const currentRow = rows[r];
1478
+ for (const candidate of currentRow.children) {
1479
+ const { colSpan, rowSpan } = getCellSpan(candidate);
1480
+ const candidateColPosition = getActualColumnPosition(candidate, rows);
1481
+ const candidateRowStart = r;
1482
+ const candidateRowEnd = r + rowSpan - 1;
1483
+ const candidateColEnd = candidateColPosition + colSpan - 1;
1484
+ const isSameMatrixRow = targetRowIndex >= candidateRowStart && targetRowIndex <= candidateRowEnd;
1485
+ const isTargetColumnCovered = targetColPosition >= candidateColPosition && targetColPosition <= candidateColEnd;
1486
+ if (isSameMatrixRow && isTargetColumnCovered) {
1487
+ return candidate;
1488
+ }
1489
+ }
1490
+ }
1491
+ return null;
1492
+ }
1493
+ /**
1494
+ * Get the rectangular bounds of selected cells.
1495
+ * Calculates the bounding box (minRow, maxRow, minCol, maxCol) and returns related information.
1496
+ *
1497
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1498
+ * @returns {RectangularBounds} The rectangular bounds' information.
1499
+ */
1500
+ function getRectangularBounds(selectedCells) {
1501
+ const firstCell = selectedCells[0];
1502
+ const firstRow = firstCell.parent;
1503
+ const table = firstRow.parent;
1504
+ const allRows = table.children;
1505
+ let minRow = Number.POSITIVE_INFINITY;
1506
+ let maxRow = -1;
1507
+ let minCol = Number.POSITIVE_INFINITY;
1508
+ let maxCol = -1;
1509
+ const coveredPositions = new Set();
1510
+ selectedCells.forEach((cell) => {
1511
+ const row = cell.parent;
1512
+ const rowIndex = allRows.indexOf(row);
1513
+ const actualColPosition = getActualColumnPosition(cell, allRows);
1514
+ const { colSpan, rowSpan } = getCellSpan(cell);
1515
+ const cellMinRow = rowIndex;
1516
+ const cellMaxRow = rowIndex + rowSpan - 1;
1517
+ const cellMinCol = actualColPosition;
1518
+ const cellMaxCol = actualColPosition + colSpan - 1;
1519
+ for (let r = cellMinRow; r <= cellMaxRow; r++) {
1520
+ for (let c = cellMinCol; c <= cellMaxCol; c++) {
1521
+ coveredPositions.add(`${r},${c}`);
1522
+ }
1523
+ }
1524
+ minRow = Math.min(minRow, cellMinRow);
1525
+ maxRow = Math.max(maxRow, cellMaxRow);
1526
+ minCol = Math.min(minCol, cellMinCol);
1527
+ maxCol = Math.max(maxCol, cellMaxCol);
1528
+ });
1529
+ const targetCell = selectedCells[0];
1530
+ return {
1531
+ minRow,
1532
+ maxRow,
1533
+ minCol,
1534
+ maxCol,
1535
+ targetCell,
1536
+ coveredPositions,
1537
+ };
1538
+ }
1539
+ /**
1540
+ * Calculate the total number of columns in the table.
1541
+ * Accounts for cells with col span.
1542
+ *
1543
+ * @param {RTETableBlock} table - The table block.
1544
+ * @returns {number} The total number of columns in the table.
1545
+ */
1546
+ function getTableColumnCount(table) {
1547
+ const rows = getAllTableRows(table);
1548
+ // Calculate the total columns from the first row, accounting for col span
1549
+ let totalColumns = 0;
1550
+ const firstRow = rows[0];
1551
+ for (const cell of firstRow.children) {
1552
+ const { colSpan } = getCellSpan(cell);
1553
+ totalColumns += colSpan;
1554
+ }
1555
+ return totalColumns;
1556
+ }
1557
+ /**
1558
+ * Check if the selected cells form a rectangular area.
1559
+ * Considers cells with col span and row span.
1560
+ *
1561
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1562
+ * @returns {boolean} True if the selected cells form a rectangle, false otherwise.
1563
+ */
1564
+ function isRectangularSelection(selectedCells) {
1565
+ if (selectedCells.length === 1) {
1566
+ return true;
1567
+ }
1568
+ const bounds = getRectangularBounds(selectedCells);
1569
+ const { minRow, maxRow, minCol, maxCol, coveredPositions } = bounds;
1570
+ const expectedPositions = (maxRow - minRow + 1) * (maxCol - minCol + 1);
1571
+ if (coveredPositions.size !== expectedPositions) {
1572
+ return false;
1573
+ }
1574
+ return true;
1575
+ }
1576
+ /**
1577
+ * Set the col span and row span attributes for a target cell.
1578
+ * When colSpan equals the table's total columns, rowSpan is removed.
1579
+ *
1580
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} targetCell - The target cell to set attributes on.
1581
+ * @param {number} colSpan - The column span value.
1582
+ * @param {number} rowSpan - The row span value.
1583
+ * @param {RTETableBlock} table - The table block.
1584
+ */
1585
+ function setSpanAttributes(targetCell, colSpan, rowSpan, table) {
1586
+ const existingAnnotation = targetCell.annotationMap.get(codeBlock.CommonAnnotationTypeEnum.CUSTOM_ATTRIBUTE);
1587
+ const existingAttrs = existingAnnotation
1588
+ ? Object.assign({}, existingAnnotation['customAttribute']) : {};
1589
+ delete existingAttrs.colspan;
1590
+ delete existingAttrs.rowspan;
1591
+ if (colSpan > 1) {
1592
+ existingAttrs.colspan = String(colSpan);
1593
+ }
1594
+ // When colspan equals table column count, don't set rowspan
1595
+ const tableColumnCount = getTableColumnCount(table);
1596
+ if (rowSpan > 1 && colSpan !== tableColumnCount) {
1597
+ existingAttrs.rowspan = String(rowSpan);
1598
+ }
1599
+ if (Object.keys(existingAttrs).length > 0) {
1600
+ const customAttributeAnnotation = new codeBlock.CustomAttributeAnnotation(existingAttrs);
1601
+ targetCell.annotationMap.set(codeBlock.CommonAnnotationTypeEnum.CUSTOM_ATTRIBUTE, customAttributeAnnotation);
1602
+ }
1603
+ else {
1604
+ targetCell.annotationMap.delete(codeBlock.CommonAnnotationTypeEnum.CUSTOM_ATTRIBUTE);
1605
+ }
1606
+ }
1607
+ /**
1608
+ * Create a new cell of the specified type.
1609
+ *
1610
+ * @param {string} cellType - The type of cell ('table-cell' or 'table-head-cell').
1611
+ * @returns {RTETableCellBlock | RTETableHeadCellBlock} The newly created cell.
1612
+ */
1613
+ function createNewCell(cellType) {
1614
+ const cellTemplate = getDefaultCellBlockTemplate(cellType);
1615
+ if (cellType === 'table-head-cell') {
1616
+ return RTETableHeadCellBlock.from(cellTemplate);
1617
+ }
1618
+ return RTETableCellBlock.from(cellTemplate);
1619
+ }
1620
+
1621
+ exports.RowOperationType = void 0;
1622
+ (function (RowOperationType) {
1623
+ RowOperationType["HEADER_ROW"] = "HEADER_ROW";
1624
+ RowOperationType["ADD_ROW_ABOVE"] = "ADD_ROW_ABOVE";
1625
+ RowOperationType["ADD_ROW_BELOW"] = "ADD_ROW_BELOW";
1626
+ RowOperationType["DELETE_ROW"] = "DELETE_ROW";
1627
+ RowOperationType["SELECT_ROW"] = "SELECT_ROW";
1628
+ })(exports.RowOperationType || (exports.RowOperationType = {}));
1629
+ /**
1630
+ * Event handler for row operations in a table.
1631
+ */
1632
+ class RowOperationEventHandler extends SettingEventHandler {
1633
+ /**
1634
+ * @inheritDoc
1635
+ */
1636
+ canHandle(action) {
1637
+ return action[0] === exports.TableSettingType.ROW;
1638
+ }
1639
+ /**
1640
+ * @inheritDoc
1641
+ */
1642
+ execute(action, extensionContext) {
1643
+ const operation = action[1];
1644
+ switch (operation) {
1645
+ case exports.RowOperationType.ADD_ROW_ABOVE:
1646
+ case exports.RowOperationType.ADD_ROW_BELOW:
1647
+ this.handleInsertRow(operation, extensionContext);
1648
+ break;
1649
+ case exports.RowOperationType.DELETE_ROW:
1650
+ this.handleDeleteRow(extensionContext);
1651
+ break;
1652
+ case exports.RowOperationType.HEADER_ROW:
1653
+ this.handleToggleHeader(extensionContext);
1654
+ break;
1655
+ case exports.RowOperationType.SELECT_ROW:
1656
+ this.handleSelectRow(extensionContext);
1657
+ break;
1658
+ }
1659
+ }
1660
+ /**
1661
+ * Adds a new row to the table at the specified position.
1662
+ *
1663
+ * @param {RowOperationType} direction - The position to insert the new row (above or below).
1664
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
1665
+ */
1666
+ handleInsertRow(direction, extensionContext) {
1667
+ const selectedRows = this.getAllSelectedRows(extensionContext);
1668
+ if (selectedRows.length > 0) {
1669
+ const action = new InsertTableRowAction(direction === exports.RowOperationType.ADD_ROW_ABOVE
1670
+ ? exports.InsertTableRowDirection.ABOVE
1671
+ : exports.InsertTableRowDirection.BELOW, selectedRows);
1672
+ this.applyActionToTable(selectedRows[0], action);
1673
+ }
1674
+ }
1675
+ /**
1676
+ * Deletes the selected row(s) from the table.
1677
+ *
1678
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
1679
+ */
1680
+ handleDeleteRow(extensionContext) {
1681
+ const selectedRows = this.getAllSelectedRows(extensionContext);
1682
+ if (selectedRows.length) {
1683
+ const action = new DeleteTableRowAction(selectedRows);
1684
+ this.applyActionToTable(selectedRows[0], action);
1685
+ }
1686
+ }
1687
+ /**
1688
+ * Converts selected rows to header rows or reverts them back to normal rows.
1689
+ *
1690
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
1691
+ */
1692
+ handleToggleHeader(extensionContext) {
1693
+ const selectedRows = this.getAllSelectedRows(extensionContext);
1694
+ if (selectedRows.length > 0) {
1695
+ const action = new ToggleHeaderRowAction(selectedRows);
1696
+ this.applyActionToTable(selectedRows[0], action);
1697
+ }
1698
+ }
1699
+ /**
1700
+ * Selects the focus row(s) in the table.
1701
+ *
1702
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
1703
+ */
1704
+ handleSelectRow(extensionContext) {
1705
+ const selectedRows = this.getAllSelectedRows(extensionContext);
1706
+ if (selectedRows.length > 0 && extensionContext && extensionContext.tableSelection) {
1707
+ const allCells = selectedRows.flatMap((row) => row.children);
1708
+ extensionContext.tableSelection.setSelectedCells(allCells);
1709
+ }
1710
+ }
1711
+ /**
1712
+ * Get all selected table rows.
1713
+ *
1714
+ * @param {RTETableExtensionContext} extensionContext - The extension context.
1715
+ * @returns {RTETableRowBlock[]} The selected table row blocks.
1716
+ */
1717
+ getAllSelectedRows(extensionContext) {
1718
+ const selectedRows = new Set();
1719
+ if (extensionContext && extensionContext.tableSelection) {
1720
+ const { tableSelection } = extensionContext;
1721
+ const selectedCells = tableSelection.getSelectedCells();
1722
+ selectedCells.forEach((cell) => {
1723
+ const rowBlock = getParentBlockByType(cell, RTETableRowBlock);
1724
+ if (rowBlock) {
1725
+ selectedRows.add(rowBlock);
1726
+ }
1727
+ });
1728
+ }
1729
+ return Array.from(selectedRows);
1730
+ }
1731
+ /**
1732
+ * Applies the given action to the table containing the reference block.
1733
+ *
1734
+ * @param {RTEBlock} refBlock - The reference block within the table.
1735
+ * @param {ModifyContentAction} action - The action to apply to the table.
1736
+ */
1737
+ applyActionToTable(refBlock, action) {
1738
+ const table = getParentBlockByType(refBlock, RTETableBlock);
1739
+ if (table) {
1740
+ table.apply(action);
1741
+ }
1742
+ }
1743
+ }
1744
+
1745
+ /**
1746
+ * Abstract base strategy for handling table column operations.
1747
+ * Provides common functionality for all column-related strategies.
1748
+ */
1749
+ class TableColumnStrategy extends codeBlock.ActionHandleStrategy {
1750
+ /**
1751
+ * Finds the index range of cells within a table row.
1752
+ * Returns the start and end indices of the given cell range.
1753
+ *
1754
+ * @param {(RTETableCellBlock | RTETableHeadCellBlock)[]} cellRange - The range of table cells to find indices for.
1755
+ * @returns {[number, number]} A tuple containing the start and end indices.
1756
+ */
1757
+ getBoundaryCellIndexOfRow(cellRange) {
1758
+ const firstCell = cellRange[0];
1759
+ const lastCell = cellRange[cellRange.length - 1];
1760
+ return [firstCell.parent.children.indexOf(firstCell), lastCell.parent.children.indexOf(lastCell)];
1761
+ }
1762
+ }
1763
+
1764
+ /**
1765
+ * Strategy to handle the toggle of header state of a table column.
1766
+ */
1767
+ class ToggleHeaderTableColumnStrategy extends TableColumnStrategy {
1768
+ /**
1769
+ * Check if all selected cells are header cells.
1770
+ *
1771
+ * @param {(RTETableCellBlock | RTETableHeadCellBlock)[]} selectedCellRange - The range of selected table cell blocks.
1772
+ * @returns {boolean} True if all selected cells are header cells, false otherwise.
1773
+ */
1774
+ static isFullHeaderSelection(selectedCellRange) {
1775
+ if (selectedCellRange.length === 0) {
1776
+ return false;
1777
+ }
1778
+ const endSelectedCell = selectedCellRange[selectedCellRange.length - 1];
1779
+ const endSelectedCellIndex = endSelectedCell.parent.children.findIndex((child) => child === endSelectedCell);
1780
+ const table = getParentBlockByType(endSelectedCell, RTETableBlock);
1781
+ if (table) {
1782
+ const allTableRows = getAllTableRows(table);
1783
+ return allTableRows.every((row) => {
1784
+ const cell = row.children[endSelectedCellIndex];
1785
+ return cell instanceof RTETableHeadCellBlock;
1786
+ });
1787
+ }
1788
+ return false;
1789
+ }
1790
+ /**
1791
+ * @inheritDoc
1792
+ */
1793
+ handleAction(action, target) {
1794
+ var _a;
1795
+ const headerOn = action.headerOn;
1796
+ const [startCellIndex, endCellIndex] = this.getBoundaryCellIndexOfRow(action.tableCellHeaderRange);
1797
+ const allTableBodyRows = ((_a = target.children.find((body) => body instanceof RTETableBodyBlock)) === null || _a === void 0 ? void 0 : _a.children) || [];
1798
+ allTableBodyRows.forEach((row) => {
1799
+ const firstTableCellIndex = row.children.findIndex((cell) => !(cell instanceof RTETableHeadCellBlock));
1800
+ if (headerOn) {
1801
+ this.toggleCellsToHeader(firstTableCellIndex, endCellIndex, row);
1802
+ }
1803
+ else {
1804
+ this.toggleHeaderCellsToCells(firstTableCellIndex, row, startCellIndex);
1805
+ }
1806
+ });
1807
+ const root = this.getRootContent(target);
1808
+ if (root && action.tableCellHeaderRange[0].parent) {
1809
+ const focusNode = action.tableCellHeaderRange[0].parent.getFirstNode();
1810
+ focusNode && root.apply(new contentState.UpdateCursorPositionAction(focusNode, 0));
1811
+ }
1812
+ }
1813
+ /**
1814
+ * Toggles the specified header cells in a row to cells.
1815
+ *
1816
+ * @param {number} firstTableCellIndex - The index of the first table cell in the row.
1817
+ * @param {RTETableRowBlock} row - The table row block containing the cells to toggle.
1818
+ * @param {number} startCellIndex - The index of the first cell to toggle.
1819
+ */
1820
+ toggleHeaderCellsToCells(firstTableCellIndex, row, startCellIndex) {
1821
+ const lastTableHeaderCellIndex = firstTableCellIndex >= 0 ? firstTableCellIndex - 1 : row.children.length - 1;
1822
+ for (let cellIndex = startCellIndex; cellIndex <= lastTableHeaderCellIndex; cellIndex++) {
1823
+ const cellToToggle = row.children[cellIndex];
1824
+ const newCell = RTETableCellBlock.from(cellToToggle.toJSON());
1825
+ this.replaceCellInRow(row, cellToToggle, newCell);
1826
+ }
1827
+ }
1828
+ /**
1829
+ * Toggles the specified cells in a row to header cells.
1830
+ *
1831
+ * @param {number} firstTableCellIndex - The index of the first table cell in the row.
1832
+ * @param {number} endCellIndex - The index of the last cell to toggle.
1833
+ * @param {RTETableRowBlock} row - The table row block containing the cells to toggle.
1834
+ */
1835
+ toggleCellsToHeader(firstTableCellIndex, endCellIndex, row) {
1836
+ for (let tableCellIndex = firstTableCellIndex; tableCellIndex <= endCellIndex; tableCellIndex++) {
1837
+ const cellToToggle = row.children[tableCellIndex];
1838
+ const newHeaderCell = RTETableHeadCellBlock.from(cellToToggle.toJSON());
1839
+ this.replaceCellInRow(row, cellToToggle, newHeaderCell);
1840
+ }
1841
+ }
1842
+ /**
1843
+ * Replaces a cell in a given row at the specified index with a new cell.
1844
+ *
1845
+ * @param {RTETableRowBlock} row - The table row block containing the cell to replace.
1846
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} oldCell - The cell to replace.
1847
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} newCell - The new cell to insert.
1848
+ */
1849
+ replaceCellInRow(row, oldCell, newCell) {
1850
+ row.apply(new codeBlock.InsertChildrenBeforeAction(oldCell, newCell));
1851
+ row.apply(new codeBlock.RemoveChildrenAction(oldCell));
1852
+ }
1853
+ }
1854
+
1855
+ const DELETE_TABLE_COLUMN = 'DELETE_TABLE_COLUMN';
1856
+ /**
1857
+ * Action to delete a table column
1858
+ */
1859
+ class DeleteTableColumnAction extends codeBlock.ModifyContentAction {
1860
+ constructor(target) {
1861
+ super();
1862
+ this.isFlushable = true;
1863
+ this.type = DELETE_TABLE_COLUMN;
1864
+ this.tableCellDeleteRange = target;
1865
+ }
1866
+ }
1867
+
1868
+ const INSERT_TABLE_COLUMN = 'INSERT_TABLE_COLUMN';
1869
+ exports.InsertTableColumnDirection = void 0;
1870
+ (function (InsertTableColumnDirection) {
1871
+ InsertTableColumnDirection["LEFT"] = "LEFT";
1872
+ InsertTableColumnDirection["RIGHT"] = "RIGHT";
1873
+ })(exports.InsertTableColumnDirection || (exports.InsertTableColumnDirection = {}));
1874
+ /**
1875
+ * Action to insert a table column into the RTETable.
1876
+ */
1877
+ class InsertTableColumnAction extends codeBlock.ModifyContentAction {
1878
+ constructor(insertDirection, tableCellInsertRange) {
1879
+ super();
1880
+ this.isFlushable = true;
1881
+ this.type = INSERT_TABLE_COLUMN;
1882
+ this.tableCellInsertRange = tableCellInsertRange;
1883
+ this.insertDirection = insertDirection;
1884
+ }
1885
+ }
1886
+
1887
+ const SELECT_TABLE_COLUMN = 'SELECT_TABLE_COLUMN';
1888
+ /**
1889
+ * Action to select a table column into the RTETable.
1890
+ */
1891
+ class SelectTableColumnAction extends codeBlock.ModifyContentAction {
1892
+ constructor(tableCellSelectRange, selectCellCallback) {
1893
+ super();
1894
+ this.type = SELECT_TABLE_COLUMN;
1895
+ this.tableCellSelectRange = tableCellSelectRange;
1896
+ this.selectCellCallback = selectCellCallback;
1897
+ }
1898
+ }
1899
+
1900
+ const TOGGLE_HEADER_TABLE_COLUMN = 'TOGGLE_HEADER_TABLE_COLUMN';
1901
+ /**
1902
+ * Action to toggle header state of a table column in the RTETable.
1903
+ */
1904
+ class ToggleHeaderTableColumnAction extends codeBlock.ModifyContentAction {
1905
+ constructor(tableCellHeaderRange, headerOn) {
1906
+ super();
1907
+ this.isFlushable = true;
1908
+ this.type = TOGGLE_HEADER_TABLE_COLUMN;
1909
+ this.headerOn = false;
1910
+ this.tableCellHeaderRange = tableCellHeaderRange;
1911
+ this.headerOn = headerOn;
1912
+ }
1913
+ }
1914
+
1915
+ exports.ColumnOperationType = void 0;
1916
+ (function (ColumnOperationType) {
1917
+ ColumnOperationType["HEADER_COLUMN"] = "HEADER_COLUMN";
1918
+ ColumnOperationType["ADD_COLUMN_LEFT"] = "ADD_COLUMN_LEFT";
1919
+ ColumnOperationType["ADD_COLUMN_RIGHT"] = "ADD_COLUMN_RIGHT";
1920
+ ColumnOperationType["DELETE_COLUMN"] = "DELETE_COLUMN";
1921
+ ColumnOperationType["SELECT_COLUMN"] = "SELECT_COLUMN";
1922
+ })(exports.ColumnOperationType || (exports.ColumnOperationType = {}));
1923
+ /**
1924
+ * Event handler for column operations in a table.
1925
+ */
1926
+ class ColumnOperationEventHandler extends SettingEventHandler {
1927
+ /**
1928
+ * @inheritDoc
1929
+ */
1930
+ canHandle(action) {
1931
+ return action[0] === exports.TableSettingType.COLUMN;
1932
+ }
1933
+ /**
1934
+ * @inheritDoc
1935
+ */
1936
+ execute(action, extensionContext) {
1937
+ const selectedCells = extensionContext.tableSelection.getSelectedCells();
1938
+ if (!selectedCells || selectedCells.length === 0) {
1939
+ return;
1940
+ }
1941
+ const operation = action[1];
1942
+ switch (operation) {
1943
+ case exports.ColumnOperationType.ADD_COLUMN_LEFT:
1944
+ case exports.ColumnOperationType.ADD_COLUMN_RIGHT:
1945
+ this.handleInsertColumn(operation, selectedCells);
1946
+ break;
1947
+ case exports.ColumnOperationType.DELETE_COLUMN:
1948
+ this.handleDeleteColumn(selectedCells);
1949
+ break;
1950
+ case exports.ColumnOperationType.SELECT_COLUMN:
1951
+ this.handleSelectColumn(selectedCells, extensionContext);
1952
+ break;
1953
+ case exports.ColumnOperationType.HEADER_COLUMN:
1954
+ this.handleToggleHeaderColumn(selectedCells);
1955
+ break;
1956
+ }
1957
+ }
1958
+ /**
1959
+ * Adds a new column to the table at the specified position.
1960
+ *
1961
+ * @param {ColumnOperationType} direction - The position to insert the new column (left or right).
1962
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1963
+ */
1964
+ handleInsertColumn(direction, selectedCells) {
1965
+ const action = new InsertTableColumnAction(direction === exports.ColumnOperationType.ADD_COLUMN_LEFT
1966
+ ? exports.InsertTableColumnDirection.LEFT
1967
+ : exports.InsertTableColumnDirection.RIGHT, selectedCells);
1968
+ this.applyActionOnTable(action, selectedCells[0]);
1969
+ }
1970
+ /**
1971
+ * Deletes the selected column from the table.
1972
+ *
1973
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1974
+ */
1975
+ handleDeleteColumn(selectedCells) {
1976
+ const action = new DeleteTableColumnAction(selectedCells);
1977
+ this.applyActionOnTable(action, selectedCells[0]);
1978
+ }
1979
+ /**
1980
+ * Selects the entire column in the table.
1981
+ *
1982
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1983
+ * @param {RTETableExtensionContext} extensionContext - The table extension context.
1984
+ */
1985
+ handleSelectColumn(selectedCells, extensionContext) {
1986
+ const action = new SelectTableColumnAction(selectedCells, (allSelectedCells) => {
1987
+ extensionContext.tableSelection.setSelectedCells(allSelectedCells);
1988
+ });
1989
+ this.applyActionOnTable(action, selectedCells[0]);
1990
+ }
1991
+ /**
1992
+ * Toggles the header state of the selected column in the table.
1993
+ *
1994
+ * @param {RTETableCellBlock[] | RTETableHeadCellBlock[]} selectedCells - The selected table cells.
1995
+ */
1996
+ handleToggleHeaderColumn(selectedCells) {
1997
+ const headerOn = !ToggleHeaderTableColumnStrategy.isFullHeaderSelection(selectedCells);
1998
+ const action = new ToggleHeaderTableColumnAction(selectedCells, headerOn);
1999
+ this.applyActionOnTable(action, selectedCells[0]);
2000
+ }
2001
+ /**
2002
+ * Apply the specified action on the table containing the selected cell.
2003
+ *
2004
+ * @param {DeleteTableColumnAction | InsertTableColumnAction} action - The action to apply.
2005
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} selectedCell - The selected table cell.
2006
+ */
2007
+ applyActionOnTable(action, selectedCell) {
2008
+ const table = getParentBlockByType(selectedCell, RTETableBlock);
2009
+ if (table) {
2010
+ table.apply(action);
2011
+ }
2012
+ }
2013
+ }
2014
+
2015
+ const SPLIT_CELL_HORIZONTALLY = 'SPLIT_CELL_HORIZONTALLY';
2016
+ /**
2017
+ * Action to split a table cell horizontally.
2018
+ */
2019
+ class SplitCellHorizontallyAction extends codeBlock.ModifyContentAction {
2020
+ constructor() {
2021
+ super();
2022
+ this.isFlushable = true;
2023
+ this.type = SPLIT_CELL_HORIZONTALLY;
2024
+ }
2025
+ }
2026
+
2027
+ const SPLIT_CELL_VERTICALLY = 'SPLIT_CELL_VERTICALLY';
2028
+ /**
2029
+ * Action to split a table cell vertically.
2030
+ */
2031
+ class SplitCellVerticallyAction extends codeBlock.ModifyContentAction {
2032
+ constructor() {
2033
+ super();
2034
+ this.isFlushable = true;
2035
+ this.type = SPLIT_CELL_VERTICALLY;
2036
+ }
2037
+ }
2038
+
2039
+ exports.SplitCellOperationType = void 0;
2040
+ (function (SplitCellOperationType) {
2041
+ SplitCellOperationType["SPLIT_CELL_HORIZONTALLY"] = "SPLIT_CELL_HORIZONTALLY";
2042
+ SplitCellOperationType["SPLIT_CELL_VERTICALLY"] = "SPLIT_CELL_VERTICALLY";
2043
+ })(exports.SplitCellOperationType || (exports.SplitCellOperationType = {}));
2044
+ /**
2045
+ * Event handler for split cell operations in a table.
2046
+ */
2047
+ class SplitCellOperationEventHandler extends SettingEventHandler {
2048
+ /**
2049
+ * @inheritDoc
2050
+ */
2051
+ canHandle(action) {
2052
+ return action[0] === exports.TableSettingType.SPLIT_CELL;
2053
+ }
2054
+ /**
2055
+ * @inheritDoc
2056
+ */
2057
+ execute(action, extensionContext) {
2058
+ const selectedCells = extensionContext.tableSelection.getSelectedCells();
2059
+ if (selectedCells && selectedCells.length === 1) {
2060
+ const targetCell = selectedCells[0];
2061
+ const operation = action[1];
2062
+ switch (operation) {
2063
+ case exports.SplitCellOperationType.SPLIT_CELL_HORIZONTALLY:
2064
+ this.handleSplitCellHorizontally(targetCell);
2065
+ break;
2066
+ case exports.SplitCellOperationType.SPLIT_CELL_VERTICALLY:
2067
+ this.handleSplitCellVertically(targetCell);
2068
+ break;
2069
+ }
2070
+ }
2071
+ }
2072
+ /**
2073
+ * Splits the selected table cell horizontally (split top/bottom).
2074
+ *
2075
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} selectedCell - The table cell block to split.
2076
+ */
2077
+ handleSplitCellHorizontally(selectedCell) {
2078
+ const action = new SplitCellHorizontallyAction();
2079
+ selectedCell.apply(action);
2080
+ }
2081
+ /**
2082
+ * Splits the selected table cell vertically (split left/right).
2083
+ *
2084
+ * @param {RTETableCellBlock | RTETableHeadCellBlock} selectedCell - The table cell block to split.
2085
+ */
2086
+ handleSplitCellVertically(selectedCell) {
2087
+ const action = new SplitCellVerticallyAction();
2088
+ selectedCell.apply(action);
2089
+ }
2090
+ }
2091
+
2092
+ exports.ColumnOperationEventHandler = ColumnOperationEventHandler;
2093
+ exports.DELETE_TABLE_COLUMN = DELETE_TABLE_COLUMN;
2094
+ exports.DELETE_TABLE_ROW = DELETE_TABLE_ROW;
2095
+ exports.INSERT_TABLE_COLUMN = INSERT_TABLE_COLUMN;
2096
+ exports.INSERT_TABLE_ROW = INSERT_TABLE_ROW;
2097
+ exports.MERGE_CELLS = MERGE_CELLS;
2098
+ exports.MergeCellsOperationEventHandler = MergeCellsOperationEventHandler;
2099
+ exports.RTETableAnnotation = RTETableAnnotation;
2100
+ exports.RTETableBlock = RTETableBlock;
2101
+ exports.RTETableBodyBlock = RTETableBodyBlock;
2102
+ exports.RTETableCellAnnotation = RTETableCellAnnotation;
2103
+ exports.RTETableCellBlock = RTETableCellBlock;
2104
+ exports.RTETableColorManager = RTETableColorManager;
2105
+ exports.RTETableHeadBlock = RTETableHeadBlock;
2106
+ exports.RTETableHeadCellAnnotation = RTETableHeadCellAnnotation;
2107
+ exports.RTETableHeadCellBlock = RTETableHeadCellBlock;
2108
+ exports.RTETableRowBlock = RTETableRowBlock;
2109
+ exports.RTE_TABLE_BORDER_STYLES = RTE_TABLE_BORDER_STYLES;
2110
+ exports.RTE_TABLE_DEFAULT_COLORS = RTE_TABLE_DEFAULT_COLORS;
2111
+ exports.RowOperationEventHandler = RowOperationEventHandler;
2112
+ exports.SELECT_TABLE_COLUMN = SELECT_TABLE_COLUMN;
2113
+ exports.SPLIT_CELL_HORIZONTALLY = SPLIT_CELL_HORIZONTALLY;
2114
+ exports.SPLIT_CELL_VERTICALLY = SPLIT_CELL_VERTICALLY;
2115
+ exports.SettingEventHandler = SettingEventHandler;
2116
+ exports.SplitCellOperationEventHandler = SplitCellOperationEventHandler;
2117
+ exports.TOGGLE_HEADER_ROW = TOGGLE_HEADER_ROW;
2118
+ exports.TOGGLE_HEADER_TABLE_COLUMN = TOGGLE_HEADER_TABLE_COLUMN;
2119
+ exports.TableColumnStrategy = TableColumnStrategy;
2120
+ exports.ToggleHeaderTableColumnStrategy = ToggleHeaderTableColumnStrategy;
2121
+ exports.VegaThemeManager = VegaThemeManager;
2122
+ exports.buildTableGrid = buildTableGrid;
2123
+ exports.createNewCell = createNewCell;
2124
+ exports.generateTableBody = generateTableBody;
2125
+ exports.getActualColumnPosition = getActualColumnPosition;
2126
+ exports.getAdjacentCell = getAdjacentCell;
2127
+ exports.getAllTableRows = getAllTableRows;
2128
+ exports.getCellSpan = getCellSpan;
2129
+ exports.getDefaultCellBlockTemplate = getDefaultCellBlockTemplate;
2130
+ exports.getFirstNode = getFirstNode;
2131
+ exports.getParentBlockByType = getParentBlockByType;
2132
+ exports.isRectangularSelection = isRectangularSelection;
2133
+ exports.setSpanAttributes = setSpanAttributes;