@govtechsg/sgds-web-component 2.0.1 → 2.1.1

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 (758) hide show
  1. package/package.json +1 -1
  2. package/react/accordion/index.cjs.js +2 -1
  3. package/react/accordion/index.cjs.js.map +1 -1
  4. package/react/accordion/index.js +2 -1
  5. package/react/accordion/index.js.map +1 -1
  6. package/react/accordion-item/index.cjs.js +2 -1
  7. package/react/accordion-item/index.cjs.js.map +1 -1
  8. package/react/accordion-item/index.js +2 -1
  9. package/react/accordion-item/index.js.map +1 -1
  10. package/react/action-card/index.cjs.js +2 -1
  11. package/react/action-card/index.cjs.js.map +1 -1
  12. package/react/action-card/index.js +2 -1
  13. package/react/action-card/index.js.map +1 -1
  14. package/react/alert/index.cjs.js +2 -1
  15. package/react/alert/index.cjs.js.map +1 -1
  16. package/react/alert/index.js +2 -1
  17. package/react/alert/index.js.map +1 -1
  18. package/react/alert-heading/index.cjs.js +2 -1
  19. package/react/alert-heading/index.cjs.js.map +1 -1
  20. package/react/alert-heading/index.js +2 -1
  21. package/react/alert-heading/index.js.map +1 -1
  22. package/react/alert-link/index.cjs.js +2 -1
  23. package/react/alert-link/index.cjs.js.map +1 -1
  24. package/react/alert-link/index.js +2 -1
  25. package/react/alert-link/index.js.map +1 -1
  26. package/react/badge/index.cjs.js +2 -1
  27. package/react/badge/index.cjs.js.map +1 -1
  28. package/react/badge/index.js +2 -1
  29. package/react/badge/index.js.map +1 -1
  30. package/{base → react/base}/card-element.cjs.js +1 -0
  31. package/react/base/card-element.cjs.js.map +1 -0
  32. package/react/base/card-element.js +26 -0
  33. package/react/base/card-element.js.map +1 -0
  34. package/{base → react/base}/card.cjs.js +1 -0
  35. package/{components/Card → react/base}/card.cjs.js.map +1 -1
  36. package/react/base/card.js +7 -0
  37. package/react/base/card.js.map +1 -0
  38. package/{base → react/base}/dropdown-element.cjs.js +1 -0
  39. package/react/base/dropdown-element.cjs.js.map +1 -0
  40. package/react/base/dropdown-element.js +174 -0
  41. package/react/base/dropdown-element.js.map +1 -0
  42. package/{base → react/base}/dropdown-list-element.cjs.js +1 -0
  43. package/react/base/dropdown-list-element.cjs.js.map +1 -0
  44. package/react/base/dropdown-list-element.js +130 -0
  45. package/react/base/dropdown-list-element.js.map +1 -0
  46. package/{base → react/base}/form-check-element.cjs.js +1 -0
  47. package/react/base/form-check-element.cjs.js.map +1 -0
  48. package/react/base/form-check-element.js +167 -0
  49. package/react/base/form-check-element.js.map +1 -0
  50. package/{base → react/base}/link-element.cjs.js +1 -0
  51. package/react/base/link-element.cjs.js.map +1 -0
  52. package/react/base/link-element.js +53 -0
  53. package/react/base/link-element.js.map +1 -0
  54. package/{base → react/base}/sgds-element.cjs.js +1 -0
  55. package/react/base/sgds-element.cjs.js.map +1 -0
  56. package/{base → react/base}/sgds-element.cjs2.js +1 -0
  57. package/{base → react/base}/sgds-element.cjs2.js.map +1 -1
  58. package/react/base/sgds-element.js +24 -0
  59. package/react/base/sgds-element.js.map +1 -0
  60. package/react/base/sgds-element2.js +7 -0
  61. package/react/base/sgds-element2.js.map +1 -0
  62. package/react/breadcrumb/index.cjs.js +2 -1
  63. package/react/breadcrumb/index.cjs.js.map +1 -1
  64. package/react/breadcrumb/index.js +2 -1
  65. package/react/breadcrumb/index.js.map +1 -1
  66. package/react/breadcrumb-item/index.cjs.js +2 -1
  67. package/react/breadcrumb-item/index.cjs.js.map +1 -1
  68. package/react/breadcrumb-item/index.js +2 -1
  69. package/react/breadcrumb-item/index.js.map +1 -1
  70. package/react/button/index.cjs.js +2 -1
  71. package/react/button/index.cjs.js.map +1 -1
  72. package/react/button/index.js +2 -1
  73. package/react/button/index.js.map +1 -1
  74. package/react/card/index.cjs.js +2 -1
  75. package/react/card/index.cjs.js.map +1 -1
  76. package/react/card/index.js +2 -1
  77. package/react/card/index.js.map +1 -1
  78. package/react/checkbox/index.cjs.js +2 -1
  79. package/react/checkbox/index.cjs.js.map +1 -1
  80. package/react/checkbox/index.js +2 -1
  81. package/react/checkbox/index.js.map +1 -1
  82. package/react/combo-box/index.cjs.js +2 -1
  83. package/react/combo-box/index.cjs.js.map +1 -1
  84. package/react/combo-box/index.js +2 -1
  85. package/react/combo-box/index.js.map +1 -1
  86. package/{components → react/components}/Accordion/accordion-item.cjs.js +1 -0
  87. package/{components → react/components}/Accordion/accordion-item.cjs.js.map +1 -1
  88. package/react/components/Accordion/accordion-item.js +7 -0
  89. package/react/components/Accordion/accordion-item.js.map +1 -0
  90. package/{components → react/components}/Accordion/accordion.cjs.js +1 -0
  91. package/{components → react/components}/Accordion/accordion.cjs.js.map +1 -1
  92. package/react/components/Accordion/accordion.js +7 -0
  93. package/react/components/Accordion/accordion.js.map +1 -0
  94. package/{components → react/components}/Accordion/sgds-accordion-item.cjs.js +1 -0
  95. package/react/components/Accordion/sgds-accordion-item.cjs.js.map +1 -0
  96. package/react/components/Accordion/sgds-accordion-item.js +204 -0
  97. package/react/components/Accordion/sgds-accordion-item.js.map +1 -0
  98. package/{components → react/components}/Accordion/sgds-accordion.cjs.js +1 -0
  99. package/react/components/Accordion/sgds-accordion.cjs.js.map +1 -0
  100. package/react/components/Accordion/sgds-accordion.js +87 -0
  101. package/react/components/Accordion/sgds-accordion.js.map +1 -0
  102. package/{components → react/components}/ActionCard/action-card.cjs.js +1 -0
  103. package/{components → react/components}/ActionCard/action-card.cjs.js.map +1 -1
  104. package/react/components/ActionCard/action-card.js +7 -0
  105. package/react/components/ActionCard/action-card.js.map +1 -0
  106. package/{components → react/components}/ActionCard/sgds-action-card.cjs.js +1 -0
  107. package/react/components/ActionCard/sgds-action-card.cjs.js.map +1 -0
  108. package/react/components/ActionCard/sgds-action-card.js +155 -0
  109. package/react/components/ActionCard/sgds-action-card.js.map +1 -0
  110. package/{components → react/components}/Alert/alert-link.cjs.js +1 -0
  111. package/{components → react/components}/Alert/alert-link.cjs.js.map +1 -1
  112. package/react/components/Alert/alert-link.js +7 -0
  113. package/react/components/Alert/alert-link.js.map +1 -0
  114. package/{components → react/components}/Alert/alert.cjs.js +1 -0
  115. package/{components → react/components}/Alert/alert.cjs.js.map +1 -1
  116. package/react/components/Alert/alert.js +7 -0
  117. package/react/components/Alert/alert.js.map +1 -0
  118. package/{components → react/components}/Alert/sgds-alert-heading.cjs.js +1 -0
  119. package/react/components/Alert/sgds-alert-heading.cjs.js.map +1 -0
  120. package/react/components/Alert/sgds-alert-heading.js +33 -0
  121. package/react/components/Alert/sgds-alert-heading.js.map +1 -0
  122. package/{components → react/components}/Alert/sgds-alert-link.cjs.js +1 -0
  123. package/react/components/Alert/sgds-alert-link.cjs.js.map +1 -0
  124. package/react/components/Alert/sgds-alert-link.js +32 -0
  125. package/react/components/Alert/sgds-alert-link.js.map +1 -0
  126. package/{components → react/components}/Alert/sgds-alert.cjs.js +1 -0
  127. package/react/components/Alert/sgds-alert.cjs.js.map +1 -0
  128. package/react/components/Alert/sgds-alert.js +90 -0
  129. package/react/components/Alert/sgds-alert.js.map +1 -0
  130. package/{components → react/components}/Badge/badge.cjs.js +1 -0
  131. package/{components → react/components}/Badge/badge.cjs.js.map +1 -1
  132. package/react/components/Badge/badge.js +7 -0
  133. package/react/components/Badge/badge.js.map +1 -0
  134. package/{components → react/components}/Badge/sgds-badge.cjs.js +1 -0
  135. package/react/components/Badge/sgds-badge.cjs.js.map +1 -0
  136. package/react/components/Badge/sgds-badge.js +53 -0
  137. package/react/components/Badge/sgds-badge.js.map +1 -0
  138. package/{components → react/components}/Breadcrumb/breadcrumb-item.cjs.js +1 -0
  139. package/{components → react/components}/Breadcrumb/breadcrumb-item.cjs.js.map +1 -1
  140. package/react/components/Breadcrumb/breadcrumb-item.js +7 -0
  141. package/react/components/Breadcrumb/breadcrumb-item.js.map +1 -0
  142. package/{components → react/components}/Breadcrumb/breadcrumb.cjs.js +1 -0
  143. package/{components → react/components}/Breadcrumb/breadcrumb.cjs.js.map +1 -1
  144. package/react/components/Breadcrumb/breadcrumb.js +7 -0
  145. package/react/components/Breadcrumb/breadcrumb.js.map +1 -0
  146. package/{components → react/components}/Breadcrumb/sgds-breadcrumb-item.cjs.js +1 -0
  147. package/react/components/Breadcrumb/sgds-breadcrumb-item.cjs.js.map +1 -0
  148. package/react/components/Breadcrumb/sgds-breadcrumb-item.js +65 -0
  149. package/react/components/Breadcrumb/sgds-breadcrumb-item.js.map +1 -0
  150. package/{components → react/components}/Breadcrumb/sgds-breadcrumb.cjs.js +1 -0
  151. package/react/components/Breadcrumb/sgds-breadcrumb.cjs.js.map +1 -0
  152. package/react/components/Breadcrumb/sgds-breadcrumb.js +82 -0
  153. package/react/components/Breadcrumb/sgds-breadcrumb.js.map +1 -0
  154. package/{components → react/components}/Button/button.cjs.js +1 -0
  155. package/{components → react/components}/Button/button.cjs.js.map +1 -1
  156. package/react/components/Button/button.js +7 -0
  157. package/react/components/Button/button.js.map +1 -0
  158. package/{components → react/components}/Button/sgds-button.cjs.js +1 -0
  159. package/react/components/Button/sgds-button.cjs.js.map +1 -0
  160. package/react/components/Button/sgds-button.js +166 -0
  161. package/react/components/Button/sgds-button.js.map +1 -0
  162. package/{components → react/components}/Card/card.cjs.js +1 -0
  163. package/{base → react/components/Card}/card.cjs.js.map +1 -1
  164. package/react/components/Card/card.js +7 -0
  165. package/react/components/Card/card.js.map +1 -0
  166. package/{components → react/components}/Card/sgds-card.cjs.js +1 -0
  167. package/react/components/Card/sgds-card.cjs.js.map +1 -0
  168. package/react/components/Card/sgds-card.js +76 -0
  169. package/react/components/Card/sgds-card.js.map +1 -0
  170. package/{components → react/components}/Checkbox/checkbox.cjs.js +1 -0
  171. package/{components → react/components}/Checkbox/checkbox.cjs.js.map +1 -1
  172. package/react/components/Checkbox/checkbox.js +7 -0
  173. package/react/components/Checkbox/checkbox.js.map +1 -0
  174. package/{components → react/components}/Checkbox/sgds-checkbox.cjs.js +1 -0
  175. package/react/components/Checkbox/sgds-checkbox.cjs.js.map +1 -0
  176. package/react/components/Checkbox/sgds-checkbox.js +26 -0
  177. package/react/components/Checkbox/sgds-checkbox.js.map +1 -0
  178. package/{components → react/components}/ComboBox/combo-box.cjs.js +1 -0
  179. package/{components → react/components}/ComboBox/combo-box.cjs.js.map +1 -1
  180. package/react/components/ComboBox/combo-box.js +7 -0
  181. package/react/components/ComboBox/combo-box.js.map +1 -0
  182. package/{components → react/components}/ComboBox/sgds-combo-box.cjs.js +1 -0
  183. package/react/components/ComboBox/sgds-combo-box.cjs.js.map +1 -0
  184. package/react/components/ComboBox/sgds-combo-box.js +194 -0
  185. package/react/components/ComboBox/sgds-combo-box.js.map +1 -0
  186. package/{components → react/components}/Datepicker/datepicker-calendar.cjs.js +1 -0
  187. package/react/components/Datepicker/datepicker-calendar.cjs.js.map +1 -0
  188. package/{components → react/components}/Datepicker/datepicker-calendar.cjs2.js +1 -0
  189. package/{components → react/components}/Datepicker/datepicker-calendar.cjs2.js.map +1 -1
  190. package/react/components/Datepicker/datepicker-calendar.js +458 -0
  191. package/react/components/Datepicker/datepicker-calendar.js.map +1 -0
  192. package/react/components/Datepicker/datepicker-calendar2.js +7 -0
  193. package/react/components/Datepicker/datepicker-calendar2.js.map +1 -0
  194. package/{components → react/components}/Datepicker/datepicker-header.cjs.js +1 -0
  195. package/react/components/Datepicker/datepicker-header.cjs.js.map +1 -0
  196. package/{components → react/components}/Datepicker/datepicker-header.cjs2.js +1 -0
  197. package/{components → react/components}/Datepicker/datepicker-header.cjs2.js.map +1 -1
  198. package/react/components/Datepicker/datepicker-header.js +227 -0
  199. package/react/components/Datepicker/datepicker-header.js.map +1 -0
  200. package/react/components/Datepicker/datepicker-header2.js +7 -0
  201. package/react/components/Datepicker/datepicker-header2.js.map +1 -0
  202. package/{components → react/components}/Datepicker/datepicker-input.cjs.js +1 -0
  203. package/react/components/Datepicker/datepicker-input.cjs.js.map +1 -0
  204. package/{components → react/components}/Datepicker/datepicker-input.cjs2.js +1 -0
  205. package/{components → react/components}/Datepicker/datepicker-input.cjs2.js.map +1 -1
  206. package/react/components/Datepicker/datepicker-input.js +150 -0
  207. package/react/components/Datepicker/datepicker-input.js.map +1 -0
  208. package/react/components/Datepicker/datepicker-input2.js +7 -0
  209. package/react/components/Datepicker/datepicker-input2.js.map +1 -0
  210. package/{components → react/components}/Datepicker/datepicker.cjs.js +1 -0
  211. package/{components → react/components}/Datepicker/datepicker.cjs.js.map +1 -1
  212. package/react/components/Datepicker/datepicker.js +7 -0
  213. package/react/components/Datepicker/datepicker.js.map +1 -0
  214. package/{components → react/components}/Datepicker/sgds-datepicker.cjs.js +1 -0
  215. package/react/components/Datepicker/sgds-datepicker.cjs.js.map +1 -0
  216. package/react/components/Datepicker/sgds-datepicker.js +484 -0
  217. package/react/components/Datepicker/sgds-datepicker.js.map +1 -0
  218. package/{components → react/components}/Drawer/drawer.cjs.js +1 -0
  219. package/{components → react/components}/Drawer/drawer.cjs.js.map +1 -1
  220. package/react/components/Drawer/drawer.js +7 -0
  221. package/react/components/Drawer/drawer.js.map +1 -0
  222. package/{components → react/components}/Drawer/sgds-drawer.cjs.js +1 -0
  223. package/react/components/Drawer/sgds-drawer.cjs.js.map +1 -0
  224. package/react/components/Drawer/sgds-drawer.js +413 -0
  225. package/react/components/Drawer/sgds-drawer.js.map +1 -0
  226. package/{components → react/components}/Dropdown/dropdown.cjs.js +1 -0
  227. package/{components → react/components}/Dropdown/dropdown.cjs.js.map +1 -1
  228. package/react/components/Dropdown/dropdown.js +7 -0
  229. package/react/components/Dropdown/dropdown.js.map +1 -0
  230. package/{components → react/components}/Dropdown/sgds-dropdown-item.cjs.js +1 -0
  231. package/react/components/Dropdown/sgds-dropdown-item.cjs.js.map +1 -0
  232. package/react/components/Dropdown/sgds-dropdown-item.js +47 -0
  233. package/react/components/Dropdown/sgds-dropdown-item.js.map +1 -0
  234. package/{components → react/components}/Dropdown/sgds-dropdown.cjs.js +1 -0
  235. package/react/components/Dropdown/sgds-dropdown.cjs.js.map +1 -0
  236. package/react/components/Dropdown/sgds-dropdown.js +117 -0
  237. package/react/components/Dropdown/sgds-dropdown.js.map +1 -0
  238. package/{components → react/components}/FileUpload/file-upload.cjs.js +1 -0
  239. package/{components → react/components}/FileUpload/file-upload.cjs.js.map +1 -1
  240. package/react/components/FileUpload/file-upload.js +7 -0
  241. package/react/components/FileUpload/file-upload.js.map +1 -0
  242. package/{components → react/components}/FileUpload/sgds-file-upload.cjs.js +1 -0
  243. package/react/components/FileUpload/sgds-file-upload.cjs.js.map +1 -0
  244. package/react/components/FileUpload/sgds-file-upload.js +208 -0
  245. package/react/components/FileUpload/sgds-file-upload.js.map +1 -0
  246. package/{components → react/components}/Footer/footer.cjs.js +1 -0
  247. package/{components → react/components}/Footer/footer.cjs.js.map +1 -1
  248. package/react/components/Footer/footer.js +7 -0
  249. package/react/components/Footer/footer.js.map +1 -0
  250. package/{components → react/components}/Footer/sgds-footer.cjs.js +1 -0
  251. package/react/components/Footer/sgds-footer.cjs.js.map +1 -0
  252. package/react/components/Footer/sgds-footer.js +155 -0
  253. package/react/components/Footer/sgds-footer.js.map +1 -0
  254. package/{components → react/components}/Input/input.cjs.js +1 -0
  255. package/{components → react/components}/Input/input.cjs.js.map +1 -1
  256. package/react/components/Input/input.js +7 -0
  257. package/react/components/Input/input.js.map +1 -0
  258. package/{components → react/components}/Input/sgds-input.cjs.js +1 -0
  259. package/react/components/Input/sgds-input.cjs.js.map +1 -0
  260. package/react/components/Input/sgds-input.js +262 -0
  261. package/react/components/Input/sgds-input.js.map +1 -0
  262. package/{components → react/components}/Mainnav/mainnav-dropdown.cjs.js +1 -0
  263. package/{components → react/components}/Mainnav/mainnav-dropdown.cjs.js.map +1 -1
  264. package/react/components/Mainnav/mainnav-dropdown.js +7 -0
  265. package/react/components/Mainnav/mainnav-dropdown.js.map +1 -0
  266. package/{components → react/components}/Mainnav/mainnav-item.cjs.js +1 -0
  267. package/{components → react/components}/Mainnav/mainnav-item.cjs.js.map +1 -1
  268. package/react/components/Mainnav/mainnav-item.js +7 -0
  269. package/react/components/Mainnav/mainnav-item.js.map +1 -0
  270. package/{components → react/components}/Mainnav/mainnav.cjs.js +1 -0
  271. package/{components → react/components}/Mainnav/mainnav.cjs.js.map +1 -1
  272. package/react/components/Mainnav/mainnav.js +7 -0
  273. package/react/components/Mainnav/mainnav.js.map +1 -0
  274. package/{components → react/components}/Mainnav/sgds-mainnav-dropdown.cjs.js +1 -0
  275. package/react/components/Mainnav/sgds-mainnav-dropdown.cjs.js.map +1 -0
  276. package/react/components/Mainnav/sgds-mainnav-dropdown.js +85 -0
  277. package/react/components/Mainnav/sgds-mainnav-dropdown.js.map +1 -0
  278. package/{components → react/components}/Mainnav/sgds-mainnav-item.cjs.js +1 -0
  279. package/react/components/Mainnav/sgds-mainnav-item.cjs.js.map +1 -0
  280. package/react/components/Mainnav/sgds-mainnav-item.js +14 -0
  281. package/react/components/Mainnav/sgds-mainnav-item.js.map +1 -0
  282. package/{components → react/components}/Mainnav/sgds-mainnav.cjs.js +1 -0
  283. package/react/components/Mainnav/sgds-mainnav.cjs.js.map +1 -0
  284. package/react/components/Mainnav/sgds-mainnav.js +227 -0
  285. package/react/components/Mainnav/sgds-mainnav.js.map +1 -0
  286. package/{components → react/components}/Masthead/masthead.cjs.js +1 -0
  287. package/{components → react/components}/Masthead/masthead.cjs.js.map +1 -1
  288. package/react/components/Masthead/masthead.js +7 -0
  289. package/react/components/Masthead/masthead.js.map +1 -0
  290. package/{components → react/components}/Masthead/sgds-masthead.cjs.js +1 -0
  291. package/react/components/Masthead/sgds-masthead.cjs.js.map +1 -0
  292. package/react/components/Masthead/sgds-masthead.js +182 -0
  293. package/react/components/Masthead/sgds-masthead.js.map +1 -0
  294. package/{components → react/components}/Modal/modal.cjs.js +1 -0
  295. package/{components → react/components}/Modal/modal.cjs.js.map +1 -1
  296. package/react/components/Modal/modal.js +7 -0
  297. package/react/components/Modal/modal.js.map +1 -0
  298. package/{components → react/components}/Modal/sgds-modal.cjs.js +1 -0
  299. package/react/components/Modal/sgds-modal.cjs.js.map +1 -0
  300. package/react/components/Modal/sgds-modal.js +340 -0
  301. package/react/components/Modal/sgds-modal.js.map +1 -0
  302. package/{components → react/components}/Pagination/pagination.cjs.js +1 -0
  303. package/{components → react/components}/Pagination/pagination.cjs.js.map +1 -1
  304. package/react/components/Pagination/pagination.js +7 -0
  305. package/react/components/Pagination/pagination.js.map +1 -0
  306. package/{components → react/components}/Pagination/sgds-pagination.cjs.js +1 -0
  307. package/react/components/Pagination/sgds-pagination.cjs.js.map +1 -0
  308. package/react/components/Pagination/sgds-pagination.js +364 -0
  309. package/react/components/Pagination/sgds-pagination.js.map +1 -0
  310. package/{components → react/components}/Progress/progress-bar.cjs.js +1 -0
  311. package/{components → react/components}/Progress/progress-bar.cjs.js.map +1 -1
  312. package/react/components/Progress/progress-bar.js +7 -0
  313. package/react/components/Progress/progress-bar.js.map +1 -0
  314. package/{components → react/components}/Progress/progress.cjs.js +1 -0
  315. package/{components → react/components}/Progress/progress.cjs.js.map +1 -1
  316. package/react/components/Progress/progress.js +7 -0
  317. package/react/components/Progress/progress.js.map +1 -0
  318. package/{components → react/components}/Progress/sgds-progress-bar.cjs.js +1 -0
  319. package/react/components/Progress/sgds-progress-bar.cjs.js.map +1 -0
  320. package/react/components/Progress/sgds-progress-bar.js +59 -0
  321. package/react/components/Progress/sgds-progress-bar.js.map +1 -0
  322. package/{components → react/components}/Progress/sgds-progress.cjs.js +1 -0
  323. package/react/components/Progress/sgds-progress.cjs.js.map +1 -0
  324. package/react/components/Progress/sgds-progress.js +30 -0
  325. package/react/components/Progress/sgds-progress.js.map +1 -0
  326. package/{components → react/components}/QuantityToggle/quantity-toggle.cjs.js +1 -0
  327. package/{components → react/components}/QuantityToggle/quantity-toggle.cjs.js.map +1 -1
  328. package/react/components/QuantityToggle/quantity-toggle.js +7 -0
  329. package/react/components/QuantityToggle/quantity-toggle.js.map +1 -0
  330. package/{components → react/components}/QuantityToggle/sgds-quantity-toggle.cjs.js +1 -0
  331. package/react/components/QuantityToggle/sgds-quantity-toggle.cjs.js.map +1 -0
  332. package/react/components/QuantityToggle/sgds-quantity-toggle.js +210 -0
  333. package/react/components/QuantityToggle/sgds-quantity-toggle.js.map +1 -0
  334. package/{components → react/components}/Radio/radio-group.cjs.js +1 -0
  335. package/{components → react/components}/Radio/radio-group.cjs.js.map +1 -1
  336. package/react/components/Radio/radio-group.js +7 -0
  337. package/react/components/Radio/radio-group.js.map +1 -0
  338. package/{components → react/components}/Radio/radio.cjs.js +1 -0
  339. package/{components → react/components}/Radio/radio.cjs.js.map +1 -1
  340. package/react/components/Radio/radio.js +7 -0
  341. package/react/components/Radio/radio.js.map +1 -0
  342. package/{components → react/components}/Radio/sgds-radio-group.cjs.js +1 -0
  343. package/react/components/Radio/sgds-radio-group.cjs.js.map +1 -0
  344. package/react/components/Radio/sgds-radio-group.js +240 -0
  345. package/react/components/Radio/sgds-radio-group.js.map +1 -0
  346. package/{components → react/components}/Radio/sgds-radio.cjs.js +1 -0
  347. package/react/components/Radio/sgds-radio.cjs.js.map +1 -0
  348. package/react/components/Radio/sgds-radio.js +138 -0
  349. package/react/components/Radio/sgds-radio.js.map +1 -0
  350. package/{components → react/components}/Sidenav/sgds-sidenav-item.cjs.js +1 -0
  351. package/react/components/Sidenav/sgds-sidenav-item.cjs.js.map +1 -0
  352. package/react/components/Sidenav/sgds-sidenav-item.js +256 -0
  353. package/react/components/Sidenav/sgds-sidenav-item.js.map +1 -0
  354. package/{components → react/components}/Sidenav/sgds-sidenav-link.cjs.js +1 -0
  355. package/react/components/Sidenav/sgds-sidenav-link.cjs.js.map +1 -0
  356. package/react/components/Sidenav/sgds-sidenav-link.js +18 -0
  357. package/react/components/Sidenav/sgds-sidenav-link.js.map +1 -0
  358. package/{components → react/components}/Sidenav/sgds-sidenav.cjs.js +1 -0
  359. package/react/components/Sidenav/sgds-sidenav.cjs.js.map +1 -0
  360. package/react/components/Sidenav/sgds-sidenav.js +75 -0
  361. package/react/components/Sidenav/sgds-sidenav.js.map +1 -0
  362. package/{components → react/components}/Sidenav/sidenav-item.cjs.js +1 -0
  363. package/{components → react/components}/Sidenav/sidenav-item.cjs.js.map +1 -1
  364. package/react/components/Sidenav/sidenav-item.js +7 -0
  365. package/react/components/Sidenav/sidenav-item.js.map +1 -0
  366. package/{components → react/components}/Sidenav/sidenav-link.cjs.js +1 -0
  367. package/{components → react/components}/Sidenav/sidenav-link.cjs.js.map +1 -1
  368. package/react/components/Sidenav/sidenav-link.js +7 -0
  369. package/react/components/Sidenav/sidenav-link.js.map +1 -0
  370. package/{components → react/components}/Sidenav/sidenav.cjs.js +1 -0
  371. package/{components → react/components}/Sidenav/sidenav.cjs.js.map +1 -1
  372. package/react/components/Sidenav/sidenav.js +7 -0
  373. package/react/components/Sidenav/sidenav.js.map +1 -0
  374. package/{components → react/components}/Spinner/sgds-spinner.cjs.js +1 -0
  375. package/react/components/Spinner/sgds-spinner.cjs.js.map +1 -0
  376. package/react/components/Spinner/sgds-spinner.js +38 -0
  377. package/react/components/Spinner/sgds-spinner.js.map +1 -0
  378. package/{components → react/components}/Spinner/spinner.cjs.js +1 -0
  379. package/{components → react/components}/Spinner/spinner.cjs.js.map +1 -1
  380. package/react/components/Spinner/spinner.js +8 -0
  381. package/react/components/Spinner/spinner.js.map +1 -0
  382. package/{components → react/components}/Stepper/sgds-stepper.cjs.js +1 -0
  383. package/react/components/Stepper/sgds-stepper.cjs.js.map +1 -0
  384. package/react/components/Stepper/sgds-stepper.js +132 -0
  385. package/react/components/Stepper/sgds-stepper.js.map +1 -0
  386. package/{components → react/components}/Stepper/stepper.cjs.js +1 -0
  387. package/{components → react/components}/Stepper/stepper.cjs.js.map +1 -1
  388. package/react/components/Stepper/stepper.js +7 -0
  389. package/react/components/Stepper/stepper.js.map +1 -0
  390. package/{components → react/components}/Tab/sgds-tab-group.cjs.js +1 -0
  391. package/react/components/Tab/sgds-tab-group.cjs.js.map +1 -0
  392. package/react/components/Tab/sgds-tab-group.js +233 -0
  393. package/react/components/Tab/sgds-tab-group.js.map +1 -0
  394. package/{components → react/components}/Tab/sgds-tab-panel.cjs.js +1 -0
  395. package/react/components/Tab/sgds-tab-panel.cjs.js.map +1 -0
  396. package/react/components/Tab/sgds-tab-panel.js +63 -0
  397. package/react/components/Tab/sgds-tab-panel.js.map +1 -0
  398. package/{components → react/components}/Tab/sgds-tab.cjs.js +1 -0
  399. package/react/components/Tab/sgds-tab.cjs.js.map +1 -0
  400. package/react/components/Tab/sgds-tab.js +110 -0
  401. package/react/components/Tab/sgds-tab.js.map +1 -0
  402. package/{components → react/components}/Tab/tab-group.cjs.js +1 -0
  403. package/{components → react/components}/Tab/tab-group.cjs.js.map +1 -1
  404. package/react/components/Tab/tab-group.js +7 -0
  405. package/react/components/Tab/tab-group.js.map +1 -0
  406. package/{components → react/components}/Tab/tab-panel.cjs.js +1 -0
  407. package/{components → react/components}/Tab/tab-panel.cjs.js.map +1 -1
  408. package/react/components/Tab/tab-panel.js +7 -0
  409. package/react/components/Tab/tab-panel.js.map +1 -0
  410. package/{components → react/components}/Tab/tab.cjs.js +1 -0
  411. package/{components → react/components}/Tab/tab.cjs.js.map +1 -1
  412. package/react/components/Tab/tab.js +7 -0
  413. package/react/components/Tab/tab.js.map +1 -0
  414. package/{components → react/components}/Table/sgds-table.cjs.js +1 -0
  415. package/react/components/Table/sgds-table.cjs.js.map +1 -0
  416. package/react/components/Table/sgds-table.js +267 -0
  417. package/react/components/Table/sgds-table.js.map +1 -0
  418. package/{components → react/components}/Table/table.cjs.js +1 -0
  419. package/{components → react/components}/Table/table.cjs.js.map +1 -1
  420. package/react/components/Table/table.js +7 -0
  421. package/react/components/Table/table.js.map +1 -0
  422. package/{components → react/components}/Textarea/sgds-textarea.cjs.js +1 -0
  423. package/react/components/Textarea/sgds-textarea.cjs.js.map +1 -0
  424. package/react/components/Textarea/sgds-textarea.js +252 -0
  425. package/react/components/Textarea/sgds-textarea.js.map +1 -0
  426. package/{components → react/components}/Textarea/textarea.cjs.js +1 -0
  427. package/{components → react/components}/Textarea/textarea.cjs.js.map +1 -1
  428. package/react/components/Textarea/textarea.js +7 -0
  429. package/react/components/Textarea/textarea.js.map +1 -0
  430. package/{components → react/components}/Toast/sgds-toast-container.cjs.js +1 -0
  431. package/react/components/Toast/sgds-toast-container.cjs.js.map +1 -0
  432. package/react/components/Toast/sgds-toast-container.js +36 -0
  433. package/react/components/Toast/sgds-toast-container.js.map +1 -0
  434. package/{components → react/components}/Toast/sgds-toast.cjs.js +1 -0
  435. package/react/components/Toast/sgds-toast.cjs.js.map +1 -0
  436. package/react/components/Toast/sgds-toast.js +152 -0
  437. package/react/components/Toast/sgds-toast.js.map +1 -0
  438. package/{components → react/components}/Toast/toast-container.cjs.js +1 -0
  439. package/{components → react/components}/Toast/toast-container.cjs.js.map +1 -1
  440. package/react/components/Toast/toast-container.js +7 -0
  441. package/react/components/Toast/toast-container.js.map +1 -0
  442. package/{components → react/components}/Toast/toast.cjs.js +1 -0
  443. package/{components → react/components}/Toast/toast.cjs.js.map +1 -1
  444. package/react/components/Toast/toast.js +7 -0
  445. package/react/components/Toast/toast.js.map +1 -0
  446. package/{components → react/components}/Tooltip/sgds-tooltip.cjs.js +1 -0
  447. package/react/components/Tooltip/sgds-tooltip.cjs.js.map +1 -0
  448. package/react/components/Tooltip/sgds-tooltip.js +121 -0
  449. package/react/components/Tooltip/sgds-tooltip.js.map +1 -0
  450. package/{components → react/components}/Tooltip/tooltip.cjs.js +1 -0
  451. package/{components → react/components}/Tooltip/tooltip.cjs.js.map +1 -1
  452. package/react/components/Tooltip/tooltip.js +7 -0
  453. package/react/components/Tooltip/tooltip.js.map +1 -0
  454. package/react/datepicker/index.cjs.js +2 -1
  455. package/react/datepicker/index.cjs.js.map +1 -1
  456. package/react/datepicker/index.js +2 -1
  457. package/react/datepicker/index.js.map +1 -1
  458. package/react/drawer/index.cjs.js +2 -1
  459. package/react/drawer/index.cjs.js.map +1 -1
  460. package/react/drawer/index.js +2 -1
  461. package/react/drawer/index.js.map +1 -1
  462. package/react/dropdown/index.cjs.js +2 -1
  463. package/react/dropdown/index.cjs.js.map +1 -1
  464. package/react/dropdown/index.js +2 -1
  465. package/react/dropdown/index.js.map +1 -1
  466. package/react/dropdown-item/index.cjs.js +2 -1
  467. package/react/dropdown-item/index.cjs.js.map +1 -1
  468. package/react/dropdown-item/index.js +2 -1
  469. package/react/dropdown-item/index.js.map +1 -1
  470. package/react/file-upload/index.cjs.js +2 -1
  471. package/react/file-upload/index.cjs.js.map +1 -1
  472. package/react/file-upload/index.js +2 -1
  473. package/react/file-upload/index.js.map +1 -1
  474. package/react/footer/index.cjs.js +2 -1
  475. package/react/footer/index.cjs.js.map +1 -1
  476. package/react/footer/index.js +2 -1
  477. package/react/footer/index.js.map +1 -1
  478. package/react/index.cjs.js +1 -0
  479. package/react/index.cjs.js.map +1 -1
  480. package/react/index.js +1 -0
  481. package/react/index.js.map +1 -1
  482. package/react/input/index.cjs.js +2 -1
  483. package/react/input/index.cjs.js.map +1 -1
  484. package/react/input/index.js +2 -1
  485. package/react/input/index.js.map +1 -1
  486. package/{internals → react/internals}/CloseButton/close-button.cjs.js +1 -0
  487. package/{internals → react/internals}/CloseButton/close-button.cjs.js.map +1 -1
  488. package/react/internals/CloseButton/close-button.js +7 -0
  489. package/react/internals/CloseButton/close-button.js.map +1 -0
  490. package/{internals → react/internals}/CloseButton/sgds-close-button.cjs.js +1 -0
  491. package/react/internals/CloseButton/sgds-close-button.cjs.js.map +1 -0
  492. package/react/internals/CloseButton/sgds-close-button.js +55 -0
  493. package/react/internals/CloseButton/sgds-close-button.js.map +1 -0
  494. package/react/mainnav/index.cjs.js +2 -1
  495. package/react/mainnav/index.cjs.js.map +1 -1
  496. package/react/mainnav/index.js +2 -1
  497. package/react/mainnav/index.js.map +1 -1
  498. package/react/mainnav-dropdown/index.cjs.js +2 -1
  499. package/react/mainnav-dropdown/index.cjs.js.map +1 -1
  500. package/react/mainnav-dropdown/index.js +2 -1
  501. package/react/mainnav-dropdown/index.js.map +1 -1
  502. package/react/mainnav-item/index.cjs.js +2 -1
  503. package/react/mainnav-item/index.cjs.js.map +1 -1
  504. package/react/mainnav-item/index.js +2 -1
  505. package/react/mainnav-item/index.js.map +1 -1
  506. package/react/masthead/index.cjs.js +2 -1
  507. package/react/masthead/index.cjs.js.map +1 -1
  508. package/react/masthead/index.js +2 -1
  509. package/react/masthead/index.js.map +1 -1
  510. package/react/modal/index.cjs.js +2 -1
  511. package/react/modal/index.cjs.js.map +1 -1
  512. package/react/modal/index.js +2 -1
  513. package/react/modal/index.js.map +1 -1
  514. package/react/pagination/index.cjs.js +2 -1
  515. package/react/pagination/index.cjs.js.map +1 -1
  516. package/react/pagination/index.js +2 -1
  517. package/react/pagination/index.js.map +1 -1
  518. package/react/progress/index.cjs.js +2 -1
  519. package/react/progress/index.cjs.js.map +1 -1
  520. package/react/progress/index.js +2 -1
  521. package/react/progress/index.js.map +1 -1
  522. package/react/progress-bar/index.cjs.js +2 -1
  523. package/react/progress-bar/index.cjs.js.map +1 -1
  524. package/react/progress-bar/index.js +2 -1
  525. package/react/progress-bar/index.js.map +1 -1
  526. package/react/quantity-toggle/index.cjs.js +2 -1
  527. package/react/quantity-toggle/index.cjs.js.map +1 -1
  528. package/react/quantity-toggle/index.js +2 -1
  529. package/react/quantity-toggle/index.js.map +1 -1
  530. package/react/radio/index.cjs.js +2 -1
  531. package/react/radio/index.cjs.js.map +1 -1
  532. package/react/radio/index.js +2 -1
  533. package/react/radio/index.js.map +1 -1
  534. package/react/radio-group/index.cjs.js +2 -1
  535. package/react/radio-group/index.cjs.js.map +1 -1
  536. package/react/radio-group/index.js +2 -1
  537. package/react/radio-group/index.js.map +1 -1
  538. package/react/sidenav/index.cjs.js +2 -1
  539. package/react/sidenav/index.cjs.js.map +1 -1
  540. package/react/sidenav/index.js +2 -1
  541. package/react/sidenav/index.js.map +1 -1
  542. package/react/sidenav-item/index.cjs.js +2 -1
  543. package/react/sidenav-item/index.cjs.js.map +1 -1
  544. package/react/sidenav-item/index.js +2 -1
  545. package/react/sidenav-item/index.js.map +1 -1
  546. package/react/sidenav-link/index.cjs.js +2 -1
  547. package/react/sidenav-link/index.cjs.js.map +1 -1
  548. package/react/sidenav-link/index.js +2 -1
  549. package/react/sidenav-link/index.js.map +1 -1
  550. package/react/spinner/index.cjs.js +2 -1
  551. package/react/spinner/index.cjs.js.map +1 -1
  552. package/react/spinner/index.js +2 -1
  553. package/react/spinner/index.js.map +1 -1
  554. package/react/stepper/index.cjs.js +2 -1
  555. package/react/stepper/index.cjs.js.map +1 -1
  556. package/react/stepper/index.js +2 -1
  557. package/react/stepper/index.js.map +1 -1
  558. package/{styles → react/styles}/anchor.cjs.js +1 -0
  559. package/{styles → react/styles}/anchor.cjs.js.map +1 -1
  560. package/react/styles/anchor.js +7 -0
  561. package/react/styles/anchor.js.map +1 -0
  562. package/{styles → react/styles}/bg-variants.cjs.js +1 -0
  563. package/{styles → react/styles}/bg-variants.cjs.js.map +1 -1
  564. package/react/styles/bg-variants.js +7 -0
  565. package/react/styles/bg-variants.js.map +1 -0
  566. package/{styles → react/styles}/border-variants.cjs.js +1 -0
  567. package/{styles → react/styles}/border-variants.cjs.js.map +1 -1
  568. package/react/styles/border-variants.js +7 -0
  569. package/react/styles/border-variants.js.map +1 -0
  570. package/{styles → react/styles}/feedback.cjs.js +1 -0
  571. package/{styles → react/styles}/feedback.cjs.js.map +1 -1
  572. package/react/styles/feedback.js +7 -0
  573. package/react/styles/feedback.js.map +1 -0
  574. package/{styles → react/styles}/form-hint.cjs.js +1 -0
  575. package/{styles → react/styles}/form-hint.cjs.js.map +1 -1
  576. package/react/styles/form-hint.js +7 -0
  577. package/react/styles/form-hint.js.map +1 -0
  578. package/{styles → react/styles}/form-label.cjs.js +1 -0
  579. package/{styles → react/styles}/form-label.cjs.js.map +1 -1
  580. package/react/styles/form-label.js +7 -0
  581. package/react/styles/form-label.js.map +1 -0
  582. package/{styles → react/styles}/header-class.cjs.js +1 -0
  583. package/{styles → react/styles}/header-class.cjs.js.map +1 -1
  584. package/react/styles/header-class.js +7 -0
  585. package/react/styles/header-class.js.map +1 -0
  586. package/{styles → react/styles}/paragraph.cjs.js +1 -0
  587. package/{styles → react/styles}/paragraph.cjs.js.map +1 -1
  588. package/react/styles/paragraph.js +7 -0
  589. package/react/styles/paragraph.js.map +1 -0
  590. package/{styles → react/styles}/svg.cjs.js +1 -0
  591. package/{styles → react/styles}/svg.cjs.js.map +1 -1
  592. package/react/styles/svg.js +7 -0
  593. package/react/styles/svg.js.map +1 -0
  594. package/{styles → react/styles}/text-variants.cjs.js +1 -0
  595. package/{styles → react/styles}/text-variants.cjs.js.map +1 -1
  596. package/react/styles/text-variants.js +7 -0
  597. package/react/styles/text-variants.js.map +1 -0
  598. package/react/tab/index.cjs.js +2 -1
  599. package/react/tab/index.cjs.js.map +1 -1
  600. package/react/tab/index.js +2 -1
  601. package/react/tab/index.js.map +1 -1
  602. package/react/tab-group/index.cjs.js +2 -1
  603. package/react/tab-group/index.cjs.js.map +1 -1
  604. package/react/tab-group/index.js +2 -1
  605. package/react/tab-group/index.js.map +1 -1
  606. package/react/tab-panel/index.cjs.js +2 -1
  607. package/react/tab-panel/index.cjs.js.map +1 -1
  608. package/react/tab-panel/index.js +2 -1
  609. package/react/tab-panel/index.js.map +1 -1
  610. package/react/table/index.cjs.js +2 -1
  611. package/react/table/index.cjs.js.map +1 -1
  612. package/react/table/index.js +2 -1
  613. package/react/table/index.js.map +1 -1
  614. package/react/textarea/index.cjs.js +2 -1
  615. package/react/textarea/index.cjs.js.map +1 -1
  616. package/react/textarea/index.js +2 -1
  617. package/react/textarea/index.js.map +1 -1
  618. package/react/toast/index.cjs.js +2 -1
  619. package/react/toast/index.cjs.js.map +1 -1
  620. package/react/toast/index.js +2 -1
  621. package/react/toast/index.js.map +1 -1
  622. package/react/toast-container/index.cjs.js +2 -1
  623. package/react/toast-container/index.cjs.js.map +1 -1
  624. package/react/toast-container/index.js +2 -1
  625. package/react/toast-container/index.js.map +1 -1
  626. package/react/tooltip/index.cjs.js +2 -1
  627. package/react/tooltip/index.cjs.js.map +1 -1
  628. package/react/tooltip/index.js +2 -1
  629. package/react/tooltip/index.js.map +1 -1
  630. package/{utils → react/utils}/animate.cjs.js +1 -0
  631. package/react/utils/animate.cjs.js.map +1 -0
  632. package/react/utils/animate.js +42 -0
  633. package/react/utils/animate.js.map +1 -0
  634. package/{utils → react/utils}/animation-registry.cjs.js +1 -0
  635. package/react/utils/animation-registry.cjs.js.map +1 -0
  636. package/react/utils/animation-registry.js +43 -0
  637. package/react/utils/animation-registry.js.map +1 -0
  638. package/{utils → react/utils}/breakpoints.cjs.js +1 -0
  639. package/react/utils/breakpoints.cjs.js.map +1 -0
  640. package/react/utils/breakpoints.js +9 -0
  641. package/react/utils/breakpoints.js.map +1 -0
  642. package/{utils → react/utils}/defaultvalue.cjs.js +1 -0
  643. package/react/utils/defaultvalue.cjs.js.map +1 -0
  644. package/react/utils/defaultvalue.js +25 -0
  645. package/react/utils/defaultvalue.js.map +1 -0
  646. package/{utils → react/utils}/event.cjs.js +1 -0
  647. package/react/utils/event.cjs.js.map +1 -0
  648. package/react/utils/event.js +16 -0
  649. package/react/utils/event.js.map +1 -0
  650. package/{utils → react/utils}/form.cjs.js +1 -0
  651. package/react/utils/form.cjs.js.map +1 -0
  652. package/react/utils/form.js +133 -0
  653. package/react/utils/form.js.map +1 -0
  654. package/{utils → react/utils}/generateId.cjs.js +1 -0
  655. package/react/utils/generateId.cjs.js.map +1 -0
  656. package/react/utils/generateId.js +7 -0
  657. package/react/utils/generateId.js.map +1 -0
  658. package/{utils → react/utils}/mergeDeep.cjs.js +1 -0
  659. package/react/utils/mergeDeep.cjs.js.map +1 -0
  660. package/react/utils/mergeDeep.js +26 -0
  661. package/react/utils/mergeDeep.js.map +1 -0
  662. package/{utils → react/utils}/modal.cjs.js +1 -0
  663. package/react/utils/modal.cjs.js.map +1 -0
  664. package/react/utils/modal.js +56 -0
  665. package/react/utils/modal.js.map +1 -0
  666. package/{utils → react/utils}/object.cjs.js +1 -0
  667. package/react/utils/object.cjs.js.map +1 -0
  668. package/react/utils/object.js +7 -0
  669. package/react/utils/object.js.map +1 -0
  670. package/{utils → react/utils}/scroll.cjs.js +1 -0
  671. package/react/utils/scroll.cjs.js.map +1 -0
  672. package/react/utils/scroll.js +22 -0
  673. package/react/utils/scroll.js.map +1 -0
  674. package/{utils → react/utils}/slot.cjs.js +1 -0
  675. package/react/utils/slot.cjs.js.map +1 -0
  676. package/react/utils/slot.js +53 -0
  677. package/react/utils/slot.js.map +1 -0
  678. package/{utils → react/utils}/tabbable.cjs.js +1 -0
  679. package/react/utils/tabbable.cjs.js.map +1 -0
  680. package/react/utils/tabbable.js +69 -0
  681. package/react/utils/tabbable.js.map +1 -0
  682. package/{utils → react/utils}/time.cjs.js +1 -0
  683. package/react/utils/time.cjs.js.map +1 -0
  684. package/react/utils/time.js +75 -0
  685. package/react/utils/time.js.map +1 -0
  686. package/{utils → react/utils}/watch.cjs.js +1 -0
  687. package/react/utils/watch.cjs.js.map +1 -0
  688. package/react/utils/watch.js +40 -0
  689. package/react/utils/watch.js.map +1 -0
  690. package/base/card-element.cjs.js.map +0 -1
  691. package/base/dropdown-element.cjs.js.map +0 -1
  692. package/base/dropdown-list-element.cjs.js.map +0 -1
  693. package/base/form-check-element.cjs.js.map +0 -1
  694. package/base/link-element.cjs.js.map +0 -1
  695. package/base/sgds-element.cjs.js.map +0 -1
  696. package/components/Accordion/sgds-accordion-item.cjs.js.map +0 -1
  697. package/components/Accordion/sgds-accordion.cjs.js.map +0 -1
  698. package/components/ActionCard/sgds-action-card.cjs.js.map +0 -1
  699. package/components/Alert/sgds-alert-heading.cjs.js.map +0 -1
  700. package/components/Alert/sgds-alert-link.cjs.js.map +0 -1
  701. package/components/Alert/sgds-alert.cjs.js.map +0 -1
  702. package/components/Badge/sgds-badge.cjs.js.map +0 -1
  703. package/components/Breadcrumb/sgds-breadcrumb-item.cjs.js.map +0 -1
  704. package/components/Breadcrumb/sgds-breadcrumb.cjs.js.map +0 -1
  705. package/components/Button/sgds-button.cjs.js.map +0 -1
  706. package/components/Card/sgds-card.cjs.js.map +0 -1
  707. package/components/Checkbox/sgds-checkbox.cjs.js.map +0 -1
  708. package/components/ComboBox/sgds-combo-box.cjs.js.map +0 -1
  709. package/components/Datepicker/datepicker-calendar.cjs.js.map +0 -1
  710. package/components/Datepicker/datepicker-header.cjs.js.map +0 -1
  711. package/components/Datepicker/datepicker-input.cjs.js.map +0 -1
  712. package/components/Datepicker/sgds-datepicker.cjs.js.map +0 -1
  713. package/components/Drawer/sgds-drawer.cjs.js.map +0 -1
  714. package/components/Dropdown/sgds-dropdown-item.cjs.js.map +0 -1
  715. package/components/Dropdown/sgds-dropdown.cjs.js.map +0 -1
  716. package/components/FileUpload/sgds-file-upload.cjs.js.map +0 -1
  717. package/components/Footer/sgds-footer.cjs.js.map +0 -1
  718. package/components/Input/sgds-input.cjs.js.map +0 -1
  719. package/components/Mainnav/sgds-mainnav-dropdown.cjs.js.map +0 -1
  720. package/components/Mainnav/sgds-mainnav-item.cjs.js.map +0 -1
  721. package/components/Mainnav/sgds-mainnav.cjs.js.map +0 -1
  722. package/components/Masthead/sgds-masthead.cjs.js.map +0 -1
  723. package/components/Modal/sgds-modal.cjs.js.map +0 -1
  724. package/components/Pagination/sgds-pagination.cjs.js.map +0 -1
  725. package/components/Progress/sgds-progress-bar.cjs.js.map +0 -1
  726. package/components/Progress/sgds-progress.cjs.js.map +0 -1
  727. package/components/QuantityToggle/sgds-quantity-toggle.cjs.js.map +0 -1
  728. package/components/Radio/sgds-radio-group.cjs.js.map +0 -1
  729. package/components/Radio/sgds-radio.cjs.js.map +0 -1
  730. package/components/Sidenav/sgds-sidenav-item.cjs.js.map +0 -1
  731. package/components/Sidenav/sgds-sidenav-link.cjs.js.map +0 -1
  732. package/components/Sidenav/sgds-sidenav.cjs.js.map +0 -1
  733. package/components/Spinner/sgds-spinner.cjs.js.map +0 -1
  734. package/components/Stepper/sgds-stepper.cjs.js.map +0 -1
  735. package/components/Tab/sgds-tab-group.cjs.js.map +0 -1
  736. package/components/Tab/sgds-tab-panel.cjs.js.map +0 -1
  737. package/components/Tab/sgds-tab.cjs.js.map +0 -1
  738. package/components/Table/sgds-table.cjs.js.map +0 -1
  739. package/components/Textarea/sgds-textarea.cjs.js.map +0 -1
  740. package/components/Toast/sgds-toast-container.cjs.js.map +0 -1
  741. package/components/Toast/sgds-toast.cjs.js.map +0 -1
  742. package/components/Tooltip/sgds-tooltip.cjs.js.map +0 -1
  743. package/internals/CloseButton/sgds-close-button.cjs.js.map +0 -1
  744. package/utils/animate.cjs.js.map +0 -1
  745. package/utils/animation-registry.cjs.js.map +0 -1
  746. package/utils/breakpoints.cjs.js.map +0 -1
  747. package/utils/defaultvalue.cjs.js.map +0 -1
  748. package/utils/event.cjs.js.map +0 -1
  749. package/utils/form.cjs.js.map +0 -1
  750. package/utils/generateId.cjs.js.map +0 -1
  751. package/utils/mergeDeep.cjs.js.map +0 -1
  752. package/utils/modal.cjs.js.map +0 -1
  753. package/utils/object.cjs.js.map +0 -1
  754. package/utils/scroll.cjs.js.map +0 -1
  755. package/utils/slot.cjs.js.map +0 -1
  756. package/utils/tabbable.cjs.js.map +0 -1
  757. package/utils/time.cjs.js.map +0 -1
  758. package/utils/watch.cjs.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sgds-modal.js","sources":["../../../../src/components/Modal/sgds-modal.ts"],"sourcesContent":["import { html, nothing } from \"lit\";\nimport { property, query } from \"lit/decorators.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport { ifDefined } from \"lit/directives/if-defined.js\";\nimport { unsafeSVG } from \"lit/directives/unsafe-svg.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { animateTo, stopAnimations } from \"../../utils/animate\";\nimport { getAnimation, setDefaultAnimation } from \"../../utils/animation-registry\";\nimport { waitForEvent } from \"../../utils/event\";\nimport Modal from \"../../utils/modal\";\nimport { lockBodyScrolling, unlockBodyScrolling } from \"../../utils/scroll\";\nimport { HasSlotController } from \"../../utils/slot\";\nimport { watch } from \"../../utils/watch\";\nimport modalStyle from \"./modal.css\";\nimport { ScopedElementsMixin } from \"@open-wc/scoped-elements\";\nimport SgdsCloseButton from \"../../internals/CloseButton/sgds-close-button\";\nimport headerStyles from \"../../styles/header-class.css\";\nimport svgStyles from \"../../styles/svg.css\";\n/**\n * @summary The modal component inform users about a specific task and may contain critical information which users then have to make a decision.\n *\n * @slot default - The content of the Modal's body.\n * @slot footer - The content of the Modal's footer, typically used to pass in buttons for call to action.\n *\n * @event sgds-close - Emitted when the modal is called to close via mouseclick of close button, overlay or via keyboard esc key\n * @event sgds-show - Emitted when the modal opens\n * @event sgds-hide - Emitted when the modal closes\n * @event sgds-after-show - Emitted after modal opens and the animations has completed\n * @event sgds-after-hide - Emitted after modal closes and the animations has completed\n *\n * @csspart base - The component's base wrapper\n * @csspart overlay - The overlay that covers the screen behind the dialog\n * @csspart panel - The modal's dialog panel\n * @csspart header - The modal's header that wraps the title, titleIcon and close button\n * @csspart title - The h3 element wrapping title and titleIcon\n * @csspart body - The modal's body where the content lies\n * @csspart footers - The modal's footer\n *\n * @cssproperty --modal-panel-padding - The general modal padding of modal component. Applied to body, footer and header.\n * @cssproperty --modal-panel-z-index - The z-index of modal panel\n * @cssproperty --modal-panel-width - The width of modal panel.\n * @cssproperty --modal-panel-height - The height of modal panel.\n * @cssproperty --modal-panel-bg - The background color of modal panel\n * @cssproperty --modal-panel-border-radius - The border radius of modal panel\n * @cssproperty --modal-header-border-bottom - The bottom border of header\n * @cssproperty --modal-overlay-bg - The overlay's background color\n */\nexport class SgdsModal extends ScopedElementsMixin(SgdsElement) {\n static styles = [...SgdsElement.styles, headerStyles, svgStyles, modalStyle];\n /**@internal */\n static get scopedElements() {\n return {\n \"sgds-close-button\": SgdsCloseButton\n };\n }\n /**@internal */\n @query(\".modal\") dialog: HTMLElement;\n /**@internal */\n @query(\".modal-panel\") panel: HTMLElement;\n /**@internal */\n @query(\".modal-overlay\") overlay: HTMLElement;\n /**@internal */\n @query(\".modal-title\") heading: HTMLElement;\n /**@internal */\n private readonly hasSlotController = new HasSlotController(this, \"footer\");\n /**@internal */\n private modal: Modal;\n /**@internal */\n private originalTrigger: HTMLElement | null;\n\n /**Indicates whether or not the modal is open. You can use this in lieu of the show/hide methods. */\n @property({ type: Boolean, reflect: true }) open = false;\n /**The modal's title as displayed in the header */\n @property({ reflect: true }) title = \"\";\n /**The modal's icon as displayed in the header. Pass in SVG format icons as string directly */\n @property({ reflect: true }) titleIcon = \"\";\n /** Disables the header. This will also remove the default close button */\n @property({ type: Boolean, reflect: true }) noHeader = false;\n /** Centers the modal vertically in page */\n @property({ type: Boolean, reflect: true }) centered = false;\n /** Centers the contents inside the modal */\n @property({ type: Boolean, reflect: true }) centeredAlignVariant = false;\n /** Removes the default animation when opening and closing of modal */\n @property({ type: Boolean, reflect: true }) noAnimation = false;\n /** Removes the close button from modal header */\n @property({ type: Boolean, reflect: true }) noCloseButton = false;\n\n connectedCallback() {\n super.connectedCallback();\n this.handleDocumentKeyDown = this.handleDocumentKeyDown.bind(this);\n this.modal = new Modal(this);\n }\n\n firstUpdated() {\n this.dialog.hidden = !this.open;\n\n if (this.open) {\n this.addOpenListeners();\n this.modal.activate();\n lockBodyScrolling(this);\n }\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n unlockBodyScrolling(this);\n }\n\n /** Shows the dialog. */\n public async show() {\n if (this.open) {\n return undefined;\n }\n\n this.open = true;\n return waitForEvent(this, \"sgds-after-show\");\n }\n\n /** Hides the dialog */\n public async hide() {\n if (!this.open) {\n return undefined;\n }\n\n this.open = false;\n return waitForEvent(this, \"sgds-after-hide\");\n }\n\n private requestClose(source: \"close-button\" | \"keyboard\" | \"overlay\") {\n const sgdsRequestClose = this.emit(\"sgds-close\", {\n cancelable: true,\n detail: { source }\n });\n\n if (sgdsRequestClose.defaultPrevented) {\n const animation = getAnimation(this, \"modal.denyClose\");\n animateTo(this.panel, animation.keyframes);\n return;\n }\n\n this.hide();\n }\n\n addOpenListeners() {\n document.addEventListener(\"keydown\", this.handleDocumentKeyDown);\n }\n\n removeOpenListeners() {\n document.removeEventListener(\"keydown\", this.handleDocumentKeyDown);\n }\n\n handleDocumentKeyDown(event: KeyboardEvent) {\n if (this.open && event.key === \"Escape\") {\n event.stopPropagation();\n this.requestClose(\"keyboard\");\n }\n }\n\n @watch(\"open\", { waitUntilFirstUpdate: true })\n async handleOpenChange() {\n if (this.open) {\n // Show\n this.emit(\"sgds-show\");\n this.addOpenListeners();\n this.originalTrigger = document.activeElement as HTMLElement;\n this.modal.activate();\n\n lockBodyScrolling(this);\n\n await Promise.all([stopAnimations(this.dialog), stopAnimations(this.overlay)]);\n this.dialog.hidden = false;\n\n const panelAnimation = getAnimation(this, \"modal.show\");\n const overlayAnimation = getAnimation(this, \"modal.overlay.show\");\n !this.noAnimation &&\n (await Promise.all([\n animateTo(this.panel, panelAnimation.keyframes, panelAnimation.options),\n animateTo(this.overlay, overlayAnimation.keyframes, overlayAnimation.options)\n ]));\n\n this.emit(\"sgds-after-show\");\n\n // Add focus on modal heading after opening it\n this.heading.focus();\n } else {\n // Hide\n this.emit(\"sgds-hide\");\n this.removeOpenListeners();\n this.modal.deactivate();\n\n await Promise.all([stopAnimations(this.dialog), stopAnimations(this.overlay)]);\n const panelAnimation = getAnimation(this, \"modal.hide\");\n const overlayAnimation = getAnimation(this, \"modal.overlay.hide\");\n\n // Animate the overlay and the panel at the same time. Because animation durations might be different, we need to\n // hide each one individually when the animation finishes, otherwise the first one that finishes will reappear\n // unexpectedly. We'll unhide them after all animations have completed.\n !this.noAnimation &&\n (await Promise.all([\n animateTo(this.overlay, overlayAnimation.keyframes, overlayAnimation.options).then(() => {\n this.overlay.hidden = true;\n }),\n animateTo(this.panel, panelAnimation.keyframes, panelAnimation.options).then(() => {\n this.panel.hidden = true;\n })\n ]));\n\n this.dialog.hidden = true;\n\n // Now that the dialog is hidden, restore the overlay and panel for next time\n this.overlay.hidden = false;\n this.panel.hidden = false;\n\n unlockBodyScrolling(this);\n\n // Restore focus to the original trigger\n const trigger = this.originalTrigger;\n if (typeof trigger?.focus === \"function\") {\n setTimeout(() => trigger.focus());\n }\n\n this.emit(\"sgds-after-hide\");\n }\n }\n\n render() {\n const withLabelIcon = html`${unsafeSVG(this.titleIcon)}`;\n return html`\n <div\n part=\"base\"\n class=${classMap({\n modal: true,\n \"modal--open\": this.open,\n \"modal--has-footer\": this.hasSlotController.test(\"footer\"),\n centered: this.centered\n })}\n >\n <div part=\"overlay\" class=\"modal-overlay\" @click=${() => this.requestClose(\"overlay\")}></div>\n\n <div\n part=\"panel\"\n class=\"modal-panel\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-hidden=${this.open ? \"false\" : \"true\"}\n aria-label=${ifDefined(this.noHeader ? this.title : undefined)}\n aria-labelledby=${ifDefined(!this.noHeader ? \"title\" : undefined)}\n tabindex=\"-1\"\n >\n ${!this.noHeader\n ? html`\n <div\n part=\"header\"\n class=${classMap({\n \"modal-header\": true,\n centered: this.centeredAlignVariant\n })}\n >\n <h3\n part=\"title\"\n class=${classMap({\n \"modal-title\": true,\n centered: this.centeredAlignVariant\n })}\n id=\"title\"\n tabindex=\"-1\"\n >\n ${this.titleIcon ? withLabelIcon : \"\"} ${this.title}\n </h3>\n ${this.noCloseButton\n ? nothing\n : html`<sgds-close-button\n class=${classMap({\n \"modal-close\": true,\n centered: this.centeredAlignVariant\n })}\n @click=\"${() => this.requestClose(\"close-button\")}\"\n ariaLabel=\"close modal\"\n ></sgds-close-button>`}\n </div>\n `\n : \"\"}\n\n <div\n part=\"body\"\n class=${classMap({\n \"modal-body\": true,\n centered: this.centeredAlignVariant\n })}\n >\n <slot></slot>\n </div>\n\n <footer\n part=\"footer\"\n class=${classMap({\n \"modal-footer\": true,\n centered: this.centeredAlignVariant\n })}\n >\n <slot name=\"footer\"></slot>\n </footer>\n </div>\n </div>\n `;\n }\n}\n\nsetDefaultAnimation(\"modal.show\", {\n keyframes: [\n { opacity: 0, transform: \"scale(1) translate(0, -100%)\" },\n { opacity: 1, transform: \"scale(1) translate(0, 0%)\" }\n ],\n options: { duration: 400, easing: \"ease\" }\n});\n\nsetDefaultAnimation(\"modal.hide\", {\n keyframes: [\n { opacity: 1, transform: \"scale(1) translate(0, 0)\" },\n { opacity: 0, transform: \"scale(1) translate(0, -100%)\" }\n ],\n options: { duration: 400, easing: \"ease\" }\n});\n\nsetDefaultAnimation(\"modal.denyClose\", {\n keyframes: [{ transform: \"scale(1)\" }, { transform: \"scale(1.02)\" }, { transform: \"scale(1)\" }],\n options: { duration: 400 }\n});\n\nsetDefaultAnimation(\"modal.overlay.show\", {\n keyframes: [{ opacity: 0 }, { opacity: 1 }],\n options: { duration: 400 }\n});\n\nsetDefaultAnimation(\"modal.overlay.hide\", {\n keyframes: [{ opacity: 1 }, { opacity: 0 }],\n options: { duration: 400 }\n});\n\nexport default SgdsModal;\n"],"names":["headerStyles","svgStyles","modalStyle"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, '__esModule', { value: true });
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
1
+ {"version":3,"file":"pagination.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import { css } from 'lit';
3
+
4
+ var css_248z = css`:host{--pagination-color:var(--sgds-link);--pagination-bg:var(--sgds-body-bg);--pagination-hover-bg:var(--sgds-gray-200);--pagination-active-color:var(--sgds-white);--pagination-active-bg:var(--sgds-link);--pagination-disabled-color:var(--sgds-gray);--pagination-disabled-bg:var(--sgds-body-bg)}ul{margin-bottom:1rem;margin-top:0;padding-left:2rem}svg{vertical-align:middle}.pagination{display:flex;list-style:none;padding-left:0}.page-link{background-color:var(--pagination-bg);border:1px solid var(--sgds-border-color);color:var(--pagination-color);display:block;padding:.5rem 1rem;position:relative;text-decoration:none;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out,box-shadow .15s ease-in-out}@media (prefers-reduced-motion:reduce){.page-link{transition:none}}.page-link:hover{z-index:2}.page-link:focus,.page-link:hover{background-color:var(--pagination-hover-bg);color:var(--pagination-color)}.page-link:focus{box-shadow:0 0 0 .125rem rgba(15,113,187,.25);outline:0;z-index:3}.page-item{cursor:pointer}.page-item.disabled{cursor:not-allowed}.page-item:not(:first-child) .page-link{margin-left:-1px}.page-item.active .page-link{background-color:var(--pagination-active-bg);border-color:var(--sgds-info);color:var(--pagination-active-color);z-index:3}.page-item.disabled .page-link{--pagination-hover-bg: ;border-color:var(--sgds-disabled-color);opacity:var(--sgds-disabled-opacity)}.ellipsis-disabled{--pagination-hover-bg: ;color:var(--sgds-disabled-color);cursor:not-allowed}.page-item:first-child .page-link{border-bottom-left-radius:.3125rem;border-top-left-radius:.3125rem}.page-item:last-child .page-link{border-bottom-right-radius:.3125rem;border-top-right-radius:.3125rem}.pagination-sm .page-link{font-size:.875rem;padding:.25rem .5rem}.pagination-sm .page-item:first-child .page-link{border-bottom-left-radius:.2rem;border-top-left-radius:.2rem}.pagination-sm .page-item:last-child .page-link{border-bottom-right-radius:.2rem;border-top-right-radius:.2rem}.visually-hidden{clip:rect(0,0,0,0)!important;border:0!important;height:1px!important;margin:-1px!important;overflow:hidden!important;padding:0!important;position:absolute!important;white-space:nowrap!important;width:1px!important}`;
5
+
6
+ export { css_248z as default };
7
+ //# sourceMappingURL=pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pagination.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, '__esModule', { value: true });
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sgds-pagination.cjs.js","sources":["../../../../src/components/Pagination/sgds-pagination.ts"],"sourcesContent":["import { TemplateResult, html, nothing } from \"lit\";\nimport { property } from \"lit/decorators.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { watch } from \"../../utils/watch\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport paginationStyle from \"./pagination.css\";\n/**\n * @summary The Pagination component enables the user to select a specific page from a range of pages\n *\n * @event sgds-page-change - Event is emitted when `handleNextButton`, `handlePrevButton`, `handleNextEllipsisButton` and `handlePrevEllipsisButton` was called.\n *\n * @cssproperty --pagination-color - The text color of pagination\n * @cssproperty --pagination-bg - The background color of pagination\n * @cssproperty --pagination-hover-bg - The background color of pagination in hover state\n * @cssproperty --pagination-active-color - The text color of pagination in active state\n * @cssproperty --pagination-active-bg - The background color of pagination in active state\n * @cssproperty --pagination-disabled-color - The text color of pagination in disabled state\n * @cssproperty --pagination-disabled-bg - The background color of pagination in disabled state\n *\n **/\nexport class SgdsPagination extends SgdsElement {\n static styles = [...SgdsElement.styles, paginationStyle];\n\n /** Inserts the length value from a given sets of data objects*/\n @property({ type: Number }) dataLength = 0;\n\n /** Sets the starting active page upon render*/\n @property({ type: Number }) currentPage = 1;\n\n /** Sets the amount of data objects to be displayed per page */\n @property({ type: Number }) itemsPerPage = 5;\n\n /** Sets the page limit to be displayed at any given render. e.g 3, 5, 7, 9 */\n @property({ type: Number }) limit = 3;\n\n /** Sets the page direction button to contain text and/or icon */\n @property({ type: String }) directionVariant: directionVariant = \"icon-text\";\n\n /** Sets the size of all page items. */\n @property({ type: String }) size: sizeVariant = \"sm\";\n\n /** Toggles ellipsis buttons to be able to increment/decrement pages based on the ellipsisJump value set. By default, it will be false */\n @property({ type: Boolean }) ellipsisOn = false;\n\n /** When ellipsisOn is true, length of decrementing/incrementing of pages can be set with a number value*/\n @property({ type: Number }) ellipsisJump = 3;\n /** Enables rendering of the first-page button on the pagination, allowing users to jump to the initial page. By default, it will be false. When true, the first ellipsis will always be rendered */\n @property({ type: Boolean }) showFirstPage = false;\n /** Enables rendering of the last-page button on the pagination, allowing users to jump to the last page. By default, it will be false */\n @property({ type: Boolean }) showLastPage = false;\n\n /**@internal */\n @watch(\"currentPage\")\n _handleValueChange() {\n this.emit(\"sgds-page-change\", { detail: { currentPage: this.currentPage } });\n }\n\n /** @internal */\n private _handlePageClick(event: MouseEvent) {\n const liTarget = event.target as HTMLElement;\n const clickedLi = liTarget.closest(\"li\");\n\n if (clickedLi) {\n const clickedPage = Number(clickedLi.getAttribute(\"key\"));\n if (clickedPage !== this.currentPage) {\n this.currentPage = clickedPage;\n }\n }\n }\n\n /** @internal */\n private _handleNextButton() {\n this.currentPage = this.currentPage + 1;\n }\n\n /** @internal */\n private _handlePrevButton() {\n this.currentPage = this.currentPage - 1;\n }\n\n /** @internal */\n private _handleNextEllipsisButton() {\n this.currentPage = this.currentPage + this.ellipsisJump;\n if (this.currentPage >= this.pages.length) this.currentPage = this.pages.length;\n }\n\n /** @internal */\n private _handlePrevEllipsisButton() {\n this.currentPage = this.currentPage - this.ellipsisJump;\n if (this.currentPage <= 1) this.currentPage = this.pages[0];\n }\n\n /** @internal */\n private get pages() {\n const pages = [];\n for (let i = 1; i <= Math.ceil(this.dataLength / this.itemsPerPage); i++) {\n pages.push(i);\n }\n return pages;\n }\n\n /** @internal */\n private get _sanitizeLimit() {\n return this.limit >= this.pages.length ? this.pages.length : this.limit;\n }\n\n /**@internal */\n private _handleKeyDown(\n event: KeyboardEvent,\n action: string,\n number?: number,\n isFirstEllipsis?: boolean,\n isPrevButton?: boolean\n ) {\n if (event.key === \"Enter\") {\n switch (action) {\n case \"pageNumber\":\n this.currentPage = number;\n break;\n case \"ellipsis\":\n if (isFirstEllipsis) {\n this._handlePrevEllipsisButton();\n } else {\n this._handleNextEllipsisButton();\n }\n break;\n case \"directionButton\":\n if (isPrevButton) {\n this._handlePrevButton();\n } else {\n this._handleNextButton();\n }\n break;\n }\n }\n }\n\n private _renderFirstPage() {\n let sanitizeStartPage = this.currentPage - Math.floor(this._sanitizeLimit / 2);\n\n if (this.pages.length - sanitizeStartPage < this.limit) {\n sanitizeStartPage = this.pages.length + 1 - this.limit;\n }\n\n if (sanitizeStartPage > 1) {\n return html`\n <li key=${1} class=\"page-item ${this.currentPage === 1 ? \"active\" : \"\"}\">\n <span\n class=\"page-link\"\n tabindex=\"0\"\n @click=${this._handlePageClick}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"pageNumber\", 1)}\n >1</span\n >\n </li>\n `;\n } else {\n return null;\n }\n }\n /** @internal */\n private _renderPgNumbers() {\n const pagesToShow = [];\n let sanitizeStartPage = 1;\n let endPage: number;\n\n if (this.limit < this.pages.length) {\n sanitizeStartPage = this.currentPage - Math.floor(this._sanitizeLimit / 2);\n }\n\n if (this.pages.length - sanitizeStartPage < this.limit) {\n sanitizeStartPage = this.pages.length + 1 - this.limit;\n }\n\n if (sanitizeStartPage <= 0) {\n sanitizeStartPage = 1;\n }\n\n endPage = sanitizeStartPage + this._sanitizeLimit - 1;\n\n if (endPage > this.pages.length) {\n endPage = this.pages.length;\n }\n\n if (this.currentPage === this.pages.length) {\n sanitizeStartPage = this.pages.length - this._sanitizeLimit + 1;\n }\n\n for (let i = sanitizeStartPage; i <= endPage; i++) {\n pagesToShow.push(i);\n }\n return pagesToShow.map(\n number => html`\n <li key=${number} class=\"page-item ${this.currentPage === number ? \"active\" : \"\"}\">\n <span\n class=\"page-link\"\n tabindex=\"0\"\n @click=${this._handlePageClick}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"pageNumber\", number)}\n >${number}</span\n >\n </li>\n `\n );\n }\n\n private ellipsisContent = html`\n <span aria-hidden=\"true\">…</span>\n <span class=\"visually-hidden\">Ellipsis</span>\n `;\n\n /** @internal */\n private _renderFirstEllipsis = () => {\n const isHidden = !(\n this.pages.length !== this._sanitizeLimit && this.currentPage - Math.floor(this._sanitizeLimit / 2) > 1\n );\n\n if (isHidden) {\n return null;\n }\n\n const tabIndex = isHidden ? -1 : 0;\n\n return html`\n <li\n class=${classMap({ \"page-item\": true, \"ellipsis-disabled\": !this.ellipsisOn })}\n @click=${this.ellipsisOn && this._handlePrevEllipsisButton}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"ellipsis\", undefined, true)}\n >\n <span class=\"page-link\" role=\"button\" tabindex=${tabIndex}>${this.ellipsisContent}</span>\n </li>\n `;\n };\n\n /** @internal */\n private _renderLastEllipsis() {\n const isEvenLimit = this._sanitizeLimit % 2 === 0;\n const differentialLimitCondition = isEvenLimit\n ? this.currentPage + Math.floor(this._sanitizeLimit / 2) <= this.pages.length\n : this.currentPage + Math.floor(this._sanitizeLimit / 2) < this.pages.length;\n\n const shouldRenderEllipsis = this.pages.length !== this.limit && differentialLimitCondition;\n const tabIndex = shouldRenderEllipsis && this.ellipsisOn ? 0 : -1;\n if (!shouldRenderEllipsis || this._sanitizeLimit >= this.pages.length) {\n return null;\n }\n\n if (this.ellipsisOn) {\n return html`\n <li\n class=\"page-item ${this.ellipsisOn ? \"\" : \"ellipsis-disabled\"} \"\n @click=${this.ellipsisOn && this._handleNextEllipsisButton}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"ellipsis\", undefined, false)}\n >\n <span class=\"page-link\" role=\"button\" tabindex=${tabIndex}>${this.ellipsisContent}</span>\n </li>\n `;\n } else {\n return html`\n <li class=\"page-item ${this.ellipsisOn ? \"\" : \"ellipsis-disabled\"} \">\n <span class=\"page-link disabled\" tabindex=${tabIndex}>${this.ellipsisContent}</span>\n </li>\n `;\n }\n }\n\n private _renderLastPage() {\n const isEvenLimit = this._sanitizeLimit % 2 === 0;\n const differentialLimitCondition = isEvenLimit\n ? this.currentPage + Math.floor(this._sanitizeLimit / 2) <= this.pages.length\n : this.currentPage + Math.floor(this._sanitizeLimit / 2) < this.pages.length;\n\n if (this.pages.length !== this._sanitizeLimit && differentialLimitCondition) {\n return html`\n <li key=${this.pages.length} class=\"page-item ${this.currentPage === this.pages.length ? \"active\" : \"\"}\">\n <span\n class=\"page-link\"\n tabindex=\"0\"\n @click=${this._handlePageClick}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"pageNumber\", this.pages.length)}\n >${this.pages.length}</span\n >\n </li>\n `;\n } else {\n return null;\n }\n }\n\n /** @internal */\n private _getLeftChevronSVG() {\n return html`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-chevron-left\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z\"\n />\n </svg>\n `;\n }\n\n /** @internal */\n private _getRightChevronSVG() {\n return html`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-chevron-right\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z\"\n />\n </svg>\n `;\n }\n\n /** @internal */\n private _renderDirectionButton(\n directionLabel: string,\n iconClass: string,\n clickHandler: (event: MouseEvent) => void,\n keydownHandler: (event: KeyboardEvent) => void,\n directionVariant: string\n ): TemplateResult {\n const isDisabled = iconClass === \"left\" ? this.currentPage === 1 : this.currentPage === this.pages.length;\n\n const tabIndex = isDisabled ? -1 : 0;\n\n const keydownListener = (event: KeyboardEvent) => {\n if (!isDisabled && event.key === \"Enter\") {\n keydownHandler(event);\n }\n };\n\n return html`\n <li class=\"page-item ${isDisabled ? \"disabled\" : \"\"}\" @click=${isDisabled ? undefined : clickHandler}>\n <span class=\"page-link\" tabindex=${tabIndex} @keydown=${keydownListener}>\n ${directionVariant === \"icon-text\"\n ? html`\n ${iconClass === \"left\" ? this._getLeftChevronSVG() : \"\"} ${directionLabel}\n ${iconClass === \"right\" ? this._getRightChevronSVG() : \"\"}\n `\n : directionVariant === \"text\"\n ? html`${directionLabel}`\n : directionVariant === \"icon\"\n ? html`${iconClass === \"left\" ? this._getLeftChevronSVG() : this._getRightChevronSVG()}`\n : html``}\n </span>\n </li>\n `;\n }\n\n render() {\n return html`\n <nav aria-label=\"pagination\" role=\"navigation\">\n <ul class=\"pagination pagination-${this.size} sgds\" directionVariant=${this.directionVariant}>\n ${this._renderDirectionButton(\n \"Previous\",\n \"left\",\n this._handlePrevButton,\n (e: KeyboardEvent) => this._handleKeyDown(e, \"directionButton\", undefined, undefined, true),\n this.directionVariant\n )}\n ${this.showFirstPage ? this._renderFirstPage() : nothing}\n ${this.showFirstPage || this.ellipsisOn ? this._renderFirstEllipsis() : nothing} ${this._renderPgNumbers()}\n ${this._renderLastEllipsis()} ${this.showLastPage ? this._renderLastPage() : nothing}\n ${this._renderDirectionButton(\n \"Next\",\n \"right\",\n this._handleNextButton,\n (e: KeyboardEvent) => this._handleKeyDown(e, \"directionButton\", undefined, undefined, false),\n this.directionVariant\n )}\n </ul>\n </nav>\n `;\n }\n}\n\nexport type directionVariant = \"icon\" | \"icon-text\" | \"text\";\n\nexport type sizeVariant = \"sm\" | \"md\";\n\nexport default SgdsPagination;\n"],"names":["SgdsElement","html","classMap","nothing","paginationStyle","__decorate","property","watch"],"mappings":"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"}
@@ -0,0 +1,364 @@
1
+ 'use client';
2
+ import { __decorate } from 'tslib';
3
+ import { html, nothing } from 'lit';
4
+ import { property } from 'lit/decorators.js';
5
+ import SgdsElement from '../../base/sgds-element.js';
6
+ import { watch } from '../../utils/watch.js';
7
+ import { classMap } from 'lit/directives/class-map.js';
8
+ import css_248z from './pagination.js';
9
+
10
+ /**
11
+ * @summary The Pagination component enables the user to select a specific page from a range of pages
12
+ *
13
+ * @event sgds-page-change - Event is emitted when `handleNextButton`, `handlePrevButton`, `handleNextEllipsisButton` and `handlePrevEllipsisButton` was called.
14
+ *
15
+ * @cssproperty --pagination-color - The text color of pagination
16
+ * @cssproperty --pagination-bg - The background color of pagination
17
+ * @cssproperty --pagination-hover-bg - The background color of pagination in hover state
18
+ * @cssproperty --pagination-active-color - The text color of pagination in active state
19
+ * @cssproperty --pagination-active-bg - The background color of pagination in active state
20
+ * @cssproperty --pagination-disabled-color - The text color of pagination in disabled state
21
+ * @cssproperty --pagination-disabled-bg - The background color of pagination in disabled state
22
+ *
23
+ **/
24
+ class SgdsPagination extends SgdsElement {
25
+ constructor() {
26
+ super(...arguments);
27
+ /** Inserts the length value from a given sets of data objects*/
28
+ this.dataLength = 0;
29
+ /** Sets the starting active page upon render*/
30
+ this.currentPage = 1;
31
+ /** Sets the amount of data objects to be displayed per page */
32
+ this.itemsPerPage = 5;
33
+ /** Sets the page limit to be displayed at any given render. e.g 3, 5, 7, 9 */
34
+ this.limit = 3;
35
+ /** Sets the page direction button to contain text and/or icon */
36
+ this.directionVariant = "icon-text";
37
+ /** Sets the size of all page items. */
38
+ this.size = "sm";
39
+ /** Toggles ellipsis buttons to be able to increment/decrement pages based on the ellipsisJump value set. By default, it will be false */
40
+ this.ellipsisOn = false;
41
+ /** When ellipsisOn is true, length of decrementing/incrementing of pages can be set with a number value*/
42
+ this.ellipsisJump = 3;
43
+ /** Enables rendering of the first-page button on the pagination, allowing users to jump to the initial page. By default, it will be false. When true, the first ellipsis will always be rendered */
44
+ this.showFirstPage = false;
45
+ /** Enables rendering of the last-page button on the pagination, allowing users to jump to the last page. By default, it will be false */
46
+ this.showLastPage = false;
47
+ this.ellipsisContent = html `
48
+ <span aria-hidden="true">…</span>
49
+ <span class="visually-hidden">Ellipsis</span>
50
+ `;
51
+ /** @internal */
52
+ this._renderFirstEllipsis = () => {
53
+ const isHidden = !(this.pages.length !== this._sanitizeLimit && this.currentPage - Math.floor(this._sanitizeLimit / 2) > 1);
54
+ if (isHidden) {
55
+ return null;
56
+ }
57
+ const tabIndex = isHidden ? -1 : 0;
58
+ return html `
59
+ <li
60
+ class=${classMap({ "page-item": true, "ellipsis-disabled": !this.ellipsisOn })}
61
+ @click=${this.ellipsisOn && this._handlePrevEllipsisButton}
62
+ @keydown=${(e) => this._handleKeyDown(e, "ellipsis", undefined, true)}
63
+ >
64
+ <span class="page-link" role="button" tabindex=${tabIndex}>${this.ellipsisContent}</span>
65
+ </li>
66
+ `;
67
+ };
68
+ }
69
+ /**@internal */
70
+ _handleValueChange() {
71
+ this.emit("sgds-page-change", { detail: { currentPage: this.currentPage } });
72
+ }
73
+ /** @internal */
74
+ _handlePageClick(event) {
75
+ const liTarget = event.target;
76
+ const clickedLi = liTarget.closest("li");
77
+ if (clickedLi) {
78
+ const clickedPage = Number(clickedLi.getAttribute("key"));
79
+ if (clickedPage !== this.currentPage) {
80
+ this.currentPage = clickedPage;
81
+ }
82
+ }
83
+ }
84
+ /** @internal */
85
+ _handleNextButton() {
86
+ this.currentPage = this.currentPage + 1;
87
+ }
88
+ /** @internal */
89
+ _handlePrevButton() {
90
+ this.currentPage = this.currentPage - 1;
91
+ }
92
+ /** @internal */
93
+ _handleNextEllipsisButton() {
94
+ this.currentPage = this.currentPage + this.ellipsisJump;
95
+ if (this.currentPage >= this.pages.length)
96
+ this.currentPage = this.pages.length;
97
+ }
98
+ /** @internal */
99
+ _handlePrevEllipsisButton() {
100
+ this.currentPage = this.currentPage - this.ellipsisJump;
101
+ if (this.currentPage <= 1)
102
+ this.currentPage = this.pages[0];
103
+ }
104
+ /** @internal */
105
+ get pages() {
106
+ const pages = [];
107
+ for (let i = 1; i <= Math.ceil(this.dataLength / this.itemsPerPage); i++) {
108
+ pages.push(i);
109
+ }
110
+ return pages;
111
+ }
112
+ /** @internal */
113
+ get _sanitizeLimit() {
114
+ return this.limit >= this.pages.length ? this.pages.length : this.limit;
115
+ }
116
+ /**@internal */
117
+ _handleKeyDown(event, action, number, isFirstEllipsis, isPrevButton) {
118
+ if (event.key === "Enter") {
119
+ switch (action) {
120
+ case "pageNumber":
121
+ this.currentPage = number;
122
+ break;
123
+ case "ellipsis":
124
+ if (isFirstEllipsis) {
125
+ this._handlePrevEllipsisButton();
126
+ }
127
+ else {
128
+ this._handleNextEllipsisButton();
129
+ }
130
+ break;
131
+ case "directionButton":
132
+ if (isPrevButton) {
133
+ this._handlePrevButton();
134
+ }
135
+ else {
136
+ this._handleNextButton();
137
+ }
138
+ break;
139
+ }
140
+ }
141
+ }
142
+ _renderFirstPage() {
143
+ let sanitizeStartPage = this.currentPage - Math.floor(this._sanitizeLimit / 2);
144
+ if (this.pages.length - sanitizeStartPage < this.limit) {
145
+ sanitizeStartPage = this.pages.length + 1 - this.limit;
146
+ }
147
+ if (sanitizeStartPage > 1) {
148
+ return html `
149
+ <li key=${1} class="page-item ${this.currentPage === 1 ? "active" : ""}">
150
+ <span
151
+ class="page-link"
152
+ tabindex="0"
153
+ @click=${this._handlePageClick}
154
+ @keydown=${(e) => this._handleKeyDown(e, "pageNumber", 1)}
155
+ >1</span
156
+ >
157
+ </li>
158
+ `;
159
+ }
160
+ else {
161
+ return null;
162
+ }
163
+ }
164
+ /** @internal */
165
+ _renderPgNumbers() {
166
+ const pagesToShow = [];
167
+ let sanitizeStartPage = 1;
168
+ let endPage;
169
+ if (this.limit < this.pages.length) {
170
+ sanitizeStartPage = this.currentPage - Math.floor(this._sanitizeLimit / 2);
171
+ }
172
+ if (this.pages.length - sanitizeStartPage < this.limit) {
173
+ sanitizeStartPage = this.pages.length + 1 - this.limit;
174
+ }
175
+ if (sanitizeStartPage <= 0) {
176
+ sanitizeStartPage = 1;
177
+ }
178
+ endPage = sanitizeStartPage + this._sanitizeLimit - 1;
179
+ if (endPage > this.pages.length) {
180
+ endPage = this.pages.length;
181
+ }
182
+ if (this.currentPage === this.pages.length) {
183
+ sanitizeStartPage = this.pages.length - this._sanitizeLimit + 1;
184
+ }
185
+ for (let i = sanitizeStartPage; i <= endPage; i++) {
186
+ pagesToShow.push(i);
187
+ }
188
+ return pagesToShow.map(number => html `
189
+ <li key=${number} class="page-item ${this.currentPage === number ? "active" : ""}">
190
+ <span
191
+ class="page-link"
192
+ tabindex="0"
193
+ @click=${this._handlePageClick}
194
+ @keydown=${(e) => this._handleKeyDown(e, "pageNumber", number)}
195
+ >${number}</span
196
+ >
197
+ </li>
198
+ `);
199
+ }
200
+ /** @internal */
201
+ _renderLastEllipsis() {
202
+ const isEvenLimit = this._sanitizeLimit % 2 === 0;
203
+ const differentialLimitCondition = isEvenLimit
204
+ ? this.currentPage + Math.floor(this._sanitizeLimit / 2) <= this.pages.length
205
+ : this.currentPage + Math.floor(this._sanitizeLimit / 2) < this.pages.length;
206
+ const shouldRenderEllipsis = this.pages.length !== this.limit && differentialLimitCondition;
207
+ const tabIndex = shouldRenderEllipsis && this.ellipsisOn ? 0 : -1;
208
+ if (!shouldRenderEllipsis || this._sanitizeLimit >= this.pages.length) {
209
+ return null;
210
+ }
211
+ if (this.ellipsisOn) {
212
+ return html `
213
+ <li
214
+ class="page-item ${this.ellipsisOn ? "" : "ellipsis-disabled"} "
215
+ @click=${this.ellipsisOn && this._handleNextEllipsisButton}
216
+ @keydown=${(e) => this._handleKeyDown(e, "ellipsis", undefined, false)}
217
+ >
218
+ <span class="page-link" role="button" tabindex=${tabIndex}>${this.ellipsisContent}</span>
219
+ </li>
220
+ `;
221
+ }
222
+ else {
223
+ return html `
224
+ <li class="page-item ${this.ellipsisOn ? "" : "ellipsis-disabled"} ">
225
+ <span class="page-link disabled" tabindex=${tabIndex}>${this.ellipsisContent}</span>
226
+ </li>
227
+ `;
228
+ }
229
+ }
230
+ _renderLastPage() {
231
+ const isEvenLimit = this._sanitizeLimit % 2 === 0;
232
+ const differentialLimitCondition = isEvenLimit
233
+ ? this.currentPage + Math.floor(this._sanitizeLimit / 2) <= this.pages.length
234
+ : this.currentPage + Math.floor(this._sanitizeLimit / 2) < this.pages.length;
235
+ if (this.pages.length !== this._sanitizeLimit && differentialLimitCondition) {
236
+ return html `
237
+ <li key=${this.pages.length} class="page-item ${this.currentPage === this.pages.length ? "active" : ""}">
238
+ <span
239
+ class="page-link"
240
+ tabindex="0"
241
+ @click=${this._handlePageClick}
242
+ @keydown=${(e) => this._handleKeyDown(e, "pageNumber", this.pages.length)}
243
+ >${this.pages.length}</span
244
+ >
245
+ </li>
246
+ `;
247
+ }
248
+ else {
249
+ return null;
250
+ }
251
+ }
252
+ /** @internal */
253
+ _getLeftChevronSVG() {
254
+ return html `
255
+ <svg
256
+ xmlns="http://www.w3.org/2000/svg"
257
+ width="16"
258
+ height="16"
259
+ fill="currentColor"
260
+ class="bi bi-chevron-left"
261
+ viewBox="0 0 16 16"
262
+ >
263
+ <path
264
+ fill-rule="evenodd"
265
+ d="M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z"
266
+ />
267
+ </svg>
268
+ `;
269
+ }
270
+ /** @internal */
271
+ _getRightChevronSVG() {
272
+ return html `
273
+ <svg
274
+ xmlns="http://www.w3.org/2000/svg"
275
+ width="16"
276
+ height="16"
277
+ fill="currentColor"
278
+ class="bi bi-chevron-right"
279
+ viewBox="0 0 16 16"
280
+ >
281
+ <path
282
+ fill-rule="evenodd"
283
+ d="M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z"
284
+ />
285
+ </svg>
286
+ `;
287
+ }
288
+ /** @internal */
289
+ _renderDirectionButton(directionLabel, iconClass, clickHandler, keydownHandler, directionVariant) {
290
+ const isDisabled = iconClass === "left" ? this.currentPage === 1 : this.currentPage === this.pages.length;
291
+ const tabIndex = isDisabled ? -1 : 0;
292
+ const keydownListener = (event) => {
293
+ if (!isDisabled && event.key === "Enter") {
294
+ keydownHandler(event);
295
+ }
296
+ };
297
+ return html `
298
+ <li class="page-item ${isDisabled ? "disabled" : ""}" @click=${isDisabled ? undefined : clickHandler}>
299
+ <span class="page-link" tabindex=${tabIndex} @keydown=${keydownListener}>
300
+ ${directionVariant === "icon-text"
301
+ ? html `
302
+ ${iconClass === "left" ? this._getLeftChevronSVG() : ""} ${directionLabel}
303
+ ${iconClass === "right" ? this._getRightChevronSVG() : ""}
304
+ `
305
+ : directionVariant === "text"
306
+ ? html `${directionLabel}`
307
+ : directionVariant === "icon"
308
+ ? html `${iconClass === "left" ? this._getLeftChevronSVG() : this._getRightChevronSVG()}`
309
+ : html ``}
310
+ </span>
311
+ </li>
312
+ `;
313
+ }
314
+ render() {
315
+ return html `
316
+ <nav aria-label="pagination" role="navigation">
317
+ <ul class="pagination pagination-${this.size} sgds" directionVariant=${this.directionVariant}>
318
+ ${this._renderDirectionButton("Previous", "left", this._handlePrevButton, (e) => this._handleKeyDown(e, "directionButton", undefined, undefined, true), this.directionVariant)}
319
+ ${this.showFirstPage ? this._renderFirstPage() : nothing}
320
+ ${this.showFirstPage || this.ellipsisOn ? this._renderFirstEllipsis() : nothing} ${this._renderPgNumbers()}
321
+ ${this._renderLastEllipsis()} ${this.showLastPage ? this._renderLastPage() : nothing}
322
+ ${this._renderDirectionButton("Next", "right", this._handleNextButton, (e) => this._handleKeyDown(e, "directionButton", undefined, undefined, false), this.directionVariant)}
323
+ </ul>
324
+ </nav>
325
+ `;
326
+ }
327
+ }
328
+ SgdsPagination.styles = [...SgdsElement.styles, css_248z];
329
+ __decorate([
330
+ property({ type: Number })
331
+ ], SgdsPagination.prototype, "dataLength", void 0);
332
+ __decorate([
333
+ property({ type: Number })
334
+ ], SgdsPagination.prototype, "currentPage", void 0);
335
+ __decorate([
336
+ property({ type: Number })
337
+ ], SgdsPagination.prototype, "itemsPerPage", void 0);
338
+ __decorate([
339
+ property({ type: Number })
340
+ ], SgdsPagination.prototype, "limit", void 0);
341
+ __decorate([
342
+ property({ type: String })
343
+ ], SgdsPagination.prototype, "directionVariant", void 0);
344
+ __decorate([
345
+ property({ type: String })
346
+ ], SgdsPagination.prototype, "size", void 0);
347
+ __decorate([
348
+ property({ type: Boolean })
349
+ ], SgdsPagination.prototype, "ellipsisOn", void 0);
350
+ __decorate([
351
+ property({ type: Number })
352
+ ], SgdsPagination.prototype, "ellipsisJump", void 0);
353
+ __decorate([
354
+ property({ type: Boolean })
355
+ ], SgdsPagination.prototype, "showFirstPage", void 0);
356
+ __decorate([
357
+ property({ type: Boolean })
358
+ ], SgdsPagination.prototype, "showLastPage", void 0);
359
+ __decorate([
360
+ watch("currentPage")
361
+ ], SgdsPagination.prototype, "_handleValueChange", null);
362
+
363
+ export { SgdsPagination, SgdsPagination as default };
364
+ //# sourceMappingURL=sgds-pagination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sgds-pagination.js","sources":["../../../../src/components/Pagination/sgds-pagination.ts"],"sourcesContent":["import { TemplateResult, html, nothing } from \"lit\";\nimport { property } from \"lit/decorators.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { watch } from \"../../utils/watch\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport paginationStyle from \"./pagination.css\";\n/**\n * @summary The Pagination component enables the user to select a specific page from a range of pages\n *\n * @event sgds-page-change - Event is emitted when `handleNextButton`, `handlePrevButton`, `handleNextEllipsisButton` and `handlePrevEllipsisButton` was called.\n *\n * @cssproperty --pagination-color - The text color of pagination\n * @cssproperty --pagination-bg - The background color of pagination\n * @cssproperty --pagination-hover-bg - The background color of pagination in hover state\n * @cssproperty --pagination-active-color - The text color of pagination in active state\n * @cssproperty --pagination-active-bg - The background color of pagination in active state\n * @cssproperty --pagination-disabled-color - The text color of pagination in disabled state\n * @cssproperty --pagination-disabled-bg - The background color of pagination in disabled state\n *\n **/\nexport class SgdsPagination extends SgdsElement {\n static styles = [...SgdsElement.styles, paginationStyle];\n\n /** Inserts the length value from a given sets of data objects*/\n @property({ type: Number }) dataLength = 0;\n\n /** Sets the starting active page upon render*/\n @property({ type: Number }) currentPage = 1;\n\n /** Sets the amount of data objects to be displayed per page */\n @property({ type: Number }) itemsPerPage = 5;\n\n /** Sets the page limit to be displayed at any given render. e.g 3, 5, 7, 9 */\n @property({ type: Number }) limit = 3;\n\n /** Sets the page direction button to contain text and/or icon */\n @property({ type: String }) directionVariant: directionVariant = \"icon-text\";\n\n /** Sets the size of all page items. */\n @property({ type: String }) size: sizeVariant = \"sm\";\n\n /** Toggles ellipsis buttons to be able to increment/decrement pages based on the ellipsisJump value set. By default, it will be false */\n @property({ type: Boolean }) ellipsisOn = false;\n\n /** When ellipsisOn is true, length of decrementing/incrementing of pages can be set with a number value*/\n @property({ type: Number }) ellipsisJump = 3;\n /** Enables rendering of the first-page button on the pagination, allowing users to jump to the initial page. By default, it will be false. When true, the first ellipsis will always be rendered */\n @property({ type: Boolean }) showFirstPage = false;\n /** Enables rendering of the last-page button on the pagination, allowing users to jump to the last page. By default, it will be false */\n @property({ type: Boolean }) showLastPage = false;\n\n /**@internal */\n @watch(\"currentPage\")\n _handleValueChange() {\n this.emit(\"sgds-page-change\", { detail: { currentPage: this.currentPage } });\n }\n\n /** @internal */\n private _handlePageClick(event: MouseEvent) {\n const liTarget = event.target as HTMLElement;\n const clickedLi = liTarget.closest(\"li\");\n\n if (clickedLi) {\n const clickedPage = Number(clickedLi.getAttribute(\"key\"));\n if (clickedPage !== this.currentPage) {\n this.currentPage = clickedPage;\n }\n }\n }\n\n /** @internal */\n private _handleNextButton() {\n this.currentPage = this.currentPage + 1;\n }\n\n /** @internal */\n private _handlePrevButton() {\n this.currentPage = this.currentPage - 1;\n }\n\n /** @internal */\n private _handleNextEllipsisButton() {\n this.currentPage = this.currentPage + this.ellipsisJump;\n if (this.currentPage >= this.pages.length) this.currentPage = this.pages.length;\n }\n\n /** @internal */\n private _handlePrevEllipsisButton() {\n this.currentPage = this.currentPage - this.ellipsisJump;\n if (this.currentPage <= 1) this.currentPage = this.pages[0];\n }\n\n /** @internal */\n private get pages() {\n const pages = [];\n for (let i = 1; i <= Math.ceil(this.dataLength / this.itemsPerPage); i++) {\n pages.push(i);\n }\n return pages;\n }\n\n /** @internal */\n private get _sanitizeLimit() {\n return this.limit >= this.pages.length ? this.pages.length : this.limit;\n }\n\n /**@internal */\n private _handleKeyDown(\n event: KeyboardEvent,\n action: string,\n number?: number,\n isFirstEllipsis?: boolean,\n isPrevButton?: boolean\n ) {\n if (event.key === \"Enter\") {\n switch (action) {\n case \"pageNumber\":\n this.currentPage = number;\n break;\n case \"ellipsis\":\n if (isFirstEllipsis) {\n this._handlePrevEllipsisButton();\n } else {\n this._handleNextEllipsisButton();\n }\n break;\n case \"directionButton\":\n if (isPrevButton) {\n this._handlePrevButton();\n } else {\n this._handleNextButton();\n }\n break;\n }\n }\n }\n\n private _renderFirstPage() {\n let sanitizeStartPage = this.currentPage - Math.floor(this._sanitizeLimit / 2);\n\n if (this.pages.length - sanitizeStartPage < this.limit) {\n sanitizeStartPage = this.pages.length + 1 - this.limit;\n }\n\n if (sanitizeStartPage > 1) {\n return html`\n <li key=${1} class=\"page-item ${this.currentPage === 1 ? \"active\" : \"\"}\">\n <span\n class=\"page-link\"\n tabindex=\"0\"\n @click=${this._handlePageClick}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"pageNumber\", 1)}\n >1</span\n >\n </li>\n `;\n } else {\n return null;\n }\n }\n /** @internal */\n private _renderPgNumbers() {\n const pagesToShow = [];\n let sanitizeStartPage = 1;\n let endPage: number;\n\n if (this.limit < this.pages.length) {\n sanitizeStartPage = this.currentPage - Math.floor(this._sanitizeLimit / 2);\n }\n\n if (this.pages.length - sanitizeStartPage < this.limit) {\n sanitizeStartPage = this.pages.length + 1 - this.limit;\n }\n\n if (sanitizeStartPage <= 0) {\n sanitizeStartPage = 1;\n }\n\n endPage = sanitizeStartPage + this._sanitizeLimit - 1;\n\n if (endPage > this.pages.length) {\n endPage = this.pages.length;\n }\n\n if (this.currentPage === this.pages.length) {\n sanitizeStartPage = this.pages.length - this._sanitizeLimit + 1;\n }\n\n for (let i = sanitizeStartPage; i <= endPage; i++) {\n pagesToShow.push(i);\n }\n return pagesToShow.map(\n number => html`\n <li key=${number} class=\"page-item ${this.currentPage === number ? \"active\" : \"\"}\">\n <span\n class=\"page-link\"\n tabindex=\"0\"\n @click=${this._handlePageClick}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"pageNumber\", number)}\n >${number}</span\n >\n </li>\n `\n );\n }\n\n private ellipsisContent = html`\n <span aria-hidden=\"true\">…</span>\n <span class=\"visually-hidden\">Ellipsis</span>\n `;\n\n /** @internal */\n private _renderFirstEllipsis = () => {\n const isHidden = !(\n this.pages.length !== this._sanitizeLimit && this.currentPage - Math.floor(this._sanitizeLimit / 2) > 1\n );\n\n if (isHidden) {\n return null;\n }\n\n const tabIndex = isHidden ? -1 : 0;\n\n return html`\n <li\n class=${classMap({ \"page-item\": true, \"ellipsis-disabled\": !this.ellipsisOn })}\n @click=${this.ellipsisOn && this._handlePrevEllipsisButton}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"ellipsis\", undefined, true)}\n >\n <span class=\"page-link\" role=\"button\" tabindex=${tabIndex}>${this.ellipsisContent}</span>\n </li>\n `;\n };\n\n /** @internal */\n private _renderLastEllipsis() {\n const isEvenLimit = this._sanitizeLimit % 2 === 0;\n const differentialLimitCondition = isEvenLimit\n ? this.currentPage + Math.floor(this._sanitizeLimit / 2) <= this.pages.length\n : this.currentPage + Math.floor(this._sanitizeLimit / 2) < this.pages.length;\n\n const shouldRenderEllipsis = this.pages.length !== this.limit && differentialLimitCondition;\n const tabIndex = shouldRenderEllipsis && this.ellipsisOn ? 0 : -1;\n if (!shouldRenderEllipsis || this._sanitizeLimit >= this.pages.length) {\n return null;\n }\n\n if (this.ellipsisOn) {\n return html`\n <li\n class=\"page-item ${this.ellipsisOn ? \"\" : \"ellipsis-disabled\"} \"\n @click=${this.ellipsisOn && this._handleNextEllipsisButton}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"ellipsis\", undefined, false)}\n >\n <span class=\"page-link\" role=\"button\" tabindex=${tabIndex}>${this.ellipsisContent}</span>\n </li>\n `;\n } else {\n return html`\n <li class=\"page-item ${this.ellipsisOn ? \"\" : \"ellipsis-disabled\"} \">\n <span class=\"page-link disabled\" tabindex=${tabIndex}>${this.ellipsisContent}</span>\n </li>\n `;\n }\n }\n\n private _renderLastPage() {\n const isEvenLimit = this._sanitizeLimit % 2 === 0;\n const differentialLimitCondition = isEvenLimit\n ? this.currentPage + Math.floor(this._sanitizeLimit / 2) <= this.pages.length\n : this.currentPage + Math.floor(this._sanitizeLimit / 2) < this.pages.length;\n\n if (this.pages.length !== this._sanitizeLimit && differentialLimitCondition) {\n return html`\n <li key=${this.pages.length} class=\"page-item ${this.currentPage === this.pages.length ? \"active\" : \"\"}\">\n <span\n class=\"page-link\"\n tabindex=\"0\"\n @click=${this._handlePageClick}\n @keydown=${(e: KeyboardEvent) => this._handleKeyDown(e, \"pageNumber\", this.pages.length)}\n >${this.pages.length}</span\n >\n </li>\n `;\n } else {\n return null;\n }\n }\n\n /** @internal */\n private _getLeftChevronSVG() {\n return html`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-chevron-left\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z\"\n />\n </svg>\n `;\n }\n\n /** @internal */\n private _getRightChevronSVG() {\n return html`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-chevron-right\"\n viewBox=\"0 0 16 16\"\n >\n <path\n fill-rule=\"evenodd\"\n d=\"M4.646 1.646a.5.5 0 0 1 .708 0l6 6a.5.5 0 0 1 0 .708l-6 6a.5.5 0 0 1-.708-.708L10.293 8 4.646 2.354a.5.5 0 0 1 0-.708z\"\n />\n </svg>\n `;\n }\n\n /** @internal */\n private _renderDirectionButton(\n directionLabel: string,\n iconClass: string,\n clickHandler: (event: MouseEvent) => void,\n keydownHandler: (event: KeyboardEvent) => void,\n directionVariant: string\n ): TemplateResult {\n const isDisabled = iconClass === \"left\" ? this.currentPage === 1 : this.currentPage === this.pages.length;\n\n const tabIndex = isDisabled ? -1 : 0;\n\n const keydownListener = (event: KeyboardEvent) => {\n if (!isDisabled && event.key === \"Enter\") {\n keydownHandler(event);\n }\n };\n\n return html`\n <li class=\"page-item ${isDisabled ? \"disabled\" : \"\"}\" @click=${isDisabled ? undefined : clickHandler}>\n <span class=\"page-link\" tabindex=${tabIndex} @keydown=${keydownListener}>\n ${directionVariant === \"icon-text\"\n ? html`\n ${iconClass === \"left\" ? this._getLeftChevronSVG() : \"\"} ${directionLabel}\n ${iconClass === \"right\" ? this._getRightChevronSVG() : \"\"}\n `\n : directionVariant === \"text\"\n ? html`${directionLabel}`\n : directionVariant === \"icon\"\n ? html`${iconClass === \"left\" ? this._getLeftChevronSVG() : this._getRightChevronSVG()}`\n : html``}\n </span>\n </li>\n `;\n }\n\n render() {\n return html`\n <nav aria-label=\"pagination\" role=\"navigation\">\n <ul class=\"pagination pagination-${this.size} sgds\" directionVariant=${this.directionVariant}>\n ${this._renderDirectionButton(\n \"Previous\",\n \"left\",\n this._handlePrevButton,\n (e: KeyboardEvent) => this._handleKeyDown(e, \"directionButton\", undefined, undefined, true),\n this.directionVariant\n )}\n ${this.showFirstPage ? this._renderFirstPage() : nothing}\n ${this.showFirstPage || this.ellipsisOn ? this._renderFirstEllipsis() : nothing} ${this._renderPgNumbers()}\n ${this._renderLastEllipsis()} ${this.showLastPage ? this._renderLastPage() : nothing}\n ${this._renderDirectionButton(\n \"Next\",\n \"right\",\n this._handleNextButton,\n (e: KeyboardEvent) => this._handleKeyDown(e, \"directionButton\", undefined, undefined, false),\n this.directionVariant\n )}\n </ul>\n </nav>\n `;\n }\n}\n\nexport type directionVariant = \"icon\" | \"icon-text\" | \"text\";\n\nexport type sizeVariant = \"sm\" | \"md\";\n\nexport default SgdsPagination;\n"],"names":["paginationStyle"],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, '__esModule', { value: true });
@@ -1 +1 @@
1
- {"version":3,"file":"progress-bar.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
1
+ {"version":3,"file":"progress-bar.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import { css } from 'lit';
3
+
4
+ var css_248z = css`:host{width:100%}:host([variant=secondary]) .progress-bar{--sgds-progress-bar-bg:var(--sgds-secondary)}:host([variant=warning]) .progress-bar{--sgds-progress-bar-bg:var(--sgds-warning)}:host([variant=danger]) .progress-bar{--sgds-progress-bar-bg:var(--sgds-danger)}:host([variant=success]) .progress-bar{--sgds-progress-bar-bg:var(--sgds-success)}:host([variant=info]) .progress-bar{--sgds-progress-bar-bg:var(--sgds-info)}:host([variant=dark]) .progress-bar{--sgds-progress-bar-bg:var(--sgds-dark)}progress{vertical-align:baseline}.progress-bar{--sgds-progress-bar-bg:var(--sgds-primary);--sgds-progress-bar-transition:width 0.6s ease;--sgds-progress-bar-color:var(--sgds-white);--sgds-progress-bar-font-size:0.75rem;background-color:var(--sgds-progress-bar-bg);color:var(--sgds-progress-bar-color);display:flex;flex-direction:column;font-size:var(--sgds-progress-bar-font-size);height:100%;justify-content:center;overflow:hidden;text-align:center;transition:var(--sgds-progress-bar-transition);white-space:nowrap}@media (prefers-reduced-motion:reduce){.progress-bar{transition:none}}`;
5
+
6
+ export { css_248z as default };
7
+ //# sourceMappingURL=progress-bar.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress-bar.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, '__esModule', { value: true });
@@ -1 +1 @@
1
- {"version":3,"file":"progress.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;"}
1
+ {"version":3,"file":"progress.cjs.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;"}
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import { css } from 'lit';
3
+
4
+ var css_248z = css`:host{--progress-height:1rem;display:block}.progress{background-color:var(--sgds-gray-200);border-radius:var(--sgds-border-radius);display:flex;height:var(--progress-height);overflow:hidden}`;
5
+
6
+ export { css_248z as default };
7
+ //# sourceMappingURL=progress.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"progress.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  'use strict';
2
3
 
3
4
  Object.defineProperty(exports, '__esModule', { value: true });