@globalpayments/vega 2.22.0 → 2.24.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 (486) hide show
  1. package/dist/cjs/{app-globals-a89a3aae.js → app-globals-f3d3333f.js} +7 -27
  2. package/dist/cjs/{change-manager-ed04784c.js → change-manager-a297e4d2.js} +1 -1
  3. package/dist/cjs/{child-nodes-event-prevent-slimmer-5fc30c91.js → child-nodes-event-prevent-slimmer-8daa650c.js} +3 -3
  4. package/dist/cjs/{child-nodes-notify-observer-slimmer-2f21e0a1.js → child-nodes-notify-observer-slimmer-ce6eb329.js} +4 -4
  5. package/dist/cjs/{component-c3bbaf20.js → component-73a88c4e.js} +1 -1
  6. package/dist/cjs/{component-global-style-slimmer-bb190eb6.js → component-global-style-slimmer-6749808c.js} +1 -1
  7. package/dist/cjs/{component-usage-runtime-metrics-a903ba26.js → component-usage-runtime-metrics-1ee24991.js} +2 -2
  8. package/dist/cjs/create-public-api-runtime-metrics-slimmer-d2d49ff5.js +171 -0
  9. package/dist/cjs/{date-b62fe96f.js → date-0a6bb035.js} +1 -1
  10. package/dist/cjs/{deprecated-property-slimmer-d4733234.js → deprecated-property-slimmer-fc729fd9.js} +2 -2
  11. package/dist/cjs/{design-token-7eed47ca.js → design-token-0d26a52f.js} +3 -3
  12. package/dist/cjs/{dom-node-subject-observer-factory-465e5483.js → dom-node-subject-observer-factory-92271bc0.js} +1 -1
  13. package/dist/cjs/{dynamic-slimmer-d5ea4204.js → dynamic-slimmer-f31fdfd7.js} +1 -1
  14. package/dist/cjs/{element-appender-slimmer-2221d5f3.js → element-appender-slimmer-78fea430.js} +9 -9
  15. package/dist/cjs/{event-emit-slimmer-6abd05c3.js → event-emit-slimmer-af463dad.js} +5 -5
  16. package/dist/cjs/{feature-flag-controller-5f8b13f6.js → feature-flag-controller-0e5235e1.js} +7 -2
  17. package/dist/cjs/{form-field-controller-slimmer-1b7c9a92.js → form-field-controller-slimmer-60346732.js} +9 -9
  18. package/dist/cjs/{global-slimmer-registry-fdb2a041.js → global-slimmer-registry-b3bce7e0.js} +4 -0
  19. package/dist/cjs/icon-manager-2c3cf5ba.js +119 -0
  20. package/dist/cjs/{index-fcf23682.js → index-5792390b.js} +17 -10
  21. package/dist/cjs/index.cjs.js +18 -16
  22. package/dist/cjs/{inject-keyboard-manager-a6572de5.js → inject-keyboard-manager-e79a1ade.js} +1 -1
  23. package/dist/cjs/{internal-icon-manager-26e974c2.js → internal-icon-manager-3dd4faeb.js} +1 -1
  24. package/dist/cjs/{internal-vega-event-manager-20ce2187.js → internal-vega-event-manager-3e0a8ac5.js} +14 -3
  25. package/dist/cjs/{z-index-manager-792e5b7f.js → internal-vega-z-index-manager-23051df4.js} +4 -4
  26. package/dist/cjs/{keyboard-manager-802cc091.js → keyboard-manager-34b78600.js} +1 -1
  27. package/dist/cjs/{keyboard-manager-slimmer-b3e59267.js → keyboard-manager-slimmer-8e2d4b5d.js} +2 -2
  28. package/dist/cjs/loader.cjs.js +16 -15
  29. package/dist/cjs/{misc-0197689b.js → misc-3d30df91.js} +10 -0
  30. package/dist/cjs/{mutation-observer-slimmer-9cec684e.js → mutation-observer-slimmer-895b3d3e.js} +1 -1
  31. package/dist/cjs/{page-resize-observer-slimmer-190f6217.js → page-resize-observer-slimmer-1e404fc7.js} +1 -1
  32. package/dist/cjs/{responsive-format-facade-a5cfa51a.js → responsive-format-facade-f7e69718.js} +1 -1
  33. package/dist/cjs/{state-background-color-formatter-36538496.js → state-background-color-formatter-33ae4282.js} +1 -1
  34. package/dist/cjs/{static-remote-invocation-call-registry-d231186a.js → static-remote-invocation-call-registry-0ac4915d.js} +2 -2
  35. package/dist/cjs/{string-input-formatter-slimmer-22996088.js → string-input-formatter-slimmer-0ac6e18a.js} +21 -1
  36. package/dist/cjs/{sub-state-observer-slimmer-5907d8f1.js → sub-state-observer-slimmer-60be5379.js} +6 -6
  37. package/dist/cjs/{ui-fa68545a.js → ui-08f33116.js} +1 -1
  38. package/dist/cjs/vega-accordion.cjs.entry.js +17 -15
  39. package/dist/cjs/vega-app-footer.cjs.entry.js +3 -3
  40. package/dist/cjs/vega-app-header-button.cjs.entry.js +21 -19
  41. package/dist/cjs/vega-backdrop.cjs.entry.js +4 -4
  42. package/dist/cjs/vega-banner.cjs.entry.js +21 -16
  43. package/dist/cjs/vega-bar-chart.cjs.entry.js +2 -2
  44. package/dist/cjs/vega-box.cjs.entry.js +8 -8
  45. package/dist/cjs/vega-breadcrumb.cjs.entry.js +16 -16
  46. package/dist/cjs/vega-button-circle.cjs.entry.js +15 -15
  47. package/dist/cjs/vega-button-group_2.cjs.entry.js +15 -15
  48. package/dist/cjs/vega-button-link.cjs.entry.js +12 -12
  49. package/dist/cjs/vega-button.cjs.entry.js +23 -15
  50. package/dist/cjs/vega-calendar_3.cjs.entry.js +22 -21
  51. package/dist/cjs/vega-card.cjs.entry.js +7 -7
  52. package/dist/cjs/vega-carousel.cjs.entry.js +12 -12
  53. package/dist/cjs/vega-checkbox_2.cjs.entry.js +19 -19
  54. package/dist/cjs/vega-chip.cjs.entry.js +17 -17
  55. package/dist/cjs/vega-color-picker.cjs.entry.js +15 -15
  56. package/dist/cjs/vega-combo-box.cjs.entry.js +20 -20
  57. package/dist/cjs/vega-counter-badge.cjs.entry.js +3 -3
  58. package/dist/cjs/vega-date-picker_2.cjs.entry.js +32 -31
  59. package/dist/cjs/vega-dialog-controller-cb07e697.js +81 -0
  60. package/dist/cjs/vega-dialog_2.cjs.entry.js +67 -30
  61. package/dist/cjs/vega-divider.cjs.entry.js +7 -7
  62. package/dist/cjs/vega-dropdown_5.cjs.entry.js +24 -24
  63. package/dist/cjs/vega-env-manager-23b8b23c.js +2 -2
  64. package/dist/cjs/{vega-event-id-99d9343f.js → vega-event-id-4a73cd1a.js} +6 -0
  65. package/dist/cjs/vega-field-error.cjs.entry.js +4 -4
  66. package/dist/cjs/vega-field-label.cjs.entry.js +12 -12
  67. package/dist/cjs/vega-flex.cjs.entry.js +9 -9
  68. package/dist/cjs/vega-font.cjs.entry.js +8 -11
  69. package/dist/cjs/vega-form.cjs.entry.js +19 -19
  70. package/dist/cjs/vega-grid.cjs.entry.js +7 -7
  71. package/dist/cjs/vega-hint.cjs.entry.js +3 -3
  72. package/dist/cjs/vega-icon.cjs.entry.js +11 -8
  73. package/dist/cjs/vega-image-uploader.cjs.entry.js +21 -20
  74. package/dist/cjs/vega-input-credit-card.cjs.entry.js +21 -20
  75. package/dist/cjs/vega-input-phone-number.cjs.entry.js +22 -21
  76. package/dist/cjs/vega-input-range.cjs.entry.js +18 -18
  77. package/dist/cjs/vega-input-select.cjs.entry.js +22 -21
  78. package/dist/cjs/vega-input.cjs.entry.js +141 -35
  79. package/dist/cjs/{vega-internal-event-id-4d32e170.js → vega-internal-event-id-ac20ea74.js} +6 -0
  80. package/dist/cjs/vega-item-toggle.cjs.entry.js +10 -10
  81. package/dist/cjs/vega-left-nav_5.cjs.entry.js +26 -24
  82. package/dist/cjs/vega-line-chart.cjs.entry.js +3 -3
  83. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +6 -6
  84. package/dist/cjs/vega-page-notification_2.cjs.entry.js +7 -7
  85. package/dist/cjs/vega-pagination.cjs.entry.js +13 -13
  86. package/dist/cjs/vega-pie-chart.cjs.entry.js +3 -3
  87. package/dist/cjs/vega-popover_2.cjs.entry.js +16 -16
  88. package/dist/cjs/vega-progress-tracker.cjs.entry.js +11 -11
  89. package/dist/cjs/vega-radio_2.cjs.entry.js +21 -21
  90. package/dist/cjs/vega-section-title.cjs.entry.js +3 -3
  91. package/dist/cjs/vega-segment-control.cjs.entry.js +10 -10
  92. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +28 -23
  93. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +20 -20
  94. package/dist/cjs/vega-signature-capture.cjs.entry.js +21 -20
  95. package/dist/cjs/{vega-skeleton-loader-controller-d52d9033.js → vega-skeleton-loader-controller-82a44e64.js} +693 -24
  96. package/dist/cjs/vega-skeleton.cjs.entry.js +3 -3
  97. package/dist/cjs/vega-slot-container.cjs.entry.js +2 -2
  98. package/dist/cjs/vega-stepper.cjs.entry.js +18 -18
  99. package/dist/cjs/vega-tab-group_2.cjs.entry.js +14 -14
  100. package/dist/cjs/vega-table_8.cjs.entry.js +145 -39
  101. package/dist/cjs/vega-text.cjs.entry.js +4 -4
  102. package/dist/cjs/vega-textarea.cjs.entry.js +18 -18
  103. package/dist/cjs/vega-time-picker_2.cjs.entry.js +24 -24
  104. package/dist/cjs/vega-toggle-switch.cjs.entry.js +9 -9
  105. package/dist/cjs/vega-tooltip_2.cjs.entry.js +12 -12
  106. package/dist/cjs/vega.cjs.js +16 -15
  107. package/dist/collection/components/vega-banner/slimmers/renderers/vega-banner-renderer.js +4 -1
  108. package/dist/collection/components/vega-banner/vega-banner.css +7 -0
  109. package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-item-renderer.js +1 -1
  110. package/dist/collection/components/vega-breadcrumb/slimmers/renderers/vega-breadcrumb-renderer.js +1 -1
  111. package/dist/collection/components/vega-breadcrumb/vega-breadcrumb.css +36 -0
  112. package/dist/collection/components/vega-button/vega-button.js +18 -4
  113. package/dist/collection/components/vega-date-picker/slimmers/controllers/vega-date-picker-zindex-controller.js +5 -5
  114. package/dist/collection/components/vega-font/slimmers/controllers/vega-font-variant-controller.js +0 -3
  115. package/dist/collection/components/vega-input/slimmers/controllers/vega-input-mask-config-controller.js +19 -1
  116. package/dist/collection/components/vega-input/vega-input.js +53 -17
  117. package/dist/collection/components/vega-modal/slimmers/controllers/vega-nested-modal-controller.js +33 -0
  118. package/dist/collection/components/vega-modal/vega-modal.js +12 -7
  119. package/dist/collection/components/vega-nav/vega-left-nav/slimmers/controllers/vega-left-nav-zindex-controller.js +5 -5
  120. package/dist/collection/components/vega-progress-tracker/vega-progress-tracker.css +4 -1
  121. package/dist/collection/components/vega-selection-chip/vega-selection-chip-group/slimmers/controllers/vega-selection-chip-group-items-controller.js +8 -2
  122. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-expand-row-controller.js +13 -0
  123. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-render-mode-controller.js +1 -1
  124. package/dist/collection/components/vega-table/slimmers/controllers/vega-table-row-selection-controller.js +32 -3
  125. package/dist/collection/components/vega-table/vega-table-head/vega-table-head.js +4 -4
  126. package/dist/collection/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.js +15 -1
  127. package/dist/collection/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-click-controller.js +15 -2
  128. package/dist/collection/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-expand-controller.js +16 -3
  129. package/dist/collection/components/vega-table/vega-table-row/slimmers/renderers/vega-table-row-renderer.js +27 -3
  130. package/dist/collection/components/vega-table/vega-table.js +146 -5
  131. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/IconManager/runtime-metrics-payload-definition.js +62 -0
  132. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/ThemeManager/runtime-metrics-payload-definition.js +82 -0
  133. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/VegaDialogController/runtime-metrics-payload-definition.js +22 -0
  134. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/VegaEventManager/runtime-metrics-payload-definition.js +213 -0
  135. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/VegaLoaderController/runtime-metrics-payload-definition.js +42 -0
  136. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/VegaNotifyController/runtime-metrics-payload-definition.js +62 -0
  137. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/VegaSkeletonLoader/runtime-metrics-payload-definition.js +62 -0
  138. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/WaitForVegaHandler/runtime-metrics-payload-definition.js +22 -0
  139. package/dist/collection/constants/runtime-metrics-payload-definition/public-api/zindex-manager/runtime-metrics-payload-definition.js +43 -0
  140. package/dist/collection/constants/ui.js +3 -0
  141. package/dist/collection/helpers/common/index.js +2 -3
  142. package/dist/collection/helpers/common/test/wait-for-vega-handler.test.js +17 -0
  143. package/dist/collection/helpers/common/wait-for-vega-handler.js +32 -0
  144. package/dist/collection/helpers/dialog/test/vega-dialog-controller.test.js +30 -0
  145. package/dist/collection/helpers/dialog/vega-dialog-controller.js +16 -0
  146. package/dist/collection/helpers/event-manager/event-id/component-event-id-map.js +13 -2
  147. package/dist/collection/helpers/event-manager/event-id/vega-event-id.js +3 -0
  148. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +3 -0
  149. package/dist/collection/helpers/event-manager/test/vega-event-manager.test.js +59 -0
  150. package/dist/collection/helpers/event-manager/vega-event-manager.js +15 -0
  151. package/dist/collection/helpers/feature-control/feature-flags-map.js +5 -0
  152. package/dist/collection/helpers/formatter/string-formatter/number-mask-strategy.js +9 -9
  153. package/dist/collection/helpers/formatter/string-formatter/number-thousand-comma-strategy.js +69 -0
  154. package/dist/collection/helpers/formatter/test/string-formatter/number-thousand-comma-mask-strategy.test.js +30 -0
  155. package/dist/collection/helpers/icon/icon-manager.js +13 -0
  156. package/dist/collection/helpers/icon/test/icon-manager-controller.test.js +62 -0
  157. package/dist/collection/helpers/loading-indicator/tests/vega-loader-controller.test.js +90 -0
  158. package/dist/collection/helpers/loading-indicator/vega-loader-controller.js +52 -9
  159. package/dist/collection/helpers/notify/tests/vega-notify-controller.test.js +71 -0
  160. package/dist/collection/helpers/notify/vega-notify-controller.js +10 -4
  161. package/dist/collection/helpers/public-api.js +1 -0
  162. package/dist/collection/helpers/skeleton-loader/tests/vega-skeleton-loader-controller.test.js +55 -0
  163. package/dist/collection/helpers/skeleton-loader/vega-skeleton-loader-controller.js +13 -0
  164. package/dist/collection/helpers/slimmers/runtime-metrics/public-api-runtime-metrics-slimmer-base.js +23 -17
  165. package/dist/collection/helpers/slimmers/runtime-metrics/test/public-api-runtime-metrics-slimmer-base.test.js +56 -49
  166. package/dist/collection/helpers/slimmers/string-input-formatter-slimmer.js +20 -0
  167. package/dist/collection/helpers/slimmers/test/string-input-formatter-slimmer.test.js +62 -0
  168. package/dist/collection/helpers/theme/tests/theme-manager-controller.test.js +56 -0
  169. package/dist/collection/helpers/theme/theme-manager.js +15 -0
  170. package/dist/collection/helpers/ui/element-appender.js +4 -4
  171. package/dist/collection/helpers/vega-telemetry-helper/test/vega-env-manager.test.js +1 -1
  172. package/dist/collection/helpers/vega-telemetry-helper/vega-env-manager.js +2 -2
  173. package/dist/collection/helpers/zindex/{z-index-manager.js → internal-vega-z-index-manager.js} +2 -2
  174. package/dist/collection/helpers/zindex/test/{z-index-manager.test.js → internal-vega-z-index-manager.test.js} +31 -31
  175. package/dist/collection/helpers/zindex/test/vega-z-index-manager.test.js +20 -3
  176. package/dist/collection/helpers/zindex/vega-z-index-manager.js +17 -2
  177. package/dist/esm/{app-globals-68551d56.js → app-globals-b39cddb5.js} +7 -27
  178. package/dist/esm/{change-manager-8ddd9afe.js → change-manager-6a7eb88c.js} +1 -1
  179. package/dist/esm/{child-nodes-event-prevent-slimmer-00abe396.js → child-nodes-event-prevent-slimmer-eaa30e33.js} +3 -3
  180. package/dist/esm/{child-nodes-notify-observer-slimmer-816b063b.js → child-nodes-notify-observer-slimmer-c7b9d3b2.js} +4 -4
  181. package/dist/esm/{component-40be4402.js → component-cae24190.js} +1 -1
  182. package/dist/esm/{component-global-style-slimmer-120bf3c8.js → component-global-style-slimmer-000e0c11.js} +1 -1
  183. package/dist/esm/{component-usage-runtime-metrics-eaffdd1e.js → component-usage-runtime-metrics-b3f6ac79.js} +2 -2
  184. package/dist/esm/create-public-api-runtime-metrics-slimmer-dc9af92b.js +168 -0
  185. package/dist/esm/{date-97fc22a5.js → date-732bc749.js} +1 -1
  186. package/dist/esm/{deprecated-property-slimmer-4b33f760.js → deprecated-property-slimmer-43d184b3.js} +2 -2
  187. package/dist/esm/{design-token-ee750507.js → design-token-abcaac42.js} +3 -3
  188. package/dist/esm/{dom-node-subject-observer-factory-4c0f1048.js → dom-node-subject-observer-factory-926991a9.js} +1 -1
  189. package/dist/esm/{dynamic-slimmer-ef83e258.js → dynamic-slimmer-90b8af32.js} +1 -1
  190. package/dist/esm/{element-appender-slimmer-4b08a52e.js → element-appender-slimmer-f740e51a.js} +9 -9
  191. package/dist/esm/{event-emit-slimmer-46b254b4.js → event-emit-slimmer-e952b0b0.js} +5 -5
  192. package/dist/esm/{feature-flag-controller-afaa4a79.js → feature-flag-controller-9be58397.js} +7 -2
  193. package/dist/esm/{form-field-controller-slimmer-19b99b7e.js → form-field-controller-slimmer-374541fd.js} +9 -9
  194. package/dist/esm/{global-slimmer-registry-16fd7452.js → global-slimmer-registry-17c4efd4.js} +2 -1
  195. package/dist/esm/icon-manager-754cda3f.js +117 -0
  196. package/dist/esm/{index-0f54aaaa.js → index-0863eec6.js} +17 -10
  197. package/dist/esm/index.js +17 -16
  198. package/dist/esm/{inject-keyboard-manager-09215243.js → inject-keyboard-manager-d2a96e14.js} +1 -1
  199. package/dist/esm/{internal-icon-manager-ca269960.js → internal-icon-manager-ebe6ecf4.js} +1 -1
  200. package/dist/esm/{internal-vega-event-manager-ae6359d6.js → internal-vega-event-manager-c16aea68.js} +14 -3
  201. package/dist/esm/{z-index-manager-7179cb75.js → internal-vega-z-index-manager-0553458e.js} +4 -4
  202. package/dist/esm/{keyboard-manager-bf9284d2.js → keyboard-manager-477122e6.js} +1 -1
  203. package/dist/esm/{keyboard-manager-slimmer-8994b2bc.js → keyboard-manager-slimmer-b6072957.js} +2 -2
  204. package/dist/esm/loader.js +16 -15
  205. package/dist/esm/{misc-c21a85c9.js → misc-9fdbcfbb.js} +10 -1
  206. package/dist/esm/{mutation-observer-slimmer-151b4b90.js → mutation-observer-slimmer-6cef9549.js} +1 -1
  207. package/dist/esm/{page-resize-observer-slimmer-e2e9f248.js → page-resize-observer-slimmer-8caeb03b.js} +1 -1
  208. package/dist/esm/{responsive-format-facade-b96ca811.js → responsive-format-facade-2fcb7c02.js} +1 -1
  209. package/dist/esm/{state-background-color-formatter-d758cb7b.js → state-background-color-formatter-0f86292d.js} +1 -1
  210. package/dist/esm/{static-remote-invocation-call-registry-56d7e6b2.js → static-remote-invocation-call-registry-651b0701.js} +2 -2
  211. package/dist/esm/{string-input-formatter-slimmer-c5d422e3.js → string-input-formatter-slimmer-7170d6b3.js} +21 -1
  212. package/dist/esm/{sub-state-observer-slimmer-9a85cbd9.js → sub-state-observer-slimmer-106273ec.js} +6 -6
  213. package/dist/esm/{ui-28499aab.js → ui-153f4ae7.js} +1 -1
  214. package/dist/esm/vega-accordion.entry.js +17 -15
  215. package/dist/esm/vega-app-footer.entry.js +3 -3
  216. package/dist/esm/vega-app-header-button.entry.js +21 -19
  217. package/dist/esm/vega-backdrop.entry.js +4 -4
  218. package/dist/esm/vega-banner.entry.js +21 -16
  219. package/dist/esm/vega-bar-chart.entry.js +2 -2
  220. package/dist/esm/vega-box.entry.js +8 -8
  221. package/dist/esm/vega-breadcrumb.entry.js +16 -16
  222. package/dist/esm/vega-button-circle.entry.js +15 -15
  223. package/dist/esm/vega-button-group_2.entry.js +15 -15
  224. package/dist/esm/vega-button-link.entry.js +12 -12
  225. package/dist/esm/vega-button.entry.js +23 -15
  226. package/dist/esm/vega-calendar_3.entry.js +22 -21
  227. package/dist/esm/vega-card.entry.js +7 -7
  228. package/dist/esm/vega-carousel.entry.js +12 -12
  229. package/dist/esm/vega-checkbox_2.entry.js +19 -19
  230. package/dist/esm/vega-chip.entry.js +17 -17
  231. package/dist/esm/vega-color-picker.entry.js +15 -15
  232. package/dist/esm/vega-combo-box.entry.js +20 -20
  233. package/dist/esm/vega-counter-badge.entry.js +3 -3
  234. package/dist/esm/vega-date-picker_2.entry.js +32 -31
  235. package/dist/esm/vega-dialog-controller-fb1a8e21.js +79 -0
  236. package/dist/esm/vega-dialog_2.entry.js +67 -30
  237. package/dist/esm/vega-divider.entry.js +7 -7
  238. package/dist/esm/vega-dropdown_5.entry.js +24 -24
  239. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  240. package/dist/esm/{vega-event-id-13e22d1e.js → vega-event-id-6ac7ca51.js} +4 -1
  241. package/dist/esm/vega-field-error.entry.js +4 -4
  242. package/dist/esm/vega-field-label.entry.js +12 -12
  243. package/dist/esm/vega-flex.entry.js +9 -9
  244. package/dist/esm/vega-font.entry.js +8 -11
  245. package/dist/esm/vega-form.entry.js +19 -19
  246. package/dist/esm/vega-grid.entry.js +7 -7
  247. package/dist/esm/vega-hint.entry.js +3 -3
  248. package/dist/esm/vega-icon.entry.js +11 -8
  249. package/dist/esm/vega-image-uploader.entry.js +21 -20
  250. package/dist/esm/vega-input-credit-card.entry.js +21 -20
  251. package/dist/esm/vega-input-phone-number.entry.js +22 -21
  252. package/dist/esm/vega-input-range.entry.js +18 -18
  253. package/dist/esm/vega-input-select.entry.js +22 -21
  254. package/dist/esm/vega-input.entry.js +141 -35
  255. package/dist/esm/{vega-internal-event-id-3c684f5c.js → vega-internal-event-id-809b4ec8.js} +4 -1
  256. package/dist/esm/vega-item-toggle.entry.js +10 -10
  257. package/dist/esm/vega-left-nav_5.entry.js +26 -24
  258. package/dist/esm/vega-line-chart.entry.js +3 -3
  259. package/dist/esm/vega-loader-wrapper_2.entry.js +6 -6
  260. package/dist/esm/vega-page-notification_2.entry.js +7 -7
  261. package/dist/esm/vega-pagination.entry.js +13 -13
  262. package/dist/esm/vega-pie-chart.entry.js +3 -3
  263. package/dist/esm/vega-popover_2.entry.js +16 -16
  264. package/dist/esm/vega-progress-tracker.entry.js +11 -11
  265. package/dist/esm/vega-radio_2.entry.js +21 -21
  266. package/dist/esm/vega-section-title.entry.js +3 -3
  267. package/dist/esm/vega-segment-control.entry.js +10 -10
  268. package/dist/esm/vega-selection-chip_2.entry.js +28 -23
  269. package/dist/esm/vega-selection-tile_2.entry.js +20 -20
  270. package/dist/esm/vega-signature-capture.entry.js +21 -20
  271. package/dist/esm/{vega-skeleton-loader-controller-64cb8447.js → vega-skeleton-loader-controller-b9a8df78.js} +693 -25
  272. package/dist/esm/vega-skeleton.entry.js +3 -3
  273. package/dist/esm/vega-slot-container.entry.js +2 -2
  274. package/dist/esm/vega-stepper.entry.js +18 -18
  275. package/dist/esm/vega-tab-group_2.entry.js +14 -14
  276. package/dist/esm/vega-table_8.entry.js +145 -39
  277. package/dist/esm/vega-text.entry.js +4 -4
  278. package/dist/esm/vega-textarea.entry.js +18 -18
  279. package/dist/esm/vega-time-picker_2.entry.js +24 -24
  280. package/dist/esm/vega-toggle-switch.entry.js +9 -9
  281. package/dist/esm/vega-tooltip_2.entry.js +12 -12
  282. package/dist/esm/vega.js +16 -15
  283. package/dist/types/components/vega-button/vega-button.d.ts +7 -1
  284. package/dist/types/components/vega-font/slimmers/controllers/vega-font-variant-controller.d.ts +0 -1
  285. package/dist/types/components/vega-input/slimmers/controllers/vega-input-mask-config-controller.d.ts +8 -0
  286. package/dist/types/components/vega-input/types.d.ts +2 -0
  287. package/dist/types/components/vega-input/vega-input.d.ts +19 -6
  288. package/dist/types/components/vega-modal/slimmers/controllers/vega-nested-modal-controller.d.ts +17 -0
  289. package/dist/types/components/vega-modal/vega-modal.d.ts +2 -0
  290. package/dist/types/components/vega-table/interface.d.ts +32 -0
  291. package/dist/types/components/vega-table/slimmers/controllers/vega-table-expand-row-controller.d.ts +1 -0
  292. package/dist/types/components/vega-table/slimmers/controllers/vega-table-row-selection-controller.d.ts +4 -2
  293. package/dist/types/components/vega-table/vega-table-head-row/slimmers/renderers/vega-table-head-row-renderer.d.ts +1 -0
  294. package/dist/types/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-click-controller.d.ts +1 -0
  295. package/dist/types/components/vega-table/vega-table-row/slimmers/controllers/vega-table-row-expand-controller.d.ts +1 -0
  296. package/dist/types/components/vega-table/vega-table-row/slimmers/renderers/vega-table-row-renderer.d.ts +6 -1
  297. package/dist/types/components/vega-table/vega-table.d.ts +39 -6
  298. package/dist/types/components.d.ts +41 -6
  299. package/dist/types/constants/runtime-metrics-payload-definition/public-api/IconManager/runtime-metrics-payload-definition.d.ts +2 -0
  300. package/dist/types/constants/runtime-metrics-payload-definition/public-api/ThemeManager/runtime-metrics-payload-definition.d.ts +2 -0
  301. package/dist/types/constants/runtime-metrics-payload-definition/public-api/VegaDialogController/runtime-metrics-payload-definition.d.ts +2 -0
  302. package/dist/types/constants/runtime-metrics-payload-definition/public-api/VegaEventManager/runtime-metrics-payload-definition.d.ts +2 -0
  303. package/dist/types/constants/runtime-metrics-payload-definition/public-api/VegaLoaderController/runtime-metrics-payload-definition.d.ts +2 -0
  304. package/dist/types/constants/runtime-metrics-payload-definition/public-api/VegaNotifyController/runtime-metrics-payload-definition.d.ts +2 -0
  305. package/dist/types/constants/runtime-metrics-payload-definition/public-api/VegaSkeletonLoader/runtime-metrics-payload-definition.d.ts +2 -0
  306. package/dist/types/constants/runtime-metrics-payload-definition/public-api/WaitForVegaHandler/runtime-metrics-payload-definition.d.ts +2 -0
  307. package/dist/types/constants/runtime-metrics-payload-definition/public-api/zindex-manager/runtime-metrics-payload-definition.d.ts +2 -0
  308. package/dist/types/constants/ui.d.ts +1 -1
  309. package/dist/types/helpers/change-manager/subject/static-subject/static-subject-title.d.ts +1 -1
  310. package/dist/types/helpers/common/index.d.ts +1 -3
  311. package/dist/types/helpers/common/wait-for-vega-handler.d.ts +17 -0
  312. package/dist/types/helpers/dialog/vega-dialog-controller.d.ts +3 -0
  313. package/dist/types/helpers/event-manager/event-id/vega-event-id.d.ts +3 -0
  314. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +3 -0
  315. package/dist/types/helpers/event-manager/vega-event-manager.d.ts +2 -0
  316. package/dist/types/helpers/feature-control/feature-flag.d.ts +2 -1
  317. package/dist/types/helpers/formatter/string-formatter/number-mask-strategy.d.ts +14 -10
  318. package/dist/types/helpers/formatter/string-formatter/number-thousand-comma-strategy.d.ts +34 -0
  319. package/dist/types/helpers/formatter/test/string-formatter/number-thousand-comma-mask-strategy.test.d.ts +1 -0
  320. package/dist/types/helpers/icon/icon-manager.d.ts +2 -0
  321. package/dist/types/helpers/loading-indicator/vega-loader-controller.d.ts +13 -2
  322. package/dist/types/helpers/notify/vega-notify-controller.d.ts +2 -0
  323. package/dist/types/helpers/public-api.d.ts +1 -0
  324. package/dist/types/helpers/skeleton-loader/vega-skeleton-loader-controller.d.ts +2 -0
  325. package/dist/types/helpers/slimmers/runtime-metrics/public-api-runtime-metrics-slimmer-base.d.ts +5 -5
  326. package/dist/types/helpers/slimmers/string-input-formatter-slimmer.d.ts +7 -0
  327. package/dist/types/helpers/theme/theme-manager.d.ts +2 -0
  328. package/dist/types/helpers/zindex/{z-index-manager.d.ts → internal-vega-z-index-manager.d.ts} +2 -2
  329. package/dist/types/helpers/zindex/test/internal-vega-z-index-manager.test.d.ts +1 -0
  330. package/dist/types/helpers/zindex/vega-z-index-manager.d.ts +3 -1
  331. package/dist/types/types/components.type.d.ts +4 -1
  332. package/dist/types/vega-slimmer/src/common/symbols/decorator.d.ts +1 -0
  333. package/dist/types/vega-slimmer/src/decorators/inject-vega-telemetry-slimmer.d.ts +15 -0
  334. package/dist/types/vega-slimmer/vega-slimmer-core.d.ts +2 -0
  335. package/dist/vega/index.esm.js +1 -1
  336. package/dist/vega/{p-dc264664.entry.js → p-00c2d424.entry.js} +1 -1
  337. package/dist/vega/{p-6c92c2f5.js → p-00cc05ea.js} +1 -1
  338. package/dist/vega/p-0197e7ec.js +1 -0
  339. package/dist/vega/p-01c24f95.entry.js +1 -0
  340. package/dist/vega/{p-05e5d161.entry.js → p-03b95e44.entry.js} +1 -1
  341. package/dist/vega/{p-58a58cf3.entry.js → p-095a33d5.entry.js} +1 -1
  342. package/dist/vega/p-0e1f2227.entry.js +1 -0
  343. package/dist/vega/{p-3ef16d4e.entry.js → p-14c2a35c.entry.js} +1 -1
  344. package/dist/vega/p-150bc141.entry.js +1 -0
  345. package/dist/vega/{p-f36781c5.js → p-152393dd.js} +1 -1
  346. package/dist/vega/{p-e4aa214a.js → p-1b3a64f7.js} +1 -1
  347. package/dist/vega/{p-52527dba.entry.js → p-1e33c6e3.entry.js} +1 -1
  348. package/dist/vega/p-23ec14fe.js +1 -0
  349. package/dist/vega/p-25a86be4.entry.js +1 -0
  350. package/dist/vega/p-260f0697.entry.js +1 -0
  351. package/dist/vega/p-264380d1.entry.js +1 -0
  352. package/dist/vega/p-2a4455a5.js +1 -0
  353. package/dist/vega/{p-853f3963.js → p-2d0d575f.js} +1 -1
  354. package/dist/vega/{p-afd75854.entry.js → p-3738124f.entry.js} +1 -1
  355. package/dist/vega/{p-313cca9b.js → p-3a33d860.js} +1 -1
  356. package/dist/vega/{p-f97c9cdc.js → p-3a5145cc.js} +1 -1
  357. package/dist/vega/{p-702910ff.entry.js → p-3e8ec299.entry.js} +2 -2
  358. package/dist/vega/{p-1c2dc0c1.entry.js → p-3ff106bb.entry.js} +1 -1
  359. package/dist/vega/{p-200a8fa5.entry.js → p-40a61199.entry.js} +1 -1
  360. package/dist/vega/p-45de40d9.entry.js +1 -0
  361. package/dist/vega/{p-5b0811c0.entry.js → p-49df5129.entry.js} +1 -1
  362. package/dist/vega/p-4e593f9f.js +1 -0
  363. package/dist/vega/{p-80804da8.entry.js → p-5559c348.entry.js} +1 -1
  364. package/dist/vega/p-5915634b.js +1 -0
  365. package/dist/vega/p-5c5e7e9f.js +1 -0
  366. package/dist/vega/p-5f377954.js +1 -1
  367. package/dist/vega/{p-71cfc8da.entry.js → p-604acab8.entry.js} +1 -1
  368. package/dist/vega/{p-3e0299cd.js → p-61f6167c.js} +1 -1
  369. package/dist/vega/p-65c55bd3.entry.js +1 -0
  370. package/dist/vega/p-66098cf8.js +1 -0
  371. package/dist/vega/p-6a334573.js +1 -0
  372. package/dist/vega/p-6d47b1e7.entry.js +1 -0
  373. package/dist/vega/p-6e1ab235.js +1 -0
  374. package/dist/vega/{p-9bda5809.entry.js → p-73acb4f7.entry.js} +1 -1
  375. package/dist/vega/{p-62c1e269.entry.js → p-7ef10099.entry.js} +1 -1
  376. package/dist/vega/{p-76acd56a.entry.js → p-7fc7249c.entry.js} +1 -1
  377. package/dist/vega/p-810ba5c3.entry.js +1 -0
  378. package/dist/vega/{p-c95ea3b3.entry.js → p-816c0ad9.entry.js} +1 -1
  379. package/dist/vega/{p-8be8e237.entry.js → p-86e52877.entry.js} +1 -1
  380. package/dist/vega/{p-8960e876.js → p-883a939b.js} +1 -1
  381. package/dist/vega/{p-61226f5d.entry.js → p-89059ba9.entry.js} +1 -1
  382. package/dist/vega/p-89aa1286.entry.js +1 -0
  383. package/dist/vega/p-89e3a626.entry.js +1 -0
  384. package/dist/vega/{p-4a704547.entry.js → p-8b084bf9.entry.js} +1 -1
  385. package/dist/vega/p-8b25d84d.js +1 -0
  386. package/dist/vega/p-8b5d3a52.js +1 -0
  387. package/dist/vega/p-8d21ddb7.js +1 -0
  388. package/dist/vega/{p-6e8cf962.entry.js → p-8fc66414.entry.js} +1 -1
  389. package/dist/vega/{p-97b69994.entry.js → p-90556c4d.entry.js} +1 -1
  390. package/dist/vega/p-914767bf.entry.js +1 -0
  391. package/dist/vega/p-987fbbd0.js +1 -0
  392. package/dist/vega/p-992599e7.entry.js +1 -0
  393. package/dist/vega/{p-b81bd0bb.js → p-9b797118.js} +1 -1
  394. package/dist/vega/{p-6bd76976.entry.js → p-9ba085c1.entry.js} +1 -1
  395. package/dist/vega/{p-84a7e59f.entry.js → p-a2169994.entry.js} +1 -1
  396. package/dist/vega/{p-354bb9b8.entry.js → p-a45323b9.entry.js} +1 -1
  397. package/dist/vega/p-a530a188.entry.js +1 -0
  398. package/dist/vega/p-aac4ab77.entry.js +1 -0
  399. package/dist/vega/{p-320642bd.js → p-ad4bd166.js} +1 -1
  400. package/dist/vega/{p-c57c0d62.js → p-ad6aafb6.js} +1 -1
  401. package/dist/vega/{p-9b3df371.js → p-ae3f8fe2.js} +1 -1
  402. package/dist/vega/{p-a11f00f8.js → p-af26780d.js} +1 -1
  403. package/dist/vega/{p-1e5afd54.js → p-af7a3154.js} +1 -1
  404. package/dist/vega/{p-e90bae84.js → p-b2333627.js} +1 -1
  405. package/dist/vega/p-b441e62d.entry.js +1 -0
  406. package/dist/vega/p-b57f033d.entry.js +1 -0
  407. package/dist/vega/p-b5990090.js +1 -0
  408. package/dist/vega/{p-aad984b2.entry.js → p-b765896d.entry.js} +1 -1
  409. package/dist/vega/{p-d2f63287.entry.js → p-b86e8c8b.entry.js} +1 -1
  410. package/dist/vega/{p-9e744f92.entry.js → p-b87336e5.entry.js} +1 -1
  411. package/dist/vega/{p-ae431236.entry.js → p-b8e42c11.entry.js} +1 -1
  412. package/dist/vega/{p-16f9c6f7.js → p-be48508c.js} +1 -1
  413. package/dist/vega/p-bf0bbc4b.js +1 -0
  414. package/dist/vega/{p-d5d136a5.js → p-c1851b1a.js} +1 -1
  415. package/dist/vega/{p-2ecf49a3.entry.js → p-c31462a3.entry.js} +1 -1
  416. package/dist/vega/{p-fcd74048.js → p-c3ef9d64.js} +1 -1
  417. package/dist/vega/p-c4f321ed.entry.js +1 -0
  418. package/dist/vega/{p-e0781825.entry.js → p-c7aa3a94.entry.js} +1 -1
  419. package/dist/vega/p-cf236fb0.entry.js +1 -0
  420. package/dist/vega/{p-76f7907b.entry.js → p-d417d6a6.entry.js} +1 -1
  421. package/dist/vega/p-d50b16d1.js +1 -0
  422. package/dist/vega/p-d5d21115.entry.js +1 -0
  423. package/dist/vega/{p-1aabe7e8.js → p-dbc32bd3.js} +1 -1
  424. package/dist/vega/{p-4bdc66fd.entry.js → p-dc0972bb.entry.js} +1 -1
  425. package/dist/vega/{p-ccd05ec5.entry.js → p-dc24a556.entry.js} +1 -1
  426. package/dist/vega/{p-8cdbfbc1.js → p-e3bfd4a1.js} +1 -1
  427. package/dist/vega/p-e5c61e46.entry.js +1 -0
  428. package/dist/vega/{p-46b8664a.entry.js → p-ec22b952.entry.js} +1 -1
  429. package/dist/vega/p-eddcb385.entry.js +1 -0
  430. package/dist/vega/p-eecfad57.js +1 -0
  431. package/dist/vega/{p-e3a70db2.entry.js → p-f1926cf1.entry.js} +1 -1
  432. package/dist/vega/p-f2dbb363.entry.js +1 -0
  433. package/dist/vega/{p-c677778e.js → p-f404aa83.js} +1 -1
  434. package/dist/vega/{p-88d63e07.entry.js → p-f491581d.entry.js} +1 -1
  435. package/dist/vega/{p-3c1d59d6.entry.js → p-f5c5dd0a.entry.js} +1 -1
  436. package/dist/vega/{p-6b365ba6.entry.js → p-f7728ead.entry.js} +1 -1
  437. package/dist/vega/p-f9e456a6.js +1 -0
  438. package/dist/vega/{p-a32643e3.entry.js → p-fc6ee759.entry.js} +1 -1
  439. package/dist/vega/vega.esm.js +1 -1
  440. package/package.json +2 -2
  441. package/dist/cjs/icon-manager-a973bf0f.js +0 -43
  442. package/dist/cjs/vega-dialog-controller-2d7b1f1c.js +0 -43
  443. package/dist/esm/icon-manager-6ac84741.js +0 -41
  444. package/dist/esm/vega-dialog-controller-1f5923a6.js +0 -41
  445. package/dist/vega/p-018d77cc.js +0 -1
  446. package/dist/vega/p-057cff9d.entry.js +0 -1
  447. package/dist/vega/p-09e7bd51.js +0 -1
  448. package/dist/vega/p-0b0c7f31.js +0 -1
  449. package/dist/vega/p-1cb312d1.js +0 -1
  450. package/dist/vega/p-2049c795.entry.js +0 -1
  451. package/dist/vega/p-20f2ba7a.entry.js +0 -1
  452. package/dist/vega/p-21c9f2c5.js +0 -1
  453. package/dist/vega/p-22788bc0.entry.js +0 -1
  454. package/dist/vega/p-35248678.entry.js +0 -1
  455. package/dist/vega/p-35296720.entry.js +0 -1
  456. package/dist/vega/p-36a4ad8f.entry.js +0 -1
  457. package/dist/vega/p-3aa738f2.entry.js +0 -1
  458. package/dist/vega/p-3ed5adb1.entry.js +0 -1
  459. package/dist/vega/p-469bc36e.js +0 -1
  460. package/dist/vega/p-46c810cb.js +0 -1
  461. package/dist/vega/p-4cef2d0b.js +0 -1
  462. package/dist/vega/p-4d4648f8.js +0 -1
  463. package/dist/vega/p-5608bf96.js +0 -1
  464. package/dist/vega/p-5ee189ba.entry.js +0 -1
  465. package/dist/vega/p-6574c0e8.js +0 -1
  466. package/dist/vega/p-680be8f6.entry.js +0 -1
  467. package/dist/vega/p-731bd18d.entry.js +0 -1
  468. package/dist/vega/p-7b867084.entry.js +0 -1
  469. package/dist/vega/p-8001b640.js +0 -1
  470. package/dist/vega/p-82f9b832.entry.js +0 -1
  471. package/dist/vega/p-91c9f45d.entry.js +0 -1
  472. package/dist/vega/p-96de336a.js +0 -1
  473. package/dist/vega/p-9ade952e.js +0 -1
  474. package/dist/vega/p-a3b57e9e.entry.js +0 -1
  475. package/dist/vega/p-af5d5b0f.entry.js +0 -1
  476. package/dist/vega/p-b9a121d3.entry.js +0 -1
  477. package/dist/vega/p-be15ec5b.entry.js +0 -1
  478. package/dist/vega/p-c227e167.entry.js +0 -1
  479. package/dist/vega/p-c8b25f79.entry.js +0 -1
  480. package/dist/vega/p-c9880e7e.entry.js +0 -1
  481. package/dist/vega/p-d3f1d3dd.js +0 -1
  482. package/dist/vega/p-e39f9907.entry.js +0 -1
  483. package/dist/vega/p-ef0c67c2.js +0 -1
  484. package/dist/vega/p-ef26140a.entry.js +0 -1
  485. package/dist/vega/p-f5ebc64a.js +0 -1
  486. /package/dist/types/helpers/{zindex/test/z-index-manager.test.d.ts → common/test/wait-for-vega-handler.test.d.ts} +0 -0
@@ -1,8 +1,18 @@
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 { InjectVegaTelemetrySlimmer } from 'vega-slimmer/core';
8
+ import { VegaIconManagerRuntimeMetricsPayloadDefinition } from '../../constants/runtime-metrics-payload-definition/public-api/IconManager/runtime-metrics-payload-definition';
9
+ import { createPublicAPIRuntimeMetricsSlimmer } from '../slimmers/runtime-metrics/create-public-api-runtime-metrics-slimmer';
1
10
  /**
2
11
  * Internal icon manager controller.
3
12
  */
4
13
  class IconManager {
5
14
  constructor() {
15
+ this.vegaPublicAPIRuntimeMetricsSlimmer = createPublicAPIRuntimeMetricsSlimmer(IconManager, ['register', 'getIcon', 'hasIcon'], VegaIconManagerRuntimeMetricsPayloadDefinition);
6
16
  this.icons = new Map();
7
17
  }
8
18
  /**
@@ -36,4 +46,7 @@ class IconManager {
36
46
  return this.icons.has(name);
37
47
  }
38
48
  }
49
+ __decorate([
50
+ InjectVegaTelemetrySlimmer()
51
+ ], IconManager.prototype, "vegaPublicAPIRuntimeMetricsSlimmer", void 0);
39
52
  export const VegaIconManager = new IconManager();
@@ -1,4 +1,6 @@
1
1
  import { VegaIconManager } from '../icon-manager';
2
+ import VegaTelemetryRuntimeMetricsManager from '@globalpayments/vega-telemetry-runtime-metrics/runtime-metrics/src/index';
3
+ import { sleep } from '../../../utils/test-utils';
2
4
  describe('IconManagerController', () => {
3
5
  beforeAll(() => {
4
6
  const Icons = {
@@ -36,4 +38,64 @@ describe('IconManagerController', () => {
36
38
  it('should return false if icon not exists in icon manager', () => {
37
39
  expect(VegaIconManager.hasIcon('no-register-icon')).toBe(false);
38
40
  });
41
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call load', () => {
42
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
43
+ const Icons = {
44
+ 'mocked-icon': {
45
+ icon: `<svg width="12" height="16" viewBox="0 0 12 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M1.2937 7.29414C0.903076 7.68477 0.903076 8.31914 1.2937 8.70977L7.2937 14.7098C7.68433 15.1004 8.3187 15.1004 8.70933 14.7098C9.09995 14.3191 9.09995 13.6848 8.70933 13.2941L3.41558 8.00039L8.7062 2.70664C9.09683 2.31602 9.09683 1.68164 8.7062 1.29102C8.31558 0.900391 7.6812 0.900391 7.29058 1.29102L1.29058 7.29102L1.2937 7.29414Z" fill="currentColor"/></svg>`,
46
+ },
47
+ };
48
+ VegaIconManager.register(Icons);
49
+ void Promise.resolve(sleep(100)).then(async () => {
50
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
51
+ publicAPIName: 'IconManager',
52
+ data: {
53
+ IS_REGISTER_METHOD_CALLED: true,
54
+ },
55
+ });
56
+ });
57
+ });
58
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call load', () => {
59
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
60
+ expect(VegaIconManager.getIcon('chevron-left')).toEqual({
61
+ icon: `<svg width="12" height="16" viewBox="0 0 12 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M1.2937 7.29414C0.903076 7.68477 0.903076 8.31914 1.2937 8.70977L7.2937 14.7098C7.68433 15.1004 8.3187 15.1004 8.70933 14.7098C9.09995 14.3191 9.09995 13.6848 8.70933 13.2941L3.41558 8.00039L8.7062 2.70664C9.09683 2.31602 9.09683 1.68164 8.7062 1.29102C8.31558 0.900391 7.6812 0.900391 7.29058 1.29102L1.29058 7.29102L1.2937 7.29414Z" fill="currentColor"/></svg>`,
62
+ });
63
+ void Promise.resolve(sleep(100)).then(async () => {
64
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
65
+ publicAPIName: 'IconManager',
66
+ data: {
67
+ IS_GETICON_METHOD_CALLED: true,
68
+ },
69
+ });
70
+ });
71
+ });
72
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call load', () => {
73
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
74
+ expect(VegaIconManager.hasIcon('chevron-left')).toBeTruthy();
75
+ void Promise.resolve(sleep(100)).then(async () => {
76
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
77
+ publicAPIName: 'IconManager',
78
+ data: {
79
+ IS_HASICON_METHOD_CALLED: true,
80
+ },
81
+ });
82
+ });
83
+ });
84
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call load', () => {
85
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
86
+ const Icons = {
87
+ 'mocked-icon': {
88
+ icon: `<svg width="12" height="16" viewBox="0 0 12 16" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><path d="M1.2937 7.29414C0.903076 7.68477 0.903076 8.31914 1.2937 8.70977L7.2937 14.7098C7.68433 15.1004 8.3187 15.1004 8.70933 14.7098C9.09995 14.3191 9.09995 13.6848 8.70933 13.2941L3.41558 8.00039L8.7062 2.70664C9.09683 2.31602 9.09683 1.68164 8.7062 1.29102C8.31558 0.900391 7.6812 0.900391 7.29058 1.29102L1.29058 7.29102L1.2937 7.29414Z" fill="currentColor"/></svg>`,
89
+ },
90
+ };
91
+ VegaIconManager.register(Icons);
92
+ void Promise.resolve(sleep(100)).then(async () => {
93
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
94
+ publicAPIName: 'IconManager',
95
+ data: {
96
+ IS_REGISTER_METHOD_CALLED: true,
97
+ },
98
+ });
99
+ });
100
+ });
39
101
  });
@@ -2,6 +2,8 @@ jest.mock('../../../utils/misc', () => ({
2
2
  generateUUID: () => 'TEST_UUID',
3
3
  }));
4
4
  import { VegaLoader } from '../vega-loader-controller';
5
+ import VegaTelemetryRuntimeMetricsManager from '@globalpayments/vega-telemetry-runtime-metrics/runtime-metrics/src/index';
6
+ import { sleep } from '../../../utils/test-utils';
5
7
  describe('VegaLoaderController', () => {
6
8
  it('should append default loader into body', () => {
7
9
  VegaLoader.load();
@@ -72,4 +74,92 @@ describe('VegaLoaderController', () => {
72
74
  VegaLoader.close(loaderId);
73
75
  expect(document.getElementById(loaderId)).toBeNull();
74
76
  });
77
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call load', () => {
78
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
79
+ VegaLoader.load();
80
+ void Promise.resolve(sleep(100)).then(async () => {
81
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
82
+ publicAPIName: 'VegaLoaderController',
83
+ data: {
84
+ IS_LOAD_METHOD_CALLED: true,
85
+ },
86
+ });
87
+ });
88
+ });
89
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call close', () => {
90
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
91
+ const loaderId = VegaLoader.load();
92
+ expect(document.getElementById(loaderId)).not.toBeNull();
93
+ VegaLoader.close(loaderId);
94
+ void Promise.resolve(sleep(100)).then(async () => {
95
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
96
+ publicAPIName: 'VegaLoaderController',
97
+ data: {
98
+ IS_CLOSE_METHOD_CALLED: true,
99
+ },
100
+ });
101
+ });
102
+ });
103
+ it('should append loader into container shadowRoot when container has shadowRoot', () => {
104
+ const container = document.createElement('div');
105
+ container.attachShadow({ mode: 'open' });
106
+ container.id = 'container';
107
+ document.querySelector('body').append(container);
108
+ const loader = VegaLoader.load({ containerSelector: '#container' });
109
+ expect(document.querySelector('body')).toEqualHtml(`
110
+ <body>
111
+ <div data-vega-loader-origin-position id="container" style="position: relative;">
112
+ <mock:shadow-root>
113
+ <vega-loader-wrapper class="absolute-wrapper" data-container="#container" id="vega-loader-TEST_UUID">
114
+ <vega-loading-indicator></vega-loading-indicator>
115
+ </vega-loader-wrapper>
116
+ </mock:shadow-root>
117
+ </div>
118
+ </body>
119
+ `);
120
+ VegaLoader.close(loader);
121
+ expect(document.querySelector('body')).toMatchInlineSnapshot(`
122
+ <body>
123
+ <div data-vega-loader-origin-position id="container" style="position: static;">
124
+ <mock:shadow-root></mock:shadow-root>
125
+ </div>
126
+ </body>
127
+ `);
128
+ });
129
+ it('should not append loader into container which not have shadowRoot', () => {
130
+ const container = document.createElement('div');
131
+ container.id = 'container';
132
+ document.querySelector('body').append(container);
133
+ const loader = VegaLoader.load({ containerSelector: '#container' });
134
+ expect(document.querySelector('body')).toMatchInlineSnapshot(`
135
+ <body>
136
+ <div data-vega-loader-origin-position id="container" style="position: relative;">
137
+ <vega-loader-wrapper class="absolute-wrapper" data-container="#container" id="vega-loader-TEST_UUID">
138
+ <vega-loading-indicator></vega-loading-indicator>
139
+ </vega-loader-wrapper>
140
+ </div>
141
+ </body>
142
+ `);
143
+ VegaLoader.close(loader);
144
+ expect(document.querySelector('body')).toMatchInlineSnapshot(`
145
+ <body>
146
+ <div data-vega-loader-origin-position id="container" style="position: static;"></div>
147
+ </body>
148
+ `);
149
+ });
150
+ it('should not append loader into container which containerSelector is not existed', () => {
151
+ console.error = jest.fn();
152
+ const container = document.createElement('div');
153
+ container.id = 'container';
154
+ document.querySelector('body').append(container);
155
+ const wrongId = VegaLoader.load({ containerSelector: '#wrong-selector' });
156
+ expect(document.querySelector('body')).toMatchInlineSnapshot(`
157
+ <body>
158
+ <div id="container"></div>
159
+ </body>
160
+ `);
161
+ expect(wrongId).toEqual(null);
162
+ expect(console.error).toHaveBeenCalledWith('%c[Vega]', 'font-weight: bold', 'Container is not found by selector: ', '#wrong-selector');
163
+ expect(() => VegaLoader.close('#not-exist-selector>>>test')).not.toThrowError();
164
+ });
75
165
  });
@@ -1,9 +1,22 @@
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
+ };
1
7
  import { generateUUID } from '../../utils/misc';
2
8
  import { arrayToClassString } from '../../utils/ui';
9
+ import { InjectVegaTelemetrySlimmer } from 'vega-slimmer/core';
10
+ import { createPublicAPIRuntimeMetricsSlimmer } from '../slimmers/runtime-metrics/create-public-api-runtime-metrics-slimmer';
11
+ import { VegaLoaderRuntimeMetricsPayloadDefinition } from '../../constants/runtime-metrics-payload-definition/public-api/VegaLoaderController/runtime-metrics-payload-definition';
12
+ import { LogUtility } from '../../utils/log';
3
13
  /**
4
14
  * Vega loader controller to control the loading indicator
5
15
  */
6
16
  class VegaLoaderController {
17
+ constructor() {
18
+ this.vegaPublicAPIRuntimeMetricsSlimmer = createPublicAPIRuntimeMetricsSlimmer(VegaLoaderController, ['load', 'close'], VegaLoaderRuntimeMetricsPayloadDefinition);
19
+ }
7
20
  /**
8
21
  * Create a loading indicator and append it to the container
9
22
  *
@@ -12,11 +25,15 @@ class VegaLoaderController {
12
25
  */
13
26
  load(options = {}) {
14
27
  const containerSelector = options.containerSelector || 'body';
28
+ const containerElement = document.querySelector(containerSelector);
29
+ if (!containerElement) {
30
+ LogUtility.error('Container is not found by selector: ', containerSelector);
31
+ return null;
32
+ }
15
33
  const loadingIndicator = this.createLoadingIndicator(options.indicatorOptions);
16
34
  const loader = this.createLoader(containerSelector);
17
35
  loader.append(loadingIndicator);
18
- this.appendLoader(loader, containerSelector);
19
- return loader.id;
36
+ return this.appendLoader(loader, containerElement);
20
37
  }
21
38
  /**
22
39
  * Close the loader by id
@@ -24,7 +41,7 @@ class VegaLoaderController {
24
41
  * @param {string} id - The id of the loader.
25
42
  */
26
43
  close(id) {
27
- const loader = document.getElementById(id);
44
+ const loader = this.findLoader(id);
28
45
  if (loader) {
29
46
  if (loader.dataset.container) {
30
47
  const container = document.querySelector(loader.dataset.container);
@@ -35,6 +52,24 @@ class VegaLoaderController {
35
52
  loader.remove();
36
53
  }
37
54
  }
55
+ /**
56
+ * Find loader by id, if the id include '>>>' it will find inside shadowRoot
57
+ *
58
+ * @param {string} id - The id of the loader.
59
+ * @returns {string} The loader found by id.
60
+ */
61
+ findLoader(id) {
62
+ var _a, _b;
63
+ let loader;
64
+ if (id.includes('>>>')) {
65
+ const [containerSelector, loaderSelector] = id.split('>>>');
66
+ loader = (_b = (_a = document.querySelector(containerSelector)) === null || _a === void 0 ? void 0 : _a.shadowRoot) === null || _b === void 0 ? void 0 : _b.getElementById(loaderSelector);
67
+ }
68
+ else {
69
+ loader = document.getElementById(id);
70
+ }
71
+ return loader;
72
+ }
38
73
  /**
39
74
  * Create a loader for loading indicator
40
75
  *
@@ -65,15 +100,23 @@ class VegaLoaderController {
65
100
  * Append the loader to the container
66
101
  *
67
102
  * @param {HTMLElement} loader A loader with loading indicator
68
- * @param {string} containerSelector The container which you want to append the loader to
103
+ * @param {string} containerElement The container which you want to append the loader to
104
+ * @returns {string} The uuid of the loader.
69
105
  */
70
- appendLoader(loader, containerSelector) {
71
- const containerElement = document.querySelector(containerSelector);
72
- if (containerElement) {
73
- containerElement.dataset['vegaLoaderOriginPosition'] = containerElement.style.position;
74
- containerElement.style.position = 'relative';
106
+ appendLoader(loader, containerElement) {
107
+ containerElement.dataset['vegaLoaderOriginPosition'] = containerElement.style.position;
108
+ containerElement.style.position = 'relative';
109
+ if (containerElement.shadowRoot) {
110
+ containerElement.shadowRoot.append(loader);
111
+ return `${loader.dataset['container']}>>>${loader.id}`;
112
+ }
113
+ else {
75
114
  containerElement.append(loader);
115
+ return loader.id;
76
116
  }
77
117
  }
78
118
  }
119
+ __decorate([
120
+ InjectVegaTelemetrySlimmer()
121
+ ], VegaLoaderController.prototype, "vegaPublicAPIRuntimeMetricsSlimmer", void 0);
79
122
  export const VegaLoader = new VegaLoaderController();
@@ -4,6 +4,8 @@ jest.mock('../../../utils/misc', () => ({
4
4
  import { VegaNotify } from '../../public-api';
5
5
  import { setupUserAgent } from '../../../utils/test-utils';
6
6
  import { MockedResizeObserver } from '../../../utils/spec-utils';
7
+ import VegaTelemetryRuntimeMetricsManager from '@globalpayments/vega-telemetry-runtime-metrics/runtime-metrics/src/index';
8
+ import { sleep } from '../../../utils/test-utils';
7
9
  describe('vegaNotifyController', () => {
8
10
  beforeEach(() => {
9
11
  VegaNotify['container'] = null; // Jest cleared the document before each suite
@@ -91,4 +93,73 @@ describe('vegaNotifyController', () => {
91
93
  </vega-page-notification-list>
92
94
  `);
93
95
  });
96
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call open', async () => {
97
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
98
+ await VegaNotify.open({
99
+ title: 'Test',
100
+ message: 'This is the content of notification.',
101
+ });
102
+ void Promise.resolve(sleep(100)).then(async () => {
103
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
104
+ publicAPIName: 'VegaNotifyController',
105
+ data: {
106
+ IS_OPEN_METHOD_CALLED: true,
107
+ },
108
+ });
109
+ });
110
+ });
111
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call close', async () => {
112
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
113
+ const id = await VegaNotify.open({
114
+ title: 'Test',
115
+ message: 'This is the content of notification.',
116
+ });
117
+ mockPageNotificationListHydrated();
118
+ const notification = document.getElementById(id);
119
+ notification.close = async () => {
120
+ notification.remove();
121
+ MockedResizeObserver.mock.instances.forEach((item) => {
122
+ item['trigger']([{ contentRect: { height: 0 } }]);
123
+ });
124
+ };
125
+ void Promise.resolve(sleep(100)).then(async () => {
126
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
127
+ publicAPIName: 'VegaSkeletonLoaderController',
128
+ data: {
129
+ IS_CLOSE_METHOD_CALLED: true,
130
+ },
131
+ });
132
+ });
133
+ });
134
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call closeAll', async () => {
135
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
136
+ await VegaNotify.open({
137
+ title: 'Test',
138
+ message: 'This is the content of notification.',
139
+ });
140
+ await VegaNotify.open({
141
+ title: 'Test',
142
+ message: 'This is the content of notification.',
143
+ });
144
+ document
145
+ .querySelectorAll('vega-page-notification')
146
+ .forEach((item) => {
147
+ item.close = async () => {
148
+ item.remove();
149
+ MockedResizeObserver.mock.instances.forEach((item) => {
150
+ item['trigger']([{ contentRect: { height: 0 } }]);
151
+ });
152
+ };
153
+ });
154
+ mockPageNotificationListHydrated();
155
+ await VegaNotify.closeAll();
156
+ void Promise.resolve(sleep(100)).then(async () => {
157
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
158
+ publicAPIName: 'VegaSkeletonLoaderController',
159
+ data: {
160
+ IS_CLOSEALL_METHOD_CALLED: true,
161
+ },
162
+ });
163
+ });
164
+ });
94
165
  });
@@ -4,12 +4,14 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
4
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
5
  return c > 3 && r && Object.defineProperty(target, key, r), r;
6
6
  };
7
- import ZIndexManager from '../zindex/z-index-manager';
7
+ import InternalVegaZIndexManager from '../zindex/internal-vega-z-index-manager';
8
8
  import { generateUUID } from '../../utils/misc';
9
9
  import { getDeviceType } from '../../utils/ui';
10
10
  import { DeviceType } from '../../types/ui.type';
11
- import { InjectVegaSlimmer, createDynamicSlimmer, methodPlaceholder } from 'vega-slimmer/core';
11
+ import { InjectVegaSlimmer, InjectVegaTelemetrySlimmer, createDynamicSlimmer, methodPlaceholder, } from 'vega-slimmer/core';
12
12
  import { PageResizeObserverSlimmer } from '../slimmers/page-resize-observer-slimmer';
13
+ import { createPublicAPIRuntimeMetricsSlimmer } from '../slimmers/runtime-metrics/create-public-api-runtime-metrics-slimmer';
14
+ import { VegaNotifyRuntimeMetricsPayloadDefinition } from '../../constants/runtime-metrics-payload-definition/public-api/VegaNotifyController/runtime-metrics-payload-definition';
13
15
  /**
14
16
  * The page notification controller
15
17
  */
@@ -22,7 +24,7 @@ class VegaNotifyController {
22
24
  var _a;
23
25
  const currentVisible = entries[0].contentRect.height > 0;
24
26
  if (!currentVisible && ((_a = this.container) === null || _a === void 0 ? void 0 : _a.classList.contains('hydrated'))) {
25
- ZIndexManager.removeZIndex(this.container, 'top');
27
+ InternalVegaZIndexManager.removeZIndex(this.container, 'top');
26
28
  this.container.remove();
27
29
  this.container = null;
28
30
  }
@@ -31,6 +33,7 @@ class VegaNotifyController {
31
33
  target: () => this.container,
32
34
  },
33
35
  ]);
36
+ this.vegaPublicAPIRuntimeMetricsSlimmer = createPublicAPIRuntimeMetricsSlimmer(VegaNotifyController, ['open', 'close', 'closeAll'], VegaNotifyRuntimeMetricsPayloadDefinition);
34
37
  }
35
38
  /**
36
39
  * It creates a new notification element, adds it to the container, and returns the notification's ID
@@ -92,7 +95,7 @@ class VegaNotifyController {
92
95
  return this.container;
93
96
  }
94
97
  this.container = document.createElement('vega-page-notification-list');
95
- ZIndexManager.setZIndex(this.container, 'top');
98
+ InternalVegaZIndexManager.setZIndex(this.container, 'top');
96
99
  if (getDeviceType() === DeviceType.MOBILE) {
97
100
  this.container.classList.add('vega-page-notification-list-bottom');
98
101
  }
@@ -107,4 +110,7 @@ class VegaNotifyController {
107
110
  __decorate([
108
111
  InjectVegaSlimmer()
109
112
  ], VegaNotifyController.prototype, "resizeObserverSlimmer", void 0);
113
+ __decorate([
114
+ InjectVegaTelemetrySlimmer()
115
+ ], VegaNotifyController.prototype, "vegaPublicAPIRuntimeMetricsSlimmer", void 0);
110
116
  export const VegaNotify = new VegaNotifyController();
@@ -1,5 +1,6 @@
1
1
  import VegaEnvManager, { FrameworkEnum } from './vega-telemetry-helper/vega-env-manager';
2
2
  import VegaEventManager from './event-manager/vega-event-manager';
3
+ export { default as VegaZIndexManager } from './zindex/vega-z-index-manager';
3
4
  export { FeatureFlag } from './feature-control/feature-flag-controller';
4
5
  export { VegaLoader } from './loading-indicator/vega-loader-controller';
5
6
  export { VegaNotify } from './notify/vega-notify-controller';
@@ -2,6 +2,8 @@ jest.mock('../../../utils/misc', () => ({
2
2
  generateUUID: () => 'TEST_UUID',
3
3
  }));
4
4
  import { VegaSkeletonLoader } from '../vega-skeleton-loader-controller';
5
+ import VegaTelemetryRuntimeMetricsManager from '@globalpayments/vega-telemetry-runtime-metrics/runtime-metrics/src/index';
6
+ import { sleep } from '../../../utils/test-utils';
5
7
  describe('vega-skeleton-loader-controller', () => {
6
8
  beforeEach(() => {
7
9
  document.body.innerHTML = `
@@ -136,4 +138,57 @@ describe('vega-skeleton-loader-controller', () => {
136
138
  </body>
137
139
  `);
138
140
  });
141
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call load', () => {
142
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
143
+ VegaSkeletonLoader.load({
144
+ target: '.target-class',
145
+ type: 'image',
146
+ width: '200px',
147
+ height: '100px',
148
+ });
149
+ void Promise.resolve(sleep(100)).then(async () => {
150
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
151
+ publicAPIName: 'VegaSkeletonLoaderController',
152
+ data: {
153
+ IS_LOAD_METHOD_CALLED: true,
154
+ },
155
+ });
156
+ });
157
+ });
158
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call unLoad', () => {
159
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
160
+ const key = VegaSkeletonLoader.load({
161
+ target: '.target-class',
162
+ type: 'image',
163
+ width: '200px',
164
+ height: '100px',
165
+ });
166
+ VegaSkeletonLoader.unLoad(key);
167
+ void Promise.resolve(sleep(100)).then(async () => {
168
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
169
+ publicAPIName: 'VegaSkeletonLoaderController',
170
+ data: {
171
+ IS_UNLOAD_METHOD_CALLED: true,
172
+ },
173
+ });
174
+ });
175
+ });
176
+ it('should call the emit method of VegaTelemetryRuntimeMetricsManager when call unLoadAll', () => {
177
+ jest.spyOn(VegaTelemetryRuntimeMetricsManager, 'emit');
178
+ VegaSkeletonLoader.load({
179
+ target: '.target-class',
180
+ type: 'image',
181
+ width: '200px',
182
+ height: '100px',
183
+ });
184
+ VegaSkeletonLoader.unLoadAll();
185
+ void Promise.resolve(sleep(100)).then(async () => {
186
+ expect(VegaTelemetryRuntimeMetricsManager.emit).toHaveBeenCalledWith('publicAPIMetrics', {
187
+ publicAPIName: 'VegaSkeletonLoaderController',
188
+ data: {
189
+ IS_UNLOADALL_METHOD_CALLED: true,
190
+ },
191
+ });
192
+ });
193
+ });
139
194
  });
@@ -1,9 +1,19 @@
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 { InjectVegaTelemetrySlimmer } from 'vega-slimmer/core';
8
+ import { VegaSkeletonRuntimeMetricsPayloadDefinition } from '../../constants/runtime-metrics-payload-definition/public-api/VegaSkeletonLoader/runtime-metrics-payload-definition';
1
9
  import { generateUUID } from '../../utils/misc';
10
+ import { createPublicAPIRuntimeMetricsSlimmer } from '../slimmers/runtime-metrics/create-public-api-runtime-metrics-slimmer';
2
11
  /**
3
12
  * Vega Skeleton Loader Controller to show skeletons in the target elements
4
13
  */
5
14
  class VegaSkeletonLoaderController {
6
15
  constructor() {
16
+ this.vegaPublicAPIRuntimeMetricsSlimmer = createPublicAPIRuntimeMetricsSlimmer(VegaSkeletonLoaderController, ['load', 'unLoad', 'unLoadAll'], VegaSkeletonRuntimeMetricsPayloadDefinition);
7
17
  this.loaderMap = new Map();
8
18
  }
9
19
  /**
@@ -84,4 +94,7 @@ class VegaSkeletonLoaderController {
84
94
  }
85
95
  }
86
96
  VegaSkeletonLoaderController.LOADER_DATA_SET_KEY = 'vegaSkeletonLoaderKey';
97
+ __decorate([
98
+ InjectVegaTelemetrySlimmer()
99
+ ], VegaSkeletonLoaderController.prototype, "vegaPublicAPIRuntimeMetricsSlimmer", void 0);
87
100
  export const VegaSkeletonLoader = new VegaSkeletonLoaderController();
@@ -1,5 +1,6 @@
1
- import { VegaSlimmer } from 'vega-slimmer/core';
1
+ import { CurrentlyInvokedMethodName, VegaSlimmer } from 'vega-slimmer/core';
2
2
  import { LogUtility } from '../../../utils/log';
3
+ import { isObjectEmpty } from '../../../utils/misc';
3
4
  /**
4
5
  * The `VegaPublicAPIRuntimeMetricsSlimmerBase` class is used for sending
5
6
  * telemetry data to a telemetry service based on defined usage metrics for a public api.
@@ -24,26 +25,28 @@ export class VegaPublicAPIRuntimeMetricsSlimmerBase extends VegaSlimmer {
24
25
  * register the observer when the slimmer method called
25
26
  *
26
27
  * @param {unknown[]} [args] - The `args` parameter passed in when the slimmer method is executed
27
- * @param {string} [methodName] - The `methodName` parameter is the actual method name of the public API call.
28
28
  */
29
- sendPublicAPIPayloadToTelemetry(args, methodName) {
30
- // eslint-disable-next-line spellcheck/spell-checker
31
- void import('@globalpayments/vega-telemetry-runtime-metrics/runtime-metrics/src/index.js').then((
32
- // eslint-disable-next-line spellcheck/spell-checker
33
- module) => {
34
- try {
35
- module['default']['emit']('publicAPIMetrics', this.getPublicAPIMetricsPayload(methodName, args));
29
+ sendPublicAPIPayloadToTelemetry(args) {
30
+ try {
31
+ const publicAPIMetricsPayload = this.getPublicAPIMetricsPayload(args);
32
+ if (publicAPIMetricsPayload) {
33
+ // eslint-disable-next-line spellcheck/spell-checker
34
+ void import('@globalpayments/vega-telemetry-runtime-metrics/runtime-metrics/src/index.js').then((
35
+ // eslint-disable-next-line spellcheck/spell-checker
36
+ module) => {
37
+ module['default']['emit']('publicAPIMetrics', publicAPIMetricsPayload);
38
+ });
36
39
  }
37
- catch (error) {
38
- LogUtility.log('Public API payload failed to emit telemetry:', error);
39
- }
40
- });
40
+ }
41
+ catch (error) {
42
+ LogUtility.log('Public API payload failed to emit telemetry:', error);
43
+ }
41
44
  }
42
45
  /**
43
46
  * The function `getPublicAPIMetricsPayload` generates a payload containing public api
44
47
  * metrics data.
48
+ * The `CurrentlyInvokedMethodName` is a public API method name, it comes from the `InjectVegaTelemetrySlimmer` definition and assignment
45
49
  *
46
- * @param {string} [methodName] - The `methodName` parameter is the actual method name of the public API call.
47
50
  * @param {unknown[]} [args] - The `args` parameter passed in when the slimmer method is executed
48
51
  * @returns {Record<string, unknown>} The `getPublicAPIMetricsPayload` method returns an object with the following
49
52
  * structure:
@@ -53,13 +56,16 @@ export class VegaPublicAPIRuntimeMetricsSlimmerBase extends VegaSlimmer {
53
56
  * 'waitForVegaRenderFinished': true,
54
57
  * }
55
58
  */
56
- getPublicAPIMetricsPayload(methodName, args) {
59
+ getPublicAPIMetricsPayload(args) {
57
60
  const payloadData = {};
58
61
  this.usageDefinitions
59
- .filter((definitions) => definitions.canAccept(this.className, methodName, args))
62
+ .filter((definitions) => definitions.canAccept(this.className, this[CurrentlyInvokedMethodName], args))
60
63
  .forEach((definitions) => {
61
- payloadData[definitions.payloadKey] = definitions.payloadValue(this.className, methodName, args);
64
+ payloadData[definitions.payloadKey] = definitions.payloadValue(args);
62
65
  });
66
+ if (isObjectEmpty(payloadData)) {
67
+ return null;
68
+ }
63
69
  return {
64
70
  publicAPIName: this.className,
65
71
  data: payloadData,