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

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 (351) 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-create-option.cjs.entry.js +1 -1
  21. package/dist/cjs/gux-date-beta.cjs.entry.js +1 -1
  22. package/dist/cjs/gux-date-time-beta.cjs.entry.js +1 -1
  23. package/dist/cjs/gux-datepicker.cjs.entry.js +1 -1
  24. package/dist/cjs/gux-disclosure-button-legacy.cjs.entry.js +1 -1
  25. package/dist/cjs/gux-dismiss-button.cjs.entry.js +1 -1
  26. package/dist/cjs/gux-dropdown-multi-tag.cjs.entry.js +1 -1
  27. package/dist/cjs/gux-dropdown-multi.cjs.entry.js +4 -3
  28. package/dist/cjs/gux-dropdown_3.cjs.entry.js +12 -17
  29. package/dist/cjs/gux-flyout-menu.cjs.entry.js +1 -1
  30. package/dist/cjs/gux-form-field-checkbox.cjs.entry.js +8 -4
  31. package/dist/cjs/gux-form-field-color.cjs.entry.js +1 -1
  32. package/dist/cjs/gux-form-field-dropdown.cjs.entry.js +1 -1
  33. package/dist/cjs/gux-form-field-input-clear-button.cjs.entry.js +1 -1
  34. package/dist/cjs/gux-form-field-number_3.cjs.entry.js +1 -1
  35. package/dist/cjs/gux-form-field-phone.cjs.entry.js +1 -1
  36. package/dist/cjs/gux-form-field-radio.cjs.entry.js +2 -2
  37. package/dist/cjs/gux-form-field-range.cjs.entry.js +1 -1
  38. package/dist/cjs/gux-form-field-search.cjs.entry.js +1 -1
  39. package/dist/cjs/gux-form-field-select.cjs.entry.js +1 -1
  40. package/dist/cjs/gux-form-field-text-like.cjs.entry.js +1 -1
  41. package/dist/cjs/gux-form-field-textarea.cjs.entry.js +1 -1
  42. package/dist/cjs/gux-form-field-time-picker.cjs.entry.js +1 -1
  43. package/dist/cjs/gux-form-field-time-zone-picker.cjs.entry.js +1 -1
  44. package/dist/cjs/gux-icon.cjs.entry.js +1 -1
  45. package/dist/cjs/gux-inline-alert.cjs.entry.js +1 -1
  46. package/dist/cjs/gux-list.cjs.entry.js +2 -2
  47. package/dist/cjs/gux-listbox-multi.cjs.entry.js +9 -7
  48. package/dist/cjs/{gux-listbox.service-b1068596.js → gux-listbox.service-9bcd72cb.js} +2 -6
  49. package/dist/cjs/gux-loading-message.cjs.entry.js +1 -1
  50. package/dist/cjs/gux-modal-legacy.cjs.entry.js +85 -0
  51. package/dist/cjs/gux-modal.cjs.entry.js +26 -50
  52. package/dist/cjs/gux-month-picker-beta.cjs.entry.js +1 -1
  53. package/dist/cjs/gux-notification-toast-legacy.cjs.entry.js +1 -1
  54. package/dist/cjs/gux-option-icon.cjs.entry.js +1 -1
  55. package/dist/cjs/gux-option-multi.cjs.entry.js +1 -9
  56. package/dist/cjs/gux-page-loading-spinner.cjs.entry.js +1 -1
  57. package/dist/cjs/gux-pagination-cursor.cjs.entry.js +1 -1
  58. package/dist/cjs/gux-pagination-legacy.cjs.entry.js +1 -1
  59. package/dist/cjs/gux-pagination.cjs.entry.js +1 -1
  60. package/dist/cjs/gux-phone-input-beta.cjs.entry.js +1 -1
  61. package/dist/cjs/gux-popover-list.cjs.entry.js +1 -1
  62. package/dist/cjs/gux-radial-loading.cjs.entry.js +1 -1
  63. package/dist/cjs/gux-radial-progress.cjs.entry.js +1 -1
  64. package/dist/cjs/gux-rating.cjs.entry.js +1 -1
  65. package/dist/cjs/gux-region-icon.cjs.entry.js +1 -1
  66. package/dist/cjs/gux-row-select.cjs.entry.js +2 -2
  67. package/dist/cjs/gux-screen-reader-beta.cjs.entry.js +1 -1
  68. package/dist/cjs/gux-segmented-control-beta.cjs.entry.js +1 -1
  69. package/dist/cjs/gux-simple-toast-legacy.cjs.entry.js +1 -1
  70. package/dist/cjs/gux-skip-navigation-list.cjs.entry.js +1 -1
  71. package/dist/cjs/gux-sort-control.cjs.entry.js +1 -1
  72. package/dist/cjs/gux-switch-legacy.cjs.entry.js +1 -1
  73. package/dist/cjs/gux-table-select-menu.cjs.entry.js +1 -1
  74. package/dist/cjs/gux-table-toolbar-action.cjs.entry.js +1 -1
  75. package/dist/cjs/gux-table-toolbar-custom-action.cjs.entry.js +1 -1
  76. package/dist/cjs/gux-table-toolbar-menu-button.cjs.entry.js +1 -1
  77. package/dist/cjs/gux-table-toolbar.cjs.entry.js +1 -1
  78. package/dist/cjs/gux-table.cjs.entry.js +1 -1
  79. package/dist/cjs/gux-tabs-advanced.cjs.entry.js +1 -1
  80. package/dist/cjs/gux-tabs.cjs.entry.js +3 -6
  81. package/dist/cjs/gux-tag.cjs.entry.js +2 -2
  82. package/dist/cjs/gux-text-highlight.cjs.entry.js +1 -1
  83. package/dist/cjs/gux-time-beta.cjs.entry.js +1 -1
  84. package/dist/cjs/gux-time-picker.cjs.entry.js +1 -1
  85. package/dist/cjs/gux-time-zone-picker-beta.cjs.entry.js +1 -1
  86. package/dist/cjs/gux-toast.cjs.entry.js +1 -1
  87. package/dist/cjs/gux-toggle.cjs.entry.js +1 -1
  88. package/dist/cjs/gux-tooltip.cjs.entry.js +1 -1
  89. package/dist/cjs/index-75c9f0d9.js +4 -0
  90. package/dist/cjs/loader.cjs.js +1 -1
  91. package/dist/cjs/{usage-b5bcd6f4.js → usage-a2209eea.js} +2 -2
  92. package/dist/collection/collection-manifest.json +3 -2
  93. package/dist/collection/components/legacy/gux-modal-legacy/gux-modal-legacy.css +122 -0
  94. package/dist/collection/components/legacy/gux-modal-legacy/gux-modal-legacy.js +181 -0
  95. package/dist/collection/components/legacy/gux-modal-legacy/gux-modal-legacy.types.js +1 -0
  96. package/dist/collection/components/legacy/gux-modal-legacy/tests/gux-modal-legacy.e2e.js +301 -0
  97. package/dist/collection/components/legacy/gux-modal-legacy/tests/gux-modal-legacy.spec.js +200 -0
  98. package/dist/collection/components/stable/gux-button-multi/tests/gux-button-multi.e2e.js +10 -3
  99. package/dist/collection/components/stable/gux-content-search/gux-content-search.css +17 -4
  100. package/dist/collection/components/stable/gux-content-search/gux-content-search.js +2 -2
  101. package/dist/collection/components/stable/gux-content-search/tests/gux-content-search.e2e.js +5 -0
  102. package/dist/collection/components/stable/gux-context-menu/gux-context-menu.css +1 -0
  103. package/dist/collection/components/stable/gux-context-menu/tests/gux-context-menu.e2e.js +9 -2
  104. package/dist/collection/components/stable/gux-dropdown/gux-dropdown.css +4 -5
  105. package/dist/collection/components/stable/gux-dropdown/gux-dropdown.js +3 -2
  106. package/dist/collection/components/stable/gux-dropdown-multi/gux-dropdown-multi-tag/gux-dropdown-multi-tag.css +1 -1
  107. package/dist/collection/components/stable/gux-dropdown-multi/gux-dropdown-multi.css +2 -2
  108. package/dist/collection/components/stable/gux-dropdown-multi/gux-dropdown-multi.js +2 -1
  109. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.css +8 -4
  110. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.js +28 -2
  111. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-radio/gux-form-field-radio.js +1 -1
  112. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-radio/tests/gux-form-field-radio.e2e.js +17 -4
  113. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-radio/tests/gux-form-field-radio.spec.js +17 -4
  114. package/dist/collection/components/stable/gux-list/gux-list.js +1 -1
  115. package/dist/collection/components/stable/gux-listbox/gux-listbox.css +2 -1
  116. package/dist/collection/components/stable/gux-listbox/gux-listbox.js +6 -10
  117. package/dist/collection/components/stable/gux-listbox/gux-listbox.service.js +2 -7
  118. package/dist/collection/components/stable/gux-listbox/options/gux-option/gux-option.css +9 -1
  119. package/dist/collection/components/stable/gux-listbox/options/gux-option/gux-option.js +0 -41
  120. package/dist/collection/components/stable/gux-listbox/options/gux-option-icon/gux-option-icon.css +9 -1
  121. package/dist/collection/components/stable/gux-listbox-multi/gux-create-option/gux-create-option.css +1 -0
  122. package/dist/collection/components/stable/gux-listbox-multi/gux-listbox-multi.css +0 -5
  123. package/dist/collection/components/stable/gux-listbox-multi/gux-listbox-multi.js +7 -11
  124. package/dist/collection/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.css +10 -3
  125. package/dist/collection/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.js +0 -41
  126. package/dist/collection/components/stable/gux-modal/gux-modal.css +20 -54
  127. package/dist/collection/components/stable/gux-modal/gux-modal.js +64 -100
  128. package/dist/collection/components/stable/gux-modal/tests/gux-modal.e2e.js +119 -134
  129. package/dist/collection/components/stable/gux-modal/tests/gux-modal.spec.js +28 -88
  130. package/dist/collection/components/stable/gux-popup/tests/gux-popup.e2e.js +13 -1
  131. package/dist/collection/components/stable/gux-table/gux-all-row-select/gux-all-row-select.css +4 -7
  132. package/dist/collection/components/stable/gux-table/gux-all-row-select/gux-all-row-select.js +1 -1
  133. package/dist/collection/components/stable/gux-table/gux-row-select/gux-row-select.css +4 -7
  134. package/dist/collection/components/stable/gux-table/gux-row-select/gux-row-select.js +1 -1
  135. package/dist/collection/components/stable/gux-table/gux-table-select-menu/gux-table-select-menu.css +3 -3
  136. package/dist/collection/components/stable/gux-tabs/gux-tabs.css +5 -8
  137. package/dist/collection/components/stable/gux-tabs/gux-tabs.js +1 -22
  138. package/dist/collection/components/stable/gux-tabs-advanced/tests/gux-tabs-advanced.e2e.js +5 -0
  139. package/dist/collection/components/stable/gux-tag/gux-tag.css +1 -1
  140. package/dist/component-specs.json +25 -7
  141. package/dist/deploy-info.json +3 -3
  142. package/dist/esm/genesys-webcomponents.js +1 -1
  143. package/dist/esm/gux-accordion.entry.js +1 -1
  144. package/dist/esm/gux-action-button.entry.js +1 -1
  145. package/dist/esm/gux-action-toast-legacy.entry.js +1 -1
  146. package/dist/esm/gux-advanced-dropdown-legacy.entry.js +1 -1
  147. package/dist/esm/gux-all-row-select.entry.js +2 -2
  148. package/dist/esm/gux-announce-beta.entry.js +1 -1
  149. package/dist/esm/gux-badge.entry.js +1 -1
  150. package/dist/esm/gux-blank-state.entry.js +1 -1
  151. package/dist/esm/gux-breadcrumbs.entry.js +1 -1
  152. package/dist/esm/gux-button-multi.entry.js +1 -1
  153. package/dist/esm/gux-button-slot.entry.js +1 -1
  154. package/dist/esm/gux-button.entry.js +1 -1
  155. package/dist/esm/gux-calendar.entry.js +1 -1
  156. package/dist/esm/gux-card.entry.js +1 -1
  157. package/dist/esm/gux-column-manager.entry.js +1 -1
  158. package/dist/esm/gux-content-search.entry.js +4 -4
  159. package/dist/esm/gux-context-menu.entry.js +2 -2
  160. package/dist/esm/gux-copy-to-clipboard.entry.js +1 -1
  161. package/dist/esm/gux-create-option.entry.js +1 -1
  162. package/dist/esm/gux-date-beta.entry.js +1 -1
  163. package/dist/esm/gux-date-time-beta.entry.js +1 -1
  164. package/dist/esm/gux-datepicker.entry.js +1 -1
  165. package/dist/esm/gux-disclosure-button-legacy.entry.js +1 -1
  166. package/dist/esm/gux-dismiss-button.entry.js +1 -1
  167. package/dist/esm/gux-dropdown-multi-tag.entry.js +1 -1
  168. package/dist/esm/gux-dropdown-multi.entry.js +4 -3
  169. package/dist/esm/gux-dropdown_3.entry.js +12 -17
  170. package/dist/esm/gux-flyout-menu.entry.js +1 -1
  171. package/dist/esm/gux-form-field-checkbox.entry.js +8 -4
  172. package/dist/esm/gux-form-field-color.entry.js +1 -1
  173. package/dist/esm/gux-form-field-dropdown.entry.js +1 -1
  174. package/dist/esm/gux-form-field-input-clear-button.entry.js +1 -1
  175. package/dist/esm/gux-form-field-number_3.entry.js +1 -1
  176. package/dist/esm/gux-form-field-phone.entry.js +1 -1
  177. package/dist/esm/gux-form-field-radio.entry.js +2 -2
  178. package/dist/esm/gux-form-field-range.entry.js +1 -1
  179. package/dist/esm/gux-form-field-search.entry.js +1 -1
  180. package/dist/esm/gux-form-field-select.entry.js +1 -1
  181. package/dist/esm/gux-form-field-text-like.entry.js +1 -1
  182. package/dist/esm/gux-form-field-textarea.entry.js +1 -1
  183. package/dist/esm/gux-form-field-time-picker.entry.js +1 -1
  184. package/dist/esm/gux-form-field-time-zone-picker.entry.js +1 -1
  185. package/dist/esm/gux-icon.entry.js +1 -1
  186. package/dist/esm/gux-inline-alert.entry.js +1 -1
  187. package/dist/esm/gux-list.entry.js +2 -2
  188. package/dist/esm/gux-listbox-multi.entry.js +9 -7
  189. package/dist/esm/{gux-listbox.service-f2b6e01a.js → gux-listbox.service-0f180d8a.js} +2 -7
  190. package/dist/esm/gux-loading-message.entry.js +1 -1
  191. package/dist/esm/gux-modal-legacy.entry.js +81 -0
  192. package/dist/esm/gux-modal.entry.js +26 -50
  193. package/dist/esm/gux-month-picker-beta.entry.js +1 -1
  194. package/dist/esm/gux-notification-toast-legacy.entry.js +1 -1
  195. package/dist/esm/gux-option-icon.entry.js +1 -1
  196. package/dist/esm/gux-option-multi.entry.js +1 -9
  197. package/dist/esm/gux-page-loading-spinner.entry.js +1 -1
  198. package/dist/esm/gux-pagination-cursor.entry.js +1 -1
  199. package/dist/esm/gux-pagination-legacy.entry.js +1 -1
  200. package/dist/esm/gux-pagination.entry.js +1 -1
  201. package/dist/esm/gux-phone-input-beta.entry.js +1 -1
  202. package/dist/esm/gux-popover-list.entry.js +1 -1
  203. package/dist/esm/gux-radial-loading.entry.js +1 -1
  204. package/dist/esm/gux-radial-progress.entry.js +1 -1
  205. package/dist/esm/gux-rating.entry.js +1 -1
  206. package/dist/esm/gux-region-icon.entry.js +1 -1
  207. package/dist/esm/gux-row-select.entry.js +2 -2
  208. package/dist/esm/gux-screen-reader-beta.entry.js +1 -1
  209. package/dist/esm/gux-segmented-control-beta.entry.js +1 -1
  210. package/dist/esm/gux-simple-toast-legacy.entry.js +1 -1
  211. package/dist/esm/gux-skip-navigation-list.entry.js +1 -1
  212. package/dist/esm/gux-sort-control.entry.js +1 -1
  213. package/dist/esm/gux-switch-legacy.entry.js +1 -1
  214. package/dist/esm/gux-table-select-menu.entry.js +1 -1
  215. package/dist/esm/gux-table-toolbar-action.entry.js +1 -1
  216. package/dist/esm/gux-table-toolbar-custom-action.entry.js +1 -1
  217. package/dist/esm/gux-table-toolbar-menu-button.entry.js +1 -1
  218. package/dist/esm/gux-table-toolbar.entry.js +1 -1
  219. package/dist/esm/gux-table.entry.js +1 -1
  220. package/dist/esm/gux-tabs-advanced.entry.js +1 -1
  221. package/dist/esm/gux-tabs.entry.js +3 -6
  222. package/dist/esm/gux-tag.entry.js +2 -2
  223. package/dist/esm/gux-text-highlight.entry.js +1 -1
  224. package/dist/esm/gux-time-beta.entry.js +1 -1
  225. package/dist/esm/gux-time-picker.entry.js +1 -1
  226. package/dist/esm/gux-time-zone-picker-beta.entry.js +1 -1
  227. package/dist/esm/gux-toast.entry.js +1 -1
  228. package/dist/esm/gux-toggle.entry.js +1 -1
  229. package/dist/esm/gux-tooltip.entry.js +1 -1
  230. package/dist/esm/index-39e65a0a.js +4 -0
  231. package/dist/esm/loader.js +1 -1
  232. package/dist/esm/{usage-266740c3.js → usage-59649766.js} +2 -2
  233. package/dist/genesys-webcomponents/genesys-webcomponents.css +14 -2
  234. package/dist/genesys-webcomponents/genesys-webcomponents.esm.js +1 -1
  235. package/dist/genesys-webcomponents/p-0027bf77.entry.js +1 -0
  236. package/dist/genesys-webcomponents/p-01e884ba.entry.js +1 -0
  237. package/dist/genesys-webcomponents/{p-4e0eb7d5.entry.js → p-071faa3e.entry.js} +1 -1
  238. package/dist/genesys-webcomponents/{p-7d7bbfec.entry.js → p-07a306f6.entry.js} +1 -1
  239. package/dist/genesys-webcomponents/{p-852059e1.entry.js → p-07e64710.entry.js} +1 -1
  240. package/dist/genesys-webcomponents/{p-95ddee1b.entry.js → p-0f772929.entry.js} +1 -1
  241. package/dist/genesys-webcomponents/{p-d2bb29bc.entry.js → p-10540e07.entry.js} +1 -1
  242. package/dist/genesys-webcomponents/{p-d35d4e79.entry.js → p-1305fbda.entry.js} +1 -1
  243. package/dist/genesys-webcomponents/{p-c9430e53.entry.js → p-152ef751.entry.js} +1 -1
  244. package/dist/genesys-webcomponents/{p-bc1ec126.js → p-16b7148a.js} +1 -1
  245. package/dist/genesys-webcomponents/{p-4e41e1fc.entry.js → p-1b388b24.entry.js} +1 -1
  246. package/dist/genesys-webcomponents/{p-26cc04bb.entry.js → p-1c4c9c84.entry.js} +1 -1
  247. package/dist/genesys-webcomponents/{p-810c339a.entry.js → p-1eaa86b0.entry.js} +1 -1
  248. package/dist/genesys-webcomponents/{p-e1a289a7.entry.js → p-1f22913a.entry.js} +1 -1
  249. package/dist/genesys-webcomponents/{p-d93c71ef.entry.js → p-2413e4c1.entry.js} +1 -1
  250. package/dist/genesys-webcomponents/{p-8fbc31c8.entry.js → p-261798b0.entry.js} +1 -1
  251. package/dist/genesys-webcomponents/p-2729e2af.entry.js +1 -0
  252. package/dist/genesys-webcomponents/{p-17d5af45.entry.js → p-2b1e714b.entry.js} +1 -1
  253. package/dist/genesys-webcomponents/{p-c8d7a955.entry.js → p-2c955ab4.entry.js} +1 -1
  254. package/dist/genesys-webcomponents/{p-0b69dcec.entry.js → p-33bd7fcf.entry.js} +1 -1
  255. package/dist/genesys-webcomponents/{p-49bfec82.entry.js → p-41623d55.entry.js} +1 -1
  256. package/dist/genesys-webcomponents/p-433b4556.entry.js +1 -0
  257. package/dist/genesys-webcomponents/{p-2be332c3.entry.js → p-450c98c0.entry.js} +1 -1
  258. package/dist/genesys-webcomponents/{p-2ca5e73e.entry.js → p-4dc281c7.entry.js} +1 -1
  259. package/dist/genesys-webcomponents/{p-447aba64.entry.js → p-4f61e08d.entry.js} +1 -1
  260. package/dist/genesys-webcomponents/{p-33c5a71d.entry.js → p-55cfbde3.entry.js} +1 -1
  261. package/dist/genesys-webcomponents/{p-ed433fec.entry.js → p-599ccf11.entry.js} +1 -1
  262. package/dist/genesys-webcomponents/{p-ca6af08a.entry.js → p-5a25b7b1.entry.js} +1 -1
  263. package/dist/genesys-webcomponents/{p-c55a4aec.entry.js → p-61a5be3a.entry.js} +1 -1
  264. package/dist/genesys-webcomponents/p-65b03df8.js +1 -0
  265. package/dist/genesys-webcomponents/{p-9749237a.entry.js → p-6880d779.entry.js} +1 -1
  266. package/dist/genesys-webcomponents/p-6c7a5b9c.entry.js +1 -0
  267. package/dist/genesys-webcomponents/{p-eef2e19d.entry.js → p-6e1f8efc.entry.js} +1 -1
  268. package/dist/genesys-webcomponents/{p-fcf507a2.entry.js → p-7351c54b.entry.js} +1 -1
  269. package/dist/genesys-webcomponents/p-77dc0f47.entry.js +1 -0
  270. package/dist/genesys-webcomponents/{p-681c2cae.entry.js → p-816b5832.entry.js} +1 -1
  271. package/dist/genesys-webcomponents/{p-9f60ae1f.entry.js → p-81c6665d.entry.js} +1 -1
  272. package/dist/genesys-webcomponents/{p-0ec0bb1a.entry.js → p-86b4a043.entry.js} +1 -1
  273. package/dist/genesys-webcomponents/{p-b987ebb3.entry.js → p-8e71a828.entry.js} +1 -1
  274. package/dist/genesys-webcomponents/{p-fd00f179.entry.js → p-9101a023.entry.js} +1 -1
  275. package/dist/genesys-webcomponents/{p-ac0c291d.entry.js → p-91dd5417.entry.js} +1 -1
  276. package/dist/genesys-webcomponents/{p-69d62d74.entry.js → p-9239c7e4.entry.js} +1 -1
  277. package/dist/genesys-webcomponents/{p-7e6a6247.entry.js → p-9354c37c.entry.js} +1 -1
  278. package/dist/genesys-webcomponents/{p-61f9e6eb.entry.js → p-9749f58f.entry.js} +1 -1
  279. package/dist/genesys-webcomponents/{p-a6d71efc.entry.js → p-975399df.entry.js} +1 -1
  280. package/dist/genesys-webcomponents/{p-3a502c58.entry.js → p-97eb822e.entry.js} +1 -1
  281. package/dist/genesys-webcomponents/{p-666a122c.entry.js → p-982cde03.entry.js} +1 -1
  282. package/dist/genesys-webcomponents/{p-75e0ebc8.entry.js → p-9a8fc961.entry.js} +1 -1
  283. package/dist/genesys-webcomponents/{p-fd77023f.entry.js → p-a272fffc.entry.js} +1 -1
  284. package/dist/genesys-webcomponents/{p-c058bbe0.entry.js → p-a54f5e84.entry.js} +1 -1
  285. package/dist/genesys-webcomponents/p-a76eaee5.entry.js +1 -0
  286. package/dist/genesys-webcomponents/p-a7845b8a.entry.js +1 -0
  287. package/dist/genesys-webcomponents/{p-407b3ebd.entry.js → p-a9a2b586.entry.js} +1 -1
  288. package/dist/genesys-webcomponents/{p-8db7c656.entry.js → p-aa7e1ac7.entry.js} +1 -1
  289. package/dist/genesys-webcomponents/{p-37258942.entry.js → p-aae56c95.entry.js} +1 -1
  290. package/dist/genesys-webcomponents/{p-f35502ee.entry.js → p-ac8a5767.entry.js} +1 -1
  291. package/dist/genesys-webcomponents/{p-642cc895.entry.js → p-ad873d38.entry.js} +1 -1
  292. package/dist/genesys-webcomponents/p-b08aad6a.entry.js +1 -0
  293. package/dist/genesys-webcomponents/{p-80512ea5.entry.js → p-b0d4b282.entry.js} +1 -1
  294. package/dist/genesys-webcomponents/{p-66592387.entry.js → p-b10cd660.entry.js} +1 -1
  295. package/dist/genesys-webcomponents/p-b269fa15.entry.js +1 -0
  296. package/dist/genesys-webcomponents/{p-9a4aaee1.entry.js → p-b3971bc8.entry.js} +1 -1
  297. package/dist/genesys-webcomponents/{p-21d8e48c.entry.js → p-b97743d4.entry.js} +1 -1
  298. package/dist/genesys-webcomponents/{p-772ee405.entry.js → p-ba24aaff.entry.js} +1 -1
  299. package/dist/genesys-webcomponents/{p-3b9d98ec.entry.js → p-bb14528d.entry.js} +1 -1
  300. package/dist/genesys-webcomponents/{p-61d86ba3.entry.js → p-c3e1140c.entry.js} +1 -1
  301. package/dist/genesys-webcomponents/{p-bc9d75c2.entry.js → p-c48bd5b8.entry.js} +1 -1
  302. package/dist/genesys-webcomponents/{p-b445f1ae.entry.js → p-c64e519e.entry.js} +1 -1
  303. package/dist/genesys-webcomponents/{p-f42f2f0d.entry.js → p-c7548448.entry.js} +1 -1
  304. package/dist/genesys-webcomponents/{p-e73f4503.entry.js → p-c798645e.entry.js} +1 -1
  305. package/dist/genesys-webcomponents/{p-532827a9.entry.js → p-c90894b0.entry.js} +1 -1
  306. package/dist/genesys-webcomponents/{p-210bf3e2.entry.js → p-c9192a11.entry.js} +1 -1
  307. package/dist/genesys-webcomponents/{p-5801fcd6.entry.js → p-cba2e128.entry.js} +1 -1
  308. package/dist/genesys-webcomponents/p-cd72d060.entry.js +1 -0
  309. package/dist/genesys-webcomponents/{p-298f5a94.entry.js → p-cdc3d4f0.entry.js} +1 -1
  310. package/dist/genesys-webcomponents/{p-80655bf7.entry.js → p-cdf43ea6.entry.js} +1 -1
  311. package/dist/genesys-webcomponents/p-ce8ffcf1.entry.js +1 -0
  312. package/dist/genesys-webcomponents/{p-1f8d91b0.entry.js → p-d77dc0ff.entry.js} +1 -1
  313. package/dist/genesys-webcomponents/{p-0112f4c0.entry.js → p-dd05cf6f.entry.js} +1 -1
  314. package/dist/genesys-webcomponents/{p-186362b5.entry.js → p-dee4d302.entry.js} +1 -1
  315. package/dist/genesys-webcomponents/{p-1beb2cb2.entry.js → p-e8544d9e.entry.js} +1 -1
  316. package/dist/genesys-webcomponents/p-ed344b6f.entry.js +1 -0
  317. package/dist/genesys-webcomponents/{p-c0d9de8d.entry.js → p-f0613f2d.entry.js} +1 -1
  318. package/dist/genesys-webcomponents/p-f343de1b.entry.js +1 -0
  319. package/dist/genesys-webcomponents/{p-49cceaf2.entry.js → p-f426ae83.entry.js} +1 -1
  320. package/dist/genesys-webcomponents/{p-7fbea7e4.entry.js → p-f63d55ee.entry.js} +1 -1
  321. package/dist/genesys-webcomponents/{p-ea0296a2.entry.js → p-f71dae44.entry.js} +1 -1
  322. package/dist/genesys-webcomponents/{p-72d78bb8.entry.js → p-ff42711a.entry.js} +1 -1
  323. package/dist/stencil-wrapper.js +1 -1
  324. package/dist/types/components/legacy/gux-modal-legacy/gux-modal-legacy.d.ts +37 -0
  325. package/dist/types/components/legacy/gux-modal-legacy/gux-modal-legacy.types.d.ts +1 -0
  326. package/dist/types/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.d.ts +2 -0
  327. package/dist/types/components/stable/gux-listbox/gux-listbox.d.ts +0 -1
  328. package/dist/types/components/stable/gux-listbox/gux-listbox.service.d.ts +1 -0
  329. package/dist/types/components/stable/gux-listbox/options/gux-option/gux-option.d.ts +0 -3
  330. package/dist/types/components/stable/gux-listbox/options/option-types.d.ts +0 -1
  331. package/dist/types/components/stable/gux-listbox-multi/gux-listbox-multi.d.ts +0 -1
  332. package/dist/types/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.d.ts +0 -3
  333. package/dist/types/components/stable/gux-modal/gux-modal.d.ts +8 -21
  334. package/dist/types/components/stable/gux-tabs/gux-tabs.d.ts +0 -4
  335. package/dist/types/components.d.ts +38 -15
  336. package/dist/types/stencil-wrapper.d.ts +1 -1
  337. package/package.json +2 -2
  338. package/dist/genesys-webcomponents/p-236b8bd4.entry.js +0 -1
  339. package/dist/genesys-webcomponents/p-2a7e6126.entry.js +0 -1
  340. package/dist/genesys-webcomponents/p-2bf3d247.entry.js +0 -1
  341. package/dist/genesys-webcomponents/p-38871095.entry.js +0 -1
  342. package/dist/genesys-webcomponents/p-3c61673e.entry.js +0 -1
  343. package/dist/genesys-webcomponents/p-71e00140.js +0 -1
  344. package/dist/genesys-webcomponents/p-774043ee.entry.js +0 -1
  345. package/dist/genesys-webcomponents/p-8fff3309.entry.js +0 -1
  346. package/dist/genesys-webcomponents/p-93b098ea.entry.js +0 -1
  347. package/dist/genesys-webcomponents/p-ab4d78a7.entry.js +0 -1
  348. package/dist/genesys-webcomponents/p-c3103de4.entry.js +0 -1
  349. package/dist/genesys-webcomponents/p-d453c288.entry.js +0 -1
  350. package/dist/genesys-webcomponents/p-d5699513.entry.js +0 -1
  351. package/dist/genesys-webcomponents/p-d95896ff.entry.js +0 -1
@@ -1,4 +1,11 @@
1
1
  import { a11yCheck, newSparkE2EPage } from "../../../../test/e2eTestUtils";
2
+ const axeExclusions = [
3
+ {
4
+ issueId: 'aria-required-children',
5
+ target: 'gux-context-menu,gux-list',
6
+ exclusionReason: 'To be addressed in COMUI-2388. New violation picked up after upgrading from axe-core v4.4.2 to v4.8.2'
7
+ }
8
+ ];
2
9
  const html = `
3
10
  <gux-context-menu>
4
11
  <gux-list-item id="list-item-1" onclick="notify(event)">Test 1</gux-list-item>
@@ -19,10 +26,10 @@ describe('gux-context-menu', () => {
19
26
  });
20
27
  it('should be a11y compliant', async () => {
21
28
  const element = await page.find('gux-context-menu');
22
- await a11yCheck(page, [], 'before opening context menu');
29
+ await a11yCheck(page, axeExclusions, 'before opening context menu');
23
30
  await element.click();
24
31
  await page.waitForChanges();
25
- await a11yCheck(page, [], 'after opening context menu');
32
+ await a11yCheck(page, axeExclusions, 'after opening context menu');
26
33
  });
27
34
  it('should focus first item in list on click', async () => {
28
35
  const element = await page.find('gux-context-menu');
@@ -107,7 +107,7 @@
107
107
  border: var(--gse-ui-formControl-input-active-border-width) var(--gse-ui-formControl-input-active-border-style) var(--gse-ui-formControl-input-active-border-color);
108
108
  border-radius: var(--gse-ui-formControl-input-borderRadius);
109
109
  }
110
- .gux-target-container-expanded:focus-visible, .gux-target-container-expanded:focus-within {
110
+ .gux-target-container-expanded:focus-visible, .gux-target-container-expanded:focus-within:has(:focus-visible) {
111
111
  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);
112
112
  outline-offset: var(--gse-semantic-focusRing-offset);
113
113
  }
@@ -136,14 +136,13 @@
136
136
  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);
137
137
  border-radius: var(--gse-ui-formControl-input-borderRadius);
138
138
  }
139
- .gux-target-container-collapsed .gux-field-button:focus-visible, .gux-target-container-collapsed .gux-field-button:focus-within {
139
+ .gux-target-container-collapsed .gux-field-button:focus-visible, .gux-target-container-collapsed .gux-field-button:focus-within:has(:focus-visible) {
140
140
  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);
141
141
  outline-offset: var(--gse-semantic-focusRing-offset);
142
142
  }
143
143
 
144
- .gux-listbox-container {
145
- box-sizing: border-box;
146
- margin: 0;
144
+ ::slotted(gux-listbox) {
145
+ outline: none;
147
146
  }
148
147
 
149
148
  .gux-selected-icon {
@@ -18,7 +18,7 @@ import { afterNextRender } from "../../../utils/dom/after-next-render";
18
18
  import { trackComponent } from "../../../utils/tracking/usage";
19
19
  import { OnMutation } from "../../../utils/decorator/on-mutation";
20
20
  import translationResources from "./i18n/en.json";
21
- import { getSearchOption, getListOptions } from "../gux-listbox/gux-listbox.service";
21
+ import { getSearchOption, getListOptions, setInitialActiveOption } from "../gux-listbox/gux-listbox.service";
22
22
  /**
23
23
  * Our Dropdown component. In the most basic case, it's used with `gux-option` to give users
24
24
  * a list of text options to select from, but other types of options with different appearance
@@ -77,6 +77,7 @@ export class GuxDropdown {
77
77
  if (this.activeElementNotListbox()) {
78
78
  event.preventDefault();
79
79
  this.expanded = true;
80
+ setInitialActiveOption(this.listboxElement);
80
81
  }
81
82
  return;
82
83
  }
@@ -303,7 +304,7 @@ export class GuxDropdown {
303
304
  }
304
305
  }
305
306
  renderPopup() {
306
- return (h("div", { slot: "popup", class: "gux-listbox-container" }, h("slot", null)));
307
+ return (h("slot", { slot: "popup" }));
307
308
  }
308
309
  renderTarget() {
309
310
  return (h("div", { class: {
@@ -46,5 +46,5 @@
46
46
  outline: var(--gse-semantic-focusRing-small-border-color) var(--gse-semantic-focusRing-small-border-style) var(--gse-semantic-focusRing-small-border-width);
47
47
  }
48
48
  .gux-tag.gux-disabled {
49
- opacity: 0.5;
49
+ opacity: var(--gse-ui-tag-disabled-opacity);
50
50
  }
@@ -122,7 +122,7 @@
122
122
  border: var(--gse-ui-formControl-input-active-border-width) var(--gse-ui-formControl-input-active-border-style) var(--gse-ui-formControl-input-active-border-color);
123
123
  border-radius: var(--gse-ui-formControl-input-borderRadius);
124
124
  }
125
- .gux-target-container-expanded:focus-visible, .gux-target-container-expanded:focus-within {
125
+ .gux-target-container-expanded:focus-visible, .gux-target-container-expanded:focus-within:has(:focus-visible) {
126
126
  outline: var(--gse-semantic-focusRing-default-border-color) var(--gse-semantic-focusRing-default-border-style) var(--gse-semantic-focusRing-default-border-width);
127
127
  outline-offset: var(--gse-semantic-focusRing-offset);
128
128
  }
@@ -151,7 +151,7 @@
151
151
  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);
152
152
  border-radius: var(--gse-ui-formControl-input-borderRadius);
153
153
  }
154
- .gux-target-container-collapsed .gux-field-button:focus-visible, .gux-target-container-collapsed .gux-field-button:focus-within {
154
+ .gux-target-container-collapsed .gux-field-button:focus-visible, .gux-target-container-collapsed .gux-field-button:focus-within:has(:focus-visible) {
155
155
  outline: var(--gse-semantic-focusRing-default-border-color) var(--gse-semantic-focusRing-default-border-style) var(--gse-semantic-focusRing-default-border-width);
156
156
  outline-offset: var(--gse-semantic-focusRing-offset);
157
157
  }
@@ -16,7 +16,7 @@ import { afterNextRender } from "../../../utils/dom/after-next-render";
16
16
  import { onInputDisabledStateChange } from "../../../utils/dom/on-input-disabled-state-change";
17
17
  import { trackComponent } from "../../../utils/tracking/usage";
18
18
  import translationResources from "./i18n/en.json";
19
- import { getSearchOption } from "../gux-listbox/gux-listbox.service";
19
+ import { getSearchOption, setInitialActiveOption } from "../gux-listbox/gux-listbox.service";
20
20
  import { OnMutation } from "../../../utils/decorator/on-mutation";
21
21
  /**
22
22
  * @slot - for a gux-listbox-multi containing gux-option-multi children
@@ -111,6 +111,7 @@ export class GuxDropdownMulti {
111
111
  if (this.activeElementNotListbox()) {
112
112
  event.preventDefault();
113
113
  this.expanded = true;
114
+ setInitialActiveOption(this.listboxElement);
114
115
  }
115
116
  return;
116
117
  case 'Enter':
@@ -106,13 +106,17 @@
106
106
  }
107
107
 
108
108
  .gux-input-label {
109
- display: flex;
109
+ display: inline-flex;
110
110
  flex-direction: row;
111
111
  gap: var(--gse-ui-checkbox-gap);
112
112
  }
113
- .gux-input-label .gux-label {
114
- display: flex;
115
- flex-direction: column;
113
+ .gux-input-label .gux-label-screenreader {
114
+ position: absolute;
115
+ top: auto;
116
+ left: -10000px;
117
+ width: 1px;
118
+ height: 1px;
119
+ overflow: hidden;
116
120
  }
117
121
 
118
122
  ::slotted(input[type=checkbox]) {
@@ -25,6 +25,7 @@ import { validateFormIds, getSlottedInput } from "../../gux-form-field.service";
25
25
  */
26
26
  export class GuxFormFieldCheckbox {
27
27
  constructor() {
28
+ this.labelPosition = 'beside';
28
29
  this.disabled = undefined;
29
30
  this.hasError = false;
30
31
  this.hasHelp = false;
@@ -37,7 +38,7 @@ export class GuxFormFieldCheckbox {
37
38
  this.setInput();
38
39
  this.hasError = hasSlot(this.root, 'error');
39
40
  this.hasHelp = hasSlot(this.root, 'help');
40
- trackComponent(this.root);
41
+ trackComponent(this.root, { variant: this.variant });
41
42
  }
42
43
  disconnectedCallback() {
43
44
  if (this.disabledObserver) {
@@ -48,7 +49,10 @@ export class GuxFormFieldCheckbox {
48
49
  return (h(Host, { class: {
49
50
  'gux-input-error': this.hasError,
50
51
  'gux-disabled': this.disabled
51
- } }, h("div", { class: "gux-form-field-container" }, h("div", { class: "gux-input-label" }, h("div", { class: "gux-input" }, h("slot", { name: "input", onSlotchange: () => this.setInput() })), h("div", { class: "gux-label" }, h("slot", { name: "label" }), h(GuxFormFieldError, { show: this.hasError }, h("slot", { name: "error" })), h(GuxFormFieldHelp, { show: !this.hasError && this.hasHelp }, h("slot", { name: "help" })))))));
52
+ } }, h("div", { class: "gux-form-field-container" }, h("div", { class: "gux-input-label" }, h("div", { class: "gux-input" }, h("slot", { name: "input", onSlotchange: () => this.setInput() })), h("div", { class: `gux-label-${this.labelPosition}` }, h("slot", { name: "label" }), h(GuxFormFieldError, { show: this.hasError }, h("slot", { name: "error" })), h(GuxFormFieldHelp, { show: !this.hasError && this.hasHelp }, h("slot", { name: "help" })))))));
53
+ }
54
+ get variant() {
55
+ return this.labelPosition.toLowerCase();
52
56
  }
53
57
  setInput() {
54
58
  this.input = getSlottedInput(this.root, 'input[type="checkbox"][slot="input"]');
@@ -71,6 +75,28 @@ export class GuxFormFieldCheckbox {
71
75
  "$": ["gux-form-field-checkbox.css"]
72
76
  };
73
77
  }
78
+ static get properties() {
79
+ return {
80
+ "labelPosition": {
81
+ "type": "string",
82
+ "mutable": false,
83
+ "complexType": {
84
+ "original": "'beside' | 'screenreader'",
85
+ "resolved": "\"beside\" | \"screenreader\"",
86
+ "references": {}
87
+ },
88
+ "required": false,
89
+ "optional": false,
90
+ "docs": {
91
+ "tags": [],
92
+ "text": ""
93
+ },
94
+ "attribute": "label-position",
95
+ "reflect": false,
96
+ "defaultValue": "'beside'"
97
+ }
98
+ };
99
+ }
74
100
  static get states() {
75
101
  return {
76
102
  "disabled": {},
@@ -48,7 +48,7 @@ export class GuxFormFieldRadio {
48
48
  return (h(Host, { class: {
49
49
  'gux-input-error': this.hasError,
50
50
  'gux-disabled': this.disabled
51
- } }, h("div", { class: "gux-form-field-container" }, h("div", { class: "gux-input-label" }, h("div", { class: "gux-input" }, h("slot", { name: "input", onSlotchange: () => this.setInput() })), h("div", { class: "gux-label" }, h("slot", { name: "label" }), h(GuxFormFieldError, { show: this.hasError }, h("slot", { name: "error" })), h(GuxFormFieldHelp, { show: !this.hasError && this.hasHelp }, h("slot", { name: "help" })))))));
51
+ } }, h("div", { class: "gux-form-field-container" }, h("div", { class: "gux-input-label" }, h("div", { class: "gux-input" }, h("slot", { name: "input", onSlotchange: () => this.setInput() })), h("div", { class: "gux-label", "aria-disabled": this.disabled ? 'true' : 'false' }, h("slot", { name: "label" }), h(GuxFormFieldError, { show: this.hasError }, h("slot", { name: "error" })), h(GuxFormFieldHelp, { show: !this.hasError && this.hasHelp }, h("slot", { name: "help" })))))));
52
52
  }
53
53
  setInput() {
54
54
  this.input = getSlottedInput(this.root, 'input[type="radio"][slot="input"]');
@@ -45,11 +45,24 @@ describe('gux-form-field-radio', () => {
45
45
  <span slot="error">Error message</span>
46
46
  </gux-form-field-radio>
47
47
  `,
48
+ `
49
+ <gux-form-field-radio>
50
+ <input slot="input" type="radio" name="food-1" value="pizza" disabled/>
51
+ <label slot="label">Pizza</label>
52
+ <span slot="error">Error message</span>
53
+ </gux-form-field-radio>
54
+ `,
55
+ `<gux-form-field-radio>
56
+ <input slot="input" type="radio" name="food-1" value="spaghetti"/>
57
+ <label slot="label">Spaghetti</label>
58
+ <span slot="help">This is a help message</span>
59
+ </gux-form-field-radio>
60
+ `,
48
61
  `<gux-form-field-radio>
49
- <input slot="input" type="radio" name="food-1" value="spaghetti" />
50
- <label slot="label">Spaghetti</label>
51
- <span slot="help">This is a help message</span>
52
- </gux-form-field-radio>`
62
+ <input slot="input" type="radio" name="food-1" value="spaghetti" disabled/>
63
+ <label slot="label">Spaghetti</label>
64
+ <span slot="help">This is a help message</span>
65
+ </gux-form-field-radio>`
53
66
  ].forEach((html, index) => {
54
67
  it(`should render component as expected (${index + 1})`, async () => {
55
68
  const page = await newNonrandomE2EPage({ html });
@@ -47,11 +47,24 @@ describe('gux-form-field-radio', () => {
47
47
  <span slot="error">Error message</span>
48
48
  </gux-form-field-radio>
49
49
  `,
50
+ `
51
+ <gux-form-field-radio>
52
+ <input slot="input" type="radio" name="food-1" value="pizza" disabled/>
53
+ <label slot="label">Pizza</label>
54
+ <span slot="error">Error message</span>
55
+ </gux-form-field-radio>
56
+ `,
57
+ `<gux-form-field-radio>
58
+ <input slot="input" type="radio" name="food-1" value="spaghetti"/>
59
+ <label slot="label">Spaghetti</label>
60
+ <span slot="help">This is a help message</span>
61
+ </gux-form-field-radio>
62
+ `,
50
63
  `<gux-form-field-radio>
51
- <input slot="input" type="radio" name="food-1" value="spaghetti" />
52
- <label slot="label">Spaghetti</label>
53
- <span slot="help">This is a help message</span>
54
- </gux-form-field-radio>`
64
+ <input slot="input" type="radio" name="food-1" value="spaghetti" disabled/>
65
+ <label slot="label">Spaghetti</label>
66
+ <span slot="help">This is a help message</span>
67
+ </gux-form-field-radio>`
55
68
  ].forEach((html, index) => {
56
69
  it(`should render component as expected (${index + 1})`, async () => {
57
70
  const page = await newSpecPage({ components, html, language });
@@ -46,7 +46,7 @@ export class GuxList {
46
46
  last(this.root, validFocusableItems);
47
47
  }
48
48
  renderFocusTarget() {
49
- return (h("span", { tabindex: "-1" }));
49
+ return (h("span", { tabindex: "-1", "aria-hidden": "true" }));
50
50
  }
51
51
  render() {
52
52
  return (h(Host, { role: "list" }, this.renderFocusTarget(), h("slot", null)));
@@ -4,6 +4,7 @@
4
4
  max-height: 20rem;
5
5
  padding: var(--gse-ui-menu-padding);
6
6
  margin: 0;
7
+ overflow-x: visible;
7
8
  overflow-y: auto;
8
9
  background: var(--gse-ui-menu-backgroundColor);
9
10
  border: var(--gse-ui-menu-border-width) var(--gse-ui-menu-border-style) var(--gse-ui-menu-border-color);
@@ -12,7 +13,7 @@
12
13
  box-shadow: var(--gse-ui-menu-boxShadow-x) var(--gse-ui-menu-boxShadow-y) var(--gse-ui-menu-boxShadow-blur) var(--gse-ui-menu-boxShadow-spread) var(--gse-ui-menu-boxShadow-color);
13
14
  }
14
15
 
15
- :host(:focus) {
16
+ :host(:focus-visible:not(:host-context(gux-dropdown))) {
16
17
  outline: var(--gse-semantic-focusRing-width) solid var(--gse-semantic-color-focus);
17
18
  outline-offset: var(--gse-semantic-focusRing-offset);
18
19
  }
@@ -1,5 +1,5 @@
1
1
  import { h, Host } from "@stencil/core";
2
- import { actOnActiveOption, clearActiveOptions, goToOption, hasPreviousOption, hasNextOption, onClickedOption, setFirstOptionActive, setInitialActiveOption, setLastOptionActive, setNextOptionActive, setPreviousOptionActive, matchOption } from "./gux-listbox.service";
2
+ import { actOnActiveOption, clearActiveOptions, goToOption, hasActiveOption, hasPreviousOption, hasNextOption, onClickedOption, setFirstOptionActive, setInitialActiveOption, setLastOptionActive, setNextOptionActive, setPreviousOptionActive, matchOption } from "./gux-listbox.service";
3
3
  import { optionTagSelector } from "./options/option-types";
4
4
  import { buildI18nForComponent } from "../../../i18n";
5
5
  import { whenEventIsFrom } from "../../../utils/dom/when-event-is-from";
@@ -23,13 +23,15 @@ export class GuxListbox {
23
23
  this.listboxOptions = [];
24
24
  this.allListboxOptionsFiltered = undefined;
25
25
  }
26
- onFocus() {
27
- setInitialActiveOption(this.root);
28
- }
29
26
  onBlur() {
30
27
  clearActiveOptions(this.root);
31
28
  }
32
29
  onKeydown(event) {
30
+ if (!hasActiveOption(this.root)) {
31
+ event.preventDefault();
32
+ setInitialActiveOption(this.root);
33
+ return;
34
+ }
33
35
  switch (event.key) {
34
36
  case 'Enter':
35
37
  event.preventDefault();
@@ -316,12 +318,6 @@ export class GuxListbox {
316
318
  static get elementRef() { return "root"; }
317
319
  static get listeners() {
318
320
  return [{
319
- "name": "focus",
320
- "method": "onFocus",
321
- "target": undefined,
322
- "capture": false,
323
- "passive": false
324
- }, {
325
321
  "name": "blur",
326
322
  "method": "onBlur",
327
323
  "target": undefined,
@@ -3,9 +3,6 @@ export function getListOptions(list) {
3
3
  return item.value || item.value === '';
4
4
  });
5
5
  }
6
- function getHoveredOption(list) {
7
- return getListOptions(list).find(option => option.hovered && !option.disabled && !option.filtered);
8
- }
9
6
  function getFirstSelectedOption(list) {
10
7
  return getListOptions(list).find(option => option.selected && !option.disabled && !option.filtered);
11
8
  }
@@ -63,7 +60,7 @@ function getLastOption(list) {
63
60
  }
64
61
  return lastOption;
65
62
  }
66
- function hasActiveOption(list) {
63
+ export function hasActiveOption(list) {
67
64
  return Boolean(getActiveOption(list));
68
65
  }
69
66
  export function getSearchOption(list, searchString) {
@@ -84,9 +81,7 @@ export function clearActiveOptions(list) {
84
81
  });
85
82
  }
86
83
  export function setInitialActiveOption(list) {
87
- setActiveOption(list, getHoveredOption(list) ||
88
- getFirstSelectedOption(list) ||
89
- getFirstOption(list));
84
+ setActiveOption(list, getFirstSelectedOption(list) || getFirstOption(list));
90
85
  }
91
86
  export function hasPreviousOption(list) {
92
87
  if (hasActiveOption(list)) {
@@ -37,12 +37,20 @@
37
37
  background: var(--gse-ui-menu-option-selected-backgroundColor);
38
38
  }
39
39
 
40
+ :host(:active:not(:disabled)) {
41
+ font-family: var(--gse-ui-menu-option-label-active-text-fontFamily);
42
+ font-size: var(--gse-ui-menu-option-label-active-text-fontSize);
43
+ font-weight: var(--gse-ui-menu-option-label-active-text-fontWeight);
44
+ line-height: var(--gse-ui-menu-option-label-active-text-lineHeight);
45
+ }
46
+
40
47
  :host(.gux-active) {
41
48
  border-radius: var(--gse-semantic-focusRing-cornerRadius);
42
49
  outline: var(--gse-ui-menu-option-focus-border-width) var(--gse-ui-menu-option-focus-border-style) var(--gse-ui-menu-option-focus-border-color);
50
+ outline-offset: -2px;
43
51
  }
44
52
 
45
- :host(.gux-hovered:not(:disabled)) {
53
+ :host(:hover:not(:disabled)) {
46
54
  background: var(--gse-ui-menu-option-hover-backgroundColor);
47
55
  }
48
56
 
@@ -10,13 +10,6 @@ export class GuxOption {
10
10
  this.selected = false;
11
11
  this.disabled = false;
12
12
  this.filtered = false;
13
- this.hovered = false;
14
- }
15
- onmouseenter() {
16
- this.hovered = true;
17
- }
18
- onMouseleave() {
19
- this.hovered = false;
20
13
  }
21
14
  handleActive(active) {
22
15
  var _a, _b;
@@ -41,7 +34,6 @@ export class GuxOption {
41
34
  'gux-active': this.active,
42
35
  'gux-disabled': this.disabled,
43
36
  'gux-filtered': this.filtered,
44
- 'gux-hovered': this.hovered,
45
37
  'gux-selected': this.selected
46
38
  }, "aria-selected": this.getAriaSelected(), "aria-disabled": this.disabled.toString() }, h("gux-truncate", { ref: el => (this.truncateElement = el) }, h("slot", null))));
47
39
  }
@@ -147,24 +139,6 @@ export class GuxOption {
147
139
  "attribute": "filtered",
148
140
  "reflect": false,
149
141
  "defaultValue": "false"
150
- },
151
- "hovered": {
152
- "type": "boolean",
153
- "mutable": true,
154
- "complexType": {
155
- "original": "boolean",
156
- "resolved": "boolean",
157
- "references": {}
158
- },
159
- "required": false,
160
- "optional": false,
161
- "docs": {
162
- "tags": [],
163
- "text": ""
164
- },
165
- "attribute": "hovered",
166
- "reflect": false,
167
- "defaultValue": "false"
168
142
  }
169
143
  };
170
144
  }
@@ -175,19 +149,4 @@ export class GuxOption {
175
149
  "methodName": "handleActive"
176
150
  }];
177
151
  }
178
- static get listeners() {
179
- return [{
180
- "name": "mouseenter",
181
- "method": "onmouseenter",
182
- "target": undefined,
183
- "capture": false,
184
- "passive": true
185
- }, {
186
- "name": "mouseleave",
187
- "method": "onMouseleave",
188
- "target": undefined,
189
- "capture": false,
190
- "passive": true
191
- }];
192
- }
193
152
  }
@@ -37,12 +37,20 @@
37
37
  background: var(--gse-ui-menu-option-selected-backgroundColor);
38
38
  }
39
39
 
40
+ :host(:active:not(:disabled)) {
41
+ font-family: var(--gse-ui-menu-option-label-active-text-fontFamily);
42
+ font-size: var(--gse-ui-menu-option-label-active-text-fontSize);
43
+ font-weight: var(--gse-ui-menu-option-label-active-text-fontWeight);
44
+ line-height: var(--gse-ui-menu-option-label-active-text-lineHeight);
45
+ }
46
+
40
47
  :host(.gux-active) {
41
48
  border-radius: var(--gse-semantic-focusRing-cornerRadius);
42
49
  outline: var(--gse-ui-menu-option-focus-border-width) var(--gse-ui-menu-option-focus-border-style) var(--gse-ui-menu-option-focus-border-color);
50
+ outline-offset: -2px;
43
51
  }
44
52
 
45
- :host(.gux-hovered:not(:disabled)) {
53
+ :host(:hover:not(:disabled)) {
46
54
  background: var(--gse-ui-menu-option-hover-backgroundColor);
47
55
  }
48
56
 
@@ -23,6 +23,7 @@
23
23
  :host:host(.gux-active) {
24
24
  border-radius: var(--gse-semantic-focusRing-cornerRadius);
25
25
  outline: var(--gse-ui-menu-option-focus-border-width) var(--gse-ui-menu-option-focus-border-style) var(--gse-ui-menu-option-focus-border-color);
26
+ outline-offset: -2px;
26
27
  }
27
28
  :host:host(.gux-hovered:not([disabled])) {
28
29
  background: var(--gse-ui-menu-option-hover-backgroundColor);
@@ -12,11 +12,6 @@
12
12
  scrollbar-color: var(--gse-ui-menu-scrollbar-foregroundColor);
13
13
  }
14
14
 
15
- :host(:focus-visible) {
16
- outline: var(--gse-semantic-focusRing-width) solid var(--gse-semantic-color-focus);
17
- outline-offset: var(--gse-semantic-focusRing-offset);
18
- }
19
-
20
15
  .gux-message-container {
21
16
  display: flex;
22
17
  flex-direction: column;
@@ -1,5 +1,5 @@
1
1
  import { h, Host } from "@stencil/core";
2
- import { actOnActiveOption, clearActiveOptions, goToOption, hasPreviousOption, hasNextOption, onClickedOption, setFirstOptionActive, setInitialActiveOption, setLastOptionActive, setNextOptionActive, setPreviousOptionActive } from "../gux-listbox/gux-listbox.service";
2
+ import { actOnActiveOption, clearActiveOptions, goToOption, hasPreviousOption, hasNextOption, onClickedOption, setFirstOptionActive, setInitialActiveOption, setLastOptionActive, setNextOptionActive, setPreviousOptionActive, hasActiveOption } from "../gux-listbox/gux-listbox.service";
3
3
  import { buildI18nForComponent } from "../../../i18n";
4
4
  import { whenEventIsFrom } from "../../../utils/dom/when-event-is-from";
5
5
  import simulateNativeEvent from "../../../utils/dom/simulate-native-event";
@@ -21,9 +21,6 @@ export class GuxListboxMulti {
21
21
  this.allListboxOptionsFiltered = undefined;
22
22
  this.hasExactMatch = false;
23
23
  }
24
- onFocus() {
25
- setInitialActiveOption(this.root);
26
- }
27
24
  onBlur() {
28
25
  clearActiveOptions(this.root);
29
26
  }
@@ -32,6 +29,11 @@ export class GuxListboxMulti {
32
29
  }
33
30
  onKeydown(event) {
34
31
  var _a;
32
+ if (!hasActiveOption(this.root)) {
33
+ event.preventDefault();
34
+ setInitialActiveOption(this.root);
35
+ return;
36
+ }
35
37
  switch (event.key) {
36
38
  case 'Enter':
37
39
  event.preventDefault();
@@ -146,7 +148,6 @@ export class GuxListboxMulti {
146
148
  updateOnSlotChange() {
147
149
  this.setListboxOptions();
148
150
  this.updateListboxOptions();
149
- setInitialActiveOption(this.root);
150
151
  }
151
152
  getOptionCreateElement() {
152
153
  this.optionCreateElement = this.root.querySelector('gux-create-option');
@@ -161,6 +162,7 @@ export class GuxListboxMulti {
161
162
  listboxOption.selected = this.getSelectedValues().includes(listboxOption.value);
162
163
  if (this.filterType !== 'custom') {
163
164
  listboxOption.filtered = !listboxOption.textContent
165
+ .trim()
164
166
  .toLowerCase()
165
167
  .startsWith(this.textInput.toLowerCase());
166
168
  }
@@ -419,12 +421,6 @@ export class GuxListboxMulti {
419
421
  }
420
422
  static get listeners() {
421
423
  return [{
422
- "name": "focus",
423
- "method": "onFocus",
424
- "target": undefined,
425
- "capture": false,
426
- "passive": false
427
- }, {
428
424
  "name": "blur",
429
425
  "method": "onBlur",
430
426
  "target": undefined,
@@ -31,6 +31,12 @@
31
31
  pointer-events: none;
32
32
  cursor: default;
33
33
  }
34
+ :host:host(:active:not(:disabled)) {
35
+ font-family: var(--gse-ui-menu-option-label-active-text-fontFamily);
36
+ font-size: var(--gse-ui-menu-option-label-active-text-fontSize);
37
+ font-weight: var(--gse-ui-menu-option-label-active-text-fontWeight);
38
+ line-height: var(--gse-ui-menu-option-label-active-text-lineHeight);
39
+ }
34
40
  :host:host(.gux-selected) {
35
41
  font-family: var(--gse-ui-menu-option-label-active-text-fontFamily);
36
42
  font-size: var(--gse-ui-menu-option-label-active-text-fontSize);
@@ -44,14 +50,15 @@
44
50
  :host:host(.gux-active) {
45
51
  border-radius: var(--gse-semantic-focusRing-cornerRadius);
46
52
  outline: var(--gse-ui-menu-option-focus-border-width) var(--gse-ui-menu-option-focus-border-style) var(--gse-ui-menu-option-focus-border-color);
53
+ outline-offset: -2px;
47
54
  }
48
- :host:host(.gux-hovered:not([disabled])) {
55
+ :host:host(:hover:not([disabled])) {
49
56
  background-color: var(--gse-ui-menu-option-hover-backgroundColor);
50
57
  }
51
- :host:host(.gux-hovered:not([disabled])):host(.gux-selected) .gux-checkbox-container > path {
58
+ :host:host(:hover:not([disabled])):host(.gux-selected) .gux-checkbox-container > path {
52
59
  fill: var(--gse-ui-menu-option-checkbox-checked-hover-foregroundColor);
53
60
  }
54
- :host:host(.gux-hovered:not([disabled])):host(:not(.gux-selected)) .gux-checkbox-container > path {
61
+ :host:host(:hover:not([disabled])):host(:not(.gux-selected)) .gux-checkbox-container > path {
55
62
  fill: var(--gse-ui-menu-option-checkbox-unchecked-hover-foregroundColor);
56
63
  }
57
64
  :host:host(.gux-filtered) {