@globalpayments/vega 2.42.0 → 2.43.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 (250) hide show
  1. package/dist/cjs/{app-globals-77b1f80b.js → app-globals-e80a14da.js} +4 -4
  2. package/dist/cjs/{child-nodes-event-prevent-slimmer-7f59159e.js → child-nodes-event-prevent-slimmer-4982065c.js} +1 -1
  3. package/dist/cjs/{content-state-45707be4.js → content-state-7b418b83.js} +1 -1
  4. package/dist/cjs/{design-token-d8362603.js → design-token-622f55de.js} +1 -1
  5. package/dist/cjs/{element-appender-slimmer-ad1e5774.js → element-appender-slimmer-f704b06d.js} +154 -34
  6. package/dist/cjs/{form-field-controller-slimmer-928d263f.js → form-field-controller-slimmer-9ea504a7.js} +1 -1
  7. package/dist/cjs/{image-annotation-action-0df6f005.js → image-annotation-action-46632b22.js} +1 -1
  8. package/dist/cjs/{index-84ce6b33.js → index-cea30b8b.js} +1 -1
  9. package/dist/cjs/index.cjs.js +7 -7
  10. package/dist/cjs/loader.cjs.js +5 -5
  11. package/dist/cjs/{public-rules-7994300f.js → public-rules-ba486ffa.js} +3 -3
  12. package/dist/cjs/{responsive-format-facade-9439e9ae.js → responsive-format-facade-23588691.js} +2 -2
  13. package/dist/cjs/{rich-text-editor-required-rule-11d07c7d.js → rich-text-editor-required-rule-792fede0.js} +1 -1
  14. package/dist/cjs/{string-input-formatter-slimmer-017370ec.js → string-input-formatter-slimmer-90bdfcf6.js} +6 -3
  15. package/dist/cjs/{style-formatter-65652117.js → style-formatter-42a4e762.js} +1 -1
  16. package/dist/cjs/{sub-state-notify-slimmer-b9e39b9d.js → sub-state-notify-slimmer-88e2f4aa.js} +1 -1
  17. package/dist/cjs/{sub-state-observer-slimmer-c6665cec.js → sub-state-observer-slimmer-8ed18a5a.js} +1 -1
  18. package/dist/cjs/vega-accordion.cjs.entry.js +5 -5
  19. package/dist/cjs/vega-app-header-button.cjs.entry.js +6 -6
  20. package/dist/cjs/vega-banner.cjs.entry.js +1 -1
  21. package/dist/cjs/vega-box.cjs.entry.js +6 -6
  22. package/dist/cjs/vega-breadcrumb.cjs.entry.js +2 -2
  23. package/dist/cjs/vega-button-circle.cjs.entry.js +6 -6
  24. package/dist/cjs/vega-button-group_2.cjs.entry.js +5 -5
  25. package/dist/cjs/vega-button-link.cjs.entry.js +2 -2
  26. package/dist/cjs/vega-button.cjs.entry.js +5 -5
  27. package/dist/cjs/vega-calendar_3.cjs.entry.js +5 -5
  28. package/dist/cjs/vega-card.cjs.entry.js +5 -5
  29. package/dist/cjs/vega-carousel.cjs.entry.js +4 -4
  30. package/dist/cjs/vega-checkbox_2.cjs.entry.js +4 -4
  31. package/dist/cjs/vega-chip.cjs.entry.js +6 -6
  32. package/dist/cjs/vega-color-picker.cjs.entry.js +2 -2
  33. package/dist/cjs/vega-combo-box.cjs.entry.js +4 -4
  34. package/dist/cjs/vega-date-picker_2.cjs.entry.js +9 -9
  35. package/dist/cjs/vega-dialog_2.cjs.entry.js +6 -6
  36. package/dist/cjs/vega-divider.cjs.entry.js +5 -5
  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-file-uploader.cjs.entry.js +2 -2
  40. package/dist/cjs/vega-flex.cjs.entry.js +6 -6
  41. package/dist/cjs/vega-font.cjs.entry.js +5 -5
  42. package/dist/cjs/vega-form.cjs.entry.js +4 -4
  43. package/dist/cjs/vega-grid.cjs.entry.js +5 -5
  44. package/dist/cjs/vega-icon.cjs.entry.js +5 -5
  45. package/dist/cjs/vega-image-uploader.cjs.entry.js +6 -6
  46. package/dist/cjs/vega-input-credit-card.cjs.entry.js +16 -12
  47. package/dist/cjs/vega-input-numeric.cjs.entry.js +5 -5
  48. package/dist/cjs/vega-input-phone-number.cjs.entry.js +4 -4
  49. package/dist/cjs/vega-input-range.cjs.entry.js +4 -4
  50. package/dist/cjs/vega-input-select.cjs.entry.js +6 -6
  51. package/dist/cjs/vega-input.cjs.entry.js +5 -5
  52. package/dist/cjs/{vega-internal-event-id-4ba74761.js → vega-internal-event-id-a0ca9af9.js} +4 -0
  53. package/dist/cjs/vega-left-nav_5.cjs.entry.js +7 -7
  54. package/dist/cjs/vega-loader-wrapper_2.cjs.entry.js +4 -4
  55. package/dist/cjs/vega-pagination-page-selector-mobile.cjs.entry.js +3 -3
  56. package/dist/cjs/vega-pagination-page-size-selector-mobile.cjs.entry.js +1 -1
  57. package/dist/cjs/vega-pagination.cjs.entry.js +5 -5
  58. package/dist/cjs/vega-popover_2.cjs.entry.js +5 -5
  59. package/dist/cjs/vega-radio_2.cjs.entry.js +4 -4
  60. package/dist/cjs/vega-rich-text-content.cjs.entry.js +5 -5
  61. package/dist/cjs/vega-rich-text-editor_4.cjs.entry.js +9 -9
  62. package/dist/cjs/vega-selection-chip_2.cjs.entry.js +8 -8
  63. package/dist/cjs/vega-selection-tile_2.cjs.entry.js +6 -6
  64. package/dist/cjs/vega-sidenav_3.cjs.entry.js +6 -6
  65. package/dist/cjs/vega-signature-capture.cjs.entry.js +6 -6
  66. package/dist/cjs/vega-stepper.cjs.entry.js +4 -4
  67. package/dist/cjs/vega-tab-group_2.cjs.entry.js +2 -2
  68. package/dist/cjs/vega-table_8.cjs.entry.js +7 -7
  69. package/dist/cjs/vega-textarea.cjs.entry.js +4 -4
  70. package/dist/cjs/vega-time-picker_2.cjs.entry.js +7 -7
  71. package/dist/cjs/vega-toggle-switch.cjs.entry.js +2 -2
  72. package/dist/cjs/vega-tooltip_2.cjs.entry.js +6 -5
  73. package/dist/cjs/vega.cjs.js +5 -5
  74. package/dist/collection/components/vega-input-credit-card/vega-input-credit-card.js +15 -10
  75. package/dist/collection/components/vega-rich-text-editor/test/e2e-utils.js +177 -0
  76. package/dist/collection/components/vega-rich-text-editor/test/fixture.js +257 -0
  77. package/dist/collection/helpers/event-manager/event-id/vega-internal-event-id.js +2 -0
  78. package/dist/collection/helpers/slimmers/element-appender/element-appender-hierarchy-tree-manager.js +108 -0
  79. package/dist/collection/helpers/slimmers/element-appender/element-appender-slimmer.js +19 -3
  80. package/dist/collection/helpers/slimmers/element-appender/test/element-appender-slimmer.test.js +232 -0
  81. package/dist/collection/helpers/slimmers/string-input-formatter-slimmer.js +5 -2
  82. package/dist/collection/helpers/ui/element-appender.js +2 -2
  83. package/dist/esm/{app-globals-0aeb2171.js → app-globals-f767f6be.js} +4 -4
  84. package/dist/esm/{child-nodes-event-prevent-slimmer-2f5824ee.js → child-nodes-event-prevent-slimmer-aab1c019.js} +1 -1
  85. package/dist/esm/{content-state-2de41bc0.js → content-state-2b4fdc4f.js} +1 -1
  86. package/dist/esm/{design-token-b195686e.js → design-token-9a3c1dc5.js} +1 -1
  87. package/dist/esm/{element-appender-slimmer-f425d203.js → element-appender-slimmer-8adfc578.js} +155 -35
  88. package/dist/esm/{form-field-controller-slimmer-d18d01da.js → form-field-controller-slimmer-75f525f4.js} +1 -1
  89. package/dist/esm/{image-annotation-action-a0dd92ed.js → image-annotation-action-aea4f430.js} +1 -1
  90. package/dist/esm/{index-4153fe96.js → index-707fec53.js} +1 -1
  91. package/dist/esm/index.js +7 -7
  92. package/dist/esm/loader.js +5 -5
  93. package/dist/esm/{public-rules-31433f1e.js → public-rules-20db9763.js} +3 -3
  94. package/dist/esm/{responsive-format-facade-cf37ffd2.js → responsive-format-facade-175aee98.js} +2 -2
  95. package/dist/esm/{rich-text-editor-required-rule-c0f5a754.js → rich-text-editor-required-rule-ed41bdd9.js} +1 -1
  96. package/dist/esm/{string-input-formatter-slimmer-99bed828.js → string-input-formatter-slimmer-452c439c.js} +6 -3
  97. package/dist/esm/{style-formatter-c5aec4a3.js → style-formatter-99ad38cd.js} +1 -1
  98. package/dist/esm/{sub-state-notify-slimmer-e3b2bff5.js → sub-state-notify-slimmer-c7169226.js} +1 -1
  99. package/dist/esm/{sub-state-observer-slimmer-ada3467b.js → sub-state-observer-slimmer-1d3336d6.js} +1 -1
  100. package/dist/esm/vega-accordion.entry.js +5 -5
  101. package/dist/esm/vega-app-header-button.entry.js +6 -6
  102. package/dist/esm/vega-banner.entry.js +1 -1
  103. package/dist/esm/vega-box.entry.js +6 -6
  104. package/dist/esm/vega-breadcrumb.entry.js +2 -2
  105. package/dist/esm/vega-button-circle.entry.js +6 -6
  106. package/dist/esm/vega-button-group_2.entry.js +5 -5
  107. package/dist/esm/vega-button-link.entry.js +2 -2
  108. package/dist/esm/vega-button.entry.js +5 -5
  109. package/dist/esm/vega-calendar_3.entry.js +5 -5
  110. package/dist/esm/vega-card.entry.js +5 -5
  111. package/dist/esm/vega-carousel.entry.js +4 -4
  112. package/dist/esm/vega-checkbox_2.entry.js +4 -4
  113. package/dist/esm/vega-chip.entry.js +6 -6
  114. package/dist/esm/vega-color-picker.entry.js +2 -2
  115. package/dist/esm/vega-combo-box.entry.js +4 -4
  116. package/dist/esm/vega-date-picker_2.entry.js +9 -9
  117. package/dist/esm/vega-dialog_2.entry.js +6 -6
  118. package/dist/esm/vega-divider.entry.js +5 -5
  119. package/dist/esm/vega-dropdown_5.entry.js +8 -8
  120. package/dist/esm/vega-env-manager-8f8dc473.js +2 -2
  121. package/dist/esm/vega-file-uploader.entry.js +2 -2
  122. package/dist/esm/vega-flex.entry.js +6 -6
  123. package/dist/esm/vega-font.entry.js +5 -5
  124. package/dist/esm/vega-form.entry.js +4 -4
  125. package/dist/esm/vega-grid.entry.js +5 -5
  126. package/dist/esm/vega-icon.entry.js +5 -5
  127. package/dist/esm/vega-image-uploader.entry.js +6 -6
  128. package/dist/esm/vega-input-credit-card.entry.js +16 -12
  129. package/dist/esm/vega-input-numeric.entry.js +5 -5
  130. package/dist/esm/vega-input-phone-number.entry.js +4 -4
  131. package/dist/esm/vega-input-range.entry.js +4 -4
  132. package/dist/esm/vega-input-select.entry.js +6 -6
  133. package/dist/esm/vega-input.entry.js +5 -5
  134. package/dist/esm/{vega-internal-event-id-7809368b.js → vega-internal-event-id-d7113cf7.js} +3 -1
  135. package/dist/esm/vega-left-nav_5.entry.js +7 -7
  136. package/dist/esm/vega-loader-wrapper_2.entry.js +4 -4
  137. package/dist/esm/vega-pagination-page-selector-mobile.entry.js +3 -3
  138. package/dist/esm/vega-pagination-page-size-selector-mobile.entry.js +1 -1
  139. package/dist/esm/vega-pagination.entry.js +5 -5
  140. package/dist/esm/vega-popover_2.entry.js +5 -5
  141. package/dist/esm/vega-radio_2.entry.js +4 -4
  142. package/dist/esm/vega-rich-text-content.entry.js +5 -5
  143. package/dist/esm/vega-rich-text-editor_4.entry.js +9 -9
  144. package/dist/esm/vega-selection-chip_2.entry.js +8 -8
  145. package/dist/esm/vega-selection-tile_2.entry.js +6 -6
  146. package/dist/esm/vega-sidenav_3.entry.js +6 -6
  147. package/dist/esm/vega-signature-capture.entry.js +6 -6
  148. package/dist/esm/vega-stepper.entry.js +4 -4
  149. package/dist/esm/vega-tab-group_2.entry.js +2 -2
  150. package/dist/esm/vega-table_8.entry.js +7 -7
  151. package/dist/esm/vega-textarea.entry.js +4 -4
  152. package/dist/esm/vega-time-picker_2.entry.js +7 -7
  153. package/dist/esm/vega-toggle-switch.entry.js +2 -2
  154. package/dist/esm/vega-tooltip_2.entry.js +6 -5
  155. package/dist/esm/vega.js +5 -5
  156. package/dist/types/components/vega-rich-text-editor/test/e2e-utils.d.ts +67 -0
  157. package/dist/types/components/vega-rich-text-editor/test/fixture.d.ts +19 -0
  158. package/dist/types/helpers/event-manager/event-id/vega-internal-event-id.d.ts +2 -0
  159. package/dist/types/helpers/slimmers/element-appender/element-appender-hierarchy-tree-manager.d.ts +48 -0
  160. package/dist/types/helpers/slimmers/element-appender/element-appender-slimmer.d.ts +2 -0
  161. package/dist/vega/index.esm.js +1 -1
  162. package/dist/vega/{p-b5dac03a.entry.js → p-058f2c79.entry.js} +1 -1
  163. package/dist/vega/p-1040bac6.js +1 -0
  164. package/dist/vega/p-11ccc1a9.entry.js +1 -0
  165. package/dist/vega/{p-11e1a374.entry.js → p-150f8194.entry.js} +1 -1
  166. package/dist/vega/{p-66cd4404.entry.js → p-1538cafa.entry.js} +1 -1
  167. package/dist/vega/{p-715e2775.entry.js → p-15d40cb5.entry.js} +1 -1
  168. package/dist/vega/{p-bbbc0126.js → p-15d7a049.js} +1 -1
  169. package/dist/vega/{p-de2e3383.js → p-179887da.js} +1 -1
  170. package/dist/vega/{p-a607c168.js → p-179c59ff.js} +1 -1
  171. package/dist/vega/p-1b6a38ab.js +1 -0
  172. package/dist/vega/{p-c0e8c86f.entry.js → p-1edaa1cc.entry.js} +1 -1
  173. package/dist/vega/{p-de7db3c6.entry.js → p-251315ac.entry.js} +1 -1
  174. package/dist/vega/{p-28bf1b10.entry.js → p-265f6155.entry.js} +1 -1
  175. package/dist/vega/p-27192960.js +1 -0
  176. package/dist/vega/{p-ec4b5c1c.entry.js → p-2940fa99.entry.js} +1 -1
  177. package/dist/vega/p-30d56b87.entry.js +1 -0
  178. package/dist/vega/{p-a685c7da.entry.js → p-31ba6562.entry.js} +1 -1
  179. package/dist/vega/{p-08c829c6.entry.js → p-31c88532.entry.js} +1 -1
  180. package/dist/vega/{p-c6c3c0c2.entry.js → p-3bcd66e9.entry.js} +1 -1
  181. package/dist/vega/p-3c235627.entry.js +1 -0
  182. package/dist/vega/{p-d0c06937.entry.js → p-3fcf766c.entry.js} +1 -1
  183. package/dist/vega/{p-8d6b1d3c.entry.js → p-40239f3f.entry.js} +2 -2
  184. package/dist/vega/{p-a8f8b1e0.entry.js → p-4a47bc03.entry.js} +1 -1
  185. package/dist/vega/{p-2d4e7947.entry.js → p-502dcacc.entry.js} +1 -1
  186. package/dist/vega/p-502f523c.entry.js +1 -0
  187. package/dist/vega/{p-45eba113.entry.js → p-56926f06.entry.js} +1 -1
  188. package/dist/vega/{p-c6cceae7.entry.js → p-5e38f071.entry.js} +1 -1
  189. package/dist/vega/p-5f377954.js +1 -1
  190. package/dist/vega/p-6008c0c0.entry.js +1 -0
  191. package/dist/vega/{p-a85855b0.entry.js → p-607ba0e0.entry.js} +1 -1
  192. package/dist/vega/{p-332d2c1a.entry.js → p-60e678ea.entry.js} +1 -1
  193. package/dist/vega/p-66c5fa14.js +1 -0
  194. package/dist/vega/{p-9060b003.js → p-76076b46.js} +1 -1
  195. package/dist/vega/{p-497c8b0f.entry.js → p-7e1e319d.entry.js} +1 -1
  196. package/dist/vega/{p-cdaa4c9d.entry.js → p-8bc506e0.entry.js} +1 -1
  197. package/dist/vega/{p-c52dfbaf.entry.js → p-8f6c028b.entry.js} +1 -1
  198. package/dist/vega/{p-d009cdaf.entry.js → p-91ec1b58.entry.js} +1 -1
  199. package/dist/vega/{p-b440309d.entry.js → p-9721f1ea.entry.js} +1 -1
  200. package/dist/vega/{p-18520b0b.entry.js → p-97950866.entry.js} +1 -1
  201. package/dist/vega/p-9c4271d9.entry.js +1 -0
  202. package/dist/vega/{p-c2f8e6eb.js → p-9fdb3ef8.js} +1 -1
  203. package/dist/vega/p-a194988c.entry.js +1 -0
  204. package/dist/vega/{p-0fbb350f.entry.js → p-ac91b1b5.entry.js} +1 -1
  205. package/dist/vega/{p-ac01f362.entry.js → p-b82b01fa.entry.js} +1 -1
  206. package/dist/vega/{p-b6143b84.js → p-b845ea28.js} +1 -1
  207. package/dist/vega/{p-90ae575e.js → p-c531d2f3.js} +1 -1
  208. package/dist/vega/{p-d40e55f5.entry.js → p-c5ddea92.entry.js} +1 -1
  209. package/dist/vega/p-c66b55f8.js +1 -0
  210. package/dist/vega/{p-5ea5c14b.entry.js → p-c76024af.entry.js} +1 -1
  211. package/dist/vega/{p-139f735b.entry.js → p-c89c01b4.entry.js} +1 -1
  212. package/dist/vega/{p-c6be6b2d.entry.js → p-ca52f952.entry.js} +1 -1
  213. package/dist/vega/{p-7a63a63c.entry.js → p-d13704a2.entry.js} +1 -1
  214. package/dist/vega/{p-9ae0b8bf.entry.js → p-d293df16.entry.js} +1 -1
  215. package/dist/vega/{p-28244d46.entry.js → p-d3a815a7.entry.js} +1 -1
  216. package/dist/vega/{p-237dbeef.entry.js → p-d3aa2ea7.entry.js} +1 -1
  217. package/dist/vega/{p-4230112f.entry.js → p-d924d6d4.entry.js} +1 -1
  218. package/dist/vega/{p-24431cf0.entry.js → p-da6d71ed.entry.js} +1 -1
  219. package/dist/vega/p-e06361df.js +1 -0
  220. package/dist/vega/{p-5c30b476.js → p-e3820e5b.js} +1 -1
  221. package/dist/vega/{p-0692350d.entry.js → p-e3d6e626.entry.js} +1 -1
  222. package/dist/vega/{p-49604637.entry.js → p-e44c5f70.entry.js} +1 -1
  223. package/dist/vega/{p-4047a36f.js → p-eac0f7ff.js} +1 -1
  224. package/dist/vega/{p-dc7b70e9.entry.js → p-eae914b0.entry.js} +1 -1
  225. package/dist/vega/{p-9ac32d6b.entry.js → p-eb87d418.entry.js} +1 -1
  226. package/dist/vega/{p-df272c95.entry.js → p-ed569397.entry.js} +1 -1
  227. package/dist/vega/p-f4931a1f.js +1 -0
  228. package/dist/vega/{p-30840b1d.entry.js → p-f61c9513.entry.js} +1 -1
  229. package/dist/vega/{p-ba5f6a53.entry.js → p-f8f056db.entry.js} +1 -1
  230. package/dist/vega/{p-0b6adb26.entry.js → p-fcfc7b00.entry.js} +1 -1
  231. package/dist/vega/{p-653c77ec.entry.js → p-ffe7cf8b.entry.js} +1 -1
  232. package/dist/vega/vega.esm.js +1 -1
  233. package/package.json +1 -1
  234. package/dist/vega/p-0eed617a.js +0 -1
  235. package/dist/vega/p-166e7211.entry.js +0 -1
  236. package/dist/vega/p-2383031a.js +0 -1
  237. package/dist/vega/p-2ade4dd9.js +0 -1
  238. package/dist/vega/p-378feb27.entry.js +0 -1
  239. package/dist/vega/p-40ef693f.entry.js +0 -1
  240. package/dist/vega/p-8876b776.js +0 -1
  241. package/dist/vega/p-9aa54f7e.entry.js +0 -1
  242. package/dist/vega/p-a49d0f17.entry.js +0 -1
  243. package/dist/vega/p-a66b60c4.js +0 -1
  244. package/dist/vega/p-a907df7a.entry.js +0 -1
  245. package/dist/vega/p-ab75d371.js +0 -1
  246. package/dist/vega/p-c3cb20ef.js +0 -1
  247. package/dist/vega/p-fa4552a1.entry.js +0 -1
  248. /package/dist/cjs/{feature-flag-controller-ccf4a113.js → feature-flag-controller-075fa683.js} +0 -0
  249. /package/dist/esm/{feature-flag-controller-723f1ff5.js → feature-flag-controller-690eac1d.js} +0 -0
  250. /package/dist/vega/{p-03b8af98.js → p-1e940ce8.js} +0 -0
@@ -335,4 +335,236 @@ describe('ElementAppender slimmer test suite', () => {
335
335
  expect(mockedComponent.getElementAppender().onScroll).toBeCalledTimes(1);
336
336
  });
337
337
  });
338
+ describe('Nest element appender', () => {
339
+ const createMockedComponent = (trigger, parentElement) => {
340
+ const component = new MockedComponent();
341
+ const target = new MockHTMLElement('body', 'div');
342
+ const appendableElement = new MockHTMLElement('body', 'div');
343
+ if (parentElement) {
344
+ parentElement.append(target);
345
+ }
346
+ appendableElement.classList.add('vega-force-hidden');
347
+ component.target = target;
348
+ component.appendableElement = appendableElement;
349
+ component.trigger = trigger;
350
+ return component;
351
+ };
352
+ const triggerHoverEvent = (from, to) => {
353
+ jest.useFakeTimers();
354
+ triggerMouseEvent(from, 'mouseleave');
355
+ triggerMouseEvent(to, 'mouseenter');
356
+ jest.advanceTimersByTime(100);
357
+ jest.useRealTimers();
358
+ };
359
+ test('should work proper while parent trigger is click and child trigger is click', () => {
360
+ const parent = createMockedComponent('click');
361
+ const child1 = createMockedComponent('click', parent.appendableElement);
362
+ const child2 = createMockedComponent('click', child1.appendableElement);
363
+ child2.componentDidLoad();
364
+ child1.componentDidLoad();
365
+ parent.componentDidLoad();
366
+ // show parent
367
+ parent.target.click();
368
+ // show child1
369
+ child1.target.click();
370
+ // show child2
371
+ child2.target.click();
372
+ child2.appendableElement.click();
373
+ triggerMouseEvent(child2.appendableElement, 'mousedown');
374
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
375
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
376
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
377
+ // hide child2
378
+ child2.target.click();
379
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
380
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
381
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
382
+ // hide child1
383
+ child1.target.click();
384
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
385
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
386
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
387
+ // hide parent
388
+ parent.target.click();
389
+ expect(parent.appendableElement).toHaveClass('vega-force-hidden');
390
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
391
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
392
+ // show parent
393
+ parent.target.click();
394
+ // show child1
395
+ child1.target.click();
396
+ // show child2
397
+ child2.target.click();
398
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
399
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
400
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
401
+ // outer click
402
+ triggerMouseEvent(document.documentElement, 'mousedown');
403
+ expect(parent.appendableElement).toHaveClass('vega-force-hidden');
404
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
405
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
406
+ });
407
+ test('should work proper while parent trigger is click and child trigger is hover', () => {
408
+ const parent = createMockedComponent('click');
409
+ const child1 = createMockedComponent('hover', parent.appendableElement);
410
+ const child2 = createMockedComponent('click', child1.appendableElement);
411
+ child2.componentDidLoad();
412
+ child1.componentDidLoad();
413
+ parent.componentDidLoad();
414
+ // show parent
415
+ parent.target.click();
416
+ // show child1
417
+ triggerHoverEvent(parent.target, child1.target);
418
+ // show child2
419
+ child2.target.click();
420
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
421
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
422
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
423
+ // hide child2
424
+ child2.target.click();
425
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
426
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
427
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
428
+ // hide child1
429
+ triggerHoverEvent(child1.target, parent.target);
430
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
431
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
432
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
433
+ // hide parent
434
+ parent.target.click();
435
+ expect(parent.appendableElement).toHaveClass('vega-force-hidden');
436
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
437
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
438
+ // show parent
439
+ parent.target.click();
440
+ // show child1
441
+ triggerHoverEvent(parent.target, child1.target);
442
+ // show child2
443
+ child2.target.click();
444
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
445
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
446
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
447
+ // mouse leave child1
448
+ triggerHoverEvent(child1.target, parent.target);
449
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
450
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
451
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
452
+ });
453
+ test('should work proper while parent trigger is hover and child trigger is hover', () => {
454
+ const parent = createMockedComponent('hover');
455
+ const child1 = createMockedComponent('hover', parent.appendableElement);
456
+ const child2 = createMockedComponent('hover', child1.appendableElement);
457
+ const outer = new MockHTMLElement('body', 'div');
458
+ child2.componentDidLoad();
459
+ child1.componentDidLoad();
460
+ parent.componentDidLoad();
461
+ // mouseenter parent
462
+ triggerHoverEvent(outer, parent.target);
463
+ // mouseenter child1
464
+ triggerHoverEvent(parent.target, child1.target);
465
+ // mouseenter child2
466
+ triggerHoverEvent(child1.target, child2.target);
467
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
468
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
469
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
470
+ // mouseleave child2
471
+ triggerHoverEvent(child2.appendableElement, child1.appendableElement);
472
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
473
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
474
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
475
+ // mouseleave child1
476
+ triggerHoverEvent(child1.appendableElement, parent.appendableElement);
477
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
478
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
479
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
480
+ // mouseleave parent
481
+ triggerHoverEvent(parent.appendableElement, outer);
482
+ expect(parent.appendableElement).toHaveClass('vega-force-hidden');
483
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
484
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
485
+ // mouseenter parent
486
+ triggerHoverEvent(outer, parent.target);
487
+ // mouseenter child1
488
+ triggerHoverEvent(parent.target, child1.target);
489
+ // mouseenter child2
490
+ triggerHoverEvent(child1.target, child2.target);
491
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
492
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
493
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
494
+ // mouseenter outer
495
+ triggerHoverEvent(child2.appendableElement, outer);
496
+ expect(parent.appendableElement).toHaveClass('vega-force-hidden');
497
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
498
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
499
+ });
500
+ test('should work proper while parent directly hide in click nest', () => {
501
+ const parent = createMockedComponent('click');
502
+ const child1 = createMockedComponent('click', parent.appendableElement);
503
+ const child2 = createMockedComponent('click', child1.appendableElement);
504
+ child2.componentDidLoad();
505
+ child1.componentDidLoad();
506
+ parent.componentDidLoad();
507
+ // show parent
508
+ parent.target.click();
509
+ // mouseenter child1
510
+ child1.target.click();
511
+ // show child2
512
+ child2.target.click();
513
+ child2.appendableElement.click();
514
+ triggerMouseEvent(child2.appendableElement, 'mousedown');
515
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
516
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
517
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
518
+ // parent directly hide
519
+ parent.hide();
520
+ expect(parent.appendableElement).toHaveClass('vega-force-hidden');
521
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
522
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
523
+ });
524
+ test('should work proper while parent directly hide in click and hover nest', () => {
525
+ const parent = createMockedComponent('click');
526
+ const child1 = createMockedComponent('hover', parent.appendableElement);
527
+ const child2 = createMockedComponent('click', child1.appendableElement);
528
+ child2.componentDidLoad();
529
+ child1.componentDidLoad();
530
+ parent.componentDidLoad();
531
+ // show parent
532
+ parent.target.click();
533
+ // show child1
534
+ triggerHoverEvent(parent.target, child1.target);
535
+ // show child2
536
+ child2.target.click();
537
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
538
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
539
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
540
+ // parent directly hide
541
+ parent.hide();
542
+ expect(parent.appendableElement).toHaveClass('vega-force-hidden');
543
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
544
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
545
+ });
546
+ test('should work proper while parent directly hide in hover nest', () => {
547
+ const parent = createMockedComponent('hover');
548
+ const child1 = createMockedComponent('hover', parent.appendableElement);
549
+ const child2 = createMockedComponent('hover', child1.appendableElement);
550
+ const outer = new MockHTMLElement('body', 'div');
551
+ child2.componentDidLoad();
552
+ child1.componentDidLoad();
553
+ parent.componentDidLoad();
554
+ // mouseenter parent
555
+ triggerHoverEvent(outer, parent.target);
556
+ // mouseenter child1
557
+ triggerHoverEvent(parent.target, child1.target);
558
+ // mouseenter child2
559
+ triggerHoverEvent(child1.target, child2.target);
560
+ expect(parent.appendableElement).not.toHaveClass('vega-force-hidden');
561
+ expect(child1.appendableElement).not.toHaveClass('vega-force-hidden');
562
+ expect(child2.appendableElement).not.toHaveClass('vega-force-hidden');
563
+ // parent directly hide
564
+ parent.hide();
565
+ expect(parent.appendableElement).toHaveClass('vega-force-hidden');
566
+ expect(child1.appendableElement).toHaveClass('vega-force-hidden');
567
+ expect(child2.appendableElement).toHaveClass('vega-force-hidden');
568
+ });
569
+ });
338
570
  });
@@ -8,7 +8,7 @@ import { MapToComponentField, MapToComponentMethod, VegaSlimmer } from 'vega-sli
8
8
  import { isNonNullable } from '../../types/type-guard';
9
9
  import ChangeManager from '../change-manager/change-manager';
10
10
  import domNodeSubjectFactory from '../change-manager/subject/dom-node-subject/dom-node-subject-factory';
11
- import { VegaInternalComponentDidRender } from '../event-manager/event-id/vega-internal-event-id';
11
+ import { VegaInternalComponentDidRender, VegaInternalPasteEvent, } from '../event-manager/event-id/vega-internal-event-id';
12
12
  import { waitForComponentDidRender } from '../common';
13
13
  /** The `StringInputFormatterSlimmer` class in TypeScript is used to format input values based on specified strategies and handle events like keydown, blur, and focus. */
14
14
  export class StringInputFormatterSlimmer extends VegaSlimmer {
@@ -51,7 +51,7 @@ export class StringInputFormatterSlimmer extends VegaSlimmer {
51
51
  const rawValue = target.value;
52
52
  const caretPosition = target.selectionStart; // selectionStart is nullable, link https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#dom-textarea/input-selectionstart
53
53
  if (this.inputFormatStrategy) {
54
- this.formatValue(rawValue.replace(/\s/g, ''), 'input', {
54
+ this.formatValue(rawValue, 'input', {
55
55
  caretPosition: e.inputType === 'insertFromPaste' ? undefined : caretPosition,
56
56
  });
57
57
  this.updateInputCaretPosition(rawValue, caretPosition);
@@ -66,6 +66,9 @@ export class StringInputFormatterSlimmer extends VegaSlimmer {
66
66
  if (this.disableCopyPaste) {
67
67
  e.preventDefault();
68
68
  }
69
+ else {
70
+ ChangeManager.notify(domNodeSubjectFactory.getSubject(this.host, VegaInternalPasteEvent), e);
71
+ }
69
72
  };
70
73
  }
71
74
  /**
@@ -31,7 +31,7 @@ export class ElementAppender {
31
31
  * target for the showConfigCallback.
32
32
  */
33
33
  constructor(showConfigCallback, showConfigCallbackTarget) {
34
- var _a;
34
+ var _a, _b;
35
35
  this.resizeObserverSlimmer = createDynamicSlimmer(ElementAppender, PageResizeObserverSlimmer, [], [
36
36
  { mapFrom: 'connectResizeObserver', mapTo: 'connectResizeObserver' },
37
37
  { mapFrom: 'disconnectResizeObserver', mapTo: 'disconnectResizeObserver' },
@@ -62,6 +62,7 @@ export class ElementAppender {
62
62
  this.showConfigCallbackTarget = showConfigCallbackTarget;
63
63
  const config = this.getShowConfig();
64
64
  (_a = config.appendableElement) === null || _a === void 0 ? void 0 : _a.classList.add('vega-force-hidden');
65
+ (_b = config.appendableElement) === null || _b === void 0 ? void 0 : _b.classList.add('vega-element-appender-appendable');
65
66
  }
66
67
  /**
67
68
  * It takes an element and appends it to the DOM, then adjusts its position and size to match the
@@ -212,7 +213,6 @@ export class ElementAppender {
212
213
  if (!this.showConfig.isScreenPosition) {
213
214
  this.initVisibleAppendElement();
214
215
  }
215
- this.showConfig.appendableElement.classList.add('vega-element-appender-appendable');
216
216
  this.showConfig.appendableElement.style.boxSizing = 'border-box';
217
217
  this.positionCalculationController.setCalculationStrategy();
218
218
  }
@@ -1,6 +1,6 @@
1
- import { F as FeatureFlag } from './feature-flag-controller-723f1ff5.js';
1
+ import { F as FeatureFlag } from './feature-flag-controller-690eac1d.js';
2
2
  import { V as VegaLoader, a as VegaNotify, b as VegaDialog, c as VegaEventManager, d as VegaZIndexManager, e as VegaSkeletonLoader } from './vega-skeleton-loader-controller-722a41c2.js';
3
- import { V as VegaThemeManager, a as VegaRTEContent } from './content-state-2de41bc0.js';
3
+ import { V as VegaThemeManager, a as VegaRTEContent } from './content-state-2b4fdc4f.js';
4
4
  import { M as MapToComponentMethod, V as VegaSlimmer, s as setVegaLogLevel, G as GlobalSlimmersRegistry } from './global-slimmer-registry-17c4efd4.js';
5
5
  import { v as vegaEnvManager } from './vega-env-manager-8f8dc473.js';
6
6
  import { V as VegaIconManager } from './icon-manager-638dd4d4.js';
@@ -9,7 +9,7 @@ import './ui-ed1283bb.js';
9
9
  import { V as VegaInternalTranslation, a as VegaTranslation, s as staticTranslations } from './translation-a18bc15e.js';
10
10
  import { T as TypographyUrls } from './typography-396de03f.js';
11
11
  import { V as ValidCreditCardNumberRule } from './valid-credit-card-number-rule-cc497bec.js';
12
- import { w as waitForVega } from './index-4153fe96.js';
12
+ import { w as waitForVega } from './index-707fec53.js';
13
13
  import { U as UPDATE_TRANSLATION } from './static-subject-title-249c76cd.js';
14
14
  import { C as ChangeManager } from './change-manager-6a7eb88c.js';
15
15
  import { O as Observer } from './dom-node-subject-factory-286df025.js';
@@ -311,7 +311,7 @@ function injectVegaRichTextEditorClassIntoGlobal() {
311
311
  * Inject VegaPublicValidationRules to global as a public api
312
312
  */
313
313
  function injectVegaPublicValidationRules() {
314
- void import('./public-rules-31433f1e.js').then((module) => {
314
+ void import('./public-rules-20db9763.js').then((module) => {
315
315
  Object.entries(module).forEach(([name, value]) => {
316
316
  globalThis[name] = value;
317
317
  });
@@ -1,7 +1,7 @@
1
1
  import { c as MapToComponentField, M as MapToComponentMethod, V as VegaSlimmer } from './global-slimmer-registry-17c4efd4.js';
2
2
  import { i as internalVegaEventManager, j as jqueryDelegatedStrategyController } from './internal-vega-event-manager-d2c962d2.js';
3
3
  import { v as vegaEnvManager } from './vega-env-manager-8f8dc473.js';
4
- import { F as FeatureFlag } from './feature-flag-controller-723f1ff5.js';
4
+ import { F as FeatureFlag } from './feature-flag-controller-690eac1d.js';
5
5
 
6
6
  var __decorate = (undefined && undefined.__decorate) || function (decorators, target, key, desc) {
7
7
  var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
@@ -1,6 +1,6 @@
1
1
  import { C as ChangeManager } from './change-manager-6a7eb88c.js';
2
2
  import { O as Observer, d as domNodeSubjectFactory } from './dom-node-subject-factory-286df025.js';
3
- import { V as VegaInternalRichTextEditorFlushChanges, a as VegaInternalRichTextEditorSelectionRangeChange } from './vega-internal-event-id-7809368b.js';
3
+ import { V as VegaInternalRichTextEditorFlushChanges, a as VegaInternalRichTextEditorSelectionRangeChange } from './vega-internal-event-id-d7113cf7.js';
4
4
  import { L as LogUtility } from './global-slimmer-registry-17c4efd4.js';
5
5
  import { i as isNonNullable } from './type-guard-158f6d7a.js';
6
6
  import { I as InjectVegaTelemetrySlimmer, c as createPublicAPIRuntimeMetricsSlimmer, g as generateUUID } from './create-public-api-runtime-metrics-slimmer-8ada793f.js';
@@ -1,7 +1,7 @@
1
1
  import { j as isBorderColorTokenType, b as BorderColors, e as BorderColorMap, k as isShadowsTokenType, f as Shadows, g as ShadowMap, l as isBorderTokenType, m as Borders, n as BorderMap, o as isSpacingTokenType, p as isBorderRadiusTokenType, q as isBackgroundColorTokenType, r as isTextColorTokenType, s as isBreakpointsTokenType, h as Spacing, t as isBorderStyleType, B as BorderRadius, C as Colors, u as isTypographyTokenType } from './type-guard-158f6d7a.js';
2
2
  import { B as Breakpoints } from './breakpoints-d9faf11c.js';
3
3
  import { L as LogUtility } from './global-slimmer-registry-17c4efd4.js';
4
- import { R as ResponsiveFormatFacade } from './responsive-format-facade-cf37ffd2.js';
4
+ import { R as ResponsiveFormatFacade } from './responsive-format-facade-175aee98.js';
5
5
  import { a as TypographyKeys } from './typography-396de03f.js';
6
6
  import { S as StateVariantFormatter, s as stateBackgroundColorFormatter } from './state-background-color-formatter-121ae7d3.js';
7
7
  import { a as BorderStyle } from './ui-8424715a.js';