genesys-spark-components 3.2.0 → 3.3.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 (313) hide show
  1. package/CHANGELOG.md +4924 -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 +2 -2
  6. package/dist/cjs/gux-action-button.cjs.entry.js +2 -2
  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 +2 -2
  10. package/dist/cjs/gux-all-row-select.cjs.entry.js +2 -2
  11. package/dist/cjs/gux-badge-beta.cjs.entry.js +2 -2
  12. package/dist/cjs/gux-breadcrumbs.cjs.entry.js +2 -2
  13. package/dist/cjs/gux-button-multi-legacy.cjs.entry.js +1 -1
  14. package/dist/cjs/gux-button-multi.cjs.entry.js +1 -1
  15. package/dist/cjs/gux-button-slot-beta.cjs.entry.js +1 -1
  16. package/dist/cjs/gux-button.cjs.entry.js +1 -1
  17. package/dist/cjs/gux-calendar.cjs.entry.js +2 -2
  18. package/dist/cjs/gux-card-beta.cjs.entry.js +1 -1
  19. package/dist/cjs/gux-chart-column-beta.cjs.entry.js +1 -1
  20. package/dist/cjs/gux-chart-donut-beta.cjs.entry.js +1 -1
  21. package/dist/cjs/gux-chart-line-beta.cjs.entry.js +1 -1
  22. package/dist/cjs/gux-chart-pie-beta.cjs.entry.js +1 -1
  23. package/dist/cjs/gux-chart-scatter-plot-beta.cjs.entry.js +133 -0
  24. package/dist/cjs/gux-command-palette-legacy.cjs.entry.js +2 -2
  25. package/dist/cjs/gux-content-search.cjs.entry.js +2 -2
  26. package/dist/cjs/gux-datepicker.cjs.entry.js +2 -2
  27. package/dist/cjs/gux-disclosure-button.cjs.entry.js +2 -2
  28. package/dist/cjs/gux-dismiss-button.cjs.entry.js +2 -2
  29. package/dist/cjs/gux-dropdown-legacy.cjs.entry.js +1 -1
  30. package/dist/cjs/gux-dropdown_3.cjs.entry.js +2 -2
  31. package/dist/cjs/gux-error-message-beta.cjs.entry.js +1 -1
  32. package/dist/cjs/gux-flyout-menu-beta.cjs.entry.js +1 -1
  33. package/dist/cjs/gux-form-field-checkbox.cjs.entry.js +1 -1
  34. package/dist/cjs/gux-form-field-color.cjs.entry.js +1 -1
  35. package/dist/cjs/gux-form-field-input-clear-button.cjs.entry.js +2 -2
  36. package/dist/cjs/gux-form-field-legacy.cjs.entry.js +1 -1
  37. package/dist/cjs/gux-form-field-number.cjs.entry.js +2 -2
  38. package/dist/cjs/gux-form-field-radio.cjs.entry.js +1 -1
  39. package/dist/cjs/gux-form-field-range.cjs.entry.js +1 -1
  40. package/dist/cjs/gux-form-field-search.cjs.entry.js +1 -1
  41. package/dist/cjs/gux-form-field-select.cjs.entry.js +1 -1
  42. package/dist/cjs/gux-form-field-text-like.cjs.entry.js +1 -1
  43. package/dist/cjs/gux-form-field-textarea.cjs.entry.js +1 -1
  44. package/dist/cjs/gux-icon.cjs.entry.js +1 -1
  45. package/dist/cjs/gux-input-checkbox_7.cjs.entry.js +1 -1
  46. package/dist/cjs/gux-input-search.cjs.entry.js +1 -1
  47. package/dist/cjs/gux-input-text-like.cjs.entry.js +1 -1
  48. package/dist/cjs/gux-list-item-legacy_2.cjs.entry.js +1 -1
  49. package/dist/cjs/gux-list.cjs.entry.js +1 -1
  50. package/dist/cjs/gux-modal.cjs.entry.js +1 -1
  51. package/dist/cjs/gux-notification-toast.cjs.entry.js +1 -1
  52. package/dist/cjs/gux-page-loading-spinner.cjs.entry.js +1 -1
  53. package/dist/cjs/gux-pagination-beta.cjs.entry.js +115 -0
  54. package/dist/cjs/gux-pagination-buttons-beta_3.cjs.entry.js +258 -0
  55. package/dist/cjs/gux-pagination-buttons_3.cjs.entry.js +1 -1
  56. package/dist/cjs/gux-pagination-cursor.cjs.entry.js +2 -2
  57. package/dist/cjs/gux-pagination.cjs.entry.js +1 -1
  58. package/dist/cjs/gux-panel-frame-legacy.cjs.entry.js +1 -1
  59. package/dist/cjs/gux-popover-list.cjs.entry.js +1 -1
  60. package/dist/cjs/gux-popover.cjs.entry.js +1 -1
  61. package/dist/cjs/gux-radial-loading.cjs.entry.js +2 -2
  62. package/dist/cjs/gux-radial-progress.cjs.entry.js +1 -1
  63. package/dist/cjs/gux-rating.cjs.entry.js +1 -1
  64. package/dist/cjs/gux-row-select.cjs.entry.js +2 -2
  65. package/dist/cjs/gux-side-panel-legacy.cjs.entry.js +1 -1
  66. package/dist/cjs/gux-simple-toast.cjs.entry.js +1 -1
  67. package/dist/cjs/gux-switch.cjs.entry.js +1 -1
  68. package/dist/cjs/gux-tab-advanced-list.cjs.entry.js +2 -2
  69. package/dist/cjs/gux-tab-advanced.cjs.entry.js +2 -2
  70. package/dist/cjs/gux-tab-list.cjs.entry.js +2 -2
  71. package/dist/cjs/gux-tab.cjs.entry.js +2 -0
  72. package/dist/cjs/gux-table-beta.cjs.entry.js +2 -2
  73. package/dist/cjs/gux-tabs-advanced.cjs.entry.js +1 -1
  74. package/dist/cjs/gux-tabs-legacy.cjs.entry.js +2 -2
  75. package/dist/cjs/gux-tabs.cjs.entry.js +1 -1
  76. package/dist/cjs/gux-tag-beta.cjs.entry.js +2 -2
  77. package/dist/cjs/gux-text-highlight.cjs.entry.js +1 -1
  78. package/dist/cjs/gux-text-label-legacy.cjs.entry.js +1 -1
  79. package/dist/cjs/gux-time-picker-beta.cjs.entry.js +2 -2
  80. package/dist/cjs/gux-toggle.cjs.entry.js +2 -2
  81. package/dist/cjs/gux-tooltip_2.cjs.entry.js +3 -1
  82. package/dist/cjs/gux-visualization-beta.cjs.entry.js +2 -2
  83. package/dist/cjs/{index-608364a8.js → index-2202ad01.js} +5 -8
  84. package/dist/cjs/loader.cjs.js +1 -1
  85. package/dist/cjs/{usage-tracking-85436ff1.js → usage-tracking-53d21391.js} +1 -1
  86. package/dist/collection/collection-manifest.json +5 -0
  87. package/dist/collection/components/beta/gux-chart-scatter-plot/gux-chart-scatter-plot.css +4 -0
  88. package/dist/collection/components/beta/gux-chart-scatter-plot/gux-chart-scatter-plot.js +344 -0
  89. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-beta.css +39 -0
  90. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-beta.js +225 -0
  91. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-beta.types.js +1 -0
  92. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-buttons-beta/gux-pagination-button-beta.service.js +91 -0
  93. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-buttons-beta/gux-pagination-buttons-beta.css +77 -0
  94. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-buttons-beta/gux-pagination-buttons-beta.js +154 -0
  95. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-item-counts-beta/gux-pagination-item-counts-beta.css +9 -0
  96. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-item-counts-beta/gux-pagination-item-counts-beta.js +102 -0
  97. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-items-per-page-beta/gux-pagination-items-per-page-beta.css +25 -0
  98. package/dist/collection/components/beta/gux-pagination-beta/gux-pagination-items-per-page-beta/gux-pagination-items-per-page-beta.js +85 -0
  99. package/dist/collection/components/beta/gux-table/gux-all-row-select/gux-all-row-select.js +1 -1
  100. package/dist/collection/components/beta/gux-table/gux-row-select/gux-row-select.js +1 -1
  101. package/dist/collection/components/stable/gux-tabs/gux-tab/gux-tab.js +2 -0
  102. package/dist/collection/components/stable/gux-tabs/gux-tab-list/gux-tab-list.js +1 -1
  103. package/dist/collection/components/stable/gux-tabs-advanced/gux-tab-advanced/gux-tab-advanced.js +1 -1
  104. package/dist/collection/components/stable/gux-tabs-advanced/gux-tab-advanced-list/gux-tab-advanced-list.js +1 -1
  105. package/dist/collection/components/stable/gux-tooltip-title/gux-tooltip-title.js +2 -0
  106. package/dist/collection/i18n/index.js +5 -8
  107. package/dist/deploy-info.json +3 -3
  108. package/dist/esm/genesys-webcomponents.js +1 -1
  109. package/dist/esm/gux-accordion-legacy.entry.js +1 -1
  110. package/dist/esm/gux-accordion.entry.js +1 -1
  111. package/dist/esm/gux-action-button-legacy.entry.js +2 -2
  112. package/dist/esm/gux-action-button.entry.js +2 -2
  113. package/dist/esm/gux-action-list-legacy.entry.js +1 -1
  114. package/dist/esm/gux-action-toast.entry.js +1 -1
  115. package/dist/esm/gux-advanced-dropdown.entry.js +2 -2
  116. package/dist/esm/gux-all-row-select.entry.js +2 -2
  117. package/dist/esm/gux-badge-beta.entry.js +2 -2
  118. package/dist/esm/gux-breadcrumbs.entry.js +2 -2
  119. package/dist/esm/gux-button-multi-legacy.entry.js +1 -1
  120. package/dist/esm/gux-button-multi.entry.js +1 -1
  121. package/dist/esm/gux-button-slot-beta.entry.js +1 -1
  122. package/dist/esm/gux-button.entry.js +1 -1
  123. package/dist/esm/gux-calendar.entry.js +2 -2
  124. package/dist/esm/gux-card-beta.entry.js +1 -1
  125. package/dist/esm/gux-chart-column-beta.entry.js +1 -1
  126. package/dist/esm/gux-chart-donut-beta.entry.js +1 -1
  127. package/dist/esm/gux-chart-line-beta.entry.js +1 -1
  128. package/dist/esm/gux-chart-pie-beta.entry.js +1 -1
  129. package/dist/esm/gux-chart-scatter-plot-beta.entry.js +129 -0
  130. package/dist/esm/gux-command-palette-legacy.entry.js +2 -2
  131. package/dist/esm/gux-content-search.entry.js +2 -2
  132. package/dist/esm/gux-datepicker.entry.js +2 -2
  133. package/dist/esm/gux-disclosure-button.entry.js +2 -2
  134. package/dist/esm/gux-dismiss-button.entry.js +2 -2
  135. package/dist/esm/gux-dropdown-legacy.entry.js +1 -1
  136. package/dist/esm/gux-dropdown_3.entry.js +2 -2
  137. package/dist/esm/gux-error-message-beta.entry.js +1 -1
  138. package/dist/esm/gux-flyout-menu-beta.entry.js +1 -1
  139. package/dist/esm/gux-form-field-checkbox.entry.js +1 -1
  140. package/dist/esm/gux-form-field-color.entry.js +1 -1
  141. package/dist/esm/gux-form-field-input-clear-button.entry.js +2 -2
  142. package/dist/esm/gux-form-field-legacy.entry.js +1 -1
  143. package/dist/esm/gux-form-field-number.entry.js +2 -2
  144. package/dist/esm/gux-form-field-radio.entry.js +1 -1
  145. package/dist/esm/gux-form-field-range.entry.js +1 -1
  146. package/dist/esm/gux-form-field-search.entry.js +1 -1
  147. package/dist/esm/gux-form-field-select.entry.js +1 -1
  148. package/dist/esm/gux-form-field-text-like.entry.js +1 -1
  149. package/dist/esm/gux-form-field-textarea.entry.js +1 -1
  150. package/dist/esm/gux-icon.entry.js +1 -1
  151. package/dist/esm/gux-input-checkbox_7.entry.js +1 -1
  152. package/dist/esm/gux-input-search.entry.js +1 -1
  153. package/dist/esm/gux-input-text-like.entry.js +1 -1
  154. package/dist/esm/gux-list-item-legacy_2.entry.js +1 -1
  155. package/dist/esm/gux-list.entry.js +1 -1
  156. package/dist/esm/gux-modal.entry.js +1 -1
  157. package/dist/esm/gux-notification-toast.entry.js +1 -1
  158. package/dist/esm/gux-page-loading-spinner.entry.js +1 -1
  159. package/dist/esm/gux-pagination-beta.entry.js +111 -0
  160. package/dist/esm/gux-pagination-buttons-beta_3.entry.js +252 -0
  161. package/dist/esm/gux-pagination-buttons_3.entry.js +1 -1
  162. package/dist/esm/gux-pagination-cursor.entry.js +2 -2
  163. package/dist/esm/gux-pagination.entry.js +1 -1
  164. package/dist/esm/gux-panel-frame-legacy.entry.js +1 -1
  165. package/dist/esm/gux-popover-list.entry.js +1 -1
  166. package/dist/esm/gux-popover.entry.js +1 -1
  167. package/dist/esm/gux-radial-loading.entry.js +2 -2
  168. package/dist/esm/gux-radial-progress.entry.js +1 -1
  169. package/dist/esm/gux-rating.entry.js +1 -1
  170. package/dist/esm/gux-row-select.entry.js +2 -2
  171. package/dist/esm/gux-side-panel-legacy.entry.js +1 -1
  172. package/dist/esm/gux-simple-toast.entry.js +1 -1
  173. package/dist/esm/gux-switch.entry.js +1 -1
  174. package/dist/esm/gux-tab-advanced-list.entry.js +2 -2
  175. package/dist/esm/gux-tab-advanced.entry.js +2 -2
  176. package/dist/esm/gux-tab-list.entry.js +2 -2
  177. package/dist/esm/gux-tab.entry.js +2 -0
  178. package/dist/esm/gux-table-beta.entry.js +2 -2
  179. package/dist/esm/gux-tabs-advanced.entry.js +1 -1
  180. package/dist/esm/gux-tabs-legacy.entry.js +2 -2
  181. package/dist/esm/gux-tabs.entry.js +1 -1
  182. package/dist/esm/gux-tag-beta.entry.js +2 -2
  183. package/dist/esm/gux-text-highlight.entry.js +1 -1
  184. package/dist/esm/gux-text-label-legacy.entry.js +1 -1
  185. package/dist/esm/gux-time-picker-beta.entry.js +2 -2
  186. package/dist/esm/gux-toggle.entry.js +2 -2
  187. package/dist/esm/gux-tooltip_2.entry.js +3 -1
  188. package/dist/esm/gux-visualization-beta.entry.js +2 -2
  189. package/dist/esm/{index-eb3999c5.js → index-5bfcdeb1.js} +5 -8
  190. package/dist/esm/loader.js +1 -1
  191. package/dist/esm/{usage-tracking-27c65ae8.js → usage-tracking-51697c05.js} +1 -1
  192. package/dist/genesys-webcomponents/genesys-webcomponents.esm.js +1 -1
  193. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ar.json +1 -1
  194. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.cs.json +1 -1
  195. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.da.json +1 -1
  196. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.de.json +1 -1
  197. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.en.json +1 -1
  198. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.es-es.json +1 -1
  199. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.es.json +1 -1
  200. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.fi.json +1 -1
  201. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.fr-ca.json +1 -1
  202. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.fr.json +1 -1
  203. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.it.json +1 -1
  204. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ja.json +1 -1
  205. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ko.json +1 -1
  206. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.nl.json +1 -1
  207. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.no.json +1 -1
  208. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pl.json +1 -1
  209. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.pt-br.json +1 -1
  210. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.ru.json +1 -1
  211. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.sv.json +1 -1
  212. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.th.json +1 -1
  213. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.tr.json +1 -1
  214. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.zh-cn.json +1 -1
  215. package/dist/genesys-webcomponents/i18n/genesys-webcomponents.i18n.zh-tw.json +1 -1
  216. package/dist/genesys-webcomponents/{p-2f9715c3.entry.js → p-029337ed.entry.js} +1 -1
  217. package/dist/genesys-webcomponents/{p-7a5f74d9.entry.js → p-0657bb17.entry.js} +1 -1
  218. package/dist/genesys-webcomponents/{p-a5558019.entry.js → p-0769a6d9.entry.js} +1 -1
  219. package/dist/genesys-webcomponents/{p-44afce2f.entry.js → p-0e778f56.entry.js} +1 -1
  220. package/dist/genesys-webcomponents/{p-14cd0c82.entry.js → p-12d27bc7.entry.js} +1 -1
  221. package/dist/genesys-webcomponents/{p-ffbb5862.entry.js → p-1312bc4b.entry.js} +1 -1
  222. package/dist/genesys-webcomponents/{p-33520bfe.entry.js → p-13a7eb59.entry.js} +1 -1
  223. package/dist/genesys-webcomponents/{p-890b51d6.entry.js → p-15964b3a.entry.js} +1 -1
  224. package/dist/genesys-webcomponents/{p-42454428.js → p-1bba8576.js} +1 -1
  225. package/dist/genesys-webcomponents/{p-8e12c97b.entry.js → p-1c57ad87.entry.js} +1 -1
  226. package/dist/genesys-webcomponents/{p-44738ee4.entry.js → p-1cd8af37.entry.js} +1 -1
  227. package/dist/genesys-webcomponents/p-201c4e67.entry.js +1 -0
  228. package/dist/genesys-webcomponents/{p-d1d0b481.entry.js → p-22d6e306.entry.js} +1 -1
  229. package/dist/genesys-webcomponents/p-22f6880d.entry.js +1 -0
  230. package/dist/genesys-webcomponents/{p-6bb22291.entry.js → p-23b66369.entry.js} +1 -1
  231. package/dist/genesys-webcomponents/{p-14a51c35.js → p-2548bdad.js} +1 -1
  232. package/dist/genesys-webcomponents/{p-78184d06.entry.js → p-30095062.entry.js} +1 -1
  233. package/dist/genesys-webcomponents/{p-f2034144.entry.js → p-3160cd26.entry.js} +1 -1
  234. package/dist/genesys-webcomponents/{p-3b335640.entry.js → p-3753e5bf.entry.js} +1 -1
  235. package/dist/genesys-webcomponents/{p-f3737156.entry.js → p-3aa02e38.entry.js} +1 -1
  236. package/dist/genesys-webcomponents/{p-e2d7c903.entry.js → p-40b404e4.entry.js} +1 -1
  237. package/dist/genesys-webcomponents/p-421513fb.entry.js +1 -0
  238. package/dist/genesys-webcomponents/{p-5594f37c.entry.js → p-42d912d4.entry.js} +1 -1
  239. package/dist/genesys-webcomponents/p-4402a21b.entry.js +1 -0
  240. package/dist/genesys-webcomponents/{p-28463de4.entry.js → p-47b43bb0.entry.js} +1 -1
  241. package/dist/genesys-webcomponents/{p-09ea55ec.entry.js → p-4a191fdf.entry.js} +1 -1
  242. package/dist/genesys-webcomponents/{p-dd761341.entry.js → p-4b3e2f4d.entry.js} +1 -1
  243. package/dist/genesys-webcomponents/{p-a41c00c6.entry.js → p-4b9a1290.entry.js} +1 -1
  244. package/dist/genesys-webcomponents/{p-881f55eb.entry.js → p-4cb5c8d4.entry.js} +1 -1
  245. package/dist/genesys-webcomponents/{p-64ad2a25.entry.js → p-4d83e96e.entry.js} +1 -1
  246. package/dist/genesys-webcomponents/{p-9d490492.entry.js → p-51919256.entry.js} +1 -1
  247. package/dist/genesys-webcomponents/{p-592506ac.entry.js → p-541f1383.entry.js} +1 -1
  248. package/dist/genesys-webcomponents/{p-00c3054a.entry.js → p-5535d4ed.entry.js} +1 -1
  249. package/dist/genesys-webcomponents/p-5d2b22a6.entry.js +1 -0
  250. package/dist/genesys-webcomponents/{p-9ce6088b.entry.js → p-5e3c1579.entry.js} +1 -1
  251. package/dist/genesys-webcomponents/{p-5b6f7cc8.entry.js → p-5f7759a8.entry.js} +1 -1
  252. package/dist/genesys-webcomponents/{p-dd814ad8.entry.js → p-5f9dc418.entry.js} +1 -1
  253. package/dist/genesys-webcomponents/{p-a0503797.entry.js → p-604b978b.entry.js} +1 -1
  254. package/dist/genesys-webcomponents/{p-de858ae0.entry.js → p-608ee12d.entry.js} +1 -1
  255. package/dist/genesys-webcomponents/{p-f89942a1.entry.js → p-612d3b4c.entry.js} +1 -1
  256. package/dist/genesys-webcomponents/{p-cfcab586.entry.js → p-62046104.entry.js} +1 -1
  257. package/dist/genesys-webcomponents/p-65de98a6.entry.js +1 -0
  258. package/dist/genesys-webcomponents/{p-d0485040.entry.js → p-67d2bac0.entry.js} +1 -1
  259. package/dist/genesys-webcomponents/{p-4636daf4.entry.js → p-68ee84bf.entry.js} +1 -1
  260. package/dist/genesys-webcomponents/{p-eb4661f4.entry.js → p-6d9ba55a.entry.js} +1 -1
  261. package/dist/genesys-webcomponents/{p-893f0cc2.entry.js → p-7b4c2f8b.entry.js} +1 -1
  262. package/dist/genesys-webcomponents/{p-a456d7ca.entry.js → p-80c489ef.entry.js} +1 -1
  263. package/dist/genesys-webcomponents/{p-71438869.entry.js → p-8ad470a9.entry.js} +1 -1
  264. package/dist/genesys-webcomponents/p-8bcf179a.entry.js +1 -0
  265. package/dist/genesys-webcomponents/{p-69fe4ffe.entry.js → p-8df52df5.entry.js} +1 -1
  266. package/dist/genesys-webcomponents/{p-2a624729.entry.js → p-8e0974b7.entry.js} +1 -1
  267. package/dist/genesys-webcomponents/{p-abc59192.entry.js → p-93cf1b7e.entry.js} +1 -1
  268. package/dist/genesys-webcomponents/p-947b7fe3.entry.js +1 -0
  269. package/dist/genesys-webcomponents/{p-8fbf07eb.entry.js → p-9ea979d4.entry.js} +1 -1
  270. package/dist/genesys-webcomponents/{p-07200fbe.entry.js → p-aa078b1d.entry.js} +1 -1
  271. package/dist/genesys-webcomponents/{p-bb2c9b20.entry.js → p-b3bdfcc9.entry.js} +1 -1
  272. package/dist/genesys-webcomponents/{p-fcf8b41d.entry.js → p-b5762726.entry.js} +1 -1
  273. package/dist/genesys-webcomponents/{p-de5eede1.entry.js → p-b9911d1a.entry.js} +1 -1
  274. package/dist/genesys-webcomponents/{p-832a8286.entry.js → p-ba4e06bc.entry.js} +1 -1
  275. package/dist/genesys-webcomponents/{p-a39c9746.entry.js → p-badab913.entry.js} +1 -1
  276. package/dist/genesys-webcomponents/{p-aa2aa002.entry.js → p-bb12b2dc.entry.js} +1 -1
  277. package/dist/genesys-webcomponents/{p-93cc18db.entry.js → p-bde629e7.entry.js} +1 -1
  278. package/dist/genesys-webcomponents/{p-5d92c782.entry.js → p-be911be7.entry.js} +1 -1
  279. package/dist/genesys-webcomponents/p-c150db37.entry.js +1 -0
  280. package/dist/genesys-webcomponents/{p-53e5fbc4.entry.js → p-c3524a32.entry.js} +1 -1
  281. package/dist/genesys-webcomponents/{p-9e1fbc6e.entry.js → p-ce0c292e.entry.js} +1 -1
  282. package/dist/genesys-webcomponents/{p-82cca429.entry.js → p-d748b223.entry.js} +1 -1
  283. package/dist/genesys-webcomponents/{p-22ce535d.entry.js → p-d9bcb92f.entry.js} +1 -1
  284. package/dist/genesys-webcomponents/{p-0d625862.entry.js → p-d9cbc341.entry.js} +1 -1
  285. package/dist/genesys-webcomponents/{p-80ac23f3.entry.js → p-e17d08a7.entry.js} +1 -1
  286. package/dist/genesys-webcomponents/{p-80ab0f16.entry.js → p-ed20a20e.entry.js} +1 -1
  287. package/dist/genesys-webcomponents/{p-6f7aa738.entry.js → p-edb68d93.entry.js} +1 -1
  288. package/dist/genesys-webcomponents/{p-036fd850.entry.js → p-ee19896a.entry.js} +1 -1
  289. package/dist/genesys-webcomponents/{p-cc959b74.entry.js → p-ef83b43e.entry.js} +1 -1
  290. package/dist/genesys-webcomponents/{p-6d93d05c.entry.js → p-f0ae8bb8.entry.js} +1 -1
  291. package/dist/genesys-webcomponents/{p-e6be1cdd.entry.js → p-f6242c65.entry.js} +1 -1
  292. package/dist/genesys-webcomponents/{p-21ed1b6f.entry.js → p-f7f7374c.entry.js} +1 -1
  293. package/dist/genesys-webcomponents/{p-5b3f61b3.entry.js → p-f992d937.entry.js} +1 -1
  294. package/dist/genesys-webcomponents/{p-a73fa450.entry.js → p-f9f89217.entry.js} +1 -1
  295. package/dist/genesys-webcomponents/{p-0aefcf19.entry.js → p-faa78d1f.entry.js} +1 -1
  296. package/dist/genesys-webcomponents/{p-406c1ecb.entry.js → p-fe70aa84.entry.js} +1 -1
  297. package/dist/stencil-wrapper.js +1 -1
  298. package/dist/types/components/beta/gux-chart-scatter-plot/gux-chart-scatter-plot.d.ts +52 -0
  299. package/dist/types/components/beta/gux-pagination-beta/gux-pagination-beta.d.ts +43 -0
  300. package/dist/types/components/beta/gux-pagination-beta/gux-pagination-beta.types.d.ts +2 -0
  301. package/dist/types/components/beta/gux-pagination-beta/gux-pagination-buttons-beta/gux-pagination-button-beta.service.d.ts +9 -0
  302. package/dist/types/components/beta/gux-pagination-beta/gux-pagination-buttons-beta/gux-pagination-buttons-beta.d.ts +23 -0
  303. package/dist/types/components/beta/gux-pagination-beta/gux-pagination-item-counts-beta/gux-pagination-item-counts-beta.d.ts +13 -0
  304. package/dist/types/components/beta/gux-pagination-beta/gux-pagination-items-per-page-beta/gux-pagination-items-per-page-beta.d.ts +13 -0
  305. package/dist/types/components.d.ts +221 -0
  306. package/dist/types/i18n/index.d.ts +2 -2
  307. package/package.json +1 -1
  308. package/dist/genesys-webcomponents/p-155a1000.entry.js +0 -1
  309. package/dist/genesys-webcomponents/p-4bff75ab.entry.js +0 -1
  310. package/dist/genesys-webcomponents/p-64d6f1fa.entry.js +0 -1
  311. package/dist/genesys-webcomponents/p-9bdbd2da.entry.js +0 -1
  312. package/dist/genesys-webcomponents/p-ae53d4d6.entry.js +0 -1
  313. package/dist/genesys-webcomponents/p-c3c3c607.entry.js +0 -1
@@ -0,0 +1,344 @@
1
+ /* eslint-disable @typescript-eslint/no-unsafe-member-access */
2
+ import { Component, Element, h, Prop, Watch } from '@stencil/core';
3
+ import { trackComponent } from '../../../usage-tracking';
4
+ import { VISUALIZATION_COLORS } from '../../../utils/theme/color-palette';
5
+ import { logError } from '../../../utils/error/log-error';
6
+ const DEFAULT_COLOR_FIELD_NAME = 'category';
7
+ export class GuxScatterPlotChart {
8
+ constructor() {
9
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
10
+ this.baseChartSpec = {
11
+ $schema: 'https://vega.github.io/schema/vega-lite/v5.json',
12
+ params: [
13
+ {
14
+ name: 'onHover',
15
+ select: { type: 'point', on: 'mouseover' }
16
+ }
17
+ ],
18
+ config: {
19
+ axis: {
20
+ ticks: false,
21
+ titlePadding: 8,
22
+ gridColor: '#F6F7F9'
23
+ },
24
+ axisX: {
25
+ labelAngle: 0,
26
+ grid: true
27
+ },
28
+ legend: {
29
+ symbolType: 'circle'
30
+ }
31
+ },
32
+ width: { step: 40 },
33
+ encoding: {
34
+ x: { type: 'nominal' },
35
+ y: { type: 'quantitative' },
36
+ color: {
37
+ field: DEFAULT_COLOR_FIELD_NAME,
38
+ type: 'nominal',
39
+ scale: { range: VISUALIZATION_COLORS },
40
+ legend: null
41
+ },
42
+ size: {
43
+ condition: [
44
+ {
45
+ param: 'onHover',
46
+ empty: false,
47
+ value: 100
48
+ }
49
+ ],
50
+ value: 40
51
+ }
52
+ }
53
+ };
54
+ this.legendPosition = 'right';
55
+ }
56
+ parseData() {
57
+ if (!this.xFieldName || !this.yFieldName) {
58
+ logError('gux-chart-scatter-plot', '[gux-chart-scatter-plot] requires x-field-name and y-field-name');
59
+ }
60
+ let chartData = {};
61
+ if (this.chartData) {
62
+ chartData = { data: this.chartData };
63
+ }
64
+ if (this.xTickLabelSlant) {
65
+ this.baseChartSpec.config.axisX.labelAngle = -45;
66
+ }
67
+ if (this.legendPosition) {
68
+ this.baseChartSpec.config.legend.orient = this.legendPosition;
69
+ }
70
+ const xFieldName = this.xFieldName;
71
+ const xAxisTitle = this.xAxisTitle;
72
+ const yFieldName = this.yFieldName;
73
+ const yAxisTitle = this.yAxisTitle;
74
+ const legendTitle = this.legendTitle;
75
+ const useShape = this.useShape || 'circle';
76
+ const colorFieldName = this.colorFieldName || DEFAULT_COLOR_FIELD_NAME;
77
+ if (this.includeLegend) {
78
+ this.baseChartSpec.encoding.color.legend = true;
79
+ }
80
+ if (xFieldName) {
81
+ this.baseChartSpec.encoding.x.field = xFieldName;
82
+ }
83
+ if (xAxisTitle) {
84
+ this.baseChartSpec.encoding.x.title = xAxisTitle;
85
+ }
86
+ if (yFieldName) {
87
+ this.baseChartSpec.encoding.y.field = yFieldName;
88
+ }
89
+ if (yAxisTitle) {
90
+ this.baseChartSpec.encoding.y.title = yAxisTitle;
91
+ }
92
+ if (colorFieldName) {
93
+ this.baseChartSpec.encoding.color.field = colorFieldName;
94
+ }
95
+ if (legendTitle) {
96
+ this.baseChartSpec.encoding.color.title = legendTitle;
97
+ }
98
+ this.baseChartSpec.mark = { type: useShape, filled: true };
99
+ this.baseChartSpec.config.legend.symbolType = useShape;
100
+ this.baseChartSpec.encoding.shape = {
101
+ field: colorFieldName,
102
+ type: 'nominal'
103
+ };
104
+ this.baseChartSpec.encoding.tooltip = [
105
+ { field: xFieldName, type: 'nominal', title: xAxisTitle },
106
+ { field: yFieldName, type: 'quantitative', title: yAxisTitle },
107
+ { field: colorFieldName, type: 'nominal', title: legendTitle }
108
+ ];
109
+ const spec = Object.assign(this.baseChartSpec, chartData);
110
+ this.visualizationSpec = spec;
111
+ }
112
+ componentWillLoad() {
113
+ trackComponent(this.root);
114
+ this.parseData();
115
+ }
116
+ render() {
117
+ return (h("gux-visualization-beta", { visualizationSpec: this.visualizationSpec }));
118
+ }
119
+ static get is() { return "gux-chart-scatter-plot-beta"; }
120
+ static get encapsulation() { return "shadow"; }
121
+ static get originalStyleUrls() { return {
122
+ "$": ["gux-chart-scatter-plot.less"]
123
+ }; }
124
+ static get styleUrls() { return {
125
+ "$": ["gux-chart-scatter-plot.css"]
126
+ }; }
127
+ static get properties() { return {
128
+ "chartData": {
129
+ "type": "unknown",
130
+ "mutable": false,
131
+ "complexType": {
132
+ "original": "Record<string, any>",
133
+ "resolved": "{ [x: string]: any; }",
134
+ "references": {
135
+ "Record": {
136
+ "location": "global"
137
+ }
138
+ }
139
+ },
140
+ "required": false,
141
+ "optional": false,
142
+ "docs": {
143
+ "tags": [],
144
+ "text": "Data to be rendered in the chart.\nData field names must match the values you set in xFieldName and yFieldName"
145
+ }
146
+ },
147
+ "xTickLabelSlant": {
148
+ "type": "boolean",
149
+ "mutable": false,
150
+ "complexType": {
151
+ "original": "boolean",
152
+ "resolved": "boolean",
153
+ "references": {}
154
+ },
155
+ "required": false,
156
+ "optional": false,
157
+ "docs": {
158
+ "tags": [],
159
+ "text": "If true, then make Axis tick label 45 degrees"
160
+ },
161
+ "attribute": "x-tick-label-slant",
162
+ "reflect": false
163
+ },
164
+ "includeLegend": {
165
+ "type": "boolean",
166
+ "mutable": false,
167
+ "complexType": {
168
+ "original": "boolean",
169
+ "resolved": "boolean",
170
+ "references": {}
171
+ },
172
+ "required": false,
173
+ "optional": false,
174
+ "docs": {
175
+ "tags": [],
176
+ "text": ""
177
+ },
178
+ "attribute": "include-legend",
179
+ "reflect": false
180
+ },
181
+ "legendPosition": {
182
+ "type": "string",
183
+ "mutable": false,
184
+ "complexType": {
185
+ "original": "| 'left'\n | 'right'\n | 'top'\n | 'bottom'\n | 'top-left'\n | 'top-right'\n | 'bottom-left'\n | 'bottom-right'\n | 'none'",
186
+ "resolved": "\"bottom\" | \"bottom-left\" | \"bottom-right\" | \"left\" | \"none\" | \"right\" | \"top\" | \"top-left\" | \"top-right\"",
187
+ "references": {}
188
+ },
189
+ "required": false,
190
+ "optional": false,
191
+ "docs": {
192
+ "tags": [],
193
+ "text": ""
194
+ },
195
+ "attribute": "legend-position",
196
+ "reflect": false,
197
+ "defaultValue": "'right'"
198
+ },
199
+ "xFieldName": {
200
+ "type": "string",
201
+ "mutable": false,
202
+ "complexType": {
203
+ "original": "string",
204
+ "resolved": "string",
205
+ "references": {}
206
+ },
207
+ "required": false,
208
+ "optional": false,
209
+ "docs": {
210
+ "tags": [],
211
+ "text": "Name for the data field to use to populate the chart's x-axis\ne.g. xFieldName of \"category\" will map any \"category\" fields in chartData to the x-axis"
212
+ },
213
+ "attribute": "x-field-name",
214
+ "reflect": false
215
+ },
216
+ "xAxisTitle": {
217
+ "type": "string",
218
+ "mutable": false,
219
+ "complexType": {
220
+ "original": "string",
221
+ "resolved": "string",
222
+ "references": {}
223
+ },
224
+ "required": false,
225
+ "optional": false,
226
+ "docs": {
227
+ "tags": [],
228
+ "text": "Title to display along the x-axis"
229
+ },
230
+ "attribute": "x-axis-title",
231
+ "reflect": false
232
+ },
233
+ "yFieldName": {
234
+ "type": "string",
235
+ "mutable": false,
236
+ "complexType": {
237
+ "original": "string",
238
+ "resolved": "string",
239
+ "references": {}
240
+ },
241
+ "required": false,
242
+ "optional": false,
243
+ "docs": {
244
+ "tags": [],
245
+ "text": "Name for the data field to use to populate the chart's x-axis\ne.g. yFieldName of \"value\" will map any \"value\" fields in chartData to the y-axis"
246
+ },
247
+ "attribute": "y-field-name",
248
+ "reflect": false
249
+ },
250
+ "yAxisTitle": {
251
+ "type": "string",
252
+ "mutable": false,
253
+ "complexType": {
254
+ "original": "string",
255
+ "resolved": "string",
256
+ "references": {}
257
+ },
258
+ "required": false,
259
+ "optional": false,
260
+ "docs": {
261
+ "tags": [],
262
+ "text": "Title to display along the y-axis"
263
+ },
264
+ "attribute": "y-axis-title",
265
+ "reflect": false
266
+ },
267
+ "legendTitle": {
268
+ "type": "string",
269
+ "mutable": false,
270
+ "complexType": {
271
+ "original": "string",
272
+ "resolved": "string",
273
+ "references": {}
274
+ },
275
+ "required": false,
276
+ "optional": false,
277
+ "docs": {
278
+ "tags": [],
279
+ "text": "Title to display above the optional legend"
280
+ },
281
+ "attribute": "legend-title",
282
+ "reflect": false
283
+ },
284
+ "colorFieldName": {
285
+ "type": "string",
286
+ "mutable": false,
287
+ "complexType": {
288
+ "original": "string",
289
+ "resolved": "string",
290
+ "references": {}
291
+ },
292
+ "required": false,
293
+ "optional": false,
294
+ "docs": {
295
+ "tags": [],
296
+ "text": "Type of category to plot in the chart"
297
+ },
298
+ "attribute": "color-field-name",
299
+ "reflect": false
300
+ },
301
+ "useShape": {
302
+ "type": "string",
303
+ "mutable": false,
304
+ "complexType": {
305
+ "original": "string",
306
+ "resolved": "string",
307
+ "references": {}
308
+ },
309
+ "required": false,
310
+ "optional": false,
311
+ "docs": {
312
+ "tags": [],
313
+ "text": "The shape of the plotting in the chart - Square, Circle and Point"
314
+ },
315
+ "attribute": "use-shape",
316
+ "reflect": false
317
+ },
318
+ "embedOptions": {
319
+ "type": "unknown",
320
+ "mutable": false,
321
+ "complexType": {
322
+ "original": "EmbedOptions",
323
+ "resolved": "EmbedOptions<string, Renderers>",
324
+ "references": {
325
+ "EmbedOptions": {
326
+ "location": "import",
327
+ "path": "vega-embed"
328
+ }
329
+ }
330
+ },
331
+ "required": false,
332
+ "optional": false,
333
+ "docs": {
334
+ "tags": [],
335
+ "text": ""
336
+ }
337
+ }
338
+ }; }
339
+ static get elementRef() { return "root"; }
340
+ static get watchers() { return [{
341
+ "propName": "chartData",
342
+ "methodName": "parseData"
343
+ }]; }
344
+ }
@@ -0,0 +1,39 @@
1
+ :host {
2
+ display: block;
3
+ border-top: 1px solid #e2e6ee;
4
+ }
5
+ .gux-pagination-container {
6
+ display: flex;
7
+ flex-direction: row;
8
+ flex-wrap: nowrap;
9
+ align-content: stretch;
10
+ align-items: center;
11
+ justify-content: space-between;
12
+ height: 40px;
13
+ margin: 12px 12px 0 12px;
14
+ }
15
+ .gux-pagination-container .gux-pagination-info {
16
+ display: flex;
17
+ flex: 1 1 auto;
18
+ flex-direction: row;
19
+ flex-wrap: nowrap;
20
+ align-content: stretch;
21
+ align-items: center;
22
+ align-self: auto;
23
+ justify-content: flex-start;
24
+ order: 0;
25
+ }
26
+ .gux-pagination-container .gux-pagination-info > * {
27
+ flex: 0 1 auto;
28
+ align-self: auto;
29
+ order: 0;
30
+ }
31
+ .gux-pagination-container .gux-pagination-change {
32
+ flex: 1 1 auto;
33
+ align-self: auto;
34
+ order: 0;
35
+ margin-left: 24px;
36
+ }
37
+ .gux-pagination-container .gux-pagination-change:first-child {
38
+ margin-left: 0;
39
+ }
@@ -0,0 +1,225 @@
1
+ import { Component, Element, Event, h, readTask, Prop, State } from '@stencil/core';
2
+ import { trackComponent } from '../../../usage-tracking';
3
+ /**
4
+ * The minimum size in px at which the advanced layout will display.
5
+ * Below this size we switch to the simple layout.
6
+ * This was chosen based on the width required for 3-digit page numbers, so
7
+ * page counts that go into 4 digits could overflow at small sizes.
8
+ */
9
+ const MIN_ADVANCED_SIZE = 810;
10
+ export class GuxPaginationBeta {
11
+ constructor() {
12
+ /**
13
+ * The pagination component can have different layouts to suit the available space
14
+ */
15
+ this.layout = 'advanced';
16
+ /**
17
+ * The currently select page. Changes are watched by the component.
18
+ */
19
+ this.currentPage = 1;
20
+ /**
21
+ * The total number of items in the data set. Used to calculate total page count
22
+ */
23
+ this.totalItems = 0;
24
+ /**
25
+ * The max number of items on a page. Used to calculate total page count
26
+ */
27
+ this.itemsPerPage = 25;
28
+ }
29
+ setPage(page) {
30
+ if (page < 0) {
31
+ if (this.totalPages > 0) {
32
+ this.setPage(1);
33
+ }
34
+ else {
35
+ this.setPage(0);
36
+ }
37
+ return;
38
+ }
39
+ const totalPages = this.calculateTotalPages(this.totalItems, this.itemsPerPage);
40
+ if (page > totalPages) {
41
+ this.setPage(totalPages);
42
+ return;
43
+ }
44
+ this.currentPage = page;
45
+ this.guxpaginationchange.emit({
46
+ currentPage: this.currentPage,
47
+ itemsPerPage: this.itemsPerPage
48
+ });
49
+ }
50
+ handleInternalitemsperpagechange(event) {
51
+ this.itemsPerPage = event.detail;
52
+ this.setPage(1);
53
+ }
54
+ handleInternalcurrentpagechange(event) {
55
+ this.setPage(event.detail);
56
+ }
57
+ calculateTotalPages(totalItems, itemsPerPage) {
58
+ return Math.ceil(totalItems / itemsPerPage);
59
+ }
60
+ calculateCurrentPage(totalPages, currentPage) {
61
+ const minCurrentPage = totalPages > 0 ? 1 : 0;
62
+ return Math.max(minCurrentPage, Math.min(currentPage, totalPages));
63
+ }
64
+ checkPaginationContainerWidthForLayout() {
65
+ readTask(() => {
66
+ const el = this.root.shadowRoot.querySelector('.gux-pagination-container');
67
+ const paginationContainerWidth = el.clientWidth;
68
+ if (paginationContainerWidth < MIN_ADVANCED_SIZE) {
69
+ this.displayedLayout = 'simple';
70
+ }
71
+ else {
72
+ this.displayedLayout = this.layout;
73
+ }
74
+ });
75
+ }
76
+ componentWillLoad() {
77
+ trackComponent(this.root, { variant: this.layout });
78
+ }
79
+ componentWillRender() {
80
+ this.totalPages = this.calculateTotalPages(this.totalItems, this.itemsPerPage);
81
+ this.currentPage = this.calculateCurrentPage(this.totalPages, this.currentPage);
82
+ }
83
+ disconnectedCallback() {
84
+ if (this.resizeObserver) {
85
+ this.resizeObserver.unobserve(this.root.shadowRoot.querySelector('.gux-pagination-container'));
86
+ }
87
+ }
88
+ componentDidLoad() {
89
+ if (!this.resizeObserver && window.ResizeObserver) {
90
+ this.resizeObserver = new ResizeObserver(() => this.checkPaginationContainerWidthForLayout());
91
+ }
92
+ if (this.resizeObserver) {
93
+ this.resizeObserver.observe(this.root.shadowRoot.querySelector('.gux-pagination-container'));
94
+ }
95
+ setTimeout(() => {
96
+ this.checkPaginationContainerWidthForLayout();
97
+ }, 500);
98
+ }
99
+ render() {
100
+ return (h("div", { class: "gux-pagination-container" },
101
+ h("div", { class: "gux-pagination-info" },
102
+ h("gux-pagination-item-counts-beta", { "total-items": this.totalItems, "current-page": this.currentPage, "items-per-page": this.itemsPerPage }),
103
+ this.displayedLayout === 'advanced' && (h("gux-pagination-items-per-page-beta", { "items-per-page": this.itemsPerPage, onInternalitemsperpagechange: this.handleInternalitemsperpagechange.bind(this) }))),
104
+ h("div", { class: "gux-pagination-change" },
105
+ h("gux-pagination-buttons-beta", { layout: this.displayedLayout, "current-page": this.currentPage, "total-pages": this.totalPages, onInternalcurrentpagechange: this.handleInternalcurrentpagechange.bind(this) }))));
106
+ }
107
+ static get is() { return "gux-pagination-beta"; }
108
+ static get encapsulation() { return "shadow"; }
109
+ static get originalStyleUrls() { return {
110
+ "$": ["gux-pagination-beta.less"]
111
+ }; }
112
+ static get styleUrls() { return {
113
+ "$": ["gux-pagination-beta.css"]
114
+ }; }
115
+ static get properties() { return {
116
+ "layout": {
117
+ "type": "string",
118
+ "mutable": false,
119
+ "complexType": {
120
+ "original": "GuxPaginationLayoutBeta",
121
+ "resolved": "\"advanced\" | \"simple\"",
122
+ "references": {
123
+ "GuxPaginationLayoutBeta": {
124
+ "location": "import",
125
+ "path": "./gux-pagination-beta.types"
126
+ }
127
+ }
128
+ },
129
+ "required": false,
130
+ "optional": false,
131
+ "docs": {
132
+ "tags": [],
133
+ "text": "The pagination component can have different layouts to suit the available space"
134
+ },
135
+ "attribute": "layout",
136
+ "reflect": false,
137
+ "defaultValue": "'advanced'"
138
+ },
139
+ "currentPage": {
140
+ "type": "number",
141
+ "mutable": true,
142
+ "complexType": {
143
+ "original": "number",
144
+ "resolved": "number",
145
+ "references": {}
146
+ },
147
+ "required": false,
148
+ "optional": false,
149
+ "docs": {
150
+ "tags": [],
151
+ "text": "The currently select page. Changes are watched by the component."
152
+ },
153
+ "attribute": "current-page",
154
+ "reflect": false,
155
+ "defaultValue": "1"
156
+ },
157
+ "totalItems": {
158
+ "type": "number",
159
+ "mutable": false,
160
+ "complexType": {
161
+ "original": "number",
162
+ "resolved": "number",
163
+ "references": {}
164
+ },
165
+ "required": false,
166
+ "optional": false,
167
+ "docs": {
168
+ "tags": [],
169
+ "text": "The total number of items in the data set. Used to calculate total page count"
170
+ },
171
+ "attribute": "total-items",
172
+ "reflect": false,
173
+ "defaultValue": "0"
174
+ },
175
+ "itemsPerPage": {
176
+ "type": "number",
177
+ "mutable": true,
178
+ "complexType": {
179
+ "original": "GuxItemsPerPage",
180
+ "resolved": "100 | 25 | 50 | 75",
181
+ "references": {
182
+ "GuxItemsPerPage": {
183
+ "location": "import",
184
+ "path": "../../stable/gux-pagination/gux-pagination.types"
185
+ }
186
+ }
187
+ },
188
+ "required": false,
189
+ "optional": false,
190
+ "docs": {
191
+ "tags": [],
192
+ "text": "The max number of items on a page. Used to calculate total page count"
193
+ },
194
+ "attribute": "items-per-page",
195
+ "reflect": false,
196
+ "defaultValue": "25"
197
+ }
198
+ }; }
199
+ static get states() { return {
200
+ "totalPages": {},
201
+ "displayedLayout": {}
202
+ }; }
203
+ static get events() { return [{
204
+ "method": "guxpaginationchange",
205
+ "name": "guxpaginationchange",
206
+ "bubbles": true,
207
+ "cancelable": true,
208
+ "composed": true,
209
+ "docs": {
210
+ "tags": [],
211
+ "text": ""
212
+ },
213
+ "complexType": {
214
+ "original": "GuxPaginationState",
215
+ "resolved": "{ currentPage: number; itemsPerPage: number; }",
216
+ "references": {
217
+ "GuxPaginationState": {
218
+ "location": "import",
219
+ "path": "../../stable/gux-pagination/gux-pagination.types"
220
+ }
221
+ }
222
+ }
223
+ }]; }
224
+ static get elementRef() { return "root"; }
225
+ }
@@ -0,0 +1,91 @@
1
+ export class GuxPaginationButtonsService {
2
+ static getPageList(currentPage, totalPages) {
3
+ if (totalPages <= 10) {
4
+ return [...Array(totalPages).keys()].map(index => {
5
+ const pageNumber = index + 1;
6
+ return {
7
+ pageNumber,
8
+ display: String(pageNumber),
9
+ current: pageNumber === currentPage
10
+ };
11
+ });
12
+ }
13
+ if (currentPage <= 5) {
14
+ const startPageList = [...Array(6).keys()].map(index => {
15
+ const pageNumber = index + 1;
16
+ return {
17
+ pageNumber,
18
+ display: String(pageNumber),
19
+ current: pageNumber === currentPage
20
+ };
21
+ });
22
+ return [
23
+ ...startPageList,
24
+ {
25
+ pageNumber: 7,
26
+ display: '...',
27
+ current: false
28
+ },
29
+ {
30
+ pageNumber: totalPages,
31
+ display: String(totalPages),
32
+ current: false
33
+ }
34
+ ];
35
+ }
36
+ if (currentPage > totalPages - 5) {
37
+ const endPageList = [...Array(6).keys()].map(index => {
38
+ const pageNumber = index + totalPages - 5;
39
+ return {
40
+ pageNumber,
41
+ display: String(pageNumber),
42
+ current: pageNumber === currentPage
43
+ };
44
+ });
45
+ return [
46
+ {
47
+ pageNumber: 1,
48
+ display: '1',
49
+ current: false
50
+ },
51
+ {
52
+ pageNumber: totalPages - 6,
53
+ display: '...',
54
+ current: false
55
+ },
56
+ ...endPageList
57
+ ];
58
+ }
59
+ const middlePageList = [...Array(5).keys()].map(index => {
60
+ const pageNumber = index + currentPage - 2;
61
+ return {
62
+ pageNumber,
63
+ display: String(pageNumber),
64
+ current: pageNumber === currentPage
65
+ };
66
+ });
67
+ return [
68
+ {
69
+ pageNumber: 1,
70
+ display: '1',
71
+ current: false
72
+ },
73
+ {
74
+ pageNumber: currentPage - 3,
75
+ display: '...',
76
+ current: false
77
+ },
78
+ ...middlePageList,
79
+ {
80
+ pageNumber: currentPage + 3,
81
+ display: '...',
82
+ current: false
83
+ },
84
+ {
85
+ pageNumber: totalPages,
86
+ display: String(totalPages),
87
+ current: false
88
+ }
89
+ ];
90
+ }
91
+ }