genesys-spark-components 4.5.0 → 4.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (359) hide show
  1. package/dist/cjs/en-66d2b744.js +26 -0
  2. package/dist/cjs/genesys-webcomponents.cjs.js +1 -1
  3. package/dist/cjs/gux-accordion.cjs.entry.js +1 -1
  4. package/dist/cjs/gux-action-button.cjs.entry.js +2 -2
  5. package/dist/cjs/gux-action-toast-legacy.cjs.entry.js +1 -1
  6. package/dist/cjs/gux-advanced-dropdown-legacy.cjs.entry.js +1 -1
  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 +2 -2
  12. package/dist/cjs/gux-button-slot.cjs.entry.js +2 -2
  13. package/dist/cjs/gux-button.cjs.entry.js +2 -2
  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 +1 -1
  18. package/dist/cjs/gux-context-menu.cjs.entry.js +1 -1
  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 +2 -2
  26. package/dist/cjs/gux-dropdown_3.cjs.entry.js +13 -12
  27. package/dist/cjs/gux-flag-icon-beta.cjs.entry.js +1 -1
  28. package/dist/cjs/gux-flyout-menu.cjs.entry.js +1 -1
  29. package/dist/cjs/gux-form-field-checkbox.cjs.entry.js +1 -1
  30. package/dist/cjs/gux-form-field-color.cjs.entry.js +1 -1
  31. package/dist/cjs/gux-form-field-dropdown.cjs.entry.js +3 -13
  32. package/dist/cjs/gux-form-field-input-clear-button.cjs.entry.js +1 -1
  33. package/dist/cjs/gux-form-field-number_3.cjs.entry.js +2 -2
  34. package/dist/cjs/gux-form-field-phone.cjs.entry.js +1 -1
  35. package/dist/cjs/gux-form-field-radio.cjs.entry.js +1 -1
  36. package/dist/cjs/gux-form-field-range.cjs.entry.js +1 -1
  37. package/dist/cjs/gux-form-field-search.cjs.entry.js +1 -1
  38. package/dist/cjs/gux-form-field-select.cjs.entry.js +1 -1
  39. package/dist/cjs/gux-form-field-text-like.cjs.entry.js +8 -2
  40. package/dist/cjs/gux-form-field-textarea.cjs.entry.js +1 -1
  41. package/dist/cjs/gux-form-field-time-picker.cjs.entry.js +1 -1
  42. package/dist/cjs/gux-form-field-time-zone-picker.cjs.entry.js +1 -1
  43. package/dist/cjs/gux-icon.cjs.entry.js +1 -1
  44. package/dist/cjs/gux-inline-alert.cjs.entry.js +1 -1
  45. package/dist/cjs/gux-list.cjs.entry.js +1 -1
  46. package/dist/cjs/gux-listbox-multi.cjs.entry.js +2 -2
  47. package/dist/cjs/{gux-listbox.service-9bcd72cb.js → gux-listbox.service-e1b0f291.js} +37 -41
  48. package/dist/cjs/gux-loading-message.cjs.entry.js +1 -1
  49. package/dist/cjs/gux-modal-legacy.cjs.entry.js +1 -1
  50. package/dist/cjs/gux-modal.cjs.entry.js +1 -1
  51. package/dist/cjs/gux-month-calendar.cjs.entry.js +1 -1
  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-group-beta.cjs.entry.js +23 -0
  55. package/dist/cjs/gux-option-icon.cjs.entry.js +10 -3
  56. package/dist/cjs/gux-option-multi.cjs.entry.js +10 -3
  57. package/dist/cjs/gux-page-loading-spinner.cjs.entry.js +1 -1
  58. package/dist/cjs/gux-pagination-buttons_2.cjs.entry.js +8 -4
  59. package/dist/cjs/gux-pagination-cursor.cjs.entry.js +1 -1
  60. package/dist/cjs/gux-pagination-items-per-page.cjs.entry.js +1 -1
  61. package/dist/cjs/gux-pagination-legacy.cjs.entry.js +1 -1
  62. package/dist/cjs/gux-pagination.cjs.entry.js +1 -1
  63. package/dist/cjs/gux-phone-input-beta.cjs.entry.js +1 -1
  64. package/dist/cjs/gux-popover-list.cjs.entry.js +1 -1
  65. package/dist/cjs/gux-popup.cjs.entry.js +2 -1
  66. package/dist/cjs/gux-radial-loading.cjs.entry.js +1 -1
  67. package/dist/cjs/gux-radial-progress.cjs.entry.js +1 -1
  68. package/dist/cjs/gux-rating.cjs.entry.js +1 -1
  69. package/dist/cjs/gux-screen-reader-beta.cjs.entry.js +1 -1
  70. package/dist/cjs/gux-segmented-control-beta.cjs.entry.js +1 -1
  71. package/dist/cjs/gux-simple-toast-legacy.cjs.entry.js +1 -1
  72. package/dist/cjs/gux-skip-navigation-list.cjs.entry.js +1 -1
  73. package/dist/cjs/gux-sort-control.cjs.entry.js +1 -1
  74. package/dist/cjs/gux-switch-legacy.cjs.entry.js +1 -1
  75. package/dist/cjs/gux-table-toolbar-action.cjs.entry.js +1 -1
  76. package/dist/cjs/gux-table-toolbar-custom-action.cjs.entry.js +1 -1
  77. package/dist/cjs/gux-table-toolbar-menu-button.cjs.entry.js +1 -1
  78. package/dist/cjs/gux-table-toolbar.cjs.entry.js +1 -1
  79. package/dist/cjs/gux-table.cjs.entry.js +1 -1
  80. package/dist/cjs/gux-tabs-advanced.cjs.entry.js +1 -1
  81. package/dist/cjs/gux-tabs.cjs.entry.js +1 -1
  82. package/dist/cjs/gux-tag.cjs.entry.js +1 -1
  83. package/dist/cjs/gux-text-highlight.cjs.entry.js +1 -1
  84. package/dist/cjs/gux-time-beta.cjs.entry.js +1 -1
  85. package/dist/cjs/gux-time-picker.cjs.entry.js +1 -1
  86. package/dist/cjs/gux-time-zone-picker-beta.cjs.entry.js +1 -1
  87. package/dist/cjs/gux-toast.cjs.entry.js +1 -1
  88. package/dist/cjs/gux-toggle.cjs.entry.js +1 -1
  89. package/dist/cjs/gux-tooltip.cjs.entry.js +1 -1
  90. package/dist/cjs/index-75c9f0d9.js +8 -4
  91. package/dist/cjs/loader.cjs.js +1 -1
  92. package/dist/cjs/{usage-0771d1fa.js → usage-ea342b1c.js} +1 -1
  93. package/dist/collection/collection-manifest.json +1 -0
  94. package/dist/collection/components/beta/gux-month-picker/gux-month-calendar/gux-month-calendar.css +0 -1
  95. package/dist/collection/components/stable/gux-action-button/gux-action-button.js +1 -1
  96. package/dist/collection/components/stable/gux-button/gux-button.css +3 -3
  97. package/dist/collection/components/stable/gux-button-multi/gux-button-multi.js +1 -1
  98. package/dist/collection/components/stable/gux-button-slot/gux-button-slot.css +2 -2
  99. package/dist/collection/components/stable/gux-dropdown/tests/gux-dropdown.e2e.js +5 -5
  100. package/dist/collection/components/stable/gux-dropdown/tests/gux-dropdown.spec.js +3 -3
  101. package/dist/collection/components/stable/gux-dropdown-multi/tests/gux-dropdown-multi.e2e.js +3 -3
  102. package/dist/collection/components/stable/gux-dropdown-multi/tests/gux-dropdown-multi.spec.js +1 -1
  103. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-dropdown/gux-form-field-dropdown.css +0 -4
  104. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-dropdown/gux-form-field-dropdown.js +1 -13
  105. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-dropdown/tests/gux-form-field-dropdown.e2e.js +5 -5
  106. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-dropdown/tests/gux-form-field-dropdown.spec.js +8 -8
  107. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-text-like/gux-form-field-text-like.js +25 -1
  108. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-text-like/tests/gux-form-field-text-like.e2e.js +27 -0
  109. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-text-like/tests/gux-form-field-text-like.spec.js +20 -0
  110. package/dist/collection/components/stable/gux-icon/gux-icon.js +1 -1
  111. package/dist/collection/components/stable/gux-icon/icons/fa/arrow-down-left-and-arrow-up-right-to-center-regular.svg +1 -0
  112. package/dist/collection/components/stable/gux-icon/icons/fa/arrow-right-to-bracket-regular.svg +1 -0
  113. package/dist/collection/components/stable/gux-icon/icons/fa/arrow-up-right-and-arrow-down-left-from-center-regular.svg +1 -0
  114. package/dist/collection/components/stable/gux-icon/icons/fa/arrows-down-to-people-regular.svg +1 -0
  115. package/dist/collection/components/stable/gux-icon/icons/fa/arrows-rotate-regular.svg +1 -0
  116. package/dist/collection/components/stable/gux-icon/icons/fa/display-regular.svg +1 -0
  117. package/dist/collection/components/stable/gux-icon/icons/fa/file-regular.svg +1 -0
  118. package/dist/collection/components/stable/gux-icon/icons/fa/regular-display-slash.svg +1 -0
  119. package/dist/collection/components/stable/gux-listbox/gux-listbox.js +2 -8
  120. package/dist/collection/components/stable/gux-listbox/gux-listbox.service.js +37 -41
  121. package/dist/collection/components/stable/gux-listbox/option-group/gux-option-group.css +26 -0
  122. package/dist/collection/components/stable/gux-listbox/option-group/gux-option-group.js +48 -0
  123. package/dist/collection/components/stable/gux-listbox/options/gux-option/gux-option.css +17 -0
  124. package/dist/collection/components/stable/gux-listbox/options/gux-option/gux-option.js +15 -2
  125. package/dist/collection/components/stable/gux-listbox/options/gux-option-icon/gux-option-icon.css +17 -0
  126. package/dist/collection/components/stable/gux-listbox/options/gux-option-icon/gux-option-icon.js +15 -2
  127. package/dist/collection/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.css +16 -0
  128. package/dist/collection/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.js +15 -2
  129. package/dist/collection/components/stable/gux-pagination/gux-pagination-buttons/gux-pagination-buttons.js +7 -3
  130. package/dist/collection/components/stable/gux-popup/gux-popup.js +26 -1
  131. package/dist/component-specs.json +10 -1
  132. package/dist/deploy-info.json +3 -3
  133. package/dist/esm/en-25a315a0.js +24 -0
  134. package/dist/esm/genesys-webcomponents.js +1 -1
  135. package/dist/esm/gux-accordion.entry.js +1 -1
  136. package/dist/esm/gux-action-button.entry.js +2 -2
  137. package/dist/esm/gux-action-toast-legacy.entry.js +1 -1
  138. package/dist/esm/gux-advanced-dropdown-legacy.entry.js +1 -1
  139. package/dist/esm/gux-announce-beta.entry.js +1 -1
  140. package/dist/esm/gux-badge.entry.js +1 -1
  141. package/dist/esm/gux-blank-state.entry.js +1 -1
  142. package/dist/esm/gux-breadcrumbs.entry.js +1 -1
  143. package/dist/esm/gux-button-multi.entry.js +2 -2
  144. package/dist/esm/gux-button-slot.entry.js +2 -2
  145. package/dist/esm/gux-button.entry.js +2 -2
  146. package/dist/esm/gux-calendar.entry.js +1 -1
  147. package/dist/esm/gux-card.entry.js +1 -1
  148. package/dist/esm/gux-column-manager.entry.js +1 -1
  149. package/dist/esm/gux-content-search.entry.js +1 -1
  150. package/dist/esm/gux-context-menu.entry.js +1 -1
  151. package/dist/esm/gux-copy-to-clipboard.entry.js +1 -1
  152. package/dist/esm/gux-date-beta.entry.js +1 -1
  153. package/dist/esm/gux-date-time-beta.entry.js +1 -1
  154. package/dist/esm/gux-datepicker.entry.js +1 -1
  155. package/dist/esm/gux-disclosure-button-legacy.entry.js +1 -1
  156. package/dist/esm/gux-dismiss-button.entry.js +1 -1
  157. package/dist/esm/gux-dropdown-multi.entry.js +2 -2
  158. package/dist/esm/gux-dropdown_3.entry.js +13 -12
  159. package/dist/esm/gux-flag-icon-beta.entry.js +1 -1
  160. package/dist/esm/gux-flyout-menu.entry.js +1 -1
  161. package/dist/esm/gux-form-field-checkbox.entry.js +1 -1
  162. package/dist/esm/gux-form-field-color.entry.js +1 -1
  163. package/dist/esm/gux-form-field-dropdown.entry.js +3 -13
  164. package/dist/esm/gux-form-field-input-clear-button.entry.js +1 -1
  165. package/dist/esm/gux-form-field-number_3.entry.js +2 -2
  166. package/dist/esm/gux-form-field-phone.entry.js +1 -1
  167. package/dist/esm/gux-form-field-radio.entry.js +1 -1
  168. package/dist/esm/gux-form-field-range.entry.js +1 -1
  169. package/dist/esm/gux-form-field-search.entry.js +1 -1
  170. package/dist/esm/gux-form-field-select.entry.js +1 -1
  171. package/dist/esm/gux-form-field-text-like.entry.js +8 -2
  172. package/dist/esm/gux-form-field-textarea.entry.js +1 -1
  173. package/dist/esm/gux-form-field-time-picker.entry.js +1 -1
  174. package/dist/esm/gux-form-field-time-zone-picker.entry.js +1 -1
  175. package/dist/esm/gux-icon.entry.js +1 -1
  176. package/dist/esm/gux-inline-alert.entry.js +1 -1
  177. package/dist/esm/gux-list.entry.js +1 -1
  178. package/dist/esm/gux-listbox-multi.entry.js +2 -2
  179. package/dist/esm/{gux-listbox.service-0f180d8a.js → gux-listbox.service-8ccb2f73.js} +37 -41
  180. package/dist/esm/gux-loading-message.entry.js +1 -1
  181. package/dist/esm/gux-modal-legacy.entry.js +1 -1
  182. package/dist/esm/gux-modal.entry.js +1 -1
  183. package/dist/esm/gux-month-calendar.entry.js +1 -1
  184. package/dist/esm/gux-month-picker-beta.entry.js +1 -1
  185. package/dist/esm/gux-notification-toast-legacy.entry.js +1 -1
  186. package/dist/esm/gux-option-group-beta.entry.js +19 -0
  187. package/dist/esm/gux-option-icon.entry.js +10 -3
  188. package/dist/esm/gux-option-multi.entry.js +10 -3
  189. package/dist/esm/gux-page-loading-spinner.entry.js +1 -1
  190. package/dist/esm/gux-pagination-buttons_2.entry.js +8 -4
  191. package/dist/esm/gux-pagination-cursor.entry.js +1 -1
  192. package/dist/esm/gux-pagination-items-per-page.entry.js +1 -1
  193. package/dist/esm/gux-pagination-legacy.entry.js +1 -1
  194. package/dist/esm/gux-pagination.entry.js +1 -1
  195. package/dist/esm/gux-phone-input-beta.entry.js +1 -1
  196. package/dist/esm/gux-popover-list.entry.js +1 -1
  197. package/dist/esm/gux-popup.entry.js +2 -1
  198. package/dist/esm/gux-radial-loading.entry.js +1 -1
  199. package/dist/esm/gux-radial-progress.entry.js +1 -1
  200. package/dist/esm/gux-rating.entry.js +1 -1
  201. package/dist/esm/gux-screen-reader-beta.entry.js +1 -1
  202. package/dist/esm/gux-segmented-control-beta.entry.js +1 -1
  203. package/dist/esm/gux-simple-toast-legacy.entry.js +1 -1
  204. package/dist/esm/gux-skip-navigation-list.entry.js +1 -1
  205. package/dist/esm/gux-sort-control.entry.js +1 -1
  206. package/dist/esm/gux-switch-legacy.entry.js +1 -1
  207. package/dist/esm/gux-table-toolbar-action.entry.js +1 -1
  208. package/dist/esm/gux-table-toolbar-custom-action.entry.js +1 -1
  209. package/dist/esm/gux-table-toolbar-menu-button.entry.js +1 -1
  210. package/dist/esm/gux-table-toolbar.entry.js +1 -1
  211. package/dist/esm/gux-table.entry.js +1 -1
  212. package/dist/esm/gux-tabs-advanced.entry.js +1 -1
  213. package/dist/esm/gux-tabs.entry.js +1 -1
  214. package/dist/esm/gux-tag.entry.js +1 -1
  215. package/dist/esm/gux-text-highlight.entry.js +1 -1
  216. package/dist/esm/gux-time-beta.entry.js +1 -1
  217. package/dist/esm/gux-time-picker.entry.js +1 -1
  218. package/dist/esm/gux-time-zone-picker-beta.entry.js +1 -1
  219. package/dist/esm/gux-toast.entry.js +1 -1
  220. package/dist/esm/gux-toggle.entry.js +1 -1
  221. package/dist/esm/gux-tooltip.entry.js +1 -1
  222. package/dist/esm/index-39e65a0a.js +8 -4
  223. package/dist/esm/loader.js +1 -1
  224. package/dist/esm/{usage-ec7c6ed2.js → usage-a9b5d490.js} +1 -1
  225. package/dist/genesys-webcomponents/genesys-webcomponents.css +1 -1
  226. package/dist/genesys-webcomponents/genesys-webcomponents.esm.js +1 -1
  227. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.en.json +1 -1
  228. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pt-pt.json +1 -1
  229. package/dist/genesys-webcomponents/icons/fa/arrow-down-left-and-arrow-up-right-to-center-regular.svg +1 -0
  230. package/dist/genesys-webcomponents/icons/fa/arrow-right-to-bracket-regular.svg +1 -0
  231. package/dist/genesys-webcomponents/icons/fa/arrow-up-right-and-arrow-down-left-from-center-regular.svg +1 -0
  232. package/dist/genesys-webcomponents/icons/fa/arrows-down-to-people-regular.svg +1 -0
  233. package/dist/genesys-webcomponents/icons/fa/arrows-rotate-regular.svg +1 -0
  234. package/dist/genesys-webcomponents/icons/fa/display-regular.svg +1 -0
  235. package/dist/genesys-webcomponents/icons/fa/file-regular.svg +1 -0
  236. package/dist/genesys-webcomponents/icons/fa/regular-display-slash.svg +1 -0
  237. package/dist/genesys-webcomponents/{p-32cc860b.entry.js → p-0194b96a.entry.js} +1 -1
  238. package/dist/genesys-webcomponents/{p-06141ff6.entry.js → p-02435eba.entry.js} +1 -1
  239. package/dist/genesys-webcomponents/p-02dbb0ac.entry.js +1 -0
  240. package/dist/genesys-webcomponents/{p-debe59a7.entry.js → p-057b7c6b.entry.js} +1 -1
  241. package/dist/genesys-webcomponents/p-086bfffd.entry.js +1 -0
  242. package/dist/genesys-webcomponents/p-0aa02a8c.entry.js +1 -0
  243. package/dist/genesys-webcomponents/{p-bff96f01.entry.js → p-0f71fbb4.entry.js} +1 -1
  244. package/dist/genesys-webcomponents/{p-111b0115.entry.js → p-13ad4f42.entry.js} +1 -1
  245. package/dist/genesys-webcomponents/{p-e80594cc.entry.js → p-13b33671.entry.js} +1 -1
  246. package/dist/genesys-webcomponents/{p-4c20850a.entry.js → p-1a47a637.entry.js} +1 -1
  247. package/dist/genesys-webcomponents/{p-80047812.entry.js → p-1e122371.entry.js} +1 -1
  248. package/dist/genesys-webcomponents/{p-a28864cf.entry.js → p-1e2c26d4.entry.js} +1 -1
  249. package/dist/genesys-webcomponents/p-1f0f3f12.entry.js +1 -0
  250. package/dist/genesys-webcomponents/p-1f5e0cf6.entry.js +1 -0
  251. package/dist/genesys-webcomponents/p-209db079.entry.js +1 -0
  252. package/dist/genesys-webcomponents/p-20fbe34f.js +1 -0
  253. package/dist/genesys-webcomponents/{p-4fbf392c.entry.js → p-22d9bd86.entry.js} +1 -1
  254. package/dist/genesys-webcomponents/{p-b052ecd1.entry.js → p-24fecfa2.entry.js} +1 -1
  255. package/dist/genesys-webcomponents/{p-fc5d554d.entry.js → p-28884f46.entry.js} +1 -1
  256. package/dist/genesys-webcomponents/{p-6722d319.entry.js → p-29b6eee9.entry.js} +1 -1
  257. package/dist/genesys-webcomponents/p-2abbbf05.entry.js +1 -0
  258. package/dist/genesys-webcomponents/{p-b798430c.entry.js → p-2efe0fba.entry.js} +1 -1
  259. package/dist/genesys-webcomponents/{p-74756166.entry.js → p-35537f4a.entry.js} +1 -1
  260. package/dist/genesys-webcomponents/p-3a90466e.entry.js +1 -0
  261. package/dist/genesys-webcomponents/{p-448dd098.entry.js → p-3ba45599.entry.js} +1 -1
  262. package/dist/genesys-webcomponents/{p-f0b5b1a3.entry.js → p-46ce101a.entry.js} +1 -1
  263. package/dist/genesys-webcomponents/p-47cdc1ca.entry.js +1 -0
  264. package/dist/genesys-webcomponents/{p-f8a21f5b.entry.js → p-4b3db04a.entry.js} +1 -1
  265. package/dist/genesys-webcomponents/{p-04be66ee.entry.js → p-4d8c4597.entry.js} +1 -1
  266. package/dist/genesys-webcomponents/{p-989753ad.entry.js → p-5304b139.entry.js} +1 -1
  267. package/dist/genesys-webcomponents/{p-cda77f0e.entry.js → p-564d3a74.entry.js} +1 -1
  268. package/dist/genesys-webcomponents/{p-eb99c173.entry.js → p-56ec20c7.entry.js} +1 -1
  269. package/dist/genesys-webcomponents/{p-41c3b361.entry.js → p-5bcf168f.entry.js} +1 -1
  270. package/dist/genesys-webcomponents/{p-ec539ee9.entry.js → p-5cac8417.entry.js} +1 -1
  271. package/dist/genesys-webcomponents/{p-4733570b.entry.js → p-5f2c267a.entry.js} +1 -1
  272. package/dist/genesys-webcomponents/{p-660e6ffe.entry.js → p-644077a1.entry.js} +1 -1
  273. package/dist/genesys-webcomponents/{p-8c5c7fb3.entry.js → p-65149af5.entry.js} +1 -1
  274. package/dist/genesys-webcomponents/{p-24d7f83b.entry.js → p-658b2769.entry.js} +1 -1
  275. package/dist/genesys-webcomponents/{p-d2b6e407.entry.js → p-66d05c52.entry.js} +1 -1
  276. package/dist/genesys-webcomponents/{p-4f600322.entry.js → p-66da0b69.entry.js} +1 -1
  277. package/dist/genesys-webcomponents/{p-e09de68a.entry.js → p-66f52ef4.entry.js} +1 -1
  278. package/dist/genesys-webcomponents/{p-958b9cf3.entry.js → p-676a7808.entry.js} +1 -1
  279. package/dist/genesys-webcomponents/{p-9bca384a.entry.js → p-6ad8ec99.entry.js} +1 -1
  280. package/dist/genesys-webcomponents/p-6d764dde.js +1 -0
  281. package/dist/genesys-webcomponents/{p-ddeabb06.entry.js → p-7167b83d.entry.js} +1 -1
  282. package/dist/genesys-webcomponents/{p-c5f6a094.entry.js → p-72d4dc2b.entry.js} +1 -1
  283. package/dist/genesys-webcomponents/{p-5dde382c.entry.js → p-754c1424.entry.js} +1 -1
  284. package/dist/genesys-webcomponents/{p-a1a70966.entry.js → p-76fc42e5.entry.js} +1 -1
  285. package/dist/genesys-webcomponents/{p-8de1d5df.entry.js → p-77a34cdc.entry.js} +1 -1
  286. package/dist/genesys-webcomponents/{p-0ef94751.entry.js → p-79aa97dd.entry.js} +1 -1
  287. package/dist/genesys-webcomponents/{p-cd775b1c.entry.js → p-7c8b1fd7.entry.js} +1 -1
  288. package/dist/genesys-webcomponents/{p-d2c226a9.entry.js → p-7c9e7e91.entry.js} +1 -1
  289. package/dist/genesys-webcomponents/{p-0a9a5052.entry.js → p-80746489.entry.js} +1 -1
  290. package/dist/genesys-webcomponents/p-845fed4c.entry.js +1 -0
  291. package/dist/genesys-webcomponents/{p-3324b97d.entry.js → p-84dff70e.entry.js} +1 -1
  292. package/dist/genesys-webcomponents/{p-916883d1.entry.js → p-87f2a656.entry.js} +1 -1
  293. package/dist/genesys-webcomponents/{p-67cb7eda.entry.js → p-8a2d0702.entry.js} +1 -1
  294. package/dist/genesys-webcomponents/{p-fc417cf4.entry.js → p-8faf6f75.entry.js} +1 -1
  295. package/dist/genesys-webcomponents/{p-68b8a54d.entry.js → p-90abae17.entry.js} +1 -1
  296. package/dist/genesys-webcomponents/{p-b9ccf117.entry.js → p-9428689a.entry.js} +1 -1
  297. package/dist/genesys-webcomponents/{p-698b1208.entry.js → p-9a8632b4.entry.js} +1 -1
  298. package/dist/genesys-webcomponents/p-9d5acac3.entry.js +1 -0
  299. package/dist/genesys-webcomponents/p-9ec956d3.entry.js +1 -0
  300. package/dist/genesys-webcomponents/{p-8b5ad7d2.entry.js → p-9fd526e3.entry.js} +1 -1
  301. package/dist/genesys-webcomponents/{p-8be97f54.entry.js → p-a0052b72.entry.js} +1 -1
  302. package/dist/genesys-webcomponents/p-a48f72ed.entry.js +1 -0
  303. package/dist/genesys-webcomponents/{p-b7e6056d.entry.js → p-acaaa493.entry.js} +1 -1
  304. package/dist/genesys-webcomponents/p-b3885745.entry.js +1 -0
  305. package/dist/genesys-webcomponents/{p-efc27dab.entry.js → p-ba2855b5.entry.js} +1 -1
  306. package/dist/genesys-webcomponents/{p-d880fa4b.entry.js → p-bbf199ce.entry.js} +1 -1
  307. package/dist/genesys-webcomponents/p-be722202.entry.js +1 -0
  308. package/dist/genesys-webcomponents/{p-24c9a100.entry.js → p-c237adac.entry.js} +1 -1
  309. package/dist/genesys-webcomponents/{p-f56d9d37.entry.js → p-c6b2cea0.entry.js} +1 -1
  310. package/dist/genesys-webcomponents/p-c7305a50.entry.js +1 -0
  311. package/dist/genesys-webcomponents/{p-fcd4c634.entry.js → p-c7c4457e.entry.js} +1 -1
  312. package/dist/genesys-webcomponents/{p-9291d78a.entry.js → p-cc5ca3c9.entry.js} +1 -1
  313. package/dist/genesys-webcomponents/{p-b835f28f.entry.js → p-d490ecd9.entry.js} +1 -1
  314. package/dist/genesys-webcomponents/{p-e03c60db.entry.js → p-d4bd7289.entry.js} +1 -1
  315. package/dist/genesys-webcomponents/{p-cf7633bb.entry.js → p-d6442d74.entry.js} +1 -1
  316. package/dist/genesys-webcomponents/p-d75e53c6.entry.js +1 -0
  317. package/dist/genesys-webcomponents/p-ddfcd695.entry.js +1 -0
  318. package/dist/genesys-webcomponents/{p-ba9d6ea8.entry.js → p-df96a16b.entry.js} +1 -1
  319. package/dist/genesys-webcomponents/{p-b77132e2.entry.js → p-e6623114.entry.js} +1 -1
  320. package/dist/genesys-webcomponents/{p-7f98fac7.js → p-e8e87ffb.js} +1 -1
  321. package/dist/genesys-webcomponents/{p-1bdc0669.entry.js → p-f06d1bfc.entry.js} +1 -1
  322. package/dist/genesys-webcomponents/{p-3dfc79fb.entry.js → p-f129f0e9.entry.js} +1 -1
  323. package/dist/genesys-webcomponents/{p-02087595.entry.js → p-f7691f80.entry.js} +1 -1
  324. package/dist/genesys-webcomponents/{p-1ee5f9af.entry.js → p-f940bf51.entry.js} +1 -1
  325. package/dist/genesys-webcomponents/{p-4979d690.entry.js → p-fbd4ce7f.entry.js} +1 -1
  326. package/dist/stencil-wrapper.js +1 -1
  327. package/dist/types/components/stable/gux-form-field/components/gux-form-field-dropdown/gux-form-field-dropdown.d.ts +0 -2
  328. package/dist/types/components/stable/gux-form-field/components/gux-form-field-text-like/gux-form-field-text-like.d.ts +2 -0
  329. package/dist/types/components/stable/gux-icon/gux-icon.types.d.ts +1 -1
  330. package/dist/types/components/stable/gux-listbox/gux-listbox.service.d.ts +3 -0
  331. package/dist/types/components/stable/gux-listbox/option-group/gux-option-group.d.ts +8 -0
  332. package/dist/types/components/stable/gux-listbox/options/gux-option/gux-option.d.ts +3 -0
  333. package/dist/types/components/stable/gux-listbox/options/gux-option-icon/gux-option-icon.d.ts +3 -0
  334. package/dist/types/components/stable/gux-listbox-multi/gux-option-multi/gux-option-multi.d.ts +3 -0
  335. package/dist/types/components/stable/gux-popup/gux-popup.d.ts +5 -0
  336. package/dist/types/components.d.ts +25 -0
  337. package/dist/types/stencil-wrapper.d.ts +1 -1
  338. package/package.json +1 -1
  339. package/dist/cjs/en-f88c1935.js +0 -22
  340. package/dist/esm/en-98371f99.js +0 -20
  341. package/dist/genesys-webcomponents/p-3b3e4c5d.entry.js +0 -1
  342. package/dist/genesys-webcomponents/p-43557c1f.entry.js +0 -1
  343. package/dist/genesys-webcomponents/p-460a4982.entry.js +0 -1
  344. package/dist/genesys-webcomponents/p-65b03df8.js +0 -1
  345. package/dist/genesys-webcomponents/p-84cc916b.entry.js +0 -1
  346. package/dist/genesys-webcomponents/p-87bf41a0.entry.js +0 -1
  347. package/dist/genesys-webcomponents/p-8abeb43f.entry.js +0 -1
  348. package/dist/genesys-webcomponents/p-aaa59fd3.entry.js +0 -1
  349. package/dist/genesys-webcomponents/p-aee137e6.entry.js +0 -1
  350. package/dist/genesys-webcomponents/p-bf961d61.entry.js +0 -1
  351. package/dist/genesys-webcomponents/p-c7328d42.js +0 -1
  352. package/dist/genesys-webcomponents/p-cab88e9d.entry.js +0 -1
  353. package/dist/genesys-webcomponents/p-d9b474b8.entry.js +0 -1
  354. package/dist/genesys-webcomponents/p-e208feb4.entry.js +0 -1
  355. package/dist/genesys-webcomponents/p-e566718d.entry.js +0 -1
  356. package/dist/genesys-webcomponents/p-f06c026b.entry.js +0 -1
  357. package/dist/genesys-webcomponents/p-f50889cd.entry.js +0 -1
  358. package/dist/genesys-webcomponents/p-f56a4664.entry.js +0 -1
  359. package/dist/genesys-webcomponents/p-f8f6fbb5.entry.js +0 -1
@@ -10,8 +10,6 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
10
10
  };
11
11
  import { h } from "@stencil/core";
12
12
  import { buildI18nForComponent } from "../../../../../i18n";
13
- import { calculateInputDisabledState } from "../../../../../utils/dom/calculate-input-disabled-state";
14
- import { onInputDisabledStateChange } from "../../../../../utils/dom/on-input-disabled-state-change";
15
13
  import { OnMutation } from "../../../../../utils/decorator/on-mutation";
16
14
  import { onRequiredChange } from "../../../../../utils/dom/on-attribute-change";
17
15
  import { hasSlot } from "../../../../../utils/dom/has-slot";
@@ -30,7 +28,6 @@ export class GuxFormFieldDropdown {
30
28
  constructor() {
31
29
  this.labelPosition = undefined;
32
30
  this.computedLabelPosition = 'above';
33
- this.disabled = undefined;
34
31
  this.required = undefined;
35
32
  this.hasError = false;
36
33
  this.hasHelp = false;
@@ -55,9 +52,6 @@ export class GuxFormFieldDropdown {
55
52
  trackComponent(this.root, { variant: this.variant });
56
53
  }
57
54
  disconnectedCallback() {
58
- if (this.disabledObserver) {
59
- this.disabledObserver.disconnect();
60
- }
61
55
  if (this.requiredObserver) {
62
56
  this.requiredObserver.disconnect();
63
57
  }
@@ -71,8 +65,7 @@ export class GuxFormFieldDropdown {
71
65
  var _a;
72
66
  return (h(GuxFormFieldFieldsetContainer, { labelPosition: this.computedLabelPosition }, h(GuxFormFieldLegendLabel, { position: this.computedLabelPosition, required: this.required, labelText: (_a = this.label) === null || _a === void 0 ? void 0 : _a.textContent }, h("slot", { name: "label", onSlotchange: () => this.setLabel() }), this.renderScreenReaderText(this.getI18nValue('required'), this.required), this.renderScreenReaderText(getSlotTextContent(this.root, 'error'), this.hasError), this.renderScreenReaderText(getSlotTextContent(this.root, 'help'), this.hasHelp)), h("div", { class: "gux-input-and-error-container" }, h("div", { class: {
73
67
  'gux-input': true,
74
- 'gux-input-error': this.hasError,
75
- 'gux-disabled': this.disabled
68
+ 'gux-input-error': this.hasError
76
69
  } }, h("slot", null)), h(GuxFormFieldError, { show: this.hasError }, h("slot", { name: "error" })), h(GuxFormFieldHelp, { show: !this.hasError && this.hasHelp }, h("slot", { name: "help" })))));
77
70
  }
78
71
  get variant() {
@@ -89,11 +82,7 @@ export class GuxFormFieldDropdown {
89
82
  this.listboxElement =
90
83
  this.root.querySelector('gux-listbox') ||
91
84
  this.root.querySelector('gux-listbox-multi');
92
- this.disabled = calculateInputDisabledState(this.dropdownElement);
93
85
  this.required = this.dropdownElement.required;
94
- this.disabledObserver = onInputDisabledStateChange(this.dropdownElement, (disabled) => {
95
- this.disabled = disabled;
96
- });
97
86
  this.requiredObserver = onRequiredChange(this.dropdownElement, (required) => {
98
87
  this.required = required;
99
88
  });
@@ -147,7 +136,6 @@ export class GuxFormFieldDropdown {
147
136
  static get states() {
148
137
  return {
149
138
  "computedLabelPosition": {},
150
- "disabled": {},
151
139
  "required": {},
152
140
  "hasError": {},
153
141
  "hasHelp": {}
@@ -17,7 +17,7 @@ describe('gux-form-field-dropdown', () => {
17
17
  <gux-form-field-dropdown>
18
18
  <gux-dropdown>
19
19
  <gux-listbox>
20
- <gux-option value="a" disabled>Ant</gux-option>
20
+ <gux-option value="a" disabled>Ant<span slot="subtext">Small</span></gux-option>
21
21
  <gux-option value="b">Bat</gux-option>
22
22
  <gux-option value="c">Cat</gux-option>
23
23
  </gux-listbox>
@@ -52,7 +52,7 @@ describe('gux-form-field-dropdown', () => {
52
52
  <gux-listbox>
53
53
  <gux-option value="a" disabled>Ant</gux-option>
54
54
  <gux-option value="b">Bat</gux-option>
55
- <gux-option value="c">Cat</gux-option>
55
+ <gux-option value="c">Cat<span slot="subtext">Medium</span></gux-option>
56
56
  </gux-listbox>
57
57
  </gux-dropdown>
58
58
  <label slot="label">Default</label>
@@ -88,7 +88,7 @@ describe('gux-form-field-dropdown', () => {
88
88
  <gux-listbox>
89
89
  <gux-option value="a" disabled>Ant</gux-option>
90
90
  <gux-option value="b">Bat</gux-option>
91
- <gux-option value="c">Cat</gux-option>
91
+ <gux-option value="c">Cat<span slot="subtext">Medium</span></gux-option>
92
92
  </gux-listbox>
93
93
  </gux-dropdown>
94
94
  <label slot="label">This will be read by a screen reader</label>
@@ -130,7 +130,7 @@ describe('gux-form-field-dropdown', () => {
130
130
  <gux-listbox-multi>
131
131
  <gux-option-multi value="a" disabled>Ant</gux-option-multi>
132
132
  <gux-option-multi value="b">Bat</gux-option-multi>
133
- <gux-option-multi value="c">Cat</gux-option-multi>
133
+ <gux-option-multi value="c">Cat<span slot="subtext">Medium</span></gux-option-multi>
134
134
  </gux-listbox-multi>
135
135
  </gux-dropdown-multi>
136
136
  <label slot="label">Default</label>
@@ -165,7 +165,7 @@ describe('gux-form-field-dropdown', () => {
165
165
  <gux-listbox-multi>
166
166
  <gux-option-multi value="a" disabled>Ant</gux-option-multi>
167
167
  <gux-option-multi value="b">Bat</gux-option-multi>
168
- <gux-option-multi value="c">Cat</gux-option-multi>
168
+ <gux-option-multi value="c">Cat<span slot="subtext">Medium</span></gux-option-multi>
169
169
  </gux-listbox-multi>
170
170
  </gux-dropdown-multi>
171
171
  <label slot="label">Default</label>
@@ -25,7 +25,7 @@ describe('gux-form-field-select', () => {
25
25
  <gux-listbox>
26
26
  <gux-option value="a" disabled>Ant</gux-option>
27
27
  <gux-option value="b">Bat</gux-option>
28
- <gux-option value="c">Cat</gux-option>
28
+ <gux-option value="c">Cat<span slot="subtext">Medium</span></gux-option>
29
29
  </gux-listbox>
30
30
  </gux-dropdown>
31
31
  <label slot="label">Default</label>
@@ -49,7 +49,7 @@ describe('gux-form-field-select', () => {
49
49
  <gux-listbox>
50
50
  <gux-option value="a" disabled>Ant</gux-option>
51
51
  <gux-option value="b">Bat</gux-option>
52
- <gux-option value="c">Cat</gux-option>
52
+ <gux-option value="c">Cat<span slot="subtext">Medium</span></gux-option>
53
53
  </gux-listbox>
54
54
  </gux-dropdown>
55
55
  <label slot="label">Default</label>
@@ -69,7 +69,7 @@ describe('gux-form-field-select', () => {
69
69
  <gux-listbox>
70
70
  <gux-option value="a" disabled>Ant</gux-option>
71
71
  <gux-option value="b">Bat</gux-option>
72
- <gux-option value="c">Cat</gux-option>
72
+ <gux-option value="c">Cat<span slot="subtext">Medium</span></gux-option>
73
73
  </gux-listbox>
74
74
  </gux-dropdown>
75
75
  <label slot="label">Default</label>
@@ -90,7 +90,7 @@ describe('gux-form-field-select', () => {
90
90
  <gux-listbox-multi>
91
91
  <gux-option-multi value="a" disabled>Ant</gux-option-multi>
92
92
  <gux-option-multi value="b">Bat</gux-option-multi>
93
- <gux-option-multi value="c">Cat</gux-option-multi>
93
+ <gux-option-multi value="c">Cat<span slot="subtext">Medium</span></gux-option-multi>
94
94
  </gux-listbox-multi>
95
95
  </gux-dropdown-multi>
96
96
  <label slot="label">Default</label>
@@ -114,7 +114,7 @@ describe('gux-form-field-select', () => {
114
114
  <gux-listbox-multi>
115
115
  <gux-option-multi value="a" disabled>Ant</gux-option-multi>
116
116
  <gux-option-multi value="b">Bat</gux-option-multi>
117
- <gux-option-multi value="c">Cat</gux-option-multi>
117
+ <gux-option-multi value="c">Cat<span slot="subtext">Medium</span></gux-option-multi>
118
118
  </gux-listbox-multi>
119
119
  </gux-dropdown-multi>
120
120
  <label slot="label">Default</label>
@@ -134,7 +134,7 @@ describe('gux-form-field-select', () => {
134
134
  <gux-listbox-multi>
135
135
  <gux-option-multi value="a" disabled>Ant</gux-option-multi>
136
136
  <gux-option-multi value="b">Bat</gux-option-multi>
137
- <gux-option-multi value="c">Cat</gux-option-multi>
137
+ <gux-option-multi value="c">Cat<span slot="subtext">Medium</span></gux-option-multi>
138
138
  </gux-listbox-multi>
139
139
  </gux-dropdown-multi>
140
140
  <label slot="label">Default</label>
@@ -153,7 +153,7 @@ describe('gux-form-field-select', () => {
153
153
  <gux-listbox>
154
154
  <gux-option value="a" disabled>Ant</gux-option>
155
155
  <gux-option value="b">Bat</gux-option>
156
- <gux-option value="c">Cat</gux-option>
156
+ <gux-option value="c">Cat<span slot="subtext">Medium</span></gux-option>
157
157
  </gux-listbox>
158
158
  </gux-dropdown>
159
159
  <label slot="label">Default</label>
@@ -172,7 +172,7 @@ describe('gux-form-field-select', () => {
172
172
  <gux-listbox-multi>
173
173
  <gux-option-multi value="a" disabled>Ant</gux-option-multi>
174
174
  <gux-option-multi value="b">Bat</gux-option-multi>
175
- <gux-option-multi value="c">Cat</gux-option-multi>
175
+ <gux-option-multi value="c">Cat<span slot="subtext">Medium</span></gux-option-multi>
176
176
  </gux-listbox-multi>
177
177
  </gux-dropdown-multi>
178
178
  <label slot="label">Default</label>
@@ -30,6 +30,7 @@ export class GuxFormFieldTextLike {
30
30
  constructor() {
31
31
  this.clearable = undefined;
32
32
  this.labelPosition = undefined;
33
+ this.loading = false;
33
34
  this.hasPrefix = undefined;
34
35
  this.hasSuffix = undefined;
35
36
  this.computedLabelPosition = 'above';
@@ -50,6 +51,11 @@ export class GuxFormFieldTextLike {
50
51
  this.hasHelp = hasSlot(this.root, 'help');
51
52
  forceUpdate(this.root);
52
53
  }
54
+ renderRadialLoading() {
55
+ if (this.loading) {
56
+ return (h("gux-radial-loading", { context: "input" }));
57
+ }
58
+ }
53
59
  componentWillLoad() {
54
60
  this.setInput();
55
61
  this.setLabel();
@@ -82,7 +88,7 @@ export class GuxFormFieldTextLike {
82
88
  'gux-disabled': this.disabled,
83
89
  'gux-has-prefix': this.hasPrefix,
84
90
  'gux-has-suffix': this.hasSuffix
85
- } }, h("slot", { name: "prefix" }), h("slot", { name: "input" }), h("slot", { name: "suffix" }), this.clearable && this.hasContent && !this.disabled && (h("gux-form-field-input-clear-button", { onClick: () => clearInput(this.input) })))), h(GuxFormFieldError, { show: this.hasError }, h("slot", { name: "error" })), h(GuxFormFieldHelp, { show: !this.hasError && this.hasHelp }, h("slot", { name: "help" })))));
91
+ } }, h("slot", { name: "prefix" }), h("slot", { name: "input" }), this.renderRadialLoading(), h("slot", { name: "suffix" }), this.clearable && this.hasContent && !this.disabled && (h("gux-form-field-input-clear-button", { onClick: () => clearInput(this.input) })))), h(GuxFormFieldError, { show: this.hasError }, h("slot", { name: "error" })), h(GuxFormFieldHelp, { show: !this.hasError && this.hasHelp }, h("slot", { name: "help" })))));
86
92
  }
87
93
  get variant() {
88
94
  const labelPositionVariant = this.labelPosition
@@ -166,6 +172,24 @@ export class GuxFormFieldTextLike {
166
172
  },
167
173
  "attribute": "label-position",
168
174
  "reflect": false
175
+ },
176
+ "loading": {
177
+ "type": "boolean",
178
+ "mutable": false,
179
+ "complexType": {
180
+ "original": "boolean",
181
+ "resolved": "boolean",
182
+ "references": {}
183
+ },
184
+ "required": false,
185
+ "optional": false,
186
+ "docs": {
187
+ "tags": [],
188
+ "text": ""
189
+ },
190
+ "attribute": "loading",
191
+ "reflect": false,
192
+ "defaultValue": "false"
169
193
  }
170
194
  };
171
195
  }
@@ -105,6 +105,33 @@ describe('gux-form-field-text-like', () => {
105
105
  await a11yCheck(page, axeExclusions);
106
106
  });
107
107
  });
108
+ describe('loading', () => {
109
+ [
110
+ { componentAttribute: '', inputAttribute: '' },
111
+ { componentAttribute: 'loading', inputAttribute: '' },
112
+ { componentAttribute: 'loading="true"', inputAttribute: '' },
113
+ { componentAttribute: 'loading="false"', inputAttribute: '' },
114
+ { componentAttribute: 'loading', inputAttribute: 'disabled' }
115
+ ].forEach(({ componentAttribute, inputAttribute }, index) => {
116
+ const html = `
117
+ <gux-form-field-text-like lang="en" ${componentAttribute}>
118
+ <input slot="input" type="text" value="Sample text" ${inputAttribute}/>
119
+ <label slot="label">Label</label>
120
+ </gux-form-field-text-like>
121
+ `;
122
+ it(`should render component as expected (${index + 1})`, async () => {
123
+ const page = await newNonrandomE2EPage({ html });
124
+ const element = await page.find('gux-form-field-text-like');
125
+ const elementShadowDom = await element.find('pierce/.gux-form-field-container');
126
+ expect(element.outerHTML).toMatchSnapshot();
127
+ expect(elementShadowDom).toMatchSnapshot();
128
+ });
129
+ it(`should be accessible (${index + 1})`, async () => {
130
+ const page = await newSparkE2EPage({ html });
131
+ await a11yCheck(page, axeExclusions);
132
+ });
133
+ });
134
+ });
108
135
  describe('help', () => {
109
136
  const html = `
110
137
  <gux-form-field-text-like>
@@ -61,6 +61,26 @@ describe('gux-form-field-text-like', () => {
61
61
  expect(page.root).toMatchSnapshot();
62
62
  });
63
63
  });
64
+ describe('loading', () => {
65
+ [
66
+ { componentAttribute: '', inputAttribute: '' },
67
+ { componentAttribute: 'loading', inputAttribute: '' },
68
+ { componentAttribute: 'loading="true"', inputAttribute: '' },
69
+ { componentAttribute: 'loading="false"', inputAttribute: '' },
70
+ { componentAttribute: 'loading', inputAttribute: 'disabled' }
71
+ ].forEach(({ componentAttribute, inputAttribute }, index) => {
72
+ it(`should render component as expected (${index + 1})`, async () => {
73
+ const html = `
74
+ <gux-form-field-text-like ${componentAttribute}>
75
+ <input slot="input" type="text" value="Sample text" ${inputAttribute}/>
76
+ <label slot="label">Label</label>
77
+ </gux-form-field-text-like>
78
+ `;
79
+ const page = await newSpecPage({ components, html, language });
80
+ expect(page.root).toMatchSnapshot();
81
+ });
82
+ });
83
+ });
64
84
  describe('help', () => {
65
85
  it('should render component as expected', async () => {
66
86
  const html = `
@@ -78,7 +78,7 @@ export class GuxIcon {
78
78
  "mutable": false,
79
79
  "complexType": {
80
80
  "original": "GuxIconIconName",
81
- "resolved": "\"reset\" | \"8x8\" | \"8x8-alt\" | \"add\" | \"add-circle\" | \"agent\" | \"agent-circle\" | \"agent-group\" | \"alert-info\" | \"alert-success\" | \"alert-warning-octogon\" | \"alert-warning-triangle\" | \"android\" | \"app-chart\" | \"app-generic\" | \"app-layout\" | \"app-table\" | \"apple\" | \"archive\" | \"arrow-down\" | \"arrow-down-left\" | \"arrow-down-right\" | \"arrow-left\" | \"arrow-right\" | \"arrow-solid-down\" | \"arrow-solid-left\" | \"arrow-solid-right\" | \"arrow-solid-up\" | \"arrow-up\" | \"arrow-up-left\" | \"arrow-up-right\" | \"at\" | \"attachment\" | \"backspace\" | \"badge-amount\" | \"badge-check\" | \"badge-edit\" | \"badge-file\" | \"badge-pause\" | \"badge-x\" | \"ban-outline\" | \"bell\" | \"bolt\" | \"bot\" | \"branch\" | \"bug\" | \"bus\" | \"calendar\" | \"calendar-add\" | \"calendar-clock\" | \"campaign\" | \"certificate\" | \"chat\" | \"chat-bell\" | \"chat-close\" | \"chat-disable\" | \"chat-multi\" | \"chat-notification-score\" | \"checkbox\" | \"checkbox-active\" | \"checkbox-partial\" | \"checkmark\" | \"chevron-double-down\" | \"chevron-double-left\" | \"chevron-double-right\" | \"chevron-double-up\" | \"chevron-left\" | \"chevron-right\" | \"chevron-small-down\" | \"chevron-small-left\" | \"chevron-small-right\" | \"chevron-small-up\" | \"chrome\" | \"cjv-badge-file\" | \"cjv-calendar-clock\" | \"cjv-custom-default\" | \"cjv-custom-event\" | \"cjv-custom-session\" | \"cjv-default-event\" | \"cjv-delivery\" | \"cjv-finance-invoice\" | \"cjv-form-abandoned\" | \"cjv-form-submitted\" | \"cjv-generic-application\" | \"cjv-offer-closed\" | \"cjv-offer-ignored\" | \"cjv-offer-offered\" | \"cjv-offer-opened\" | \"cjv-outcome-achieved\" | \"cjv-page-view\" | \"cjv-policy-contract\" | \"cjv-product-added\" | \"cjv-product-purchased\" | \"cjv-product-removed\" | \"cjv-search\" | \"cjv-segment\" | \"cjv-segment-assigned\" | \"cjv-web-session\" | \"cjv-webchat-accepted\" | \"cjv-webchat-error\" | \"cjv-webchat-ignored\" | \"cjv-webchat-offered\" | \"cjv-webchat-rejected\" | \"cjv-webchat-requested\" | \"cjv-webchat-submitted\" | \"cjv-webchat-timeout\" | \"clipboard\" | \"clipboard-error\" | \"clipboard-success\" | \"clock\" | \"clock-outline\" | \"clone\" | \"close\" | \"close-circle\" | \"cloud\" | \"cloud-outline\" | \"coaching\" | \"cobrowse\" | \"collapse\" | \"comments\" | \"comments-disable\" | \"configuration\" | \"control-end\" | \"control-pause\" | \"control-play\" | \"control-skip-left\" | \"control-skip-right\" | \"control-slide-back\" | \"control-slide-forward\" | \"control-start\" | \"control-stop\" | \"copy\" | \"custom/add-column-after\" | \"custom/add-column-before\" | \"custom/add-row-after\" | \"custom/add-row-before\" | \"custom/binoculars-slash-regular\" | \"custom/carousel\" | \"custom/clipboard-list-slash-regular\" | \"custom/co-browse\" | \"custom/delete-column\" | \"custom/delete-row\" | \"custom/delete-table\" | \"custom/face-smile-hearts-regular\" | \"custom/file-pen-question\" | \"custom/filter-notification\" | \"custom/font-regular-highlight\" | \"custom/gkn-logo\" | \"custom/list-alphabetical-regular\" | \"custom/list-roman-regular\" | \"custom/one-button\" | \"custom/person-running\" | \"custom/quick-reply\" | \"custom/three-button\" | \"custom/wrap-text-inline\" | \"custom/wrap-text-tight\" | \"custom/wrap-text-top-bottom\" | \"customer-journey\" | \"cut\" | \"dash\" | \"delete\" | \"device-camera\" | \"device-cellphone\" | \"device-headphones\" | \"device-laptop\" | \"device-pc\" | \"device-server\" | \"device-tablet\" | \"download\" | \"edge\" | \"edit\" | \"email-notification-score\" | \"expand\" | \"export\" | \"external-link\" | \"fa/00-solid\" | \"fa/1-regular\" | \"fa/alarm-clock-regular\" | \"fa/alarm-snooze-regular\" | \"fa/align-center-regular\" | \"fa/align-justify-regular\" | \"fa/align-left-regular\" | \"fa/align-right-regular\" | \"fa/arrow-down-wide-short-regular\" | \"fa/arrow-left-to-line-solid\" | \"fa/arrow-right-to-line-solid\" | \"fa/arrow-turn-down-right-regular\" | \"fa/arrows-rotate-solid\" | \"fa/arrows-to-circle-regular\" | \"fa/asterix-regular\" | \"fa/award-solid\" | \"fa/backward-step-regular\" | \"fa/ban-regular\" | \"fa/bell-on-regular\" | \"fa/bell-slash-regular\" | \"fa/binoculars-regular\" | \"fa/bold-regular\" | \"fa/book-regular\" | \"fa/bookmark-regular\" | \"fa/briefcase-regular\" | \"fa/bullseye-regular\" | \"fa/calculator-regular\" | \"fa/calendar-days-regular\" | \"fa/check-solid\" | \"fa/circle-check-regular\" | \"fa/circle-check-solid\" | \"fa/circle-info-solid\" | \"fa/circle-play-regular\" | \"fa/circle-plus-solid\" | \"fa/circle-xmark-regular\" | \"fa/clipboard-list-regular\" | \"fa/clock-nine-regular\" | \"fa/clock-rotate-left-regular\" | \"fa/code-branch-regular\" | \"fa/code-regular\" | \"fa/comment-dots-regular\" | \"fa/comments-regular\" | \"fa/credit-card-regular\" | \"fa/crop-simple-regular\" | \"fa/cube-regular\" | \"fa/database-regular\" | \"fa/diagram-nested-regular\" | \"fa/diagram-project-gear-regular\" | \"fa/diagram-project-regular\" | \"fa/diamond-regular\" | \"fa/draw-circle-solid\" | \"fa/eye-regular\" | \"fa/eye-slash-regular\" | \"fa/face-frown-regular\" | \"fa/face-frown-solid\" | \"fa/face-laugh-regular\" | \"fa/face-laugh-solid\" | \"fa/file-chart-pie-regular\" | \"fa/file-exclamation-regular\" | \"fa/file-zip-regular\" | \"fa/film-solid\" | \"fa/filter-solid\" | \"fa/font-regular\" | \"fa/forward-step-regular\" | \"fa/function-regular\" | \"fa/gears-regular\" | \"fa/gem-regular\" | \"fa/google\" | \"fa/hand-back-point-right-regular\" | \"fa/hand-pointer-regular\" | \"fa/hashtag-regular\" | \"fa/hexagon-exclamation-solid\" | \"fa/highlighter-line-regular\" | \"fa/hourglass-start-regular\" | \"fa/indent-regular\" | \"fa/infinity-regular\" | \"fa/italic-regular\" | \"fa/language-regular\" | \"fa/laptop-slash-regular\" | \"fa/life-ring-regular\" | \"fa/link-horizontal-slash-regular\" | \"fa/link-horizontal-solid\" | \"fa/list-ol-regular\" | \"fa/list-radio-clean-regular\" | \"fa/list-radio-regular\" | \"fa/list-regular\" | \"fa/list-ul-regular\" | \"fa/map-regular\" | \"fa/map-solid\" | \"fa/memo-circle-check-regular\" | \"fa/message-bot-regular\" | \"fa/message-regular\" | \"fa/microchip-solid\" | \"fa/microsoft\" | \"fa/money-bill-regular\" | \"fa/outdent-regular\" | \"fa/pause-regular\" | \"fa/pen-slash-regular\" | \"fa/play-regular\" | \"fa/puzzle-piece-regular\" | \"fa/question-solid\" | \"fa/ranking-star-regular\" | \"fa/rectangle-list-regular\" | \"fa/regular-user-circle-arrow-left\" | \"fa/reply-regular\" | \"fa/right-to-bracket-regular\" | \"fa/road-regular\" | \"fa/rocket-regular\" | \"fa/route-regular\" | \"fa/share-regular\" | \"fa/shuffle-regular\" | \"fa/sigma-regular\" | \"fa/signs-post-regular\" | \"fa/sitemap-regular\" | \"fa/sliders-solid\" | \"fa/square-dashed-regular\" | \"fa/stop-regular\" | \"fa/strikethrough-regular\" | \"fa/subscript-regular\" | \"fa/superscript-regular\" | \"fa/table-cells-regular\" | \"fa/table-columns-regular\" | \"fa/text-size-regular\" | \"fa/text-slash-regular\" | \"fa/ticket-regular\" | \"fa/triangle-exclamation-solid\" | \"fa/underline-regular\" | \"fa/user-group-solid\" | \"fa/volume-regular\" | \"fa/volume-xmark-regular\" | \"fa/wand-magic-sparkles-regular\" | \"fa/windows\" | \"face-empathy\" | \"face-happy\" | \"face-happy-solid\" | \"face-neutral\" | \"face-neutral-solid\" | \"face-sad\" | \"face-sad-solid\" | \"facebook\" | \"facebook-messenger\" | \"fax\" | \"file\" | \"file-all\" | \"file-audio\" | \"file-image-landscape\" | \"file-image-portrait\" | \"file-pdf\" | \"file-preview\" | \"file-report\" | \"file-text\" | \"file-video\" | \"filter\" | \"fire\" | \"firefox\" | \"flag\" | \"folder\" | \"folder-add\" | \"folder-open\" | \"follow\" | \"generic\" | \"globe\" | \"grab-horizontal\" | \"grab-vertical\" | \"graph-bar-horizontal\" | \"graph-bar-vertical\" | \"graph-bubble\" | \"graph-chart\" | \"graph-line\" | \"graph-pie\" | \"graph-spark\" | \"group-standard\" | \"help\" | \"home\" | \"hourglass\" | \"import\" | \"inbox\" | \"inspect\" | \"inspect-disable\" | \"instagram\" | \"internet-explorer\" | \"key\" | \"lightbulb\" | \"line-messenger\" | \"link\" | \"linkedin\" | \"linux\" | \"lock\" | \"lock-hold\" | \"logout\" | \"low-bandwidth\" | \"lunch\" | \"menu\" | \"menu-kebab-horizontal\" | \"menu-kebab-vertical\" | \"message-email\" | \"message-email-outbound\" | \"message-forward\" | \"message-reply\" | \"message-reply-all\" | \"microphone\" | \"microphone-disable\" | \"microphone-talking\" | \"microsoft\" | \"microsoft-teams\" | \"moon\" | \"music\" | \"notes\" | \"notification\" | \"opera\" | \"operator-pair\" | \"paint\" | \"palette\" | \"parking-sign-regular\" | \"paste\" | \"people\" | \"phone\" | \"phone-bell\" | \"phone-call-directory\" | \"phone-call-history\" | \"phone-callback\" | \"phone-close\" | \"phone-conference\" | \"phone-dialpad\" | \"phone-disable\" | \"phone-forward\" | \"phone-hangup\" | \"phone-hold\" | \"phone-inbound\" | \"phone-missed-call\" | \"phone-notification-score\" | \"phone-outbound\" | \"phone-success\" | \"phone-voice\" | \"pin\" | \"pin-location\" | \"post\" | \"product-logo-beyond\" | \"product-logo-g\" | \"quote-left\" | \"quote-right\" | \"radio\" | \"radio-active\" | \"rating\" | \"rating-active\" | \"rating-partial\" | \"record\" | \"refresh\" | \"resource\" | \"retweet\" | \"roster-chat\" | \"roster-chat-disable\" | \"roster-email\" | \"roster-email-disable\" | \"roster-instagram\" | \"roster-instagram-disable\" | \"roster-line\" | \"roster-line-disable\" | \"roster-message\" | \"roster-message-disable\" | \"roster-messenger\" | \"roster-messenger-disable\" | \"roster-phone\" | \"roster-phone-disable\" | \"roster-sms\" | \"roster-sms-disable\" | \"roster-twitter\" | \"roster-twitter-disable\" | \"roster-wechat\" | \"roster-wechat-disable\" | \"roster-whatsapp\" | \"roster-whatsapp-disable\" | \"rss\" | \"run\" | \"safari\" | \"save\" | \"screen-share-regular\" | \"screen-share-slash\" | \"scripter\" | \"search\" | \"send\" | \"server\" | \"settings\" | \"share\" | \"shield-lock\" | \"shield-outline\" | \"shield-solid\" | \"site\" | \"skills\" | \"slideshare\" | \"sms\" | \"sms-cancel\" | \"sms-close\" | \"stamp\" | \"subtract\" | \"subtract-circle\" | \"sun\" | \"tag\" | \"tag-add\" | \"tag-remove\" | \"telegram\" | \"tenant\" | \"thumbs-down\" | \"thumbs-up\" | \"timeline\" | \"toolbar-apps\" | \"toolbar-apps-disable\" | \"toolbar-assist\" | \"toolbar-assist-disable\" | \"toolbar-chat\" | \"toolbar-chat-disable\" | \"toolbar-favorite\" | \"toolbar-favourite\" | \"toolbar-help\" | \"toolbar-inbox\" | \"toolbar-interactions\" | \"toolbar-interactions-disable\" | \"toolbar-notification\" | \"toolbar-phone\" | \"toolbar-phone-active-1\" | \"toolbar-phone-active-2\" | \"toolbar-phone-active-3\" | \"toolbar-phone-disable\" | \"toolbar-video\" | \"toolbar-video-disable\" | \"trade\" | \"transfer\" | \"twitter\" | \"unknown\" | \"unlink\" | \"unlock\" | \"upload\" | \"user\" | \"user-add\" | \"user-circle\" | \"user-contact-id\" | \"user-directory\" | \"user-group\" | \"user-interactions\" | \"user-interactions-disable\" | \"viber\" | \"video\" | \"video-disable\" | \"view-all\" | \"view-cells\" | \"view-grid\" | \"view-list\" | \"view-lists\" | \"view-roster\" | \"view-stacked\" | \"voicemail\" | \"volume-disable\" | \"volume-down\" | \"volume-none\" | \"volume-up\" | \"web\" | \"webcam\" | \"webcam-disable\" | \"wechat\" | \"whatsapp\" | \"window-actual-size\" | \"window-contract\" | \"window-drag-out\" | \"window-expand\" | \"window-fullscreen\" | \"window-popout\" | \"wordpress\" | \"youtube\" | \"zoom-in\" | \"zoom-out\"",
81
+ "resolved": "\"reset\" | \"8x8\" | \"8x8-alt\" | \"add\" | \"add-circle\" | \"agent\" | \"agent-circle\" | \"agent-group\" | \"alert-info\" | \"alert-success\" | \"alert-warning-octogon\" | \"alert-warning-triangle\" | \"android\" | \"app-chart\" | \"app-generic\" | \"app-layout\" | \"app-table\" | \"apple\" | \"archive\" | \"arrow-down\" | \"arrow-down-left\" | \"arrow-down-right\" | \"arrow-left\" | \"arrow-right\" | \"arrow-solid-down\" | \"arrow-solid-left\" | \"arrow-solid-right\" | \"arrow-solid-up\" | \"arrow-up\" | \"arrow-up-left\" | \"arrow-up-right\" | \"at\" | \"attachment\" | \"backspace\" | \"badge-amount\" | \"badge-check\" | \"badge-edit\" | \"badge-file\" | \"badge-pause\" | \"badge-x\" | \"ban-outline\" | \"bell\" | \"bolt\" | \"bot\" | \"branch\" | \"bug\" | \"bus\" | \"calendar\" | \"calendar-add\" | \"calendar-clock\" | \"campaign\" | \"certificate\" | \"chat\" | \"chat-bell\" | \"chat-close\" | \"chat-disable\" | \"chat-multi\" | \"chat-notification-score\" | \"checkbox\" | \"checkbox-active\" | \"checkbox-partial\" | \"checkmark\" | \"chevron-double-down\" | \"chevron-double-left\" | \"chevron-double-right\" | \"chevron-double-up\" | \"chevron-left\" | \"chevron-right\" | \"chevron-small-down\" | \"chevron-small-left\" | \"chevron-small-right\" | \"chevron-small-up\" | \"chrome\" | \"cjv-badge-file\" | \"cjv-calendar-clock\" | \"cjv-custom-default\" | \"cjv-custom-event\" | \"cjv-custom-session\" | \"cjv-default-event\" | \"cjv-delivery\" | \"cjv-finance-invoice\" | \"cjv-form-abandoned\" | \"cjv-form-submitted\" | \"cjv-generic-application\" | \"cjv-offer-closed\" | \"cjv-offer-ignored\" | \"cjv-offer-offered\" | \"cjv-offer-opened\" | \"cjv-outcome-achieved\" | \"cjv-page-view\" | \"cjv-policy-contract\" | \"cjv-product-added\" | \"cjv-product-purchased\" | \"cjv-product-removed\" | \"cjv-search\" | \"cjv-segment\" | \"cjv-segment-assigned\" | \"cjv-web-session\" | \"cjv-webchat-accepted\" | \"cjv-webchat-error\" | \"cjv-webchat-ignored\" | \"cjv-webchat-offered\" | \"cjv-webchat-rejected\" | \"cjv-webchat-requested\" | \"cjv-webchat-submitted\" | \"cjv-webchat-timeout\" | \"clipboard\" | \"clipboard-error\" | \"clipboard-success\" | \"clock\" | \"clock-outline\" | \"clone\" | \"close\" | \"close-circle\" | \"cloud\" | \"cloud-outline\" | \"coaching\" | \"cobrowse\" | \"collapse\" | \"comments\" | \"comments-disable\" | \"configuration\" | \"control-end\" | \"control-pause\" | \"control-play\" | \"control-skip-left\" | \"control-skip-right\" | \"control-slide-back\" | \"control-slide-forward\" | \"control-start\" | \"control-stop\" | \"copy\" | \"custom/add-column-after\" | \"custom/add-column-before\" | \"custom/add-row-after\" | \"custom/add-row-before\" | \"custom/binoculars-slash-regular\" | \"custom/carousel\" | \"custom/clipboard-list-slash-regular\" | \"custom/co-browse\" | \"custom/delete-column\" | \"custom/delete-row\" | \"custom/delete-table\" | \"custom/face-smile-hearts-regular\" | \"custom/file-pen-question\" | \"custom/filter-notification\" | \"custom/font-regular-highlight\" | \"custom/gkn-logo\" | \"custom/list-alphabetical-regular\" | \"custom/list-roman-regular\" | \"custom/one-button\" | \"custom/person-running\" | \"custom/quick-reply\" | \"custom/three-button\" | \"custom/wrap-text-inline\" | \"custom/wrap-text-tight\" | \"custom/wrap-text-top-bottom\" | \"customer-journey\" | \"cut\" | \"dash\" | \"delete\" | \"device-camera\" | \"device-cellphone\" | \"device-headphones\" | \"device-laptop\" | \"device-pc\" | \"device-server\" | \"device-tablet\" | \"download\" | \"edge\" | \"edit\" | \"email-notification-score\" | \"expand\" | \"export\" | \"external-link\" | \"fa/00-solid\" | \"fa/1-regular\" | \"fa/alarm-clock-regular\" | \"fa/alarm-snooze-regular\" | \"fa/align-center-regular\" | \"fa/align-justify-regular\" | \"fa/align-left-regular\" | \"fa/align-right-regular\" | \"fa/arrow-down-left-and-arrow-up-right-to-center-regular\" | \"fa/arrow-down-wide-short-regular\" | \"fa/arrow-left-to-line-solid\" | \"fa/arrow-right-to-bracket-regular\" | \"fa/arrow-right-to-line-solid\" | \"fa/arrow-turn-down-right-regular\" | \"fa/arrow-up-right-and-arrow-down-left-from-center-regular\" | \"fa/arrows-down-to-people-regular\" | \"fa/arrows-rotate-regular\" | \"fa/arrows-rotate-solid\" | \"fa/arrows-to-circle-regular\" | \"fa/asterix-regular\" | \"fa/award-solid\" | \"fa/backward-step-regular\" | \"fa/ban-regular\" | \"fa/bell-on-regular\" | \"fa/bell-slash-regular\" | \"fa/binoculars-regular\" | \"fa/bold-regular\" | \"fa/book-regular\" | \"fa/bookmark-regular\" | \"fa/briefcase-regular\" | \"fa/bullseye-regular\" | \"fa/calculator-regular\" | \"fa/calendar-days-regular\" | \"fa/check-solid\" | \"fa/circle-check-regular\" | \"fa/circle-check-solid\" | \"fa/circle-info-solid\" | \"fa/circle-play-regular\" | \"fa/circle-plus-solid\" | \"fa/circle-xmark-regular\" | \"fa/clipboard-list-regular\" | \"fa/clock-nine-regular\" | \"fa/clock-rotate-left-regular\" | \"fa/code-branch-regular\" | \"fa/code-regular\" | \"fa/comment-dots-regular\" | \"fa/comments-regular\" | \"fa/credit-card-regular\" | \"fa/crop-simple-regular\" | \"fa/cube-regular\" | \"fa/database-regular\" | \"fa/diagram-nested-regular\" | \"fa/diagram-project-gear-regular\" | \"fa/diagram-project-regular\" | \"fa/diamond-regular\" | \"fa/display-regular\" | \"fa/draw-circle-solid\" | \"fa/eye-regular\" | \"fa/eye-slash-regular\" | \"fa/face-frown-regular\" | \"fa/face-frown-solid\" | \"fa/face-laugh-regular\" | \"fa/face-laugh-solid\" | \"fa/file-chart-pie-regular\" | \"fa/file-exclamation-regular\" | \"fa/file-regular\" | \"fa/file-zip-regular\" | \"fa/film-solid\" | \"fa/filter-solid\" | \"fa/font-regular\" | \"fa/forward-step-regular\" | \"fa/function-regular\" | \"fa/gears-regular\" | \"fa/gem-regular\" | \"fa/google\" | \"fa/hand-back-point-right-regular\" | \"fa/hand-pointer-regular\" | \"fa/hashtag-regular\" | \"fa/hexagon-exclamation-solid\" | \"fa/highlighter-line-regular\" | \"fa/hourglass-start-regular\" | \"fa/indent-regular\" | \"fa/infinity-regular\" | \"fa/italic-regular\" | \"fa/language-regular\" | \"fa/laptop-slash-regular\" | \"fa/life-ring-regular\" | \"fa/link-horizontal-slash-regular\" | \"fa/link-horizontal-solid\" | \"fa/list-ol-regular\" | \"fa/list-radio-clean-regular\" | \"fa/list-radio-regular\" | \"fa/list-regular\" | \"fa/list-ul-regular\" | \"fa/map-regular\" | \"fa/map-solid\" | \"fa/memo-circle-check-regular\" | \"fa/message-bot-regular\" | \"fa/message-regular\" | \"fa/microchip-solid\" | \"fa/microsoft\" | \"fa/money-bill-regular\" | \"fa/outdent-regular\" | \"fa/pause-regular\" | \"fa/pen-slash-regular\" | \"fa/play-regular\" | \"fa/puzzle-piece-regular\" | \"fa/question-solid\" | \"fa/ranking-star-regular\" | \"fa/rectangle-list-regular\" | \"fa/regular-display-slash\" | \"fa/regular-user-circle-arrow-left\" | \"fa/reply-regular\" | \"fa/right-to-bracket-regular\" | \"fa/road-regular\" | \"fa/rocket-regular\" | \"fa/route-regular\" | \"fa/share-regular\" | \"fa/shuffle-regular\" | \"fa/sigma-regular\" | \"fa/signs-post-regular\" | \"fa/sitemap-regular\" | \"fa/sliders-solid\" | \"fa/square-dashed-regular\" | \"fa/stop-regular\" | \"fa/strikethrough-regular\" | \"fa/subscript-regular\" | \"fa/superscript-regular\" | \"fa/table-cells-regular\" | \"fa/table-columns-regular\" | \"fa/text-size-regular\" | \"fa/text-slash-regular\" | \"fa/ticket-regular\" | \"fa/triangle-exclamation-solid\" | \"fa/underline-regular\" | \"fa/user-group-solid\" | \"fa/volume-regular\" | \"fa/volume-xmark-regular\" | \"fa/wand-magic-sparkles-regular\" | \"fa/windows\" | \"face-empathy\" | \"face-happy\" | \"face-happy-solid\" | \"face-neutral\" | \"face-neutral-solid\" | \"face-sad\" | \"face-sad-solid\" | \"facebook\" | \"facebook-messenger\" | \"fax\" | \"file\" | \"file-all\" | \"file-audio\" | \"file-image-landscape\" | \"file-image-portrait\" | \"file-pdf\" | \"file-preview\" | \"file-report\" | \"file-text\" | \"file-video\" | \"filter\" | \"fire\" | \"firefox\" | \"flag\" | \"folder\" | \"folder-add\" | \"folder-open\" | \"follow\" | \"generic\" | \"globe\" | \"grab-horizontal\" | \"grab-vertical\" | \"graph-bar-horizontal\" | \"graph-bar-vertical\" | \"graph-bubble\" | \"graph-chart\" | \"graph-line\" | \"graph-pie\" | \"graph-spark\" | \"group-standard\" | \"help\" | \"home\" | \"hourglass\" | \"import\" | \"inbox\" | \"inspect\" | \"inspect-disable\" | \"instagram\" | \"internet-explorer\" | \"key\" | \"lightbulb\" | \"line-messenger\" | \"link\" | \"linkedin\" | \"linux\" | \"lock\" | \"lock-hold\" | \"logout\" | \"low-bandwidth\" | \"lunch\" | \"menu\" | \"menu-kebab-horizontal\" | \"menu-kebab-vertical\" | \"message-email\" | \"message-email-outbound\" | \"message-forward\" | \"message-reply\" | \"message-reply-all\" | \"microphone\" | \"microphone-disable\" | \"microphone-talking\" | \"microsoft\" | \"microsoft-teams\" | \"moon\" | \"music\" | \"notes\" | \"notification\" | \"opera\" | \"operator-pair\" | \"paint\" | \"palette\" | \"parking-sign-regular\" | \"paste\" | \"people\" | \"phone\" | \"phone-bell\" | \"phone-call-directory\" | \"phone-call-history\" | \"phone-callback\" | \"phone-close\" | \"phone-conference\" | \"phone-dialpad\" | \"phone-disable\" | \"phone-forward\" | \"phone-hangup\" | \"phone-hold\" | \"phone-inbound\" | \"phone-missed-call\" | \"phone-notification-score\" | \"phone-outbound\" | \"phone-success\" | \"phone-voice\" | \"pin\" | \"pin-location\" | \"post\" | \"product-logo-beyond\" | \"product-logo-g\" | \"quote-left\" | \"quote-right\" | \"radio\" | \"radio-active\" | \"rating\" | \"rating-active\" | \"rating-partial\" | \"record\" | \"refresh\" | \"resource\" | \"retweet\" | \"roster-chat\" | \"roster-chat-disable\" | \"roster-email\" | \"roster-email-disable\" | \"roster-instagram\" | \"roster-instagram-disable\" | \"roster-line\" | \"roster-line-disable\" | \"roster-message\" | \"roster-message-disable\" | \"roster-messenger\" | \"roster-messenger-disable\" | \"roster-phone\" | \"roster-phone-disable\" | \"roster-sms\" | \"roster-sms-disable\" | \"roster-twitter\" | \"roster-twitter-disable\" | \"roster-wechat\" | \"roster-wechat-disable\" | \"roster-whatsapp\" | \"roster-whatsapp-disable\" | \"rss\" | \"run\" | \"safari\" | \"save\" | \"screen-share-regular\" | \"screen-share-slash\" | \"scripter\" | \"search\" | \"send\" | \"server\" | \"settings\" | \"share\" | \"shield-lock\" | \"shield-outline\" | \"shield-solid\" | \"site\" | \"skills\" | \"slideshare\" | \"sms\" | \"sms-cancel\" | \"sms-close\" | \"stamp\" | \"subtract\" | \"subtract-circle\" | \"sun\" | \"tag\" | \"tag-add\" | \"tag-remove\" | \"telegram\" | \"tenant\" | \"thumbs-down\" | \"thumbs-up\" | \"timeline\" | \"toolbar-apps\" | \"toolbar-apps-disable\" | \"toolbar-assist\" | \"toolbar-assist-disable\" | \"toolbar-chat\" | \"toolbar-chat-disable\" | \"toolbar-favorite\" | \"toolbar-favourite\" | \"toolbar-help\" | \"toolbar-inbox\" | \"toolbar-interactions\" | \"toolbar-interactions-disable\" | \"toolbar-notification\" | \"toolbar-phone\" | \"toolbar-phone-active-1\" | \"toolbar-phone-active-2\" | \"toolbar-phone-active-3\" | \"toolbar-phone-disable\" | \"toolbar-video\" | \"toolbar-video-disable\" | \"trade\" | \"transfer\" | \"twitter\" | \"unknown\" | \"unlink\" | \"unlock\" | \"upload\" | \"user\" | \"user-add\" | \"user-circle\" | \"user-contact-id\" | \"user-directory\" | \"user-group\" | \"user-interactions\" | \"user-interactions-disable\" | \"viber\" | \"video\" | \"video-disable\" | \"view-all\" | \"view-cells\" | \"view-grid\" | \"view-list\" | \"view-lists\" | \"view-roster\" | \"view-stacked\" | \"voicemail\" | \"volume-disable\" | \"volume-down\" | \"volume-none\" | \"volume-up\" | \"web\" | \"webcam\" | \"webcam-disable\" | \"wechat\" | \"whatsapp\" | \"window-actual-size\" | \"window-contract\" | \"window-drag-out\" | \"window-expand\" | \"window-fullscreen\" | \"window-popout\" | \"wordpress\" | \"youtube\" | \"zoom-in\" | \"zoom-out\"",
82
82
  "references": {
83
83
  "GuxIconIconName": {
84
84
  "location": "import",
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M15.2812 1.78125C15.575 1.4875 15.575 1.0125 15.2812 0.721874C14.9875 0.431249 14.5125 0.428124 14.2219 0.721874L10.0031 4.94062V2.25C10.0031 1.83437 9.66873 1.5 9.2531 1.5C8.83748 1.5 8.5031 1.83437 8.5031 2.25V6.75C8.5031 7.16562 8.83748 7.5 9.2531 7.5H13.75C14.1656 7.5 14.5 7.16562 14.5 6.75C14.5 6.33437 14.1656 6 13.75 6H11.0594L15.2812 1.78125ZM0.718726 14.2187C0.424976 14.5125 0.424976 14.9875 0.718726 15.2781C1.01248 15.5687 1.48748 15.5719 1.7781 15.2781L5.99685 11.0594V13.75C5.99685 14.1656 6.33123 14.5 6.74685 14.5C7.16248 14.5 7.49685 14.1656 7.49685 13.75V9.25C7.49685 8.83437 7.16248 8.5 6.74685 8.5H2.24998C1.83435 8.5 1.49998 8.83437 1.49998 9.25C1.49998 9.66562 1.83435 10 2.24998 10H4.9406L0.718726 14.2187Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M6.78125 12.5312L10.7812 8.53125C11.075 8.2375 11.075 7.7625 10.7812 7.47188L6.78125 3.46875C6.4875 3.175 6.0125 3.175 5.72188 3.46875C5.43125 3.7625 5.42813 4.2375 5.72188 4.52812L8.44063 7.24687L0.75 7.25C0.334375 7.25 0 7.58437 0 8C0 8.41563 0.334375 8.75 0.75 8.75H8.44063L5.72188 11.4688C5.42813 11.7625 5.42813 12.2375 5.72188 12.5281C6.01562 12.8187 6.49062 12.8219 6.78125 12.5281V12.5312ZM10.75 2.5H13.25C13.9406 2.5 14.5 3.05938 14.5 3.75V12.25C14.5 12.9406 13.9406 13.5 13.25 13.5H10.75C10.3344 13.5 10 13.8344 10 14.25C10 14.6656 10.3344 15 10.75 15H13.25C14.7688 15 16 13.7688 16 12.25V3.75C16 2.23125 14.7688 1 13.25 1H10.75C10.3344 1 10 1.33437 10 1.75C10 2.16562 10.3344 2.5 10.75 2.5Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M9.22034 5.71875C8.92659 6.0125 8.92659 6.4875 9.22034 6.77812C9.51409 7.06875 9.98909 7.07187 10.2797 6.77812L14.4985 2.55938V5.25C14.4985 5.66563 14.8328 6 15.2485 6C15.6641 6 15.9985 5.66563 15.9985 5.25V0.75C15.9985 0.334375 15.6641 0 15.2485 0H10.7516C10.336 0 10.0016 0.334375 10.0016 0.75C10.0016 1.16562 10.336 1.5 10.7516 1.5H13.4422L9.22034 5.71875ZM6.78284 10.2812C7.07659 9.9875 7.07659 9.5125 6.78284 9.22188C6.48909 8.93125 6.01409 8.92813 5.72346 9.22188L1.50159 13.4406V10.75C1.50159 10.3344 1.16721 10 0.751587 10C0.335962 10 0.00158691 10.3344 0.00158691 10.75V15.25C0.00158691 15.6656 0.335962 16 0.751587 16H5.25159C5.66721 16 6.00159 15.6656 6.00159 15.25C6.00159 14.8344 5.66721 14.5 5.25159 14.5H2.56096L6.78284 10.2812Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M3.00068 2.2C3.00068 1.8675 3.26818 1.6 3.60068 1.6C3.93318 1.6 4.20068 1.8675 4.20068 2.2V5.1525L4.77568 4.5775C5.01068 4.3425 5.39068 4.3425 5.62318 4.5775C5.85568 4.8125 5.85818 5.1925 5.62318 5.425L4.02318 7.025C3.78818 7.26 3.40818 7.26 3.17568 7.025L1.57568 5.425C1.34068 5.19 1.34068 4.81 1.57568 4.5775C1.81068 4.345 2.19068 4.3425 2.42318 4.5775L2.99818 5.1525V2.2H3.00068ZM10.3757 4.575C10.6107 4.34 10.9907 4.34 11.2232 4.575L11.7982 5.15V2.2C11.7982 1.8675 12.0657 1.6 12.3982 1.6C12.7307 1.6 12.9982 1.8675 12.9982 2.2V5.1525L13.5732 4.5775C13.8082 4.3425 14.1882 4.3425 14.4207 4.5775C14.6532 4.8125 14.6557 5.1925 14.4207 5.425L12.8207 7.025C12.5857 7.26 12.2057 7.26 11.9732 7.025L10.3732 5.425C10.1382 5.19 10.1382 4.81 10.3732 4.5775L10.3757 4.575ZM12.4007 8C12.6659 8 12.9203 8.10536 13.1078 8.29289C13.2953 8.48043 13.4007 8.73478 13.4007 9C13.4007 9.26521 13.2953 9.51957 13.1078 9.70711C12.9203 9.89464 12.6659 10 12.4007 10C12.1355 10 11.8811 9.89464 11.6936 9.70711C11.506 9.51957 11.4007 9.26521 11.4007 9C11.4007 8.73478 11.506 8.48043 11.6936 8.29289C11.8811 8.10536 12.1355 8 12.4007 8ZM12.0007 13.2H12.8007V11.6125C12.7507 11.605 12.6982 11.6 12.6457 11.6H12.1557C12.1032 11.6 12.0507 11.605 12.0007 11.6125V13.2ZM14.4732 13.885L14.0007 13.01V13.6C14.0007 14.0425 13.6432 14.4 13.2007 14.4H11.6007C11.1582 14.4 10.8007 14.0425 10.8007 13.6V13.0075L10.3282 13.8825C10.1707 14.175 9.80818 14.2825 9.51568 14.1275C9.22318 13.9725 9.11568 13.6075 9.27068 13.315L10.1782 11.6275C10.1357 11.585 10.0982 11.5375 10.0707 11.4825L9.59818 10.6075V11.6C9.59818 12.0425 9.24068 12.4 8.79818 12.4H7.20068C6.75818 12.4 6.40068 12.0425 6.40068 11.6V10.6075L5.92818 11.4825C5.89818 11.5375 5.86318 11.585 5.82068 11.6275L6.72818 13.315C6.88568 13.6075 6.77568 13.97 6.48318 14.1275C6.19068 14.285 5.82818 14.175 5.67068 13.8825L5.19818 13.0075V13.6C5.19818 14.0425 4.84068 14.4 4.39818 14.4H2.80068C2.35818 14.4 2.00068 14.0425 2.00068 13.6V13.0075L1.52818 13.8825C1.37068 14.175 1.00818 14.2825 0.715683 14.1275C0.423183 13.9725 0.315683 13.6075 0.470683 13.315L1.41818 11.5575C1.80068 10.845 2.54568 10.4 3.35568 10.4H3.84318C4.25068 10.4 4.64068 10.5125 4.97818 10.715L5.81818 9.1575C6.20068 8.445 6.94568 8 7.75568 8H8.24318C9.05318 8 9.79568 8.445 10.1807 9.1575L11.0207 10.715C11.3582 10.5125 11.7482 10.4 12.1557 10.4H12.6432C13.4532 10.4 14.1957 10.845 14.5807 11.5575L15.5282 13.315C15.6857 13.6075 15.5757 13.97 15.2832 14.1275C14.9907 14.285 14.6282 14.175 14.4707 13.8825L14.4732 13.885ZM7.00068 6.6C7.00068 6.33478 7.10604 6.08043 7.29358 5.89289C7.48111 5.70536 7.73547 5.6 8.00068 5.6C8.2659 5.6 8.52025 5.70536 8.70779 5.89289C8.89533 6.08043 9.00068 6.33478 9.00068 6.6C9.00068 6.86521 8.89533 7.11957 8.70779 7.30711C8.52025 7.49464 8.2659 7.6 8.00068 7.6C7.73547 7.6 7.48111 7.49464 7.29358 7.30711C7.10604 7.11957 7.00068 6.86521 7.00068 6.6ZM7.60068 9.2125V11.2H8.40068V9.2125C8.35068 9.205 8.29818 9.2 8.24568 9.2H7.75568C7.70318 9.2 7.65068 9.205 7.60068 9.2125ZM3.60068 8C3.8659 8 4.12025 8.10536 4.30779 8.29289C4.49533 8.48043 4.60068 8.73478 4.60068 9C4.60068 9.26521 4.49533 9.51957 4.30779 9.70711C4.12025 9.89464 3.8659 10 3.60068 10C3.33547 10 3.08111 9.89464 2.89358 9.70711C2.70604 9.51957 2.60068 9.26521 2.60068 9C2.60068 8.73478 2.70604 8.48043 2.89358 8.29289C3.08111 8.10536 3.33547 8 3.60068 8ZM3.20068 13.2H4.00068V11.6125C3.95068 11.605 3.89818 11.6 3.84568 11.6H3.35568C3.30318 11.6 3.25068 11.605 3.20068 11.6125V13.2Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M2.9375 5.84688C3.775 3.87813 5.72813 2.5 8 2.5C9.24063 2.5 10.4312 2.99375 11.3094 3.87188L12.9406 5.5H11.25C10.8344 5.5 10.5 5.83437 10.5 6.25C10.5 6.66563 10.8344 7 11.25 7H14.75C15.1656 7 15.5 6.66563 15.5 6.25V2.75C15.5 2.33438 15.1656 2 14.75 2C14.3344 2 14 2.33438 14 2.75V4.44063L12.3719 2.80938C11.2125 1.65 9.64062 1 8 1C5.10625 1 2.62187 2.75625 1.55625 5.25938C1.39375 5.64062 1.57187 6.08125 1.95312 6.24375C2.33438 6.40625 2.775 6.22813 2.9375 5.84688ZM14.4375 10.7531C14.6 10.3719 14.425 9.93125 14.0437 9.76875C13.6625 9.60625 13.2219 9.78125 13.0594 10.1625C12.2188 12.1281 10.2688 13.5 8 13.5C6.75938 13.5 5.56875 13.0063 4.69063 12.1281L3.05938 10.5H4.75C5.16563 10.5 5.5 10.1656 5.5 9.75C5.5 9.33438 5.16563 9 4.75 9H1.25C0.834375 9 0.5 9.33438 0.5 9.75V13.25C0.5 13.6656 0.834375 14 1.25 14C1.66562 14 2 13.6656 2 13.25V11.5594L3.62812 13.1875C4.7875 14.35 6.35938 15 8 15C10.8906 15 13.3687 13.25 14.4375 10.7531Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M1.77778 2.98301C1.53333 2.98301 1.33333 3.18296 1.33333 3.42735V11.4254C1.33333 11.6698 1.53333 11.8698 1.77778 11.8698H6.65278C6.66111 11.8698 6.66944 11.8698 6.675 11.8698H9.31944C9.32778 11.8698 9.33611 11.8698 9.34167 11.8698H14.2222C14.4667 11.8698 14.6667 11.6698 14.6667 11.4254V3.42735C14.6667 3.18296 14.4667 2.98301 14.2222 2.98301H1.77778ZM5.88056 13.2028H1.77778C0.797222 13.2028 0 12.4057 0 11.4254V3.42735C0 2.44703 0.797222 1.65 1.77778 1.65H14.2222C15.2028 1.65 16 2.44703 16 3.42735V11.4254C16 12.4057 15.2028 13.2028 14.2222 13.2028H10.1194L10.3417 14.5358H11.7778C12.1472 14.5358 12.4444 14.8329 12.4444 15.2023C12.4444 15.5716 12.1472 15.8688 11.7778 15.8688H4.22222C3.85278 15.8688 3.55556 15.5716 3.55556 15.2023C3.55556 14.8329 3.85278 14.5358 4.22222 14.5358H5.65833L5.88056 13.2028ZM7.23333 13.2028L7.01111 14.5358H8.99167L8.76944 13.2028H7.23056H7.23333Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M12 14.5C12.275 14.5 12.5 14.275 12.5 14V5H10C9.44688 5 9 4.55312 9 4V1.5H4C3.725 1.5 3.5 1.725 3.5 2V14C3.5 14.275 3.725 14.5 4 14.5H12ZM2 2C2 0.896875 2.89688 0 4 0H9.17188C9.70312 0 10.2125 0.209375 10.5875 0.584375L13.4156 3.4125C13.7906 3.7875 14 4.29688 14 4.82812V14C14 15.1031 13.1031 16 12 16H4C2.89688 16 2 15.1031 2 14V2Z"/></svg>
@@ -0,0 +1 @@
1
+ <svg viewBox="0 0 16 16" xmlns="http://www.w3.org/2000/svg"><path d="M0.127396 2.58029C0.332396 2.32035 0.709896 2.27286 0.969896 2.47781C1.0899 2.57279 1.2099 2.66527 1.3299 2.76025C1.6149 2.50531 1.9899 2.35034 2.3999 2.35034C6.1349 2.35034 9.8674 2.35034 13.5999 2.35034C14.4824 2.35034 15.1999 3.06767 15.1999 3.94996C15.1999 6.34938 15.1999 8.7488 15.1999 11.1482C15.1999 11.888 14.6949 12.5129 14.0099 12.6953C14.5974 13.1552 15.1849 13.6151 15.7699 14.075C16.0299 14.28 16.0774 14.6574 15.8724 14.9173C15.6674 15.1772 15.2899 15.2247 15.0299 15.0198C10.0949 11.1532 5.1624 7.28915 0.229896 3.42259C-0.0301036 3.21764 -0.0776036 2.84023 0.127396 2.58029ZM0.799896 5.37961L1.9999 6.32438C1.9999 7.9315 1.9999 9.53861 1.9999 11.1482C1.9999 11.3682 2.1799 11.5481 2.3999 11.5481C3.8624 11.5481 5.3249 11.5481 6.7874 11.5481C6.7949 11.5481 6.8024 11.5481 6.8074 11.5481C7.4149 11.5481 8.0224 11.5481 8.6299 11.5481L10.1524 12.7478C10.0699 12.7478 9.9874 12.7478 9.9049 12.7478C9.9724 13.1477 10.0374 13.5476 10.1049 13.9475C10.5349 13.9475 10.9674 13.9475 11.3974 13.9475C11.7299 13.9475 11.9974 14.215 11.9974 14.5474C11.9974 14.8798 11.7299 15.1473 11.3974 15.1473C10.7974 15.1473 10.1974 15.1473 9.5974 15.1473C8.5299 15.1473 7.4649 15.1473 6.3974 15.1473C5.7974 15.1473 5.1974 15.1473 4.5974 15.1473C4.2649 15.1473 3.9974 14.8798 3.9974 14.5474C3.9974 14.215 4.2649 13.9475 4.5974 13.9475C5.0274 13.9475 5.4599 13.9475 5.8899 13.9475C5.9574 13.5476 6.0224 13.1477 6.0899 12.7478C4.8599 12.7478 3.6274 12.7478 2.3974 12.7478C1.5149 12.7478 0.797396 12.0305 0.797396 11.1482C0.797396 9.22618 0.797396 7.30165 0.797396 5.37961H0.799896ZM2.3424 3.55505L12.5449 11.5481C12.8974 11.5481 13.2474 11.5481 13.5999 11.5481C13.8199 11.5481 13.9999 11.3682 13.9999 11.1482C13.9999 8.7488 13.9999 6.34938 13.9999 3.94996C13.9999 3.73001 13.8199 3.55006 13.5999 3.55006C9.8649 3.55006 6.1324 3.55006 2.3999 3.55006C2.3799 3.55006 2.3624 3.55255 2.3424 3.55505ZM7.1099 13.9475C7.7049 13.9475 8.2974 13.9475 8.8924 13.9475C8.8249 13.5476 8.7599 13.1477 8.6924 12.7478C8.2299 12.7478 7.7699 12.7478 7.3074 12.7478C7.3099 12.7478 7.3074 12.7478 7.3099 12.7478L7.1099 13.9475Z"/></svg>
@@ -1,5 +1,5 @@
1
1
  import { h, Host } from "@stencil/core";
2
- import { actOnActiveOption, clearActiveOptions, goToOption, hasActiveOption, hasPreviousOption, hasNextOption, onClickedOption, setFirstOptionActive, setInitialActiveOption, setLastOptionActive, setNextOptionActive, setPreviousOptionActive, matchOption } from "./gux-listbox.service";
2
+ import { actOnActiveOption, clearActiveOptions, goToOption, hasActiveOption, hasPreviousOption, hasNextOption, getListOptions, 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";
@@ -102,7 +102,7 @@ export class GuxListbox {
102
102
  if (this.value) {
103
103
  this.selectedValues = this.value.split(',');
104
104
  }
105
- this.listboxOptions = Array.from(this.root.children);
105
+ this.listboxOptions = getListOptions(this.root);
106
106
  this.internallistboxoptionsupdated.emit();
107
107
  }
108
108
  updateValue(newValue) {
@@ -127,12 +127,6 @@ export class GuxListbox {
127
127
  this.allListboxOptionsFiltered =
128
128
  this.listboxOptions.filter(listboxOption => !listboxOption.filtered)
129
129
  .length === 0;
130
- if (!this.allListboxOptionsFiltered && this.filter) {
131
- setFirstOptionActive(this.root);
132
- }
133
- else {
134
- clearActiveOptions(this.root);
135
- }
136
130
  }
137
131
  // The slot must always be rendered so onSlotchange can be called
138
132
  renderHiddenSlot() {
@@ -1,8 +1,28 @@
1
1
  export function getListOptions(list) {
2
- return Array.from(list.children).filter(item => {
3
- return item.value || item.value === '';
2
+ const listChildren = Array.from(list.children);
3
+ return listChildren.reduce((accumulator, child) => {
4
+ let childOptions = [];
5
+ if (isOptionGroup(child)) {
6
+ childOptions = Array.from(child.children).filter(item => isOption(item));
7
+ }
8
+ else if (isOption(child)) {
9
+ childOptions = [child];
10
+ }
11
+ return [...accumulator, ...childOptions];
12
+ }, []);
13
+ }
14
+ export function getAvailableListOptions(list) {
15
+ return getListOptions(list).filter(option => {
16
+ return !option.disabled && !option.filtered;
4
17
  });
5
18
  }
19
+ export function isOptionGroup(item) {
20
+ return item.tagName === 'GUX-OPTION-GROUP-BETA';
21
+ }
22
+ export function isOption(item) {
23
+ const optionTypes = ['GUX-OPTION', 'GUX-OPTION-ICON', 'GUX-OPTION-MULTI'];
24
+ return optionTypes.includes(item.tagName);
25
+ }
6
26
  function getFirstSelectedOption(list) {
7
27
  return getListOptions(list).find(option => option.selected && !option.disabled && !option.filtered);
8
28
  }
@@ -22,43 +42,31 @@ function setActiveOption(list, element) {
22
42
  }
23
43
  }
24
44
  function getFirstOption(list) {
25
- let firstOption = getListOptions(list)[0];
26
- while (firstOption && (firstOption.disabled || firstOption.filtered)) {
27
- firstOption = firstOption.nextElementSibling;
28
- }
29
- return firstOption;
45
+ return getAvailableListOptions(list)[0];
30
46
  }
31
47
  function getNextOption(list) {
32
- if (hasActiveOption(list)) {
33
- let nextOption = getActiveOption(list)
34
- .nextElementSibling;
35
- while (nextOption && (nextOption.disabled || nextOption.filtered)) {
36
- nextOption = nextOption.nextElementSibling;
37
- }
38
- return nextOption;
48
+ if (hasActiveOption(list) && getActiveOption(list) !== getLastOption(list)) {
49
+ const availableListOptions = getAvailableListOptions(list);
50
+ const activeOption = getActiveOption(list);
51
+ const activeOptionIndex = availableListOptions.indexOf(activeOption);
52
+ return availableListOptions[activeOptionIndex + 1];
39
53
  }
40
54
  return getFirstOption(list);
41
55
  }
42
56
  function getPreviousOption(list) {
43
57
  if (hasActiveOption(list)) {
44
- let previousOption = getActiveOption(list)
45
- .previousElementSibling;
46
- while (previousOption &&
47
- (previousOption.disabled || previousOption.filtered)) {
48
- previousOption =
49
- previousOption.previousElementSibling;
58
+ const availableOptionsList = getAvailableListOptions(list);
59
+ const activeOptionIndex = availableOptionsList.indexOf(getActiveOption(list));
60
+ if (getActiveOption(list) === getFirstOption(list)) {
61
+ return getLastOption(list);
50
62
  }
51
- return previousOption;
63
+ return availableOptionsList[activeOptionIndex - 1];
52
64
  }
53
65
  return getFirstOption(list);
54
66
  }
55
67
  function getLastOption(list) {
56
- const options = getListOptions(list);
57
- let lastOption = options[options.length - 1];
58
- while (lastOption && (lastOption.disabled || lastOption.filtered)) {
59
- lastOption = lastOption.previousElementSibling;
60
- }
61
- return lastOption;
68
+ const availableOptions = getAvailableListOptions(list);
69
+ return availableOptions[availableOptions.length - 1];
62
70
  }
63
71
  export function hasActiveOption(list) {
64
72
  return Boolean(getActiveOption(list));
@@ -85,25 +93,13 @@ export function setInitialActiveOption(list) {
85
93
  }
86
94
  export function hasPreviousOption(list) {
87
95
  if (hasActiveOption(list)) {
88
- let previousOption = getActiveOption(list)
89
- .previousElementSibling;
90
- while (previousOption &&
91
- (previousOption.disabled || previousOption.filtered)) {
92
- previousOption =
93
- previousOption.previousElementSibling;
94
- }
95
- return Boolean(previousOption);
96
+ return Boolean(getPreviousOption(list));
96
97
  }
97
98
  return false;
98
99
  }
99
100
  export function hasNextOption(list) {
100
101
  if (hasActiveOption(list)) {
101
- let nextOption = getActiveOption(list)
102
- .nextElementSibling;
103
- while (nextOption && (nextOption.disabled || nextOption.filtered)) {
104
- nextOption = nextOption.nextElementSibling;
105
- }
106
- return Boolean(nextOption);
102
+ return Boolean(getNextOption(list));
107
103
  }
108
104
  return false;
109
105
  }
@@ -0,0 +1,26 @@
1
+ /*
2
+ * Typography styles and mixins.
3
+ */
4
+ /* Headings */
5
+ /* Body Copy */
6
+ /* Anchor */
7
+ .gux-option-group {
8
+ display: block;
9
+ flex: 1 1 auto;
10
+ align-self: auto;
11
+ }
12
+ .gux-option-group .gux-option-group-label {
13
+ display: block;
14
+ padding: var(--gse-ui-menu-groupedMenu-title-padding);
15
+ color: var(--gse-ui-menu-groupedMenu-title-foregroundColor);
16
+ font-family: var(--gse-core-typography-heading-overline-fontFamily), var(--gse-core-fontFamily-heading), sans-serif;
17
+ font-size: var(--gse-core-typography-heading-overline-fontSize);
18
+ line-height: var(--gse-core-typography-heading-overline-lineHeight);
19
+ text-transform: var(--gse-core-typography-heading-overline-textCase);
20
+ letter-spacing: var(--gse-core-typography-heading-overline-letterSpacing);
21
+ font-weight: var(--gse-core-fontWeight-regular);
22
+ }
23
+
24
+ :host(:last-of-type) .gux-option-group gux-list-divider {
25
+ display: none;
26
+ }