@globalpayments/vega 2.92.0 → 2.94.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (556) hide show
  1. package/dist/cjs/{app-globals-2f326662.js → app-globals-d05c3410.js} +14 -9
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-b9a5b3e2.js → child-nodes-event-prevent-slimmer-e67ee84c.js} +1 -1
  3. package/dist/cjs/{code-block-6435d641.js → code-block-493c7ce7.js} +117 -31
  4. package/dist/cjs/{component-value-history-controller-slimmer.abstract-e4c9a5ba.js → component-value-history-controller-slimmer.abstract-ab21fcbf.js} +72 -39
  5. package/dist/cjs/{content-state-96ec9114.js → content-state-fc34a814.js} +61 -7
  6. package/dist/cjs/{date-required-rule-8c9e312b.js → date-required-rule-4ab06a82.js} +1 -1
  7. package/dist/cjs/{design-token-3548af29.js → design-token-d3d12fa0.js} +3 -3
  8. package/dist/cjs/{element-appender-slimmer-3bf69990.js → element-appender-slimmer-1d6323c2.js} +17 -8
  9. package/dist/cjs/{event-emit-slimmer-5bab10c2.js → event-emit-slimmer-d234a619.js} +1 -1
  10. package/dist/cjs/{form-field-controller-slimmer-e0efac05.js → form-field-controller-slimmer-d638ba12.js} +1 -1
  11. package/dist/cjs/{image-annotation-action-853f72c8.js → image-annotation-action-7c4cd316.js} +4 -4
  12. package/dist/cjs/image-extension-30a7c10f.js +56 -0
  13. package/dist/cjs/index.cjs.js +24 -19
  14. package/dist/cjs/{inject-keyboard-manager-0dccff1a.js → inject-keyboard-manager-5a105612.js} +1 -1
  15. package/dist/cjs/{internal-calendar-period-factory-6187ec4c.js → internal-calendar-period-factory-b76006f7.js} +1 -1
  16. package/dist/cjs/{internal-translation-controller-48ebfd0f.js → internal-translation-controller-eb02c3b1.js} +6 -0
  17. package/dist/cjs/{internal-vega-event-manager-7196a847.js → internal-vega-event-manager-13c4012b.js} +2 -1
  18. package/dist/cjs/{keyboard-manager-dfe8d924.js → keyboard-manager-ca76d4dc.js} +1 -1
  19. package/dist/cjs/{keyboard-manager-slimmer-4a2560a1.js → keyboard-manager-slimmer-a1223714.js} +1 -1
  20. package/dist/cjs/{link-extension-28d95849.js → link-extension-92a63cb7.js} +3 -3
  21. package/dist/cjs/loader.cjs.js +14 -14
  22. package/dist/cjs/{month-view-generator-2e59b188.js → month-view-generator-876c50d4.js} +1 -1
  23. package/dist/cjs/{public-rules-8727c42c.js → public-rules-9e1ea1d9.js} +7 -7
  24. package/dist/cjs/{range-5cb3d1e4.js → range-30219330.js} +1 -1
  25. package/dist/cjs/{responsive-format-facade-98b89142.js → responsive-format-facade-25e9f30d.js} +1 -1
  26. package/dist/cjs/{rich-text-editor-required-rule-8e4d577d.js → rich-text-editor-required-rule-23bf7485.js} +1 -1
  27. package/dist/cjs/{split-cell-operation-9e3ab88d.js → split-cell-operation-43752212.js} +3 -3
  28. package/dist/cjs/{state-border-formatter-626b0a14.js → state-border-formatter-f1ce0f3b.js} +1 -1
  29. package/dist/cjs/{string-format-strategy.abstract-981f43e1.js → string-format-strategy.abstract-b22f7754.js} +1 -1
  30. package/dist/cjs/{string-input-formatter-slimmer-fc4a0ba5.js → string-input-formatter-slimmer-d2c248f7.js} +1 -1
  31. package/dist/cjs/{string-mask-strategy-b47fa159.js → string-mask-strategy-fc01a500.js} +2 -2
  32. package/dist/cjs/{style-formatter-baf18624.js → style-formatter-73205450.js} +2 -2
  33. package/dist/cjs/{time-required-rule-e77d174f.js → time-required-rule-12d2f394.js} +1 -1
  34. package/dist/cjs/{token-extension-3aec039f.js → token-extension-ea891d54.js} +3318 -1742
  35. package/dist/cjs/{translation-slimmer-1e05769e.js → translation-slimmer-9099f56c.js} +1 -1
  36. package/dist/cjs/{type-guard-7ab48d6c.js → type-guard-f354af8b.js} +1 -1
  37. package/dist/cjs/{valid-credit-card-number-rule-52ba9c67.js → valid-credit-card-number-rule-8d370163.js} +1 -1
  38. package/dist/cjs/vega-accordion.cjs.entry.js +9 -9
  39. package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
  40. package/dist/cjs/vega-app-header-button.cjs.entry.js +9 -9
  41. package/dist/cjs/vega-banner.cjs.entry.js +3 -3
  42. package/dist/cjs/vega-box.cjs.entry.js +6 -6
  43. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  44. package/dist/cjs/vega-button-circle.cjs.entry.js +9 -9
  45. package/dist/cjs/vega-button-group_2.cjs.entry.js +4 -4
  46. package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
  47. package/dist/cjs/vega-button.cjs.entry.js +12 -9
  48. package/dist/cjs/vega-calendar_5.cjs.entry.js +11 -11
  49. package/dist/cjs/vega-card.cjs.entry.js +5 -5
  50. package/dist/cjs/vega-carousel.cjs.entry.js +6 -6
  51. package/dist/cjs/vega-checkbox_2.cjs.entry.js +6 -6
  52. package/dist/cjs/vega-chip.cjs.entry.js +9 -9
  53. package/dist/cjs/vega-code-block.cjs.entry.js +12 -12
  54. package/dist/cjs/vega-color-picker.cjs.entry.js +5 -5
  55. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +7 -7
  56. package/dist/cjs/vega-color-swatch.cjs.entry.js +5 -5
  57. package/dist/cjs/vega-combo-box.cjs.entry.js +19 -13
  58. package/dist/cjs/vega-date-picker_2.cjs.entry.js +17 -17
  59. package/dist/cjs/vega-dialog_2.cjs.entry.js +20 -9
  60. package/dist/cjs/vega-divider.cjs.entry.js +5 -5
  61. package/dist/cjs/vega-dropdown_5.cjs.entry.js +693 -195
  62. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  63. package/dist/cjs/{vega-event-id-df22d80e.js → vega-event-id-58afed7a.js} +2 -0
  64. package/dist/cjs/vega-field-label.cjs.entry.js +5 -5
  65. package/dist/cjs/vega-file-uploader.cjs.entry.js +6 -6
  66. package/dist/cjs/vega-flag-icon.cjs.entry.js +5 -5
  67. package/dist/cjs/vega-flex.cjs.entry.js +6 -6
  68. package/dist/cjs/vega-font.cjs.entry.js +5 -5
  69. package/dist/cjs/vega-form.cjs.entry.js +7 -7
  70. package/dist/cjs/vega-grid.cjs.entry.js +5 -5
  71. package/dist/cjs/vega-icon.cjs.entry.js +5 -5
  72. package/dist/cjs/vega-image-uploader.cjs.entry.js +9 -9
  73. package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -10
  74. package/dist/cjs/vega-input-numeric.cjs.entry.js +9 -9
  75. package/dist/cjs/vega-input-passcode.cjs.entry.js +9 -9
  76. package/dist/cjs/vega-input-phone-number.cjs.entry.js +8 -8
  77. package/dist/cjs/vega-input-range.cjs.entry.js +7 -7
  78. package/dist/cjs/vega-input-select.cjs.entry.js +9 -9
  79. package/dist/cjs/vega-input.cjs.entry.js +9 -9
  80. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  81. package/dist/cjs/vega-left-nav_5.cjs.entry.js +316 -111
  82. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +3 -3
  83. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  84. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +3 -3
  85. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +3 -3
  86. package/dist/cjs/vega-pagination.cjs.entry.js +8 -8
  87. package/dist/cjs/vega-popover_2.cjs.entry.js +11 -11
  88. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +6 -6
  89. package/dist/cjs/vega-radio_2.cjs.entry.js +9 -9
  90. package/dist/cjs/vega-rich-text-content.cjs.entry.js +7 -7
  91. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +510 -73
  92. package/dist/cjs/vega-rich-text-find-replace-panel.cjs.entry.js +4 -4
  93. package/dist/cjs/vega-rich-text-special-characters-panel.cjs.entry.js +8 -8
  94. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +15 -15
  95. package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
  96. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +8 -8
  97. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +6 -6
  98. package/dist/cjs/vega-sidenav_3.cjs.entry.js +6 -6
  99. package/dist/cjs/vega-signature-capture.cjs.entry.js +10 -10
  100. package/dist/cjs/vega-stepper.cjs.entry.js +6 -6
  101. package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
  102. package/dist/cjs/vega-table_11.cjs.entry.js +968 -425
  103. package/dist/cjs/vega-textarea.cjs.entry.js +7 -9
  104. package/dist/cjs/vega-time-picker_2.cjs.entry.js +34 -14
  105. package/dist/cjs/vega-toggle-switch.cjs.entry.js +5 -5
  106. package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -6
  107. package/dist/cjs/vega.cjs.js +14 -14
  108. package/dist/collection/components/vega-button/vega-button.css +4 -0
  109. package/dist/collection/components/vega-button/vega-button.js +4 -1
  110. package/dist/collection/components/vega-combo-box/slimmers/renderers/vega-combo-box-dropdown-renderer.js +4 -1
  111. package/dist/collection/components/vega-combo-box/vega-combo-box.js +7 -1
  112. package/dist/collection/components/vega-dialog/vega-dialog.js +1 -1
  113. package/dist/collection/components/vega-dropdown/constants.js +1 -0
  114. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.js +9 -0
  115. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.js +97 -4
  116. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-select-all-controller.js +219 -0
  117. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-selected-controller.js +78 -13
  118. package/dist/collection/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.js +13 -1
  119. package/dist/collection/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.js +7 -0
  120. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.js +52 -1
  121. package/dist/collection/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.js +4 -1
  122. package/dist/collection/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.js +5 -0
  123. package/dist/collection/components/vega-dropdown/vega-dropdown.js +126 -1
  124. package/dist/collection/components/vega-field-label/vega-field-label.js +1 -1
  125. package/dist/collection/components/vega-hint/vega-hint.js +1 -1
  126. package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +4 -1
  127. package/dist/collection/components/vega-modal/vega-modal.css +0 -1
  128. package/dist/collection/components/vega-modal/vega-modal.js +38 -0
  129. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-auto-collapse-controller.js +4 -6
  130. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-backdrop-controller.js +23 -68
  131. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-backdrop-manager.js +74 -0
  132. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-open-state-controller.js +16 -2
  133. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-zindex-controller.js +2 -2
  134. package/dist/collection/components/vega-nav/vega-left-nav/vega-left-nav.js +7 -2
  135. package/dist/collection/components/vega-rich-text-editor/assets/redo.js +1 -1
  136. package/dist/collection/components/vega-rich-text-editor/assets/undo.js +1 -1
  137. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-insert-line-break-strategy.js +11 -5
  138. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/block-split-with-text-node-strategy.js +9 -4
  139. package/dist/collection/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.js +61 -5
  140. package/dist/collection/components/vega-rich-text-editor/dto/actions/paste-content-action.js +1 -0
  141. package/dist/collection/components/vega-rich-text-editor/dto/annotations/custom-style-annotation.js +3 -2
  142. package/dist/collection/components/vega-rich-text-editor/dto/blocks/block.abstract.js +2 -1
  143. package/dist/collection/components/vega-rich-text-editor/dto/filter-styles-strategies/code-block/code-node-filter-styles-strategy.js +1 -1
  144. package/dist/collection/components/vega-rich-text-editor/dto/nodes/node.abstract.js +2 -1
  145. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +6 -1
  146. package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +1 -1
  147. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-interceptors/blockquote-exit-on-enter-interceptor.js +61 -0
  148. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/block-transform-to-blockquote-strategy.js +40 -0
  149. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/remove-blockquote-strategy.js +20 -0
  150. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/actions/remove-blockquote-action.js +17 -0
  151. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/actions/transform-to-blockquote-action.js +19 -0
  152. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/assets/quote-left.js +4 -0
  153. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/blockquote-extension.js +47 -0
  154. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/dto/blockquote-annotation.js +76 -0
  155. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/dto/rte-blockquote-block.js +70 -0
  156. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/element-to-dto-strategies/blockquote-to-blockquote-block-strategy.js +53 -0
  157. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/filter-styles-strategies/blockquote-block/blockquote-filter-styles-strategy.js +41 -0
  158. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-block-renderer.js +21 -0
  159. package/dist/collection/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.js +260 -0
  160. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-highlight-manager.js +21 -7
  161. package/dist/collection/components/vega-rich-text-editor/extensions/find-replace/slimmer/renderers/find-replace-toolbar-button-renderer.js +12 -0
  162. package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/assets/fullscreen-enter.js +3 -0
  163. package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/assets/fullscreen-exit.js +3 -0
  164. package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/controller/fullscreen-controller.js +156 -0
  165. package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/fullscreen-extension.js +31 -0
  166. package/dist/collection/components/vega-rich-text-editor/extensions/fullscreen/fullscreen-toolbar-button-renderer.js +73 -0
  167. package/dist/collection/components/vega-rich-text-editor/extensions/image/image-extension.js +34 -0
  168. package/dist/collection/components/vega-rich-text-editor/extensions/image/type.js +1 -0
  169. package/dist/collection/components/vega-rich-text-editor/extensions/paste/assets/paste.js +3 -0
  170. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.js +145 -0
  171. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-constants.js +6 -0
  172. package/dist/collection/components/vega-rich-text-editor/extensions/paste/paste-extension.js +442 -0
  173. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +1 -1
  174. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-toolbar-popover-renderer.js +1 -0
  175. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +4 -3
  176. 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 +1 -1
  177. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/column-button-slimmer.js +1 -1
  178. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/merge-cells-button-slimmer.js +1 -1
  179. package/dist/collection/components/vega-rich-text-editor/extensions/table/vega-rich-text-table-setting/slimmers/renderers/row-button-slimmer.js +1 -1
  180. package/dist/collection/components/vega-rich-text-editor/helpers/utils.js +85 -15
  181. package/dist/collection/components/vega-rich-text-editor/public-api.js +5 -0
  182. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/extension-controller.js +2 -0
  183. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/base-handler.js +1 -1
  184. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-line-break-handler.js +1 -1
  185. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.js +385 -25
  186. package/dist/collection/components/vega-rich-text-editor/slimmers/controllers/selection-controller.js +69 -36
  187. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/bullets-numbers/bullets-numbers-toolbar-button-slimmer.js +1 -1
  188. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/horizontal-alignment/horizontal-alignment-toolbar-button-slimmer.js +1 -1
  189. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.js +59 -14
  190. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-color-toolbar-button-slimmer.js +1 -1
  191. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/tools/text-styles-toolbar-button-slimmer.js +1 -1
  192. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.js +11 -1
  193. package/dist/collection/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-source-view-renderer.js +19 -1
  194. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.js +6 -1
  195. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.js +28 -1
  196. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-editor.js +1 -1
  197. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.js +1 -1
  198. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/slimmers/renderers/vega-rich-text-link-editor-renderer.js +1 -1
  199. package/dist/collection/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.js +1 -1
  200. package/dist/collection/components/vega-table/slimmers/controllers/dto/column-render-input-model.js +32 -0
  201. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.js +77 -0
  202. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.js +121 -0
  203. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-cell-renderer.js +41 -14
  204. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js +207 -7
  205. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-row-renderer.js +16 -3
  206. package/dist/collection/components/vega-table/vega-table-cell/vega-table-cell.js +113 -11
  207. package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-col-span-controller.js +11 -2
  208. package/dist/collection/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.js +5 -1
  209. package/dist/collection/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.js +22 -1
  210. package/dist/collection/components/vega-table/vega-table.css +5 -0
  211. package/dist/collection/components/vega-table/vega-table.js +5 -0
  212. package/dist/collection/components/vega-text/vega-text.js +1 -1
  213. package/dist/collection/components/vega-textarea/vega-textarea.js +1 -3
  214. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.js +4 -0
  215. package/dist/collection/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.js +4 -0
  216. package/dist/collection/components/vega-time-picker/vega-time-picker.js +39 -0
  217. package/dist/collection/constants/ui.js +1 -0
  218. package/dist/collection/global/scripts/before-vega-load.js +8 -0
  219. package/dist/collection/helpers/backdrop/index.js +1 -0
  220. package/dist/collection/helpers/backdrop/shared-backdrop-manager.js +163 -0
  221. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -1
  222. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
  223. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +11 -4
  224. package/dist/collection/helpers/translation/locales/en.js +6 -0
  225. package/dist/collection/helpers/ui/element-appender.js +5 -2
  226. package/dist/esm/{app-globals-5e0d319a.js → app-globals-f2336686.js} +14 -9
  227. package/dist/esm/{child-nodes-event-prevent-slimmer-f24618c5.js → child-nodes-event-prevent-slimmer-96c14f5a.js} +1 -1
  228. package/dist/esm/{code-block-b71b2aa4.js → code-block-e12588fe.js} +117 -32
  229. package/dist/esm/{component-value-history-controller-slimmer.abstract-282df6e5.js → component-value-history-controller-slimmer.abstract-4e8eb313.js} +72 -39
  230. package/dist/esm/{content-state-909099f8.js → content-state-8032467a.js} +61 -7
  231. package/dist/esm/{date-required-rule-15edb04a.js → date-required-rule-b88e1650.js} +1 -1
  232. package/dist/esm/{design-token-cb5ed6b9.js → design-token-76bd217c.js} +3 -3
  233. package/dist/esm/{element-appender-slimmer-e41120ee.js → element-appender-slimmer-7fcb944b.js} +17 -8
  234. package/dist/esm/{event-emit-slimmer-03deba18.js → event-emit-slimmer-db4a82e0.js} +1 -1
  235. package/dist/esm/{form-field-controller-slimmer-cfe1d8a7.js → form-field-controller-slimmer-395c23e3.js} +1 -1
  236. package/dist/esm/{image-annotation-action-98232dc4.js → image-annotation-action-b3b6c308.js} +4 -4
  237. package/dist/esm/image-extension-b6c7e4a7.js +53 -0
  238. package/dist/esm/index.js +19 -19
  239. package/dist/esm/{inject-keyboard-manager-13cc77ab.js → inject-keyboard-manager-86126b5b.js} +1 -1
  240. package/dist/esm/{internal-calendar-period-factory-c3d70f3b.js → internal-calendar-period-factory-3a07dba0.js} +1 -1
  241. package/dist/esm/{internal-translation-controller-8e8a514a.js → internal-translation-controller-16709132.js} +6 -0
  242. package/dist/esm/{internal-vega-event-manager-75e5e3bb.js → internal-vega-event-manager-48690e5b.js} +2 -1
  243. package/dist/esm/{keyboard-manager-fe885db1.js → keyboard-manager-a0c3e1cf.js} +1 -1
  244. package/dist/esm/{keyboard-manager-slimmer-61d4c79b.js → keyboard-manager-slimmer-f3f66c15.js} +1 -1
  245. package/dist/esm/{link-extension-f1a3bea7.js → link-extension-97fcb8fb.js} +3 -3
  246. package/dist/esm/loader.js +14 -14
  247. package/dist/esm/{month-view-generator-85eecb95.js → month-view-generator-fd0e1856.js} +1 -1
  248. package/dist/esm/{public-rules-323bea4b.js → public-rules-c06f0d2a.js} +7 -7
  249. package/dist/esm/{range-e63068d1.js → range-e999837f.js} +1 -1
  250. package/dist/esm/{responsive-format-facade-fb424f5b.js → responsive-format-facade-ced96b0b.js} +1 -1
  251. package/dist/esm/{rich-text-editor-required-rule-0edb8ba7.js → rich-text-editor-required-rule-71f8ee98.js} +1 -1
  252. package/dist/esm/{split-cell-operation-93b4d775.js → split-cell-operation-359f8082.js} +3 -3
  253. package/dist/esm/{state-border-formatter-1a528ca4.js → state-border-formatter-b680e922.js} +1 -1
  254. package/dist/esm/{string-format-strategy.abstract-72fc98aa.js → string-format-strategy.abstract-23faab71.js} +1 -1
  255. package/dist/esm/{string-input-formatter-slimmer-b0c480d8.js → string-input-formatter-slimmer-4b4866a6.js} +1 -1
  256. package/dist/esm/{string-mask-strategy-4e00c173.js → string-mask-strategy-66586cd8.js} +2 -2
  257. package/dist/esm/{style-formatter-5c1bea8d.js → style-formatter-f4e16af5.js} +2 -2
  258. package/dist/esm/{time-required-rule-df500b14.js → time-required-rule-6e80a9ab.js} +1 -1
  259. package/dist/esm/{token-extension-32d1fa56.js → token-extension-9896879b.js} +3314 -1742
  260. package/dist/esm/{translation-slimmer-60408f13.js → translation-slimmer-21748a0e.js} +1 -1
  261. package/dist/esm/{type-guard-91087018.js → type-guard-ec5e8628.js} +1 -1
  262. package/dist/esm/{valid-credit-card-number-rule-681ecb75.js → valid-credit-card-number-rule-ca5a47d6.js} +1 -1
  263. package/dist/esm/vega-accordion.entry.js +9 -9
  264. package/dist/esm/vega-app-footer.entry.js +3 -3
  265. package/dist/esm/vega-app-header-button.entry.js +9 -9
  266. package/dist/esm/vega-banner.entry.js +3 -3
  267. package/dist/esm/vega-box.entry.js +6 -6
  268. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  269. package/dist/esm/vega-button-circle.entry.js +9 -9
  270. package/dist/esm/vega-button-group_2.entry.js +4 -4
  271. package/dist/esm/vega-button-link.entry.js +4 -4
  272. package/dist/esm/vega-button.entry.js +12 -9
  273. package/dist/esm/vega-calendar_5.entry.js +11 -11
  274. package/dist/esm/vega-card.entry.js +5 -5
  275. package/dist/esm/vega-carousel.entry.js +6 -6
  276. package/dist/esm/vega-checkbox_2.entry.js +6 -6
  277. package/dist/esm/vega-chip.entry.js +9 -9
  278. package/dist/esm/vega-code-block.entry.js +12 -12
  279. package/dist/esm/vega-color-picker.entry.js +5 -5
  280. package/dist/esm/vega-color-swatch-picker.entry.js +7 -7
  281. package/dist/esm/vega-color-swatch.entry.js +5 -5
  282. package/dist/esm/vega-combo-box.entry.js +19 -13
  283. package/dist/esm/vega-date-picker_2.entry.js +17 -17
  284. package/dist/esm/vega-dialog_2.entry.js +20 -9
  285. package/dist/esm/vega-divider.entry.js +5 -5
  286. package/dist/esm/vega-dropdown_5.entry.js +695 -197
  287. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  288. package/dist/esm/{vega-event-id-d3017041.js → vega-event-id-270fe47e.js} +2 -1
  289. package/dist/esm/vega-field-label.entry.js +5 -5
  290. package/dist/esm/vega-file-uploader.entry.js +6 -6
  291. package/dist/esm/vega-flag-icon.entry.js +5 -5
  292. package/dist/esm/vega-flex.entry.js +6 -6
  293. package/dist/esm/vega-font.entry.js +5 -5
  294. package/dist/esm/vega-form.entry.js +7 -7
  295. package/dist/esm/vega-grid.entry.js +5 -5
  296. package/dist/esm/vega-icon.entry.js +5 -5
  297. package/dist/esm/vega-image-uploader.entry.js +9 -9
  298. package/dist/esm/vega-input-credit-card.entry.js +10 -10
  299. package/dist/esm/vega-input-numeric.entry.js +9 -9
  300. package/dist/esm/vega-input-passcode.entry.js +9 -9
  301. package/dist/esm/vega-input-phone-number.entry.js +8 -8
  302. package/dist/esm/vega-input-range.entry.js +7 -7
  303. package/dist/esm/vega-input-select.entry.js +9 -9
  304. package/dist/esm/vega-input.entry.js +9 -9
  305. package/dist/esm/vega-item-toggle.entry.js +3 -3
  306. package/dist/esm/vega-left-nav_5.entry.js +316 -111
  307. package/dist/esm/vega-loader-wrapper_2.entry.js +3 -3
  308. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  309. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +3 -3
  310. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +3 -3
  311. package/dist/esm/vega-pagination.entry.js +8 -8
  312. package/dist/esm/vega-popover_2.entry.js +11 -11
  313. package/dist/esm/vega-progress-tracker_2.entry.js +6 -6
  314. package/dist/esm/vega-radio_2.entry.js +9 -9
  315. package/dist/esm/vega-rich-text-content.entry.js +7 -7
  316. package/dist/esm/vega-rich-text-editor_4.entry.js +507 -70
  317. package/dist/esm/vega-rich-text-find-replace-panel.entry.js +4 -4
  318. package/dist/esm/vega-rich-text-special-characters-panel.entry.js +8 -8
  319. package/dist/esm/vega-rich-text-table-properties_3.entry.js +15 -15
  320. package/dist/esm/vega-segment-control.entry.js +3 -3
  321. package/dist/esm/vega-selection-chip_2.entry.js +8 -8
  322. package/dist/esm/vega-selection-tile_2.entry.js +6 -6
  323. package/dist/esm/vega-sidenav_3.entry.js +6 -6
  324. package/dist/esm/vega-signature-capture.entry.js +10 -10
  325. package/dist/esm/vega-stepper.entry.js +6 -6
  326. package/dist/esm/vega-tab-group_2.entry.js +4 -4
  327. package/dist/esm/vega-table_11.entry.js +968 -425
  328. package/dist/esm/vega-textarea.entry.js +7 -9
  329. package/dist/esm/vega-time-picker_2.entry.js +34 -14
  330. package/dist/esm/vega-toggle-switch.entry.js +5 -5
  331. package/dist/esm/vega-tooltip_2.entry.js +6 -6
  332. package/dist/esm/vega.js +14 -14
  333. package/dist/sri/vega-sri-manifest.json +356 -356
  334. package/dist/types/components/vega-combo-box/types.d.ts +6 -1
  335. package/dist/types/components/vega-combo-box/vega-combo-box.d.ts +1 -0
  336. package/dist/types/components/vega-dropdown/constants.d.ts +1 -0
  337. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-appender-controller.d.ts +2 -0
  338. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-children-controller.d.ts +36 -0
  339. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-select-all-controller.d.ts +107 -0
  340. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-selected-controller.d.ts +17 -0
  341. package/dist/types/components/vega-dropdown/slimmers/controllers/vega-dropdown-source-controller.d.ts +5 -0
  342. package/dist/types/components/vega-dropdown/slimmers/renderers/vega-dropdown-list-renderer.d.ts +2 -0
  343. package/dist/types/components/vega-dropdown/types.d.ts +8 -0
  344. package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/controllers/vega-dropdown-item-state-controller.d.ts +25 -0
  345. package/dist/types/components/vega-dropdown/vega-dropdown-item/slimmers/renderers/vega-dropdown-item-renderer.d.ts +1 -0
  346. package/dist/types/components/vega-dropdown/vega-dropdown-item/vega-dropdown-item.d.ts +4 -0
  347. package/dist/types/components/vega-dropdown/vega-dropdown.d.ts +48 -0
  348. package/dist/types/components/vega-modal/slimmers/renderers/vega-modal-renderer.d.ts +2 -1
  349. package/dist/types/components/vega-modal/vega-modal.d.ts +9 -1
  350. package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-auto-collapse-controller.d.ts +0 -1
  351. package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-backdrop-controller.d.ts +12 -19
  352. package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-backdrop-manager.d.ts +41 -0
  353. package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-open-state-controller.d.ts +4 -1
  354. package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-zindex-controller.d.ts +1 -1
  355. package/dist/types/components/vega-nav/vega-left-nav/vega-left-nav.d.ts +2 -0
  356. package/dist/types/components/vega-rich-text-editor/dto/action-handle-strategies/modify-content-strategies/paste-content-strategy.d.ts +14 -4
  357. package/dist/types/components/vega-rich-text-editor/dto/actions/paste-content-action.d.ts +7 -0
  358. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-interceptors/blockquote-exit-on-enter-interceptor.d.ts +34 -0
  359. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/block-transform-to-blockquote-strategy.d.ts +13 -0
  360. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/action-handler-strategies/remove-blockquote-strategy.d.ts +13 -0
  361. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/actions/remove-blockquote-action.d.ts +14 -0
  362. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/actions/transform-to-blockquote-action.d.ts +18 -0
  363. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/assets/quote-left.d.ts +3 -0
  364. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/blockquote-extension.d.ts +9 -0
  365. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/dto/blockquote-annotation.d.ts +48 -0
  366. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/dto/rte-blockquote-block.d.ts +56 -0
  367. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/element-to-dto-strategies/blockquote-to-blockquote-block-strategy.d.ts +35 -0
  368. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/filter-styles-strategies/blockquote-block/blockquote-filter-styles-strategy.d.ts +31 -0
  369. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-block-renderer.d.ts +18 -0
  370. package/dist/types/components/vega-rich-text-editor/extensions/blockquote/renderers/blockquote-toolbar-button-renderer.d.ts +113 -0
  371. package/dist/types/components/vega-rich-text-editor/extensions/find-replace/slimmer/controllers/helper/find-replace-highlight-manager.d.ts +15 -4
  372. package/dist/types/components/vega-rich-text-editor/extensions/fullscreen/assets/fullscreen-enter.d.ts +3 -0
  373. package/dist/types/components/vega-rich-text-editor/extensions/fullscreen/assets/fullscreen-exit.d.ts +3 -0
  374. package/dist/types/components/vega-rich-text-editor/extensions/fullscreen/controller/fullscreen-controller.d.ts +63 -0
  375. package/dist/types/components/vega-rich-text-editor/extensions/fullscreen/fullscreen-extension.d.ts +20 -0
  376. package/dist/types/components/vega-rich-text-editor/extensions/fullscreen/fullscreen-toolbar-button-renderer.d.ts +40 -0
  377. package/dist/types/components/vega-rich-text-editor/extensions/image/image-extension.d.ts +27 -0
  378. package/dist/types/components/vega-rich-text-editor/extensions/image/type.d.ts +13 -0
  379. package/dist/types/components/vega-rich-text-editor/extensions/paste/assets/paste.d.ts +3 -0
  380. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-chooser-ui.d.ts +58 -0
  381. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-constants.d.ts +6 -0
  382. package/dist/types/components/vega-rich-text-editor/extensions/paste/paste-extension.d.ts +150 -0
  383. package/dist/types/components/vega-rich-text-editor/helpers/utils.d.ts +26 -0
  384. package/dist/types/components/vega-rich-text-editor/interface.d.ts +20 -0
  385. package/dist/types/components/vega-rich-text-editor/public-api.d.ts +5 -0
  386. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/helper/input-event-handler/insert-paste-handler.d.ts +114 -3
  387. package/dist/types/components/vega-rich-text-editor/slimmers/controllers/selection-controller.d.ts +22 -13
  388. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/tools/image-toolbar-button-slimmer.d.ts +10 -2
  389. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-renderer.d.ts +5 -0
  390. package/dist/types/components/vega-rich-text-editor/slimmers/renderers/vega-rich-text-editor-source-view-renderer.d.ts +8 -0
  391. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/slimmers/renderers/vega-rich-text-editor-toolbar-button-renderer.d.ts +1 -0
  392. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor-toolbar-button/vega-rich-text-editor-toolbar-button.d.ts +6 -0
  393. package/dist/types/components/vega-rich-text-editor/vega-rich-text-editor.d.ts +4 -4
  394. package/dist/types/components/vega-rich-text-editor/vega-rich-text-image-editor/vega-rich-text-image-editor.d.ts +1 -1
  395. package/dist/types/components/vega-rich-text-editor/vega-rich-text-link-editor/vega-rich-text-link-editor.d.ts +1 -1
  396. package/dist/types/components/vega-table/interface.d.ts +31 -0
  397. package/dist/types/components/vega-table/slimmers/controllers/dto/column-render-input-model.d.ts +13 -0
  398. package/dist/types/components/vega-table/slimmers/controllers/vega-table-body-col-span-controller.d.ts +43 -0
  399. package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-col-span-resolver.d.ts +38 -0
  400. package/dist/types/components/vega-table/slimmers/renderers/vega-table-cell-renderer.d.ts +11 -2
  401. package/dist/types/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.d.ts +4 -0
  402. package/dist/types/components/vega-table/slimmers/renderers/vega-table-row-renderer.d.ts +1 -0
  403. package/dist/types/components/vega-table/vega-table-cell/slimmers/controllers/vega-table-row-state-subscriber.d.ts +1 -1
  404. package/dist/types/components/vega-table/vega-table-cell/vega-table-cell.d.ts +23 -0
  405. package/dist/types/components/vega-table/vega-table-foot-cell/slimmers/renderers/vega-table-foot-cell-renderer.d.ts +1 -0
  406. package/dist/types/components/vega-table/vega-table-foot-cell/vega-table-foot-cell.d.ts +9 -0
  407. package/dist/types/components/vega-table/vega-table.d.ts +2 -0
  408. package/dist/types/components/vega-time-picker/slimmers/controllers/vega-time-picker-range-dropdown-controller.d.ts +1 -0
  409. package/dist/types/components/vega-time-picker/slimmers/controllers/vega-time-picker-single-dropdown-controller.d.ts +1 -0
  410. package/dist/types/components/vega-time-picker/types.d.ts +7 -0
  411. package/dist/types/components/vega-time-picker/vega-time-picker.d.ts +11 -1
  412. package/dist/types/components.d.ts +90 -3
  413. package/dist/types/constants/ui.d.ts +1 -1
  414. package/dist/types/helpers/backdrop/index.d.ts +1 -0
  415. package/dist/types/helpers/backdrop/shared-backdrop-manager.d.ts +67 -0
  416. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
  417. package/dist/types/helpers/translation/interface.d.ts +7 -0
  418. package/dist/types/helpers/ui/element-appender.d.ts +4 -1
  419. package/dist/types/types/components.type.d.ts +5 -1
  420. package/dist/vega/index.esm.js +1 -1
  421. package/dist/vega/{p-92823583.js → p-02355de8.js} +1 -1
  422. package/dist/vega/{p-481601c0.entry.js → p-0af32f31.entry.js} +1 -1
  423. package/dist/vega/{p-438b7404.entry.js → p-0b311599.entry.js} +1 -1
  424. package/dist/vega/{p-56cf1a65.entry.js → p-0b9c7c79.entry.js} +1 -1
  425. package/dist/vega/p-0be4df0a.js +1 -0
  426. package/dist/vega/p-0d18368b.js +1 -0
  427. package/dist/vega/{p-9fafc956.entry.js → p-1232b553.entry.js} +1 -1
  428. package/dist/vega/{p-70817cf5.js → p-140616fe.js} +1 -1
  429. package/dist/vega/{p-f365601c.entry.js → p-14559974.entry.js} +1 -1
  430. package/dist/vega/{p-aa32f2f3.js → p-14baa886.js} +1 -1
  431. package/dist/vega/p-2364be92.entry.js +1 -0
  432. package/dist/vega/{p-c0629528.entry.js → p-26c7fe8b.entry.js} +1 -1
  433. package/dist/vega/p-270697c0.entry.js +1 -0
  434. package/dist/vega/p-282b37cb.js +1 -0
  435. package/dist/vega/{p-06c2ce2c.entry.js → p-288d65ad.entry.js} +1 -1
  436. package/dist/vega/p-2bf17505.entry.js +1 -0
  437. package/dist/vega/{p-c78aeaf3.entry.js → p-2dc5edd0.entry.js} +1 -1
  438. package/dist/vega/{p-136226f8.js → p-320091b7.js} +1 -1
  439. package/dist/vega/{p-b799fc1f.entry.js → p-341a6b32.entry.js} +1 -1
  440. package/dist/vega/p-36949349.js +1 -0
  441. package/dist/vega/p-38c9d782.js +1 -0
  442. package/dist/vega/{p-a361456d.js → p-3c309a38.js} +1 -1
  443. package/dist/vega/{p-71e2a3ec.js → p-3dee1e55.js} +1 -1
  444. package/dist/vega/{p-ef2b9846.entry.js → p-3e8baeac.entry.js} +1 -1
  445. package/dist/vega/{p-8f078d0d.entry.js → p-44439ecc.entry.js} +1 -1
  446. package/dist/vega/{p-68e16c70.entry.js → p-45e8424a.entry.js} +1 -1
  447. package/dist/vega/{p-ce7e9515.entry.js → p-46fe3154.entry.js} +1 -1
  448. package/dist/vega/{p-c2e0f8b7.entry.js → p-48ee3e24.entry.js} +1 -1
  449. package/dist/vega/{p-e371738b.js → p-4fe40b76.js} +1 -1
  450. package/dist/vega/p-4ff48b84.js +1 -0
  451. package/dist/vega/{p-2e58d99e.entry.js → p-5107277d.entry.js} +1 -1
  452. package/dist/vega/{p-2def8e3e.js → p-51b68d25.js} +1 -1
  453. package/dist/vega/p-52c6a399.entry.js +1 -0
  454. package/dist/vega/p-579cdeae.js +1 -0
  455. package/dist/vega/{p-e9cee498.entry.js → p-595998d9.entry.js} +1 -1
  456. package/dist/vega/{p-7798254d.entry.js → p-5db61a12.entry.js} +1 -1
  457. package/dist/vega/{p-e41d9d0e.entry.js → p-5df2d6a1.entry.js} +1 -1
  458. package/dist/vega/p-5f377954.js +1 -1
  459. package/dist/vega/{p-d7369441.js → p-61ce8029.js} +1 -1
  460. package/dist/vega/{p-2da12975.entry.js → p-62d6e063.entry.js} +1 -1
  461. package/dist/vega/p-698fbd73.js +1 -0
  462. package/dist/vega/p-6ad7144a.entry.js +1 -0
  463. package/dist/vega/{p-f70f7ad8.entry.js → p-6c9c2f8c.entry.js} +1 -1
  464. package/dist/vega/{p-b730bf6e.js → p-6cde45fc.js} +1 -1
  465. package/dist/vega/p-6dfe2407.js +1 -0
  466. package/dist/vega/{p-d3c8b871.entry.js → p-6f01a71a.entry.js} +1 -1
  467. package/dist/vega/p-6f70a10f.entry.js +1 -0
  468. package/dist/vega/p-73f2c3c0.entry.js +1 -0
  469. package/dist/vega/{p-de885ef2.js → p-75e33859.js} +1 -1
  470. package/dist/vega/p-762ea523.entry.js +1 -0
  471. package/dist/vega/{p-f6bccb06.entry.js → p-782eb312.entry.js} +1 -1
  472. package/dist/vega/p-7a88a3d3.entry.js +1 -0
  473. package/dist/vega/{p-5038b6d7.entry.js → p-7b57a845.entry.js} +1 -1
  474. package/dist/vega/p-83a16285.entry.js +1 -0
  475. package/dist/vega/{p-8da860f6.js → p-8720816e.js} +1 -1
  476. package/dist/vega/{p-9219201a.entry.js → p-892edf88.entry.js} +1 -1
  477. package/dist/vega/{p-625351a3.entry.js → p-8c083255.entry.js} +1 -1
  478. package/dist/vega/{p-4d9061fb.js → p-8db904dc.js} +1 -1
  479. package/dist/vega/{p-22f73e6e.entry.js → p-91287214.entry.js} +1 -1
  480. package/dist/vega/{p-5946fadf.js → p-919cddc3.js} +1 -1
  481. package/dist/vega/{p-fc5dfb52.entry.js → p-95913e3c.entry.js} +1 -1
  482. package/dist/vega/p-97215133.js +1 -0
  483. package/dist/vega/{p-5829a66d.entry.js → p-9bdc6e11.entry.js} +1 -1
  484. package/dist/vega/{p-8b9a8603.entry.js → p-9d18ba7f.entry.js} +1 -1
  485. package/dist/vega/{p-f7739cbb.entry.js → p-9dca874d.entry.js} +1 -1
  486. package/dist/vega/{p-c67ce78c.entry.js → p-9f38448c.entry.js} +1 -1
  487. package/dist/vega/{p-e3803943.js → p-9f7154d2.js} +1 -1
  488. package/dist/vega/{p-2314494a.entry.js → p-a057285e.entry.js} +1 -1
  489. package/dist/vega/{p-f515d189.entry.js → p-a0a58295.entry.js} +1 -1
  490. package/dist/vega/p-a7209700.js +1 -0
  491. package/dist/vega/{p-40501057.entry.js → p-a890d60b.entry.js} +1 -1
  492. package/dist/vega/{p-450bf94d.entry.js → p-addbca58.entry.js} +1 -1
  493. package/dist/vega/{p-45ab490c.js → p-b1eb9ff0.js} +1 -1
  494. package/dist/vega/{p-5beec481.js → p-b1ff70bf.js} +1 -1
  495. package/dist/vega/{p-9cdedcfb.entry.js → p-b39d4a88.entry.js} +1 -1
  496. package/dist/vega/{p-ea22cba0.js → p-b4e7c967.js} +1 -1
  497. package/dist/vega/{p-228c5de8.js → p-b775e51f.js} +1 -1
  498. package/dist/vega/{p-43c3848f.entry.js → p-b8f8e480.entry.js} +1 -1
  499. package/dist/vega/{p-8d69b201.js → p-ba662fe5.js} +1 -1
  500. package/dist/vega/p-c66d2a1e.js +1 -0
  501. package/dist/vega/{p-a268a4fb.entry.js → p-c67b9aba.entry.js} +1 -1
  502. package/dist/vega/{p-2353b64f.entry.js → p-c9c6daa6.entry.js} +1 -1
  503. package/dist/vega/p-c9daabe1.entry.js +1 -0
  504. package/dist/vega/{p-37dffdf6.entry.js → p-cad5222a.entry.js} +1 -1
  505. package/dist/vega/{p-e160a727.entry.js → p-cb90163a.entry.js} +1 -1
  506. package/dist/vega/{p-5545a235.entry.js → p-d08ffdf1.entry.js} +1 -1
  507. package/dist/vega/{p-30561e1d.entry.js → p-d3a36d19.entry.js} +1 -1
  508. package/dist/vega/{p-cd1844ad.entry.js → p-e235020b.entry.js} +1 -1
  509. package/dist/vega/{p-9440a8a5.entry.js → p-e4266b45.entry.js} +1 -1
  510. package/dist/vega/{p-18413b62.entry.js → p-e48a870f.entry.js} +1 -1
  511. package/dist/vega/{p-590c8720.entry.js → p-e8ee70c5.entry.js} +1 -1
  512. package/dist/vega/p-ed103a1a.entry.js +1 -0
  513. package/dist/vega/p-f05a193e.entry.js +1 -0
  514. package/dist/vega/{p-7be548a7.js → p-f1974321.js} +1 -1
  515. package/dist/vega/{p-916dfa7e.entry.js → p-f246f125.entry.js} +1 -1
  516. package/dist/vega/p-f4da615a.js +3 -0
  517. package/dist/vega/{p-d0ce752f.entry.js → p-f5d7b89f.entry.js} +1 -1
  518. package/dist/vega/{p-c8eaf91c.entry.js → p-f651df3b.entry.js} +1 -1
  519. package/dist/vega/{p-93dfab05.js → p-f7e459cd.js} +1 -1
  520. package/dist/vega/{p-b6ebfd5c.entry.js → p-f8a29127.entry.js} +1 -1
  521. package/dist/vega/p-f906a7bc.entry.js +1 -0
  522. package/dist/vega/{p-d20587b4.entry.js → p-f96d0503.entry.js} +1 -1
  523. package/dist/vega/{p-cd9fb2ca.entry.js → p-fbd3be00.entry.js} +1 -1
  524. package/dist/vega/{p-f0bc2bbb.js → p-fe24b459.js} +1 -1
  525. package/dist/vega/vega.esm.js +1 -1
  526. package/package.json +2 -16
  527. package/readme.md +0 -5
  528. package/dist/cjs/replace-selected-text-action-a31563ed.js +0 -20
  529. package/dist/esm/replace-selected-text-action-c0817b2b.js +0 -18
  530. package/dist/vega/p-0179f55d.js +0 -1
  531. package/dist/vega/p-07b56f2b.entry.js +0 -1
  532. package/dist/vega/p-209e0166.js +0 -1
  533. package/dist/vega/p-35df0f0a.entry.js +0 -1
  534. package/dist/vega/p-3cf4339a.entry.js +0 -1
  535. package/dist/vega/p-4953bb1a.js +0 -1
  536. package/dist/vega/p-4e39adf5.entry.js +0 -1
  537. package/dist/vega/p-5319da71.entry.js +0 -1
  538. package/dist/vega/p-53c76d9d.entry.js +0 -1
  539. package/dist/vega/p-5de1acdb.js +0 -1
  540. package/dist/vega/p-5df9047c.js +0 -1
  541. package/dist/vega/p-683cfe24.js +0 -1
  542. package/dist/vega/p-802bf369.js +0 -1
  543. package/dist/vega/p-82279b03.entry.js +0 -1
  544. package/dist/vega/p-8509c140.entry.js +0 -1
  545. package/dist/vega/p-8aa07ed0.js +0 -1
  546. package/dist/vega/p-970115d6.js +0 -1
  547. package/dist/vega/p-9b1d718c.entry.js +0 -1
  548. package/dist/vega/p-c78e8081.entry.js +0 -1
  549. package/dist/vega/p-ca9852bb.js +0 -1
  550. package/dist/vega/p-dee38163.entry.js +0 -1
  551. package/dist/vega/p-e5502873.entry.js +0 -1
  552. package/dist/vega/p-ea54ce0a.js +0 -3
  553. package/dist/vega/p-ee3155bd.js +0 -1
  554. package/dist/vega/p-eee01ba7.entry.js +0 -1
  555. package/dist/vega/p-f4a01959.js +0 -1
  556. package/dist/vega/p-f5aefb2f.entry.js +0 -1
@@ -20,10 +20,11 @@ import { MapToComponentField, VegaSlimmer } from 'vega-slimmer/core';
20
20
  import { VegaTableEditableFieldTypes, } from '../../interface';
21
21
  import { getValueByPath } from '../../../../utils/object';
22
22
  import { LogUtility } from '../../../../utils/log';
23
+ import { ColumnRenderInputModel } from '../controllers/dto/column-render-input-model';
23
24
  export class VegaTableCellRenderer extends VegaSlimmer {
24
25
  constructor() {
25
26
  super(...arguments);
26
- this.renderTableCellContent = (column, record, index) => {
27
+ this.renderTableCellContent = (column, record, index, isSpanning) => {
27
28
  var _a, _b;
28
29
  const value = getValueByPath(record, column.prop);
29
30
  const rowKey = this.vegaTableDataSourceController.getRecordKey(record);
@@ -32,13 +33,14 @@ export class VegaTableCellRenderer extends VegaSlimmer {
32
33
  .find((item) => this.vegaTableDataSourceController.getRecordKey(item) === rowKey);
33
34
  const editing = this.vegaTableEditableController.isEditing(rowKey);
34
35
  const rowForm = this.vegaTableEditableController.getRowFormRefMap().get(rowKey);
35
- if (editing && rowForm && column.renderFormItem) {
36
+ // REQ-007: spanning cells are forced read-only — never render editable form items.
37
+ if (!isSpanning && editing && rowForm && column.renderFormItem) {
36
38
  return column.renderFormItem(h, column.prop ? value : rowKey, record, index, {
37
39
  rowForm,
38
40
  isNewRow,
39
41
  });
40
42
  }
41
- if (editing && rowForm && column.editable) {
43
+ if (!isSpanning && editing && rowForm && column.editable) {
42
44
  const formItemProps = (_a = column.formItemProps) === null || _a === void 0 ? void 0 : _a.call(column, rowForm, {
43
45
  record,
44
46
  index,
@@ -86,30 +88,52 @@ export class VegaTableCellRenderer extends VegaSlimmer {
86
88
  new RegExp(VegaTableEditableFieldTypes.join('|'), 'i').test(tagName));
87
89
  };
88
90
  }
89
- render(renderInput, record, index) {
90
- const column = this.columns.find((column) => column.key === renderInput.key ||
91
- column.prop === renderInput.key ||
92
- column.label === renderInput.key);
91
+ render(renderInput, record, index, colSpanResult) {
92
+ var _a;
93
+ const column = this.vegaTableBodyColSpanController.findColumn(renderInput);
94
+ /* istanbul ignore next -- defensive: colSpanResult is always provided by the caller */
95
+ const htmlColspan = (_a = colSpanResult === null || colSpanResult === void 0 ? void 0 : colSpanResult.htmlColspan) !== null && _a !== void 0 ? _a : 1;
96
+ const isSpanning = htmlColspan > 1;
97
+ // When a cell spans, merge pinned-boundary flags from all consumed leaves so the spanning
98
+ // cell inherits boundary indicators (e.g. right-divider for pinned-end).
99
+ const effectiveRenderInput = isSpanning && colSpanResult
100
+ ? this.getMergedRenderInputForSpan(renderInput, colSpanResult)
101
+ : renderInput;
93
102
  if (column) {
94
103
  const rowKey = this.vegaTableDataSourceController.getRecordKey(record);
95
104
  const columnKey = `${rowKey}_${column.key || column.prop}`;
96
- return (h("vega-table-cell", { key: columnKey, textAlign: column.align, breakpoint: column.breakpoint, overflow: column.overflow, ref: (ref) => {
97
- this.vegaTableRenderInputController.addCellRenderInputMap(ref, renderInput);
98
- } }, this.renderTableCellContent(column, record, index)));
105
+ const ellipsisOptions = column.ellipsisOptions;
106
+ const ellipsisShowTooltip = !!(ellipsisOptions === null || ellipsisOptions === void 0 ? void 0 : ellipsisOptions.showTooltip);
107
+ return (h("vega-table-cell", { key: columnKey, textAlign: column.align, breakpoint: column.breakpoint, overflow: column.overflow, ellipsisShowTooltip: ellipsisShowTooltip, colSpan: isSpanning ? htmlColspan : undefined, ref: (ref) => {
108
+ this.vegaTableRenderInputController.addCellRenderInputMap(ref, effectiveRenderInput);
109
+ } }, this.renderTableCellContent(column, record, index, isSpanning)));
99
110
  }
100
111
  else {
101
112
  return (h("vega-table-cell", { key: renderInput.key, ref: (ref) => {
102
- this.vegaTableRenderInputController.addCellRenderInputMap(ref, renderInput);
113
+ this.vegaTableRenderInputController.addCellRenderInputMap(ref, effectiveRenderInput);
103
114
  } }));
104
115
  }
105
116
  }
117
+ /**
118
+ * Build a render input with merged boundary flags from all leaves consumed by a body colSpan.
119
+ *
120
+ * @param {ColumnRenderInputModel} baseInput - The starting leaf's render input.
121
+ * @param {BodyColSpanResult} colSpanResult - The resolved span result (provides skipCount).
122
+ * @returns {ColumnRenderInputModel} A render input with OR-merged boundary flags.
123
+ */
124
+ getMergedRenderInputForSpan(baseInput, colSpanResult) {
125
+ const allLeaves = this.vegaTableRenderInputController.getLeafRenderInputs();
126
+ const startIndex = allLeaves.indexOf(baseInput);
127
+ /* istanbul ignore next -- defensive: baseInput should always be in the leaves array */
128
+ if (startIndex < 0)
129
+ return baseInput;
130
+ const spannedLeaves = allLeaves.slice(startIndex + 1, startIndex + 1 + colSpanResult.skipCount);
131
+ return ColumnRenderInputModel.withMergedBoundaries(baseInput, spannedLeaves);
132
+ }
106
133
  }
107
134
  __decorate([
108
135
  MapToComponentField()
109
136
  ], VegaTableCellRenderer.prototype, "rowKey", void 0);
110
- __decorate([
111
- MapToComponentField()
112
- ], VegaTableCellRenderer.prototype, "columns", void 0);
113
137
  __decorate([
114
138
  MapToComponentField()
115
139
  ], VegaTableCellRenderer.prototype, "vegaTableDataSourceController", void 0);
@@ -119,3 +143,6 @@ __decorate([
119
143
  __decorate([
120
144
  MapToComponentField()
121
145
  ], VegaTableCellRenderer.prototype, "vegaTableRenderInputController", void 0);
146
+ __decorate([
147
+ MapToComponentField()
148
+ ], VegaTableCellRenderer.prototype, "vegaTableBodyColSpanController", void 0);
@@ -28,6 +28,12 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
28
28
  },
29
29
  });
30
30
  this.previouslyStyledCells = new Set();
31
+ // Each set tracks cells where exactly one dynamic class was added — cleared per class so
32
+ // that static classes from render() on the same cell are never inadvertently stripped
33
+ // (e.g. a cell that is both isRightStartPinned and the last-visible body cell).
34
+ this.dynamicRightDividerCells = new Set();
35
+ this.dynamicLeftDividerCells = new Set();
36
+ this.dynamicHideRightBorderCells = new Set();
31
37
  this.clearPinnedPositionsTaskQueue = new SynchronizeTaskQueue(1);
32
38
  }
33
39
  componentDidLoad() {
@@ -36,7 +42,17 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
36
42
  async componentDidRender() {
37
43
  await this.clearPinnedPositionsTaskQueue.runTask();
38
44
  this.updateTableRowPinnedPosition();
39
- this.updateTableCellPinnedPosition();
45
+ const unreadyCells = this.updateTableCellPinnedPosition();
46
+ if (unreadyCells.length > 0) {
47
+ // In dev builds, Stencil's HMR flag forces loadModule() to always use a
48
+ // dynamic import(), so a brand-new cell's first render is deferred. We wait
49
+ // for each unready cell via componentOnReady() — which resolves exactly when
50
+ // the cell's shadow <td> is first rendered — then apply sticky positioning.
51
+ // In production (hotModuleReplacement=false) loadModule() is synchronous, so
52
+ // cells are always ready by componentDidRender and this branch is never reached.
53
+ await Promise.all(unreadyCells.map((cell) => cell.componentOnReady()));
54
+ this.updateTableCellPinnedPosition();
55
+ }
40
56
  }
41
57
  watchColumnStructureModel() {
42
58
  void this.clearPinnedPositionsTaskQueue.enqueue({
@@ -48,24 +64,165 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
48
64
  updateTableCellPinnedPosition() {
49
65
  if (!this.columnStructureModel.hasLeftPinnedColumn() &&
50
66
  !this.columnStructureModel.hasRightPinnedColumn())
51
- return;
67
+ return [];
68
+ // Clear stale dynamic boundary classes before re-evaluating breakpoint visibility.
69
+ // This ensures the classes are removed when the viewport grows back (e.g. column B
70
+ // becomes visible again) and not only when the column structure changes.
71
+ // Each set only removes the single class it tracks, preserving any other static
72
+ // border classes that render() placed on the same cell (VD-9565).
73
+ this.dynamicRightDividerCells.forEach((cell) => cell.classList.remove('right-divider'));
74
+ this.dynamicRightDividerCells.clear();
75
+ this.dynamicLeftDividerCells.forEach((cell) => cell.classList.remove('left-divider'));
76
+ this.dynamicLeftDividerCells.clear();
77
+ this.dynamicHideRightBorderCells.forEach((cell) => cell.classList.remove('hide-right-border'));
78
+ this.dynamicHideRightBorderCells.clear();
52
79
  // if not have head row, it means no pinned, so no need to update
53
80
  const row = this.host.shadowRoot.querySelector('vega-table-head-row');
54
81
  // to avoid window resize before table rendered.
55
82
  // @see{module:resize-pinned-position-by-edit-row}
56
83
  /* istanbul ignore next */
57
84
  if (!row)
58
- return;
85
+ return [];
59
86
  const headCellRenderInputMap = this.vegaTableRenderInputController.getHeadCellRenderInputMap();
60
87
  const pinnedColumnBodyCellRenderInputMap = this.vegaTableRenderInputController.getPinnedColumnBodyCellRenderInputMap();
61
88
  const [prevShadowThWidth, nextShadowThWidth] = this.getRowShadowThWidths();
62
89
  const leafWidths = this.getLeafWidths();
90
+ // Track the last visible left-pinned head cell and first visible right-pinned head cell
91
+ // to dynamically apply boundary classes when breakpoint-hidden columns shift the boundary.
92
+ let lastVisibleLeftPinnedHeadCell = null;
93
+ let firstVisibleRightPinnedHeadCell = null;
94
+ let lastVisibleRightPinnedHeadCell = null;
63
95
  headCellRenderInputMap.forEach((renderInput, headCell) => {
96
+ var _a;
97
+ /* istanbul ignore next -- defensive null-guard: jsdom always provides shadowRoot */
98
+ const shadowCell = (_a = headCell.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('th, td');
99
+ const isVisible = shadowCell ? shadowCell.getBoundingClientRect().width > 0 : false;
64
100
  this.updateCellPinnedPosition(renderInput, headCell, prevShadowThWidth, leafWidths, nextShadowThWidth);
101
+ if (isVisible && renderInput.pinned === 'left') {
102
+ lastVisibleLeftPinnedHeadCell = shadowCell;
103
+ }
104
+ if (isVisible && renderInput.pinned === 'right' && !firstVisibleRightPinnedHeadCell) {
105
+ firstVisibleRightPinnedHeadCell = shadowCell;
106
+ }
107
+ if (isVisible && renderInput.pinned === 'right') {
108
+ lastVisibleRightPinnedHeadCell = shadowCell;
109
+ }
65
110
  });
66
- pinnedColumnBodyCellRenderInputMap.forEach((renderInput, headCell) => {
67
- this.updateCellPinnedPosition(renderInput, headCell, prevShadowThWidth, leafWidths, nextShadowThWidth);
111
+ // Remove stale entries (disconnected cells) left over from prior renders (e.g. after drag reorder).
112
+ pinnedColumnBodyCellRenderInputMap.forEach((_, bodyCell) => {
113
+ /* istanbul ignore next -- defensive cleanup for disconnected cells; jsdom always keeps cells connected */
114
+ if (!(bodyCell === null || bodyCell === void 0 ? void 0 : bodyCell.isConnected)) {
115
+ pinnedColumnBodyCellRenderInputMap.delete(bodyCell);
116
+ }
117
+ });
118
+ // Track last visible left-pinned body cells per row for boundary class propagation.
119
+ const lastVisibleLeftPinnedBodyCells = new Map();
120
+ const firstVisibleRightPinnedBodyCells = new Map();
121
+ const lastVisibleRightPinnedBodyCells = new Map();
122
+ // Collect body cells whose shadow DOM is not yet ready (newly created cells).
123
+ const unreadyCells = [];
124
+ pinnedColumnBodyCellRenderInputMap.forEach((renderInput, bodyCell) => {
125
+ var _a;
126
+ /* istanbul ignore next -- defensive null-guard: jsdom always provides shadowRoot */
127
+ const shadowCell = (_a = bodyCell.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('th, td');
128
+ const isVisible = shadowCell ? shadowCell.getBoundingClientRect().width > 0 : false;
129
+ // Shadow DOM not ready yet — cell was just created (e.g. colspan collapsed after drag).
130
+ if (['left', 'right'].includes(renderInput.pinned) && !shadowCell) {
131
+ unreadyCells.push(bodyCell);
132
+ return;
133
+ }
134
+ this.updateCellPinnedPosition(renderInput, bodyCell, prevShadowThWidth, leafWidths, nextShadowThWidth);
135
+ if (isVisible && renderInput.pinned === 'left') {
136
+ // Use the parent row as the grouping key for per-row tracking
137
+ const parentRow = bodyCell.closest('vega-table-row');
138
+ if (parentRow) {
139
+ lastVisibleLeftPinnedBodyCells.set(parentRow, shadowCell);
140
+ }
141
+ }
142
+ if (isVisible && renderInput.pinned === 'right') {
143
+ const parentRow = bodyCell.closest('vega-table-row');
144
+ if (parentRow && !firstVisibleRightPinnedBodyCells.has(parentRow)) {
145
+ firstVisibleRightPinnedBodyCells.set(parentRow, shadowCell);
146
+ }
147
+ if (parentRow) {
148
+ lastVisibleRightPinnedBodyCells.set(parentRow, shadowCell);
149
+ }
150
+ }
68
151
  });
152
+ // Apply boundary divider to the last visible left-pinned cell when the static
153
+ // isLeftEndPinned column is hidden by breakpoint.
154
+ if (lastVisibleLeftPinnedHeadCell &&
155
+ !lastVisibleLeftPinnedHeadCell.classList.contains('right-divider')) {
156
+ // Check if the static boundary column is hidden — if leafWidths shows 0 for the
157
+ // isLeftEndPinned column, the boundary has shifted.
158
+ const leafRenderInputs = this.vegaTableRenderInputController.getLeafRenderInputs();
159
+ const staticBoundaryLeaf = leafRenderInputs.find((leaf) => leaf.isLeftEndPinned);
160
+ if (staticBoundaryLeaf && leafWidths[staticBoundaryLeaf.columnIndex] === 0) {
161
+ lastVisibleLeftPinnedHeadCell.classList.add('right-divider');
162
+ this.dynamicRightDividerCells.add(lastVisibleLeftPinnedHeadCell);
163
+ lastVisibleLeftPinnedBodyCells.forEach((cell) => {
164
+ // Only track cells that don't already hold `right-divider` from their
165
+ // static render (effectiveRenderInput.isLeftEndPinned). If we add a
166
+ // statically-classed cell here, the per-class clear on the next resize
167
+ // would erroneously remove the static class (VD-9540).
168
+ if (!cell.classList.contains('right-divider')) {
169
+ cell.classList.add('right-divider');
170
+ this.dynamicRightDividerCells.add(cell);
171
+ }
172
+ });
173
+ }
174
+ }
175
+ if (firstVisibleRightPinnedHeadCell &&
176
+ !firstVisibleRightPinnedHeadCell.classList.contains('left-divider')) {
177
+ const leafRenderInputs = this.vegaTableRenderInputController.getLeafRenderInputs();
178
+ const staticBoundaryLeaf = leafRenderInputs.find((leaf) => leaf.isRightStartPinned);
179
+ if (staticBoundaryLeaf && leafWidths[staticBoundaryLeaf.columnIndex] === 0) {
180
+ firstVisibleRightPinnedHeadCell.classList.add('left-divider');
181
+ this.dynamicLeftDividerCells.add(firstVisibleRightPinnedHeadCell);
182
+ firstVisibleRightPinnedBodyCells.forEach((cell) => {
183
+ // Only track cells that don't already hold `left-divider` from their
184
+ // static render (effectiveRenderInput.isRightStartPinned). If we add a
185
+ // statically-classed cell here, the per-class clear on the next resize
186
+ // would erroneously remove the static class (VD-9540).
187
+ if (!cell.classList.contains('left-divider')) {
188
+ cell.classList.add('left-divider');
189
+ this.dynamicLeftDividerCells.add(cell);
190
+ }
191
+ });
192
+ }
193
+ }
194
+ // Apply hide-right-border to the last visible right-pinned cell when the structural
195
+ // right-most column is hidden by breakpoint. Without this, the new right-most visible
196
+ // pinned column keeps a right border while the head cell suppresses it (head cells use
197
+ // isViewEnd), leaving an extra vertical border at the table's right edge (VD-9565).
198
+ if (lastVisibleRightPinnedHeadCell &&
199
+ !lastVisibleRightPinnedHeadCell.classList.contains('hide-right-border')) {
200
+ const leafRenderInputs = this.vegaTableRenderInputController.getLeafRenderInputs();
201
+ // The structural right-most column is the last right-pinned leaf. Leaf render
202
+ // inputs do not carry `isViewEnd` (unlike head render inputs), so identify the
203
+ // boundary via `pinned` order instead.
204
+ const rightPinnedLeaves = leafRenderInputs.filter((leaf) => leaf.pinned === 'right');
205
+ const structuralEndLeaf = rightPinnedLeaves[rightPinnedLeaves.length - 1];
206
+ if (structuralEndLeaf && leafWidths[structuralEndLeaf.columnIndex] === 0) {
207
+ lastVisibleRightPinnedHeadCell.classList.add('hide-right-border');
208
+ this.dynamicHideRightBorderCells.add(lastVisibleRightPinnedHeadCell);
209
+ lastVisibleRightPinnedBodyCells.forEach((cell) => {
210
+ // Only track cells that don't already hold `hide-right-border` from their
211
+ // static render (isViewEnd/isNoPinnedEnd). Adding a statically-classed cell
212
+ // here would let the per-class clear erroneously strip the static class on
213
+ // the next resize (mirrors the VD-9540 divider guard).
214
+ if (!cell.classList.contains('hide-right-border')) {
215
+ cell.classList.add('hide-right-border');
216
+ this.dynamicHideRightBorderCells.add(cell);
217
+ }
218
+ });
219
+ }
220
+ }
221
+ // Sync colspan on pinned body cells that span breakpoint-hidden columns.
222
+ // Chrome does not honour visibility:collapse / display:none on <col> for table layout,
223
+ // so we directly adjust the shadow <td> colspan attribute to exclude hidden columns (VD-9540).
224
+ this.syncColspanForHiddenColumns(leafWidths, pinnedColumnBodyCellRenderInputMap);
225
+ return unreadyCells;
69
226
  }
70
227
  getRowShadowThWidths() {
71
228
  const row = this.host.shadowRoot.querySelector('vega-table-head-row');
@@ -102,6 +259,33 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
102
259
  }
103
260
  });
104
261
  }
262
+ syncColspanForHiddenColumns(leafWidths, pinnedColumnBodyCellRenderInputMap) {
263
+ // NOTE: renderInput.colSpan is null for flat (non-group) tables — it only holds a value for
264
+ // group-column subtree spans. We read the original colspan from the component prop (bodyCell.colSpan)
265
+ // which is always the rendered value, unaffected by our shadow-DOM attribute writes.
266
+ //
267
+ // Skip when ALL leaf widths are 0 — that means the table is running in jsdom / an off-screen
268
+ // context where getBoundingClientRect() always returns 0. Adjusting in that state would
269
+ // incorrectly reduce every colspan to 1 (no visible columns = Math.max(1,0)=1).
270
+ if (leafWidths.every((w) => w === 0))
271
+ return;
272
+ pinnedColumnBodyCellRenderInputMap.forEach((renderInput, bodyCell) => {
273
+ var _a;
274
+ const originalColspan = bodyCell.colSpan || 1;
275
+ if (originalColspan <= 1)
276
+ return;
277
+ /* istanbul ignore next -- defensive null-guard: jsdom always provides shadowRoot */
278
+ const shadowTd = (_a = bodyCell.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector('td');
279
+ /* istanbul ignore next -- shadowTd is always present in jsdom */
280
+ if (!shadowTd)
281
+ return;
282
+ // Count how many columns in the span are visible (width > 0) — hidden breakpoint
283
+ // columns have leafWidth === 0 because their <th> has display:none.
284
+ const spanned = leafWidths.slice(renderInput.columnIndex, renderInput.columnIndex + originalColspan);
285
+ const effectiveColspan = Math.max(1, spanned.filter((w) => w > 0).length);
286
+ shadowTd.setAttribute('colspan', String(effectiveColspan));
287
+ });
288
+ }
105
289
  updateCellPinnedPosition(renderInput, headCell, prevShadowThWidth, leafWidths, nextShadowThWidth) {
106
290
  if (['left', 'right'].includes(renderInput.pinned)) {
107
291
  const shadowCell = headCell.shadowRoot.querySelector('th, td');
@@ -113,10 +297,17 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
113
297
  this.updatePinnedPosition(shadowCell, 'left', position);
114
298
  }
115
299
  if (renderInput.pinned === 'right') {
116
- const colSpan = isNonNullable(renderInput.colSpan) ? renderInput.colSpan : 1;
300
+ // renderInput.colSpan is null for flat (non-group) tables it only carries a value
301
+ // for group-column subtree spans (multi-level headers). For body cells with an HTML
302
+ // colspan (e.g. colSpan:2 spanning the last two right-pinned columns), we read the
303
+ // actual span from the host component prop so the right-edge offset is calculated
304
+ // over the full spanned width rather than just one column (VD-9565).
305
+ const colSpan = isNonNullable(renderInput.colSpan)
306
+ ? renderInput.colSpan
307
+ : headCell.colSpan || 1;
117
308
  const position = nextShadowThWidth +
118
309
  leafWidths
119
- .slice(renderInput.columnIndex + (colSpan - 1) + 1)
310
+ .slice(renderInput.columnIndex + colSpan)
120
311
  .reduce((count, colWidth) => count + colWidth, 0);
121
312
  this.updatePinnedPosition(shadowCell, 'right', position);
122
313
  }
@@ -171,6 +362,15 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
171
362
  cell.style.width = '';
172
363
  }
173
364
  });
365
+ // Remove boundary classes only from cells where they were dynamically added
366
+ // (breakpoint-shifted boundaries). Static boundary classes from renderInput are
367
+ // re-applied by the cell's own render cycle.
368
+ this.dynamicRightDividerCells.forEach((cell) => cell.classList.remove('right-divider'));
369
+ this.dynamicRightDividerCells.clear();
370
+ this.dynamicLeftDividerCells.forEach((cell) => cell.classList.remove('left-divider'));
371
+ this.dynamicLeftDividerCells.clear();
372
+ this.dynamicHideRightBorderCells.forEach((cell) => cell.classList.remove('hide-right-border'));
373
+ this.dynamicHideRightBorderCells.clear();
174
374
  this.previouslyStyledCells.clear();
175
375
  }
176
376
  updatePinnedPosition(cell, type, position) {
@@ -15,6 +15,18 @@ export class VegaTableRowRenderer extends VegaSlimmer {
15
15
  this.renderTableRowComponent = (rowProps) => {
16
16
  const { rowKey, index, record, isVisibleInCurrentPage } = rowProps;
17
17
  const renderInputs = this.vegaTableRenderInputController.getLeafRenderInputs();
18
+ // Resolve every leaf's colspan in one pass. Entries are index-aligned with renderInputs;
19
+ // a `null` entry marks a leaf consumed by a preceding spanning cell (skip it).
20
+ const colSpanResults = this.vegaTableBodyColSpanController.resolveRow(record, index, renderInputs);
21
+ const cells = [];
22
+ renderInputs.forEach((renderInput, leafIndex) => {
23
+ const colSpanResult = colSpanResults[leafIndex];
24
+ if (!colSpanResult) {
25
+ // Consumed by a preceding spanning cell — nothing to render for this leaf.
26
+ return;
27
+ }
28
+ cells.push(this.vegaTableCellRenderer.render(renderInput, record, index, colSpanResult));
29
+ });
18
30
  return (h("vega-table-row", { class: {
19
31
  'v-hidden': !isVisibleInCurrentPage,
20
32
  }, key: `vega-table-row-${rowKey}`, rowKey: rowKey,
@@ -23,9 +35,7 @@ export class VegaTableRowRenderer extends VegaSlimmer {
23
35
  DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, () => {
24
36
  this.rowClickEventEmitter.emit({ record: record, index: index });
25
37
  });
26
- }, striped: this.striped && index % 2 === 1, rowDivider: this.rowDivider && !rowProps.isLastRow }, renderInputs.map((renderInput) => {
27
- return this.vegaTableCellRenderer.render(renderInput, record, index);
28
- })));
38
+ }, striped: this.striped && index % 2 === 1, rowDivider: this.rowDivider && !rowProps.isLastRow }, cells));
29
39
  };
30
40
  }
31
41
  render(rowProps, editable) {
@@ -42,6 +52,9 @@ __decorate([
42
52
  __decorate([
43
53
  MapToComponentField()
44
54
  ], VegaTableRowRenderer.prototype, "vegaTableCellRenderer", void 0);
55
+ __decorate([
56
+ MapToComponentField()
57
+ ], VegaTableRowRenderer.prototype, "vegaTableBodyColSpanController", void 0);
45
58
  __decorate([
46
59
  MapToComponentField()
47
60
  ], VegaTableRowRenderer.prototype, "striped", void 0);
@@ -30,6 +30,14 @@ export class VegaTableCell {
30
30
  this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer();
31
31
  this.vegaTableRenderInputConsumerSlimmer = new VegaTableChildRenderInputConsumerSlimmer(VegaInternalColumnBodyCellRenderInputRIC);
32
32
  this.currentBreakpoint = getCurrentBreakpoint();
33
+ this.ellipsisTooltipText = '';
34
+ this.ellipsisTooltipTrigger = 'none';
35
+ /**
36
+ * Whether to show a Vega tooltip (instead of the native title attribute) for truncated ellipsis cell content.
37
+ *
38
+ * @vegaVersion 2.94.0
39
+ */
40
+ this.ellipsisShowTooltip = false;
33
41
  this.getCellOverflowClass = () => {
34
42
  switch (this.overflow) {
35
43
  case 'ellipsis':
@@ -39,8 +47,13 @@ export class VegaTableCell {
39
47
  }
40
48
  };
41
49
  }
50
+ componentDidLoad() {
51
+ if (this.overflow === 'ellipsis' && this.ellipsisShowTooltip) {
52
+ requestAnimationFrame(() => this.updateEllipsisState());
53
+ }
54
+ }
42
55
  render() {
43
- var _a, _b, _c;
56
+ var _a, _b, _c, _d, _e, _f;
44
57
  const responsiveClass = generateResponsiveClass(this.breakpoint, 'v-table-cell');
45
58
  const columnAlignClass = generateTextAlignClass(this.textAlign);
46
59
  const overflowClass = this.getCellOverflowClass();
@@ -54,7 +67,7 @@ export class VegaTableCell {
54
67
  if ((_b = this.renderInput) === null || _b === void 0 ? void 0 : _b.isLeftEndPinned) {
55
68
  columnClasses.push('right-divider');
56
69
  }
57
- if ((_c = this.renderInput) === null || _c === void 0 ? void 0 : _c.isNoPinnedEnd) {
70
+ if (((_c = this.renderInput) === null || _c === void 0 ? void 0 : _c.isNoPinnedEnd) || ((_d = this.renderInput) === null || _d === void 0 ? void 0 : _d.isViewEnd)) {
58
71
  columnClasses.push('hide-right-border');
59
72
  }
60
73
  return sanitizeVegaComponent(h(Host, { class: arrayToClassString([
@@ -65,22 +78,68 @@ export class VegaTableCell {
65
78
  this.checked && 'checked',
66
79
  this.striped && 'striped',
67
80
  this.expanded && 'expanded',
68
- ]) },
69
- h("td", { class: arrayToClassString(columnClasses), part: "cell",
81
+ ]), "aria-colspan": ((_e = this.colSpan) !== null && _e !== void 0 ? _e : 0) > 1 ? String(this.colSpan) : null },
82
+ h("td", { class: arrayToClassString(columnClasses), part: "cell", colSpan: ((_f = this.colSpan) !== null && _f !== void 0 ? _f : 0) > 1 ? this.colSpan : null,
70
83
  /* eslint-disable-next-line react/jsx-no-bind */
71
84
  onMouseEnter: this.onMouseEnter.bind(this),
72
85
  /* eslint-disable-next-line react/jsx-no-bind */
73
- onMouseLeave: this.onMouseLeave.bind(this), style: { width: this.width } },
74
- h("div", { class: overflowClass },
75
- h("slot", null)))), this.host);
86
+ onMouseLeave: this.onMouseLeave.bind(this), style: { width: this.width } }, this.overflow === 'ellipsis' && this.ellipsisShowTooltip ? (h("vega-tooltip", { text: this.ellipsisTooltipText, trigger: this.ellipsisTooltipTrigger, maxWidth: 300, style: { display: 'block', width: '100%', minWidth: '0' } },
87
+ h("div", { class: overflowClass, ref: (ref) => {
88
+ this.overflowContentRef = ref;
89
+ } },
90
+ h("slot", { ref: (ref) => {
91
+ this.slotRef = ref;
92
+ } })))) : (h("div", { class: overflowClass, ref: (ref) => {
93
+ this.overflowContentRef = ref;
94
+ } },
95
+ h("slot", { ref: (ref) => {
96
+ this.slotRef = ref;
97
+ } }))))), this.host);
76
98
  }
77
99
  onMouseEnter() {
78
- const row = this.host.parentElement;
79
- row.querySelectorAll('vega-table-cell').forEach((cell) => cell.classList.add('hovered'));
100
+ this.updateEllipsisState();
101
+ this.getRowCells().forEach((cell) => cell.classList.add('hovered'));
80
102
  }
81
103
  onMouseLeave() {
104
+ this.getRowCells().forEach((cell) => cell.classList.remove('hovered'));
105
+ }
106
+ getRowCells() {
82
107
  const row = this.host.parentElement;
83
- row.querySelectorAll('vega-table-cell').forEach((cell) => cell.classList.remove('hovered'));
108
+ if (!row) {
109
+ return [];
110
+ }
111
+ return Array.from(row.querySelectorAll('vega-table-cell'));
112
+ }
113
+ updateEllipsisState() {
114
+ if (this.overflow !== 'ellipsis' || !this.overflowContentRef) {
115
+ return;
116
+ }
117
+ const isTruncated = this.overflowContentRef.scrollWidth > this.overflowContentRef.clientWidth;
118
+ const text = this.getCellText();
119
+ if (this.ellipsisShowTooltip) {
120
+ this.overflowContentRef.removeAttribute('title');
121
+ this.ellipsisTooltipText = text;
122
+ this.ellipsisTooltipTrigger = isTruncated ? 'hover' : 'none';
123
+ }
124
+ else {
125
+ if (isTruncated && text) {
126
+ this.overflowContentRef.setAttribute('title', text);
127
+ }
128
+ else {
129
+ this.overflowContentRef.removeAttribute('title');
130
+ }
131
+ }
132
+ }
133
+ getCellText() {
134
+ var _a, _b, _c;
135
+ const assignedNodes = this.slotRef && typeof this.slotRef.assignedNodes === 'function'
136
+ ? this.slotRef.assignedNodes({ flatten: true })
137
+ : [];
138
+ const slotText = assignedNodes
139
+ .map((node) => { var _a; return ((_a = node.textContent) === null || _a === void 0 ? void 0 : _a.trim()) || ''; })
140
+ .filter((text) => text)
141
+ .join(' ');
142
+ return (slotText || ((_b = (_a = this.overflowContentRef) === null || _a === void 0 ? void 0 : _a.textContent) === null || _b === void 0 ? void 0 : _b.trim()) || ((_c = this.host.textContent) === null || _c === void 0 ? void 0 : _c.trim()) || '');
84
143
  }
85
144
  static get is() { return "vega-table-cell"; }
86
145
  static get encapsulation() { return "shadow"; }
@@ -175,6 +234,47 @@ export class VegaTableCell {
175
234
  },
176
235
  "attribute": "width",
177
236
  "reflect": false
237
+ },
238
+ "colSpan": {
239
+ "type": "number",
240
+ "mutable": false,
241
+ "complexType": {
242
+ "original": "number",
243
+ "resolved": "number",
244
+ "references": {}
245
+ },
246
+ "required": false,
247
+ "optional": true,
248
+ "docs": {
249
+ "tags": [{
250
+ "name": "vegaVersion",
251
+ "text": "2.93.0"
252
+ }],
253
+ "text": "Number of columns this cell should span horizontally.\nValues of `undefined`, `null`, and `1` are treated as no spanning.\nWhen the effective span is `>= 2`, a `colspan` attribute is set on the inner `<td>`\nand `aria-colspan` is exposed on the host element for assistive technology."
254
+ },
255
+ "attribute": "col-span",
256
+ "reflect": false
257
+ },
258
+ "ellipsisShowTooltip": {
259
+ "type": "boolean",
260
+ "mutable": false,
261
+ "complexType": {
262
+ "original": "boolean",
263
+ "resolved": "boolean",
264
+ "references": {}
265
+ },
266
+ "required": false,
267
+ "optional": false,
268
+ "docs": {
269
+ "tags": [{
270
+ "name": "vegaVersion",
271
+ "text": "2.94.0"
272
+ }],
273
+ "text": "Whether to show a Vega tooltip (instead of the native title attribute) for truncated ellipsis cell content."
274
+ },
275
+ "attribute": "ellipsis-show-tooltip",
276
+ "reflect": false,
277
+ "defaultValue": "false"
178
278
  }
179
279
  }; }
180
280
  static get states() { return {
@@ -186,7 +286,9 @@ export class VegaTableCell {
186
286
  "checked": {},
187
287
  "striped": {},
188
288
  "expanded": {},
189
- "renderInput": {}
289
+ "renderInput": {},
290
+ "ellipsisTooltipText": {},
291
+ "ellipsisTooltipTrigger": {}
190
292
  }; }
191
293
  static get elementRef() { return "host"; }
192
294
  }
@@ -65,13 +65,22 @@ export class VegaTableExpandRowColSpanController extends VegaSlimmer {
65
65
  const cells = isTemplateRenderMode
66
66
  ? table.querySelectorAll('vega-table-row:nth-of-type(1) vega-table-cell')
67
67
  : table.shadowRoot.querySelectorAll('vega-table-row:nth-of-type(1) vega-table-cell');
68
- return Array.from(cells).filter((cell) => {
68
+ return Array.from(cells)
69
+ .filter((cell) => {
69
70
  if (!cell.breakpoint)
70
71
  return true;
71
72
  if (currentBreakpoint === 'default')
72
73
  return false;
73
74
  return Breakpoints[currentBreakpoint] >= Breakpoints[cell.breakpoint];
74
- }).length;
75
+ })
76
+ .reduce((total, cell) => {
77
+ var _a;
78
+ // A cell with `colSpan >= 2` is a single element that occupies multiple physical
79
+ // columns, so add its span rather than 1. This keeps the expand-row colspan aligned
80
+ // with the full table width when body cells merge columns.
81
+ const span = (_a = cell.colSpan) !== null && _a !== void 0 ? _a : 1;
82
+ return total + (span > 1 ? span : 1);
83
+ }, 0);
75
84
  }
76
85
  }
77
86
  __decorate([
@@ -11,11 +11,12 @@ import { generateResponsiveClass } from '../../../utils';
11
11
  import { arrayToClassString } from '../../../../../utils/ui';
12
12
  export class VegaTableFootCellRenderer extends VegaSlimmer {
13
13
  render() {
14
+ var _a;
14
15
  return (h("td", { class: {
15
16
  'vega-table-cell': true,
16
17
  'break-word': !FeatureFlag.isEnabled('VEGA_TABLE.ENABLE_NEW_CELL_BREAK_WORDS_STYLE'),
17
18
  [generateResponsiveClass(this.breakpoint, 'v-table-cell')]: true,
18
- } },
19
+ }, colSpan: ((_a = this.colSpan) !== null && _a !== void 0 ? _a : 0) > 1 ? this.colSpan : null },
19
20
  h("div", { class: arrayToClassString(['vega-table-column', this.textAlign]) },
20
21
  h("span", { class: "vega-table-column-label" },
21
22
  h("slot", null)))));
@@ -30,3 +31,6 @@ __decorate([
30
31
  __decorate([
31
32
  MapToComponentField()
32
33
  ], VegaTableFootCellRenderer.prototype, "textAlign", void 0);
34
+ __decorate([
35
+ MapToComponentField()
36
+ ], VegaTableFootCellRenderer.prototype, "colSpan", void 0);