@globalpayments/vega 2.20.1 → 2.22.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 (327) hide show
  1. package/dist/cjs/{app-globals-f7f3c776.js → app-globals-a89a3aae.js} +4 -4
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-18814356.js → child-nodes-event-prevent-slimmer-5fc30c91.js} +2 -2
  3. package/dist/cjs/{component-usage-runtime-metrics-e3e92742.js → component-usage-runtime-metrics-a903ba26.js} +1 -1
  4. package/dist/cjs/{event-emit-slimmer-95dfc7c2.js → event-emit-slimmer-6abd05c3.js} +1 -1
  5. package/dist/cjs/{feature-flag-controller-dd0aaf67.js → feature-flag-controller-5f8b13f6.js} +1 -1
  6. package/dist/cjs/{form-field-controller-slimmer-db68a8da.js → form-field-controller-slimmer-1b7c9a92.js} +2 -2
  7. package/dist/cjs/{index-1299d729.js → index-09acd3c9.js} +7 -0
  8. package/dist/cjs/{index-bf98b054.js → index-fcf23682.js} +13 -0
  9. package/dist/cjs/index.cjs.js +4 -4
  10. package/dist/cjs/{internal-vega-event-manager-6ba0e3ab.js → internal-vega-event-manager-20ce2187.js} +2 -0
  11. package/dist/cjs/loader.cjs.js +7 -7
  12. package/dist/cjs/{mutation-observer-filters-95cb1596.js → mutation-observer-filters-79b60f28.js} +13 -0
  13. package/dist/cjs/{mutation-observer-slimmer-a54ddfb1.js → mutation-observer-slimmer-9cec684e.js} +1 -1
  14. package/dist/cjs/vega-accordion.cjs.entry.js +4 -4
  15. package/dist/cjs/vega-app-footer.cjs.entry.js +2 -2
  16. package/dist/cjs/vega-app-header-button.cjs.entry.js +7 -7
  17. package/dist/cjs/vega-backdrop.cjs.entry.js +2 -2
  18. package/dist/cjs/vega-banner.cjs.entry.js +6 -6
  19. package/dist/cjs/vega-bar-chart.cjs.entry.js +2 -2
  20. package/dist/cjs/vega-box.cjs.entry.js +2 -2
  21. package/dist/cjs/vega-breadcrumb.cjs.entry.js +9 -11
  22. package/dist/cjs/vega-button-circle.cjs.entry.js +7 -7
  23. package/dist/cjs/vega-button-group_2.cjs.entry.js +7 -7
  24. package/dist/cjs/vega-button-link.cjs.entry.js +8 -8
  25. package/dist/cjs/vega-button.cjs.entry.js +7 -7
  26. package/dist/cjs/vega-calendar_3.cjs.entry.js +55 -19
  27. package/dist/cjs/vega-card.cjs.entry.js +2 -2
  28. package/dist/cjs/vega-carousel.cjs.entry.js +4 -4
  29. package/dist/cjs/vega-checkbox_2.cjs.entry.js +10 -10
  30. package/dist/cjs/vega-chip.cjs.entry.js +7 -7
  31. package/dist/cjs/vega-color-picker.cjs.entry.js +7 -7
  32. package/dist/cjs/vega-combo-box.cjs.entry.js +10 -10
  33. package/dist/cjs/vega-counter-badge.cjs.entry.js +2 -2
  34. package/dist/cjs/vega-date-picker_2.cjs.entry.js +10 -10
  35. package/dist/cjs/vega-dialog_2.cjs.entry.js +7 -7
  36. package/dist/cjs/vega-divider.cjs.entry.js +2 -2
  37. package/dist/cjs/vega-dropdown_5.cjs.entry.js +8 -8
  38. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  39. package/dist/cjs/vega-field-error.cjs.entry.js +2 -2
  40. package/dist/cjs/vega-field-label.cjs.entry.js +7 -7
  41. package/dist/cjs/vega-flex.cjs.entry.js +4 -4
  42. package/dist/cjs/vega-font.cjs.entry.js +2 -2
  43. package/dist/cjs/vega-form.cjs.entry.js +10 -10
  44. package/dist/cjs/vega-grid.cjs.entry.js +2 -2
  45. package/dist/cjs/vega-hint.cjs.entry.js +2 -2
  46. package/dist/cjs/vega-icon.cjs.entry.js +2 -2
  47. package/dist/cjs/vega-image-uploader.cjs.entry.js +10 -10
  48. package/dist/cjs/vega-input-credit-card.cjs.entry.js +10 -10
  49. package/dist/cjs/vega-input-phone-number.cjs.entry.js +20 -16
  50. package/dist/cjs/vega-input-range.cjs.entry.js +10 -10
  51. package/dist/cjs/vega-input-select.cjs.entry.js +10 -10
  52. package/dist/cjs/vega-input.cjs.entry.js +26 -15
  53. package/dist/cjs/vega-item-toggle.cjs.entry.js +4 -4
  54. package/dist/cjs/vega-left-nav_5.cjs.entry.js +5 -5
  55. package/dist/cjs/vega-line-chart.cjs.entry.js +2 -2
  56. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +2 -2
  57. package/dist/cjs/vega-page-notification_2.cjs.entry.js +2 -2
  58. package/dist/cjs/vega-pagination.cjs.entry.js +7 -7
  59. package/dist/cjs/vega-pie-chart.cjs.entry.js +2 -2
  60. package/dist/cjs/vega-popover_2.cjs.entry.js +4 -4
  61. package/dist/cjs/vega-progress-tracker.cjs.entry.js +4 -4
  62. package/dist/cjs/vega-radio_2.cjs.entry.js +10 -10
  63. package/dist/cjs/vega-section-title.cjs.entry.js +2 -2
  64. package/dist/cjs/vega-segment-control.cjs.entry.js +4 -4
  65. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +807 -0
  66. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +10 -10
  67. package/dist/cjs/vega-signature-capture.cjs.entry.js +7 -7
  68. package/dist/cjs/{vega-skeleton-loader-controller-aa3e09d6.js → vega-skeleton-loader-controller-d52d9033.js} +2 -2
  69. package/dist/cjs/vega-skeleton.cjs.entry.js +2 -2
  70. package/dist/cjs/vega-slot-container.cjs.entry.js +2 -2
  71. package/dist/cjs/vega-stepper.cjs.entry.js +10 -10
  72. package/dist/cjs/vega-tab-group_2.cjs.entry.js +7 -7
  73. package/dist/cjs/vega-table_8.cjs.entry.js +98 -42
  74. package/dist/cjs/vega-text.cjs.entry.js +2 -2
  75. package/dist/cjs/vega-textarea.cjs.entry.js +10 -10
  76. package/dist/cjs/vega-time-picker_2.cjs.entry.js +10 -10
  77. package/dist/cjs/vega-toggle-switch.cjs.entry.js +4 -4
  78. package/dist/cjs/vega-tooltip_2.cjs.entry.js +2 -2
  79. package/dist/cjs/vega.cjs.js +7 -7
  80. package/dist/collection/collection-manifest.json +9 -1
  81. package/dist/collection/components/vega-breadcrumb/slimmers/controllers/vega-breadcrumb-click-controller.js +2 -4
  82. package/dist/collection/components/vega-button-link/vega-button-link.css +2 -0
  83. package/dist/collection/components/vega-calendar/vega-calendar-event/slimmers/controllers/vega-calendar-sub-state-controller.js +15 -1
  84. package/dist/collection/components/vega-calendar/vega-calendar-event/slimmers/renderers/vega-calendar-event-renderer.js +15 -10
  85. package/dist/collection/components/vega-calendar/vega-calendar-event/vega-calendar-event.js +3 -1
  86. package/dist/collection/components/vega-calendar/vega-calendar.js +37 -0
  87. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-mask-config-controller.js +1 -1
  88. package/dist/collection/components/vega-input/vega-input.css +4 -0
  89. package/dist/collection/components/vega-input/vega-input.js +4 -4
  90. package/dist/collection/components/vega-input-phone-number/slimmers/controllers/vega-input-phone-number-value-controller.js +8 -5
  91. package/dist/collection/components/vega-input-phone-number/slimmers/renderers/phone-number-input-renderer.js +1 -0
  92. package/dist/collection/components/vega-input-phone-number/vega-input-phone-number.js +1 -1
  93. package/dist/collection/components/vega-nav/vega-left-nav/vega-left-nav.css +0 -2
  94. package/dist/collection/components/vega-selection-chip/interface.js +1 -0
  95. package/dist/collection/components/vega-selection-chip/slimmers/controllers/vega-selection-chip-checked-cotroller.js +42 -0
  96. package/dist/collection/components/vega-selection-chip/slimmers/controllers/vega-selection-chip-show-error-controller.js +63 -0
  97. package/dist/collection/components/vega-selection-chip/slimmers/controllers/vega-selection-chip-state-controller.js +77 -0
  98. package/dist/collection/components/vega-selection-chip/slimmers/renderers/vega-selection-chip-renderer.js +102 -0
  99. package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/interface.js +1 -0
  100. package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/slimmers/controllers/vega-selection-chip-group-items-controller.js +164 -0
  101. package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/slimmers/controllers/vega-selection-chip-group-value-controller.js +68 -0
  102. package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/slimmers/renderers/vega-selection-chip-group-renderer.js +45 -0
  103. package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/vega-selection-chip-group.css +91 -0
  104. package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/vega-selection-chip-group.js +326 -0
  105. package/dist/collection/components/vega-selection-chip/vega-selection-chip.css +175 -0
  106. package/dist/collection/components/vega-selection-chip/vega-selection-chip.js +335 -0
  107. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-data-source-controller.js +1 -3
  108. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-sort-controller.js +36 -29
  109. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-sorter.js +41 -0
  110. package/dist/collection/components/vega-table/slimmers/renderers/vega-table-header-renderer.js +5 -1
  111. package/dist/collection/components/vega-table/test/vega-table-sorter.test.js +508 -0
  112. package/dist/collection/components/vega-table/vega-table.js +27 -0
  113. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +2 -0
  114. package/dist/collection/helpers/formatter/string-formatter/custom-formatter-strategy.js +16 -4
  115. package/dist/collection/helpers/formatter/test/string-formatter/custom-formatter-strategy.test.js +7 -2
  116. package/dist/collection/helpers/slimmers/mutation-observer/mutation-observer-filters.js +12 -0
  117. package/dist/collection/helpers/slimmers/mutation-observer/mutation-observer-slimmer.js +1 -1
  118. package/dist/collection/helpers/slimmers/mutation-observer/test/mutation-observer-slimmer.test.js +53 -1
  119. package/dist/collection/helpers/slimmers/runtime-metrics/create-public-api-runtime-metrics-slimmer.js +23 -0
  120. package/dist/collection/helpers/slimmers/runtime-metrics/public-api-runtime-metrics-slimmer-base.js +68 -0
  121. package/dist/collection/helpers/slimmers/runtime-metrics/test/public-api-runtime-metrics-slimmer-base.test.js +89 -0
  122. package/dist/collection/helpers/slimmers/test/component-usage-runtime-metrics.test.js +1 -5
  123. package/dist/collection/helpers/vega-telemetry-helper/test/vega-env-manager.test.js +1 -1
  124. package/dist/collection/helpers/vega-telemetry-helper/vega-env-manager.js +2 -2
  125. package/dist/collection/utils/e2e-utils.js +6 -2
  126. package/dist/collection/utils/test-utils.js +12 -0
  127. package/dist/collection/value-model-adapters/angular-ng-model-accessor-adapter.js +1 -0
  128. package/dist/collection/value-model-adapters/vue-component-v-model-adaptor.js +1 -0
  129. package/dist/esm/{app-globals-565328e2.js → app-globals-68551d56.js} +4 -4
  130. package/dist/esm/{child-nodes-event-prevent-slimmer-75851864.js → child-nodes-event-prevent-slimmer-00abe396.js} +2 -2
  131. package/dist/esm/{component-usage-runtime-metrics-ac372454.js → component-usage-runtime-metrics-eaffdd1e.js} +1 -1
  132. package/dist/esm/{event-emit-slimmer-929b3e70.js → event-emit-slimmer-46b254b4.js} +1 -1
  133. package/dist/esm/{feature-flag-controller-9818c025.js → feature-flag-controller-afaa4a79.js} +1 -1
  134. package/dist/esm/{form-field-controller-slimmer-b237bb58.js → form-field-controller-slimmer-19b99b7e.js} +2 -2
  135. package/dist/esm/{index-dc8f8d91.js → index-0f54aaaa.js} +13 -0
  136. package/dist/esm/{index-c3505689.js → index-187f71d1.js} +7 -0
  137. package/dist/esm/index.js +4 -4
  138. package/dist/esm/{internal-vega-event-manager-b0d04798.js → internal-vega-event-manager-ae6359d6.js} +2 -0
  139. package/dist/esm/loader.js +7 -7
  140. package/dist/esm/{mutation-observer-filters-a484f098.js → mutation-observer-filters-9086b5cc.js} +13 -1
  141. package/dist/esm/{mutation-observer-slimmer-a4dbad26.js → mutation-observer-slimmer-151b4b90.js} +1 -1
  142. package/dist/esm/vega-accordion.entry.js +4 -4
  143. package/dist/esm/vega-app-footer.entry.js +2 -2
  144. package/dist/esm/vega-app-header-button.entry.js +7 -7
  145. package/dist/esm/vega-backdrop.entry.js +2 -2
  146. package/dist/esm/vega-banner.entry.js +6 -6
  147. package/dist/esm/vega-bar-chart.entry.js +2 -2
  148. package/dist/esm/vega-box.entry.js +2 -2
  149. package/dist/esm/vega-breadcrumb.entry.js +9 -11
  150. package/dist/esm/vega-button-circle.entry.js +7 -7
  151. package/dist/esm/vega-button-group_2.entry.js +7 -7
  152. package/dist/esm/vega-button-link.entry.js +8 -8
  153. package/dist/esm/vega-button.entry.js +7 -7
  154. package/dist/esm/vega-calendar_3.entry.js +55 -19
  155. package/dist/esm/vega-card.entry.js +2 -2
  156. package/dist/esm/vega-carousel.entry.js +4 -4
  157. package/dist/esm/vega-checkbox_2.entry.js +10 -10
  158. package/dist/esm/vega-chip.entry.js +7 -7
  159. package/dist/esm/vega-color-picker.entry.js +7 -7
  160. package/dist/esm/vega-combo-box.entry.js +10 -10
  161. package/dist/esm/vega-counter-badge.entry.js +2 -2
  162. package/dist/esm/vega-date-picker_2.entry.js +10 -10
  163. package/dist/esm/vega-dialog_2.entry.js +7 -7
  164. package/dist/esm/vega-divider.entry.js +2 -2
  165. package/dist/esm/vega-dropdown_5.entry.js +8 -8
  166. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  167. package/dist/esm/vega-field-error.entry.js +2 -2
  168. package/dist/esm/vega-field-label.entry.js +7 -7
  169. package/dist/esm/vega-flex.entry.js +4 -4
  170. package/dist/esm/vega-font.entry.js +2 -2
  171. package/dist/esm/vega-form.entry.js +10 -10
  172. package/dist/esm/vega-grid.entry.js +2 -2
  173. package/dist/esm/vega-hint.entry.js +2 -2
  174. package/dist/esm/vega-icon.entry.js +2 -2
  175. package/dist/esm/vega-image-uploader.entry.js +10 -10
  176. package/dist/esm/vega-input-credit-card.entry.js +10 -10
  177. package/dist/esm/vega-input-phone-number.entry.js +20 -16
  178. package/dist/esm/vega-input-range.entry.js +10 -10
  179. package/dist/esm/vega-input-select.entry.js +10 -10
  180. package/dist/esm/vega-input.entry.js +26 -15
  181. package/dist/esm/vega-item-toggle.entry.js +4 -4
  182. package/dist/esm/vega-left-nav_5.entry.js +5 -5
  183. package/dist/esm/vega-line-chart.entry.js +2 -2
  184. package/dist/esm/vega-loader-wrapper_2.entry.js +2 -2
  185. package/dist/esm/vega-page-notification_2.entry.js +2 -2
  186. package/dist/esm/vega-pagination.entry.js +7 -7
  187. package/dist/esm/vega-pie-chart.entry.js +2 -2
  188. package/dist/esm/vega-popover_2.entry.js +4 -4
  189. package/dist/esm/vega-progress-tracker.entry.js +4 -4
  190. package/dist/esm/vega-radio_2.entry.js +10 -10
  191. package/dist/esm/vega-section-title.entry.js +2 -2
  192. package/dist/esm/vega-segment-control.entry.js +4 -4
  193. package/dist/esm/vega-selection-chip_2.entry.js +802 -0
  194. package/dist/esm/vega-selection-tile_2.entry.js +10 -10
  195. package/dist/esm/vega-signature-capture.entry.js +7 -7
  196. package/dist/esm/{vega-skeleton-loader-controller-7378a2e4.js → vega-skeleton-loader-controller-64cb8447.js} +2 -2
  197. package/dist/esm/vega-skeleton.entry.js +2 -2
  198. package/dist/esm/vega-slot-container.entry.js +2 -2
  199. package/dist/esm/vega-stepper.entry.js +10 -10
  200. package/dist/esm/vega-tab-group_2.entry.js +7 -7
  201. package/dist/esm/vega-table_8.entry.js +98 -42
  202. package/dist/esm/vega-text.entry.js +2 -2
  203. package/dist/esm/vega-textarea.entry.js +10 -10
  204. package/dist/esm/vega-time-picker_2.entry.js +10 -10
  205. package/dist/esm/vega-toggle-switch.entry.js +4 -4
  206. package/dist/esm/vega-tooltip_2.entry.js +2 -2
  207. package/dist/esm/vega.js +7 -7
  208. package/dist/types/components/vega-calendar/vega-calendar-event/slimmers/controllers/vega-calendar-sub-state-controller.d.ts +1 -0
  209. package/dist/types/components/vega-calendar/vega-calendar-event/slimmers/renderers/vega-calendar-event-renderer.d.ts +2 -1
  210. package/dist/types/components/vega-calendar/vega-calendar-event/vega-calendar-event.d.ts +1 -0
  211. package/dist/types/components/vega-calendar/vega-calendar.d.ts +11 -0
  212. package/dist/types/components/vega-input/types.d.ts +1 -0
  213. package/dist/types/components/vega-input/vega-input.d.ts +1 -1
  214. package/dist/types/components/vega-input-phone-number/slimmers/controllers/vega-input-phone-number-value-controller.d.ts +3 -2
  215. package/dist/types/components/vega-selection-chip/interface.d.ts +4 -0
  216. package/dist/types/components/vega-selection-chip/slimmers/controllers/vega-selection-chip-checked-cotroller.d.ts +23 -0
  217. package/dist/types/components/vega-selection-chip/slimmers/controllers/vega-selection-chip-show-error-controller.d.ts +31 -0
  218. package/dist/types/components/vega-selection-chip/slimmers/controllers/vega-selection-chip-state-controller.d.ts +13 -0
  219. package/dist/types/components/vega-selection-chip/slimmers/renderers/vega-selection-chip-renderer.d.ts +26 -0
  220. package/dist/types/components/vega-selection-chip/vega-selection-chip-group/interface.d.ts +1 -0
  221. package/dist/types/components/vega-selection-chip/vega-selection-chip-group/slimmers/controllers/vega-selection-chip-group-items-controller.d.ts +72 -0
  222. package/dist/types/components/vega-selection-chip/vega-selection-chip-group/slimmers/controllers/vega-selection-chip-group-value-controller.d.ts +29 -0
  223. package/dist/types/components/vega-selection-chip/vega-selection-chip-group/slimmers/renderers/vega-selection-chip-group-renderer.d.ts +15 -0
  224. package/dist/types/components/vega-selection-chip/vega-selection-chip-group/vega-selection-chip-group.d.ts +82 -0
  225. package/dist/types/components/vega-selection-chip/vega-selection-chip.d.ts +92 -0
  226. package/dist/types/components/vega-table/interface.d.ts +6 -0
  227. package/dist/types/components/vega-table/slimmers/controllers/vega-table-sort-controller.d.ts +4 -3
  228. package/dist/types/components/vega-table/slimmers/controllers/vega-table-sorter.d.ts +33 -0
  229. package/dist/types/components/vega-table/slimmers/renderers/vega-table-header-renderer.d.ts +1 -0
  230. package/dist/types/components/vega-table/test/vega-table-sorter.test.d.ts +1 -0
  231. package/dist/types/components/vega-table/vega-table.d.ts +9 -2
  232. package/dist/types/components.d.ts +209 -3
  233. package/dist/types/helpers/formatter/string-formatter/custom-formatter-strategy.d.ts +6 -3
  234. package/dist/types/helpers/slimmers/mutation-observer/mutation-observer-filters.d.ts +7 -0
  235. package/dist/types/helpers/slimmers/mutation-observer/mutation-observer-slimmer.d.ts +1 -1
  236. package/dist/types/helpers/slimmers/runtime-metrics/create-public-api-runtime-metrics-slimmer.d.ts +16 -0
  237. package/dist/types/helpers/slimmers/runtime-metrics/public-api-runtime-metrics-slimmer-base.d.ts +48 -0
  238. package/dist/types/helpers/slimmers/runtime-metrics/test/public-api-runtime-metrics-slimmer-base.test.d.ts +1 -0
  239. package/dist/types/types/components.type.d.ts +7 -0
  240. package/dist/types/utils/e2e-utils.d.ts +2 -0
  241. package/dist/types/utils/test-utils.d.ts +8 -0
  242. package/dist/vega/index.esm.js +1 -1
  243. package/dist/vega/{p-15604d96.entry.js → p-057cff9d.entry.js} +1 -1
  244. package/dist/vega/{p-22cffbcc.entry.js → p-05e5d161.entry.js} +1 -1
  245. package/dist/vega/p-1c298d5a.js +2 -0
  246. package/dist/vega/{p-0fdbffc4.entry.js → p-1c2dc0c1.entry.js} +1 -1
  247. package/dist/vega/{p-1496ae4a.entry.js → p-200a8fa5.entry.js} +1 -1
  248. package/dist/vega/{p-0629c827.entry.js → p-2049c795.entry.js} +1 -1
  249. package/dist/vega/{p-a6454c72.entry.js → p-20f2ba7a.entry.js} +1 -1
  250. package/dist/vega/{p-4cf6fea1.entry.js → p-22788bc0.entry.js} +1 -1
  251. package/dist/vega/{p-3a74436f.entry.js → p-2ecf49a3.entry.js} +1 -1
  252. package/dist/vega/{p-e9851b18.entry.js → p-35248678.entry.js} +1 -1
  253. package/dist/vega/p-35296720.entry.js +1 -0
  254. package/dist/vega/{p-fb7ca3e4.entry.js → p-354bb9b8.entry.js} +1 -1
  255. package/dist/vega/{p-f58e4e4a.entry.js → p-36a4ad8f.entry.js} +1 -1
  256. package/dist/vega/p-38d81bde.js +1 -0
  257. package/dist/vega/{p-a1235ae4.entry.js → p-3aa738f2.entry.js} +1 -1
  258. package/dist/vega/{p-ed0d4be8.entry.js → p-3c1d59d6.entry.js} +1 -1
  259. package/dist/vega/{p-d5c10af1.js → p-3e0299cd.js} +1 -1
  260. package/dist/vega/{p-394a4289.entry.js → p-3ed5adb1.entry.js} +1 -1
  261. package/dist/vega/{p-db129cbf.entry.js → p-3ef16d4e.entry.js} +1 -1
  262. package/dist/vega/{p-9c3ed69a.entry.js → p-46b8664a.entry.js} +1 -1
  263. package/dist/vega/{p-1d5f39a4.entry.js → p-4a704547.entry.js} +1 -1
  264. package/dist/vega/{p-4c919221.entry.js → p-4bdc66fd.entry.js} +1 -1
  265. package/dist/vega/{p-b211ca98.entry.js → p-52527dba.entry.js} +1 -1
  266. package/dist/vega/{p-20effa66.js → p-5608bf96.js} +1 -1
  267. package/dist/vega/{p-bc37ab37.entry.js → p-58a58cf3.entry.js} +1 -1
  268. package/dist/vega/{p-2113e8a0.entry.js → p-5b0811c0.entry.js} +1 -1
  269. package/dist/vega/{p-d7b21179.entry.js → p-5ee189ba.entry.js} +1 -1
  270. package/dist/vega/p-5f377954.js +1 -1
  271. package/dist/vega/{p-21688c09.entry.js → p-61226f5d.entry.js} +1 -1
  272. package/dist/vega/{p-a8f406e3.entry.js → p-62c1e269.entry.js} +1 -1
  273. package/dist/vega/{p-9fc2882a.js → p-6574c0e8.js} +1 -1
  274. package/dist/vega/{p-cbb1c0a7.entry.js → p-680be8f6.entry.js} +1 -1
  275. package/dist/vega/{p-a32d7542.entry.js → p-6b365ba6.entry.js} +1 -1
  276. package/dist/vega/{p-8ddbf84b.entry.js → p-6bd76976.entry.js} +1 -1
  277. package/dist/vega/{p-c1e103da.entry.js → p-6e8cf962.entry.js} +1 -1
  278. package/dist/vega/{p-cee7b0e6.entry.js → p-702910ff.entry.js} +1 -1
  279. package/dist/vega/{p-3856bf46.entry.js → p-71cfc8da.entry.js} +1 -1
  280. package/dist/vega/p-731bd18d.entry.js +1 -0
  281. package/dist/vega/{p-0a157187.entry.js → p-76acd56a.entry.js} +1 -1
  282. package/dist/vega/{p-13893eed.entry.js → p-76f7907b.entry.js} +1 -1
  283. package/dist/vega/{p-68ead15a.entry.js → p-7b867084.entry.js} +1 -1
  284. package/dist/vega/{p-6d7fa33c.entry.js → p-80804da8.entry.js} +1 -1
  285. package/dist/vega/{p-6aab349d.entry.js → p-82f9b832.entry.js} +1 -1
  286. package/dist/vega/{p-10456650.entry.js → p-84a7e59f.entry.js} +1 -1
  287. package/dist/vega/{p-33f260f6.entry.js → p-88d63e07.entry.js} +1 -1
  288. package/dist/vega/{p-bb63021c.entry.js → p-8be8e237.entry.js} +1 -1
  289. package/dist/vega/{p-507d3a25.js → p-8cdbfbc1.js} +1 -1
  290. package/dist/vega/p-91c9f45d.entry.js +1 -0
  291. package/dist/vega/{p-4dc711c1.js → p-96de336a.js} +1 -1
  292. package/dist/vega/{p-b8e45e21.entry.js → p-97b69994.entry.js} +1 -1
  293. package/dist/vega/{p-19aa73b5.entry.js → p-9bda5809.entry.js} +1 -1
  294. package/dist/vega/{p-e48c71be.entry.js → p-9e744f92.entry.js} +1 -1
  295. package/dist/vega/{p-faf4cfd8.entry.js → p-a32643e3.entry.js} +1 -1
  296. package/dist/vega/{p-a8b216c0.entry.js → p-a3b57e9e.entry.js} +1 -1
  297. package/dist/vega/{p-c506420f.entry.js → p-aad984b2.entry.js} +1 -1
  298. package/dist/vega/{p-59011d75.entry.js → p-ae431236.entry.js} +1 -1
  299. package/dist/vega/p-af5d5b0f.entry.js +1 -0
  300. package/dist/vega/{p-8f13530c.entry.js → p-afd75854.entry.js} +1 -1
  301. package/dist/vega/{p-7b2315b5.entry.js → p-b9a121d3.entry.js} +1 -1
  302. package/dist/vega/p-be15ec5b.entry.js +1 -0
  303. package/dist/vega/{p-55255602.entry.js → p-c227e167.entry.js} +1 -1
  304. package/dist/vega/{p-639fa6c7.js → p-c677778e.js} +1 -1
  305. package/dist/vega/{p-9d58efb1.entry.js → p-c8b25f79.entry.js} +1 -1
  306. package/dist/vega/{p-788aea0f.entry.js → p-c95ea3b3.entry.js} +1 -1
  307. package/dist/vega/{p-6cc1716b.entry.js → p-c9880e7e.entry.js} +1 -1
  308. package/dist/vega/{p-12e34614.entry.js → p-ccd05ec5.entry.js} +1 -1
  309. package/dist/vega/{p-af4e1120.entry.js → p-d2f63287.entry.js} +1 -1
  310. package/dist/vega/{p-b32611f0.js → p-d5d136a5.js} +1 -1
  311. package/dist/vega/{p-d5e0c79c.entry.js → p-dc264664.entry.js} +1 -1
  312. package/dist/vega/{p-ca905ecc.entry.js → p-e0781825.entry.js} +1 -1
  313. package/dist/vega/{p-1e7118b1.entry.js → p-e39f9907.entry.js} +1 -1
  314. package/dist/vega/{p-fbd75ce7.entry.js → p-e3a70db2.entry.js} +1 -1
  315. package/dist/vega/{p-c4542d96.js → p-e90bae84.js} +1 -1
  316. package/dist/vega/p-ef0c67c2.js +1 -0
  317. package/dist/vega/{p-c0842b6c.entry.js → p-ef26140a.entry.js} +1 -1
  318. package/dist/vega/{p-fd58f10a.js → p-fcd74048.js} +1 -1
  319. package/dist/vega/vega.esm.js +1 -1
  320. package/package.json +2 -2
  321. package/dist/vega/p-3f20d9f0.js +0 -1
  322. package/dist/vega/p-8be4196f.entry.js +0 -1
  323. package/dist/vega/p-9777b1c1.js +0 -2
  324. package/dist/vega/p-a1557df0.entry.js +0 -1
  325. package/dist/vega/p-c216dfc3.js +0 -1
  326. package/dist/vega/p-cfdf4a95.entry.js +0 -1
  327. package/dist/vega/p-e7da829b.entry.js +0 -1
@@ -0,0 +1,335 @@
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 { Component, Prop, Element, Event, State, Watch } from '@stencil/core';
8
+ import { sanitizeVegaComponent } from '../../utils/component';
9
+ import { InjectVegaGlobalSlimmer, InjectVegaSlimmer, methodPlaceholder, } from 'vega-slimmer/core';
10
+ import { VegaSelectionChipRenderer } from './slimmers/renderers/vega-selection-chip-renderer';
11
+ import { VegaSelectionChipCheckedController } from './slimmers/controllers/vega-selection-chip-checked-cotroller';
12
+ import { VegaSelectionChipStateController } from './slimmers/controllers/vega-selection-chip-state-controller';
13
+ import { VegaSelectionChipShowErrorController } from './slimmers/controllers/vega-selection-chip-show-error-controller';
14
+ import { VegaComponentUsageRuntimeMetricsSlimmer } from '../../helpers/slimmers/component-usage-runtime-metrics';
15
+ import { PageResizeObserverSlimmer } from '../../helpers/slimmers/page-resize-observer-slimmer';
16
+ import { getCurrentBreakpoint } from '../../utils/breakpoints';
17
+ import { VegaChange } from '../../helpers/event-manager/event-id/vega-event-id';
18
+ import { createEventEmitSlimmer, } from '../../helpers/event-manager/slimmers/event-emit-slimmer';
19
+ export class VegaSelectionChip {
20
+ constructor() {
21
+ this.globalSlimmers = {};
22
+ this.renderer = new VegaSelectionChipRenderer();
23
+ this.checkedController = new VegaSelectionChipCheckedController();
24
+ this.stateController = new VegaSelectionChipStateController();
25
+ this.showErrorController = new VegaSelectionChipShowErrorController();
26
+ this.pageResizeObserverSlimmer = new PageResizeObserverSlimmer();
27
+ this.vegaComponentUsageRuntimeMetricsSlimmer = new VegaComponentUsageRuntimeMetricsSlimmer();
28
+ this.changeEventEmitter = createEventEmitSlimmer(VegaSelectionChip, VegaChange);
29
+ /**
30
+ * Indicates whether the parent selection chip group shows error message.
31
+ */
32
+ this.showError = false;
33
+ this.currentBreakpoint = getCurrentBreakpoint();
34
+ /**
35
+ * Specifies the label or title for the selection chip.
36
+ * It provides descriptive text that helps identify
37
+ * the purpose of the selection chip.
38
+ */
39
+ this.label = '';
40
+ /**
41
+ * Specifies the size of the selection chip.
42
+ */
43
+ this.size = 'medium';
44
+ /**
45
+ * Determines the rendering style for the selection chip.
46
+ */
47
+ this.variant = 'text';
48
+ /**
49
+ * Indicates if the selection chip is disabled.
50
+ */
51
+ /* eslint-disable @stencil/strict-mutable */
52
+ this.disabled = false;
53
+ /**
54
+ * Defines the display behavior of the selection chip.
55
+ * This property controls how the chip is presented
56
+ * in relation to surrounding elements.
57
+ */
58
+ this.block = false;
59
+ /**
60
+ * Defines the background color of the swatch.
61
+ * It accepts a string value representing a valid
62
+ * background color token,
63
+ * which customizes the chip appearance.
64
+ */
65
+ this.swatchColor = 'bg-status-info';
66
+ }
67
+ watchSize() {
68
+ methodPlaceholder();
69
+ }
70
+ componentWillRender() {
71
+ methodPlaceholder();
72
+ }
73
+ render() {
74
+ return sanitizeVegaComponent(this.renderer.render(), this.host);
75
+ }
76
+ static get is() { return "vega-selection-chip"; }
77
+ static get encapsulation() { return "shadow"; }
78
+ static get originalStyleUrls() { return {
79
+ "$": ["vega-selection-chip.scss"]
80
+ }; }
81
+ static get styleUrls() { return {
82
+ "$": ["vega-selection-chip.css"]
83
+ }; }
84
+ static get properties() { return {
85
+ "label": {
86
+ "type": "string",
87
+ "mutable": false,
88
+ "complexType": {
89
+ "original": "string",
90
+ "resolved": "string",
91
+ "references": {}
92
+ },
93
+ "required": false,
94
+ "optional": false,
95
+ "docs": {
96
+ "tags": [],
97
+ "text": "Specifies the label or title for the selection chip.\nIt provides descriptive text that helps identify\n the purpose of the selection chip."
98
+ },
99
+ "attribute": "label",
100
+ "reflect": false,
101
+ "defaultValue": "''"
102
+ },
103
+ "size": {
104
+ "type": "string",
105
+ "mutable": false,
106
+ "complexType": {
107
+ "original": "ResponsiveType<VegaSelectionChipSize>",
108
+ "resolved": "\"extra-small\" | \"large\" | \"medium\" | \"small\" | { S?: VegaSelectionChipSize; M?: VegaSelectionChipSize; L?: VegaSelectionChipSize; XL?: VegaSelectionChipSize; default?: VegaSelectionChipSize; }",
109
+ "references": {
110
+ "ResponsiveType": {
111
+ "location": "import",
112
+ "path": "../../types/ui.type"
113
+ },
114
+ "VegaSelectionChipSize": {
115
+ "location": "import",
116
+ "path": "./interface"
117
+ }
118
+ }
119
+ },
120
+ "required": false,
121
+ "optional": false,
122
+ "docs": {
123
+ "tags": [],
124
+ "text": "Specifies the size of the selection chip."
125
+ },
126
+ "attribute": "size",
127
+ "reflect": false,
128
+ "defaultValue": "'medium'"
129
+ },
130
+ "variant": {
131
+ "type": "string",
132
+ "mutable": false,
133
+ "complexType": {
134
+ "original": "VegaSelectionChipVariant",
135
+ "resolved": "\"swatch\" | \"text\"",
136
+ "references": {
137
+ "VegaSelectionChipVariant": {
138
+ "location": "import",
139
+ "path": "./interface"
140
+ }
141
+ }
142
+ },
143
+ "required": false,
144
+ "optional": false,
145
+ "docs": {
146
+ "tags": [],
147
+ "text": "Determines the rendering style for the selection chip."
148
+ },
149
+ "attribute": "variant",
150
+ "reflect": false,
151
+ "defaultValue": "'text'"
152
+ },
153
+ "disabled": {
154
+ "type": "boolean",
155
+ "mutable": true,
156
+ "complexType": {
157
+ "original": "boolean",
158
+ "resolved": "boolean",
159
+ "references": {}
160
+ },
161
+ "required": false,
162
+ "optional": false,
163
+ "docs": {
164
+ "tags": [],
165
+ "text": "Indicates if the selection chip is disabled."
166
+ },
167
+ "attribute": "disabled",
168
+ "reflect": false,
169
+ "defaultValue": "false"
170
+ },
171
+ "checked": {
172
+ "type": "boolean",
173
+ "mutable": true,
174
+ "complexType": {
175
+ "original": "boolean",
176
+ "resolved": "boolean",
177
+ "references": {}
178
+ },
179
+ "required": false,
180
+ "optional": false,
181
+ "docs": {
182
+ "tags": [],
183
+ "text": "Determines if the selection chip is checked."
184
+ },
185
+ "attribute": "checked",
186
+ "reflect": true
187
+ },
188
+ "block": {
189
+ "type": "boolean",
190
+ "mutable": false,
191
+ "complexType": {
192
+ "original": "boolean",
193
+ "resolved": "boolean",
194
+ "references": {}
195
+ },
196
+ "required": false,
197
+ "optional": false,
198
+ "docs": {
199
+ "tags": [],
200
+ "text": "Defines the display behavior of the selection chip.\nThis property controls how the chip is presented\n in relation to surrounding elements."
201
+ },
202
+ "attribute": "block",
203
+ "reflect": false,
204
+ "defaultValue": "false"
205
+ },
206
+ "disabledTooltip": {
207
+ "type": "unknown",
208
+ "mutable": false,
209
+ "complexType": {
210
+ "original": "VegaSelectionChipTooltipProps",
211
+ "resolved": "{ alignment?: ElementAppenderAlignmentType; maxWidth?: ResponsiveType<SizeType>; minWidth?: ResponsiveType<SizeType>; placement?: ElementAppenderPlacementType; positionRelativeTo?: string; size?: ResponsiveType<SizeType>; trigger?: \"click\" | \"hover\" | \"none\"; content?: string; disableInteractive?: boolean; text?: string; }",
212
+ "references": {
213
+ "VegaSelectionChipTooltipProps": {
214
+ "location": "import",
215
+ "path": "./interface"
216
+ }
217
+ }
218
+ },
219
+ "required": false,
220
+ "optional": false,
221
+ "docs": {
222
+ "tags": [],
223
+ "text": "Specifies the tooltip displayed for the selection chip\n when it is in a disabled state.\nThis provides additional context or information about the chip's\n functionality or reason for being disabled."
224
+ }
225
+ },
226
+ "swatchColor": {
227
+ "type": "string",
228
+ "mutable": false,
229
+ "complexType": {
230
+ "original": "BackgroundColorsTokenType",
231
+ "resolved": "\"bg-brand\" | \"bg-page\" | \"bg-primary\" | \"bg-secondary\" | \"bg-tertiary\" | \"bg-quaternary\" | \"bg-inverted-primary\" | \"bg-inverted-secondary\" | \"bg-inverted-tertiary\" | \"bg-inverted-quaternary\" | \"bg-action\" | \"bg-action-hover\" | \"bg-action-focus\" | \"bg-action-active\" | \"bg-action-quaternary\" | \"bg-action-quaternary-hover\" | \"bg-action-quaternary-active\" | \"bg-action-secondary\" | \"bg-action-secondary-hover\" | \"bg-action-secondary-active\" | \"bg-action-tertiary\" | \"bg-action-tertiary-hover\" | \"bg-action-tertiary-active\" | \"bg-app-header\" | \"bg-backdrop-modal\" | \"bg-backdrop-popover\" | \"bg-backdrop-sidebar\" | \"bg-chip\" | \"bg-chip-hover\" | \"bg-chip-active\" | \"bg-danger\" | \"bg-danger-hover\" | \"bg-danger-focus\" | \"bg-danger-active\" | \"bg-danger-tertiary\" | \"bg-danger-tertiary-hover\" | \"bg-danger-tertiary-active\" | \"bg-disabled\" | \"bg-divider\" | \"bg-divider-secondary\" | \"bg-keypad-btn-active\" | \"bg-loading-progress\" | \"bg-loading-track\" | \"bg-segment-hover\" | \"bg-segment-control\" | \"bg-selected\" | \"bg-sidebar\" | \"bg-sidebar-icon\" | \"bg-sidebar-icon-hover\" | \"bg-sidebar-icon-selected\" | \"bg-sidebar-item-hover\" | \"bg-sidebar-item-selected\" | \"bg-site-footer\" | \"bg-site-footer-action\" | \"bg-site-footer-action-hover\" | \"bg-site-footer-action-active\" | \"bg-site-footer-field\" | \"bg-slider-handle\" | \"bg-status-error\" | \"bg-status-info\" | \"bg-status-success\" | \"bg-status-warning\" | \"bg-tab\" | \"bg-tab-hover\" | \"bg-tab-selected\" | \"bg-table-alt-row\" | \"bg-table-header\" | \"bg-table-row-hover\" | \"bg-table-row-selected-expanded\" | \"bg-table-selected-row\" | \"bg-textarea-count\" | \"bg-tile\" | \"bg-tile-hover\" | \"bg-tile-selected\" | \"bg-tile-selected-hover\" | \"bg-toggle-switch\" | \"bg-toggle-switch-hover\" | \"bg-toggle-switch-selected-disabled\" | \"bg-transparent\" | \"bg-accent1-primary\" | \"bg-accent1-secondary\" | \"bg-accent1-tertiary\" | \"bg-accent2-primary\" | \"bg-accent2-secondary\" | \"bg-accent2-tertiary\" | \"bg-accent3-primary\" | \"bg-accent3-secondary\" | \"bg-accent3-tertiary\" | \"bg-accent4-primary\" | \"bg-accent4-secondary\" | \"bg-accent4-tertiary\" | \"bg-accent5-primary\" | \"bg-accent5-secondary\" | \"bg-accent5-tertiary\" | \"bg-accent6-primary\" | \"bg-accent6-secondary\" | \"bg-accent6-tertiary\" | \"bg-accent7-primary\" | \"bg-accent7-secondary\" | \"bg-accent7-tertiary\" | \"bg-accent8-primary\" | \"bg-accent8-secondary\" | \"bg-accent8-tertiary\" | \"bg-accent9-primary\" | \"bg-accent9-secondary\" | \"bg-accent9-tertiary\" | \"bg-accent10-primary\" | \"bg-accent10-secondary\" | \"bg-accent10-tertiary\" | \"bg-date-picker-range\"",
232
+ "references": {
233
+ "BackgroundColorsTokenType": {
234
+ "location": "import",
235
+ "path": "../../types/design-token.type"
236
+ }
237
+ }
238
+ },
239
+ "required": false,
240
+ "optional": false,
241
+ "docs": {
242
+ "tags": [],
243
+ "text": "Defines the background color of the swatch.\nIt accepts a string value representing a valid\n background color token,\n which customizes the chip appearance."
244
+ },
245
+ "attribute": "swatch-color",
246
+ "reflect": false,
247
+ "defaultValue": "'bg-status-info'"
248
+ },
249
+ "value": {
250
+ "type": "string",
251
+ "mutable": false,
252
+ "complexType": {
253
+ "original": "string",
254
+ "resolved": "string",
255
+ "references": {}
256
+ },
257
+ "required": true,
258
+ "optional": false,
259
+ "docs": {
260
+ "tags": [],
261
+ "text": "Stores the value associated with the selection chip\n when it is checked or unchecked."
262
+ },
263
+ "attribute": "value",
264
+ "reflect": false
265
+ }
266
+ }; }
267
+ static get states() { return {
268
+ "showError": {},
269
+ "currentBreakpoint": {},
270
+ "selectType": {}
271
+ }; }
272
+ static get events() { return [{
273
+ "method": "vegaChange",
274
+ "name": "vegaChange",
275
+ "bubbles": true,
276
+ "cancelable": true,
277
+ "composed": true,
278
+ "docs": {
279
+ "tags": [],
280
+ "text": "An event emitter notifying changes in the value of the selection chip,\n whether triggered programmatically or through user interaction."
281
+ },
282
+ "complexType": {
283
+ "original": "string",
284
+ "resolved": "string",
285
+ "references": {}
286
+ }
287
+ }, {
288
+ "method": "change",
289
+ "name": "change",
290
+ "bubbles": true,
291
+ "cancelable": true,
292
+ "composed": true,
293
+ "docs": {
294
+ "tags": [{
295
+ "name": "eventSemantics",
296
+ "text": "namespace:native"
297
+ }],
298
+ "text": "An event emitter notifying changes in the value of the selection chip,\n whether triggered programmatically or through user interaction."
299
+ },
300
+ "complexType": {
301
+ "original": "string",
302
+ "resolved": "string",
303
+ "references": {}
304
+ }
305
+ }]; }
306
+ static get elementRef() { return "host"; }
307
+ static get watchers() { return [{
308
+ "propName": "size",
309
+ "methodName": "watchSize"
310
+ }]; }
311
+ }
312
+ __decorate([
313
+ InjectVegaGlobalSlimmer()
314
+ ], VegaSelectionChip.prototype, "globalSlimmers", void 0);
315
+ __decorate([
316
+ InjectVegaSlimmer()
317
+ ], VegaSelectionChip.prototype, "renderer", void 0);
318
+ __decorate([
319
+ InjectVegaSlimmer()
320
+ ], VegaSelectionChip.prototype, "checkedController", void 0);
321
+ __decorate([
322
+ InjectVegaSlimmer()
323
+ ], VegaSelectionChip.prototype, "stateController", void 0);
324
+ __decorate([
325
+ InjectVegaSlimmer()
326
+ ], VegaSelectionChip.prototype, "showErrorController", void 0);
327
+ __decorate([
328
+ InjectVegaSlimmer()
329
+ ], VegaSelectionChip.prototype, "pageResizeObserverSlimmer", void 0);
330
+ __decorate([
331
+ InjectVegaSlimmer()
332
+ ], VegaSelectionChip.prototype, "vegaComponentUsageRuntimeMetricsSlimmer", void 0);
333
+ __decorate([
334
+ InjectVegaSlimmer()
335
+ ], VegaSelectionChip.prototype, "changeEventEmitter", void 0);
@@ -133,9 +133,7 @@ export class VegaTableDataSourceController extends VegaSlimmer {
133
133
  ? this.columns.filter((column) => column.sorter && column.sorter !== 'event' && this.sortersMap.has(column.prop))
134
134
  : [];
135
135
  if (sortedColumns.length > 0) {
136
- const sortProp = sortedColumns[sortedColumns.length - 1].prop;
137
- const sortedOrder = this.sortersMap.get(sortProp).order;
138
- this.setCurrentData(this.vegaTableSortController.sortData(this.dataSource, sortProp, sortedOrder));
136
+ this.setCurrentData(this.vegaTableSortController.sortData(this.dataSource, Array.from(this.sortersMap.values())));
139
137
  }
140
138
  else {
141
139
  this.setCurrentData(this.dataSource);
@@ -6,32 +6,11 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
6
6
  };
7
7
  import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-slimmer/core';
8
8
  import { isNonNullable } from '../../../../types/type-guard';
9
+ import { VegaTableSorter } from './vega-table-sorter';
9
10
  /**
10
11
  * The sort controller for the vega-table
11
12
  */
12
13
  export class VegaTableSortController extends VegaSlimmer {
13
- constructor() {
14
- super(...arguments);
15
- /**
16
- * The method to sort the data by sorter which include prop name and order
17
- *
18
- * @param {VegaTableDataSourceItem[]} data - The source that will be sorted
19
- * @param {string} sortProp - The prop name of which prop you want to sort by
20
- * @param {VegaTableSortOrderType} sortOrder - The order of the sorter
21
- * @returns {VegaTableDataSourceItem[]} The sorted data source
22
- */
23
- this.sortData = (data, sortProp, sortOrder) => {
24
- const sorter = this.columns.find((column) => typeof column.sorter === 'function' && column.prop === sortProp).sorter;
25
- const cloneData = data.slice();
26
- if (!sortOrder) {
27
- return cloneData;
28
- }
29
- return cloneData.sort((a, b) => {
30
- const compareResult = sorter(a, b);
31
- return sortOrder === 'asc' ? compareResult : -compareResult;
32
- });
33
- };
34
- }
35
14
  /**
36
15
  * The callback of [watchColumns]{@link VegaTable.watchColumns}
37
16
  */
@@ -45,16 +24,23 @@ export class VegaTableSortController extends VegaSlimmer {
45
24
  * @param {VegaTableSortOrderType} nextSortOrder - The next sorter order
46
25
  */
47
26
  handleHeadSortClick(column, nextSortOrder) {
48
- if (this.sortersMap.has(column.prop)) {
49
- this.sortersMap.delete(column.prop);
27
+ if (this.sortConfig.type === 'single') {
28
+ this.sortersMap.clear();
29
+ }
30
+ if (!nextSortOrder) {
31
+ if (this.sortersMap.has(column.prop)) {
32
+ this.sortersMap.delete(column.prop);
33
+ }
50
34
  }
51
- if (nextSortOrder) {
52
- this.sortersMap.set(column.prop, { order: nextSortOrder, prop: column.prop });
35
+ else {
36
+ this.sortersMap.set(column.prop, new VegaTableSorter(column.prop, nextSortOrder, column.sorter));
53
37
  }
54
38
  if (column.sorter !== 'event') {
55
- this.vegaTableDataSourceController.setCurrentData(this.sortData(this.vegaTableDataSourceController.getDataSource(), column.prop, nextSortOrder));
39
+ this.vegaTableDataSourceController.setCurrentData(this.sortData(this.vegaTableDataSourceController.getDataSource(), Array.from(this.sortersMap.values())));
56
40
  }
57
- this.changeEventEmitter.emit({ sorters: [...this.sortersMap.values()] });
41
+ this.changeEventEmitter.emit({
42
+ sorters: Array.from(this.sortersMap.values()).map((s) => s.toExternalFormat()),
43
+ });
58
44
  }
59
45
  /**
60
46
  * Sync the default sort order from the columns
@@ -63,7 +49,25 @@ export class VegaTableSortController extends VegaSlimmer {
63
49
  this.columns
64
50
  .filter((column) => isNonNullable(column.sorter) && isNonNullable(column.sortOrder))
65
51
  .forEach((item) => {
66
- this.sortersMap.set(item.prop, { order: item.sortOrder, prop: item.prop });
52
+ this.sortersMap.set(item.prop, new VegaTableSorter(item.prop, item.sortOrder, item.sorter));
53
+ });
54
+ }
55
+ /**
56
+ * The method to sort the data by sorter which include prop name and order
57
+ *
58
+ * @param {VegaTableDataSourceItem[]} data - The source that will be sorted
59
+ * @param {VegaTableSorter[]} sorters - array of sorters ordered by sequence of columns to be sorted
60
+ * @returns {VegaTableDataSourceItem[]} The sorted data source
61
+ */
62
+ sortData(data, sorters) {
63
+ return [...data].sort((a, b) => {
64
+ for (const sorter of sorters) {
65
+ const result = sorter.sort(a, b);
66
+ if (isNonNullable(result)) {
67
+ return result;
68
+ }
69
+ }
70
+ return 0;
67
71
  });
68
72
  }
69
73
  }
@@ -79,6 +83,9 @@ __decorate([
79
83
  __decorate([
80
84
  MapToComponentField()
81
85
  ], VegaTableSortController.prototype, "vegaTableDataSourceController", void 0);
86
+ __decorate([
87
+ MapToComponentField()
88
+ ], VegaTableSortController.prototype, "sortConfig", void 0);
82
89
  __decorate([
83
90
  MapToComponentMethod('watchColumns')
84
91
  ], VegaTableSortController.prototype, "watchColumns", null);
@@ -0,0 +1,41 @@
1
+ /**
2
+ * Vega Table Sorter
3
+ * This is a helper class for sorting table data based on defined columns to be sorted
4
+ * Supports multi-column sorting
5
+ */
6
+ export class VegaTableSorter {
7
+ constructor(prop, order, sorter) {
8
+ this.prop = prop;
9
+ this.order = order;
10
+ this.sorter = sorter;
11
+ }
12
+ /**
13
+ * Sort utility
14
+ *
15
+ * @param {VegaTableDataSourceItem} a column value
16
+ * @param {VegaTableDataSourceItem} b column value
17
+ * @returns {Nullable<number>} compare result
18
+ */
19
+ sort(a, b) {
20
+ const compareResult = this.sorter(a, b);
21
+ if (compareResult !== 0) {
22
+ return this.order === 'asc' ? compareResult : -compareResult;
23
+ }
24
+ }
25
+ /**
26
+ * Get params from sorter object for external use
27
+ *
28
+ * @returns {{VegaTableSorterType}} sorter prop and order
29
+ */
30
+ toExternalFormat() {
31
+ return { prop: this.prop, order: this.order };
32
+ }
33
+ /**
34
+ * Get sorter order value
35
+ *
36
+ * @returns {{VegaTableSortOrderType}} sorter order
37
+ */
38
+ getSortOrder() {
39
+ return this.order;
40
+ }
41
+ }
@@ -13,7 +13,8 @@ export class VegaTableHeaderRenderer extends VegaSlimmer {
13
13
  super(...arguments);
14
14
  this.renderHeaderColumnCells = () => {
15
15
  return this.columns.map((column) => {
16
- return (h("vega-table-head-cell", { key: column.key || column.prop, textAlign: column.align, sorter: column.sorter, sortOrder: column.sortOrder, breakpoint: column.breakpoint,
16
+ var _a;
17
+ return (h("vega-table-head-cell", { key: column.key || column.prop, textAlign: column.align, sorter: column.sorter, sortOrder: (_a = this.sortersMap.get(column.prop)) === null || _a === void 0 ? void 0 : _a.getSortOrder(), breakpoint: column.breakpoint,
17
18
  /* eslint-disable-next-line react/jsx-no-bind */
18
19
  ref: (ref) => {
19
20
  DomNodeSubjectObserverFactory.addUniqueObserverToNode(ref, VegaClick, (input) => {
@@ -33,6 +34,9 @@ export class VegaTableHeaderRenderer extends VegaSlimmer {
33
34
  __decorate([
34
35
  MapToComponentField()
35
36
  ], VegaTableHeaderRenderer.prototype, "showHeader", void 0);
37
+ __decorate([
38
+ MapToComponentField()
39
+ ], VegaTableHeaderRenderer.prototype, "sortersMap", void 0);
36
40
  __decorate([
37
41
  MapToComponentField()
38
42
  ], VegaTableHeaderRenderer.prototype, "columns", void 0);