genesys-spark-components 4.68.0 → 4.69.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 (421) 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 +1 -1
  7. package/dist/cjs/gux-announce-beta.cjs.entry.js +1 -1
  8. package/dist/cjs/gux-avatar-beta.cjs.entry.js +1 -1
  9. package/dist/cjs/gux-avatar-change-photo-beta.cjs.entry.js +1 -1
  10. package/dist/cjs/gux-badge.cjs.entry.js +1 -1
  11. package/dist/cjs/gux-blank-state.cjs.entry.js +1 -1
  12. package/dist/cjs/gux-breadcrumbs.cjs.entry.js +1 -1
  13. package/dist/cjs/gux-button-multi.cjs.entry.js +1 -1
  14. package/dist/cjs/gux-button-slot.cjs.entry.js +1 -1
  15. package/dist/cjs/gux-button.cjs.entry.js +1 -1
  16. package/dist/cjs/gux-calendar.cjs.entry.js +1 -1
  17. package/dist/cjs/gux-card.cjs.entry.js +1 -1
  18. package/dist/cjs/gux-column-manager.cjs.entry.js +1 -1
  19. package/dist/cjs/gux-content-search.cjs.entry.js +1 -1
  20. package/dist/cjs/gux-context-menu.cjs.entry.js +1 -1
  21. package/dist/cjs/gux-copy-to-clipboard.cjs.entry.js +1 -1
  22. package/dist/cjs/gux-create-option.cjs.entry.js +2 -2
  23. package/dist/cjs/gux-date-beta.cjs.entry.js +1 -1
  24. package/dist/cjs/gux-date-time-beta.cjs.entry.js +1 -1
  25. package/dist/cjs/gux-datepicker.cjs.entry.js +1 -1
  26. package/dist/cjs/gux-disclosure-button-legacy.cjs.entry.js +1 -1
  27. package/dist/cjs/gux-dismiss-button.cjs.entry.js +1 -1
  28. package/dist/cjs/gux-dropdown-multi.cjs.entry.js +1 -1
  29. package/dist/cjs/gux-dropdown_3.cjs.entry.js +1 -1
  30. package/dist/cjs/gux-flag-icon-beta.cjs.entry.js +1 -1
  31. package/dist/cjs/gux-flyout-menu.cjs.entry.js +1 -1
  32. package/dist/cjs/gux-form-field-checkbox-group-beta.cjs.entry.js +190 -0
  33. package/dist/cjs/gux-form-field-checkbox.cjs.entry.js +10 -5
  34. package/dist/cjs/gux-form-field-color.cjs.entry.js +4 -4
  35. package/dist/cjs/gux-form-field-dropdown.cjs.entry.js +4 -4
  36. package/dist/cjs/gux-form-field-file.cjs.entry.js +2 -2
  37. package/dist/cjs/gux-form-field-input-clear-button.cjs.entry.js +2 -2
  38. package/dist/cjs/gux-form-field-label-indicator.cjs.entry.js +1 -1
  39. package/dist/cjs/gux-form-field-number_3.cjs.entry.js +8 -8
  40. package/dist/cjs/gux-form-field-phone.cjs.entry.js +5 -5
  41. package/dist/cjs/gux-form-field-radio-group-beta.cjs.entry.js +3 -3
  42. package/dist/cjs/gux-form-field-radio.cjs.entry.js +3 -3
  43. package/dist/cjs/gux-form-field-range.cjs.entry.js +3 -3
  44. package/dist/cjs/gux-form-field-search.cjs.entry.js +4 -4
  45. package/dist/cjs/gux-form-field-select.cjs.entry.js +4 -4
  46. package/dist/cjs/gux-form-field-text-like.cjs.entry.js +1 -1
  47. package/dist/cjs/gux-form-field-textarea.cjs.entry.js +3 -3
  48. package/dist/cjs/gux-form-field-time-picker.cjs.entry.js +5 -5
  49. package/dist/cjs/gux-form-field-time-zone-picker.cjs.entry.js +4 -4
  50. package/dist/cjs/gux-form-footer.cjs.entry.js +1 -1
  51. package/dist/cjs/gux-icon-tooltip-beta.cjs.entry.js +1 -1
  52. package/dist/cjs/gux-icon.cjs.entry.js +2 -2
  53. package/dist/cjs/gux-inline-alert.cjs.entry.js +3 -3
  54. package/dist/cjs/gux-label-info-beta.cjs.entry.js +1 -1
  55. package/dist/cjs/gux-list.cjs.entry.js +1 -1
  56. package/dist/cjs/gux-listbox-multi.cjs.entry.js +1 -1
  57. package/dist/cjs/gux-loading-message.cjs.entry.js +2 -2
  58. package/dist/cjs/gux-modal-legacy.cjs.entry.js +1 -1
  59. package/dist/cjs/gux-modal.cjs.entry.js +2 -2
  60. package/dist/cjs/gux-month-picker-beta.cjs.entry.js +1 -1
  61. package/dist/cjs/gux-notification-toast-legacy.cjs.entry.js +1 -1
  62. package/dist/cjs/gux-page-loading-spinner.cjs.entry.js +2 -2
  63. package/dist/cjs/gux-pagination-buttons_2.cjs.entry.js +2 -2
  64. package/dist/cjs/gux-pagination-cursor.cjs.entry.js +1 -1
  65. package/dist/cjs/gux-pagination-items-per-page.cjs.entry.js +1 -1
  66. package/dist/cjs/gux-pagination-legacy.cjs.entry.js +1 -1
  67. package/dist/cjs/gux-pagination.cjs.entry.js +2 -2
  68. package/dist/cjs/gux-phone-input-beta.cjs.entry.js +1 -1
  69. package/dist/cjs/gux-popover-list.cjs.entry.js +3 -3
  70. package/dist/cjs/gux-popup.cjs.entry.js +3 -3
  71. package/dist/cjs/gux-radial-loading.cjs.entry.js +2 -2
  72. package/dist/cjs/gux-radial-progress.cjs.entry.js +1 -1
  73. package/dist/cjs/gux-rating.cjs.entry.js +2 -2
  74. package/dist/cjs/gux-row-select.cjs.entry.js +1 -1
  75. package/dist/cjs/gux-screen-reader-beta_2.cjs.entry.js +1 -1
  76. package/dist/cjs/gux-segmented-control-beta.cjs.entry.js +1 -1
  77. package/dist/cjs/gux-selector-card-beta.cjs.entry.js +1 -1
  78. package/dist/cjs/gux-selector-cards-beta.cjs.entry.js +1 -1
  79. package/dist/cjs/gux-simple-toast-legacy.cjs.entry.js +1 -1
  80. package/dist/cjs/gux-skip-navigation-item.cjs.entry.js +1 -1
  81. package/dist/cjs/gux-skip-navigation-list.cjs.entry.js +2 -2
  82. package/dist/cjs/gux-sort-control.cjs.entry.js +4 -4
  83. package/dist/cjs/gux-switch-legacy.cjs.entry.js +1 -1
  84. package/dist/cjs/gux-tab-advanced-list.cjs.entry.js +1 -1
  85. package/dist/cjs/gux-tab-advanced-panel.cjs.entry.js +1 -1
  86. package/dist/cjs/gux-tab-advanced.cjs.entry.js +2 -2
  87. package/dist/cjs/gux-tab-list.cjs.entry.js +2 -2
  88. package/dist/cjs/gux-tab-panel.cjs.entry.js +1 -1
  89. package/dist/cjs/gux-tab.cjs.entry.js +2 -2
  90. package/dist/cjs/gux-table-select-menu.cjs.entry.js +1 -1
  91. package/dist/cjs/gux-table-toolbar-action.cjs.entry.js +2 -2
  92. package/dist/cjs/gux-table-toolbar-custom-action.cjs.entry.js +2 -2
  93. package/dist/cjs/gux-table-toolbar-menu-button.cjs.entry.js +2 -2
  94. package/dist/cjs/gux-table-toolbar.cjs.entry.js +3 -3
  95. package/dist/cjs/gux-table.cjs.entry.js +2 -2
  96. package/dist/cjs/gux-tabs-advanced.cjs.entry.js +2 -2
  97. package/dist/cjs/gux-tabs.cjs.entry.js +2 -2
  98. package/dist/cjs/gux-tag.cjs.entry.js +2 -2
  99. package/dist/cjs/gux-text-highlight.cjs.entry.js +1 -1
  100. package/dist/cjs/gux-time-beta.cjs.entry.js +1 -1
  101. package/dist/cjs/gux-time-picker.cjs.entry.js +2 -2
  102. package/dist/cjs/gux-time-zone-picker-beta.cjs.entry.js +1 -1
  103. package/dist/cjs/gux-toast.cjs.entry.js +3 -3
  104. package/dist/cjs/gux-toggle-slider.cjs.entry.js +2 -2
  105. package/dist/cjs/gux-toggle.cjs.entry.js +3 -3
  106. package/dist/cjs/gux-tooltip-base-beta.cjs.entry.js +1 -1
  107. package/dist/cjs/gux-tooltip-title.cjs.entry.js +2 -2
  108. package/dist/cjs/gux-tooltip.cjs.entry.js +3 -3
  109. package/dist/cjs/gux-truncate.cjs.entry.js +3 -3
  110. package/dist/cjs/index-7fb02c8c.js +4 -0
  111. package/dist/cjs/loader.cjs.js +1 -1
  112. package/dist/cjs/{usage-103c4679.js → usage-6c10f2a2.js} +1 -1
  113. package/dist/collection/collection-manifest.json +1 -0
  114. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.js +47 -6
  115. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox-group/gux-form-field-checkbox-group.css +185 -0
  116. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox-group/gux-form-field-checkbox-group.js +191 -0
  117. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox-group/gux-form-field-checkbox-group.service.js +38 -0
  118. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox-group/tests/gux-form-field-checkbox-group.e2e.js +207 -0
  119. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-checkbox-group/tests/gux-form-field-checkbox-group.spec.js +128 -0
  120. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-color/gux-form-field-color.js +3 -3
  121. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-dropdown/gux-form-field-dropdown.js +3 -3
  122. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-file/gux-form-field-file.js +1 -1
  123. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-number/gux-form-field-number.js +3 -3
  124. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-phone/gux-form-field-phone.js +4 -4
  125. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-radio/gux-form-field-radio.js +2 -2
  126. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-radio-group/gux-form-field-radio-group.js +2 -2
  127. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-range/gux-form-field-range.js +2 -2
  128. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-search/gux-form-field-search.js +3 -3
  129. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-select/gux-form-field-select.js +3 -3
  130. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-textarea/gux-form-field-textarea.js +2 -2
  131. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-time-picker/gux-form-field-time-picker.js +4 -4
  132. package/dist/collection/components/stable/gux-form-field/components/gux-form-field-time-zone-picker/gux-form-field-time-zone-picker.js +3 -3
  133. package/dist/collection/components/stable/gux-form-field/helper-components/gux-form-field-input-clear-button/gux-form-field-input-clear-button.js +1 -1
  134. package/dist/collection/components/stable/gux-icon/gux-icon.js +1 -1
  135. package/dist/collection/components/stable/gux-inline-alert/gux-inline-alert.js +2 -2
  136. package/dist/collection/components/stable/gux-listbox-multi/gux-create-option/gux-create-option.js +2 -2
  137. package/dist/collection/components/stable/gux-loading-message/gux-loading-message.js +1 -1
  138. package/dist/collection/components/stable/gux-modal/gux-modal.js +1 -1
  139. package/dist/collection/components/stable/gux-page-loading-spinner/gux-page-loading-spinner.js +1 -1
  140. package/dist/collection/components/stable/gux-pagination/gux-pagination-buttons/gux-pagination-buttons.js +1 -1
  141. package/dist/collection/components/stable/gux-pagination/gux-pagination-buttons/gux-pagination-ellipsis-button/gux-pagination-ellipsis-button.js +2 -2
  142. package/dist/collection/components/stable/gux-pagination/gux-pagination-item-counts/gux-pagination-item-counts.js +1 -1
  143. package/dist/collection/components/stable/gux-pagination/gux-pagination-items-per-page/gux-pagination-items-per-page.js +1 -1
  144. package/dist/collection/components/stable/gux-pagination/gux-pagination.js +1 -1
  145. package/dist/collection/components/stable/gux-popover/gux-popover.js +2 -2
  146. package/dist/collection/components/stable/gux-popover-list/gux-popover-list.js +2 -2
  147. package/dist/collection/components/stable/gux-popup/gux-popup.js +3 -3
  148. package/dist/collection/components/stable/gux-radial-loading/gux-radial-loading.js +1 -1
  149. package/dist/collection/components/stable/gux-rating/gux-rating.js +1 -1
  150. package/dist/collection/components/stable/gux-skip-navigation-list/gux-skip-navigation-item/gux-skip-navigation-item.js +1 -1
  151. package/dist/collection/components/stable/gux-skip-navigation-list/gux-skip-navigation-list.js +1 -1
  152. package/dist/collection/components/stable/gux-table/gux-all-row-select/gux-all-row-select.js +1 -1
  153. package/dist/collection/components/stable/gux-table/gux-row-select/gux-row-select.js +1 -1
  154. package/dist/collection/components/stable/gux-table/gux-sort-control/gux-sort-control.js +3 -3
  155. package/dist/collection/components/stable/gux-table/gux-table-select-menu/gux-table-select-menu.js +1 -1
  156. package/dist/collection/components/stable/gux-table/gux-table.js +1 -1
  157. package/dist/collection/components/stable/gux-table-toolbar/gux-table-toolbar-action/gux-table-toolbar-action.js +1 -1
  158. package/dist/collection/components/stable/gux-table-toolbar/gux-table-toolbar-custom-action/gux-table-toolbar-custom-action.js +1 -1
  159. package/dist/collection/components/stable/gux-table-toolbar/gux-table-toolbar-menu-button/gux-table-toolbar-menu-button.js +1 -1
  160. package/dist/collection/components/stable/gux-table-toolbar/gux-table-toolbar.js +2 -2
  161. package/dist/collection/components/stable/gux-tabs/gux-tab/gux-tab.js +2 -2
  162. package/dist/collection/components/stable/gux-tabs/gux-tab-list/gux-tab-list.js +2 -2
  163. package/dist/collection/components/stable/gux-tabs/gux-tab-panel/gux-tab-panel.js +1 -1
  164. package/dist/collection/components/stable/gux-tabs/gux-tabs.js +1 -1
  165. package/dist/collection/components/stable/gux-tabs-advanced/gux-tab-advanced/gux-tab-advanced.js +2 -2
  166. package/dist/collection/components/stable/gux-tabs-advanced/gux-tab-advanced-list/gux-tab-advanced-list.js +1 -1
  167. package/dist/collection/components/stable/gux-tabs-advanced/gux-tab-advanced-panel/gux-tab-advanced-panel.js +1 -1
  168. package/dist/collection/components/stable/gux-tabs-advanced/gux-tabs-advanced.js +1 -1
  169. package/dist/collection/components/stable/gux-tag/gux-tag.js +1 -1
  170. package/dist/collection/components/stable/gux-time-picker/gux-time-picker.js +1 -1
  171. package/dist/collection/components/stable/gux-toast/gux-toast.js +2 -2
  172. package/dist/collection/components/stable/gux-toggle/gux-toggle-slider/gux-toggle-slider.js +2 -2
  173. package/dist/collection/components/stable/gux-toggle/gux-toggle.js +2 -2
  174. package/dist/collection/components/stable/gux-tooltip/gux-tooltip.js +2 -2
  175. package/dist/collection/components/stable/gux-tooltip-title/gux-tooltip-title.js +2 -2
  176. package/dist/collection/components/stable/gux-truncate/gux-truncate.js +3 -3
  177. package/dist/esm/genesys-webcomponents.js +1 -1
  178. package/dist/esm/gux-accordion.entry.js +1 -1
  179. package/dist/esm/gux-action-button.entry.js +1 -1
  180. package/dist/esm/gux-action-toast-legacy.entry.js +1 -1
  181. package/dist/esm/gux-advanced-dropdown-legacy.entry.js +1 -1
  182. package/dist/esm/gux-all-row-select.entry.js +1 -1
  183. package/dist/esm/gux-announce-beta.entry.js +1 -1
  184. package/dist/esm/gux-avatar-beta.entry.js +1 -1
  185. package/dist/esm/gux-avatar-change-photo-beta.entry.js +1 -1
  186. package/dist/esm/gux-badge.entry.js +1 -1
  187. package/dist/esm/gux-blank-state.entry.js +1 -1
  188. package/dist/esm/gux-breadcrumbs.entry.js +1 -1
  189. package/dist/esm/gux-button-multi.entry.js +1 -1
  190. package/dist/esm/gux-button-slot.entry.js +1 -1
  191. package/dist/esm/gux-button.entry.js +1 -1
  192. package/dist/esm/gux-calendar.entry.js +1 -1
  193. package/dist/esm/gux-card.entry.js +1 -1
  194. package/dist/esm/gux-column-manager.entry.js +1 -1
  195. package/dist/esm/gux-content-search.entry.js +1 -1
  196. package/dist/esm/gux-context-menu.entry.js +1 -1
  197. package/dist/esm/gux-copy-to-clipboard.entry.js +1 -1
  198. package/dist/esm/gux-create-option.entry.js +2 -2
  199. package/dist/esm/gux-date-beta.entry.js +1 -1
  200. package/dist/esm/gux-date-time-beta.entry.js +1 -1
  201. package/dist/esm/gux-datepicker.entry.js +1 -1
  202. package/dist/esm/gux-disclosure-button-legacy.entry.js +1 -1
  203. package/dist/esm/gux-dismiss-button.entry.js +1 -1
  204. package/dist/esm/gux-dropdown-multi.entry.js +1 -1
  205. package/dist/esm/gux-dropdown_3.entry.js +1 -1
  206. package/dist/esm/gux-flag-icon-beta.entry.js +1 -1
  207. package/dist/esm/gux-flyout-menu.entry.js +1 -1
  208. package/dist/esm/gux-form-field-checkbox-group-beta.entry.js +186 -0
  209. package/dist/esm/gux-form-field-checkbox.entry.js +11 -6
  210. package/dist/esm/gux-form-field-color.entry.js +5 -5
  211. package/dist/esm/gux-form-field-dropdown.entry.js +5 -5
  212. package/dist/esm/{gux-form-field-error-4d654b58.js → gux-form-field-error-1776797e.js} +1 -1
  213. package/dist/esm/gux-form-field-file.entry.js +3 -3
  214. package/dist/esm/gux-form-field-input-clear-button.entry.js +2 -2
  215. package/dist/esm/gux-form-field-label-indicator.entry.js +1 -1
  216. package/dist/esm/gux-form-field-number_3.entry.js +9 -9
  217. package/dist/esm/gux-form-field-phone.entry.js +6 -6
  218. package/dist/esm/gux-form-field-radio-group-beta.entry.js +4 -4
  219. package/dist/esm/gux-form-field-radio.entry.js +4 -4
  220. package/dist/esm/gux-form-field-range.entry.js +4 -4
  221. package/dist/esm/gux-form-field-search.entry.js +5 -5
  222. package/dist/esm/gux-form-field-select.entry.js +5 -5
  223. package/dist/esm/gux-form-field-text-like.entry.js +2 -2
  224. package/dist/esm/gux-form-field-textarea.entry.js +4 -4
  225. package/dist/esm/gux-form-field-time-picker.entry.js +6 -6
  226. package/dist/esm/gux-form-field-time-zone-picker.entry.js +5 -5
  227. package/dist/esm/gux-form-footer.entry.js +1 -1
  228. package/dist/esm/gux-icon-tooltip-beta.entry.js +1 -1
  229. package/dist/esm/gux-icon.entry.js +2 -2
  230. package/dist/esm/gux-inline-alert.entry.js +3 -3
  231. package/dist/esm/gux-label-info-beta.entry.js +1 -1
  232. package/dist/esm/gux-list.entry.js +1 -1
  233. package/dist/esm/gux-listbox-multi.entry.js +1 -1
  234. package/dist/esm/gux-loading-message.entry.js +2 -2
  235. package/dist/esm/gux-modal-legacy.entry.js +1 -1
  236. package/dist/esm/gux-modal.entry.js +2 -2
  237. package/dist/esm/gux-month-picker-beta.entry.js +1 -1
  238. package/dist/esm/gux-notification-toast-legacy.entry.js +1 -1
  239. package/dist/esm/gux-page-loading-spinner.entry.js +2 -2
  240. package/dist/esm/gux-pagination-buttons_2.entry.js +2 -2
  241. package/dist/esm/gux-pagination-cursor.entry.js +1 -1
  242. package/dist/esm/gux-pagination-items-per-page.entry.js +1 -1
  243. package/dist/esm/gux-pagination-legacy.entry.js +1 -1
  244. package/dist/esm/gux-pagination.entry.js +2 -2
  245. package/dist/esm/gux-phone-input-beta.entry.js +1 -1
  246. package/dist/esm/gux-popover-list.entry.js +3 -3
  247. package/dist/esm/gux-popup.entry.js +3 -3
  248. package/dist/esm/gux-radial-loading.entry.js +2 -2
  249. package/dist/esm/gux-radial-progress.entry.js +1 -1
  250. package/dist/esm/gux-rating.entry.js +2 -2
  251. package/dist/esm/gux-row-select.entry.js +1 -1
  252. package/dist/esm/gux-screen-reader-beta_2.entry.js +1 -1
  253. package/dist/esm/gux-segmented-control-beta.entry.js +1 -1
  254. package/dist/esm/gux-selector-card-beta.entry.js +1 -1
  255. package/dist/esm/gux-selector-cards-beta.entry.js +1 -1
  256. package/dist/esm/gux-simple-toast-legacy.entry.js +1 -1
  257. package/dist/esm/gux-skip-navigation-item.entry.js +1 -1
  258. package/dist/esm/gux-skip-navigation-list.entry.js +2 -2
  259. package/dist/esm/gux-sort-control.entry.js +4 -4
  260. package/dist/esm/gux-switch-legacy.entry.js +1 -1
  261. package/dist/esm/gux-tab-advanced-list.entry.js +1 -1
  262. package/dist/esm/gux-tab-advanced-panel.entry.js +1 -1
  263. package/dist/esm/gux-tab-advanced.entry.js +2 -2
  264. package/dist/esm/gux-tab-list.entry.js +2 -2
  265. package/dist/esm/gux-tab-panel.entry.js +1 -1
  266. package/dist/esm/gux-tab.entry.js +2 -2
  267. package/dist/esm/gux-table-select-menu.entry.js +1 -1
  268. package/dist/esm/gux-table-toolbar-action.entry.js +2 -2
  269. package/dist/esm/gux-table-toolbar-custom-action.entry.js +2 -2
  270. package/dist/esm/gux-table-toolbar-menu-button.entry.js +2 -2
  271. package/dist/esm/gux-table-toolbar.entry.js +3 -3
  272. package/dist/esm/gux-table.entry.js +2 -2
  273. package/dist/esm/gux-tabs-advanced.entry.js +2 -2
  274. package/dist/esm/gux-tabs.entry.js +2 -2
  275. package/dist/esm/gux-tag.entry.js +2 -2
  276. package/dist/esm/gux-text-highlight.entry.js +1 -1
  277. package/dist/esm/gux-time-beta.entry.js +1 -1
  278. package/dist/esm/gux-time-picker.entry.js +2 -2
  279. package/dist/esm/gux-time-zone-picker-beta.entry.js +1 -1
  280. package/dist/esm/gux-toast.entry.js +3 -3
  281. package/dist/esm/gux-toggle-slider.entry.js +2 -2
  282. package/dist/esm/gux-toggle.entry.js +3 -3
  283. package/dist/esm/gux-tooltip-base-beta.entry.js +1 -1
  284. package/dist/esm/gux-tooltip-title.entry.js +2 -2
  285. package/dist/esm/gux-tooltip.entry.js +3 -3
  286. package/dist/esm/gux-truncate.entry.js +3 -3
  287. package/dist/esm/index-da21b737.js +4 -0
  288. package/dist/esm/loader.js +1 -1
  289. package/dist/esm/{usage-4e6a9a9c.js → usage-eec56179.js} +1 -1
  290. package/dist/genesys-webcomponents/genesys-webcomponents.esm.js +1 -1
  291. package/dist/genesys-webcomponents/{p-dba545a3.entry.js → p-0010b29a.entry.js} +1 -1
  292. package/dist/genesys-webcomponents/{p-e3e7152d.entry.js → p-02df1a85.entry.js} +1 -1
  293. package/dist/genesys-webcomponents/{p-41a4645b.entry.js → p-0573ca55.entry.js} +1 -1
  294. package/dist/genesys-webcomponents/{p-82c29dbb.entry.js → p-064a5739.entry.js} +1 -1
  295. package/dist/genesys-webcomponents/p-06e2970b.entry.js +1 -0
  296. package/dist/genesys-webcomponents/p-0b822ab1.entry.js +1 -0
  297. package/dist/genesys-webcomponents/{p-ce2a1223.entry.js → p-0c5ff9a2.entry.js} +1 -1
  298. package/dist/genesys-webcomponents/{p-7f0316e4.entry.js → p-0f655c72.entry.js} +1 -1
  299. package/dist/genesys-webcomponents/{p-cff55bdc.entry.js → p-10450b48.entry.js} +1 -1
  300. package/dist/genesys-webcomponents/{p-463d7d50.entry.js → p-1aabb3fa.entry.js} +1 -1
  301. package/dist/genesys-webcomponents/{p-f83e54ff.entry.js → p-1d354870.entry.js} +1 -1
  302. package/dist/genesys-webcomponents/{p-46061ca0.entry.js → p-1e5371b8.entry.js} +1 -1
  303. package/dist/genesys-webcomponents/{p-63bf4974.entry.js → p-1e55d0dd.entry.js} +1 -1
  304. package/dist/genesys-webcomponents/p-212bada6.entry.js +1 -0
  305. package/dist/genesys-webcomponents/p-26c2db71.entry.js +1 -0
  306. package/dist/genesys-webcomponents/{p-b50bc0b6.entry.js → p-274c8122.entry.js} +1 -1
  307. package/dist/genesys-webcomponents/{p-6defe950.entry.js → p-287cf6b6.entry.js} +1 -1
  308. package/dist/genesys-webcomponents/{p-ac2990a0.entry.js → p-2905979c.entry.js} +1 -1
  309. package/dist/genesys-webcomponents/p-29baf317.entry.js +1 -0
  310. package/dist/genesys-webcomponents/{p-158e1106.entry.js → p-36c636b6.entry.js} +1 -1
  311. package/dist/genesys-webcomponents/{p-53b50d9f.entry.js → p-3710eb71.entry.js} +1 -1
  312. package/dist/genesys-webcomponents/{p-02f6c908.entry.js → p-3934ee84.entry.js} +1 -1
  313. package/dist/genesys-webcomponents/{p-8d034b46.entry.js → p-396cd09a.entry.js} +1 -1
  314. package/dist/genesys-webcomponents/{p-c32073bd.entry.js → p-3ec1cae1.entry.js} +1 -1
  315. package/dist/genesys-webcomponents/p-4375546f.entry.js +1 -0
  316. package/dist/genesys-webcomponents/{p-b7a0bb65.entry.js → p-446acd62.entry.js} +1 -1
  317. package/dist/genesys-webcomponents/{p-c5ee06dd.entry.js → p-455d910e.entry.js} +1 -1
  318. package/dist/genesys-webcomponents/{p-6699a9c2.js → p-456393e5.js} +1 -1
  319. package/dist/genesys-webcomponents/{p-557fe238.entry.js → p-45e2c1c6.entry.js} +1 -1
  320. package/dist/genesys-webcomponents/p-47870a72.entry.js +1 -0
  321. package/dist/genesys-webcomponents/{p-ecb0bd29.entry.js → p-49a1c24f.entry.js} +1 -1
  322. package/dist/genesys-webcomponents/{p-1923666a.entry.js → p-4c2e929e.entry.js} +1 -1
  323. package/dist/genesys-webcomponents/{p-654301d1.entry.js → p-50923f62.entry.js} +1 -1
  324. package/dist/genesys-webcomponents/{p-3b371d8f.entry.js → p-51c58402.entry.js} +1 -1
  325. package/dist/genesys-webcomponents/{p-2df77f1f.entry.js → p-523a2db4.entry.js} +1 -1
  326. package/dist/genesys-webcomponents/{p-a5f5b4a5.entry.js → p-529793c7.entry.js} +1 -1
  327. package/dist/genesys-webcomponents/{p-dff94664.entry.js → p-64f86c60.entry.js} +1 -1
  328. package/dist/genesys-webcomponents/{p-b5447e7b.entry.js → p-670489f5.entry.js} +1 -1
  329. package/dist/genesys-webcomponents/{p-794d45be.entry.js → p-69f3fc3b.entry.js} +1 -1
  330. package/dist/genesys-webcomponents/{p-2727ebc6.entry.js → p-6b6cb6cc.entry.js} +1 -1
  331. package/dist/genesys-webcomponents/{p-9aa1da48.entry.js → p-6c208eeb.entry.js} +1 -1
  332. package/dist/genesys-webcomponents/{p-b8ed0452.entry.js → p-6c3fa46e.entry.js} +1 -1
  333. package/dist/genesys-webcomponents/{p-e6b15ad4.entry.js → p-6cbe9250.entry.js} +1 -1
  334. package/dist/genesys-webcomponents/{p-ef10948c.entry.js → p-6f0d3d52.entry.js} +1 -1
  335. package/dist/genesys-webcomponents/{p-0c9634a0.entry.js → p-71cdaa99.entry.js} +1 -1
  336. package/dist/genesys-webcomponents/{p-455dfe3c.entry.js → p-72ea814e.entry.js} +1 -1
  337. package/dist/genesys-webcomponents/{p-e06ea439.entry.js → p-737fb2c9.entry.js} +1 -1
  338. package/dist/genesys-webcomponents/{p-2811c449.entry.js → p-738bc18d.entry.js} +1 -1
  339. package/dist/genesys-webcomponents/{p-ded3069d.entry.js → p-76938234.entry.js} +1 -1
  340. package/dist/genesys-webcomponents/{p-2d84406f.entry.js → p-769a2fa8.entry.js} +1 -1
  341. package/dist/genesys-webcomponents/{p-9d2e348d.entry.js → p-7715e4c7.entry.js} +1 -1
  342. package/dist/genesys-webcomponents/{p-980d8f98.entry.js → p-79ee0cbf.entry.js} +1 -1
  343. package/dist/genesys-webcomponents/{p-ae8dc502.entry.js → p-7a39c6fd.entry.js} +1 -1
  344. package/dist/genesys-webcomponents/{p-81a4d0f1.entry.js → p-7c82f117.entry.js} +1 -1
  345. package/dist/genesys-webcomponents/{p-acdea64a.entry.js → p-82051110.entry.js} +1 -1
  346. package/dist/genesys-webcomponents/{p-ab4733d2.entry.js → p-84dcb7d2.entry.js} +1 -1
  347. package/dist/genesys-webcomponents/{p-8a68f742.entry.js → p-8956037f.entry.js} +1 -1
  348. package/dist/genesys-webcomponents/{p-e4b07e67.entry.js → p-8cbed655.entry.js} +1 -1
  349. package/dist/genesys-webcomponents/{p-e03849cc.entry.js → p-8f6c720b.entry.js} +1 -1
  350. package/dist/genesys-webcomponents/p-91c9d868.entry.js +1 -0
  351. package/dist/genesys-webcomponents/{p-5f7ce4f0.entry.js → p-93e225d3.entry.js} +1 -1
  352. package/dist/genesys-webcomponents/{p-fb9fd5b3.entry.js → p-96337cbc.entry.js} +1 -1
  353. package/dist/genesys-webcomponents/{p-08ae063f.entry.js → p-97180973.entry.js} +1 -1
  354. package/dist/genesys-webcomponents/{p-f14eb1a0.entry.js → p-9abdfc47.entry.js} +1 -1
  355. package/dist/genesys-webcomponents/{p-27e7bf13.entry.js → p-9bbd4762.entry.js} +1 -1
  356. package/dist/genesys-webcomponents/{p-ddc7ec6f.entry.js → p-9cc55826.entry.js} +1 -1
  357. package/dist/genesys-webcomponents/{p-5bd2a533.entry.js → p-9d87d10d.entry.js} +1 -1
  358. package/dist/genesys-webcomponents/{p-b862bfc9.entry.js → p-9e373c3f.entry.js} +1 -1
  359. package/dist/genesys-webcomponents/{p-d9ac7174.entry.js → p-9e6be2ce.entry.js} +1 -1
  360. package/dist/genesys-webcomponents/p-a0eafffb.entry.js +1 -0
  361. package/dist/genesys-webcomponents/{p-5cc29ad6.entry.js → p-a159f63c.entry.js} +1 -1
  362. package/dist/genesys-webcomponents/{p-e1ab128a.entry.js → p-a2888a42.entry.js} +1 -1
  363. package/dist/genesys-webcomponents/{p-8feef8fb.entry.js → p-a40f7d99.entry.js} +1 -1
  364. package/dist/genesys-webcomponents/{p-2bab7cee.entry.js → p-a782c2d0.entry.js} +1 -1
  365. package/dist/genesys-webcomponents/{p-c4010674.entry.js → p-ac0f98a8.entry.js} +1 -1
  366. package/dist/genesys-webcomponents/p-b1a20774.entry.js +1 -0
  367. package/dist/genesys-webcomponents/{p-ceee8f83.entry.js → p-b2a2fff4.entry.js} +1 -1
  368. package/dist/genesys-webcomponents/{p-2c73de68.entry.js → p-b5dfee03.entry.js} +1 -1
  369. package/dist/genesys-webcomponents/p-b6fdd4ec.entry.js +1 -0
  370. package/dist/genesys-webcomponents/{p-db330034.entry.js → p-b9210b5b.entry.js} +1 -1
  371. package/dist/genesys-webcomponents/{p-03c410ea.entry.js → p-ba049a12.entry.js} +1 -1
  372. package/dist/genesys-webcomponents/{p-b2a1d131.entry.js → p-bca4f4dd.entry.js} +1 -1
  373. package/dist/genesys-webcomponents/{p-0f68517e.entry.js → p-bfd1cd05.entry.js} +1 -1
  374. package/dist/genesys-webcomponents/{p-4066c8ff.entry.js → p-c5a84eef.entry.js} +1 -1
  375. package/dist/genesys-webcomponents/{p-a85111bc.entry.js → p-c6448b70.entry.js} +1 -1
  376. package/dist/genesys-webcomponents/p-c77b7a71.entry.js +1 -0
  377. package/dist/genesys-webcomponents/{p-ddd63cdd.entry.js → p-ccee357c.entry.js} +1 -1
  378. package/dist/genesys-webcomponents/{p-54f674f8.entry.js → p-d34e2d20.entry.js} +1 -1
  379. package/dist/genesys-webcomponents/{p-f8597ab4.entry.js → p-d4005404.entry.js} +1 -1
  380. package/dist/genesys-webcomponents/{p-70d17080.entry.js → p-d5e2655b.entry.js} +1 -1
  381. package/dist/genesys-webcomponents/{p-a2ef5d2e.entry.js → p-d7039017.entry.js} +1 -1
  382. package/dist/genesys-webcomponents/p-dbbc6add.entry.js +1 -0
  383. package/dist/genesys-webcomponents/{p-4c9f9a59.entry.js → p-de67dda7.entry.js} +1 -1
  384. package/dist/genesys-webcomponents/{p-dc8c9e1a.entry.js → p-dee370ca.entry.js} +1 -1
  385. package/dist/genesys-webcomponents/{p-824c2c02.entry.js → p-e21f78fb.entry.js} +1 -1
  386. package/dist/genesys-webcomponents/{p-fbe7b1a8.entry.js → p-e33dff52.entry.js} +1 -1
  387. package/dist/genesys-webcomponents/{p-c7149990.entry.js → p-e535ba35.entry.js} +1 -1
  388. package/dist/genesys-webcomponents/{p-1e8e6d25.entry.js → p-e6f7175b.entry.js} +1 -1
  389. package/dist/genesys-webcomponents/{p-b83a0c9c.entry.js → p-e7e78b4f.entry.js} +1 -1
  390. package/dist/genesys-webcomponents/{p-6f7f0119.entry.js → p-ee25620d.entry.js} +1 -1
  391. package/dist/genesys-webcomponents/{p-c0526772.entry.js → p-f1a37875.entry.js} +1 -1
  392. package/dist/genesys-webcomponents/{p-cd09283e.entry.js → p-f4741d5d.entry.js} +1 -1
  393. package/dist/genesys-webcomponents/{p-8b50d9e4.entry.js → p-f5b5b117.entry.js} +1 -1
  394. package/dist/genesys-webcomponents/p-fa050f17.entry.js +1 -0
  395. package/dist/genesys-webcomponents/{p-a49cd99d.entry.js → p-fa7b8769.entry.js} +1 -1
  396. package/dist/genesys-webcomponents/p-faba6b13.entry.js +1 -0
  397. package/dist/genesys-webcomponents/{p-265b0b57.js → p-fb1ab7b1.js} +1 -1
  398. package/dist/genesys-webcomponents/{p-798d2d2d.entry.js → p-fd634640.entry.js} +1 -1
  399. package/dist/genesys-webcomponents/{p-82079b15.entry.js → p-fdb9d5d1.entry.js} +1 -1
  400. package/dist/genesys-webcomponents/{p-7f9e6b88.entry.js → p-fffce8fb.entry.js} +1 -1
  401. package/dist/stencil-wrapper.js +1 -1
  402. package/dist/types/components/stable/gux-form-field/components/gux-form-field-checkbox/gux-form-field-checkbox.d.ts +3 -1
  403. package/dist/types/components/stable/gux-form-field/components/gux-form-field-checkbox-group/gux-form-field-checkbox-group.d.ts +45 -0
  404. package/dist/types/components/stable/gux-form-field/components/gux-form-field-checkbox-group/gux-form-field-checkbox-group.service.d.ts +6 -0
  405. package/dist/types/components.d.ts +25 -0
  406. package/dist/types/stencil-wrapper.d.ts +1 -1
  407. package/package.json +1 -1
  408. package/dist/genesys-webcomponents/p-1197355a.entry.js +0 -1
  409. package/dist/genesys-webcomponents/p-157eade8.entry.js +0 -1
  410. package/dist/genesys-webcomponents/p-1e1c0327.entry.js +0 -1
  411. package/dist/genesys-webcomponents/p-32613acf.entry.js +0 -1
  412. package/dist/genesys-webcomponents/p-4ebb18e1.entry.js +0 -1
  413. package/dist/genesys-webcomponents/p-515656df.entry.js +0 -1
  414. package/dist/genesys-webcomponents/p-6d3976eb.entry.js +0 -1
  415. package/dist/genesys-webcomponents/p-6eede9b1.entry.js +0 -1
  416. package/dist/genesys-webcomponents/p-74d4ff7e.entry.js +0 -1
  417. package/dist/genesys-webcomponents/p-869ef845.entry.js +0 -1
  418. package/dist/genesys-webcomponents/p-8f9d2343.entry.js +0 -1
  419. package/dist/genesys-webcomponents/p-9df3d610.entry.js +0 -1
  420. package/dist/genesys-webcomponents/p-ac946c41.entry.js +0 -1
  421. package/dist/genesys-webcomponents/p-d6c4f75d.entry.js +0 -1
@@ -27,8 +27,10 @@ export class GuxFormFieldCheckbox {
27
27
  constructor() {
28
28
  this.labelPosition = 'beside';
29
29
  this.disabled = undefined;
30
- this.hasError = false;
31
30
  this.hasHelp = false;
31
+ this.hasError = false;
32
+ this.hasGroupError = false;
33
+ this.hasGroupDisabled = false;
32
34
  }
33
35
  onMutation() {
34
36
  this.hasError = hasSlot(this.root, 'error');
@@ -46,16 +48,19 @@ export class GuxFormFieldCheckbox {
46
48
  }
47
49
  }
48
50
  render() {
49
- return (h(Host, { key: 'dee0442f1e572b4d987e3b5a0560de13622453b1', class: {
50
- 'gux-input-error': this.hasError,
51
+ return (h(Host, { key: '622c07b7f2a3b0c783cd9182d3d562da22c36a5b', class: {
52
+ 'gux-input-error': this.hasError || this.hasGroupError,
51
53
  'gux-disabled': this.disabled
52
- } }, h("div", { key: '0928db5746d7bbce8210cc75ab5ab2d95a05fdcd', class: "gux-form-field-container" }, h("div", { key: '783384edaee35f8bce42b1a048001e6e73e0892d', class: "gux-input-label" }, h("div", { key: '7407bc64c2870a2c900d3ec1a166a569d947ed76', class: "gux-input" }, h("slot", { key: 'a8e3e79c4a4f3ca18d2b44c81e319f7ec25e9f0c', name: "input", onSlotchange: () => this.setInput() })), h("div", { key: 'e532eb9aa6932518eb55a35b93e0e6867a6f886e', class: `gux-label-${this.labelPosition}` }, h("slot", { key: '0dd9ad2ca420a8a5876dfd309e09c6eac5318829', name: "label" }))), h("div", { key: 'e212774341421a73caed19db23bac5d805a1a573', class: "error-and-help-text" }, h(GuxFormFieldError, { key: 'f6617a568e74bfa5e696253315852187d2f064be', show: this.hasError }, h("slot", { key: '745b35f338ee3f3bd58151623e134722eea239e5', name: "error" })), h(GuxFormFieldHelp, { key: '1ffae08152920fb4847fa01c5d0ca64db35048f4', show: !this.hasError && this.hasHelp }, h("slot", { key: 'dba436e95dbc3b789b4dd598f5a87bfa4361ad17', name: "help" }))))));
54
+ } }, h("div", { key: '77a9517374fcf81df91a17a08fb4547a9f91c1f5', class: "gux-form-field-container" }, h("div", { key: '2d26152d3afb47c114f302386335ceb4b158236a', class: "gux-input-label" }, h("div", { key: '9837b0c10ac9412f4cfc2abc0781de218ddc67e9', class: "gux-input" }, h("slot", { key: '1d91becb705ca706dd5ee34262d0523577db2e2b', name: "input", onSlotchange: () => this.setInput() })), h("div", { key: '7c196bb2951b7d60f9f8ef9ffc37567a2412325b', class: `gux-label-${this.labelPosition}`, "aria-disabled": this.disabled ? 'true' : 'false' }, h("slot", { key: '5a070600ecf9d0ea37f4712aae00a53a2b3bc894', name: "label" }))), h("div", { key: 'b0eb03072ac74483b4f7220625263bb33f4999d0', class: "error-and-help-text" }, h(GuxFormFieldError, { key: 'fb30efdbfafb72a712075fa615c39bd845288503', show: this.hasError }, h("slot", { key: '55d7723528f41384a321ff26f590e1201f0d43d8', name: "error" })), h(GuxFormFieldHelp, { key: '380abf6e2081e998da07191c8f7cd6360fda5c2d', show: !this.hasError && this.hasHelp }, h("slot", { key: '662dea1c9e54e5ef4de3328ae6d3cf1672018650', name: "help" }))))));
53
55
  }
54
56
  get variant() {
55
57
  return this.labelPosition.toLowerCase();
56
58
  }
57
59
  setInput() {
58
60
  this.input = getSlottedInput(this.root, 'input[type="checkbox"][slot="input"]');
61
+ if (this.hasGroupDisabled) {
62
+ this.input.disabled = true;
63
+ }
59
64
  preventBrowserValidationStyling(this.input);
60
65
  this.disabled = calculateInputDisabledState(this.input);
61
66
  this.disabledObserver = onInputDisabledStateChange(this.input, (disabled) => {
@@ -94,14 +99,50 @@ export class GuxFormFieldCheckbox {
94
99
  "attribute": "label-position",
95
100
  "reflect": false,
96
101
  "defaultValue": "'beside'"
102
+ },
103
+ "hasGroupError": {
104
+ "type": "boolean",
105
+ "mutable": false,
106
+ "complexType": {
107
+ "original": "boolean",
108
+ "resolved": "boolean",
109
+ "references": {}
110
+ },
111
+ "required": false,
112
+ "optional": false,
113
+ "docs": {
114
+ "tags": [],
115
+ "text": ""
116
+ },
117
+ "attribute": "has-group-error",
118
+ "reflect": false,
119
+ "defaultValue": "false"
120
+ },
121
+ "hasGroupDisabled": {
122
+ "type": "boolean",
123
+ "mutable": false,
124
+ "complexType": {
125
+ "original": "boolean",
126
+ "resolved": "boolean",
127
+ "references": {}
128
+ },
129
+ "required": false,
130
+ "optional": false,
131
+ "docs": {
132
+ "tags": [],
133
+ "text": ""
134
+ },
135
+ "attribute": "has-group-disabled",
136
+ "reflect": false,
137
+ "defaultValue": "false"
97
138
  }
98
139
  };
99
140
  }
100
141
  static get states() {
101
142
  return {
102
143
  "disabled": {},
103
- "hasError": {},
104
- "hasHelp": {}
144
+ "hasHelp": {},
145
+ "hasError": {}
105
146
  };
106
147
  }
107
148
  static get elementRef() { return "root"; }
@@ -0,0 +1,185 @@
1
+ /* stylelint-disable-next-line selector-class-pattern */ /* stylelint-disable-next-line selector-class-pattern */
2
+ /* stylelint-disable-next-line selector-class-pattern */ /* stylelint-disable-next-line selector-class-pattern */
3
+ /* stylelint-disable-next-line selector-class-pattern */
4
+ .gux-form-field-fieldset-container {
5
+ display: flex;
6
+ min-width: 0;
7
+ padding: 0;
8
+ margin: 0;
9
+ border: none;
10
+ }
11
+ .gux-form-field-fieldset-container.gux-beside {
12
+ flex-direction: row;
13
+ }
14
+ .gux-form-field-fieldset-container.gux-above {
15
+ flex-direction: column;
16
+ }
17
+
18
+ .gux-form-field-error {
19
+ display: none;
20
+ flex-direction: row;
21
+ flex-wrap: nowrap;
22
+ gap: var(--gse-ui-formControl-helper-gap);
23
+ place-content: stretch flex-start;
24
+ align-items: center;
25
+ padding: var(--gse-ui-formControl-helper-errorPadding);
26
+ font-family: var(--gse-ui-formControl-helper-helperText-fontFamily);
27
+ font-size: var(--gse-ui-formControl-helper-helperText-fontSize);
28
+ line-height: var(--gse-ui-formControl-helper-helperText-lineHeight);
29
+ color: var(--gse-ui-formControl-helper-errorColor);
30
+ }
31
+ .gux-form-field-error.gux-show {
32
+ display: flex;
33
+ }
34
+ .gux-form-field-error gux-icon {
35
+ flex: 0 1 auto;
36
+ align-self: start;
37
+ order: 0;
38
+ min-width: var(--gse-ui-icon-size-sm);
39
+ min-height: var(--gse-ui-icon-size-sm);
40
+ color: var(--gse-ui-formControl-helper-errorColor);
41
+ }
42
+ .gux-form-field-error .gux-message {
43
+ flex: 0 1 auto;
44
+ align-self: auto;
45
+ order: 0;
46
+ }
47
+
48
+ .gux-form-field-help {
49
+ display: none;
50
+ flex-direction: row;
51
+ flex-wrap: nowrap;
52
+ place-content: stretch flex-start;
53
+ align-items: flex-start;
54
+ justify-content: flex-start;
55
+ padding: var(--gse-ui-formControl-helper-paddingSmall);
56
+ font-family: var(--gse-ui-formControl-helper-helperText-fontFamily);
57
+ font-size: var(--gse-ui-formControl-helper-helperText-fontSize);
58
+ line-height: var(--gse-ui-formControl-helper-helperText-lineHeight);
59
+ color: var(--gse-ui-formControl-helper-defaultColor);
60
+ }
61
+ .gux-form-field-help.gux-show {
62
+ display: flex;
63
+ }
64
+ .gux-form-field-help .gux-message {
65
+ flex: 0 1 auto;
66
+ align-self: none;
67
+ order: 0;
68
+ }
69
+
70
+ .gux-form-field-error {
71
+ display: none;
72
+ flex-direction: row;
73
+ flex-wrap: nowrap;
74
+ gap: var(--gse-ui-formControl-helper-gap);
75
+ place-content: stretch flex-start;
76
+ align-items: center;
77
+ padding: var(--gse-ui-formControl-helper-errorPadding);
78
+ font-family: var(--gse-ui-formControl-helper-helperText-fontFamily);
79
+ font-size: var(--gse-ui-formControl-helper-helperText-fontSize);
80
+ line-height: var(--gse-ui-formControl-helper-helperText-lineHeight);
81
+ color: var(--gse-ui-formControl-helper-errorColor);
82
+ }
83
+ .gux-form-field-error.gux-show {
84
+ display: flex;
85
+ }
86
+ .gux-form-field-error gux-icon {
87
+ flex: 0 1 auto;
88
+ align-self: start;
89
+ order: 0;
90
+ min-width: var(--gse-ui-icon-size-sm);
91
+ min-height: var(--gse-ui-icon-size-sm);
92
+ color: var(--gse-ui-formControl-helper-errorColor);
93
+ }
94
+ .gux-form-field-error .gux-message {
95
+ flex: 0 1 auto;
96
+ align-self: auto;
97
+ order: 0;
98
+ }
99
+
100
+ .gux-form-field-help {
101
+ display: none;
102
+ flex-direction: row;
103
+ flex-wrap: nowrap;
104
+ place-content: stretch flex-start;
105
+ align-items: flex-start;
106
+ justify-content: flex-start;
107
+ padding: var(--gse-ui-formControl-helper-paddingSmall);
108
+ font-family: var(--gse-ui-formControl-helper-helperText-fontFamily);
109
+ font-size: var(--gse-ui-formControl-helper-helperText-fontSize);
110
+ line-height: var(--gse-ui-formControl-helper-helperText-lineHeight);
111
+ color: var(--gse-ui-formControl-helper-defaultColor);
112
+ }
113
+ .gux-form-field-help.gux-show {
114
+ display: flex;
115
+ }
116
+ .gux-form-field-help .gux-message {
117
+ flex: 0 1 auto;
118
+ align-self: none;
119
+ order: 0;
120
+ }
121
+
122
+ .gux-form-field-visual-label {
123
+ display: inline-flex;
124
+ flex: 1 0 auto;
125
+ }
126
+ .gux-form-field-visual-label ::slotted(gux-label-info-beta) {
127
+ padding-inline-start: var(--gse-ui-formControl-label-gap);
128
+ }
129
+ .gux-form-field-visual-label.gux-required gux-form-field-label-indicator {
130
+ padding-inline-start: var(--gse-ui-formControl-label-gap);
131
+ }
132
+ .gux-form-field-visual-label.gux-beside {
133
+ position: relative;
134
+ top: var(--gse-ui-formControl-input-top);
135
+ width: fit-content;
136
+ min-width: var(--gse-ui-formControl-input-textfield-minWidth);
137
+ max-width: fit-content;
138
+ margin-right: var(--gse-ui-formControl-group-gapItems);
139
+ }
140
+ .gux-form-field-visual-label.gux-above {
141
+ padding: var(--gse-ui-formControl-label-padding);
142
+ }
143
+ .gux-form-field-visual-label.gux-screenreader {
144
+ display: none;
145
+ }
146
+
147
+ .gux-form-field-screenreader-label {
148
+ position: absolute;
149
+ top: auto;
150
+ left: -10000px;
151
+ width: 1px;
152
+ height: 1px;
153
+ overflow: hidden;
154
+ }
155
+
156
+ :host {
157
+ display: block;
158
+ }
159
+
160
+ :host([disabled]) .gux-form-field-legend-label {
161
+ opacity: var(--gse-ui-formControl-input-disabled-opacity);
162
+ }
163
+
164
+ ::slotted(gux-form-field-checkbox) {
165
+ padding-top: var(--gse-ui-formControl-group-gapItems);
166
+ }
167
+
168
+ ::slotted(gux-form-field-checkbox:first-of-type) {
169
+ padding-top: 0;
170
+ }
171
+
172
+ :host(.gux-group-checkbox) ::slotted(gux-form-field-checkbox) {
173
+ padding-left: 24px;
174
+ }
175
+ :host(.gux-group-checkbox) slot[name=group-checkbox]::slotted(gux-form-field-checkbox) {
176
+ padding-left: 0;
177
+ }
178
+
179
+ .gux-form-field-legend-label {
180
+ font-family: var(--gse-ui-formControl-label-text-fontFamily);
181
+ font-size: var(--gse-ui-formControl-label-text-fontSize);
182
+ font-weight: var(--gse-ui-formControl-label-text-fontWeight);
183
+ line-height: var(--gse-ui-formControl-label-text-lineHeight);
184
+ color: var(--gse-ui-formControl-label-labelColor);
185
+ }
@@ -0,0 +1,191 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function")
4
+ r = Reflect.decorate(decorators, target, key, desc);
5
+ else
6
+ for (var i = decorators.length - 1; i >= 0; i--)
7
+ if (d = decorators[i])
8
+ r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
9
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
10
+ };
11
+ import { forceUpdate, h } from "@stencil/core";
12
+ import { OnMutation } from "../../../../../utils/decorator/on-mutation";
13
+ import { hasSlot } from "../../../../../utils/dom/has-slot";
14
+ import { logWarn } from "../../../../../utils/error/log-error";
15
+ import { setAllCheckboxInputs, setParentCheckboxElementCheckedState } from "./gux-form-field-checkbox-group.service";
16
+ import { GuxFormFieldError, GuxFormFieldHelp, GuxFormFieldScreenreaderLabel, GuxFormFieldVisualLabel, GuxFormFieldFieldsetContainer } from "../../functional-components/functional-components";
17
+ import { getSlotTextContent } from "../../../../../utils/dom/get-slot-text-content";
18
+ import { trackComponent } from "../../../../../utils/tracking/usage";
19
+ /**
20
+ * @slot group-label - Required slot for label tag
21
+ * @slot group-checkbox - Optional slot
22
+ * @slot group-error - Optional slot for error message
23
+ * @slot group-help - Optional slot for help message
24
+ */
25
+ export class GuxFormFieldCheckboxGroupBeta {
26
+ constructor() {
27
+ this.hasGroupError = false;
28
+ this.hasGroupHelp = false;
29
+ this.hasGroupLabelInfo = false;
30
+ this.disabled = false;
31
+ }
32
+ watchGroupError(hasGroupError) {
33
+ const checkboxSlots = this.root.querySelectorAll('gux-form-field-checkbox');
34
+ if (checkboxSlots) {
35
+ checkboxSlots.forEach(item => {
36
+ item.hasGroupError = hasGroupError;
37
+ });
38
+ }
39
+ }
40
+ watchDisabled() {
41
+ this.setDisabledCheckboxes();
42
+ }
43
+ onMutation() {
44
+ this.hasGroupError = hasSlot(this.root, 'group-error');
45
+ this.hasGroupHelp = hasSlot(this.root, 'group-help');
46
+ this.hasGroupLabelInfo = hasSlot(this.root, 'group-label-info');
47
+ }
48
+ componentWillLoad() {
49
+ this.hasGroupError = hasSlot(this.root, 'group-error');
50
+ this.hasGroupHelp = hasSlot(this.root, 'group-help');
51
+ this.hasGroupLabelInfo = hasSlot(this.root, 'group-label-info');
52
+ this.setLabel();
53
+ this.setDisabledCheckboxes();
54
+ trackComponent(this.root);
55
+ }
56
+ componentDidLoad() {
57
+ setParentCheckboxElementCheckedState(this.root, this.root.querySelector('gux-form-field-checkbox[slot="group-checkbox"] input'));
58
+ }
59
+ disconnectedCallback() {
60
+ if (this.disabledObserver) {
61
+ this.disabledObserver.disconnect();
62
+ }
63
+ }
64
+ getGroupCheckboxElement() {
65
+ return this.root.querySelector('gux-form-field-checkbox[slot="group-checkbox"] input');
66
+ }
67
+ setDisabledCheckboxes() {
68
+ const checkboxSlots = this.root.querySelectorAll('gux-form-field-checkbox');
69
+ if (checkboxSlots) {
70
+ checkboxSlots.forEach(item => {
71
+ item.hasGroupDisabled = this.disabled;
72
+ });
73
+ }
74
+ }
75
+ onMainCheckboxChange() {
76
+ const groupCheckbox = this.getGroupCheckboxElement();
77
+ setAllCheckboxInputs(this.root, groupCheckbox.checked);
78
+ forceUpdate(this.root);
79
+ }
80
+ setupNestedCheckboxes() {
81
+ this.warnMultipleGroupCheckbox();
82
+ this.warnGroupCheckboxNameAttr();
83
+ const groupCheckbox = this.getGroupCheckboxElement();
84
+ if (groupCheckbox) {
85
+ this.root.classList.add('gux-group-checkbox');
86
+ }
87
+ else {
88
+ this.root.classList.remove('gux-group-checkbox');
89
+ }
90
+ groupCheckbox === null || groupCheckbox === void 0 ? void 0 : groupCheckbox.addEventListener('change', () => {
91
+ this.onMainCheckboxChange();
92
+ });
93
+ this.initialSetNestedCheckboxes(groupCheckbox === null || groupCheckbox === void 0 ? void 0 : groupCheckbox.checked);
94
+ }
95
+ initialSetNestedCheckboxes(groupCheckboxChecked) {
96
+ const checkboxSlots = Array.from(this.root.querySelectorAll('gux-form-field-checkbox input:not(gux-form-field-checkbox[slot="group-checkbox"] input)'));
97
+ if (checkboxSlots === null || checkboxSlots === void 0 ? void 0 : checkboxSlots.length) {
98
+ checkboxSlots.forEach(item => {
99
+ item.addEventListener('change', () => {
100
+ this.updateMainCheckbox();
101
+ });
102
+ if (groupCheckboxChecked && !item.disabled) {
103
+ item.checked = true;
104
+ }
105
+ });
106
+ }
107
+ }
108
+ warnMultipleGroupCheckbox() {
109
+ const groupCheckboxList = this.root.querySelectorAll('gux-form-field-checkbox[slot="group-checkbox"] input');
110
+ if ((groupCheckboxList === null || groupCheckboxList === void 0 ? void 0 : groupCheckboxList.length) > 1) {
111
+ logWarn(this.root, 'Can only have one group checkbox');
112
+ }
113
+ }
114
+ warnGroupCheckboxNameAttr() {
115
+ const groupCheckbox = this.getGroupCheckboxElement();
116
+ if (groupCheckbox === null || groupCheckbox === void 0 ? void 0 : groupCheckbox.hasAttribute('name')) {
117
+ logWarn(this.root, 'Group checkbox should not have a name attribute');
118
+ }
119
+ }
120
+ updateMainCheckbox() {
121
+ setParentCheckboxElementCheckedState(this.root, this.root.querySelector('gux-form-field-checkbox[slot="group-checkbox"] input'));
122
+ forceUpdate(this.root);
123
+ }
124
+ renderText(text, condition = false) {
125
+ if (condition) {
126
+ return ' ' + text;
127
+ }
128
+ }
129
+ render() {
130
+ var _a;
131
+ return (h(GuxFormFieldFieldsetContainer, { key: '71fd89d19477a795bcb43caedf9841294f179ea3', labelPosition: "above" }, h(GuxFormFieldScreenreaderLabel, { key: 'a6ddbcf86c5145d1b207e600ce6f8fbf85bba3b4' }, (_a = this.label) === null || _a === void 0 ? void 0 :
132
+ _a.textContent, this.renderText(getSlotTextContent(this.root, 'group-error'), this.hasGroupError), this.renderText(getSlotTextContent(this.root, 'group-help'), this.hasGroupHelp), this.renderText(getSlotTextContent(this.root, 'group-label-info'), this.hasGroupLabelInfo)), h(GuxFormFieldVisualLabel, { key: '2e1931fb4633b12231f96e974fb3cee990487d1b', position: "above", required: false }, h("slot", { key: 'eaf4cdc9230123ff75052e40246115b369342d61', name: "group-label", onSlotchange: () => this.setLabel() }), h("slot", { key: '308d9770d17ee92aa96314c85ba09b0296af3866', name: "group-label-info" })), h("slot", { key: '1244cae1a7294cf0a559517d6da489d803840604', onSlotchange: () => this.setupNestedCheckboxes(), name: "group-checkbox" }), h("slot", { key: 'c08f355f65c1fa0111b710b04293d32f4a77cb4f', onSlotchange: () => this.updateMainCheckbox() }), h(GuxFormFieldError, { key: 'be714daba2e9e9ea7396558e7b0fde5b894eef85', show: this.hasGroupError }, h("slot", { key: 'b34898b5a5b075d3b7bf4c70fe61ab43e3500478', name: "group-error" })), h(GuxFormFieldHelp, { key: 'a204e871f9fb6b1642a245b5ea619b9b91608e8a', show: !this.hasGroupError && this.hasGroupHelp }, h("slot", { key: '6398b2e744a7368e6fc7873c715d137f6e4bcd7a', name: "group-help" }))));
133
+ }
134
+ setLabel() {
135
+ this.label = this.root.querySelector('label[slot="group-label"]');
136
+ }
137
+ static get is() { return "gux-form-field-checkbox-group-beta"; }
138
+ static get encapsulation() { return "shadow"; }
139
+ static get originalStyleUrls() {
140
+ return {
141
+ "$": ["gux-form-field-checkbox-group.scss"]
142
+ };
143
+ }
144
+ static get styleUrls() {
145
+ return {
146
+ "$": ["gux-form-field-checkbox-group.css"]
147
+ };
148
+ }
149
+ static get properties() {
150
+ return {
151
+ "disabled": {
152
+ "type": "boolean",
153
+ "mutable": false,
154
+ "complexType": {
155
+ "original": "boolean",
156
+ "resolved": "boolean",
157
+ "references": {}
158
+ },
159
+ "required": false,
160
+ "optional": false,
161
+ "docs": {
162
+ "tags": [],
163
+ "text": "Disables the checkboxes in the group."
164
+ },
165
+ "attribute": "disabled",
166
+ "reflect": false,
167
+ "defaultValue": "false"
168
+ }
169
+ };
170
+ }
171
+ static get states() {
172
+ return {
173
+ "hasGroupError": {},
174
+ "hasGroupHelp": {},
175
+ "hasGroupLabelInfo": {}
176
+ };
177
+ }
178
+ static get elementRef() { return "root"; }
179
+ static get watchers() {
180
+ return [{
181
+ "propName": "hasGroupError",
182
+ "methodName": "watchGroupError"
183
+ }, {
184
+ "propName": "disabled",
185
+ "methodName": "watchDisabled"
186
+ }];
187
+ }
188
+ }
189
+ __decorate([
190
+ OnMutation({ childList: true, subtree: true })
191
+ ], GuxFormFieldCheckboxGroupBeta.prototype, "onMutation", null);
@@ -0,0 +1,38 @@
1
+ import simulateNativeEvent from "../../../../../utils/dom/simulate-native-event";
2
+ export function setAllCheckboxInputs(root, checked) {
3
+ getNestedCheckboxInputs(root).forEach(checkboxInput => {
4
+ if (checkboxInput.checked !== checked && !checkboxInput.disabled) {
5
+ checkboxInput.checked = checked;
6
+ simulateNativeEvent(checkboxInput, 'input');
7
+ simulateNativeEvent(checkboxInput, 'change');
8
+ }
9
+ });
10
+ }
11
+ export function setParentCheckboxElementCheckedState(root, mainCheckboxElement) {
12
+ if (mainCheckboxElement) {
13
+ const { checkedCheckboxes, totalCheckboxes } = getSelectedColumnCount(root);
14
+ if (checkedCheckboxes === 0) {
15
+ mainCheckboxElement.indeterminate = false;
16
+ mainCheckboxElement.checked = false;
17
+ }
18
+ else if (checkedCheckboxes === totalCheckboxes) {
19
+ mainCheckboxElement.indeterminate = false;
20
+ mainCheckboxElement.checked = true;
21
+ }
22
+ else {
23
+ mainCheckboxElement.indeterminate = true;
24
+ }
25
+ }
26
+ }
27
+ export function getSelectedColumnCount(root) {
28
+ const totalCheckboxes = getNestedCheckboxInputs(root).length;
29
+ const checkedCheckboxes = getCheckedCheckboxInputs(root).length;
30
+ return { checkedCheckboxes, totalCheckboxes };
31
+ }
32
+ function getNestedCheckboxInputs(root) {
33
+ return Array.from(root.querySelectorAll('gux-form-field-checkbox input:not(gux-form-field-checkbox[slot="group-checkbox"] input'));
34
+ }
35
+ function getCheckedCheckboxInputs(root) {
36
+ const checkboxInputs = getNestedCheckboxInputs(root);
37
+ return checkboxInputs.filter(x => x.checked);
38
+ }