genesys-spark-components 4.0.0-beta.46 → 4.0.0-beta.47

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 (300) hide show
  1. package/dist/cjs/genesys-webcomponents.cjs.js +1 -1
  2. package/dist/cjs/gux-accordion.cjs.entry.js +1 -1
  3. package/dist/cjs/gux-action-button.cjs.entry.js +1 -1
  4. package/dist/cjs/gux-action-toast-legacy.cjs.entry.js +1 -1
  5. package/dist/cjs/gux-advanced-dropdown-legacy.cjs.entry.js +1 -1
  6. package/dist/cjs/gux-all-row-select.cjs.entry.js +2 -2
  7. package/dist/cjs/gux-announce-beta.cjs.entry.js +1 -1
  8. package/dist/cjs/gux-badge.cjs.entry.js +1 -1
  9. package/dist/cjs/gux-blank-state.cjs.entry.js +1 -1
  10. package/dist/cjs/gux-breadcrumbs.cjs.entry.js +1 -1
  11. package/dist/cjs/gux-button-multi.cjs.entry.js +1 -1
  12. package/dist/cjs/gux-button-slot.cjs.entry.js +1 -1
  13. package/dist/cjs/gux-button.cjs.entry.js +1 -1
  14. package/dist/cjs/gux-calendar.cjs.entry.js +1 -1
  15. package/dist/cjs/gux-card.cjs.entry.js +1 -1
  16. package/dist/cjs/gux-column-manager.cjs.entry.js +1 -1
  17. package/dist/cjs/gux-content-search.cjs.entry.js +4 -4
  18. package/dist/cjs/gux-context-menu.cjs.entry.js +2 -2
  19. package/dist/cjs/gux-copy-to-clipboard.cjs.entry.js +1 -1
  20. package/dist/cjs/gux-date-beta.cjs.entry.js +1 -1
  21. package/dist/cjs/gux-date-time-beta.cjs.entry.js +1 -1
  22. package/dist/cjs/gux-datepicker.cjs.entry.js +1 -1
  23. package/dist/cjs/gux-disclosure-button-legacy.cjs.entry.js +1 -1
  24. package/dist/cjs/gux-dismiss-button.cjs.entry.js +1 -1
  25. package/dist/cjs/gux-dropdown-multi.cjs.entry.js +1 -1
  26. package/dist/cjs/gux-dropdown_3.cjs.entry.js +1 -1
  27. package/dist/cjs/gux-flyout-menu.cjs.entry.js +1 -1
  28. package/dist/cjs/gux-form-field-checkbox.cjs.entry.js +8 -4
  29. package/dist/cjs/gux-form-field-color.cjs.entry.js +1 -1
  30. package/dist/cjs/gux-form-field-dropdown.cjs.entry.js +1 -1
  31. package/dist/cjs/gux-form-field-input-clear-button.cjs.entry.js +1 -1
  32. package/dist/cjs/gux-form-field-number_3.cjs.entry.js +1 -1
  33. package/dist/cjs/gux-form-field-phone.cjs.entry.js +1 -1
  34. package/dist/cjs/gux-form-field-radio.cjs.entry.js +1 -1
  35. package/dist/cjs/gux-form-field-range.cjs.entry.js +1 -1
  36. package/dist/cjs/gux-form-field-search.cjs.entry.js +1 -1
  37. package/dist/cjs/gux-form-field-select.cjs.entry.js +1 -1
  38. package/dist/cjs/gux-form-field-text-like.cjs.entry.js +1 -1
  39. package/dist/cjs/gux-form-field-textarea.cjs.entry.js +1 -1
  40. package/dist/cjs/gux-form-field-time-picker.cjs.entry.js +1 -1
  41. package/dist/cjs/gux-form-field-time-zone-picker.cjs.entry.js +1 -1
  42. package/dist/cjs/gux-icon.cjs.entry.js +1 -1
  43. package/dist/cjs/gux-inline-alert.cjs.entry.js +1 -1
  44. package/dist/cjs/gux-list.cjs.entry.js +1 -1
  45. package/dist/cjs/gux-listbox-multi.cjs.entry.js +2 -1
  46. package/dist/cjs/gux-loading-message.cjs.entry.js +1 -1
  47. package/dist/cjs/gux-modal-legacy.cjs.entry.js +85 -0
  48. package/dist/cjs/gux-modal.cjs.entry.js +26 -50
  49. package/dist/cjs/gux-month-picker-beta.cjs.entry.js +1 -1
  50. package/dist/cjs/gux-notification-toast-legacy.cjs.entry.js +1 -1
  51. package/dist/cjs/gux-page-loading-spinner.cjs.entry.js +1 -1
  52. package/dist/cjs/gux-pagination-cursor.cjs.entry.js +1 -1
  53. package/dist/cjs/gux-pagination-legacy.cjs.entry.js +1 -1
  54. package/dist/cjs/gux-pagination.cjs.entry.js +1 -1
  55. package/dist/cjs/gux-phone-input-beta.cjs.entry.js +1 -1
  56. package/dist/cjs/gux-popover-list.cjs.entry.js +1 -1
  57. package/dist/cjs/gux-radial-loading.cjs.entry.js +1 -1
  58. package/dist/cjs/gux-radial-progress.cjs.entry.js +1 -1
  59. package/dist/cjs/gux-rating.cjs.entry.js +1 -1
  60. package/dist/cjs/gux-region-icon.cjs.entry.js +1 -1
  61. package/dist/cjs/gux-row-select.cjs.entry.js +2 -2
  62. package/dist/cjs/gux-screen-reader-beta.cjs.entry.js +1 -1
  63. package/dist/cjs/gux-segmented-control-beta.cjs.entry.js +1 -1
  64. package/dist/cjs/gux-simple-toast-legacy.cjs.entry.js +1 -1
  65. package/dist/cjs/gux-skip-navigation-list.cjs.entry.js +1 -1
  66. package/dist/cjs/gux-sort-control.cjs.entry.js +1 -1
  67. package/dist/cjs/gux-switch-legacy.cjs.entry.js +1 -1
  68. package/dist/cjs/gux-table-toolbar-action.cjs.entry.js +1 -1
  69. package/dist/cjs/gux-table-toolbar-custom-action.cjs.entry.js +1 -1
  70. package/dist/cjs/gux-table-toolbar-menu-button.cjs.entry.js +1 -1
  71. package/dist/cjs/gux-table-toolbar.cjs.entry.js +1 -1
  72. package/dist/cjs/gux-table.cjs.entry.js +1 -1
  73. package/dist/cjs/gux-tabs-advanced.cjs.entry.js +1 -1
  74. package/dist/cjs/gux-tabs.cjs.entry.js +3 -6
  75. package/dist/cjs/gux-tag.cjs.entry.js +1 -1
  76. package/dist/cjs/gux-text-highlight.cjs.entry.js +1 -1
  77. package/dist/cjs/gux-time-beta.cjs.entry.js +1 -1
  78. package/dist/cjs/gux-time-picker.cjs.entry.js +1 -1
  79. package/dist/cjs/gux-time-zone-picker-beta.cjs.entry.js +1 -1
  80. package/dist/cjs/gux-toast.cjs.entry.js +1 -1
  81. package/dist/cjs/gux-toggle.cjs.entry.js +1 -1
  82. package/dist/cjs/gux-tooltip.cjs.entry.js +1 -1
  83. package/dist/cjs/index-75c9f0d9.js +4 -0
  84. package/dist/cjs/loader.cjs.js +1 -1
  85. package/dist/cjs/{usage-b5bcd6f4.js → usage-0cb60b56.js} +2 -2
  86. package/dist/collection/collection-manifest.json +3 -2
  87. package/dist/collection/components/legacy/gux-modal-legacy/gux-modal-legacy.css +122 -0
  88. package/dist/collection/components/legacy/gux-modal-legacy/gux-modal-legacy.js +181 -0
  89. package/dist/collection/components/legacy/gux-modal-legacy/gux-modal-legacy.types.js +1 -0
  90. package/dist/collection/components/legacy/gux-modal-legacy/tests/gux-modal-legacy.e2e.js +301 -0
  91. package/dist/collection/components/legacy/gux-modal-legacy/tests/gux-modal-legacy.spec.js +200 -0
  92. package/dist/collection/components/stable/gux-button-multi/tests/gux-button-multi.e2e.js +10 -3
  93. package/dist/collection/components/stable/gux-content-search/gux-content-search.css +17 -4
  94. package/dist/collection/components/stable/gux-content-search/gux-content-search.js +2 -2
  95. package/dist/collection/components/stable/gux-content-search/tests/gux-content-search.e2e.js +5 -0
  96. package/dist/collection/components/stable/gux-context-menu/gux-context-menu.css +1 -0
  97. package/dist/collection/components/stable/gux-context-menu/tests/gux-context-menu.e2e.js +9 -2
  98. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.css +8 -4
  99. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.js +28 -2
  100. package/dist/collection/components/stable/gux-list/tests/gux-list.e2e.js +8 -1
  101. package/dist/collection/components/stable/gux-listbox-multi/gux-listbox-multi.js +1 -0
  102. package/dist/collection/components/stable/gux-modal/gux-modal.css +20 -54
  103. package/dist/collection/components/stable/gux-modal/gux-modal.js +64 -100
  104. package/dist/collection/components/stable/gux-modal/tests/gux-modal.e2e.js +119 -134
  105. package/dist/collection/components/stable/gux-modal/tests/gux-modal.spec.js +28 -88
  106. package/dist/collection/components/stable/gux-popup/tests/gux-popup.e2e.js +13 -1
  107. package/dist/collection/components/stable/gux-table/gux-all-row-select/gux-all-row-select.css +4 -7
  108. package/dist/collection/components/stable/gux-table/gux-all-row-select/gux-all-row-select.js +1 -1
  109. package/dist/collection/components/stable/gux-table/gux-row-select/gux-row-select.css +4 -7
  110. package/dist/collection/components/stable/gux-table/gux-row-select/gux-row-select.js +1 -1
  111. package/dist/collection/components/stable/gux-tabs/gux-tabs.css +5 -8
  112. package/dist/collection/components/stable/gux-tabs/gux-tabs.js +1 -22
  113. package/dist/collection/components/stable/gux-tabs-advanced/tests/gux-tabs-advanced.e2e.js +5 -0
  114. package/dist/component-specs.json +25 -7
  115. package/dist/deploy-info.json +3 -3
  116. package/dist/esm/genesys-webcomponents.js +1 -1
  117. package/dist/esm/gux-accordion.entry.js +1 -1
  118. package/dist/esm/gux-action-button.entry.js +1 -1
  119. package/dist/esm/gux-action-toast-legacy.entry.js +1 -1
  120. package/dist/esm/gux-advanced-dropdown-legacy.entry.js +1 -1
  121. package/dist/esm/gux-all-row-select.entry.js +2 -2
  122. package/dist/esm/gux-announce-beta.entry.js +1 -1
  123. package/dist/esm/gux-badge.entry.js +1 -1
  124. package/dist/esm/gux-blank-state.entry.js +1 -1
  125. package/dist/esm/gux-breadcrumbs.entry.js +1 -1
  126. package/dist/esm/gux-button-multi.entry.js +1 -1
  127. package/dist/esm/gux-button-slot.entry.js +1 -1
  128. package/dist/esm/gux-button.entry.js +1 -1
  129. package/dist/esm/gux-calendar.entry.js +1 -1
  130. package/dist/esm/gux-card.entry.js +1 -1
  131. package/dist/esm/gux-column-manager.entry.js +1 -1
  132. package/dist/esm/gux-content-search.entry.js +4 -4
  133. package/dist/esm/gux-context-menu.entry.js +2 -2
  134. package/dist/esm/gux-copy-to-clipboard.entry.js +1 -1
  135. package/dist/esm/gux-date-beta.entry.js +1 -1
  136. package/dist/esm/gux-date-time-beta.entry.js +1 -1
  137. package/dist/esm/gux-datepicker.entry.js +1 -1
  138. package/dist/esm/gux-disclosure-button-legacy.entry.js +1 -1
  139. package/dist/esm/gux-dismiss-button.entry.js +1 -1
  140. package/dist/esm/gux-dropdown-multi.entry.js +1 -1
  141. package/dist/esm/gux-dropdown_3.entry.js +1 -1
  142. package/dist/esm/gux-flyout-menu.entry.js +1 -1
  143. package/dist/esm/gux-form-field-checkbox.entry.js +8 -4
  144. package/dist/esm/gux-form-field-color.entry.js +1 -1
  145. package/dist/esm/gux-form-field-dropdown.entry.js +1 -1
  146. package/dist/esm/gux-form-field-input-clear-button.entry.js +1 -1
  147. package/dist/esm/gux-form-field-number_3.entry.js +1 -1
  148. package/dist/esm/gux-form-field-phone.entry.js +1 -1
  149. package/dist/esm/gux-form-field-radio.entry.js +1 -1
  150. package/dist/esm/gux-form-field-range.entry.js +1 -1
  151. package/dist/esm/gux-form-field-search.entry.js +1 -1
  152. package/dist/esm/gux-form-field-select.entry.js +1 -1
  153. package/dist/esm/gux-form-field-text-like.entry.js +1 -1
  154. package/dist/esm/gux-form-field-textarea.entry.js +1 -1
  155. package/dist/esm/gux-form-field-time-picker.entry.js +1 -1
  156. package/dist/esm/gux-form-field-time-zone-picker.entry.js +1 -1
  157. package/dist/esm/gux-icon.entry.js +1 -1
  158. package/dist/esm/gux-inline-alert.entry.js +1 -1
  159. package/dist/esm/gux-list.entry.js +1 -1
  160. package/dist/esm/gux-listbox-multi.entry.js +2 -1
  161. package/dist/esm/gux-loading-message.entry.js +1 -1
  162. package/dist/esm/gux-modal-legacy.entry.js +81 -0
  163. package/dist/esm/gux-modal.entry.js +26 -50
  164. package/dist/esm/gux-month-picker-beta.entry.js +1 -1
  165. package/dist/esm/gux-notification-toast-legacy.entry.js +1 -1
  166. package/dist/esm/gux-page-loading-spinner.entry.js +1 -1
  167. package/dist/esm/gux-pagination-cursor.entry.js +1 -1
  168. package/dist/esm/gux-pagination-legacy.entry.js +1 -1
  169. package/dist/esm/gux-pagination.entry.js +1 -1
  170. package/dist/esm/gux-phone-input-beta.entry.js +1 -1
  171. package/dist/esm/gux-popover-list.entry.js +1 -1
  172. package/dist/esm/gux-radial-loading.entry.js +1 -1
  173. package/dist/esm/gux-radial-progress.entry.js +1 -1
  174. package/dist/esm/gux-rating.entry.js +1 -1
  175. package/dist/esm/gux-region-icon.entry.js +1 -1
  176. package/dist/esm/gux-row-select.entry.js +2 -2
  177. package/dist/esm/gux-screen-reader-beta.entry.js +1 -1
  178. package/dist/esm/gux-segmented-control-beta.entry.js +1 -1
  179. package/dist/esm/gux-simple-toast-legacy.entry.js +1 -1
  180. package/dist/esm/gux-skip-navigation-list.entry.js +1 -1
  181. package/dist/esm/gux-sort-control.entry.js +1 -1
  182. package/dist/esm/gux-switch-legacy.entry.js +1 -1
  183. package/dist/esm/gux-table-toolbar-action.entry.js +1 -1
  184. package/dist/esm/gux-table-toolbar-custom-action.entry.js +1 -1
  185. package/dist/esm/gux-table-toolbar-menu-button.entry.js +1 -1
  186. package/dist/esm/gux-table-toolbar.entry.js +1 -1
  187. package/dist/esm/gux-table.entry.js +1 -1
  188. package/dist/esm/gux-tabs-advanced.entry.js +1 -1
  189. package/dist/esm/gux-tabs.entry.js +3 -6
  190. package/dist/esm/gux-tag.entry.js +1 -1
  191. package/dist/esm/gux-text-highlight.entry.js +1 -1
  192. package/dist/esm/gux-time-beta.entry.js +1 -1
  193. package/dist/esm/gux-time-picker.entry.js +1 -1
  194. package/dist/esm/gux-time-zone-picker-beta.entry.js +1 -1
  195. package/dist/esm/gux-toast.entry.js +1 -1
  196. package/dist/esm/gux-toggle.entry.js +1 -1
  197. package/dist/esm/gux-tooltip.entry.js +1 -1
  198. package/dist/esm/index-39e65a0a.js +4 -0
  199. package/dist/esm/loader.js +1 -1
  200. package/dist/esm/{usage-266740c3.js → usage-5789b84e.js} +2 -2
  201. package/dist/genesys-webcomponents/genesys-webcomponents.css +1 -1
  202. package/dist/genesys-webcomponents/genesys-webcomponents.esm.js +1 -1
  203. package/dist/genesys-webcomponents/{p-61f9e6eb.entry.js → p-017b2a26.entry.js} +1 -1
  204. package/dist/genesys-webcomponents/{p-9a4aaee1.entry.js → p-02c0ad2c.entry.js} +1 -1
  205. package/dist/genesys-webcomponents/{p-66592387.entry.js → p-030c2905.entry.js} +1 -1
  206. package/dist/genesys-webcomponents/{p-d93c71ef.entry.js → p-03472378.entry.js} +1 -1
  207. package/dist/genesys-webcomponents/{p-f42f2f0d.entry.js → p-041605ee.entry.js} +1 -1
  208. package/dist/genesys-webcomponents/{p-447aba64.entry.js → p-042ab51f.entry.js} +1 -1
  209. package/dist/genesys-webcomponents/{p-1f8d91b0.entry.js → p-04b36426.entry.js} +1 -1
  210. package/dist/genesys-webcomponents/{p-4e41e1fc.entry.js → p-09e6a6da.entry.js} +1 -1
  211. package/dist/genesys-webcomponents/{p-0112f4c0.entry.js → p-0ed02a07.entry.js} +1 -1
  212. package/dist/genesys-webcomponents/{p-95ddee1b.entry.js → p-11e8f856.entry.js} +1 -1
  213. package/dist/genesys-webcomponents/{p-2be332c3.entry.js → p-1e0ed2ef.entry.js} +1 -1
  214. package/dist/genesys-webcomponents/{p-26cc04bb.entry.js → p-1e5e9c08.entry.js} +1 -1
  215. package/dist/genesys-webcomponents/{p-9749237a.entry.js → p-2107d304.entry.js} +1 -1
  216. package/dist/genesys-webcomponents/{p-75e0ebc8.entry.js → p-25165b93.entry.js} +1 -1
  217. package/dist/genesys-webcomponents/{p-7d7bbfec.entry.js → p-2c521953.entry.js} +1 -1
  218. package/dist/genesys-webcomponents/{p-298f5a94.entry.js → p-2c5573df.entry.js} +1 -1
  219. package/dist/genesys-webcomponents/{p-fd77023f.entry.js → p-2d1b4156.entry.js} +1 -1
  220. package/dist/genesys-webcomponents/{p-ca6af08a.entry.js → p-3813e134.entry.js} +1 -1
  221. package/dist/genesys-webcomponents/{p-ea0296a2.entry.js → p-3ab4cf65.entry.js} +1 -1
  222. package/dist/genesys-webcomponents/{p-3b9d98ec.entry.js → p-3c1fc3a2.entry.js} +1 -1
  223. package/dist/genesys-webcomponents/{p-21d8e48c.entry.js → p-3c58171a.entry.js} +1 -1
  224. package/dist/genesys-webcomponents/p-433b4556.entry.js +1 -0
  225. package/dist/genesys-webcomponents/{p-bc9d75c2.entry.js → p-43f07bab.entry.js} +1 -1
  226. package/dist/genesys-webcomponents/{p-e73f4503.entry.js → p-4673acec.entry.js} +1 -1
  227. package/dist/genesys-webcomponents/{p-72d78bb8.entry.js → p-47355571.entry.js} +1 -1
  228. package/dist/genesys-webcomponents/{p-681c2cae.entry.js → p-47a4739c.entry.js} +1 -1
  229. package/dist/genesys-webcomponents/{p-c3103de4.entry.js → p-4898901d.entry.js} +1 -1
  230. package/dist/genesys-webcomponents/{p-93b098ea.entry.js → p-4db2c319.entry.js} +1 -1
  231. package/dist/genesys-webcomponents/p-523eae58.entry.js +1 -0
  232. package/dist/genesys-webcomponents/{p-c55a4aec.entry.js → p-575f08d0.entry.js} +1 -1
  233. package/dist/genesys-webcomponents/p-58c30fbe.entry.js +1 -0
  234. package/dist/genesys-webcomponents/{p-37258942.entry.js → p-5e7aab95.entry.js} +1 -1
  235. package/dist/genesys-webcomponents/{p-eef2e19d.entry.js → p-6141b01d.entry.js} +1 -1
  236. package/dist/genesys-webcomponents/{p-bc1ec126.js → p-62379b65.js} +1 -1
  237. package/dist/genesys-webcomponents/{p-a6d71efc.entry.js → p-6bc5840b.entry.js} +1 -1
  238. package/dist/genesys-webcomponents/{p-33c5a71d.entry.js → p-71f91757.entry.js} +1 -1
  239. package/dist/genesys-webcomponents/{p-852059e1.entry.js → p-73fea227.entry.js} +1 -1
  240. package/dist/genesys-webcomponents/{p-532827a9.entry.js → p-74e54c3a.entry.js} +1 -1
  241. package/dist/genesys-webcomponents/{p-0b69dcec.entry.js → p-763e4d78.entry.js} +1 -1
  242. package/dist/genesys-webcomponents/{p-0ec0bb1a.entry.js → p-779200fc.entry.js} +1 -1
  243. package/dist/genesys-webcomponents/{p-1beb2cb2.entry.js → p-77cdf7e0.entry.js} +1 -1
  244. package/dist/genesys-webcomponents/{p-fcf507a2.entry.js → p-79e24d27.entry.js} +1 -1
  245. package/dist/genesys-webcomponents/{p-2bf3d247.entry.js → p-7f85b076.entry.js} +1 -1
  246. package/dist/genesys-webcomponents/{p-3a502c58.entry.js → p-7f90f26c.entry.js} +1 -1
  247. package/dist/genesys-webcomponents/{p-c058bbe0.entry.js → p-84ed11ef.entry.js} +1 -1
  248. package/dist/genesys-webcomponents/{p-c0d9de8d.entry.js → p-853ae7ba.entry.js} +1 -1
  249. package/dist/genesys-webcomponents/{p-c9430e53.entry.js → p-88a5be5f.entry.js} +1 -1
  250. package/dist/genesys-webcomponents/{p-2a7e6126.entry.js → p-91ad9189.entry.js} +1 -1
  251. package/dist/genesys-webcomponents/{p-7fbea7e4.entry.js → p-92b3cf3e.entry.js} +1 -1
  252. package/dist/genesys-webcomponents/{p-772ee405.entry.js → p-932b0736.entry.js} +1 -1
  253. package/dist/genesys-webcomponents/{p-5801fcd6.entry.js → p-975515ed.entry.js} +1 -1
  254. package/dist/genesys-webcomponents/{p-210bf3e2.entry.js → p-a33a7c42.entry.js} +1 -1
  255. package/dist/genesys-webcomponents/{p-ed433fec.entry.js → p-a5b5e967.entry.js} +1 -1
  256. package/dist/genesys-webcomponents/{p-8fbc31c8.entry.js → p-a670378d.entry.js} +1 -1
  257. package/dist/genesys-webcomponents/{p-666a122c.entry.js → p-a94706ed.entry.js} +1 -1
  258. package/dist/genesys-webcomponents/{p-ac0c291d.entry.js → p-ad6e6f47.entry.js} +1 -1
  259. package/dist/genesys-webcomponents/{p-8db7c656.entry.js → p-af9d713a.entry.js} +1 -1
  260. package/dist/genesys-webcomponents/{p-407b3ebd.entry.js → p-b048cb05.entry.js} +1 -1
  261. package/dist/genesys-webcomponents/{p-49cceaf2.entry.js → p-b1ea6554.entry.js} +1 -1
  262. package/dist/genesys-webcomponents/p-b269fa15.entry.js +1 -0
  263. package/dist/genesys-webcomponents/{p-2ca5e73e.entry.js → p-b94bd4c0.entry.js} +1 -1
  264. package/dist/genesys-webcomponents/{p-9f60ae1f.entry.js → p-bb77f4cd.entry.js} +1 -1
  265. package/dist/genesys-webcomponents/p-bffbe775.entry.js +1 -0
  266. package/dist/genesys-webcomponents/{p-d35d4e79.entry.js → p-c1f94949.entry.js} +1 -1
  267. package/dist/genesys-webcomponents/{p-b987ebb3.entry.js → p-c40fe584.entry.js} +1 -1
  268. package/dist/genesys-webcomponents/{p-7e6a6247.entry.js → p-c5f146dc.entry.js} +1 -1
  269. package/dist/genesys-webcomponents/{p-b445f1ae.entry.js → p-c631a9fb.entry.js} +1 -1
  270. package/dist/genesys-webcomponents/p-c703c485.entry.js +1 -0
  271. package/dist/genesys-webcomponents/{p-ab4d78a7.entry.js → p-c9de9c12.entry.js} +1 -1
  272. package/dist/genesys-webcomponents/{p-fd00f179.entry.js → p-cb0b1b15.entry.js} +1 -1
  273. package/dist/genesys-webcomponents/{p-810c339a.entry.js → p-cc592cf0.entry.js} +1 -1
  274. package/dist/genesys-webcomponents/{p-c8d7a955.entry.js → p-cfe73514.entry.js} +1 -1
  275. package/dist/genesys-webcomponents/{p-69d62d74.entry.js → p-de5c30dc.entry.js} +1 -1
  276. package/dist/genesys-webcomponents/p-e02e891f.entry.js +1 -0
  277. package/dist/genesys-webcomponents/{p-642cc895.entry.js → p-e6b38860.entry.js} +1 -1
  278. package/dist/genesys-webcomponents/{p-80655bf7.entry.js → p-e906d496.entry.js} +1 -1
  279. package/dist/genesys-webcomponents/{p-61d86ba3.entry.js → p-f046f4af.entry.js} +1 -1
  280. package/dist/genesys-webcomponents/{p-d2bb29bc.entry.js → p-f504292a.entry.js} +1 -1
  281. package/dist/genesys-webcomponents/p-f64cac0b.entry.js +1 -0
  282. package/dist/genesys-webcomponents/{p-4e0eb7d5.entry.js → p-fa22e0f1.entry.js} +1 -1
  283. package/dist/genesys-webcomponents/{p-49bfec82.entry.js → p-fd80fe62.entry.js} +1 -1
  284. package/dist/genesys-webcomponents/{p-17d5af45.entry.js → p-fe60733a.entry.js} +1 -1
  285. package/dist/stencil-wrapper.js +1 -1
  286. package/dist/types/components/legacy/gux-modal-legacy/gux-modal-legacy.d.ts +37 -0
  287. package/dist/types/components/legacy/gux-modal-legacy/gux-modal-legacy.types.d.ts +1 -0
  288. package/dist/types/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.d.ts +2 -0
  289. package/dist/types/components/stable/gux-modal/gux-modal.d.ts +8 -21
  290. package/dist/types/components/stable/gux-tabs/gux-tabs.d.ts +0 -4
  291. package/dist/types/components.d.ts +38 -11
  292. package/dist/types/stencil-wrapper.d.ts +1 -1
  293. package/package.json +2 -2
  294. package/dist/genesys-webcomponents/p-236b8bd4.entry.js +0 -1
  295. package/dist/genesys-webcomponents/p-38871095.entry.js +0 -1
  296. package/dist/genesys-webcomponents/p-3c61673e.entry.js +0 -1
  297. package/dist/genesys-webcomponents/p-774043ee.entry.js +0 -1
  298. package/dist/genesys-webcomponents/p-8fff3309.entry.js +0 -1
  299. package/dist/genesys-webcomponents/p-d453c288.entry.js +0 -1
  300. package/dist/genesys-webcomponents/p-d95896ff.entry.js +0 -1
@@ -0,0 +1,301 @@
1
+ import { newSparkE2EPage, a11yCheck } from "../../../../test/e2eTestUtils";
2
+ describe('gux-modal-legacy', () => {
3
+ describe('#render', () => {
4
+ [
5
+ {
6
+ description: 'should render small modal',
7
+ html: `
8
+ <gux-modal-legacy lang="en" size="small">
9
+ <div slot="title">Modal Title</div>
10
+ <div slot="content">This contains the modal content.</div>
11
+ <div slot="left-align-buttons">
12
+ <gux-button>Cancel</gux-button>
13
+ </div>
14
+ <div slot="right-align-buttons">
15
+ <gux-button accent="primary">Accept</gux-button>
16
+ </div>
17
+ </gux-modal-legacy>
18
+ `
19
+ },
20
+ {
21
+ description: 'should render medium modal',
22
+ html: `
23
+ <gux-modal-legacy lang="en" size="medium">
24
+ <div slot="title">Modal Title</div>
25
+ <div slot="content">This contains the modal content.</div>
26
+ <div slot="left-align-buttons">
27
+ <gux-button>Cancel</gux-button>
28
+ </div>
29
+ <div slot="right-align-buttons">
30
+ <gux-button accent="primary">Accept</gux-button>
31
+ </div>
32
+ </gux-modal-legacy>
33
+ `
34
+ },
35
+ {
36
+ description: 'should render large modal',
37
+ html: `
38
+ <gux-modal-legacy lang="en" size="large">
39
+ <div slot="title">Modal Title</div>
40
+ <div slot="content">This contains the modal content.</div>
41
+ <div slot="left-align-buttons">
42
+ <gux-button>Cancel</gux-button>
43
+ </div>
44
+ <div slot="right-align-buttons">
45
+ <gux-button accent="primary">Accept</gux-button>
46
+ </div>
47
+ </gux-modal-legacy>
48
+ `
49
+ },
50
+ {
51
+ description: 'should render modal without a title',
52
+ html: `
53
+ <gux-modal-legacy lang="en" size="large">
54
+ <div slot="content">This contains the modal content.</div>
55
+ <div slot="left-align-buttons">
56
+ <gux-button>Cancel</gux-button>
57
+ </div>
58
+ <div slot="right-align-buttons">
59
+ <gux-button accent="primary">Accept</gux-button>
60
+ </div>
61
+ </gux-modal-legacy>
62
+ `
63
+ },
64
+ {
65
+ description: 'should render modal without buttons',
66
+ html: `
67
+ <gux-modal-legacy lang="en" size="small">
68
+ <div slot="title">Modal Title</div>
69
+ <div slot="content">This contains the modal content.</div>
70
+ </gux-modal-legacy>
71
+ `
72
+ },
73
+ {
74
+ description: 'should render modal with just left align buttons',
75
+ html: `
76
+ <gux-modal-legacy lang="en" size="small">
77
+ <div slot="title">Modal Title</div>
78
+ <div slot="content">This contains the modal content.</div>
79
+ <div slot="left-align-buttons">
80
+ <gux-button>Cancel</gux-button>
81
+ </div>
82
+ </gux-modal-legacy>
83
+ `
84
+ },
85
+ {
86
+ description: 'should render modal with just right align buttons',
87
+ html: `
88
+ <gux-modal-legacy lang="en" size="small">
89
+ <div slot="title">Modal Title</div>
90
+ <div slot="content">This contains the modal content.</div>
91
+ <div slot="right-align-buttons">
92
+ <gux-button accent="primary">Accept</gux-button>
93
+ </div>
94
+ </gux-modal-legacy>
95
+ `
96
+ },
97
+ {
98
+ description: 'should render small modal by default',
99
+ html: `
100
+ <gux-modal-legacy lang="en">
101
+ <div slot="title">Modal Title</div>
102
+ <div slot="content">This contains the modal content.</div>
103
+ <div slot="left-align-buttons">
104
+ <gux-button>Cancel</gux-button>
105
+ </div>
106
+ <div slot="right-align-buttons">
107
+ <gux-button accent="primary">Accept</gux-button>
108
+ </div>
109
+ </gux-modal-legacy>
110
+ `
111
+ }
112
+ ].forEach(({ description, html }) => {
113
+ it(description, async () => {
114
+ const page = await newSparkE2EPage({ html });
115
+ const element = await page.find('gux-modal-legacy');
116
+ expect(element.outerHTML).toMatchSnapshot();
117
+ element.setAttribute('hidden', true);
118
+ await page.waitForChanges();
119
+ await a11yCheck(page);
120
+ expect(element.outerHTML).toMatchSnapshot();
121
+ });
122
+ });
123
+ });
124
+ describe('dismiss', () => {
125
+ it('click dismiss button', async () => {
126
+ const html = `
127
+ <gux-modal-legacy lang="en" size="small">
128
+ <div slot="title">Modal Title</div>
129
+ <div slot="content">This contains the modal content.</div>
130
+ <div slot="left-align-buttons">
131
+ <gux-button>Cancel</gux-button>
132
+ </div>
133
+ <div slot="right-align-buttons">
134
+ <gux-button accent="primary">Accept</gux-button>
135
+ </div>
136
+ </gux-modal-legacy>
137
+ `;
138
+ const page = await newSparkE2EPage({ html });
139
+ const element = await page.find('gux-modal-legacy');
140
+ const dismissButtonElement = await element.find('pierce/gux-dismiss-button');
141
+ const dismissButton = await dismissButtonElement.find('pierce/button');
142
+ const guxdismissSpy = await page.spyOnEvent('guxdismiss');
143
+ const clickSpy = await page.spyOnEvent('click');
144
+ expect(guxdismissSpy).not.toHaveReceivedEvent();
145
+ expect(clickSpy).not.toHaveReceivedEvent();
146
+ expect(await page.find('gux-modal-legacy')).not.toBeNull();
147
+ await dismissButton.click();
148
+ await page.waitForChanges();
149
+ expect(guxdismissSpy).toHaveReceivedEvent();
150
+ expect(clickSpy).not.toHaveReceivedEvent();
151
+ expect(await page.find('gux-modal-legacy')).toBeNull();
152
+ });
153
+ it('click dismiss button and prevent default', async () => {
154
+ const html = `
155
+ <gux-modal-legacy lang="en" size="small">
156
+ <div slot="title">Modal Title</div>
157
+ <div slot="content">This contains the modal content.</div>
158
+ <div slot="left-align-buttons">
159
+ <gux-button>Cancel</gux-button>
160
+ </div>
161
+ <div slot="right-align-buttons">
162
+ <gux-button accent="primary">Accept</gux-button>
163
+ </div>
164
+ </gux-modal-legacy>
165
+ `;
166
+ const page = await newSparkE2EPage({ html });
167
+ const element = await page.find('gux-modal-legacy');
168
+ const dismissButtonElement = await element.find('pierce/gux-dismiss-button');
169
+ const dismissButton = await dismissButtonElement.find('pierce/button');
170
+ const guxdismissSpy = await page.spyOnEvent('guxdismiss');
171
+ const clickSpy = await page.spyOnEvent('click');
172
+ await page.evaluate(() => {
173
+ document.addEventListener('guxdismiss', event => {
174
+ event.preventDefault();
175
+ });
176
+ });
177
+ expect(guxdismissSpy).not.toHaveReceivedEvent();
178
+ expect(clickSpy).not.toHaveReceivedEvent();
179
+ expect(await page.find('gux-modal-legacy')).not.toBeNull();
180
+ await dismissButton.click();
181
+ await page.waitForChanges();
182
+ expect(guxdismissSpy).toHaveReceivedEvent();
183
+ expect(clickSpy).not.toHaveReceivedEvent();
184
+ expect(await page.find('gux-modal-legacy')).not.toBeNull();
185
+ });
186
+ it('escape key dismiss', async () => {
187
+ const html = `
188
+ <gux-modal-legacy lang="en" size="small">
189
+ <div slot="title">Modal Title</div>
190
+ <div slot="content">This contains the modal content.</div>
191
+ <div slot="left-align-buttons">
192
+ <gux-button>Cancel</gux-button>
193
+ </div>
194
+ <div slot="right-align-buttons">
195
+ <gux-button accent="primary">Accept</gux-button>
196
+ </div>
197
+ </gux-modal-legacy>
198
+ `;
199
+ const page = await newSparkE2EPage({ html });
200
+ const modalEl = await page.find('gux-modal-legacy');
201
+ const guxdismissSpy = await page.spyOnEvent('guxdismiss');
202
+ expect(guxdismissSpy).not.toHaveReceivedEvent();
203
+ expect(modalEl).not.toBeNull();
204
+ await page.keyboard.down('Escape');
205
+ await page.waitForChanges();
206
+ expect(guxdismissSpy).toHaveReceivedEvent();
207
+ expect(await page.find('gux-modal-legacy')).toBeNull();
208
+ });
209
+ });
210
+ describe('focus', () => {
211
+ const focusModalHtml = (props = '') => `
212
+ <gux-modal-legacy lang="en" size="small" trap-focus="true" ${props}>
213
+ <div slot="title">Modal Title</div>
214
+ <div slot="content">This contains the modal content.</div>
215
+ <div slot="left-align-buttons">
216
+ <gux-button id="cancel-button">Cancel</gux-button>
217
+ </div>
218
+ <div slot="right-align-buttons">
219
+ <gux-button id="accept-button" accent="primary">Accept</gux-button>
220
+ </div>
221
+ </gux-modal-legacy>
222
+ `;
223
+ const modalContainerHtml = `
224
+ <div id="modal-container"></div>
225
+ <button id="other-button">Do Nothing</button>
226
+ <button id="modal-trigger">Open Modal</button>
227
+ `;
228
+ const setupContainerPage = async (modalHtml) => {
229
+ const page = await newSparkE2EPage({ html: modalContainerHtml });
230
+ await page.evaluate(html => {
231
+ var _a;
232
+ (_a = document
233
+ .getElementById('modal-trigger')) === null || _a === void 0 ? void 0 : _a.addEventListener('click', () => {
234
+ if (document.getElementById('modal-container'))
235
+ document.getElementById('modal-container').innerHTML = html;
236
+ });
237
+ }, modalHtml);
238
+ return page;
239
+ };
240
+ const getFocusedElementText = (page) => page.evaluate(() => document.activeElement.textContent);
241
+ const getFocusedShadowElementText = (page) => page.evaluate(() => document.querySelector('gux-modal-legacy').shadowRoot.activeElement
242
+ .textContent);
243
+ const getFocusedShadowElementTagName = (page) => page.evaluate(() => document.querySelector('gux-modal-legacy').shadowRoot.activeElement
244
+ .tagName);
245
+ it('focuses the dismiss button by defualt', async () => {
246
+ const page = await setupContainerPage(focusModalHtml());
247
+ await page.click('#modal-trigger');
248
+ await page.waitForChanges();
249
+ expect(await page.find('gux-modal-legacy')).not.toBeNull();
250
+ expect(await getFocusedShadowElementText(page)).toBe('');
251
+ expect(await getFocusedShadowElementTagName(page)).toBe('GUX-DISMISS-BUTTON');
252
+ });
253
+ test('can focus a specific focusable element', async () => {
254
+ const page = await setupContainerPage(focusModalHtml('initial-focus="#accept-button"'));
255
+ await page.click('#modal-trigger');
256
+ await page.waitForChanges();
257
+ expect(await page.find('gux-modal-legacy')).not.toBeNull();
258
+ expect(await getFocusedElementText(page)).toBe('Accept');
259
+ });
260
+ test('focuses the dismiss button if there are no other focusable elements', async () => {
261
+ const page = await setupContainerPage(`
262
+ <gux-modal-legacy lang="en" size="small">
263
+ <div slot="content">This contains the modal content.</div>
264
+ </gux-modal-legacy>
265
+ `);
266
+ await page.click('#modal-trigger');
267
+ await page.waitForChanges();
268
+ expect(await page.find('gux-modal-legacy')).not.toBeNull();
269
+ expect(await getFocusedShadowElementText(page)).toBe('');
270
+ expect(await getFocusedShadowElementTagName(page)).toBe('GUX-DISMISS-BUTTON');
271
+ });
272
+ test('traps focus in the modal', async () => {
273
+ const page = await setupContainerPage(focusModalHtml());
274
+ await page.click('#modal-trigger');
275
+ await page.waitForChanges();
276
+ expect(await getFocusedShadowElementText(page)).toBe('');
277
+ expect(await getFocusedShadowElementTagName(page)).toBe('GUX-DISMISS-BUTTON');
278
+ await page.keyboard.press('Tab');
279
+ expect(await getFocusedElementText(page)).toBe('Cancel');
280
+ await page.keyboard.press('Tab');
281
+ expect(await getFocusedElementText(page)).toBe('Accept');
282
+ await page.keyboard.press('Tab');
283
+ expect(await getFocusedShadowElementText(page)).toBe('');
284
+ expect(await getFocusedShadowElementTagName(page)).toBe('GUX-DISMISS-BUTTON');
285
+ await page.keyboard.down('Shift');
286
+ await page.keyboard.press('Tab');
287
+ expect(await getFocusedShadowElementText(page)).toBe('');
288
+ expect(await getFocusedShadowElementTagName(page)).toBe('GUX-DISMISS-BUTTON');
289
+ });
290
+ test('returns focus to the originally focused element when the modal closes', async () => {
291
+ const page = await setupContainerPage(focusModalHtml());
292
+ await page.click('#modal-trigger');
293
+ await page.waitForChanges();
294
+ expect(await getFocusedShadowElementText(page)).toBe('');
295
+ expect(await getFocusedShadowElementTagName(page)).toBe('GUX-DISMISS-BUTTON');
296
+ await page.keyboard.down('Escape');
297
+ await page.waitForChanges();
298
+ expect(await getFocusedElementText(page)).toBe('Open Modal');
299
+ });
300
+ });
301
+ });
@@ -0,0 +1,200 @@
1
+ import { newSpecPage } from "../../../../test/specTestUtils";
2
+ import { GuxButton } from "../../../stable/gux-button/gux-button";
3
+ import { GuxModalLegacy } from "../gux-modal-legacy";
4
+ import { GuxDismissButton } from "../../../stable/gux-dismiss-button/gux-dismiss-button";
5
+ const components = [GuxButton, GuxModalLegacy, GuxDismissButton];
6
+ const language = 'en';
7
+ describe('gux-modal-legacy', () => {
8
+ describe('#render', () => {
9
+ [
10
+ {
11
+ description: 'should render small modal',
12
+ html: `
13
+ <gux-modal-legacy size="small">
14
+ <div slot="title">Modal Title</div>
15
+ <div slot="content">This contains the modal content.</div>
16
+ <div slot="left-align-buttons">
17
+ <gux-button>Cancel</gux-button>
18
+ </div>
19
+ <div slot="right-align-buttons">
20
+ <gux-button accent='primary'>Accept</gux-button>
21
+ </div>
22
+ </gux-modal-legacy>
23
+ `
24
+ },
25
+ {
26
+ description: 'should render medium modal',
27
+ html: `
28
+ <gux-modal-legacy size="medium">
29
+ <div slot="title">Modal Title</div>
30
+ <div slot="content">This contains the modal content.</div>
31
+ <div slot="left-align-buttons">
32
+ <gux-button>Cancel</gux-button>
33
+ </div>
34
+ <div slot="right-align-buttons">
35
+ <gux-button accent='primary'>Accept</gux-button>
36
+ </div>
37
+ </gux-modal-legacy>
38
+ `
39
+ },
40
+ {
41
+ description: 'should render large modal',
42
+ html: `
43
+ <gux-modal-legacy size="large">
44
+ <div slot="title">Modal Title</div>
45
+ <div slot="content">This contains the modal content.</div>
46
+ <div slot="left-align-buttons">
47
+ <gux-button>Cancel</gux-button>
48
+ </div>
49
+ <div slot="right-align-buttons">
50
+ <gux-button accent='primary'>Accept</gux-button>
51
+ </div>
52
+ </gux-modal-legacy>
53
+ `
54
+ },
55
+ {
56
+ description: 'should render modal without a title',
57
+ html: `
58
+ <gux-modal-legacy size="large">
59
+ <div slot="content">This contains the modal content.</div>
60
+ <div slot="left-align-buttons">
61
+ <gux-button>Cancel</gux-button>
62
+ </div>
63
+ <div slot="right-align-buttons">
64
+ <gux-button accent='primary'>Accept</gux-button>
65
+ </div>
66
+ </gux-modal-legacy>
67
+ `
68
+ },
69
+ {
70
+ description: 'should render modal without buttons',
71
+ html: `
72
+ <gux-modal-legacy size="small">
73
+ <div slot="title">Modal Title</div>
74
+ <div slot="content">This contains the modal content.</div>
75
+ </gux-modal-legacy>
76
+ `
77
+ },
78
+ {
79
+ description: 'should render modal with just left align buttons',
80
+ html: `
81
+ <gux-modal-legacy size="small">
82
+ <div slot="title">Modal Title</div>
83
+ <div slot="content">This contains the modal content.</div>
84
+ <div slot="left-align-buttons">
85
+ <gux-button>Cancel</gux-button>
86
+ </div>
87
+ </gux-modal-legacy>
88
+ `
89
+ },
90
+ {
91
+ description: 'should render modal with just right align buttons',
92
+ html: `
93
+ <gux-modal-legacy size="small">
94
+ <div slot="title">Modal Title</div>
95
+ <div slot="content">This contains the modal content.</div>
96
+ <div slot="right-align-buttons">
97
+ <gux-button accent='primary'>Accept</gux-button>
98
+ </div>
99
+ </gux-modal-legacy>
100
+ `
101
+ },
102
+ {
103
+ description: 'should render modal with a specified initial focus element',
104
+ html: `
105
+ <gux-modal-legacy initial-focus="#cancelButton">
106
+ <div slot="title">Modal Title</div>
107
+ <div slot="content">This contains the modal content.</div>
108
+ <div slot="left-align-buttons">
109
+ <gux-button id="cancelButton">Cancel</gux-button>
110
+ </div>
111
+ <div slot="right-align-buttons">
112
+ <gux-button accent='primary'>Accept</gux-button>
113
+ </div>
114
+ </gux-modal-legacy>
115
+ `
116
+ },
117
+ {
118
+ description: 'should render small modal by default',
119
+ html: `
120
+ <gux-modal-legacy>
121
+ <div slot="title">Modal Title</div>
122
+ <div slot="content">This contains the modal content.</div>
123
+ <div slot="left-align-buttons">
124
+ <gux-button>Cancel</gux-button>
125
+ </div>
126
+ <div slot="right-align-buttons">
127
+ <gux-button accent='primary'>Accept</gux-button>
128
+ </div>
129
+ </gux-modal-legacy>
130
+ `
131
+ }
132
+ ].forEach(({ description, html }) => {
133
+ it(description, async () => {
134
+ const page = await newSpecPage({ components, html, language });
135
+ expect(page.rootInstance).toBeInstanceOf(GuxModalLegacy);
136
+ expect(page.root).toMatchSnapshot();
137
+ page.rootInstance.hidden = true;
138
+ await page.waitForChanges();
139
+ expect(page.root).toMatchSnapshot();
140
+ // Disconnect so that the focus trap is properly cleaned up
141
+ page.root.remove();
142
+ });
143
+ });
144
+ });
145
+ describe('dismiss', () => {
146
+ it('click dismiss button', async () => {
147
+ const html = `
148
+ <gux-modal-legacy size="small">
149
+ <div slot="title">Modal Title</div>
150
+ <div slot="content">This contains the modal content.</div>
151
+ <div slot="left-align-buttons">
152
+ <gux-button>Cancel</gux-button>
153
+ </div>
154
+ <div slot="right-align-buttons">
155
+ <gux-button accent='primary'>Accept</gux-button>
156
+ </div>
157
+ </gux-modal-legacy>
158
+ `;
159
+ const page = await newSpecPage({ components, html, language });
160
+ const element = page.root;
161
+ const dismissButton = page.root.shadowRoot.querySelector('gux-dismiss-button');
162
+ const guxdismissSpy = jest.fn();
163
+ const clickSpy = jest.fn();
164
+ const elementRemoveSpy = jest.spyOn(element, 'remove');
165
+ page.win.addEventListener('guxdismiss', guxdismissSpy);
166
+ page.win.addEventListener('click', clickSpy);
167
+ dismissButton.click();
168
+ await page.waitForChanges();
169
+ expect(guxdismissSpy).toHaveBeenCalled();
170
+ expect(clickSpy).not.toHaveBeenCalled();
171
+ expect(elementRemoveSpy).toBeCalledWith();
172
+ page.root.remove();
173
+ });
174
+ it('click dismiss button and prevent default', async () => {
175
+ const html = `
176
+ <gux-modal-legacy size="small">
177
+ <div slot="title">Modal Title</div>
178
+ <div slot="content">This contains the modal content.</div>
179
+ <div slot="left-align-buttons">
180
+ <gux-button>Cancel</gux-button>
181
+ </div>
182
+ <div slot="right-align-buttons">
183
+ <gux-button accent='primary'>Accept</gux-button>
184
+ </div>
185
+ </gux-modal-legacy>
186
+ `;
187
+ const page = await newSpecPage({ components, html, language });
188
+ const element = page.root;
189
+ const dismissButton = page.root.shadowRoot.querySelector('gux-dismiss-button');
190
+ const elementRemoveSpy = jest.spyOn(element, 'remove');
191
+ page.win.addEventListener('guxdismiss', (event) => {
192
+ event.preventDefault();
193
+ });
194
+ dismissButton.click();
195
+ await page.waitForChanges();
196
+ expect(elementRemoveSpy).not.toBeCalled();
197
+ page.root.remove();
198
+ });
199
+ });
200
+ });
@@ -1,4 +1,11 @@
1
1
  import { newSparkE2EPage, a11yCheck } from "../../../../test/e2eTestUtils";
2
+ const axeExclusions = [
3
+ {
4
+ issueId: 'aria-required-children',
5
+ target: 'gux-button-multi,gux-list',
6
+ exclusionReason: 'To be addressed in COMUI-2387. New violation picked up after upgrading from axe-core v4.4.2 to v4.8.2'
7
+ }
8
+ ];
2
9
  async function clickDropdownButton(page) {
3
10
  return await page.click('pierce/.gux-dropdown-button > button');
4
11
  }
@@ -25,7 +32,7 @@ describe('gux-button-multi', () => {
25
32
  it('renders', async () => {
26
33
  const page = await newSparkE2EPage({ html });
27
34
  const element = await page.find('gux-button-multi');
28
- await a11yCheck(page);
35
+ await a11yCheck(page, axeExclusions);
29
36
  expect(element).toHaveAttribute('hydrated');
30
37
  });
31
38
  it('should fire open and close events if not disabled on click', async () => {
@@ -33,7 +40,7 @@ describe('gux-button-multi', () => {
33
40
  const onOpen = await page.spyOnEvent('open');
34
41
  const onClose = await page.spyOnEvent('close');
35
42
  await clickDropdownButton(page);
36
- await a11yCheck(page);
43
+ await a11yCheck(page, axeExclusions);
37
44
  await clickDropdownButton(page);
38
45
  expect(onOpen).toHaveReceivedEventTimes(1);
39
46
  expect(onClose).toHaveReceivedEventTimes(1);
@@ -54,7 +61,7 @@ describe('gux-button-multi', () => {
54
61
  element.setAttribute('disabled', 'disabled');
55
62
  await page.waitForChanges();
56
63
  await clickDropdownButton(page);
57
- await a11yCheck(page);
64
+ await a11yCheck(page, axeExclusions);
58
65
  expect(onOpen).toHaveReceivedEventTimes(0);
59
66
  });
60
67
  it('should not fire open event if disabled using the keyboard', async () => {
@@ -4,22 +4,30 @@
4
4
  min-width: 300px;
5
5
  }
6
6
 
7
+ ::slotted(input[disabled]) {
8
+ opacity: var(--gse-ui-formControl-input-disabled-opacity);
9
+ }
10
+
7
11
  ::slotted(input) {
8
12
  box-sizing: border-box;
9
13
  flex-basis: 100%;
10
14
  flex-shrink: 1;
11
- width: 100%;
15
+ width: 120px;
16
+ overflow: hidden;
12
17
  font-family: var(--gse-ui-search-counter-text-fontFamily);
13
18
  font-size: var(--gse-ui-search-counter-text-fontSize);
14
19
  font-weight: var(--gse-ui-search-counter-text-fontWeight);
15
20
  line-height: var(--gse-ui-search-counter-text-lineHeight);
21
+ color: var(--gse-ui-formControl-input-populatedColor);
22
+ text-overflow: ellipsis;
23
+ white-space: nowrap;
16
24
  background-image: none;
17
25
  border: 0;
18
26
  border-radius: 0;
19
27
  outline: none;
20
28
  }
21
29
  ::slotted(input)::placeholder {
22
- color: var(--gse-ui-formControl-input-placeholderColor);
30
+ color: var(--gse-ui-formControl-input-populatedColor);
23
31
  }
24
32
  ::slotted(input).gux-focused, ::slotted(input):focus, ::slotted(input):focus-visible {
25
33
  border: 0;
@@ -40,6 +48,10 @@
40
48
  border: var(--gse-ui-formControl-input-default-border-width) var(--gse-ui-formControl-input-default-border-style) var(--gse-ui-formControl-input-default-border-color);
41
49
  border-radius: var(--gse-ui-formControl-input-borderRadius);
42
50
  }
51
+ .gux-content-search gux-truncate {
52
+ display: flex;
53
+ align-items: center;
54
+ }
43
55
  .gux-content-search.gux-disabled {
44
56
  pointer-events: none;
45
57
  cursor: default;
@@ -50,7 +62,7 @@
50
62
  border-radius: var(--gse-ui-formControl-focusRing-borderRadius);
51
63
  outline: var(--gse-ui-formControl-input-focus-border-width) var(--gse-ui-formControl-input-focus-border-style) var(--gse-ui-formControl-input-focus-border-color);
52
64
  }
53
- .gux-content-search:not(:disabled):hover {
65
+ .gux-content-search:not(:disabled):not(.gux-disabled):hover {
54
66
  border: var(--gse-ui-formControl-input-hover-border-width) var(--gse-ui-formControl-input-hover-border-style) var(--gse-ui-formControl-input-hover-border-color);
55
67
  }
56
68
  .gux-content-search .gux-search-icon {
@@ -126,8 +138,8 @@
126
138
  gap: var(--gse-ui-search-counter-gap);
127
139
  }
128
140
  .gux-content-search .gux-content-control-panel .gux-navigation-panel .gux-navigation-divider {
129
- width: 1px;
130
141
  height: 16px;
142
+ color: var(--gse-ui-search-counter-default-foregroundColor);
131
143
  background-color: #c6c8ce;
132
144
  border: 1px var(--gse-ui-search-counter-divider-border-style) var(--gse-ui-search-counter-divider-border-color);
133
145
  }
@@ -137,6 +149,7 @@
137
149
  }
138
150
  .gux-content-search .gux-content-control-panel .gux-navigation-panel .gux-navigation-result {
139
151
  align-items: center;
152
+ color: var(--gse-ui-search-counter-default-foregroundColor);
140
153
  white-space: nowrap;
141
154
  }
142
155
  .gux-content-search .gux-content-control-panel .gux-navigation-panel .gux-previous-button {
@@ -48,7 +48,7 @@ export class GuxContentSearch {
48
48
  return (h("div", { class: {
49
49
  'gux-content-search': true,
50
50
  'gux-disabled': this.disabled
51
- } }, h("div", { class: "gux-search-icon" }, h("gux-icon", { decorative: true, "icon-name": "search" })), h("slot", null), this.getNavigationPanel()));
51
+ } }, h("div", { class: "gux-search-icon" }, h("gux-icon", { decorative: true, "icon-name": "search" })), h("gux-truncate", { "max-lines": "1" }, h("slot", null)), this.getNavigationPanel()));
52
52
  }
53
53
  getNavigationPanel() {
54
54
  if (this.showNavigationPanel()) {
@@ -59,7 +59,7 @@ export class GuxContentSearch {
59
59
  } }, h("span", { class: {
60
60
  'gux-navigation-result': true,
61
61
  'gux-navigation-result-disabled': disableNavigationPanel
62
- } }, this.matchCountResult()), h("div", { class: "gux-navigation-buttons" }, h("button", { type: "button", class: "gux-previous-button", title: this.i18n('navigatePreviousBtn'), "aria-label": this.i18n('navigatePreviousBtn'), onClick: () => this.previousClick(), disabled: disableNavigationPanel }, h("gux-icon", { decorative: true, "icon-name": "arrow-solid-up" })), h("button", { type: "button", class: "gux-next-button", title: this.i18n('navigateNextBtn'), "aria-label": this.i18n('navigateNextBtn'), onClick: () => this.nextClick(), disabled: disableNavigationPanel }, h("gux-icon", { decorative: true, "icon-name": "arrow-solid-down" }))), h("div", { class: "gux-navigation-divider" })), h("button", { class: "gux-clear-button", tabIndex: -1, type: "button", title: this.i18n('clear'), onClick: () => void this.clear() }, h("gux-icon", { "icon-name": "close", decorative: true }))));
62
+ } }, this.matchCountResult()), h("div", { class: "gux-navigation-buttons" }, h("button", { type: "button", class: "gux-previous-button", title: this.i18n('navigatePreviousBtn'), "aria-label": this.i18n('navigatePreviousBtn'), onClick: () => this.previousClick(), disabled: disableNavigationPanel }, h("gux-icon", { decorative: true, "icon-name": "arrow-solid-up" })), h("button", { type: "button", class: "gux-next-button", title: this.i18n('navigateNextBtn'), "aria-label": this.i18n('navigateNextBtn'), onClick: () => this.nextClick(), disabled: disableNavigationPanel }, h("gux-icon", { decorative: true, "icon-name": "arrow-solid-down" }))), h("div", { class: "gux-navigation-divider" })), h("button", { class: "gux-clear-button", tabIndex: -1, type: "button", title: this.i18n('clear'), onClick: () => void this.clear(), disabled: disableNavigationPanel }, h("gux-icon", { "icon-name": "close", decorative: true }))));
63
63
  }
64
64
  return null;
65
65
  }
@@ -4,6 +4,11 @@ const axeExclusions = [
4
4
  issueId: 'color-contrast',
5
5
  target: 'gux-content-search,span',
6
6
  exclusionReason: 'WCAG 1.4.3 Contrast (Minimum), inactive user interface components do not need to meet contrast minimum'
7
+ },
8
+ {
9
+ issueId: 'color-contrast',
10
+ target: 'gux-content-search,.gux-navigation-result',
11
+ exclusionReason: 'To be addressed in COMUI-2389. New violation picked up after upgrading from axe-core v4.4.2 to v4.8.2'
7
12
  }
8
13
  ];
9
14
  describe('gux-content-search', () => {
@@ -1,6 +1,7 @@
1
1
  :host {
2
2
  display: block;
3
3
  max-width: fit-content;
4
+ white-space: normal;
4
5
  }
5
6
 
6
7
  gux-icon {