genesys-spark-components 3.28.1 → 3.29.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 (323) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cjs/genesys-webcomponents.cjs.js +1 -1
  3. package/dist/cjs/gux-accordion-legacy.cjs.entry.js +1 -1
  4. package/dist/cjs/gux-accordion.cjs.entry.js +1 -1
  5. package/dist/cjs/gux-action-button-legacy.cjs.entry.js +1 -1
  6. package/dist/cjs/gux-action-button.cjs.entry.js +1 -1
  7. package/dist/cjs/gux-action-list-legacy.cjs.entry.js +1 -1
  8. package/dist/cjs/gux-action-toast.cjs.entry.js +1 -1
  9. package/dist/cjs/gux-advanced-dropdown.cjs.entry.js +1 -1
  10. package/dist/cjs/gux-announce-beta.cjs.entry.js +1 -1
  11. package/dist/cjs/gux-badge-beta.cjs.entry.js +1 -1
  12. package/dist/cjs/gux-blank-state-beta.cjs.entry.js +1 -1
  13. package/dist/cjs/gux-breadcrumbs.cjs.entry.js +1 -1
  14. package/dist/cjs/gux-button-multi-legacy.cjs.entry.js +1 -1
  15. package/dist/cjs/gux-button-multi.cjs.entry.js +1 -1
  16. package/dist/cjs/gux-button-slot-beta.cjs.entry.js +1 -1
  17. package/dist/cjs/gux-button.cjs.entry.js +1 -1
  18. package/dist/cjs/gux-calendar.cjs.entry.js +1 -1
  19. package/dist/cjs/gux-card-beta.cjs.entry.js +1 -1
  20. package/dist/cjs/gux-chart-column-beta.cjs.entry.js +1 -1
  21. package/dist/cjs/gux-chart-donut-beta.cjs.entry.js +1 -1
  22. package/dist/cjs/gux-chart-line-beta.cjs.entry.js +1 -1
  23. package/dist/cjs/gux-chart-pie-beta.cjs.entry.js +1 -1
  24. package/dist/cjs/gux-chart-scatter-plot-beta.cjs.entry.js +1 -1
  25. package/dist/cjs/gux-command-palette-legacy.cjs.entry.js +1 -1
  26. package/dist/cjs/gux-content-search.cjs.entry.js +1 -1
  27. package/dist/cjs/gux-copy-to-clipboard-beta.cjs.entry.js +1 -1
  28. package/dist/cjs/gux-date-beta.cjs.entry.js +1 -1
  29. package/dist/cjs/gux-date-time-beta.cjs.entry.js +1 -1
  30. package/dist/cjs/gux-datepicker.cjs.entry.js +1 -1
  31. package/dist/cjs/gux-disclosure-button.cjs.entry.js +1 -1
  32. package/dist/cjs/gux-dismiss-button.cjs.entry.js +1 -1
  33. package/dist/cjs/gux-dropdown-legacy.cjs.entry.js +1 -1
  34. package/dist/cjs/gux-dropdown-multi-beta.cjs.entry.js +1 -1
  35. package/dist/cjs/gux-dropdown_3.cjs.entry.js +1 -1
  36. package/dist/cjs/gux-error-message-beta.cjs.entry.js +1 -1
  37. package/dist/cjs/gux-flyout-menu-beta.cjs.entry.js +1 -1
  38. package/dist/cjs/gux-form-field-checkbox.cjs.entry.js +1 -1
  39. package/dist/cjs/gux-form-field-color.cjs.entry.js +1 -1
  40. package/dist/cjs/gux-form-field-dropdown.cjs.entry.js +1 -1
  41. package/dist/cjs/gux-form-field-input-clear-button.cjs.entry.js +1 -1
  42. package/dist/cjs/gux-form-field-legacy.cjs.entry.js +1 -1
  43. package/dist/cjs/gux-form-field-number.cjs.entry.js +1 -1
  44. package/dist/cjs/gux-form-field-radio.cjs.entry.js +1 -1
  45. package/dist/cjs/gux-form-field-range.cjs.entry.js +1 -1
  46. package/dist/cjs/gux-form-field-search.cjs.entry.js +1 -1
  47. package/dist/cjs/gux-form-field-select.cjs.entry.js +1 -1
  48. package/dist/cjs/gux-form-field-text-like.cjs.entry.js +1 -1
  49. package/dist/cjs/gux-form-field-textarea.cjs.entry.js +1 -1
  50. package/dist/cjs/gux-icon.cjs.entry.js +1 -1
  51. package/dist/cjs/gux-list-item-legacy_2.cjs.entry.js +1 -1
  52. package/dist/cjs/gux-list.cjs.entry.js +8 -51
  53. package/dist/cjs/gux-list.service-59f2b3e7.js +51 -0
  54. package/dist/cjs/gux-listbox-multi.cjs.entry.js +1 -1
  55. package/dist/cjs/gux-loading-message-beta.cjs.entry.js +1 -1
  56. package/dist/cjs/gux-modal.cjs.entry.js +1 -1
  57. package/dist/cjs/gux-month-calendar.cjs.entry.js +137 -0
  58. package/dist/cjs/gux-month-list_2.cjs.entry.js +89 -0
  59. package/dist/cjs/gux-month-picker-beta.cjs.entry.js +222 -0
  60. package/dist/cjs/gux-notification-toast.cjs.entry.js +1 -1
  61. package/dist/cjs/gux-page-loading-spinner.cjs.entry.js +1 -1
  62. package/dist/cjs/gux-pagination-beta.cjs.entry.js +1 -1
  63. package/dist/cjs/gux-pagination-cursor.cjs.entry.js +1 -1
  64. package/dist/cjs/gux-pagination.cjs.entry.js +1 -1
  65. package/dist/cjs/gux-panel-frame-legacy.cjs.entry.js +1 -1
  66. package/dist/cjs/gux-popover-list.cjs.entry.js +1 -1
  67. package/dist/cjs/gux-popover.cjs.entry.js +1 -1
  68. package/dist/cjs/gux-radial-loading.cjs.entry.js +1 -1
  69. package/dist/cjs/gux-radial-progress.cjs.entry.js +1 -1
  70. package/dist/cjs/gux-rating.cjs.entry.js +1 -1
  71. package/dist/cjs/gux-side-panel-legacy.cjs.entry.js +1 -1
  72. package/dist/cjs/gux-simple-toast.cjs.entry.js +1 -1
  73. package/dist/cjs/gux-skip-navigation-list-beta.cjs.entry.js +1 -1
  74. package/dist/cjs/gux-sort-control.cjs.entry.js +1 -1
  75. package/dist/cjs/gux-switch.cjs.entry.js +1 -1
  76. package/dist/cjs/gux-table-beta.cjs.entry.js +1 -1
  77. package/dist/cjs/gux-tabs-advanced.cjs.entry.js +1 -1
  78. package/dist/cjs/gux-tabs-legacy.cjs.entry.js +1 -1
  79. package/dist/cjs/gux-tabs.cjs.entry.js +1 -1
  80. package/dist/cjs/gux-tag-beta.cjs.entry.js +1 -1
  81. package/dist/cjs/gux-text-highlight.cjs.entry.js +1 -1
  82. package/dist/cjs/gux-text-label-legacy.cjs.entry.js +1 -1
  83. package/dist/cjs/gux-time-beta.cjs.entry.js +1 -1
  84. package/dist/cjs/gux-time-picker-beta.cjs.entry.js +1 -1
  85. package/dist/cjs/gux-toggle.cjs.entry.js +1 -1
  86. package/dist/cjs/gux-tooltip.cjs.entry.js +1 -1
  87. package/dist/cjs/gux-visualization-beta.cjs.entry.js +1 -1
  88. package/dist/cjs/index-262c2e3a.js +16 -4
  89. package/dist/cjs/loader.cjs.js +1 -1
  90. package/dist/cjs/{usage-tracking-fdbd0b75.js → usage-tracking-a1b34de9.js} +1 -1
  91. package/dist/cjs/year-month-values-080373aa.js +24 -0
  92. package/dist/collection/collection-manifest.json +4 -0
  93. package/dist/collection/components/beta/gux-month-picker/gux-month-calendar/gux-month-calendar.css +78 -0
  94. package/dist/collection/components/beta/gux-month-picker/gux-month-calendar/gux-month-calendar.js +237 -0
  95. package/dist/collection/components/beta/gux-month-picker/gux-month-calendar/gux-month-list/gux-month-list-item/gux-month-list-item.css +52 -0
  96. package/dist/collection/components/beta/gux-month-picker/gux-month-calendar/gux-month-list/gux-month-list-item/gux-month-list-item.js +110 -0
  97. package/dist/collection/components/beta/gux-month-picker/gux-month-calendar/gux-month-list/gux-month-list.css +8 -0
  98. package/dist/collection/components/beta/gux-month-picker/gux-month-calendar/gux-month-list/gux-month-list.js +80 -0
  99. package/dist/collection/components/beta/gux-month-picker/gux-month-picker.css +58 -0
  100. package/dist/collection/components/beta/gux-month-picker/gux-month-picker.js +313 -0
  101. package/dist/collection/components/stable/gux-list/gux-list.js +6 -5
  102. package/dist/collection/components/stable/gux-list/gux-list.service.js +19 -20
  103. package/dist/collection/utils/date/year-month-values.js +13 -0
  104. package/dist/collection/utils/dom/after-render.js +3 -0
  105. package/dist/deploy-info.json +3 -3
  106. package/dist/esm/genesys-webcomponents.js +1 -1
  107. package/dist/esm/gux-accordion-legacy.entry.js +1 -1
  108. package/dist/esm/gux-accordion.entry.js +1 -1
  109. package/dist/esm/gux-action-button-legacy.entry.js +1 -1
  110. package/dist/esm/gux-action-button.entry.js +1 -1
  111. package/dist/esm/gux-action-list-legacy.entry.js +1 -1
  112. package/dist/esm/gux-action-toast.entry.js +1 -1
  113. package/dist/esm/gux-advanced-dropdown.entry.js +1 -1
  114. package/dist/esm/gux-announce-beta.entry.js +1 -1
  115. package/dist/esm/gux-badge-beta.entry.js +1 -1
  116. package/dist/esm/gux-blank-state-beta.entry.js +1 -1
  117. package/dist/esm/gux-breadcrumbs.entry.js +1 -1
  118. package/dist/esm/gux-button-multi-legacy.entry.js +1 -1
  119. package/dist/esm/gux-button-multi.entry.js +1 -1
  120. package/dist/esm/gux-button-slot-beta.entry.js +1 -1
  121. package/dist/esm/gux-button.entry.js +1 -1
  122. package/dist/esm/gux-calendar.entry.js +1 -1
  123. package/dist/esm/gux-card-beta.entry.js +1 -1
  124. package/dist/esm/gux-chart-column-beta.entry.js +1 -1
  125. package/dist/esm/gux-chart-donut-beta.entry.js +1 -1
  126. package/dist/esm/gux-chart-line-beta.entry.js +1 -1
  127. package/dist/esm/gux-chart-pie-beta.entry.js +1 -1
  128. package/dist/esm/gux-chart-scatter-plot-beta.entry.js +1 -1
  129. package/dist/esm/gux-command-palette-legacy.entry.js +1 -1
  130. package/dist/esm/gux-content-search.entry.js +1 -1
  131. package/dist/esm/gux-copy-to-clipboard-beta.entry.js +1 -1
  132. package/dist/esm/gux-date-beta.entry.js +1 -1
  133. package/dist/esm/gux-date-time-beta.entry.js +1 -1
  134. package/dist/esm/gux-datepicker.entry.js +1 -1
  135. package/dist/esm/gux-disclosure-button.entry.js +1 -1
  136. package/dist/esm/gux-dismiss-button.entry.js +1 -1
  137. package/dist/esm/gux-dropdown-legacy.entry.js +1 -1
  138. package/dist/esm/gux-dropdown-multi-beta.entry.js +1 -1
  139. package/dist/esm/gux-dropdown_3.entry.js +1 -1
  140. package/dist/esm/gux-error-message-beta.entry.js +1 -1
  141. package/dist/esm/gux-flyout-menu-beta.entry.js +1 -1
  142. package/dist/esm/gux-form-field-checkbox.entry.js +1 -1
  143. package/dist/esm/gux-form-field-color.entry.js +1 -1
  144. package/dist/esm/gux-form-field-dropdown.entry.js +1 -1
  145. package/dist/esm/gux-form-field-input-clear-button.entry.js +1 -1
  146. package/dist/esm/gux-form-field-legacy.entry.js +1 -1
  147. package/dist/esm/gux-form-field-number.entry.js +1 -1
  148. package/dist/esm/gux-form-field-radio.entry.js +1 -1
  149. package/dist/esm/gux-form-field-range.entry.js +1 -1
  150. package/dist/esm/gux-form-field-search.entry.js +1 -1
  151. package/dist/esm/gux-form-field-select.entry.js +1 -1
  152. package/dist/esm/gux-form-field-text-like.entry.js +1 -1
  153. package/dist/esm/gux-form-field-textarea.entry.js +1 -1
  154. package/dist/esm/gux-icon.entry.js +1 -1
  155. package/dist/esm/gux-list-item-legacy_2.entry.js +1 -1
  156. package/dist/esm/gux-list.entry.js +8 -51
  157. package/dist/esm/gux-list.service-66b8540f.js +45 -0
  158. package/dist/esm/gux-listbox-multi.entry.js +1 -1
  159. package/dist/esm/gux-loading-message-beta.entry.js +1 -1
  160. package/dist/esm/gux-modal.entry.js +1 -1
  161. package/dist/esm/gux-month-calendar.entry.js +133 -0
  162. package/dist/esm/gux-month-list_2.entry.js +84 -0
  163. package/dist/esm/gux-month-picker-beta.entry.js +218 -0
  164. package/dist/esm/gux-notification-toast.entry.js +1 -1
  165. package/dist/esm/gux-page-loading-spinner.entry.js +1 -1
  166. package/dist/esm/gux-pagination-beta.entry.js +1 -1
  167. package/dist/esm/gux-pagination-cursor.entry.js +1 -1
  168. package/dist/esm/gux-pagination.entry.js +1 -1
  169. package/dist/esm/gux-panel-frame-legacy.entry.js +1 -1
  170. package/dist/esm/gux-popover-list.entry.js +1 -1
  171. package/dist/esm/gux-popover.entry.js +1 -1
  172. package/dist/esm/gux-radial-loading.entry.js +1 -1
  173. package/dist/esm/gux-radial-progress.entry.js +1 -1
  174. package/dist/esm/gux-rating.entry.js +1 -1
  175. package/dist/esm/gux-side-panel-legacy.entry.js +1 -1
  176. package/dist/esm/gux-simple-toast.entry.js +1 -1
  177. package/dist/esm/gux-skip-navigation-list-beta.entry.js +1 -1
  178. package/dist/esm/gux-sort-control.entry.js +1 -1
  179. package/dist/esm/gux-switch.entry.js +1 -1
  180. package/dist/esm/gux-table-beta.entry.js +1 -1
  181. package/dist/esm/gux-tabs-advanced.entry.js +1 -1
  182. package/dist/esm/gux-tabs-legacy.entry.js +1 -1
  183. package/dist/esm/gux-tabs.entry.js +1 -1
  184. package/dist/esm/gux-tag-beta.entry.js +1 -1
  185. package/dist/esm/gux-text-highlight.entry.js +1 -1
  186. package/dist/esm/gux-text-label-legacy.entry.js +1 -1
  187. package/dist/esm/gux-time-beta.entry.js +1 -1
  188. package/dist/esm/gux-time-picker-beta.entry.js +1 -1
  189. package/dist/esm/gux-toggle.entry.js +1 -1
  190. package/dist/esm/gux-tooltip.entry.js +1 -1
  191. package/dist/esm/gux-visualization-beta.entry.js +1 -1
  192. package/dist/esm/index-74e605ae.js +16 -4
  193. package/dist/esm/loader.js +1 -1
  194. package/dist/esm/{usage-tracking-46be00a6.js → usage-tracking-3a58b2cb.js} +1 -1
  195. package/dist/esm/year-month-values-8f78277c.js +19 -0
  196. package/dist/genesys-webcomponents/genesys-webcomponents.esm.js +1 -1
  197. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ar.json +1 -1
  198. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.cs.json +1 -1
  199. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.da.json +1 -1
  200. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.de.json +1 -1
  201. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.en.json +1 -1
  202. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.es-es.json +1 -1
  203. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.es.json +1 -1
  204. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.fi.json +1 -1
  205. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.fr-ca.json +1 -1
  206. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.fr.json +1 -1
  207. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.he.json +1 -1
  208. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.it.json +1 -1
  209. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ja.json +1 -1
  210. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ko.json +1 -1
  211. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.nl.json +1 -1
  212. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.no.json +1 -1
  213. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pl.json +1 -1
  214. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pt-br.json +1 -1
  215. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pt-pt.json +1 -1
  216. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ru.json +1 -1
  217. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.sv.json +1 -1
  218. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.th.json +1 -1
  219. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.tr.json +1 -1
  220. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.zh-cn.json +1 -1
  221. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.zh-tw.json +1 -1
  222. package/dist/genesys-webcomponents/p-0309337a.entry.js +1 -0
  223. package/dist/genesys-webcomponents/{p-8af73166.entry.js → p-05d8867d.entry.js} +1 -1
  224. package/dist/genesys-webcomponents/{p-f26dbeea.entry.js → p-097ebac8.entry.js} +1 -1
  225. package/dist/genesys-webcomponents/{p-6fb51534.entry.js → p-0ac85f85.entry.js} +1 -1
  226. package/dist/genesys-webcomponents/{p-8fa57a6e.entry.js → p-0f3b197c.entry.js} +1 -1
  227. package/dist/genesys-webcomponents/{p-14ec6c9c.entry.js → p-1193eea0.entry.js} +1 -1
  228. package/dist/genesys-webcomponents/{p-234c5db2.entry.js → p-14252d82.entry.js} +1 -1
  229. package/dist/genesys-webcomponents/{p-79cd1f7c.entry.js → p-147f5ce5.entry.js} +1 -1
  230. package/dist/genesys-webcomponents/{p-0865de46.entry.js → p-155a7a20.entry.js} +1 -1
  231. package/dist/genesys-webcomponents/{p-2141eaf6.entry.js → p-1665f72d.entry.js} +1 -1
  232. package/dist/genesys-webcomponents/{p-931f15f9.entry.js → p-1717f300.entry.js} +1 -1
  233. package/dist/genesys-webcomponents/{p-2c976c87.entry.js → p-186ab617.entry.js} +1 -1
  234. package/dist/genesys-webcomponents/{p-82084612.entry.js → p-1bab4f2d.entry.js} +1 -1
  235. package/dist/genesys-webcomponents/{p-8a0126f5.entry.js → p-22c9f5fc.entry.js} +1 -1
  236. package/dist/genesys-webcomponents/p-25ea189a.entry.js +1 -0
  237. package/dist/genesys-webcomponents/p-26fd3d6f.entry.js +1 -0
  238. package/dist/genesys-webcomponents/{p-b0e62919.entry.js → p-3110951a.entry.js} +1 -1
  239. package/dist/genesys-webcomponents/{p-f181e612.entry.js → p-321ef965.entry.js} +1 -1
  240. package/dist/genesys-webcomponents/p-3834e291.js +1 -0
  241. package/dist/genesys-webcomponents/{p-5401dfc0.entry.js → p-41627e97.entry.js} +1 -1
  242. package/dist/genesys-webcomponents/{p-26fc0da4.entry.js → p-43d4998c.entry.js} +1 -1
  243. package/dist/genesys-webcomponents/{p-bc35f447.entry.js → p-45b2e9ab.entry.js} +1 -1
  244. package/dist/genesys-webcomponents/p-48ba3e1f.entry.js +1 -0
  245. package/dist/genesys-webcomponents/{p-a729709c.entry.js → p-4a276707.entry.js} +1 -1
  246. package/dist/genesys-webcomponents/{p-aa83200a.entry.js → p-4aed9d1d.entry.js} +1 -1
  247. package/dist/genesys-webcomponents/{p-d9273500.entry.js → p-4d0dfe2f.entry.js} +1 -1
  248. package/dist/genesys-webcomponents/{p-859f8520.entry.js → p-4d0fab65.entry.js} +1 -1
  249. package/dist/genesys-webcomponents/{p-5f5b2b3c.entry.js → p-4f514bc3.entry.js} +1 -1
  250. package/dist/genesys-webcomponents/{p-6b79316e.entry.js → p-50c1f2be.entry.js} +1 -1
  251. package/dist/genesys-webcomponents/{p-a0107b6c.entry.js → p-52c0ef2c.entry.js} +1 -1
  252. package/dist/genesys-webcomponents/{p-937a6d91.entry.js → p-5563cdd3.entry.js} +1 -1
  253. package/dist/genesys-webcomponents/{p-b04864d8.entry.js → p-5669156b.entry.js} +1 -1
  254. package/dist/genesys-webcomponents/{p-3293bcd4.entry.js → p-598a1c4b.entry.js} +1 -1
  255. package/dist/genesys-webcomponents/{p-304e0862.entry.js → p-5aab9b69.entry.js} +1 -1
  256. package/dist/genesys-webcomponents/{p-0af6d48d.entry.js → p-5bd6e8e7.entry.js} +1 -1
  257. package/dist/genesys-webcomponents/{p-de096ab1.entry.js → p-6029a142.entry.js} +1 -1
  258. package/dist/genesys-webcomponents/{p-27df379b.entry.js → p-669a61ca.entry.js} +1 -1
  259. package/dist/genesys-webcomponents/{p-d0a93fe4.entry.js → p-6bf45984.entry.js} +1 -1
  260. package/dist/genesys-webcomponents/p-6e435cd2.entry.js +1 -0
  261. package/dist/genesys-webcomponents/{p-bf9f594a.entry.js → p-6f42eb51.entry.js} +1 -1
  262. package/dist/genesys-webcomponents/{p-6b949537.entry.js → p-6f4bd858.entry.js} +1 -1
  263. package/dist/genesys-webcomponents/{p-d7ac501e.entry.js → p-714f65a0.entry.js} +1 -1
  264. package/dist/genesys-webcomponents/{p-316644c4.entry.js → p-71ea36d7.entry.js} +1 -1
  265. package/dist/genesys-webcomponents/{p-cd3d0d81.entry.js → p-74ee2e23.entry.js} +1 -1
  266. package/dist/genesys-webcomponents/p-76ea901a.entry.js +1 -0
  267. package/dist/genesys-webcomponents/{p-38ee2e49.entry.js → p-7789513a.entry.js} +1 -1
  268. package/dist/genesys-webcomponents/{p-c97a9e26.entry.js → p-79a47484.entry.js} +1 -1
  269. package/dist/genesys-webcomponents/{p-8c3a1214.entry.js → p-7effb09b.entry.js} +1 -1
  270. package/dist/genesys-webcomponents/{p-4820e3f0.entry.js → p-8009fdc9.entry.js} +1 -1
  271. package/dist/genesys-webcomponents/p-813cb992.entry.js +1 -0
  272. package/dist/genesys-webcomponents/{p-ebf8fc92.entry.js → p-83cc0e17.entry.js} +1 -1
  273. package/dist/genesys-webcomponents/{p-89f07504.entry.js → p-8b1a96cc.entry.js} +1 -1
  274. package/dist/genesys-webcomponents/p-8d32b63a.entry.js +1 -0
  275. package/dist/genesys-webcomponents/{p-ae905df6.entry.js → p-8da54237.entry.js} +1 -1
  276. package/dist/genesys-webcomponents/{p-d0593bd7.entry.js → p-8e106004.entry.js} +1 -1
  277. package/dist/genesys-webcomponents/{p-3d929811.js → p-967a5d2e.js} +1 -1
  278. package/dist/genesys-webcomponents/{p-42861cb8.entry.js → p-99898e32.entry.js} +1 -1
  279. package/dist/genesys-webcomponents/{p-ab9af704.entry.js → p-9b2607c2.entry.js} +1 -1
  280. package/dist/genesys-webcomponents/{p-3c75f89e.entry.js → p-a6466fec.entry.js} +1 -1
  281. package/dist/genesys-webcomponents/{p-a40c1008.entry.js → p-b0b469b7.entry.js} +1 -1
  282. package/dist/genesys-webcomponents/{p-93d81f58.entry.js → p-b1a0e8f9.entry.js} +1 -1
  283. package/dist/genesys-webcomponents/{p-fe24975e.entry.js → p-b3fc31d2.entry.js} +1 -1
  284. package/dist/genesys-webcomponents/{p-a0ea94b2.entry.js → p-b5ff9be4.entry.js} +1 -1
  285. package/dist/genesys-webcomponents/{p-fb03513b.entry.js → p-b6db9f14.entry.js} +1 -1
  286. package/dist/genesys-webcomponents/{p-f7c5034c.entry.js → p-b72ece98.entry.js} +1 -1
  287. package/dist/genesys-webcomponents/{p-1a0cbfe3.entry.js → p-bd5c79d9.entry.js} +1 -1
  288. package/dist/genesys-webcomponents/{p-4e7270a1.entry.js → p-c136bc23.entry.js} +1 -1
  289. package/dist/genesys-webcomponents/{p-01ef9af2.entry.js → p-c5ab5608.entry.js} +1 -1
  290. package/dist/genesys-webcomponents/{p-f8b7c0fe.entry.js → p-cb53f5b2.entry.js} +1 -1
  291. package/dist/genesys-webcomponents/{p-f14a7f30.entry.js → p-cbad82d5.entry.js} +1 -1
  292. package/dist/genesys-webcomponents/{p-9544d8f1.entry.js → p-ccb85246.entry.js} +1 -1
  293. package/dist/genesys-webcomponents/{p-0b573176.entry.js → p-cfc03ea4.entry.js} +1 -1
  294. package/dist/genesys-webcomponents/{p-41b462cf.entry.js → p-d0d09c10.entry.js} +1 -1
  295. package/dist/genesys-webcomponents/{p-1bcac80e.entry.js → p-d695f246.entry.js} +1 -1
  296. package/dist/genesys-webcomponents/{p-1a883b5f.entry.js → p-de6ad54f.entry.js} +1 -1
  297. package/dist/genesys-webcomponents/{p-d445c114.entry.js → p-df4c45b5.entry.js} +1 -1
  298. package/dist/genesys-webcomponents/{p-575361b7.entry.js → p-e6eba280.entry.js} +1 -1
  299. package/dist/genesys-webcomponents/{p-45274359.entry.js → p-e84f7077.entry.js} +1 -1
  300. package/dist/genesys-webcomponents/p-ea91ae27.js +1 -0
  301. package/dist/genesys-webcomponents/{p-2a2ac7a1.entry.js → p-eab68d2f.entry.js} +1 -1
  302. package/dist/genesys-webcomponents/{p-c7abcf5a.entry.js → p-eb9310a8.entry.js} +1 -1
  303. package/dist/genesys-webcomponents/{p-39ba0b61.entry.js → p-ee80c3b5.entry.js} +1 -1
  304. package/dist/genesys-webcomponents/{p-6f63be2e.entry.js → p-f0b4112d.entry.js} +1 -1
  305. package/dist/genesys-webcomponents/{p-914cdf24.entry.js → p-f4450927.entry.js} +1 -1
  306. package/dist/genesys-webcomponents/{p-7fdff30b.entry.js → p-f858d163.entry.js} +1 -1
  307. package/dist/genesys-webcomponents/{p-80590b7e.entry.js → p-fb9ae052.entry.js} +1 -1
  308. package/dist/genesys-webcomponents/{p-8724f0d3.entry.js → p-ffe85168.entry.js} +1 -1
  309. package/dist/stencil-wrapper.js +1 -1
  310. package/dist/types/components/beta/gux-month-picker/gux-month-calendar/gux-month-calendar.d.ts +45 -0
  311. package/dist/types/components/beta/gux-month-picker/gux-month-calendar/gux-month-list/gux-month-list-item/gux-month-list-item.d.ts +12 -0
  312. package/dist/types/components/beta/gux-month-picker/gux-month-calendar/gux-month-list/gux-month-list.d.ts +8 -0
  313. package/dist/types/components/beta/gux-month-picker/gux-month-picker.d.ts +49 -0
  314. package/dist/types/components/stable/gux-list/gux-list.service.d.ts +5 -4
  315. package/dist/types/components.d.ts +114 -0
  316. package/dist/types/utils/date/year-month-values.d.ts +8 -0
  317. package/dist/types/utils/dom/after-render.d.ts +1 -0
  318. package/package.json +1 -1
  319. package/dist/genesys-webcomponents/p-3e106880.entry.js +0 -1
  320. package/dist/genesys-webcomponents/p-57d38071.entry.js +0 -1
  321. package/dist/genesys-webcomponents/p-79929010.entry.js +0 -1
  322. package/dist/genesys-webcomponents/p-7cdec1aa.entry.js +0 -1
  323. package/dist/genesys-webcomponents/p-f7ded51b.entry.js +0 -1
@@ -4,7 +4,7 @@ import { c as calculateInputDisabledState, o as onInputDisabledStateChange } fro
4
4
  import { O as OnMutation } from './on-mutation-26225065.js';
5
5
  import { a as onRequiredChange } from './on-attribute-change-2b01c315.js';
6
6
  import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
7
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
7
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
8
8
  import { s as setInputValue } from './set-input-value-5adeaccc.js';
9
9
  import { s as simulateNativeEvent } from './simulate-native-event-ac69961f.js';
10
10
  import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-92550ff3.js';
@@ -2,7 +2,7 @@ import { r as registerInstance, h, H as Host, g as getElement } from './index-74
2
2
  import { c as calculateInputDisabledState, o as onInputDisabledStateChange } from './on-input-disabled-state-change-3ea76372.js';
3
3
  import { O as OnMutation } from './on-mutation-26225065.js';
4
4
  import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
5
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
5
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
6
6
  import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds } from './gux-form-field.service-debdaed0.js';
7
7
  import './random-html-id-8e3f658c.js';
8
8
  import './log-error-b1a1a086.js';
@@ -3,7 +3,7 @@ import { c as calculateInputDisabledState, o as onInputDisabledStateChange } fro
3
3
  import { O as OnMutation } from './on-mutation-26225065.js';
4
4
  import { a as onRequiredChange } from './on-attribute-change-2b01c315.js';
5
5
  import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
6
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
6
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
7
7
  import { a as GuxFormFieldContainer, G as GuxFormFieldLabel } from './gux-form-field-label-92550ff3.js';
8
8
  import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-debdaed0.js';
9
9
  import './random-html-id-8e3f658c.js';
@@ -3,7 +3,7 @@ import { c as calculateInputDisabledState, o as onInputDisabledStateChange } fro
3
3
  import { O as OnMutation } from './on-mutation-26225065.js';
4
4
  import { a as onRequiredChange } from './on-attribute-change-2b01c315.js';
5
5
  import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
6
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
6
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
7
7
  import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-92550ff3.js';
8
8
  import { h as hasErrorSlot, c as clearInput, G as GuxFormFieldError, a as hasContent, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-debdaed0.js';
9
9
  import './random-html-id-8e3f658c.js';
@@ -3,7 +3,7 @@ import { c as calculateInputDisabledState, o as onInputDisabledStateChange } fro
3
3
  import { O as OnMutation } from './on-mutation-26225065.js';
4
4
  import { a as onRequiredChange } from './on-attribute-change-2b01c315.js';
5
5
  import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
6
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
6
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
7
7
  import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-92550ff3.js';
8
8
  import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-debdaed0.js';
9
9
  import './random-html-id-8e3f658c.js';
@@ -3,7 +3,7 @@ import { c as calculateInputDisabledState, o as onInputDisabledStateChange } fro
3
3
  import { O as OnMutation } from './on-mutation-26225065.js';
4
4
  import { a as onRequiredChange } from './on-attribute-change-2b01c315.js';
5
5
  import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
6
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
6
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
7
7
  import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-92550ff3.js';
8
8
  import { h as hasErrorSlot, a as hasContent, s as setSlotAriaDescribedby, c as clearInput, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-debdaed0.js';
9
9
  import './random-html-id-8e3f658c.js';
@@ -3,7 +3,7 @@ import { c as calculateInputDisabledState, o as onInputDisabledStateChange } fro
3
3
  import { O as OnMutation } from './on-mutation-26225065.js';
4
4
  import { a as onRequiredChange } from './on-attribute-change-2b01c315.js';
5
5
  import { p as preventBrowserValidationStyling } from './prevent-browser-validation-styling-d16c3f4c.js';
6
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
6
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
7
7
  import { G as GuxFormFieldLabel, a as GuxFormFieldContainer } from './gux-form-field-label-92550ff3.js';
8
8
  import { h as hasErrorSlot, G as GuxFormFieldError, v as validateFormIds, g as getComputedLabelPosition } from './gux-form-field.service-debdaed0.js';
9
9
  import './random-html-id-8e3f658c.js';
@@ -1,5 +1,5 @@
1
1
  import { a as getAssetPath, r as registerInstance, h, g as getElement } from './index-74e605ae.js';
2
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
2
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
3
3
  import { l as logError } from './log-error-b1a1a086.js';
4
4
 
5
5
  const iconNameMap = {
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-74e605ae.js';
2
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
2
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
3
3
 
4
4
  const guxListItemCss = ":host:focus .gux-list-item,:host:active .gux-list-item,:host:hover:not([disabled]) .gux-list-item{color:#fdfdfd;background:#2a60c8}:host(:focus) .gux-list-item,:host(:active) .gux-list-item,:host(:hover:not([disabled])) .gux-list-item{color:#fdfdfd;background:#2a60c8}:host([disabled]) .gux-list-item{pointer-events:none;cursor:default;opacity:0.5}.gux-list-item{display:flex;height:max-content;padding:0 16px;line-height:32px;word-wrap:break-word;cursor:pointer}.gux-list-item .gux-text{width:100%}";
5
5
 
@@ -1,53 +1,10 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-74e605ae.js';
2
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
3
-
4
- const validFocusableItems = ['gux-list-item'];
5
- function getRootChildren(root) {
6
- const slot = root.querySelector('slot');
7
- return slot ? slot.assignedElements() : Array.from(root.children);
8
- }
9
- function getGuxListFocusableItems(root) {
10
- return getRootChildren(root).filter(cv => {
11
- if (validFocusableItems.includes(cv.tagName.toLowerCase())) {
12
- return !cv.disabled;
13
- }
14
- return false;
15
- });
16
- }
17
- function getCurrentFocusIndex(root) {
18
- return getGuxListFocusableItems(root).findIndex(cv => cv.matches(':focus-within'));
19
- }
20
- function focusMove(root, delta) {
21
- const currentFocusIndex = getCurrentFocusIndex(root);
22
- const maxIndex = getGuxListFocusableItems(root).length;
23
- focusIndex(root, (currentFocusIndex + delta) % maxIndex);
24
- }
25
- function focusIndex(root, focusIndex) {
26
- var _a;
27
- const items = getGuxListFocusableItems(root);
28
- while (focusIndex < 0) {
29
- focusIndex += items.length;
30
- }
31
- (_a = items[focusIndex]) === null || _a === void 0 ? void 0 : _a.focus();
32
- }
33
- function getLastChildIndex(root) {
34
- return getGuxListFocusableItems(root).length - 1;
35
- }
36
- function first(root) {
37
- focusIndex(root, 0);
38
- }
39
- function last(root) {
40
- focusIndex(root, getLastChildIndex(root));
41
- }
42
- function next(root) {
43
- focusMove(root, 1);
44
- }
45
- function previous(root) {
46
- focusMove(root, -1);
47
- }
2
+ import { l as last, n as next, f as first, p as previous } from './gux-list.service-66b8540f.js';
3
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
48
4
 
49
5
  const guxListCss = ":host{display:flex;flex-direction:column;flex-wrap:nowrap;align-content:stretch;align-items:flex-start;justify-content:flex-start}";
50
6
 
7
+ const validFocusableItems = ['gux-list-item'];
51
8
  const GuxList = class {
52
9
  constructor(hostRef) {
53
10
  registerInstance(this, hostRef);
@@ -59,25 +16,25 @@ const GuxList = class {
59
16
  switch (event.key) {
60
17
  case 'ArrowUp':
61
18
  event.preventDefault();
62
- previous(this.root);
19
+ previous(this.root, validFocusableItems);
63
20
  break;
64
21
  case 'Home':
65
22
  event.preventDefault();
66
- first(this.root);
23
+ first(this.root, validFocusableItems);
67
24
  break;
68
25
  case 'ArrowDown':
69
26
  event.preventDefault();
70
- next(this.root);
27
+ next(this.root, validFocusableItems);
71
28
  break;
72
29
  case 'End':
73
30
  event.preventDefault();
74
- last(this.root);
31
+ last(this.root, validFocusableItems);
75
32
  break;
76
33
  }
77
34
  }
78
35
  // eslint-disable-next-line @typescript-eslint/require-await
79
36
  async guxFocusFirstItem() {
80
- first(this.root);
37
+ first(this.root, validFocusableItems);
81
38
  }
82
39
  renderFocusTarget() {
83
40
  return (h("span", { tabindex: "-1" }));
@@ -0,0 +1,45 @@
1
+ function getRootChildren(root) {
2
+ const slot = root.querySelector('slot');
3
+ return slot ? slot.assignedElements() : Array.from(root.children);
4
+ }
5
+ function getGuxListFocusableItems(root, validFocusableItems) {
6
+ return getRootChildren(root).filter(cv => {
7
+ if (validFocusableItems.includes(cv.tagName.toLowerCase())) {
8
+ return !cv.disabled;
9
+ }
10
+ return false;
11
+ });
12
+ }
13
+ function getCurrentFocusIndex(root, validFocusableItems) {
14
+ return getGuxListFocusableItems(root, validFocusableItems).findIndex(cv => cv.matches(':focus-within'));
15
+ }
16
+ function focusMove(root, validFocusableItems, delta) {
17
+ const currentFocusIndex = getCurrentFocusIndex(root, validFocusableItems);
18
+ const maxIndex = getGuxListFocusableItems(root, validFocusableItems).length;
19
+ focusIndex(root, validFocusableItems, (currentFocusIndex + delta) % maxIndex);
20
+ }
21
+ function focusIndex(root, validFocusableItems, focusIndex) {
22
+ var _a;
23
+ const items = getGuxListFocusableItems(root, validFocusableItems);
24
+ while (focusIndex < 0) {
25
+ focusIndex += items.length;
26
+ }
27
+ (_a = items[focusIndex]) === null || _a === void 0 ? void 0 : _a.focus();
28
+ }
29
+ function getLastChildIndex(root, validFocusableItems) {
30
+ return getGuxListFocusableItems(root, validFocusableItems).length - 1;
31
+ }
32
+ function first(root, validFocusableItems) {
33
+ focusIndex(root, validFocusableItems, 0);
34
+ }
35
+ function last(root, validFocusableItems) {
36
+ focusIndex(root, validFocusableItems, getLastChildIndex(root, validFocusableItems));
37
+ }
38
+ function next(root, validFocusableItems) {
39
+ focusMove(root, validFocusableItems, 1);
40
+ }
41
+ function previous(root, validFocusableItems) {
42
+ focusMove(root, validFocusableItems, -1);
43
+ }
44
+
45
+ export { focusMove as a, first as f, last as l, next as n, previous as p };
@@ -3,7 +3,7 @@ import { s as setInitialActiveOption, c as clearActiveOptions, a as setLastOptio
3
3
  import { b as buildI18nForComponent } from './index-b8a25b60.js';
4
4
  import { w as whenEventIsFrom } from './when-event-is-from-18667084.js';
5
5
  import { s as simulateNativeEvent } from './simulate-native-event-ac69961f.js';
6
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
6
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
7
7
  import './get-closest-element-1597503c.js';
8
8
 
9
9
  const noMatches = "No matches";
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, d as readTask, h, g as getElement } from './index-74e605ae.js';
2
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
2
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
3
3
 
4
4
  /**
5
5
  * Below are the max-widths for the loading component.
@@ -1,5 +1,5 @@
1
1
  import { r as registerInstance, c as createEvent, h, g as getElement } from './index-74e605ae.js';
2
- import { t as trackComponent } from './usage-tracking-46be00a6.js';
2
+ import { t as trackComponent } from './usage-tracking-3a58b2cb.js';
3
3
 
4
4
  const guxModalCss = ":host .gux-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--gux-zindex-modal, 1);display:flex;align-items:center;justify-content:center;color:#2e394c;background:rgba(32, 41, 55, 0.8)}:host .gux-modal .gux-modal-container{box-shadow:0 8px 24px rgba(32, 41, 55, 0.4);position:relative;box-sizing:border-box;display:flex;flex-direction:column;justify-content:space-between;padding:40px;background:#fdfdfd;border:1px solid #b4bccb;border-radius:4px}:host .gux-modal .gux-modal-container.gux-small{width:416px;max-height:min(368px, 100vh - 2 * 24px)}:host .gux-modal .gux-modal-container.gux-medium{width:672px;max-height:min(640px, 100vh - 2 * 24px)}:host .gux-modal .gux-modal-container.gux-large{width:940px;max-height:min(640px, 100vh - 2 * 24px)}:host .gux-modal .gux-modal-container.gux-dynamic{max-width:calc(100vw - 2 * 24px);max-height:calc(100vh - 2 * 24px)}:host .gux-modal .gux-modal-container.gux-dynamic .gux-modal-content{max-height:none}:host .gux-modal .gux-modal-container .gux-modal-header{padding-bottom:24px;margin:0;font-family:Roboto, sans-serif;font-weight:400;font-weight:300;font-size:24px;line-height:32px}:host .gux-modal .gux-modal-container .gux-modal-content{max-height:432px;margin:0 8px 24px;overflow-y:auto}:host .gux-modal .gux-modal-container .gux-modal-content.gux-no-buttons{margin-bottom:0}:host .gux-modal .gux-modal-container .gux-button-footer{display:flex;justify-content:space-between}:host .gux-modal .gux-modal-container .gux-button-footer .gux-left-align-buttons gux-button{padding-right:5px}:host .gux-modal .gux-modal-container .gux-button-footer .gux-right-align-buttons gux-button{padding-left:5px}@media (max-width: 416px){:host .gux-modal .gux-modal-container.gux-small,:host .gux-modal .gux-modal-container.gux-medium,:host .gux-modal .gux-modal-container.gux-large{width:100%;height:100%}}";
5
5
 
@@ -0,0 +1,133 @@
1
+ import { r as registerInstance, h, g as getElement } from './index-74e605ae.js';
2
+ import { b as buildI18nForComponent, g as getDesiredLocale } from './index-b8a25b60.js';
3
+ import { s as simulateNativeEvent } from './simulate-native-event-ac69961f.js';
4
+ import { g as getYearMonthObject, c as getCurrentISOYearMonth, a as afterRender, b as getISOYearMonth } from './year-month-values-8f78277c.js';
5
+ import './get-closest-element-1597503c.js';
6
+
7
+ const changeYear = "Current year is {currentYear}, Click to change year to {changeYear}";
8
+ const translationResources = {
9
+ changeYear: changeYear
10
+ };
11
+
12
+ const guxMonthCalendarCss = ".gux-month-calendar{flex-wrap:wrap;width:255px;border:1px solid #b4bccb;border-radius:4px;box-shadow:0 2px 4px rgba(32, 41, 55, 0.24)}.gux-month-calendar .gux-year-header{position:relative;display:flex;align-items:center;justify-content:space-between;height:16px;padding:16px;color:#fdfdfd;background-color:#2a60c8;border-top-left-radius:3px;border-top-right-radius:3px}.gux-month-calendar .gux-year-header button{color:#fdfdfd;cursor:pointer;background:none;border:none;outline:none}.gux-month-calendar .gux-year-header button:focus{border-radius:4px;outline:none;box-shadow:0 0 0 1px #fdfdfd, 0 0 0 4px #aac9ff}.gux-month-calendar .gux-year-header button.gux-year-change:disabled{cursor:default;opacity:0.5}.gux-month-calendar .gux-year-header button gux-icon{width:16px;height:16px;pointer-events:none}.gux-month-calendar .gux-year-header .gux-year{font-family:Roboto, sans-serif;font-weight:400;font-weight:700}.gux-month-calendar .gux-months{padding:24px;background-color:#fdfdfd}.gux-month-calendar .gux-months button{width:65px;height:50px;margin:2px;text-align:center;cursor:pointer;background:none;border:none;border-radius:4px;outline:none;font-family:Roboto, sans-serif;font-weight:400;font-size:12px;line-height:20px}.gux-month-calendar .gux-months button:focus{outline:none;box-shadow:0 0 0 1px #fdfdfd, 0 0 0 4px #aac9ff}.gux-month-calendar .gux-months button.gux-selected,.gux-month-calendar .gux-months button:hover{color:#fdfdfd;background-color:#2a60c8}.gux-month-calendar .gux-months button:disabled{color:#596373;pointer-events:none;background-color:#fdfdfd}";
13
+
14
+ const GuxMonthCalendar = class {
15
+ constructor(hostRef) {
16
+ registerInstance(this, hostRef);
17
+ }
18
+ onValueUpdate(newValue) {
19
+ const { year } = getYearMonthObject(newValue);
20
+ this.year = year;
21
+ }
22
+ /**
23
+ * Focus a month
24
+ */
25
+ // eslint-disable-next-line @typescript-eslint/require-await
26
+ async guxFocus(iSOYearMonth) {
27
+ iSOYearMonth = iSOYearMonth || getCurrentISOYearMonth();
28
+ const { year } = getYearMonthObject(iSOYearMonth);
29
+ this.year = year;
30
+ afterRender(() => {
31
+ const target = this.root.shadowRoot.querySelector(`gux-month-list-item[value="${iSOYearMonth}"]`);
32
+ console.log({ target });
33
+ if (target) {
34
+ target.focus();
35
+ }
36
+ });
37
+ }
38
+ async componentWillLoad() {
39
+ this.i18n = await buildI18nForComponent(this.root, translationResources);
40
+ this.locale = getDesiredLocale(this.root);
41
+ if (this.value) {
42
+ this.year = getYearMonthObject(this.value).year;
43
+ }
44
+ else {
45
+ this.year = getYearMonthObject(getCurrentISOYearMonth()).year;
46
+ }
47
+ }
48
+ updateValue(value) {
49
+ this.value = value;
50
+ simulateNativeEvent(this.root, 'input');
51
+ simulateNativeEvent(this.root, 'change');
52
+ }
53
+ isOutOfBounds(value) {
54
+ return (this.max && this.max < value) || (this.min && this.min > value);
55
+ }
56
+ onMonthClick(value) {
57
+ if (this.isOutOfBounds(value)) {
58
+ return;
59
+ }
60
+ this.updateValue(value);
61
+ }
62
+ getMonthAriaLabel(value) {
63
+ const { year, month } = getYearMonthObject(value);
64
+ return new Date(Number(year), Number(month) - 1).toLocaleDateString(this.locale, { year: 'numeric', month: 'long' });
65
+ }
66
+ getYearLabel(year) {
67
+ return new Date(Number(year), 5).toLocaleDateString(this.locale, {
68
+ year: 'numeric'
69
+ });
70
+ }
71
+ isSelectedMonth(value) {
72
+ return value === this.value;
73
+ }
74
+ isAriaSelectedMonth(value) {
75
+ if (this.isSelectedMonth(value)) {
76
+ return 'true';
77
+ }
78
+ return false;
79
+ }
80
+ changeYear(increment) {
81
+ this.year = (parseInt(this.year) + increment).toString();
82
+ }
83
+ isPreviousYearLessThanMinYear(year, minISOYearMonth) {
84
+ return ((parseInt(year) - 1).toString() <
85
+ (minISOYearMonth && getYearMonthObject(minISOYearMonth).year));
86
+ }
87
+ isNextYearGreaterThanMaxYear(year, maxISOYearMonth) {
88
+ return ((parseInt(year) + 1).toString() >
89
+ (maxISOYearMonth && getYearMonthObject(maxISOYearMonth).year));
90
+ }
91
+ getMonthShortName(year, month) {
92
+ return new Date(Number(year), Number(month) - 1).toLocaleDateString(this.locale, { month: 'short' });
93
+ }
94
+ doFocusTrap() {
95
+ if (!this.previousYearElement.disabled) {
96
+ this.previousYearElement.focus();
97
+ }
98
+ if (!this.nextYearElement.disabled) {
99
+ this.nextYearElement.focus();
100
+ }
101
+ this.monthListElement.focus();
102
+ }
103
+ renderHeader() {
104
+ return (h("div", { class: "gux-year-header" }, h("button", { type: "button", class: "gux-year-change", onClick: () => this.changeYear(-1), disabled: this.isPreviousYearLessThanMinYear(this.year, this.min), ref: (el) => (this.previousYearElement = el) }, h("gux-icon", { "icon-name": "chevron-small-left", "screenreader-text": this.i18n('changeYear', {
105
+ currentYear: parseInt(this.year),
106
+ changeYear: parseInt(this.year) - 1
107
+ }) })), h("div", { class: "gux-year" }, this.getYearLabel(this.year)), h("button", { type: "button", class: "gux-year-change", onClick: () => this.changeYear(1), disabled: this.isNextYearGreaterThanMaxYear(this.year, this.max), ref: (el) => (this.nextYearElement = el) }, h("gux-icon", { "icon-name": "chevron-small-right", "screenreader-text": this.i18n('changeYear', {
108
+ currentYear: parseInt(this.year),
109
+ changeYear: parseInt(this.year) + 1
110
+ }) }))));
111
+ }
112
+ renderMonths() {
113
+ const monthButtons = Array.from(new Array(12), (_, i) => String(i + 1).padStart(2, '0')).map(month => {
114
+ const value = getISOYearMonth(this.year, month);
115
+ return (h("gux-month-list-item", { value: value, selected: this.isSelectedMonth(value), "aria-selected": this.isAriaSelectedMonth(value), "aria-label": this.getMonthAriaLabel(value), onClick: () => this.onMonthClick(value), disabled: this.isOutOfBounds(value) }, this.getMonthShortName(this.year, month)));
116
+ });
117
+ return (h("gux-month-list", { tabIndex: 1, ref: (el) => (this.monthListElement = el) }, monthButtons));
118
+ }
119
+ renderTrapFocusEl() {
120
+ return (h("span", { onFocus: () => this.doFocusTrap(), tabindex: "0" }));
121
+ }
122
+ render() {
123
+ return (h("div", { class: "gux-month-calendar" }, this.renderHeader(), this.renderMonths(), this.renderTrapFocusEl()));
124
+ }
125
+ static get delegatesFocus() { return true; }
126
+ get root() { return getElement(this); }
127
+ static get watchers() { return {
128
+ "value": ["onValueUpdate"]
129
+ }; }
130
+ };
131
+ GuxMonthCalendar.style = guxMonthCalendarCss;
132
+
133
+ export { GuxMonthCalendar as gux_month_calendar };
@@ -0,0 +1,84 @@
1
+ import { r as registerInstance, h, H as Host, g as getElement } from './index-74e605ae.js';
2
+ import { l as last, f as first, n as next, p as previous, a as focusMove } from './gux-list.service-66b8540f.js';
3
+ import { g as getClosestElement } from './get-closest-element-1597503c.js';
4
+
5
+ const guxMonthListCss = ":host{display:flex;flex-direction:row;flex-wrap:wrap;padding:12px 16px;background-color:#fdfdfd;border:1px solid #b4bccb}";
6
+
7
+ const validFocusableItems = ['gux-month-list-item'];
8
+ const GuxMonthList = class {
9
+ constructor(hostRef) {
10
+ registerInstance(this, hostRef);
11
+ }
12
+ onKeyDown(event) {
13
+ switch (event.key) {
14
+ case 'ArrowUp':
15
+ event.preventDefault();
16
+ focusMove(this.root, validFocusableItems, -3);
17
+ break;
18
+ case 'ArrowDown':
19
+ event.preventDefault();
20
+ focusMove(this.root, validFocusableItems, 3);
21
+ break;
22
+ case 'ArrowLeft':
23
+ event.preventDefault();
24
+ previous(this.root, validFocusableItems);
25
+ break;
26
+ case 'ArrowRight':
27
+ event.preventDefault();
28
+ next(this.root, validFocusableItems);
29
+ break;
30
+ case 'Home':
31
+ event.preventDefault();
32
+ first(this.root, validFocusableItems);
33
+ break;
34
+ case 'End':
35
+ event.preventDefault();
36
+ last(this.root, validFocusableItems);
37
+ break;
38
+ }
39
+ }
40
+ // eslint-disable-next-line @typescript-eslint/require-await
41
+ async guxFocusFirstItem() {
42
+ first(this.root, validFocusableItems);
43
+ }
44
+ renderFocusTarget() {
45
+ return (h("span", { tabindex: "1" }));
46
+ }
47
+ render() {
48
+ return (h(Host, { role: "list" }, this.renderFocusTarget(), h("slot", null)));
49
+ }
50
+ static get delegatesFocus() { return true; }
51
+ get root() { return getElement(this); }
52
+ };
53
+ GuxMonthList.style = guxMonthListCss;
54
+
55
+ const guxMonthListItemCss = ":host{flex:0 0 33.3%}:host([disabled]){pointer-events:none}:host([disabled='false']){pointer-events:auto}::slotted(gux-icon){width:16px;height:16px;margin-right:8px;vertical-align:middle}.gux-container{padding:4px}.gux-container button{all:unset;box-sizing:border-box;width:100%;height:49px;padding:8px 0;color:#2e394c;text-align:center;word-wrap:break-word;cursor:pointer;border:none;border-radius:4px;outline:none}.gux-container button.gux-selected{color:#fdfdfd;background:#2a60c8}.gux-container button:focus:not(:disabled){outline:none;box-shadow:0 0 0 1px #fdfdfd, 0 0 0 4px #aac9ff}.gux-container button:hover:not(:disabled){color:#fdfdfd;background:#2a60c8}.gux-container button:active:not(:disabled){color:#fdfdfd;background:#2a60c8}.gux-container button:disabled{color:rgba(46, 57, 76, 0.5);cursor:default}";
56
+
57
+ const GuxMonthListItem = class {
58
+ constructor(hostRef) {
59
+ registerInstance(this, hostRef);
60
+ this.disabled = false;
61
+ this.selected = false;
62
+ }
63
+ onMouseup() {
64
+ this.focusParentList();
65
+ }
66
+ onMouseover() {
67
+ this.focusParentList();
68
+ }
69
+ focusParentList() {
70
+ const parentList = getClosestElement('gux-month-list', this.root);
71
+ if (parentList && parentList.shadowRoot.activeElement === null) {
72
+ this.root.blur();
73
+ parentList.focus();
74
+ }
75
+ }
76
+ render() {
77
+ return (h(Host, { role: "listitem", value: this.value }, h("div", { class: "gux-container" }, h("button", { class: { 'gux-selected': this.selected }, type: "button", tabIndex: -1, disabled: this.disabled }, h("slot", null)))));
78
+ }
79
+ static get delegatesFocus() { return true; }
80
+ get root() { return getElement(this); }
81
+ };
82
+ GuxMonthListItem.style = guxMonthListItemCss;
83
+
84
+ export { GuxMonthList as gux_month_list, GuxMonthListItem as gux_month_list_item };