@heartlandone/vega 2.84.0 → 2.86.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 (355) hide show
  1. package/dist/cjs/{app-globals-ea063074.js → app-globals-3080f55a.js} +5 -5
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-58bbc5fc.js → child-nodes-event-prevent-slimmer-f3979a03.js} +1 -1
  3. package/dist/cjs/{code-block-6da521e6.js → code-block-c6c70464.js} +6 -0
  4. package/dist/cjs/{component-value-history-controller-slimmer.abstract-f3f35f94.js → component-value-history-controller-slimmer.abstract-a523b747.js} +2 -2
  5. package/dist/cjs/{content-state-89fafb3b.js → content-state-efd3b1a7.js} +1 -1
  6. package/dist/cjs/{event-emit-slimmer-ecca412d.js → event-emit-slimmer-80e1c8ca.js} +1 -1
  7. package/dist/cjs/{image-annotation-action-a6e1e9ed.js → image-annotation-action-93bace08.js} +3 -3
  8. package/dist/cjs/{immutable-map-edf24b54.js → immutable-map-d711339d.js} +16 -4
  9. package/dist/cjs/index.cjs.js +9 -9
  10. package/dist/cjs/{internal-vega-event-manager-6b74b3af.js → internal-vega-event-manager-7e0d966d.js} +2 -1
  11. package/dist/cjs/loader.cjs.js +8 -8
  12. package/dist/cjs/{public-rules-fc52d624.js → public-rules-3cd0f182.js} +3 -3
  13. package/dist/cjs/{range-93cc8ab1.js → range-c9bde0b4.js} +1 -1
  14. package/dist/cjs/{rich-text-editor-required-rule-fd3711fb.js → rich-text-editor-required-rule-d1f0509c.js} +1 -1
  15. package/dist/cjs/{split-cell-operation-532fb9f0.js → split-cell-operation-6a59c9b0.js} +2 -2
  16. package/dist/cjs/{token-extension-39f2b886.js → token-extension-d7d2ead6.js} +282 -224
  17. package/dist/cjs/vega-accordion.cjs.entry.js +3 -3
  18. package/dist/cjs/vega-app-header-button.cjs.entry.js +4 -4
  19. package/dist/cjs/vega-banner.cjs.entry.js +3 -3
  20. package/dist/cjs/vega-breadcrumb.cjs.entry.js +4 -4
  21. package/dist/cjs/vega-button-circle.cjs.entry.js +4 -4
  22. package/dist/cjs/vega-button-group_2.cjs.entry.js +4 -4
  23. package/dist/cjs/vega-button-link.cjs.entry.js +4 -4
  24. package/dist/cjs/vega-button.cjs.entry.js +4 -4
  25. package/dist/cjs/vega-calendar_4.cjs.entry.js +8 -7
  26. package/dist/cjs/vega-carousel.cjs.entry.js +3 -3
  27. package/dist/cjs/vega-checkbox_2.cjs.entry.js +4 -4
  28. package/dist/cjs/vega-chip.cjs.entry.js +4 -4
  29. package/dist/cjs/vega-code-block.cjs.entry.js +7 -7
  30. package/dist/cjs/vega-color-picker.cjs.entry.js +3 -3
  31. package/dist/cjs/vega-color-swatch-picker.cjs.entry.js +188 -46
  32. package/dist/cjs/vega-color-swatch.cjs.entry.js +7 -7
  33. package/dist/cjs/vega-combo-box.cjs.entry.js +4 -4
  34. package/dist/cjs/vega-date-picker_2.cjs.entry.js +17 -5
  35. package/dist/cjs/vega-dialog_2.cjs.entry.js +5 -5
  36. package/dist/cjs/vega-dropdown_5.cjs.entry.js +4 -4
  37. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  38. package/dist/cjs/{vega-event-id-c08ce3d3.js → vega-event-id-d9994eb3.js} +2 -0
  39. package/dist/cjs/vega-field-label.cjs.entry.js +3 -3
  40. package/dist/cjs/vega-file-uploader.cjs.entry.js +3 -3
  41. package/dist/cjs/vega-form.cjs.entry.js +5 -5
  42. package/dist/cjs/vega-image-uploader.cjs.entry.js +4 -4
  43. package/dist/cjs/vega-input-credit-card.cjs.entry.js +4 -4
  44. package/dist/cjs/vega-input-numeric.cjs.entry.js +4 -4
  45. package/dist/cjs/vega-input-passcode.cjs.entry.js +4 -4
  46. package/dist/cjs/vega-input-phone-number.cjs.entry.js +15 -5
  47. package/dist/cjs/vega-input-range.cjs.entry.js +4 -4
  48. package/dist/cjs/vega-input-select.cjs.entry.js +4 -4
  49. package/dist/cjs/vega-input.cjs.entry.js +3 -3
  50. package/dist/cjs/vega-item-toggle.cjs.entry.js +3 -3
  51. package/dist/cjs/vega-left-nav_5.cjs.entry.js +15 -13
  52. package/dist/cjs/vega-page-notification_2.cjs.entry.js +1 -1
  53. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +3 -3
  54. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +1 -1
  55. package/dist/cjs/vega-pagination.cjs.entry.js +4 -4
  56. package/dist/cjs/vega-popover_2.cjs.entry.js +3 -3
  57. package/dist/cjs/vega-progress-tracker_2.cjs.entry.js +3 -3
  58. package/dist/cjs/vega-radio_2.cjs.entry.js +4 -4
  59. package/dist/cjs/vega-rich-text-content.cjs.entry.js +4 -4
  60. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +10 -10
  61. package/dist/cjs/vega-rich-text-table-properties_3.cjs.entry.js +6 -6
  62. package/dist/cjs/vega-segment-control.cjs.entry.js +3 -3
  63. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +4 -4
  64. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +161 -28
  65. package/dist/cjs/vega-sidenav_3.cjs.entry.js +3 -3
  66. package/dist/cjs/vega-signature-capture.cjs.entry.js +3 -3
  67. package/dist/cjs/vega-stepper.cjs.entry.js +4 -4
  68. package/dist/cjs/vega-tab-group_2.cjs.entry.js +4 -4
  69. package/dist/cjs/vega-table_11.cjs.entry.js +1172 -282
  70. package/dist/cjs/vega-textarea.cjs.entry.js +4 -4
  71. package/dist/cjs/vega-time-picker_2.cjs.entry.js +9 -15
  72. package/dist/cjs/vega-toggle-switch.cjs.entry.js +3 -3
  73. package/dist/cjs/vega.cjs.js +8 -8
  74. package/dist/collection/components/vega-calendar/slimmers/day-view/renderers/vega-calendar-view-with-time-renderer.js +2 -2
  75. package/dist/collection/components/vega-calendar/slimmers/month-view/renderers/vega-calendar-month-view-renderer.js +2 -1
  76. package/dist/collection/components/vega-color-swatch/vega-color-swatch-picker/slimmers/renderers/color-swatch-picker-renderer.js +24 -5
  77. package/dist/collection/components/vega-color-swatch/vega-color-swatch-picker/vega-color-swatch-picker.js +15 -0
  78. package/dist/collection/components/vega-color-swatch/vega-color-swatch.js +6 -6
  79. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.js +3 -0
  80. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.css +17 -1
  81. package/dist/collection/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.js +31 -1
  82. package/dist/collection/components/vega-input-phone-number/vega-input-phone-number.js +10 -0
  83. package/dist/collection/components/vega-modal/slimmers/renderers/vega-modal-renderer.js +1 -1
  84. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-backdrop-controller.js +10 -8
  85. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-zindex-controller.js +2 -2
  86. package/dist/collection/components/vega-rich-text-editor/dto/nodes/text-node.js +6 -0
  87. package/dist/collection/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.js +8 -2
  88. package/dist/collection/components/vega-rich-text-editor/extensions/functions/renderers/function-toolbar-button-renderer.js +1 -0
  89. package/dist/collection/components/vega-rich-text-editor/extensions/languages/language-toolbar-button-renderer.js +1 -0
  90. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.js +53 -51
  91. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.js +40 -10
  92. package/dist/collection/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.js +75 -62
  93. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-extension.js +1 -0
  94. package/dist/collection/components/vega-rich-text-editor/extensions/table/table-toolbar-button-renderer.js +1 -0
  95. package/dist/collection/components/vega-rich-text-editor/extensions/tokens/token-toolbar-button-renderer.js +5 -1
  96. package/dist/collection/components/vega-selection-tile/slimmers/renderers/vega-selection-tile-renderer.js +71 -10
  97. package/dist/collection/components/vega-selection-tile/vega-selection-tile-group/slimmers/renderers/vega-selection-tile-group-renderer.js +39 -11
  98. package/dist/collection/components/vega-selection-tile/vega-selection-tile-group/vega-selection-tile-group.css +1 -3
  99. package/dist/collection/components/vega-selection-tile/vega-selection-tile.css +23 -18
  100. package/dist/collection/components/vega-selection-tile/vega-selection-tile.js +45 -1
  101. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-expand-row-controller.js +88 -4
  102. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-row-draggable-controller.js +132 -0
  103. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-sort-controller.js +14 -0
  104. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-body-renderer.js +8 -5
  105. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-col-group-renderer.js +6 -2
  106. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-pinned-renderer.js +8 -2
  107. package/dist/collection/components/vega-table/utils.js +4 -3
  108. package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-col-span-controller.js +13 -1
  109. package/dist/collection/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-state-controller.js +7 -0
  110. package/dist/collection/components/vega-table/vega-table-expand-row/vega-table-expand-row.js +7 -0
  111. package/dist/collection/components/vega-table/vega-table-foot-row/slimmers/controllers/vega-table-foot-row-state-controller.js +10 -3
  112. package/dist/collection/components/vega-table/vega-table-foot-row/slimmers/renderers/vega-table-foot-row-renderer.js +9 -2
  113. package/dist/collection/components/vega-table/vega-table-foot-row/vega-table-foot-row.js +4 -3
  114. package/dist/collection/components/vega-table/vega-table-head/vega-table-head.js +5 -0
  115. package/dist/collection/components/vega-table/vega-table-head-row/slimmers/controllers/vega-table-head-row-state-controller.js +10 -3
  116. package/dist/collection/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.js +12 -2
  117. package/dist/collection/components/vega-table/vega-table-head-row/vega-table-head-row.js +5 -4
  118. package/dist/collection/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-state-controller.js +22 -1
  119. package/dist/collection/components/vega-table/vega-table-row/slimmers/renderers/vega-table-row-renderer.js +19 -4
  120. package/dist/collection/components/vega-table/vega-table-row/vega-table-row.css +6 -0
  121. package/dist/collection/components/vega-table/vega-table-row/vega-table-row.js +11 -1
  122. package/dist/collection/components/vega-table/vega-table.css +5 -0
  123. package/dist/collection/components/vega-table/vega-table.js +135 -11
  124. package/dist/collection/components/vega-time-picker/vega-time-picker.js +6 -12
  125. package/dist/collection/constants/ui.js +1 -0
  126. package/dist/collection/global/icons/grip-dots-vertical.js +3 -0
  127. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -1
  128. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +1 -0
  129. package/dist/collection/helpers/immutable/immutable-map.js +16 -4
  130. package/dist/collection/helpers/slimmers/draggable-element-slimmer.js +508 -0
  131. package/dist/collection/helpers/slimmers/popover-nested-slot-projection-slimmer.js +118 -0
  132. package/dist/esm/{app-globals-d06de2a5.js → app-globals-37536ac9.js} +5 -5
  133. package/dist/esm/{aria-dialog-focusable-trap-slimmer-853a91de.js → aria-dialog-focusable-trap-slimmer-6eb79723.js} +1 -1
  134. package/dist/esm/{child-nodes-event-prevent-slimmer-f65e2452.js → child-nodes-event-prevent-slimmer-75f93d85.js} +1 -1
  135. package/dist/esm/{code-block-65c8804b.js → code-block-10be3916.js} +7 -1
  136. package/dist/esm/{component-value-history-controller-slimmer.abstract-26c154f6.js → component-value-history-controller-slimmer.abstract-82d51b7a.js} +3 -3
  137. package/dist/esm/{content-state-e676bdf0.js → content-state-afeb700d.js} +2 -2
  138. package/dist/esm/{element-appender-slimmer-d4a82dc3.js → element-appender-slimmer-05f487d7.js} +1 -1
  139. package/dist/esm/{event-emit-slimmer-18711776.js → event-emit-slimmer-1c57093d.js} +1 -1
  140. package/dist/esm/{form-field-controller-slimmer-9a0f8c54.js → form-field-controller-slimmer-ae8478b5.js} +2 -2
  141. package/dist/esm/{image-annotation-action-2d87b66a.js → image-annotation-action-bad7c565.js} +3 -3
  142. package/dist/esm/{immutable-map-612922a2.js → immutable-map-4fe22b11.js} +16 -4
  143. package/dist/esm/index.js +9 -9
  144. package/dist/esm/{internal-vega-event-manager-bed71930.js → internal-vega-event-manager-7cdf3c28.js} +2 -1
  145. package/dist/esm/loader.js +9 -9
  146. package/dist/esm/{public-rules-a61ff09f.js → public-rules-f54e6f39.js} +4 -4
  147. package/dist/esm/{range-d9e55d00.js → range-f32f9185.js} +1 -1
  148. package/dist/esm/{rich-text-editor-required-rule-6a4c853a.js → rich-text-editor-required-rule-627fd7e4.js} +1 -1
  149. package/dist/esm/{split-cell-operation-2e700c5c.js → split-cell-operation-90c30861.js} +3 -3
  150. package/dist/esm/{string-input-formatter-slimmer-ad234bec.js → string-input-formatter-slimmer-4059080b.js} +2 -2
  151. package/dist/esm/{sub-state-notify-slimmer-1f907173.js → sub-state-notify-slimmer-63ecb465.js} +1 -1
  152. package/dist/esm/{sub-state-observer-slimmer-090c500a.js → sub-state-observer-slimmer-2adbbe00.js} +1 -1
  153. package/dist/esm/{token-extension-d3a46c04.js → token-extension-728c0678.js} +282 -224
  154. package/dist/esm/vega-accordion.entry.js +3 -3
  155. package/dist/esm/vega-app-header-button.entry.js +4 -4
  156. package/dist/esm/vega-banner.entry.js +3 -3
  157. package/dist/esm/vega-breadcrumb.entry.js +4 -4
  158. package/dist/esm/vega-button-circle.entry.js +5 -5
  159. package/dist/esm/vega-button-group_2.entry.js +7 -7
  160. package/dist/esm/vega-button-link.entry.js +4 -4
  161. package/dist/esm/vega-button.entry.js +5 -5
  162. package/dist/esm/vega-calendar_4.entry.js +11 -10
  163. package/dist/esm/vega-carousel.entry.js +3 -3
  164. package/dist/esm/vega-checkbox_2.entry.js +7 -7
  165. package/dist/esm/vega-chip.entry.js +4 -4
  166. package/dist/esm/vega-code-block.entry.js +8 -8
  167. package/dist/esm/vega-color-picker.entry.js +6 -6
  168. package/dist/esm/vega-color-swatch-picker.entry.js +192 -50
  169. package/dist/esm/vega-color-swatch.entry.js +7 -7
  170. package/dist/esm/vega-combo-box.entry.js +7 -7
  171. package/dist/esm/vega-date-picker_2.entry.js +24 -12
  172. package/dist/esm/vega-dialog_2.entry.js +7 -7
  173. package/dist/esm/vega-dropdown_5.entry.js +9 -9
  174. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  175. package/dist/esm/{vega-event-id-5841d1d3.js → vega-event-id-a6ccca66.js} +2 -1
  176. package/dist/esm/vega-field-label.entry.js +3 -3
  177. package/dist/esm/vega-file-uploader.entry.js +6 -6
  178. package/dist/esm/vega-form.entry.js +9 -9
  179. package/dist/esm/vega-image-uploader.entry.js +7 -7
  180. package/dist/esm/vega-input-credit-card.entry.js +7 -7
  181. package/dist/esm/vega-input-numeric.entry.js +8 -8
  182. package/dist/esm/vega-input-passcode.entry.js +7 -7
  183. package/dist/esm/vega-input-phone-number.entry.js +18 -8
  184. package/dist/esm/vega-input-range.entry.js +7 -7
  185. package/dist/esm/vega-input-select.entry.js +7 -7
  186. package/dist/esm/vega-input.entry.js +8 -8
  187. package/dist/esm/{vega-internal-event-id-194bac82.js → vega-internal-event-id-db974a0d.js} +1 -1
  188. package/dist/esm/vega-item-toggle.entry.js +3 -3
  189. package/dist/esm/vega-left-nav_5.entry.js +18 -16
  190. package/dist/esm/vega-page-notification_2.entry.js +1 -1
  191. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +4 -4
  192. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +2 -2
  193. package/dist/esm/vega-pagination.entry.js +5 -5
  194. package/dist/esm/vega-popover_2.entry.js +6 -6
  195. package/dist/esm/vega-progress-tracker_2.entry.js +6 -6
  196. package/dist/esm/vega-radio_2.entry.js +7 -7
  197. package/dist/esm/vega-rich-text-content.entry.js +7 -7
  198. package/dist/esm/vega-rich-text-editor_4.entry.js +15 -15
  199. package/dist/esm/vega-rich-text-table-properties_3.entry.js +7 -7
  200. package/dist/esm/vega-segment-control.entry.js +3 -3
  201. package/dist/esm/vega-selection-chip_2.entry.js +8 -8
  202. package/dist/esm/vega-selection-tile_2.entry.js +165 -32
  203. package/dist/esm/vega-sidenav_3.entry.js +6 -6
  204. package/dist/esm/vega-signature-capture.entry.js +6 -6
  205. package/dist/esm/vega-stepper.entry.js +7 -7
  206. package/dist/esm/vega-tab-group_2.entry.js +4 -4
  207. package/dist/esm/vega-table_11.entry.js +1175 -285
  208. package/dist/esm/vega-textarea.entry.js +7 -7
  209. package/dist/esm/vega-time-picker_2.entry.js +13 -19
  210. package/dist/esm/vega-toggle-switch.entry.js +6 -6
  211. package/dist/esm/vega-tooltip_2.entry.js +2 -2
  212. package/dist/esm/vega.js +9 -9
  213. package/dist/esm/{wait-for-component-did-render-30cde59c.js → wait-for-component-did-render-9a83d343.js} +1 -1
  214. package/dist/sri/vega-sri-manifest.json +276 -276
  215. package/dist/types/components/vega-color-swatch/vega-color-swatch-picker/slimmers/renderers/color-swatch-picker-renderer.d.ts +9 -0
  216. package/dist/types/components/vega-color-swatch/vega-color-swatch-picker/vega-color-swatch-picker.d.ts +6 -0
  217. package/dist/types/components/vega-color-swatch/vega-color-swatch.d.ts +4 -4
  218. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/slimmers/renderers/vega-date-picker-month-item-renderer.d.ts +1 -0
  219. package/dist/types/components/vega-date-picker/vega-date-picker-calendar/vega-date-picker-calendar.d.ts +8 -0
  220. package/dist/types/components/vega-input-phone-number/vega-input-phone-number.d.ts +2 -0
  221. package/dist/types/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-backdrop-controller.d.ts +2 -1
  222. package/dist/types/components/vega-rich-text-editor/extensions/base-toolbar-button-renderer.d.ts +2 -0
  223. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-dynamic-popover-renderer.d.ts +15 -11
  224. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-renderer.d.ts +15 -0
  225. package/dist/types/components/vega-rich-text-editor/extensions/table/renderers/table-setting-popover-renderer.d.ts +25 -22
  226. package/dist/types/components/vega-rich-text-editor/interface.d.ts +5 -0
  227. package/dist/types/components/vega-selection-tile/slimmers/renderers/vega-selection-tile-renderer.d.ts +12 -0
  228. package/dist/types/components/vega-selection-tile/vega-selection-tile-group/slimmers/renderers/vega-selection-tile-group-renderer.d.ts +0 -1
  229. package/dist/types/components/vega-selection-tile/vega-selection-tile.d.ts +2 -0
  230. package/dist/types/components/vega-table/interface.d.ts +2 -0
  231. package/dist/types/components/vega-table/slimmers/controllers/vega-table-expand-row-controller.d.ts +35 -0
  232. package/dist/types/components/vega-table/slimmers/controllers/vega-table-row-draggable-controller.d.ts +52 -0
  233. package/dist/types/components/vega-table/slimmers/controllers/vega-table-sort-controller.d.ts +4 -0
  234. package/dist/types/components/vega-table/slimmers/renderers/vega-table-body-renderer.d.ts +3 -1
  235. package/dist/types/components/vega-table/slimmers/renderers/vega-table-col-group-renderer.d.ts +2 -1
  236. package/dist/types/components/vega-table/utils.d.ts +3 -2
  237. package/dist/types/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-col-span-controller.d.ts +5 -0
  238. package/dist/types/components/vega-table/vega-table-expand-row/slimmers/controllers/vega-table-expand-row-state-controller.d.ts +1 -0
  239. package/dist/types/components/vega-table/vega-table-expand-row/vega-table-expand-row.d.ts +2 -0
  240. package/dist/types/components/vega-table/vega-table-foot-row/slimmers/controllers/vega-table-foot-row-state-controller.d.ts +2 -1
  241. package/dist/types/components/vega-table/vega-table-foot-row/slimmers/renderers/vega-table-foot-row-renderer.d.ts +3 -1
  242. package/dist/types/components/vega-table/vega-table-foot-row/vega-table-foot-row.d.ts +6 -2
  243. package/dist/types/components/vega-table/vega-table-head/vega-table-head.d.ts +1 -0
  244. package/dist/types/components/vega-table/vega-table-head-row/slimmers/controllers/vega-table-head-row-state-controller.d.ts +2 -1
  245. package/dist/types/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.d.ts +3 -1
  246. package/dist/types/components/vega-table/vega-table-head-row/vega-table-head-row.d.ts +6 -2
  247. package/dist/types/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-state-controller.d.ts +3 -0
  248. package/dist/types/components/vega-table/vega-table-row/slimmers/renderers/vega-table-row-renderer.d.ts +3 -0
  249. package/dist/types/components/vega-table/vega-table-row/vega-table-row.d.ts +8 -0
  250. package/dist/types/components/vega-table/vega-table.d.ts +40 -5
  251. package/dist/types/components/vega-time-picker/vega-time-picker.d.ts +5 -11
  252. package/dist/types/components.d.ts +47 -12
  253. package/dist/types/constants/ui.d.ts +1 -1
  254. package/dist/types/global/icons/grip-dots-vertical.d.ts +3 -0
  255. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +1 -0
  256. package/dist/types/helpers/immutable/immutable-map.d.ts +4 -1
  257. package/dist/types/helpers/slimmers/draggable-element-slimmer.d.ts +260 -0
  258. package/dist/types/helpers/slimmers/popover-nested-slot-projection-slimmer.d.ts +65 -0
  259. package/dist/types/types/components.type.d.ts +2 -0
  260. package/dist/types/types/public-api.d.ts +2 -0
  261. package/dist/types/types/ui.type.d.ts +40 -0
  262. package/dist/vega/index.esm.js +1 -1
  263. package/dist/vega/{p-d3ed7c27.entry.js → p-0b5b0fd2.entry.js} +1 -1
  264. package/dist/vega/p-13e7f906.entry.js +1 -0
  265. package/dist/vega/{p-39b71df9.entry.js → p-23b38467.entry.js} +1 -1
  266. package/dist/vega/{p-8d833b44.entry.js → p-25572ea7.entry.js} +1 -1
  267. package/dist/vega/{p-03cf2df1.entry.js → p-268e84e0.entry.js} +1 -1
  268. package/dist/vega/p-2edc066c.entry.js +1 -0
  269. package/dist/vega/{p-5bbb3e68.entry.js → p-2fb26f4f.entry.js} +1 -1
  270. package/dist/vega/{p-032183c1.js → p-33234385.js} +1 -1
  271. package/dist/vega/{p-c0323a55.entry.js → p-35d77c9c.entry.js} +1 -1
  272. package/dist/vega/{p-5ac4649a.entry.js → p-3c456e91.entry.js} +1 -1
  273. package/dist/vega/{p-27b1dc0f.entry.js → p-3d0ba2c6.entry.js} +1 -1
  274. package/dist/vega/{p-20f0060f.entry.js → p-3d92d2af.entry.js} +1 -1
  275. package/dist/vega/{p-4123559f.entry.js → p-3e64fa38.entry.js} +1 -1
  276. package/dist/vega/{p-f986f875.entry.js → p-411ea209.entry.js} +1 -1
  277. package/dist/vega/{p-7cf1e1f7.entry.js → p-423762ae.entry.js} +1 -1
  278. package/dist/vega/{p-0f31b00b.entry.js → p-4530f0e1.entry.js} +1 -1
  279. package/dist/vega/{p-b28d4f7d.js → p-48e3be6a.js} +1 -1
  280. package/dist/vega/{p-753a7832.entry.js → p-4afafeb3.entry.js} +1 -1
  281. package/dist/vega/{p-c6837173.entry.js → p-4c90d013.entry.js} +1 -1
  282. package/dist/vega/p-5087fa1e.entry.js +1 -0
  283. package/dist/vega/{p-7595ad55.js → p-51b2b3de.js} +1 -1
  284. package/dist/vega/{p-bc2786f9.entry.js → p-59c6dcf7.entry.js} +1 -1
  285. package/dist/vega/p-5e50dbb9.js +1 -0
  286. package/dist/vega/p-5f377954.js +1 -1
  287. package/dist/vega/{p-e5546af5.entry.js → p-606d7113.entry.js} +1 -1
  288. package/dist/vega/{p-6f790577.js → p-6817b9bd.js} +1 -1
  289. package/dist/vega/{p-84030271.entry.js → p-69c11b7b.entry.js} +1 -1
  290. package/dist/vega/{p-effa6495.js → p-6b5cb920.js} +1 -1
  291. package/dist/vega/{p-aa985d73.js → p-6c43d54a.js} +1 -1
  292. package/dist/vega/{p-0e15fa94.entry.js → p-6fadee27.entry.js} +1 -1
  293. package/dist/vega/{p-549bea2c.entry.js → p-73c6669e.entry.js} +1 -1
  294. package/dist/vega/{p-9375fbce.js → p-7730bace.js} +1 -1
  295. package/dist/vega/{p-88f57353.entry.js → p-79c12a64.entry.js} +1 -1
  296. package/dist/vega/{p-f8c700dd.entry.js → p-7f74cd41.entry.js} +1 -1
  297. package/dist/vega/p-818da356.js +1 -0
  298. package/dist/vega/{p-aa040383.js → p-84eb3b9c.js} +1 -1
  299. package/dist/vega/{p-b48b3264.js → p-8d48940d.js} +1 -1
  300. package/dist/vega/{p-a5e6a3be.js → p-93afdfc3.js} +1 -1
  301. package/dist/vega/{p-865fc90b.entry.js → p-98a6cd8e.entry.js} +1 -1
  302. package/dist/vega/p-9af0e2e7.js +1 -0
  303. package/dist/vega/{p-f6414a24.entry.js → p-9e2b7718.entry.js} +1 -1
  304. package/dist/vega/{p-e1b1f5f9.entry.js → p-9eb00537.entry.js} +1 -1
  305. package/dist/vega/{p-f0e855b2.entry.js → p-9f36abf9.entry.js} +1 -1
  306. package/dist/vega/{p-b88eab9a.entry.js → p-9fc8bd1f.entry.js} +1 -1
  307. package/dist/vega/{p-9308f874.entry.js → p-a050c24d.entry.js} +1 -1
  308. package/dist/vega/{p-aa4d419c.entry.js → p-a49c25c2.entry.js} +1 -1
  309. package/dist/vega/{p-1df2c29b.entry.js → p-a9528dbd.entry.js} +1 -1
  310. package/dist/vega/{p-0caf52e0.js → p-a9e10a64.js} +1 -1
  311. package/dist/vega/p-a9f34735.entry.js +1 -0
  312. package/dist/vega/{p-3ae5f50e.entry.js → p-aaf44879.entry.js} +1 -1
  313. package/dist/vega/{p-6cada843.js → p-ae1aa4df.js} +1 -1
  314. package/dist/vega/p-af00e6e2.entry.js +1 -0
  315. package/dist/vega/{p-a0c3968b.js → p-af5cb9bc.js} +1 -1
  316. package/dist/vega/{p-d6c9ef6c.entry.js → p-afd1b519.entry.js} +1 -1
  317. package/dist/vega/{p-5490d499.entry.js → p-bc74d7e7.entry.js} +1 -1
  318. package/dist/vega/{p-6ba71ec4.entry.js → p-c2388937.entry.js} +1 -1
  319. package/dist/vega/p-c31a32f4.js +1 -0
  320. package/dist/vega/{p-11a2f834.js → p-c347e08a.js} +1 -1
  321. package/dist/vega/{p-91739ed3.entry.js → p-c51ebb14.entry.js} +1 -1
  322. package/dist/vega/{p-b80217fa.entry.js → p-c601b331.entry.js} +1 -1
  323. package/dist/vega/{p-d3864b94.entry.js → p-c8fe46fd.entry.js} +1 -1
  324. package/dist/vega/p-ce61d23f.entry.js +1 -0
  325. package/dist/vega/{p-d76e3b3c.entry.js → p-cf2838c7.entry.js} +1 -1
  326. package/dist/vega/{p-e4c5b8d1.entry.js → p-d37636a5.entry.js} +1 -1
  327. package/dist/vega/{p-19e10a87.entry.js → p-d402eb7b.entry.js} +1 -1
  328. package/dist/vega/{p-dec5b448.js → p-d4e519a0.js} +1 -1
  329. package/dist/vega/{p-ce975c69.entry.js → p-da8bb883.entry.js} +1 -1
  330. package/dist/vega/{p-68a96fbb.entry.js → p-dffbbc3d.entry.js} +1 -1
  331. package/dist/vega/{p-bdddddb7.js → p-e1709e59.js} +1 -1
  332. package/dist/vega/{p-c47c37f2.js → p-e27626f6.js} +1 -1
  333. package/dist/vega/{p-6236f592.entry.js → p-e47b2c4c.entry.js} +1 -1
  334. package/dist/vega/{p-7dca19d3.entry.js → p-e95cb28f.entry.js} +1 -1
  335. package/dist/vega/{p-74136508.entry.js → p-ecbb63a5.entry.js} +1 -1
  336. package/dist/vega/p-ed26f4c8.entry.js +1 -0
  337. package/dist/vega/{p-43aaeb30.entry.js → p-effb285f.entry.js} +1 -1
  338. package/dist/vega/p-f1c672e4.js +1 -0
  339. package/dist/vega/{p-56c28943.js → p-f5f5a0d9.js} +1 -1
  340. package/dist/vega/{p-748268e6.entry.js → p-f604f2c9.entry.js} +1 -1
  341. package/dist/vega/{p-e5cc839a.entry.js → p-fa91805b.entry.js} +1 -1
  342. package/dist/vega/vega.esm.js +1 -1
  343. package/package.json +1 -1
  344. package/dist/vega/p-220f8ee7.js +0 -1
  345. package/dist/vega/p-38af89b9.js +0 -1
  346. package/dist/vega/p-5215e1d8.entry.js +0 -1
  347. package/dist/vega/p-5409275a.entry.js +0 -1
  348. package/dist/vega/p-5f23c52d.entry.js +0 -1
  349. package/dist/vega/p-7dbaed6c.entry.js +0 -1
  350. package/dist/vega/p-80cb302f.entry.js +0 -1
  351. package/dist/vega/p-874bf8b2.js +0 -1
  352. package/dist/vega/p-99670c56.entry.js +0 -1
  353. package/dist/vega/p-9de25451.js +0 -1
  354. package/dist/vega/p-a2d6d695.entry.js +0 -1
  355. package/dist/vega/p-b78eaec4.js +0 -1
@@ -26,7 +26,7 @@ export class VegaTableExpandRowController extends VegaSlimmer {
26
26
  * @param {string} rowKey - The row key of the row
27
27
  */
28
28
  this.toggleExpandRow = (rowKey) => {
29
- this.rowExpandable && this.handleToggleExpandRow(rowKey, !this.isExpanded(rowKey));
29
+ this.isRowExpandable(rowKey) && this.handleToggleExpandRow(rowKey, !this.isExpanded(rowKey));
30
30
  };
31
31
  /**
32
32
  * Open expandable row by rowKey
@@ -34,7 +34,7 @@ export class VegaTableExpandRowController extends VegaSlimmer {
34
34
  * @param {string} rowKey - The row key of the row
35
35
  */
36
36
  this.openExpandRow = (rowKey) => {
37
- this.rowExpandable && this.handleToggleExpandRow(rowKey, true);
37
+ this.isRowExpandable(rowKey) && this.handleToggleExpandRow(rowKey, true);
38
38
  };
39
39
  /**
40
40
  * Close expanded row by rowKey
@@ -42,13 +42,22 @@ export class VegaTableExpandRowController extends VegaSlimmer {
42
42
  * @param {string} rowKey - The row key of the row
43
43
  */
44
44
  this.closeExpandRow = (rowKey) => {
45
- this.rowExpandable && this.handleToggleExpandRow(rowKey, false);
45
+ this.isRowExpandable(rowKey) && this.handleToggleExpandRow(rowKey, false);
46
46
  };
47
47
  /**
48
48
  * Close all expanded row
49
49
  */
50
50
  this.closeAllExpandRow = () => {
51
- this.rowExpandable && this.handleCloseAllExpandRow();
51
+ this.hasExpandableRow && this.handleCloseAllExpandRow();
52
+ };
53
+ /**
54
+ * Whether the row is expandable
55
+ *
56
+ * @param {VegaTableDataSourceItem} row - The row data
57
+ * @returns {boolean} Return true if the row is expandable
58
+ */
59
+ this.isExpandableRow = (row) => {
60
+ return this.expandableRows.includes(this.vegaTableDataSourceController.getRecordKey(row));
52
61
  };
53
62
  /**
54
63
  * Whether the row is expandable
@@ -159,6 +168,12 @@ export class VegaTableExpandRowController extends VegaSlimmer {
159
168
  ChangeManager.unregister(TABLE_EXPAND_ROW, this.expandObserver);
160
169
  remoteInvocationRegistry.unRegister(domNodeSubjectFactory.getSubject(this.host, VegaInternalTableRowExpand));
161
170
  }
171
+ /**
172
+ * Component lifecycle - componentWillLoad
173
+ */
174
+ componentWillLoad() {
175
+ this.setExpandableRows();
176
+ }
162
177
  /**
163
178
  * Component lifecycle - componentDidLoad
164
179
  */
@@ -169,8 +184,16 @@ export class VegaTableExpandRowController extends VegaSlimmer {
169
184
  * The callback to handle [watchRowExpandable]{@link VegaTable.watchRowExpandable}
170
185
  */
171
186
  watchRowExpandable() {
187
+ this.setExpandableRows();
172
188
  this.handleCloseAllExpandRow();
173
189
  }
190
+ /**
191
+ * Set the expandable rows based on the rowExpandable prop
192
+ */
193
+ watchCurrentData() {
194
+ this.setExpandableRows();
195
+ this.clearUnusedExpandRowSlot();
196
+ }
174
197
  /**
175
198
  * Initializes row expand observer
176
199
  */
@@ -201,6 +224,52 @@ export class VegaTableExpandRowController extends VegaSlimmer {
201
224
  return (input['host']['tagName'] === 'VEGA-TABLE-ROW' &&
202
225
  this.host === findParent(input['host'], 'vega-table'));
203
226
  }
227
+ /**
228
+ * Sets expandable rows and hasExpandableRow based on rowExpandable and currentData
229
+ */
230
+ setExpandableRows() {
231
+ if (typeof this.rowExpandable === 'boolean') {
232
+ this.expandableRows = this.rowExpandable
233
+ ? this.currentData.map((item) => this.vegaTableDataSourceController.getRecordKey(item))
234
+ : [];
235
+ this.hasExpandableRow = this.rowExpandable;
236
+ }
237
+ else if (typeof this.rowExpandable === 'function') {
238
+ const result = [];
239
+ this.currentData.forEach((item) => {
240
+ const rowKey = this.vegaTableDataSourceController.getRecordKey(item);
241
+ if (this.rowExpandable(rowKey)) {
242
+ result.push(rowKey);
243
+ }
244
+ });
245
+ this.expandableRows = result;
246
+ this.hasExpandableRow = result.length > 0;
247
+ }
248
+ else {
249
+ this.expandableRows = [];
250
+ this.hasExpandableRow = false;
251
+ }
252
+ }
253
+ /**
254
+ * Whether the row is expandable by rowKey
255
+ *
256
+ * @param {string} rowKey - The row key of the row
257
+ * @returns {boolean} Return true if the row is expandable
258
+ */
259
+ isRowExpandable(rowKey) {
260
+ return this.expandableRows.includes(rowKey);
261
+ }
262
+ /**
263
+ * Clear the expand row slot which is not expandable anymore to avoid confusion,
264
+ * this can be triggered by the change of rowExpandable or currentData
265
+ */
266
+ clearUnusedExpandRowSlot() {
267
+ this.expandedRowKeySet.toArray().forEach((rowKey) => {
268
+ if (!this.isRowExpandable(rowKey)) {
269
+ this.expandedRowKeySet.delete(rowKey);
270
+ }
271
+ });
272
+ }
204
273
  }
205
274
  VegaTableExpandRowController.expandRowSlotNamePrefix = 'vega-table-expand-row-';
206
275
  __decorate([
@@ -209,9 +278,18 @@ __decorate([
209
278
  __decorate([
210
279
  MapToComponentField()
211
280
  ], VegaTableExpandRowController.prototype, "expandedRowKeySet", void 0);
281
+ __decorate([
282
+ MapToComponentField({ writable: true })
283
+ ], VegaTableExpandRowController.prototype, "expandableRows", void 0);
284
+ __decorate([
285
+ MapToComponentField({ writable: true })
286
+ ], VegaTableExpandRowController.prototype, "hasExpandableRow", void 0);
212
287
  __decorate([
213
288
  MapToComponentField()
214
289
  ], VegaTableExpandRowController.prototype, "rowExpandable", void 0);
290
+ __decorate([
291
+ MapToComponentField()
292
+ ], VegaTableExpandRowController.prototype, "currentData", void 0);
215
293
  __decorate([
216
294
  MapToComponentField()
217
295
  ], VegaTableExpandRowController.prototype, "rowExpandEventEmitter", void 0);
@@ -224,6 +302,9 @@ __decorate([
224
302
  __decorate([
225
303
  MapToComponentMethod('disconnectedCallback')
226
304
  ], VegaTableExpandRowController.prototype, "disconnectedCallback", null);
305
+ __decorate([
306
+ MapToComponentMethod('componentWillLoad')
307
+ ], VegaTableExpandRowController.prototype, "componentWillLoad", null);
227
308
  __decorate([
228
309
  MapToComponentMethod('componentDidLoad')
229
310
  ], VegaTableExpandRowController.prototype, "componentDidLoad", null);
@@ -242,3 +323,6 @@ __decorate([
242
323
  __decorate([
243
324
  MapToComponentMethod('watchRowExpandable')
244
325
  ], VegaTableExpandRowController.prototype, "watchRowExpandable", null);
326
+ __decorate([
327
+ MapToComponentMethod('watchCurrentData')
328
+ ], VegaTableExpandRowController.prototype, "watchCurrentData", null);
@@ -0,0 +1,132 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { createDynamicSlimmer, InjectVegaSlimmer, MapToComponentField, MapToComponentMethod, methodPlaceholder, VegaSlimmer, } from 'vega-slimmer/core';
8
+ import { DraggableElementSlimmer } from '../../../../helpers/slimmers/draggable-element-slimmer';
9
+ /**
10
+ * The row draggable controller for the vega-table
11
+ */
12
+ export class VegaTableRowDraggableController extends VegaSlimmer {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.draggableElementSlimmer = createDynamicSlimmer(VegaTableRowDraggableController, DraggableElementSlimmer, [{ mapFrom: 'rowDraggable', mapTo: 'isDraggable' }], [{ mapFrom: 'watchRowDraggable', mapTo: 'watchIsDraggable' }], [
16
+ {
17
+ container: this.getDragContainer.bind(this),
18
+ itemSelector: 'vega-table-row',
19
+ triggerElementSelector: 'td.vega-table-draggable-column',
20
+ visualElementSelector: 'tr.vega-table-row',
21
+ onDragDrop: this.onDragDrop.bind(this),
22
+ },
23
+ ]);
24
+ }
25
+ /**
26
+ * Component lifecycle - [connectedCallback]{@link VegaPopover.connectedCallback}
27
+ */
28
+ connectedCallback() {
29
+ methodPlaceholder();
30
+ }
31
+ /**
32
+ * Component lifecycle - [disconnectedCallback]{@link VegaPopover.disconnectedCallback}
33
+ */
34
+ disconnectedCallback() {
35
+ methodPlaceholder();
36
+ }
37
+ /**
38
+ * Component lifecycle - [componentDidLoad]{@link VegaPopover.componentDidLoad}
39
+ */
40
+ componentDidLoad() {
41
+ methodPlaceholder();
42
+ }
43
+ /**
44
+ * Watches for changes to the rowDraggable property and initializes or destroys the DraggableElement instance accordingly.
45
+ * If rowDraggable is true, it calls setRowDraggableElement to initialize the instance;
46
+ * if false, it calls destroyRowDraggableElement to clean up.
47
+ */
48
+ watchRowDraggable() {
49
+ methodPlaceholder();
50
+ }
51
+ /**
52
+ * Resolve the draggable container for current render mode.
53
+ *
54
+ * @returns {Nullable<HTMLElement>} The table body container used by drag behavior.
55
+ */
56
+ getDragContainer() {
57
+ return this.isTemplateRenderMode
58
+ ? this.host.querySelector('vega-table-body')
59
+ : this.vegaTableBodyRenderer.getTableBodyRef();
60
+ }
61
+ /**
62
+ * Handles the drag and drop event emitted by the DraggableElement instance, re-emitting it through the rowDragDropEventEmitter with additional details.
63
+ *
64
+ * @param {DragDropEventPayload} payload - An object containing payload about the drag event.
65
+ */
66
+ onDragDrop(payload) {
67
+ const event = this.rowDragDropEventEmitter.emit(payload);
68
+ if (!event.defaultPrevented) {
69
+ payload.status === 'end' && this.onDragEnd(payload);
70
+ }
71
+ }
72
+ /**
73
+ * Handles the logic for reordering rows in the table when a drag and drop action is completed.
74
+ *
75
+ * @param {DragDropEventPayload} payload - An object containing details about the completed drag event, including fromIndex and toIndex.
76
+ */
77
+ onDragEnd(payload) {
78
+ const fromIndex = payload.options.fromIndex;
79
+ const toIndex = payload.options.toIndex;
80
+ this.vegaTableSortController.clearSorter();
81
+ if (this.isTemplateRenderMode) {
82
+ const rows = Array.from(this.host.querySelectorAll('vega-table-row'));
83
+ const container = this.host.querySelector('vega-table-body');
84
+ fromIndex > toIndex
85
+ ? container.insertBefore(rows[fromIndex], rows[toIndex])
86
+ : container.insertBefore(rows[fromIndex], rows[toIndex].nextSibling);
87
+ }
88
+ else {
89
+ const rows = this.vegaTableDataSourceController.getCurrentData();
90
+ const copiedRows = [...rows];
91
+ const [moved] = copiedRows.splice(fromIndex, 1);
92
+ copiedRows.splice(toIndex, 0, moved);
93
+ this.vegaTableDataSourceController.setCurrentData(copiedRows);
94
+ }
95
+ }
96
+ }
97
+ __decorate([
98
+ MapToComponentField()
99
+ ], VegaTableRowDraggableController.prototype, "rowDraggable", void 0);
100
+ __decorate([
101
+ MapToComponentField()
102
+ ], VegaTableRowDraggableController.prototype, "host", void 0);
103
+ __decorate([
104
+ MapToComponentField()
105
+ ], VegaTableRowDraggableController.prototype, "vegaTableDataSourceController", void 0);
106
+ __decorate([
107
+ MapToComponentField()
108
+ ], VegaTableRowDraggableController.prototype, "isTemplateRenderMode", void 0);
109
+ __decorate([
110
+ MapToComponentField()
111
+ ], VegaTableRowDraggableController.prototype, "vegaTableBodyRenderer", void 0);
112
+ __decorate([
113
+ MapToComponentField()
114
+ ], VegaTableRowDraggableController.prototype, "vegaTableSortController", void 0);
115
+ __decorate([
116
+ MapToComponentField()
117
+ ], VegaTableRowDraggableController.prototype, "rowDragDropEventEmitter", void 0);
118
+ __decorate([
119
+ InjectVegaSlimmer()
120
+ ], VegaTableRowDraggableController.prototype, "draggableElementSlimmer", void 0);
121
+ __decorate([
122
+ MapToComponentMethod('connectedCallback')
123
+ ], VegaTableRowDraggableController.prototype, "connectedCallback", null);
124
+ __decorate([
125
+ MapToComponentMethod('disconnectedCallback')
126
+ ], VegaTableRowDraggableController.prototype, "disconnectedCallback", null);
127
+ __decorate([
128
+ MapToComponentMethod('componentDidLoad')
129
+ ], VegaTableRowDraggableController.prototype, "componentDidLoad", null);
130
+ __decorate([
131
+ MapToComponentMethod('watchRowDraggable')
132
+ ], VegaTableRowDraggableController.prototype, "watchRowDraggable", null);
@@ -11,6 +11,20 @@ import { VegaTableSorter } from './vega-table-sorter';
11
11
  * The sort controller for the vega-table
12
12
  */
13
13
  export class VegaTableSortController extends VegaSlimmer {
14
+ constructor() {
15
+ super(...arguments);
16
+ /**
17
+ * The method to clear all sorters
18
+ */
19
+ this.clearSorter = () => {
20
+ if (this.sortersMap.size > 0) {
21
+ this.sortersMap.clear(false);
22
+ this.changeEventEmitter.emit({
23
+ sorters: [],
24
+ });
25
+ }
26
+ };
27
+ }
14
28
  /**
15
29
  * The callback of [watchColumns]{@link VegaTable.watchColumns}
16
30
  */
@@ -12,7 +12,7 @@ export class VegaTableBodyRenderer extends VegaSlimmer {
12
12
  super(...arguments);
13
13
  this.renderTableBody = (editable) => {
14
14
  const currentData = this.vegaTableDataSourceController.getCurrentData();
15
- return (h("vega-table-body", null, currentData.map((record, index) => {
15
+ return (h("vega-table-body", { ref: (ref) => (this.tableBodyRef = ref) }, currentData.map((record, index) => {
16
16
  const rowKey = this.vegaTableDataSourceController.getRecordKey(record);
17
17
  const isVisibleInCurrentPage = this.vegaTablePaginationController.isRowVisible(index);
18
18
  const isLastRow = index === currentData.length - 1;
@@ -24,7 +24,7 @@ export class VegaTableBodyRenderer extends VegaSlimmer {
24
24
  isVisibleInCurrentPage,
25
25
  isLastRow: isLastRow,
26
26
  }, editable),
27
- this.rowExpandable && (h("vega-table-expand-row", { class: {
27
+ this.vegaTableExpandRowController.isExpandableRow(record) && (h("vega-table-expand-row", { class: {
28
28
  'v-hidden': !isVisibleInCurrentPage,
29
29
  }, key: `vega-table-expanded-row-${rowKey}`, rowKey: rowKey, striped: this.striped && index % 2 === 1 },
30
30
  h("slot", { name: `${VegaTableExpandRowController.expandRowSlotNamePrefix}${rowKey}` })))));
@@ -34,6 +34,9 @@ export class VegaTableBodyRenderer extends VegaSlimmer {
34
34
  getTableFormRef() {
35
35
  return this.tableFormRef;
36
36
  }
37
+ getTableBodyRef() {
38
+ return this.tableBodyRef;
39
+ }
37
40
  render() {
38
41
  const editable = this.columnStructureModel
39
42
  .generateColumnConfigByLeaves(this.columns)
@@ -53,9 +56,6 @@ __decorate([
53
56
  __decorate([
54
57
  MapToComponentField()
55
58
  ], VegaTableBodyRenderer.prototype, "currentBreakpoint", void 0);
56
- __decorate([
57
- MapToComponentField()
58
- ], VegaTableBodyRenderer.prototype, "rowExpandable", void 0);
59
59
  __decorate([
60
60
  MapToComponentField()
61
61
  ], VegaTableBodyRenderer.prototype, "rowClickable", void 0);
@@ -74,3 +74,6 @@ __decorate([
74
74
  __decorate([
75
75
  MapToComponentField()
76
76
  ], VegaTableBodyRenderer.prototype, "columnStructureModel", void 0);
77
+ __decorate([
78
+ MapToComponentField()
79
+ ], VegaTableBodyRenderer.prototype, "vegaTableExpandRowController", void 0);
@@ -19,6 +19,7 @@ export class VegaTableColGroupRenderer extends VegaSlimmer {
19
19
  render() {
20
20
  return (h("colgroup", null,
21
21
  h("col", { style: { minWidth: this.paddingX[0], width: this.paddingX[0] } }),
22
+ this.rowDraggable && h("col", { class: "draggable-col" }),
22
23
  this.vegaTableRowSelectionController.getRowSelectionType() === 'multiple' && (h("col", { style: { minWidth: '40px', width: '40px' } })),
23
24
  this.columnStructureModel
24
25
  .generateColumnConfigByLeaves(this.columns)
@@ -31,7 +32,7 @@ export class VegaTableColGroupRenderer extends VegaSlimmer {
31
32
  return h("col", null);
32
33
  }
33
34
  }),
34
- this.rowExpandable && h("col", { style: { minWidth: '40px', width: '40px' } }),
35
+ this.hasExpandableRow && h("col", { style: { minWidth: '40px', width: '40px' } }),
35
36
  h("col", { style: { minWidth: this.paddingX[1], width: this.paddingX[1] } })));
36
37
  }
37
38
  }
@@ -46,7 +47,10 @@ __decorate([
46
47
  ], VegaTableColGroupRenderer.prototype, "columns", void 0);
47
48
  __decorate([
48
49
  MapToComponentField()
49
- ], VegaTableColGroupRenderer.prototype, "rowExpandable", void 0);
50
+ ], VegaTableColGroupRenderer.prototype, "hasExpandableRow", void 0);
51
+ __decorate([
52
+ MapToComponentField()
53
+ ], VegaTableColGroupRenderer.prototype, "rowDraggable", void 0);
50
54
  __decorate([
51
55
  MapToComponentField()
52
56
  ], VegaTableColGroupRenderer.prototype, "vegaTableRowSelectionController", void 0);
@@ -71,11 +71,14 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
71
71
  const row = this.host.shadowRoot.querySelector('vega-table-head-row');
72
72
  const rowShadow = row.shadowRoot;
73
73
  const firstTh = rowShadow.querySelector('th:first-of-type');
74
+ const draggableTh = rowShadow.querySelector('.vega-table-draggable-column');
74
75
  const selectionTh = rowShadow.querySelector('.vega-table-selection-column');
75
76
  const expandTh = rowShadow.querySelector('.vega-table-expand-action-column');
76
77
  const lastTh = rowShadow.querySelector('th:last-of-type');
77
78
  if (firstTh) {
78
- const prevWidth = firstTh.getBoundingClientRect().width + ((selectionTh === null || selectionTh === void 0 ? void 0 : selectionTh.getBoundingClientRect().width) || 0);
79
+ const prevWidth = firstTh.getBoundingClientRect().width +
80
+ ((selectionTh === null || selectionTh === void 0 ? void 0 : selectionTh.getBoundingClientRect().width) || 0) +
81
+ ((draggableTh === null || draggableTh === void 0 ? void 0 : draggableTh.getBoundingClientRect().width) || 0);
79
82
  const nextWidth = ((expandTh === null || expandTh === void 0 ? void 0 : expandTh.getBoundingClientRect().width) || 0) + lastTh.getBoundingClientRect().width;
80
83
  return [prevWidth, nextWidth];
81
84
  }
@@ -134,8 +137,11 @@ export class VegaTablePinnedRenderer extends VegaSlimmer {
134
137
  if (hasLeftPinnedColumn) {
135
138
  const firstCell = rowShadow.querySelector('th:first-of-type, td:first-of-type');
136
139
  const selectionCell = rowShadow.querySelector('.vega-table-selection-column');
140
+ const draggableCell = rowShadow.querySelector('.vega-table-draggable-column');
137
141
  this.updatePinnedPosition(firstCell, 'left', 0);
138
- this.updatePinnedPosition(selectionCell, 'left', leftPadding);
142
+ this.updatePinnedPosition(draggableCell, 'left', leftPadding);
143
+ const draggableCellWidth = (draggableCell === null || draggableCell === void 0 ? void 0 : draggableCell.getBoundingClientRect().width) || 0;
144
+ this.updatePinnedPosition(selectionCell, 'left', leftPadding + draggableCellWidth);
139
145
  }
140
146
  if (hasRightPinnedColumn) {
141
147
  const expandCell = rowShadow.querySelector('.vega-table-expand-action-column');
@@ -37,8 +37,9 @@ export const generateTextAlignClass = (align) => {
37
37
  *
38
38
  * @param {number} columnLength - The number of columns in a table or grid.
39
39
  * @param {boolean} withMultipleSelection - A boolean value indicating whether the table has a column for multiple selection.
40
- * @returns {number} the value of `columnLength` plus 2 if `withMultipleSelection` is true, or plus 1 if `withMultipleSelection` is false.
40
+ * @param {boolean} withRowDraggable - A boolean value indicating whether the table has a column for row draggable.
41
+ * @returns {number} the value of `columnLength` plus 2 if `withMultipleSelection` is true, or plus 1 if `withMultipleSelection` is false, plus 1 if `withRowDraggable` is true.
41
42
  */
42
- export const generateColSpan = (columnLength, withMultipleSelection) => {
43
- return columnLength + (withMultipleSelection ? 2 : 1);
43
+ export const generateColSpan = (columnLength, withMultipleSelection, withRowDraggable) => {
44
+ return columnLength + (withMultipleSelection ? 2 : 1) + (withRowDraggable ? 1 : 0);
44
45
  };
@@ -25,7 +25,7 @@ export class VegaTableExpandRowColSpanController extends VegaSlimmer {
25
25
  * Update state colSpan
26
26
  */
27
27
  this.updateColSpan = () => {
28
- this.colSpan = generateColSpan(this.getVisibleColumnsNumber(), this.withMultipleSelection);
28
+ this.colSpan = generateColSpan(this.getVisibleColumnsNumber(), this.withMultipleSelection, this.withRowDraggable);
29
29
  };
30
30
  }
31
31
  /**
@@ -46,6 +46,12 @@ export class VegaTableExpandRowColSpanController extends VegaSlimmer {
46
46
  watchWithMultipleSelection() {
47
47
  this.updateColSpan();
48
48
  }
49
+ /**
50
+ * Update the expand row content col span when draggable state changed
51
+ */
52
+ watchWithRowDraggable() {
53
+ this.updateColSpan();
54
+ }
49
55
  /**
50
56
  * Get visual columns number, it will be changed by the breakpoints
51
57
  *
@@ -77,6 +83,9 @@ __decorate([
77
83
  __decorate([
78
84
  MapToComponentField()
79
85
  ], VegaTableExpandRowColSpanController.prototype, "withMultipleSelection", void 0);
86
+ __decorate([
87
+ MapToComponentField()
88
+ ], VegaTableExpandRowColSpanController.prototype, "withRowDraggable", void 0);
80
89
  __decorate([
81
90
  MapToComponentMethod('componentWillLoad')
82
91
  ], VegaTableExpandRowColSpanController.prototype, "componentWillLoad", null);
@@ -86,3 +95,6 @@ __decorate([
86
95
  __decorate([
87
96
  MapToComponentMethod('watchWithMultipleSelection')
88
97
  ], VegaTableExpandRowColSpanController.prototype, "watchWithMultipleSelection", null);
98
+ __decorate([
99
+ MapToComponentMethod('watchWithRowDraggable')
100
+ ], VegaTableExpandRowColSpanController.prototype, "watchWithRowDraggable", null);
@@ -29,6 +29,10 @@ export class VegaTableExpandRowStateController extends SubStateObserverSlimmer {
29
29
  }
30
30
  },
31
31
  },
32
+ {
33
+ subStateName: 'withRowDraggable',
34
+ parentStateName: 'rowDraggable',
35
+ },
32
36
  ],
33
37
  });
34
38
  }
@@ -39,6 +43,9 @@ __decorate([
39
43
  __decorate([
40
44
  MapToComponentField({ writable: true })
41
45
  ], VegaTableExpandRowStateController.prototype, "withMultipleSelection", void 0);
46
+ __decorate([
47
+ MapToComponentField({ writable: true })
48
+ ], VegaTableExpandRowStateController.prototype, "withRowDraggable", void 0);
42
49
  __decorate([
43
50
  MapToComponentField()
44
51
  ], VegaTableExpandRowStateController.prototype, "vegaTableExpandRowColSpanController", void 0);
@@ -49,6 +49,9 @@ export class VegaTableExpandRow {
49
49
  watchWithMultipleSelection() {
50
50
  methodPlaceholder();
51
51
  }
52
+ watchWithRowDraggable() {
53
+ methodPlaceholder();
54
+ }
52
55
  render() {
53
56
  slotPlaceholder(h("slot", null));
54
57
  return sanitizeVegaComponent(h(Host, null, this.vegaTableExpandRowRenderer.render()), this.host);
@@ -106,6 +109,7 @@ export class VegaTableExpandRow {
106
109
  static get states() { return {
107
110
  "currentBreakpoint": {},
108
111
  "withMultipleSelection": {},
112
+ "withRowDraggable": {},
109
113
  "expanded": {},
110
114
  "checked": {},
111
115
  "colSpan": {}
@@ -117,6 +121,9 @@ export class VegaTableExpandRow {
117
121
  }, {
118
122
  "propName": "withMultipleSelection",
119
123
  "methodName": "watchWithMultipleSelection"
124
+ }, {
125
+ "propName": "withRowDraggable",
126
+ "methodName": "watchWithRowDraggable"
120
127
  }]; }
121
128
  }
122
129
  __decorate([
@@ -16,8 +16,8 @@ export class VegaTableFootRowStateController extends SubStateObserverSlimmer {
16
16
  parent: 'vega-table',
17
17
  subStates: [
18
18
  {
19
- subStateName: 'expandable',
20
- parentStateName: 'rowExpandable',
19
+ subStateName: 'hasExpandableRow',
20
+ parentStateName: 'hasExpandableRow',
21
21
  },
22
22
  {
23
23
  subStateName: 'paddingX',
@@ -39,6 +39,10 @@ export class VegaTableFootRowStateController extends SubStateObserverSlimmer {
39
39
  subStateName: 'density',
40
40
  parentStateName: 'density',
41
41
  },
42
+ {
43
+ subStateName: 'draggable',
44
+ parentStateName: 'rowDraggable',
45
+ },
42
46
  ],
43
47
  });
44
48
  /**
@@ -74,4 +78,7 @@ __decorate([
74
78
  ], VegaTableFootRowStateController.prototype, "density", void 0);
75
79
  __decorate([
76
80
  MapToComponentField({ writable: true })
77
- ], VegaTableFootRowStateController.prototype, "expandable", void 0);
81
+ ], VegaTableFootRowStateController.prototype, "hasExpandableRow", void 0);
82
+ __decorate([
83
+ MapToComponentField({ writable: true })
84
+ ], VegaTableFootRowStateController.prototype, "draggable", void 0);
@@ -15,12 +15,16 @@ export class VegaTableFootRowRenderer extends VegaSlimmer {
15
15
  return h("td", { class: "vega-table-selection-column" });
16
16
  };
17
17
  this.renderFooterExpandableCell = () => {
18
- return this.expandable && h("td", { class: "vega-table-expand-action-column" });
18
+ return this.hasExpandableRow && h("td", { class: "vega-table-expand-action-column" });
19
+ };
20
+ this.renderFooterDraggableCell = () => {
21
+ return this.draggable && h("td", { class: "vega-table-draggable-column" });
19
22
  };
20
23
  }
21
24
  render() {
22
25
  return (h("tr", null,
23
26
  h("td", { style: { width: this.paddingX[0] } }),
27
+ this.renderFooterDraggableCell(),
24
28
  this.renderFooterSelectionCell(),
25
29
  h("slot", null),
26
30
  this.renderFooterExpandableCell(),
@@ -38,4 +42,7 @@ __decorate([
38
42
  ], VegaTableFootRowRenderer.prototype, "selectionType", void 0);
39
43
  __decorate([
40
44
  MapToComponentField()
41
- ], VegaTableFootRowRenderer.prototype, "expandable", void 0);
45
+ ], VegaTableFootRowRenderer.prototype, "hasExpandableRow", void 0);
46
+ __decorate([
47
+ MapToComponentField()
48
+ ], VegaTableFootRowRenderer.prototype, "draggable", void 0);
@@ -25,9 +25,9 @@ export class VegaTableFootRow {
25
25
  this.pageResizeObserverSlimmer = new PageResizeObserverSlimmer();
26
26
  this.currentBreakpoint = getCurrentBreakpoint();
27
27
  /**
28
- * Indicates whether the row is expandable.
28
+ * Indicates whether the table has a expandable row.
29
29
  */
30
- this.expandable = false;
30
+ this.hasExpandableRow = false;
31
31
  }
32
32
  render() {
33
33
  slotPlaceholder(h("slot", null));
@@ -46,10 +46,11 @@ export class VegaTableFootRow {
46
46
  }; }
47
47
  static get states() { return {
48
48
  "currentBreakpoint": {},
49
- "expandable": {},
49
+ "hasExpandableRow": {},
50
50
  "selectionType": {},
51
51
  "paddingX": {},
52
52
  "columnDivider": {},
53
+ "draggable": {},
53
54
  "density": {}
54
55
  }; }
55
56
  static get elementRef() { return "host"; }
@@ -35,6 +35,11 @@ export class VegaTableHead {
35
35
  this.tableHeadRef = ref;
36
36
  };
37
37
  }
38
+ connectedCallback() {
39
+ if (this.tableHeadRef && this.fixed) {
40
+ InternalVegaZIndexManager.setZIndex(this.tableHeadRef, 'base');
41
+ }
42
+ }
38
43
  disconnectedCallback() {
39
44
  InternalVegaZIndexManager.removeZIndex(this.tableHeadRef, 'base');
40
45
  }
@@ -17,8 +17,8 @@ export class VegaTableHeadRowStateController extends SubStateObserverSlimmer {
17
17
  parent: 'vega-table',
18
18
  subStates: [
19
19
  {
20
- subStateName: 'expandable',
21
- parentStateName: 'rowExpandable',
20
+ subStateName: 'hasExpandableRow',
21
+ parentStateName: 'hasExpandableRow',
22
22
  },
23
23
  {
24
24
  subStateName: 'paddingX',
@@ -59,6 +59,10 @@ export class VegaTableHeadRowStateController extends SubStateObserverSlimmer {
59
59
  this.isEmptyTable = currentData.length === 0;
60
60
  },
61
61
  },
62
+ {
63
+ subStateName: 'draggable',
64
+ parentStateName: 'rowDraggable',
65
+ },
62
66
  ],
63
67
  });
64
68
  /**
@@ -82,7 +86,7 @@ __decorate([
82
86
  ], VegaTableHeadRowStateController.prototype, "host", void 0);
83
87
  __decorate([
84
88
  MapToComponentField({ writable: true })
85
- ], VegaTableHeadRowStateController.prototype, "expandable", void 0);
89
+ ], VegaTableHeadRowStateController.prototype, "hasExpandableRow", void 0);
86
90
  __decorate([
87
91
  MapToComponentField({ writable: true })
88
92
  ], VegaTableHeadRowStateController.prototype, "selectionType", void 0);
@@ -101,3 +105,6 @@ __decorate([
101
105
  __decorate([
102
106
  MapToComponentField({ writable: true })
103
107
  ], VegaTableHeadRowStateController.prototype, "isEmptyTable", void 0);
108
+ __decorate([
109
+ MapToComponentField({ writable: true })
110
+ ], VegaTableHeadRowStateController.prototype, "draggable", void 0);