@govtechsg/sgds-web-component 2.0.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (724) hide show
  1. package/Masthead/index.js +21 -23
  2. package/README.md +1 -1
  3. package/base/card-element.cjs.js +1 -0
  4. package/base/card-element.cjs.js.map +1 -1
  5. package/base/card-element.js +1 -0
  6. package/base/card-element.js.map +1 -1
  7. package/base/card.cjs.js +1 -0
  8. package/base/card.cjs.js.map +1 -1
  9. package/base/card.js +1 -0
  10. package/base/card.js.map +1 -1
  11. package/base/dropdown-element.cjs.js +1 -0
  12. package/base/dropdown-element.cjs.js.map +1 -1
  13. package/base/dropdown-element.js +1 -0
  14. package/base/dropdown-element.js.map +1 -1
  15. package/base/dropdown-list-element.cjs.js +1 -0
  16. package/base/dropdown-list-element.cjs.js.map +1 -1
  17. package/base/dropdown-list-element.js +1 -0
  18. package/base/dropdown-list-element.js.map +1 -1
  19. package/base/form-check-element.cjs.js +1 -0
  20. package/base/form-check-element.cjs.js.map +1 -1
  21. package/base/form-check-element.js +1 -0
  22. package/base/form-check-element.js.map +1 -1
  23. package/base/link-element.cjs.js +1 -0
  24. package/base/link-element.cjs.js.map +1 -1
  25. package/base/link-element.js +1 -0
  26. package/base/link-element.js.map +1 -1
  27. package/base/sgds-element.cjs.js +1 -0
  28. package/base/sgds-element.cjs.js.map +1 -1
  29. package/base/sgds-element.cjs2.js +2 -1
  30. package/base/sgds-element.cjs2.js.map +1 -1
  31. package/base/sgds-element.js +1 -0
  32. package/base/sgds-element.js.map +1 -1
  33. package/base/sgds-element2.js +2 -1
  34. package/base/sgds-element2.js.map +1 -1
  35. package/components/Accordion/accordion-item.cjs.js +1 -0
  36. package/components/Accordion/accordion-item.cjs.js.map +1 -1
  37. package/components/Accordion/accordion-item.js +1 -0
  38. package/components/Accordion/accordion-item.js.map +1 -1
  39. package/components/Accordion/accordion.cjs.js +1 -0
  40. package/components/Accordion/accordion.cjs.js.map +1 -1
  41. package/components/Accordion/accordion.js +1 -0
  42. package/components/Accordion/accordion.js.map +1 -1
  43. package/components/Accordion/index.umd.js +1 -1
  44. package/components/Accordion/sgds-accordion-item.cjs.js +1 -0
  45. package/components/Accordion/sgds-accordion-item.cjs.js.map +1 -1
  46. package/components/Accordion/sgds-accordion-item.js +1 -0
  47. package/components/Accordion/sgds-accordion-item.js.map +1 -1
  48. package/components/Accordion/sgds-accordion.cjs.js +1 -0
  49. package/components/Accordion/sgds-accordion.cjs.js.map +1 -1
  50. package/components/Accordion/sgds-accordion.js +1 -0
  51. package/components/Accordion/sgds-accordion.js.map +1 -1
  52. package/components/ActionCard/action-card.cjs.js +1 -0
  53. package/components/ActionCard/action-card.cjs.js.map +1 -1
  54. package/components/ActionCard/action-card.js +1 -0
  55. package/components/ActionCard/action-card.js.map +1 -1
  56. package/components/ActionCard/index.umd.js +1 -1
  57. package/components/ActionCard/sgds-action-card.cjs.js +1 -0
  58. package/components/ActionCard/sgds-action-card.cjs.js.map +1 -1
  59. package/components/ActionCard/sgds-action-card.js +1 -0
  60. package/components/ActionCard/sgds-action-card.js.map +1 -1
  61. package/components/Alert/alert-link.cjs.js +1 -0
  62. package/components/Alert/alert-link.cjs.js.map +1 -1
  63. package/components/Alert/alert-link.js +1 -0
  64. package/components/Alert/alert-link.js.map +1 -1
  65. package/components/Alert/alert.cjs.js +1 -0
  66. package/components/Alert/alert.cjs.js.map +1 -1
  67. package/components/Alert/alert.js +1 -0
  68. package/components/Alert/alert.js.map +1 -1
  69. package/components/Alert/index.umd.js +1 -1
  70. package/components/Alert/sgds-alert-heading.cjs.js +1 -0
  71. package/components/Alert/sgds-alert-heading.cjs.js.map +1 -1
  72. package/components/Alert/sgds-alert-heading.js +1 -0
  73. package/components/Alert/sgds-alert-heading.js.map +1 -1
  74. package/components/Alert/sgds-alert-link.cjs.js +1 -0
  75. package/components/Alert/sgds-alert-link.cjs.js.map +1 -1
  76. package/components/Alert/sgds-alert-link.js +1 -0
  77. package/components/Alert/sgds-alert-link.js.map +1 -1
  78. package/components/Alert/sgds-alert.cjs.js +1 -0
  79. package/components/Alert/sgds-alert.cjs.js.map +1 -1
  80. package/components/Alert/sgds-alert.js +1 -0
  81. package/components/Alert/sgds-alert.js.map +1 -1
  82. package/components/Badge/badge.cjs.js +1 -0
  83. package/components/Badge/badge.cjs.js.map +1 -1
  84. package/components/Badge/badge.js +1 -0
  85. package/components/Badge/badge.js.map +1 -1
  86. package/components/Badge/index.umd.js +1 -1
  87. package/components/Badge/sgds-badge.cjs.js +1 -0
  88. package/components/Badge/sgds-badge.cjs.js.map +1 -1
  89. package/components/Badge/sgds-badge.js +1 -0
  90. package/components/Badge/sgds-badge.js.map +1 -1
  91. package/components/Breadcrumb/breadcrumb-item.cjs.js +1 -0
  92. package/components/Breadcrumb/breadcrumb-item.cjs.js.map +1 -1
  93. package/components/Breadcrumb/breadcrumb-item.js +1 -0
  94. package/components/Breadcrumb/breadcrumb-item.js.map +1 -1
  95. package/components/Breadcrumb/breadcrumb.cjs.js +1 -0
  96. package/components/Breadcrumb/breadcrumb.cjs.js.map +1 -1
  97. package/components/Breadcrumb/breadcrumb.js +1 -0
  98. package/components/Breadcrumb/breadcrumb.js.map +1 -1
  99. package/components/Breadcrumb/index.umd.js +1 -1
  100. package/components/Breadcrumb/sgds-breadcrumb-item.cjs.js +1 -0
  101. package/components/Breadcrumb/sgds-breadcrumb-item.cjs.js.map +1 -1
  102. package/components/Breadcrumb/sgds-breadcrumb-item.js +1 -0
  103. package/components/Breadcrumb/sgds-breadcrumb-item.js.map +1 -1
  104. package/components/Breadcrumb/sgds-breadcrumb.cjs.js +1 -0
  105. package/components/Breadcrumb/sgds-breadcrumb.cjs.js.map +1 -1
  106. package/components/Breadcrumb/sgds-breadcrumb.js +1 -0
  107. package/components/Breadcrumb/sgds-breadcrumb.js.map +1 -1
  108. package/components/Button/button.cjs.js +1 -0
  109. package/components/Button/button.cjs.js.map +1 -1
  110. package/components/Button/button.js +1 -0
  111. package/components/Button/button.js.map +1 -1
  112. package/components/Button/index.umd.js +1 -1
  113. package/components/Button/sgds-button.cjs.js +1 -0
  114. package/components/Button/sgds-button.cjs.js.map +1 -1
  115. package/components/Button/sgds-button.js +1 -0
  116. package/components/Button/sgds-button.js.map +1 -1
  117. package/components/Card/card.cjs.js +1 -0
  118. package/components/Card/card.cjs.js.map +1 -1
  119. package/components/Card/card.js +1 -0
  120. package/components/Card/card.js.map +1 -1
  121. package/components/Card/index.umd.js +1 -1
  122. package/components/Card/sgds-card.cjs.js +1 -0
  123. package/components/Card/sgds-card.cjs.js.map +1 -1
  124. package/components/Card/sgds-card.js +1 -0
  125. package/components/Card/sgds-card.js.map +1 -1
  126. package/components/Checkbox/checkbox.cjs.js +1 -0
  127. package/components/Checkbox/checkbox.cjs.js.map +1 -1
  128. package/components/Checkbox/checkbox.js +1 -0
  129. package/components/Checkbox/checkbox.js.map +1 -1
  130. package/components/Checkbox/index.umd.js +1 -1
  131. package/components/Checkbox/sgds-checkbox.cjs.js +1 -0
  132. package/components/Checkbox/sgds-checkbox.cjs.js.map +1 -1
  133. package/components/Checkbox/sgds-checkbox.js +1 -0
  134. package/components/Checkbox/sgds-checkbox.js.map +1 -1
  135. package/components/ComboBox/combo-box.cjs.js +1 -0
  136. package/components/ComboBox/combo-box.cjs.js.map +1 -1
  137. package/components/ComboBox/combo-box.js +1 -0
  138. package/components/ComboBox/combo-box.js.map +1 -1
  139. package/components/ComboBox/index.umd.js +1 -1
  140. package/components/ComboBox/sgds-combo-box.cjs.js +1 -0
  141. package/components/ComboBox/sgds-combo-box.cjs.js.map +1 -1
  142. package/components/ComboBox/sgds-combo-box.js +1 -0
  143. package/components/ComboBox/sgds-combo-box.js.map +1 -1
  144. package/components/Datepicker/datepicker-calendar.cjs.js +1 -0
  145. package/components/Datepicker/datepicker-calendar.cjs.js.map +1 -1
  146. package/components/Datepicker/datepicker-calendar.cjs2.js +1 -0
  147. package/components/Datepicker/datepicker-calendar.cjs2.js.map +1 -1
  148. package/components/Datepicker/datepicker-calendar.js +1 -0
  149. package/components/Datepicker/datepicker-calendar.js.map +1 -1
  150. package/components/Datepicker/datepicker-calendar2.js +1 -0
  151. package/components/Datepicker/datepicker-calendar2.js.map +1 -1
  152. package/components/Datepicker/datepicker-header.cjs.js +1 -0
  153. package/components/Datepicker/datepicker-header.cjs.js.map +1 -1
  154. package/components/Datepicker/datepicker-header.cjs2.js +1 -0
  155. package/components/Datepicker/datepicker-header.cjs2.js.map +1 -1
  156. package/components/Datepicker/datepicker-header.js +1 -0
  157. package/components/Datepicker/datepicker-header.js.map +1 -1
  158. package/components/Datepicker/datepicker-header2.js +1 -0
  159. package/components/Datepicker/datepicker-header2.js.map +1 -1
  160. package/components/Datepicker/datepicker-input.cjs.js +1 -0
  161. package/components/Datepicker/datepicker-input.cjs.js.map +1 -1
  162. package/components/Datepicker/datepicker-input.cjs2.js +1 -0
  163. package/components/Datepicker/datepicker-input.cjs2.js.map +1 -1
  164. package/components/Datepicker/datepicker-input.js +1 -0
  165. package/components/Datepicker/datepicker-input.js.map +1 -1
  166. package/components/Datepicker/datepicker-input2.js +1 -0
  167. package/components/Datepicker/datepicker-input2.js.map +1 -1
  168. package/components/Datepicker/datepicker.cjs.js +1 -0
  169. package/components/Datepicker/datepicker.cjs.js.map +1 -1
  170. package/components/Datepicker/datepicker.js +1 -0
  171. package/components/Datepicker/datepicker.js.map +1 -1
  172. package/components/Datepicker/index.umd.js +1 -1
  173. package/components/Datepicker/sgds-datepicker.cjs.js +1 -0
  174. package/components/Datepicker/sgds-datepicker.cjs.js.map +1 -1
  175. package/components/Datepicker/sgds-datepicker.js +1 -0
  176. package/components/Datepicker/sgds-datepicker.js.map +1 -1
  177. package/components/Drawer/drawer.cjs.js +1 -0
  178. package/components/Drawer/drawer.cjs.js.map +1 -1
  179. package/components/Drawer/drawer.js +1 -0
  180. package/components/Drawer/drawer.js.map +1 -1
  181. package/components/Drawer/index.umd.js +1 -1
  182. package/components/Drawer/sgds-drawer.cjs.js +1 -0
  183. package/components/Drawer/sgds-drawer.cjs.js.map +1 -1
  184. package/components/Drawer/sgds-drawer.js +1 -0
  185. package/components/Drawer/sgds-drawer.js.map +1 -1
  186. package/components/Dropdown/dropdown.cjs.js +1 -0
  187. package/components/Dropdown/dropdown.cjs.js.map +1 -1
  188. package/components/Dropdown/dropdown.js +1 -0
  189. package/components/Dropdown/dropdown.js.map +1 -1
  190. package/components/Dropdown/index.umd.js +1 -1
  191. package/components/Dropdown/sgds-dropdown-item.cjs.js +1 -0
  192. package/components/Dropdown/sgds-dropdown-item.cjs.js.map +1 -1
  193. package/components/Dropdown/sgds-dropdown-item.js +1 -0
  194. package/components/Dropdown/sgds-dropdown-item.js.map +1 -1
  195. package/components/Dropdown/sgds-dropdown.cjs.js +1 -0
  196. package/components/Dropdown/sgds-dropdown.cjs.js.map +1 -1
  197. package/components/Dropdown/sgds-dropdown.js +1 -0
  198. package/components/Dropdown/sgds-dropdown.js.map +1 -1
  199. package/components/FileUpload/file-upload.cjs.js +1 -0
  200. package/components/FileUpload/file-upload.cjs.js.map +1 -1
  201. package/components/FileUpload/file-upload.js +1 -0
  202. package/components/FileUpload/file-upload.js.map +1 -1
  203. package/components/FileUpload/index.umd.js +1 -1
  204. package/components/FileUpload/sgds-file-upload.cjs.js +1 -0
  205. package/components/FileUpload/sgds-file-upload.cjs.js.map +1 -1
  206. package/components/FileUpload/sgds-file-upload.js +1 -0
  207. package/components/FileUpload/sgds-file-upload.js.map +1 -1
  208. package/components/Footer/footer.cjs.js +1 -0
  209. package/components/Footer/footer.cjs.js.map +1 -1
  210. package/components/Footer/footer.js +1 -0
  211. package/components/Footer/footer.js.map +1 -1
  212. package/components/Footer/index.umd.js +1 -1
  213. package/components/Footer/sgds-footer.cjs.js +1 -0
  214. package/components/Footer/sgds-footer.cjs.js.map +1 -1
  215. package/components/Footer/sgds-footer.js +1 -0
  216. package/components/Footer/sgds-footer.js.map +1 -1
  217. package/components/Input/index.umd.js +1 -1
  218. package/components/Input/input.cjs.js +1 -0
  219. package/components/Input/input.cjs.js.map +1 -1
  220. package/components/Input/input.js +1 -0
  221. package/components/Input/input.js.map +1 -1
  222. package/components/Input/sgds-input.cjs.js +1 -0
  223. package/components/Input/sgds-input.cjs.js.map +1 -1
  224. package/components/Input/sgds-input.js +1 -0
  225. package/components/Input/sgds-input.js.map +1 -1
  226. package/components/Mainnav/index.umd.js +1 -1
  227. package/components/Mainnav/mainnav-dropdown.cjs.js +1 -0
  228. package/components/Mainnav/mainnav-dropdown.cjs.js.map +1 -1
  229. package/components/Mainnav/mainnav-dropdown.js +1 -0
  230. package/components/Mainnav/mainnav-dropdown.js.map +1 -1
  231. package/components/Mainnav/mainnav-item.cjs.js +1 -0
  232. package/components/Mainnav/mainnav-item.cjs.js.map +1 -1
  233. package/components/Mainnav/mainnav-item.js +1 -0
  234. package/components/Mainnav/mainnav-item.js.map +1 -1
  235. package/components/Mainnav/mainnav.cjs.js +1 -0
  236. package/components/Mainnav/mainnav.cjs.js.map +1 -1
  237. package/components/Mainnav/mainnav.js +1 -0
  238. package/components/Mainnav/mainnav.js.map +1 -1
  239. package/components/Mainnav/sgds-mainnav-dropdown.cjs.js +1 -0
  240. package/components/Mainnav/sgds-mainnav-dropdown.cjs.js.map +1 -1
  241. package/components/Mainnav/sgds-mainnav-dropdown.js +1 -0
  242. package/components/Mainnav/sgds-mainnav-dropdown.js.map +1 -1
  243. package/components/Mainnav/sgds-mainnav-item.cjs.js +1 -0
  244. package/components/Mainnav/sgds-mainnav-item.cjs.js.map +1 -1
  245. package/components/Mainnav/sgds-mainnav-item.js +1 -0
  246. package/components/Mainnav/sgds-mainnav-item.js.map +1 -1
  247. package/components/Mainnav/sgds-mainnav.cjs.js +1 -0
  248. package/components/Mainnav/sgds-mainnav.cjs.js.map +1 -1
  249. package/components/Mainnav/sgds-mainnav.js +1 -0
  250. package/components/Mainnav/sgds-mainnav.js.map +1 -1
  251. package/components/Masthead/index.umd.js +21 -23
  252. package/components/Masthead/index.umd.js.map +1 -1
  253. package/components/Masthead/masthead.cjs.js +2 -2
  254. package/components/Masthead/masthead.js +2 -2
  255. package/components/Masthead/sgds-masthead.cjs.js +20 -20
  256. package/components/Masthead/sgds-masthead.cjs.js.map +1 -1
  257. package/components/Masthead/sgds-masthead.js +20 -20
  258. package/components/Masthead/sgds-masthead.js.map +1 -1
  259. package/components/Modal/index.umd.js +1 -1
  260. package/components/Modal/modal.cjs.js +1 -0
  261. package/components/Modal/modal.cjs.js.map +1 -1
  262. package/components/Modal/modal.js +1 -0
  263. package/components/Modal/modal.js.map +1 -1
  264. package/components/Modal/sgds-modal.cjs.js +1 -0
  265. package/components/Modal/sgds-modal.cjs.js.map +1 -1
  266. package/components/Modal/sgds-modal.js +1 -0
  267. package/components/Modal/sgds-modal.js.map +1 -1
  268. package/components/Pagination/index.umd.js +1 -1
  269. package/components/Pagination/pagination.cjs.js +1 -0
  270. package/components/Pagination/pagination.cjs.js.map +1 -1
  271. package/components/Pagination/pagination.js +1 -0
  272. package/components/Pagination/pagination.js.map +1 -1
  273. package/components/Pagination/sgds-pagination.cjs.js +1 -0
  274. package/components/Pagination/sgds-pagination.cjs.js.map +1 -1
  275. package/components/Pagination/sgds-pagination.js +1 -0
  276. package/components/Pagination/sgds-pagination.js.map +1 -1
  277. package/components/Progress/index.umd.js +1 -1
  278. package/components/Progress/progress-bar.cjs.js +1 -0
  279. package/components/Progress/progress-bar.cjs.js.map +1 -1
  280. package/components/Progress/progress-bar.js +1 -0
  281. package/components/Progress/progress-bar.js.map +1 -1
  282. package/components/Progress/progress.cjs.js +1 -0
  283. package/components/Progress/progress.cjs.js.map +1 -1
  284. package/components/Progress/progress.js +1 -0
  285. package/components/Progress/progress.js.map +1 -1
  286. package/components/Progress/sgds-progress-bar.cjs.js +1 -0
  287. package/components/Progress/sgds-progress-bar.cjs.js.map +1 -1
  288. package/components/Progress/sgds-progress-bar.js +1 -0
  289. package/components/Progress/sgds-progress-bar.js.map +1 -1
  290. package/components/Progress/sgds-progress.cjs.js +1 -0
  291. package/components/Progress/sgds-progress.cjs.js.map +1 -1
  292. package/components/Progress/sgds-progress.js +1 -0
  293. package/components/Progress/sgds-progress.js.map +1 -1
  294. package/components/QuantityToggle/index.umd.js +1 -1
  295. package/components/QuantityToggle/quantity-toggle.cjs.js +1 -0
  296. package/components/QuantityToggle/quantity-toggle.cjs.js.map +1 -1
  297. package/components/QuantityToggle/quantity-toggle.js +1 -0
  298. package/components/QuantityToggle/quantity-toggle.js.map +1 -1
  299. package/components/QuantityToggle/sgds-quantity-toggle.cjs.js +1 -0
  300. package/components/QuantityToggle/sgds-quantity-toggle.cjs.js.map +1 -1
  301. package/components/QuantityToggle/sgds-quantity-toggle.js +1 -0
  302. package/components/QuantityToggle/sgds-quantity-toggle.js.map +1 -1
  303. package/components/Radio/index.umd.js +1 -1
  304. package/components/Radio/radio-group.cjs.js +1 -0
  305. package/components/Radio/radio-group.cjs.js.map +1 -1
  306. package/components/Radio/radio-group.js +1 -0
  307. package/components/Radio/radio-group.js.map +1 -1
  308. package/components/Radio/radio.cjs.js +1 -0
  309. package/components/Radio/radio.cjs.js.map +1 -1
  310. package/components/Radio/radio.js +1 -0
  311. package/components/Radio/radio.js.map +1 -1
  312. package/components/Radio/sgds-radio-group.cjs.js +1 -0
  313. package/components/Radio/sgds-radio-group.cjs.js.map +1 -1
  314. package/components/Radio/sgds-radio-group.js +1 -0
  315. package/components/Radio/sgds-radio-group.js.map +1 -1
  316. package/components/Radio/sgds-radio.cjs.js +1 -0
  317. package/components/Radio/sgds-radio.cjs.js.map +1 -1
  318. package/components/Radio/sgds-radio.js +1 -0
  319. package/components/Radio/sgds-radio.js.map +1 -1
  320. package/components/Sidenav/index.umd.js +1 -1
  321. package/components/Sidenav/sgds-sidenav-item.cjs.js +1 -0
  322. package/components/Sidenav/sgds-sidenav-item.cjs.js.map +1 -1
  323. package/components/Sidenav/sgds-sidenav-item.js +1 -0
  324. package/components/Sidenav/sgds-sidenav-item.js.map +1 -1
  325. package/components/Sidenav/sgds-sidenav-link.cjs.js +1 -0
  326. package/components/Sidenav/sgds-sidenav-link.cjs.js.map +1 -1
  327. package/components/Sidenav/sgds-sidenav-link.js +1 -0
  328. package/components/Sidenav/sgds-sidenav-link.js.map +1 -1
  329. package/components/Sidenav/sgds-sidenav.cjs.js +1 -0
  330. package/components/Sidenav/sgds-sidenav.cjs.js.map +1 -1
  331. package/components/Sidenav/sgds-sidenav.js +1 -0
  332. package/components/Sidenav/sgds-sidenav.js.map +1 -1
  333. package/components/Sidenav/sidenav-item.cjs.js +1 -0
  334. package/components/Sidenav/sidenav-item.cjs.js.map +1 -1
  335. package/components/Sidenav/sidenav-item.js +1 -0
  336. package/components/Sidenav/sidenav-item.js.map +1 -1
  337. package/components/Sidenav/sidenav-link.cjs.js +1 -0
  338. package/components/Sidenav/sidenav-link.cjs.js.map +1 -1
  339. package/components/Sidenav/sidenav-link.js +1 -0
  340. package/components/Sidenav/sidenav-link.js.map +1 -1
  341. package/components/Sidenav/sidenav.cjs.js +1 -0
  342. package/components/Sidenav/sidenav.cjs.js.map +1 -1
  343. package/components/Sidenav/sidenav.js +1 -0
  344. package/components/Sidenav/sidenav.js.map +1 -1
  345. package/components/Spinner/index.umd.js +1 -1
  346. package/components/Spinner/sgds-spinner.cjs.js +1 -0
  347. package/components/Spinner/sgds-spinner.cjs.js.map +1 -1
  348. package/components/Spinner/sgds-spinner.js +1 -0
  349. package/components/Spinner/sgds-spinner.js.map +1 -1
  350. package/components/Spinner/spinner.cjs.js +1 -0
  351. package/components/Spinner/spinner.cjs.js.map +1 -1
  352. package/components/Spinner/spinner.js +1 -0
  353. package/components/Spinner/spinner.js.map +1 -1
  354. package/components/Stepper/index.umd.js +1 -1
  355. package/components/Stepper/sgds-stepper.cjs.js +1 -0
  356. package/components/Stepper/sgds-stepper.cjs.js.map +1 -1
  357. package/components/Stepper/sgds-stepper.js +1 -0
  358. package/components/Stepper/sgds-stepper.js.map +1 -1
  359. package/components/Stepper/stepper.cjs.js +1 -0
  360. package/components/Stepper/stepper.cjs.js.map +1 -1
  361. package/components/Stepper/stepper.js +1 -0
  362. package/components/Stepper/stepper.js.map +1 -1
  363. package/components/Tab/index.umd.js +1 -1
  364. package/components/Tab/sgds-tab-group.cjs.js +1 -0
  365. package/components/Tab/sgds-tab-group.cjs.js.map +1 -1
  366. package/components/Tab/sgds-tab-group.js +1 -0
  367. package/components/Tab/sgds-tab-group.js.map +1 -1
  368. package/components/Tab/sgds-tab-panel.cjs.js +1 -0
  369. package/components/Tab/sgds-tab-panel.cjs.js.map +1 -1
  370. package/components/Tab/sgds-tab-panel.js +1 -0
  371. package/components/Tab/sgds-tab-panel.js.map +1 -1
  372. package/components/Tab/sgds-tab.cjs.js +1 -0
  373. package/components/Tab/sgds-tab.cjs.js.map +1 -1
  374. package/components/Tab/sgds-tab.js +1 -0
  375. package/components/Tab/sgds-tab.js.map +1 -1
  376. package/components/Tab/tab-group.cjs.js +1 -0
  377. package/components/Tab/tab-group.cjs.js.map +1 -1
  378. package/components/Tab/tab-group.js +1 -0
  379. package/components/Tab/tab-group.js.map +1 -1
  380. package/components/Tab/tab-panel.cjs.js +1 -0
  381. package/components/Tab/tab-panel.cjs.js.map +1 -1
  382. package/components/Tab/tab-panel.js +1 -0
  383. package/components/Tab/tab-panel.js.map +1 -1
  384. package/components/Tab/tab.cjs.js +1 -0
  385. package/components/Tab/tab.cjs.js.map +1 -1
  386. package/components/Tab/tab.js +1 -0
  387. package/components/Tab/tab.js.map +1 -1
  388. package/components/Table/index.umd.js +1 -1
  389. package/components/Table/sgds-table.cjs.js +1 -0
  390. package/components/Table/sgds-table.cjs.js.map +1 -1
  391. package/components/Table/sgds-table.js +1 -0
  392. package/components/Table/sgds-table.js.map +1 -1
  393. package/components/Table/table.cjs.js +1 -0
  394. package/components/Table/table.cjs.js.map +1 -1
  395. package/components/Table/table.js +1 -0
  396. package/components/Table/table.js.map +1 -1
  397. package/components/Textarea/index.umd.js +1 -1
  398. package/components/Textarea/sgds-textarea.cjs.js +1 -0
  399. package/components/Textarea/sgds-textarea.cjs.js.map +1 -1
  400. package/components/Textarea/sgds-textarea.js +1 -0
  401. package/components/Textarea/sgds-textarea.js.map +1 -1
  402. package/components/Textarea/textarea.cjs.js +1 -0
  403. package/components/Textarea/textarea.cjs.js.map +1 -1
  404. package/components/Textarea/textarea.js +1 -0
  405. package/components/Textarea/textarea.js.map +1 -1
  406. package/components/Toast/index.umd.js +1 -1
  407. package/components/Toast/sgds-toast-container.cjs.js +1 -0
  408. package/components/Toast/sgds-toast-container.cjs.js.map +1 -1
  409. package/components/Toast/sgds-toast-container.js +1 -0
  410. package/components/Toast/sgds-toast-container.js.map +1 -1
  411. package/components/Toast/sgds-toast.cjs.js +1 -0
  412. package/components/Toast/sgds-toast.cjs.js.map +1 -1
  413. package/components/Toast/sgds-toast.js +1 -0
  414. package/components/Toast/sgds-toast.js.map +1 -1
  415. package/components/Toast/toast-container.cjs.js +1 -0
  416. package/components/Toast/toast-container.cjs.js.map +1 -1
  417. package/components/Toast/toast-container.js +1 -0
  418. package/components/Toast/toast-container.js.map +1 -1
  419. package/components/Toast/toast.cjs.js +1 -0
  420. package/components/Toast/toast.cjs.js.map +1 -1
  421. package/components/Toast/toast.js +1 -0
  422. package/components/Toast/toast.js.map +1 -1
  423. package/components/Tooltip/index.umd.js +1 -1
  424. package/components/Tooltip/sgds-tooltip.cjs.js +1 -0
  425. package/components/Tooltip/sgds-tooltip.cjs.js.map +1 -1
  426. package/components/Tooltip/sgds-tooltip.js +1 -0
  427. package/components/Tooltip/sgds-tooltip.js.map +1 -1
  428. package/components/Tooltip/tooltip.cjs.js +1 -0
  429. package/components/Tooltip/tooltip.cjs.js.map +1 -1
  430. package/components/Tooltip/tooltip.js +1 -0
  431. package/components/Tooltip/tooltip.js.map +1 -1
  432. package/components/index.umd.js +21 -23
  433. package/components/index.umd.js.map +1 -1
  434. package/index.umd.js +21 -23
  435. package/index.umd.js.map +1 -1
  436. package/internals/CloseButton/close-button.cjs.js +1 -0
  437. package/internals/CloseButton/close-button.cjs.js.map +1 -1
  438. package/internals/CloseButton/close-button.js +1 -0
  439. package/internals/CloseButton/close-button.js.map +1 -1
  440. package/internals/CloseButton/sgds-close-button.cjs.js +1 -0
  441. package/internals/CloseButton/sgds-close-button.cjs.js.map +1 -1
  442. package/internals/CloseButton/sgds-close-button.js +1 -0
  443. package/internals/CloseButton/sgds-close-button.js.map +1 -1
  444. package/package.json +1 -1
  445. package/react/accordion/index.cjs.js +1 -0
  446. package/react/accordion/index.cjs.js.map +1 -1
  447. package/react/accordion/index.js +1 -0
  448. package/react/accordion/index.js.map +1 -1
  449. package/react/accordion-item/index.cjs.js +1 -0
  450. package/react/accordion-item/index.cjs.js.map +1 -1
  451. package/react/accordion-item/index.js +1 -0
  452. package/react/accordion-item/index.js.map +1 -1
  453. package/react/action-card/index.cjs.js +1 -0
  454. package/react/action-card/index.cjs.js.map +1 -1
  455. package/react/action-card/index.js +1 -0
  456. package/react/action-card/index.js.map +1 -1
  457. package/react/alert/index.cjs.js +1 -0
  458. package/react/alert/index.cjs.js.map +1 -1
  459. package/react/alert/index.js +1 -0
  460. package/react/alert/index.js.map +1 -1
  461. package/react/alert-heading/index.cjs.js +1 -0
  462. package/react/alert-heading/index.cjs.js.map +1 -1
  463. package/react/alert-heading/index.js +1 -0
  464. package/react/alert-heading/index.js.map +1 -1
  465. package/react/alert-link/index.cjs.js +1 -0
  466. package/react/alert-link/index.cjs.js.map +1 -1
  467. package/react/alert-link/index.js +1 -0
  468. package/react/alert-link/index.js.map +1 -1
  469. package/react/badge/index.cjs.js +1 -0
  470. package/react/badge/index.cjs.js.map +1 -1
  471. package/react/badge/index.js +1 -0
  472. package/react/badge/index.js.map +1 -1
  473. package/react/breadcrumb/index.cjs.js +1 -0
  474. package/react/breadcrumb/index.cjs.js.map +1 -1
  475. package/react/breadcrumb/index.js +1 -0
  476. package/react/breadcrumb/index.js.map +1 -1
  477. package/react/breadcrumb-item/index.cjs.js +1 -0
  478. package/react/breadcrumb-item/index.cjs.js.map +1 -1
  479. package/react/breadcrumb-item/index.js +1 -0
  480. package/react/breadcrumb-item/index.js.map +1 -1
  481. package/react/button/index.cjs.js +1 -0
  482. package/react/button/index.cjs.js.map +1 -1
  483. package/react/button/index.js +1 -0
  484. package/react/button/index.js.map +1 -1
  485. package/react/card/index.cjs.js +1 -0
  486. package/react/card/index.cjs.js.map +1 -1
  487. package/react/card/index.js +1 -0
  488. package/react/card/index.js.map +1 -1
  489. package/react/checkbox/index.cjs.js +1 -0
  490. package/react/checkbox/index.cjs.js.map +1 -1
  491. package/react/checkbox/index.js +1 -0
  492. package/react/checkbox/index.js.map +1 -1
  493. package/react/combo-box/index.cjs.js +1 -0
  494. package/react/combo-box/index.cjs.js.map +1 -1
  495. package/react/combo-box/index.js +1 -0
  496. package/react/combo-box/index.js.map +1 -1
  497. package/react/datepicker/index.cjs.js +1 -0
  498. package/react/datepicker/index.cjs.js.map +1 -1
  499. package/react/datepicker/index.js +1 -0
  500. package/react/datepicker/index.js.map +1 -1
  501. package/react/drawer/index.cjs.js +1 -0
  502. package/react/drawer/index.cjs.js.map +1 -1
  503. package/react/drawer/index.js +1 -0
  504. package/react/drawer/index.js.map +1 -1
  505. package/react/dropdown/index.cjs.js +1 -0
  506. package/react/dropdown/index.cjs.js.map +1 -1
  507. package/react/dropdown/index.js +1 -0
  508. package/react/dropdown/index.js.map +1 -1
  509. package/react/dropdown-item/index.cjs.js +1 -0
  510. package/react/dropdown-item/index.cjs.js.map +1 -1
  511. package/react/dropdown-item/index.js +1 -0
  512. package/react/dropdown-item/index.js.map +1 -1
  513. package/react/file-upload/index.cjs.js +1 -0
  514. package/react/file-upload/index.cjs.js.map +1 -1
  515. package/react/file-upload/index.js +1 -0
  516. package/react/file-upload/index.js.map +1 -1
  517. package/react/footer/index.cjs.js +1 -0
  518. package/react/footer/index.cjs.js.map +1 -1
  519. package/react/footer/index.js +1 -0
  520. package/react/footer/index.js.map +1 -1
  521. package/react/index.cjs.js +1 -0
  522. package/react/index.cjs.js.map +1 -1
  523. package/react/index.js +1 -0
  524. package/react/index.js.map +1 -1
  525. package/react/input/index.cjs.js +1 -0
  526. package/react/input/index.cjs.js.map +1 -1
  527. package/react/input/index.js +1 -0
  528. package/react/input/index.js.map +1 -1
  529. package/react/mainnav/index.cjs.js +1 -0
  530. package/react/mainnav/index.cjs.js.map +1 -1
  531. package/react/mainnav/index.js +1 -0
  532. package/react/mainnav/index.js.map +1 -1
  533. package/react/mainnav-dropdown/index.cjs.js +1 -0
  534. package/react/mainnav-dropdown/index.cjs.js.map +1 -1
  535. package/react/mainnav-dropdown/index.js +1 -0
  536. package/react/mainnav-dropdown/index.js.map +1 -1
  537. package/react/mainnav-item/index.cjs.js +1 -0
  538. package/react/mainnav-item/index.cjs.js.map +1 -1
  539. package/react/mainnav-item/index.js +1 -0
  540. package/react/mainnav-item/index.js.map +1 -1
  541. package/react/masthead/index.cjs.js +1 -0
  542. package/react/masthead/index.cjs.js.map +1 -1
  543. package/react/masthead/index.js +1 -0
  544. package/react/masthead/index.js.map +1 -1
  545. package/react/modal/index.cjs.js +1 -0
  546. package/react/modal/index.cjs.js.map +1 -1
  547. package/react/modal/index.js +1 -0
  548. package/react/modal/index.js.map +1 -1
  549. package/react/pagination/index.cjs.js +1 -0
  550. package/react/pagination/index.cjs.js.map +1 -1
  551. package/react/pagination/index.js +1 -0
  552. package/react/pagination/index.js.map +1 -1
  553. package/react/progress/index.cjs.js +1 -0
  554. package/react/progress/index.cjs.js.map +1 -1
  555. package/react/progress/index.js +1 -0
  556. package/react/progress/index.js.map +1 -1
  557. package/react/progress-bar/index.cjs.js +1 -0
  558. package/react/progress-bar/index.cjs.js.map +1 -1
  559. package/react/progress-bar/index.js +1 -0
  560. package/react/progress-bar/index.js.map +1 -1
  561. package/react/quantity-toggle/index.cjs.js +1 -0
  562. package/react/quantity-toggle/index.cjs.js.map +1 -1
  563. package/react/quantity-toggle/index.js +1 -0
  564. package/react/quantity-toggle/index.js.map +1 -1
  565. package/react/radio/index.cjs.js +1 -0
  566. package/react/radio/index.cjs.js.map +1 -1
  567. package/react/radio/index.js +1 -0
  568. package/react/radio/index.js.map +1 -1
  569. package/react/radio-group/index.cjs.js +1 -0
  570. package/react/radio-group/index.cjs.js.map +1 -1
  571. package/react/radio-group/index.js +1 -0
  572. package/react/radio-group/index.js.map +1 -1
  573. package/react/sidenav/index.cjs.js +1 -0
  574. package/react/sidenav/index.cjs.js.map +1 -1
  575. package/react/sidenav/index.js +1 -0
  576. package/react/sidenav/index.js.map +1 -1
  577. package/react/sidenav-item/index.cjs.js +1 -0
  578. package/react/sidenav-item/index.cjs.js.map +1 -1
  579. package/react/sidenav-item/index.js +1 -0
  580. package/react/sidenav-item/index.js.map +1 -1
  581. package/react/sidenav-link/index.cjs.js +1 -0
  582. package/react/sidenav-link/index.cjs.js.map +1 -1
  583. package/react/sidenav-link/index.js +1 -0
  584. package/react/sidenav-link/index.js.map +1 -1
  585. package/react/spinner/index.cjs.js +1 -0
  586. package/react/spinner/index.cjs.js.map +1 -1
  587. package/react/spinner/index.js +1 -0
  588. package/react/spinner/index.js.map +1 -1
  589. package/react/stepper/index.cjs.js +1 -0
  590. package/react/stepper/index.cjs.js.map +1 -1
  591. package/react/stepper/index.js +1 -0
  592. package/react/stepper/index.js.map +1 -1
  593. package/react/tab/index.cjs.js +1 -0
  594. package/react/tab/index.cjs.js.map +1 -1
  595. package/react/tab/index.js +1 -0
  596. package/react/tab/index.js.map +1 -1
  597. package/react/tab-group/index.cjs.js +1 -0
  598. package/react/tab-group/index.cjs.js.map +1 -1
  599. package/react/tab-group/index.js +1 -0
  600. package/react/tab-group/index.js.map +1 -1
  601. package/react/tab-panel/index.cjs.js +1 -0
  602. package/react/tab-panel/index.cjs.js.map +1 -1
  603. package/react/tab-panel/index.js +1 -0
  604. package/react/tab-panel/index.js.map +1 -1
  605. package/react/table/index.cjs.js +1 -0
  606. package/react/table/index.cjs.js.map +1 -1
  607. package/react/table/index.js +1 -0
  608. package/react/table/index.js.map +1 -1
  609. package/react/textarea/index.cjs.js +1 -0
  610. package/react/textarea/index.cjs.js.map +1 -1
  611. package/react/textarea/index.js +1 -0
  612. package/react/textarea/index.js.map +1 -1
  613. package/react/toast/index.cjs.js +1 -0
  614. package/react/toast/index.cjs.js.map +1 -1
  615. package/react/toast/index.js +1 -0
  616. package/react/toast/index.js.map +1 -1
  617. package/react/toast-container/index.cjs.js +1 -0
  618. package/react/toast-container/index.cjs.js.map +1 -1
  619. package/react/toast-container/index.js +1 -0
  620. package/react/toast-container/index.js.map +1 -1
  621. package/react/tooltip/index.cjs.js +1 -0
  622. package/react/tooltip/index.cjs.js.map +1 -1
  623. package/react/tooltip/index.js +1 -0
  624. package/react/tooltip/index.js.map +1 -1
  625. package/styles/anchor.cjs.js +1 -0
  626. package/styles/anchor.cjs.js.map +1 -1
  627. package/styles/anchor.js +1 -0
  628. package/styles/anchor.js.map +1 -1
  629. package/styles/bg-variants.cjs.js +1 -0
  630. package/styles/bg-variants.cjs.js.map +1 -1
  631. package/styles/bg-variants.js +1 -0
  632. package/styles/bg-variants.js.map +1 -1
  633. package/styles/border-variants.cjs.js +1 -0
  634. package/styles/border-variants.cjs.js.map +1 -1
  635. package/styles/border-variants.js +1 -0
  636. package/styles/border-variants.js.map +1 -1
  637. package/styles/feedback.cjs.js +1 -0
  638. package/styles/feedback.cjs.js.map +1 -1
  639. package/styles/feedback.js +1 -0
  640. package/styles/feedback.js.map +1 -1
  641. package/styles/form-hint.cjs.js +1 -0
  642. package/styles/form-hint.cjs.js.map +1 -1
  643. package/styles/form-hint.js +1 -0
  644. package/styles/form-hint.js.map +1 -1
  645. package/styles/form-label.cjs.js +1 -0
  646. package/styles/form-label.cjs.js.map +1 -1
  647. package/styles/form-label.js +1 -0
  648. package/styles/form-label.js.map +1 -1
  649. package/styles/header-class.cjs.js +1 -0
  650. package/styles/header-class.cjs.js.map +1 -1
  651. package/styles/header-class.js +1 -0
  652. package/styles/header-class.js.map +1 -1
  653. package/styles/paragraph.cjs.js +1 -0
  654. package/styles/paragraph.cjs.js.map +1 -1
  655. package/styles/paragraph.js +1 -0
  656. package/styles/paragraph.js.map +1 -1
  657. package/styles/svg.cjs.js +1 -0
  658. package/styles/svg.cjs.js.map +1 -1
  659. package/styles/svg.js +1 -0
  660. package/styles/svg.js.map +1 -1
  661. package/styles/text-variants.cjs.js +1 -0
  662. package/styles/text-variants.cjs.js.map +1 -1
  663. package/styles/text-variants.js +1 -0
  664. package/styles/text-variants.js.map +1 -1
  665. package/utils/animate.cjs.js +1 -0
  666. package/utils/animate.cjs.js.map +1 -1
  667. package/utils/animate.js +1 -0
  668. package/utils/animate.js.map +1 -1
  669. package/utils/animation-registry.cjs.js +1 -0
  670. package/utils/animation-registry.cjs.js.map +1 -1
  671. package/utils/animation-registry.js +1 -0
  672. package/utils/animation-registry.js.map +1 -1
  673. package/utils/breakpoints.cjs.js +1 -0
  674. package/utils/breakpoints.cjs.js.map +1 -1
  675. package/utils/breakpoints.js +1 -0
  676. package/utils/breakpoints.js.map +1 -1
  677. package/utils/defaultvalue.cjs.js +1 -0
  678. package/utils/defaultvalue.cjs.js.map +1 -1
  679. package/utils/defaultvalue.js +1 -0
  680. package/utils/defaultvalue.js.map +1 -1
  681. package/utils/event.cjs.js +1 -0
  682. package/utils/event.cjs.js.map +1 -1
  683. package/utils/event.js +1 -0
  684. package/utils/event.js.map +1 -1
  685. package/utils/form.cjs.js +1 -0
  686. package/utils/form.cjs.js.map +1 -1
  687. package/utils/form.js +1 -0
  688. package/utils/form.js.map +1 -1
  689. package/utils/generateId.cjs.js +1 -0
  690. package/utils/generateId.cjs.js.map +1 -1
  691. package/utils/generateId.js +1 -0
  692. package/utils/generateId.js.map +1 -1
  693. package/utils/mergeDeep.cjs.js +1 -0
  694. package/utils/mergeDeep.cjs.js.map +1 -1
  695. package/utils/mergeDeep.js +1 -0
  696. package/utils/mergeDeep.js.map +1 -1
  697. package/utils/modal.cjs.js +1 -0
  698. package/utils/modal.cjs.js.map +1 -1
  699. package/utils/modal.js +1 -0
  700. package/utils/modal.js.map +1 -1
  701. package/utils/object.cjs.js +1 -0
  702. package/utils/object.cjs.js.map +1 -1
  703. package/utils/object.js +1 -0
  704. package/utils/object.js.map +1 -1
  705. package/utils/scroll.cjs.js +1 -0
  706. package/utils/scroll.cjs.js.map +1 -1
  707. package/utils/scroll.js +1 -0
  708. package/utils/scroll.js.map +1 -1
  709. package/utils/slot.cjs.js +1 -0
  710. package/utils/slot.cjs.js.map +1 -1
  711. package/utils/slot.js +1 -0
  712. package/utils/slot.js.map +1 -1
  713. package/utils/tabbable.cjs.js +1 -0
  714. package/utils/tabbable.cjs.js.map +1 -1
  715. package/utils/tabbable.js +1 -0
  716. package/utils/tabbable.js.map +1 -1
  717. package/utils/time.cjs.js +1 -0
  718. package/utils/time.cjs.js.map +1 -1
  719. package/utils/time.js +1 -0
  720. package/utils/time.js.map +1 -1
  721. package/utils/watch.cjs.js +1 -0
  722. package/utils/watch.cjs.js.map +1 -1
  723. package/utils/watch.js +1 -0
  724. package/utils/watch.js.map +1 -1
@@ -1 +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
+ {"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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"}
@@ -2910,7 +2910,7 @@
2910
2910
  (globalThis.litIssuedWarnings ??= new Set());
2911
2911
  }
2912
2912
 
2913
- var css_248z$1 = css`:host{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--sgds-body-bg);color:var(--sgds-body-color);font-family:var(--sgds-body-font-family);font-size:var(--sgds-body-font-size);font-weight:var(--sgds-body-font-weight);line-height:var(--sgds-body-line-height);margin:0;text-align:var(--sgds-body-text-align);*,:after,:before{box-sizing:border-box}:disabled{cursor:not-allowed}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}::slotted(a[target=_blank]):after{background-color:currentColor;content:"/";display:inline-block;margin:0 .125rem;-webkit-mask-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-box-arrow-up-right"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');mask-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-box-arrow-up-right"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mask-size:73%;-webkit-mask-size:73%;padding:0 .45em}::slotted(a){color:var(--sgds-link);text-decoration:var(--sgds-link-decoration)}::slotted(a:hover){color:var(--sgds-link-hover-color)}::slotted(svg){vertical-align:middle}}`;
2913
+ var css_248z$1 = css`:host{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--sgds-body-bg);color:var(--sgds-body-color);font-family:var(--sgds-body-font-family);font-size:var(--sgds-body-font-size);font-weight:var(--sgds-body-font-weight);line-height:var(--sgds-body-line-height);margin:0;text-align:var(--sgds-body-text-align)}:host *,:host :after,:host :before{box-sizing:border-box}:host :disabled{cursor:not-allowed}@media (prefers-reduced-motion:no-preference){:host :root{scroll-behavior:smooth}}:host ::slotted(a[target=_blank]):after{background-color:currentColor;content:"/";display:inline-block;margin:0 .125rem;-webkit-mask-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-box-arrow-up-right"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');mask-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-box-arrow-up-right"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mask-size:73%;-webkit-mask-size:73%;padding:0 .45em}:host ::slotted(a){color:var(--sgds-link);text-decoration:var(--sgds-link-decoration)}:host ::slotted(a:hover){color:var(--sgds-link-hover-color)}:host ::slotted(svg){vertical-align:middle}`;
2914
2914
 
2915
2915
  /**
2916
2916
  * @cssprop --sgds-{stateColor} - State colors in hexadecimal value
@@ -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":";;;;;;;;;;;"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { css } from 'lit';
2
3
 
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}`;
@@ -1 +1 @@
1
- {"version":3,"file":"pagination.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
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 });
@@ -1 +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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"}
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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"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { __decorate } from 'tslib';
2
3
  import { html, nothing } from 'lit';
3
4
  import { property } from 'lit/decorators.js';
@@ -1 +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
+ {"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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"}
@@ -2874,7 +2874,7 @@
2874
2874
  `is not recommended.`);
2875
2875
  }
2876
2876
 
2877
- var css_248z$3 = css`:host{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--sgds-body-bg);color:var(--sgds-body-color);font-family:var(--sgds-body-font-family);font-size:var(--sgds-body-font-size);font-weight:var(--sgds-body-font-weight);line-height:var(--sgds-body-line-height);margin:0;text-align:var(--sgds-body-text-align);*,:after,:before{box-sizing:border-box}:disabled{cursor:not-allowed}@media (prefers-reduced-motion:no-preference){:root{scroll-behavior:smooth}}::slotted(a[target=_blank]):after{background-color:currentColor;content:"/";display:inline-block;margin:0 .125rem;-webkit-mask-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-box-arrow-up-right"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');mask-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-box-arrow-up-right"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mask-size:73%;-webkit-mask-size:73%;padding:0 .45em}::slotted(a){color:var(--sgds-link);text-decoration:var(--sgds-link-decoration)}::slotted(a:hover){color:var(--sgds-link-hover-color)}::slotted(svg){vertical-align:middle}}`;
2877
+ var css_248z$3 = css`:host{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:rgba(0,0,0,0);background-color:var(--sgds-body-bg);color:var(--sgds-body-color);font-family:var(--sgds-body-font-family);font-size:var(--sgds-body-font-size);font-weight:var(--sgds-body-font-weight);line-height:var(--sgds-body-line-height);margin:0;text-align:var(--sgds-body-text-align)}:host *,:host :after,:host :before{box-sizing:border-box}:host :disabled{cursor:not-allowed}@media (prefers-reduced-motion:no-preference){:host :root{scroll-behavior:smooth}}:host ::slotted(a[target=_blank]):after{background-color:currentColor;content:"/";display:inline-block;margin:0 .125rem;-webkit-mask-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-box-arrow-up-right"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');mask-image:url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-box-arrow-up-right"><path fill-rule="evenodd" d="M8.636 3.5a.5.5 0 0 0-.5-.5H1.5A1.5 1.5 0 0 0 0 4.5v10A1.5 1.5 0 0 0 1.5 16h10a1.5 1.5 0 0 0 1.5-1.5V7.864a.5.5 0 0 0-1 0V14.5a.5.5 0 0 1-.5.5h-10a.5.5 0 0 1-.5-.5v-10a.5.5 0 0 1 .5-.5h6.636a.5.5 0 0 0 .5-.5z"/><path fill-rule="evenodd" d="M16 .5a.5.5 0 0 0-.5-.5h-5a.5.5 0 0 0 0 1h3.793L6.146 9.146a.5.5 0 1 0 .708.708L15 1.707V5.5a.5.5 0 0 0 1 0v-5z"/></svg>');-webkit-mask-position:center;mask-position:center;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;mask-size:73%;-webkit-mask-size:73%;padding:0 .45em}:host ::slotted(a){color:var(--sgds-link);text-decoration:var(--sgds-link-decoration)}:host ::slotted(a:hover){color:var(--sgds-link-hover-color)}:host ::slotted(svg){vertical-align:middle}`;
2878
2878
 
2879
2879
  /**
2880
2880
  * @cssprop --sgds-{stateColor} - State colors in hexadecimal value
@@ -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":";;;;;;;;;;;"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { css } from 'lit';
2
3
 
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}}`;
@@ -1 +1 @@
1
- {"version":3,"file":"progress-bar.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
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":";;;;;;;;;;;"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { css } from 'lit';
2
3
 
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}`;
@@ -1 +1 @@
1
- {"version":3,"file":"progress.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
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 });
@@ -1 +1 @@
1
- {"version":3,"file":"sgds-progress-bar.cjs.js","sources":["../../../src/components/Progress/sgds-progress-bar.ts"],"sourcesContent":["import { property } from \"lit/decorators.js\";\nimport { styleMap } from \"lit/directives/style-map.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { html } from \"lit\";\nimport progressBarStyle from \"./progress-bar.css\";\nexport type ProgressBarVariant = \"primary\" | \"secondary\" | \"success\" | \"danger\" | \"warning\" | \"info\" | \"dark\";\n\nexport class SgdsProgressBar extends SgdsElement {\n static styles = [progressBarStyle];\n\n /** The background color of the progress bar */\n @property({ type: String, reflect: true }) variant: ProgressBarVariant;\n /**\n * The current progress as a percentage, from 0 to 100.\n */\n @property({ type: Number, reflect: true }) value: number;\n\n /**\n * Sets the minimun aria range for assistive devices.\n *\n * The aria-valuemin attribute defines the minimun allowed value for a range widget.\n */\n @property({ type: Number, reflect: true }) ariamin: number;\n /**\n * Sets the maximum aria range for assistive devices.\n *\n * The aria-valuemax attribute defines the maximum allowed value for a range widget.\n */\n @property({ type: Number, reflect: true }) ariamax: number;\n /**\n * Sets the aria label for assistive devices.\n */\n @property({ type: String, reflect: true }) arialabel = \"\";\n\n /** Add label on top of progress bar */\n @property({ type: String, reflect: true }) label = \"\";\n\n render() {\n return html`\n <div\n class=${classMap({\n \"progress-bar\": true\n })}\n role=\"progressbar\"\n style=${styleMap({ width: `${this.value}%` })}\n aria-label=${this.arialabel}\n aria-valuenow=${this.value}\n aria-valuemin=${this.ariamin}\n aria-valuemax=${this.ariamax}\n >\n ${this.label ? html`${this.label}` : undefined}\n </div>\n `;\n }\n}\n\nexport default SgdsProgressBar;\n"],"names":["SgdsElement","html","classMap","styleMap","progressBarStyle","__decorate","property"],"mappings":";;;;;;;;;;;;AAQM,MAAO,eAAgB,SAAQA,sBAAW,CAAA;AAAhD,IAAA,WAAA,GAAA;;AAsBE;;AAEG;QACwC,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;;QAGf,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;KAmBvD;IAjBC,MAAM,GAAA;AACJ,QAAA,OAAOC,QAAI,CAAA,CAAA;;AAEC,cAAA,EAAAC,oBAAQ,CAAC;AACf,YAAA,cAAc,EAAE,IAAI;SACrB,CAAC,CAAA;;gBAEMC,oBAAQ,CAAC,EAAE,KAAK,EAAE,CAAA,EAAG,IAAI,CAAC,KAAK,CAAG,CAAA,CAAA,EAAE,CAAC,CAAA;AAChC,mBAAA,EAAA,IAAI,CAAC,SAAS,CAAA;AACX,sBAAA,EAAA,IAAI,CAAC,KAAK,CAAA;AACV,sBAAA,EAAA,IAAI,CAAC,OAAO,CAAA;AACZ,sBAAA,EAAA,IAAI,CAAC,OAAO,CAAA;;AAE1B,QAAA,EAAA,IAAI,CAAC,KAAK,GAAGF,QAAI,CAAA,CAAG,EAAA,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,SAAS,CAAA;;KAEjD,CAAC;KACH;;AA7CM,eAAA,CAAA,MAAM,GAAG,CAACG,sBAAgB,CAAC,CAAC;AAGQC,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAA6B,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAI5BD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAe,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAOdD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAiB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAMhBD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAiB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIhBD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAgB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAGfD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAY,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA;;;;;"}
1
+ {"version":3,"file":"sgds-progress-bar.cjs.js","sources":["../../../src/components/Progress/sgds-progress-bar.ts"],"sourcesContent":["import { property } from \"lit/decorators.js\";\nimport { styleMap } from \"lit/directives/style-map.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { html } from \"lit\";\nimport progressBarStyle from \"./progress-bar.css\";\nexport type ProgressBarVariant = \"primary\" | \"secondary\" | \"success\" | \"danger\" | \"warning\" | \"info\" | \"dark\";\n\nexport class SgdsProgressBar extends SgdsElement {\n static styles = [progressBarStyle];\n\n /** The background color of the progress bar */\n @property({ type: String, reflect: true }) variant: ProgressBarVariant;\n /**\n * The current progress as a percentage, from 0 to 100.\n */\n @property({ type: Number, reflect: true }) value: number;\n\n /**\n * Sets the minimun aria range for assistive devices.\n *\n * The aria-valuemin attribute defines the minimun allowed value for a range widget.\n */\n @property({ type: Number, reflect: true }) ariamin: number;\n /**\n * Sets the maximum aria range for assistive devices.\n *\n * The aria-valuemax attribute defines the maximum allowed value for a range widget.\n */\n @property({ type: Number, reflect: true }) ariamax: number;\n /**\n * Sets the aria label for assistive devices.\n */\n @property({ type: String, reflect: true }) arialabel = \"\";\n\n /** Add label on top of progress bar */\n @property({ type: String, reflect: true }) label = \"\";\n\n render() {\n return html`\n <div\n class=${classMap({\n \"progress-bar\": true\n })}\n role=\"progressbar\"\n style=${styleMap({ width: `${this.value}%` })}\n aria-label=${this.arialabel}\n aria-valuenow=${this.value}\n aria-valuemin=${this.ariamin}\n aria-valuemax=${this.ariamax}\n >\n ${this.label ? html`${this.label}` : undefined}\n </div>\n `;\n }\n}\n\nexport default SgdsProgressBar;\n"],"names":["SgdsElement","html","classMap","styleMap","progressBarStyle","__decorate","property"],"mappings":";;;;;;;;;;;;;AAQM,MAAO,eAAgB,SAAQA,sBAAW,CAAA;AAAhD,IAAA,WAAA,GAAA;;AAsBE;;AAEG;QACwC,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;;QAGf,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;KAmBvD;IAjBC,MAAM,GAAA;AACJ,QAAA,OAAOC,QAAI,CAAA,CAAA;;AAEC,cAAA,EAAAC,oBAAQ,CAAC;AACf,YAAA,cAAc,EAAE,IAAI;SACrB,CAAC,CAAA;;gBAEMC,oBAAQ,CAAC,EAAE,KAAK,EAAE,CAAA,EAAG,IAAI,CAAC,KAAK,CAAG,CAAA,CAAA,EAAE,CAAC,CAAA;AAChC,mBAAA,EAAA,IAAI,CAAC,SAAS,CAAA;AACX,sBAAA,EAAA,IAAI,CAAC,KAAK,CAAA;AACV,sBAAA,EAAA,IAAI,CAAC,OAAO,CAAA;AACZ,sBAAA,EAAA,IAAI,CAAC,OAAO,CAAA;;AAE1B,QAAA,EAAA,IAAI,CAAC,KAAK,GAAGF,QAAI,CAAA,CAAG,EAAA,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,SAAS,CAAA;;KAEjD,CAAC;KACH;;AA7CM,eAAA,CAAA,MAAM,GAAG,CAACG,sBAAgB,CAAC,CAAC;AAGQC,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAA6B,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAI5BD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAe,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAOdD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAiB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAMhBD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAiB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIhBD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAgB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAGfD,gBAAA,CAAA;IAA1CC,sBAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAY,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA;;;;;"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { __decorate } from 'tslib';
2
3
  import { property } from 'lit/decorators.js';
3
4
  import { styleMap } from 'lit/directives/style-map.js';
@@ -1 +1 @@
1
- {"version":3,"file":"sgds-progress-bar.js","sources":["../../../src/components/Progress/sgds-progress-bar.ts"],"sourcesContent":["import { property } from \"lit/decorators.js\";\nimport { styleMap } from \"lit/directives/style-map.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { html } from \"lit\";\nimport progressBarStyle from \"./progress-bar.css\";\nexport type ProgressBarVariant = \"primary\" | \"secondary\" | \"success\" | \"danger\" | \"warning\" | \"info\" | \"dark\";\n\nexport class SgdsProgressBar extends SgdsElement {\n static styles = [progressBarStyle];\n\n /** The background color of the progress bar */\n @property({ type: String, reflect: true }) variant: ProgressBarVariant;\n /**\n * The current progress as a percentage, from 0 to 100.\n */\n @property({ type: Number, reflect: true }) value: number;\n\n /**\n * Sets the minimun aria range for assistive devices.\n *\n * The aria-valuemin attribute defines the minimun allowed value for a range widget.\n */\n @property({ type: Number, reflect: true }) ariamin: number;\n /**\n * Sets the maximum aria range for assistive devices.\n *\n * The aria-valuemax attribute defines the maximum allowed value for a range widget.\n */\n @property({ type: Number, reflect: true }) ariamax: number;\n /**\n * Sets the aria label for assistive devices.\n */\n @property({ type: String, reflect: true }) arialabel = \"\";\n\n /** Add label on top of progress bar */\n @property({ type: String, reflect: true }) label = \"\";\n\n render() {\n return html`\n <div\n class=${classMap({\n \"progress-bar\": true\n })}\n role=\"progressbar\"\n style=${styleMap({ width: `${this.value}%` })}\n aria-label=${this.arialabel}\n aria-valuenow=${this.value}\n aria-valuemin=${this.ariamin}\n aria-valuemax=${this.ariamax}\n >\n ${this.label ? html`${this.label}` : undefined}\n </div>\n `;\n }\n}\n\nexport default SgdsProgressBar;\n"],"names":["progressBarStyle"],"mappings":";;;;;;;;AAQM,MAAO,eAAgB,SAAQ,WAAW,CAAA;AAAhD,IAAA,WAAA,GAAA;;AAsBE;;AAEG;QACwC,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;;QAGf,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;KAmBvD;IAjBC,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAA,CAAA;;AAEC,cAAA,EAAA,QAAQ,CAAC;AACf,YAAA,cAAc,EAAE,IAAI;SACrB,CAAC,CAAA;;gBAEM,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAA,EAAG,IAAI,CAAC,KAAK,CAAG,CAAA,CAAA,EAAE,CAAC,CAAA;AAChC,mBAAA,EAAA,IAAI,CAAC,SAAS,CAAA;AACX,sBAAA,EAAA,IAAI,CAAC,KAAK,CAAA;AACV,sBAAA,EAAA,IAAI,CAAC,OAAO,CAAA;AACZ,sBAAA,EAAA,IAAI,CAAC,OAAO,CAAA;;AAE1B,QAAA,EAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA,CAAG,EAAA,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,SAAS,CAAA;;KAEjD,CAAC;KACH;;AA7CM,eAAA,CAAA,MAAM,GAAG,CAACA,QAAgB,CAAC,CAAC;AAGQ,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAA6B,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAI5B,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAe,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAOd,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAiB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAMhB,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAiB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIhB,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAgB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAGf,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAY,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA;;;;"}
1
+ {"version":3,"file":"sgds-progress-bar.js","sources":["../../../src/components/Progress/sgds-progress-bar.ts"],"sourcesContent":["import { property } from \"lit/decorators.js\";\nimport { styleMap } from \"lit/directives/style-map.js\";\nimport { classMap } from \"lit/directives/class-map.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { html } from \"lit\";\nimport progressBarStyle from \"./progress-bar.css\";\nexport type ProgressBarVariant = \"primary\" | \"secondary\" | \"success\" | \"danger\" | \"warning\" | \"info\" | \"dark\";\n\nexport class SgdsProgressBar extends SgdsElement {\n static styles = [progressBarStyle];\n\n /** The background color of the progress bar */\n @property({ type: String, reflect: true }) variant: ProgressBarVariant;\n /**\n * The current progress as a percentage, from 0 to 100.\n */\n @property({ type: Number, reflect: true }) value: number;\n\n /**\n * Sets the minimun aria range for assistive devices.\n *\n * The aria-valuemin attribute defines the minimun allowed value for a range widget.\n */\n @property({ type: Number, reflect: true }) ariamin: number;\n /**\n * Sets the maximum aria range for assistive devices.\n *\n * The aria-valuemax attribute defines the maximum allowed value for a range widget.\n */\n @property({ type: Number, reflect: true }) ariamax: number;\n /**\n * Sets the aria label for assistive devices.\n */\n @property({ type: String, reflect: true }) arialabel = \"\";\n\n /** Add label on top of progress bar */\n @property({ type: String, reflect: true }) label = \"\";\n\n render() {\n return html`\n <div\n class=${classMap({\n \"progress-bar\": true\n })}\n role=\"progressbar\"\n style=${styleMap({ width: `${this.value}%` })}\n aria-label=${this.arialabel}\n aria-valuenow=${this.value}\n aria-valuemin=${this.ariamin}\n aria-valuemax=${this.ariamax}\n >\n ${this.label ? html`${this.label}` : undefined}\n </div>\n `;\n }\n}\n\nexport default SgdsProgressBar;\n"],"names":["progressBarStyle"],"mappings":";;;;;;;;;AAQM,MAAO,eAAgB,SAAQ,WAAW,CAAA;AAAhD,IAAA,WAAA,GAAA;;AAsBE;;AAEG;QACwC,IAAS,CAAA,SAAA,GAAG,EAAE,CAAC;;QAGf,IAAK,CAAA,KAAA,GAAG,EAAE,CAAC;KAmBvD;IAjBC,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAA,CAAA;;AAEC,cAAA,EAAA,QAAQ,CAAC;AACf,YAAA,cAAc,EAAE,IAAI;SACrB,CAAC,CAAA;;gBAEM,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAA,EAAG,IAAI,CAAC,KAAK,CAAG,CAAA,CAAA,EAAE,CAAC,CAAA;AAChC,mBAAA,EAAA,IAAI,CAAC,SAAS,CAAA;AACX,sBAAA,EAAA,IAAI,CAAC,KAAK,CAAA;AACV,sBAAA,EAAA,IAAI,CAAC,OAAO,CAAA;AACZ,sBAAA,EAAA,IAAI,CAAC,OAAO,CAAA;;AAE1B,QAAA,EAAA,IAAI,CAAC,KAAK,GAAG,IAAI,CAAA,CAAG,EAAA,IAAI,CAAC,KAAK,CAAA,CAAE,GAAG,SAAS,CAAA;;KAEjD,CAAC;KACH;;AA7CM,eAAA,CAAA,MAAM,GAAG,CAACA,QAAgB,CAAC,CAAC;AAGQ,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAA6B,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAI5B,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAe,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAOd,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAiB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAMhB,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAiB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,SAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAIhB,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAgB,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,WAAA,EAAA,KAAA,CAAA,CAAA,CAAA;AAGf,UAAA,CAAA;IAA1C,QAAQ,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAAY,CAAA,EAAA,eAAA,CAAA,SAAA,EAAA,OAAA,EAAA,KAAA,CAAA,CAAA;;;;"}
@@ -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":"sgds-progress.cjs.js","sources":["../../../src/components/Progress/sgds-progress.ts"],"sourcesContent":["import { classMap } from \"lit/directives/class-map.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { html } from \"lit\";\nimport progressStyle from \"./progress.css\";\nimport bgStyles from \"../../styles/bg-variants.css\";\n\n/**\n * @summary Provide up-to-date feedback on the progress of a workflow or action with simple yet flexible progress bars.\n * @slot default - slot for progress-bar\n *\n * @cssprop --progress-height - Sets the height of the progress wrapper.\n */\n\nexport class SgdsProgress extends SgdsElement {\n static styles = [...SgdsElement.styles, bgStyles, progressStyle];\n\n render() {\n return html`\n <div\n class=${classMap({\n progress: true\n })}\n >\n <slot></slot>\n </div>\n `;\n }\n}\n\nexport default SgdsProgress;\n"],"names":["SgdsElement","html","classMap","bgStyles","progressStyle"],"mappings":";;;;;;;;;;AAMA;;;;;AAKG;AAEG,MAAO,YAAa,SAAQA,sBAAW,CAAA;IAG3C,MAAM,GAAA;AACJ,QAAA,OAAOC,QAAI,CAAA,CAAA;;AAEC,cAAA,EAAAC,oBAAQ,CAAC;AACf,YAAA,QAAQ,EAAE,IAAI;SACf,CAAC,CAAA;;;;KAIL,CAAC;KACH;;AAZM,YAAM,CAAA,MAAA,GAAG,CAAC,GAAGF,sBAAW,CAAC,MAAM,EAAEG,qBAAQ,EAAEC,mBAAa,CAAC;;;;;"}
1
+ {"version":3,"file":"sgds-progress.cjs.js","sources":["../../../src/components/Progress/sgds-progress.ts"],"sourcesContent":["import { classMap } from \"lit/directives/class-map.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { html } from \"lit\";\nimport progressStyle from \"./progress.css\";\nimport bgStyles from \"../../styles/bg-variants.css\";\n\n/**\n * @summary Provide up-to-date feedback on the progress of a workflow or action with simple yet flexible progress bars.\n * @slot default - slot for progress-bar\n *\n * @cssprop --progress-height - Sets the height of the progress wrapper.\n */\n\nexport class SgdsProgress extends SgdsElement {\n static styles = [...SgdsElement.styles, bgStyles, progressStyle];\n\n render() {\n return html`\n <div\n class=${classMap({\n progress: true\n })}\n >\n <slot></slot>\n </div>\n `;\n }\n}\n\nexport default SgdsProgress;\n"],"names":["SgdsElement","html","classMap","bgStyles","progressStyle"],"mappings":";;;;;;;;;;;AAMA;;;;;AAKG;AAEG,MAAO,YAAa,SAAQA,sBAAW,CAAA;IAG3C,MAAM,GAAA;AACJ,QAAA,OAAOC,QAAI,CAAA,CAAA;;AAEC,cAAA,EAAAC,oBAAQ,CAAC;AACf,YAAA,QAAQ,EAAE,IAAI;SACf,CAAC,CAAA;;;;KAIL,CAAC;KACH;;AAZM,YAAM,CAAA,MAAA,GAAG,CAAC,GAAGF,sBAAW,CAAC,MAAM,EAAEG,qBAAQ,EAAEC,mBAAa,CAAC;;;;;"}
@@ -1,3 +1,4 @@
1
+ 'use client';
1
2
  import { classMap } from 'lit/directives/class-map.js';
2
3
  import SgdsElement from '../../base/sgds-element.js';
3
4
  import { html } from 'lit';
@@ -1 +1 @@
1
- {"version":3,"file":"sgds-progress.js","sources":["../../../src/components/Progress/sgds-progress.ts"],"sourcesContent":["import { classMap } from \"lit/directives/class-map.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { html } from \"lit\";\nimport progressStyle from \"./progress.css\";\nimport bgStyles from \"../../styles/bg-variants.css\";\n\n/**\n * @summary Provide up-to-date feedback on the progress of a workflow or action with simple yet flexible progress bars.\n * @slot default - slot for progress-bar\n *\n * @cssprop --progress-height - Sets the height of the progress wrapper.\n */\n\nexport class SgdsProgress extends SgdsElement {\n static styles = [...SgdsElement.styles, bgStyles, progressStyle];\n\n render() {\n return html`\n <div\n class=${classMap({\n progress: true\n })}\n >\n <slot></slot>\n </div>\n `;\n }\n}\n\nexport default SgdsProgress;\n"],"names":["bgStyles","progressStyle"],"mappings":";;;;;;AAMA;;;;;AAKG;AAEG,MAAO,YAAa,SAAQ,WAAW,CAAA;IAG3C,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAA,CAAA;;AAEC,cAAA,EAAA,QAAQ,CAAC;AACf,YAAA,QAAQ,EAAE,IAAI;SACf,CAAC,CAAA;;;;KAIL,CAAC;KACH;;AAZM,YAAM,CAAA,MAAA,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,EAAEA,QAAQ,EAAEC,UAAa,CAAC;;;;"}
1
+ {"version":3,"file":"sgds-progress.js","sources":["../../../src/components/Progress/sgds-progress.ts"],"sourcesContent":["import { classMap } from \"lit/directives/class-map.js\";\nimport SgdsElement from \"../../base/sgds-element\";\nimport { html } from \"lit\";\nimport progressStyle from \"./progress.css\";\nimport bgStyles from \"../../styles/bg-variants.css\";\n\n/**\n * @summary Provide up-to-date feedback on the progress of a workflow or action with simple yet flexible progress bars.\n * @slot default - slot for progress-bar\n *\n * @cssprop --progress-height - Sets the height of the progress wrapper.\n */\n\nexport class SgdsProgress extends SgdsElement {\n static styles = [...SgdsElement.styles, bgStyles, progressStyle];\n\n render() {\n return html`\n <div\n class=${classMap({\n progress: true\n })}\n >\n <slot></slot>\n </div>\n `;\n }\n}\n\nexport default SgdsProgress;\n"],"names":["bgStyles","progressStyle"],"mappings":";;;;;;;AAMA;;;;;AAKG;AAEG,MAAO,YAAa,SAAQ,WAAW,CAAA;IAG3C,MAAM,GAAA;AACJ,QAAA,OAAO,IAAI,CAAA,CAAA;;AAEC,cAAA,EAAA,QAAQ,CAAC;AACf,YAAA,QAAQ,EAAE,IAAI;SACf,CAAC,CAAA;;;;KAIL,CAAC;KACH;;AAZM,YAAM,CAAA,MAAA,GAAG,CAAC,GAAG,WAAW,CAAC,MAAM,EAAEA,QAAQ,EAAEC,UAAa,CAAC;;;;"}