@govtechsg/sgds-web-component 2.1.0 → 2.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (920) hide show
  1. package/base/card-element.js +0 -1
  2. package/base/card-element.js.map +1 -1
  3. package/base/card.js +0 -1
  4. package/base/card.js.map +1 -1
  5. package/base/dropdown-element.js +0 -1
  6. package/base/dropdown-element.js.map +1 -1
  7. package/base/dropdown-list-element.js +0 -1
  8. package/base/dropdown-list-element.js.map +1 -1
  9. package/base/form-check-element.js +0 -1
  10. package/base/form-check-element.js.map +1 -1
  11. package/base/link-element.js +0 -1
  12. package/base/link-element.js.map +1 -1
  13. package/base/sgds-element.js +0 -1
  14. package/base/sgds-element.js.map +1 -1
  15. package/base/sgds-element2.js +0 -1
  16. package/base/sgds-element2.js.map +1 -1
  17. package/components/Accordion/accordion-item.js +0 -1
  18. package/components/Accordion/accordion-item.js.map +1 -1
  19. package/components/Accordion/accordion.js +0 -1
  20. package/components/Accordion/accordion.js.map +1 -1
  21. package/components/Accordion/sgds-accordion-item.js +0 -1
  22. package/components/Accordion/sgds-accordion-item.js.map +1 -1
  23. package/components/Accordion/sgds-accordion.js +0 -1
  24. package/components/Accordion/sgds-accordion.js.map +1 -1
  25. package/components/ActionCard/action-card.js +0 -1
  26. package/components/ActionCard/action-card.js.map +1 -1
  27. package/components/ActionCard/sgds-action-card.js +0 -1
  28. package/components/ActionCard/sgds-action-card.js.map +1 -1
  29. package/components/Alert/alert-link.js +0 -1
  30. package/components/Alert/alert-link.js.map +1 -1
  31. package/components/Alert/alert.js +0 -1
  32. package/components/Alert/alert.js.map +1 -1
  33. package/components/Alert/sgds-alert-heading.js +0 -1
  34. package/components/Alert/sgds-alert-heading.js.map +1 -1
  35. package/components/Alert/sgds-alert-link.js +0 -1
  36. package/components/Alert/sgds-alert-link.js.map +1 -1
  37. package/components/Alert/sgds-alert.js +0 -1
  38. package/components/Alert/sgds-alert.js.map +1 -1
  39. package/components/Badge/badge.js +0 -1
  40. package/components/Badge/badge.js.map +1 -1
  41. package/components/Badge/sgds-badge.js +0 -1
  42. package/components/Badge/sgds-badge.js.map +1 -1
  43. package/components/Breadcrumb/breadcrumb-item.js +0 -1
  44. package/components/Breadcrumb/breadcrumb-item.js.map +1 -1
  45. package/components/Breadcrumb/breadcrumb.js +0 -1
  46. package/components/Breadcrumb/breadcrumb.js.map +1 -1
  47. package/components/Breadcrumb/sgds-breadcrumb-item.js +0 -1
  48. package/components/Breadcrumb/sgds-breadcrumb-item.js.map +1 -1
  49. package/components/Breadcrumb/sgds-breadcrumb.js +0 -1
  50. package/components/Breadcrumb/sgds-breadcrumb.js.map +1 -1
  51. package/components/Button/button.js +0 -1
  52. package/components/Button/button.js.map +1 -1
  53. package/components/Button/sgds-button.js +0 -1
  54. package/components/Button/sgds-button.js.map +1 -1
  55. package/components/Card/card.js +0 -1
  56. package/components/Card/card.js.map +1 -1
  57. package/components/Card/sgds-card.js +0 -1
  58. package/components/Card/sgds-card.js.map +1 -1
  59. package/components/Checkbox/checkbox.js +0 -1
  60. package/components/Checkbox/checkbox.js.map +1 -1
  61. package/components/Checkbox/sgds-checkbox.js +0 -1
  62. package/components/Checkbox/sgds-checkbox.js.map +1 -1
  63. package/components/ComboBox/combo-box.js +0 -1
  64. package/components/ComboBox/combo-box.js.map +1 -1
  65. package/components/ComboBox/sgds-combo-box.js +0 -1
  66. package/components/ComboBox/sgds-combo-box.js.map +1 -1
  67. package/components/Datepicker/datepicker-calendar.js +0 -1
  68. package/components/Datepicker/datepicker-calendar.js.map +1 -1
  69. package/components/Datepicker/datepicker-calendar2.js +0 -1
  70. package/components/Datepicker/datepicker-calendar2.js.map +1 -1
  71. package/components/Datepicker/datepicker-header.js +0 -1
  72. package/components/Datepicker/datepicker-header.js.map +1 -1
  73. package/components/Datepicker/datepicker-header2.js +0 -1
  74. package/components/Datepicker/datepicker-header2.js.map +1 -1
  75. package/components/Datepicker/datepicker-input.js +0 -1
  76. package/components/Datepicker/datepicker-input.js.map +1 -1
  77. package/components/Datepicker/datepicker-input2.js +0 -1
  78. package/components/Datepicker/datepicker-input2.js.map +1 -1
  79. package/components/Datepicker/datepicker.js +0 -1
  80. package/components/Datepicker/datepicker.js.map +1 -1
  81. package/components/Datepicker/sgds-datepicker.js +0 -1
  82. package/components/Datepicker/sgds-datepicker.js.map +1 -1
  83. package/components/Drawer/drawer.js +0 -1
  84. package/components/Drawer/drawer.js.map +1 -1
  85. package/components/Drawer/sgds-drawer.js +0 -1
  86. package/components/Drawer/sgds-drawer.js.map +1 -1
  87. package/components/Dropdown/dropdown.js +0 -1
  88. package/components/Dropdown/dropdown.js.map +1 -1
  89. package/components/Dropdown/sgds-dropdown-item.js +0 -1
  90. package/components/Dropdown/sgds-dropdown-item.js.map +1 -1
  91. package/components/Dropdown/sgds-dropdown.js +0 -1
  92. package/components/Dropdown/sgds-dropdown.js.map +1 -1
  93. package/components/FileUpload/file-upload.js +0 -1
  94. package/components/FileUpload/file-upload.js.map +1 -1
  95. package/components/FileUpload/sgds-file-upload.js +0 -1
  96. package/components/FileUpload/sgds-file-upload.js.map +1 -1
  97. package/components/Footer/footer.js +0 -1
  98. package/components/Footer/footer.js.map +1 -1
  99. package/components/Footer/sgds-footer.js +0 -1
  100. package/components/Footer/sgds-footer.js.map +1 -1
  101. package/components/Input/input.js +0 -1
  102. package/components/Input/input.js.map +1 -1
  103. package/components/Input/sgds-input.js +0 -1
  104. package/components/Input/sgds-input.js.map +1 -1
  105. package/components/Mainnav/mainnav-dropdown.js +0 -1
  106. package/components/Mainnav/mainnav-dropdown.js.map +1 -1
  107. package/components/Mainnav/mainnav-item.js +0 -1
  108. package/components/Mainnav/mainnav-item.js.map +1 -1
  109. package/components/Mainnav/mainnav.js +0 -1
  110. package/components/Mainnav/mainnav.js.map +1 -1
  111. package/components/Mainnav/sgds-mainnav-dropdown.js +0 -1
  112. package/components/Mainnav/sgds-mainnav-dropdown.js.map +1 -1
  113. package/components/Mainnav/sgds-mainnav-item.js +0 -1
  114. package/components/Mainnav/sgds-mainnav-item.js.map +1 -1
  115. package/components/Mainnav/sgds-mainnav.js +0 -1
  116. package/components/Mainnav/sgds-mainnav.js.map +1 -1
  117. package/components/Masthead/masthead.js +0 -1
  118. package/components/Masthead/masthead.js.map +1 -1
  119. package/components/Masthead/sgds-masthead.js +0 -1
  120. package/components/Masthead/sgds-masthead.js.map +1 -1
  121. package/components/Modal/modal.js +0 -1
  122. package/components/Modal/modal.js.map +1 -1
  123. package/components/Modal/sgds-modal.js +0 -1
  124. package/components/Modal/sgds-modal.js.map +1 -1
  125. package/components/Pagination/pagination.js +0 -1
  126. package/components/Pagination/pagination.js.map +1 -1
  127. package/components/Pagination/sgds-pagination.js +0 -1
  128. package/components/Pagination/sgds-pagination.js.map +1 -1
  129. package/components/Progress/progress-bar.js +0 -1
  130. package/components/Progress/progress-bar.js.map +1 -1
  131. package/components/Progress/progress.js +0 -1
  132. package/components/Progress/progress.js.map +1 -1
  133. package/components/Progress/sgds-progress-bar.js +0 -1
  134. package/components/Progress/sgds-progress-bar.js.map +1 -1
  135. package/components/Progress/sgds-progress.js +0 -1
  136. package/components/Progress/sgds-progress.js.map +1 -1
  137. package/components/QuantityToggle/quantity-toggle.js +0 -1
  138. package/components/QuantityToggle/quantity-toggle.js.map +1 -1
  139. package/components/QuantityToggle/sgds-quantity-toggle.js +0 -1
  140. package/components/QuantityToggle/sgds-quantity-toggle.js.map +1 -1
  141. package/components/Radio/radio-group.js +0 -1
  142. package/components/Radio/radio-group.js.map +1 -1
  143. package/components/Radio/radio.js +0 -1
  144. package/components/Radio/radio.js.map +1 -1
  145. package/components/Radio/sgds-radio-group.js +0 -1
  146. package/components/Radio/sgds-radio-group.js.map +1 -1
  147. package/components/Radio/sgds-radio.js +0 -1
  148. package/components/Radio/sgds-radio.js.map +1 -1
  149. package/components/Sidenav/sgds-sidenav-item.js +0 -1
  150. package/components/Sidenav/sgds-sidenav-item.js.map +1 -1
  151. package/components/Sidenav/sgds-sidenav-link.js +0 -1
  152. package/components/Sidenav/sgds-sidenav-link.js.map +1 -1
  153. package/components/Sidenav/sgds-sidenav.js +0 -1
  154. package/components/Sidenav/sgds-sidenav.js.map +1 -1
  155. package/components/Sidenav/sidenav-item.js +0 -1
  156. package/components/Sidenav/sidenav-item.js.map +1 -1
  157. package/components/Sidenav/sidenav-link.js +0 -1
  158. package/components/Sidenav/sidenav-link.js.map +1 -1
  159. package/components/Sidenav/sidenav.js +0 -1
  160. package/components/Sidenav/sidenav.js.map +1 -1
  161. package/components/Spinner/sgds-spinner.js +0 -1
  162. package/components/Spinner/sgds-spinner.js.map +1 -1
  163. package/components/Spinner/spinner.js +0 -1
  164. package/components/Spinner/spinner.js.map +1 -1
  165. package/components/Stepper/sgds-stepper.js +0 -1
  166. package/components/Stepper/sgds-stepper.js.map +1 -1
  167. package/components/Stepper/stepper.js +0 -1
  168. package/components/Stepper/stepper.js.map +1 -1
  169. package/components/Tab/sgds-tab-group.js +0 -1
  170. package/components/Tab/sgds-tab-group.js.map +1 -1
  171. package/components/Tab/sgds-tab-panel.js +0 -1
  172. package/components/Tab/sgds-tab-panel.js.map +1 -1
  173. package/components/Tab/sgds-tab.js +0 -1
  174. package/components/Tab/sgds-tab.js.map +1 -1
  175. package/components/Tab/tab-group.js +0 -1
  176. package/components/Tab/tab-group.js.map +1 -1
  177. package/components/Tab/tab-panel.js +0 -1
  178. package/components/Tab/tab-panel.js.map +1 -1
  179. package/components/Tab/tab.js +0 -1
  180. package/components/Tab/tab.js.map +1 -1
  181. package/components/Table/sgds-table.js +0 -1
  182. package/components/Table/sgds-table.js.map +1 -1
  183. package/components/Table/table.js +0 -1
  184. package/components/Table/table.js.map +1 -1
  185. package/components/Textarea/sgds-textarea.js +0 -1
  186. package/components/Textarea/sgds-textarea.js.map +1 -1
  187. package/components/Textarea/textarea.js +0 -1
  188. package/components/Textarea/textarea.js.map +1 -1
  189. package/components/Toast/sgds-toast-container.js +0 -1
  190. package/components/Toast/sgds-toast-container.js.map +1 -1
  191. package/components/Toast/sgds-toast.js +0 -1
  192. package/components/Toast/sgds-toast.js.map +1 -1
  193. package/components/Toast/toast-container.js +0 -1
  194. package/components/Toast/toast-container.js.map +1 -1
  195. package/components/Toast/toast.js +0 -1
  196. package/components/Toast/toast.js.map +1 -1
  197. package/components/Tooltip/sgds-tooltip.js +0 -1
  198. package/components/Tooltip/sgds-tooltip.js.map +1 -1
  199. package/components/Tooltip/tooltip.js +0 -1
  200. package/components/Tooltip/tooltip.js.map +1 -1
  201. package/internals/CloseButton/close-button.js +0 -1
  202. package/internals/CloseButton/close-button.js.map +1 -1
  203. package/internals/CloseButton/sgds-close-button.js +0 -1
  204. package/internals/CloseButton/sgds-close-button.js.map +1 -1
  205. package/package.json +1 -1
  206. package/react/accordion/index.cjs.js +1 -1
  207. package/react/accordion/index.js +1 -1
  208. package/react/accordion-item/index.cjs.js +1 -1
  209. package/react/accordion-item/index.js +1 -1
  210. package/react/action-card/index.cjs.js +1 -1
  211. package/react/action-card/index.js +1 -1
  212. package/react/alert/index.cjs.js +1 -1
  213. package/react/alert/index.js +1 -1
  214. package/react/alert-heading/index.cjs.js +1 -1
  215. package/react/alert-heading/index.js +1 -1
  216. package/react/alert-link/index.cjs.js +1 -1
  217. package/react/alert-link/index.js +1 -1
  218. package/react/badge/index.cjs.js +1 -1
  219. package/react/badge/index.js +1 -1
  220. package/react/base/card-element.cjs.js.map +1 -0
  221. package/react/base/card-element.js +26 -0
  222. package/react/base/card-element.js.map +1 -0
  223. package/react/base/card.js +7 -0
  224. package/react/base/card.js.map +1 -0
  225. package/react/base/dropdown-element.cjs.js.map +1 -0
  226. package/react/base/dropdown-element.js +174 -0
  227. package/react/base/dropdown-element.js.map +1 -0
  228. package/react/base/dropdown-list-element.cjs.js.map +1 -0
  229. package/react/base/dropdown-list-element.js +130 -0
  230. package/react/base/dropdown-list-element.js.map +1 -0
  231. package/react/base/form-check-element.cjs.js.map +1 -0
  232. package/react/base/form-check-element.js +167 -0
  233. package/react/base/form-check-element.js.map +1 -0
  234. package/react/base/link-element.cjs.js.map +1 -0
  235. package/react/base/link-element.js +53 -0
  236. package/react/base/link-element.js.map +1 -0
  237. package/react/base/sgds-element.cjs.js.map +1 -0
  238. package/react/base/sgds-element.js +24 -0
  239. package/react/base/sgds-element.js.map +1 -0
  240. package/react/base/sgds-element2.js +7 -0
  241. package/react/base/sgds-element2.js.map +1 -0
  242. package/react/breadcrumb/index.cjs.js +1 -1
  243. package/react/breadcrumb/index.js +1 -1
  244. package/react/breadcrumb-item/index.cjs.js +1 -1
  245. package/react/breadcrumb-item/index.js +1 -1
  246. package/react/button/index.cjs.js +1 -1
  247. package/react/button/index.js +1 -1
  248. package/react/card/index.cjs.js +1 -1
  249. package/react/card/index.js +1 -1
  250. package/react/checkbox/index.cjs.js +1 -1
  251. package/react/checkbox/index.js +1 -1
  252. package/react/combo-box/index.cjs.js +1 -1
  253. package/react/combo-box/index.js +1 -1
  254. package/react/components/Accordion/accordion-item.js +7 -0
  255. package/react/components/Accordion/accordion-item.js.map +1 -0
  256. package/react/components/Accordion/accordion.js +7 -0
  257. package/react/components/Accordion/accordion.js.map +1 -0
  258. package/react/components/Accordion/sgds-accordion-item.cjs.js.map +1 -0
  259. package/react/components/Accordion/sgds-accordion-item.js +204 -0
  260. package/react/components/Accordion/sgds-accordion-item.js.map +1 -0
  261. package/react/components/Accordion/sgds-accordion.cjs.js.map +1 -0
  262. package/react/components/Accordion/sgds-accordion.js +87 -0
  263. package/react/components/Accordion/sgds-accordion.js.map +1 -0
  264. package/react/components/ActionCard/action-card.js +7 -0
  265. package/react/components/ActionCard/action-card.js.map +1 -0
  266. package/react/components/ActionCard/sgds-action-card.cjs.js.map +1 -0
  267. package/react/components/ActionCard/sgds-action-card.js +155 -0
  268. package/react/components/ActionCard/sgds-action-card.js.map +1 -0
  269. package/react/components/Alert/alert-link.js +7 -0
  270. package/react/components/Alert/alert-link.js.map +1 -0
  271. package/react/components/Alert/alert.js +7 -0
  272. package/react/components/Alert/alert.js.map +1 -0
  273. package/react/components/Alert/sgds-alert-heading.cjs.js.map +1 -0
  274. package/react/components/Alert/sgds-alert-heading.js +33 -0
  275. package/react/components/Alert/sgds-alert-heading.js.map +1 -0
  276. package/react/components/Alert/sgds-alert-link.cjs.js.map +1 -0
  277. package/react/components/Alert/sgds-alert-link.js +32 -0
  278. package/react/components/Alert/sgds-alert-link.js.map +1 -0
  279. package/react/components/Alert/sgds-alert.cjs.js.map +1 -0
  280. package/react/components/Alert/sgds-alert.js +90 -0
  281. package/react/components/Alert/sgds-alert.js.map +1 -0
  282. package/react/components/Badge/badge.js +7 -0
  283. package/react/components/Badge/badge.js.map +1 -0
  284. package/react/components/Badge/sgds-badge.cjs.js.map +1 -0
  285. package/react/components/Badge/sgds-badge.js +53 -0
  286. package/react/components/Badge/sgds-badge.js.map +1 -0
  287. package/react/components/Breadcrumb/breadcrumb-item.js +7 -0
  288. package/react/components/Breadcrumb/breadcrumb-item.js.map +1 -0
  289. package/react/components/Breadcrumb/breadcrumb.js +7 -0
  290. package/react/components/Breadcrumb/breadcrumb.js.map +1 -0
  291. package/react/components/Breadcrumb/sgds-breadcrumb-item.cjs.js.map +1 -0
  292. package/react/components/Breadcrumb/sgds-breadcrumb-item.js +65 -0
  293. package/react/components/Breadcrumb/sgds-breadcrumb-item.js.map +1 -0
  294. package/react/components/Breadcrumb/sgds-breadcrumb.cjs.js.map +1 -0
  295. package/react/components/Breadcrumb/sgds-breadcrumb.js +82 -0
  296. package/react/components/Breadcrumb/sgds-breadcrumb.js.map +1 -0
  297. package/react/components/Button/button.js +7 -0
  298. package/react/components/Button/button.js.map +1 -0
  299. package/react/components/Button/sgds-button.cjs.js.map +1 -0
  300. package/react/components/Button/sgds-button.js +166 -0
  301. package/react/components/Button/sgds-button.js.map +1 -0
  302. package/react/components/Card/card.js +7 -0
  303. package/react/components/Card/card.js.map +1 -0
  304. package/react/components/Card/sgds-card.cjs.js.map +1 -0
  305. package/react/components/Card/sgds-card.js +76 -0
  306. package/react/components/Card/sgds-card.js.map +1 -0
  307. package/react/components/Checkbox/checkbox.js +7 -0
  308. package/react/components/Checkbox/checkbox.js.map +1 -0
  309. package/react/components/Checkbox/sgds-checkbox.cjs.js.map +1 -0
  310. package/react/components/Checkbox/sgds-checkbox.js +26 -0
  311. package/react/components/Checkbox/sgds-checkbox.js.map +1 -0
  312. package/react/components/ComboBox/combo-box.js +7 -0
  313. package/react/components/ComboBox/combo-box.js.map +1 -0
  314. package/react/components/ComboBox/sgds-combo-box.cjs.js.map +1 -0
  315. package/react/components/ComboBox/sgds-combo-box.js +194 -0
  316. package/react/components/ComboBox/sgds-combo-box.js.map +1 -0
  317. package/react/components/Datepicker/datepicker-calendar.cjs.js.map +1 -0
  318. package/react/components/Datepicker/datepicker-calendar.js +458 -0
  319. package/react/components/Datepicker/datepicker-calendar.js.map +1 -0
  320. package/react/components/Datepicker/datepicker-calendar2.js +7 -0
  321. package/react/components/Datepicker/datepicker-calendar2.js.map +1 -0
  322. package/react/components/Datepicker/datepicker-header.cjs.js.map +1 -0
  323. package/react/components/Datepicker/datepicker-header.js +227 -0
  324. package/react/components/Datepicker/datepicker-header.js.map +1 -0
  325. package/react/components/Datepicker/datepicker-header2.js +7 -0
  326. package/react/components/Datepicker/datepicker-header2.js.map +1 -0
  327. package/react/components/Datepicker/datepicker-input.cjs.js.map +1 -0
  328. package/react/components/Datepicker/datepicker-input.js +150 -0
  329. package/react/components/Datepicker/datepicker-input.js.map +1 -0
  330. package/react/components/Datepicker/datepicker-input2.js +7 -0
  331. package/react/components/Datepicker/datepicker-input2.js.map +1 -0
  332. package/react/components/Datepicker/datepicker.js +7 -0
  333. package/react/components/Datepicker/datepicker.js.map +1 -0
  334. package/react/components/Datepicker/sgds-datepicker.cjs.js.map +1 -0
  335. package/react/components/Datepicker/sgds-datepicker.js +484 -0
  336. package/react/components/Datepicker/sgds-datepicker.js.map +1 -0
  337. package/react/components/Drawer/drawer.js +7 -0
  338. package/react/components/Drawer/drawer.js.map +1 -0
  339. package/react/components/Drawer/sgds-drawer.cjs.js.map +1 -0
  340. package/react/components/Drawer/sgds-drawer.js +413 -0
  341. package/react/components/Drawer/sgds-drawer.js.map +1 -0
  342. package/react/components/Dropdown/dropdown.js +7 -0
  343. package/react/components/Dropdown/dropdown.js.map +1 -0
  344. package/react/components/Dropdown/sgds-dropdown-item.cjs.js.map +1 -0
  345. package/react/components/Dropdown/sgds-dropdown-item.js +47 -0
  346. package/react/components/Dropdown/sgds-dropdown-item.js.map +1 -0
  347. package/react/components/Dropdown/sgds-dropdown.cjs.js.map +1 -0
  348. package/react/components/Dropdown/sgds-dropdown.js +117 -0
  349. package/react/components/Dropdown/sgds-dropdown.js.map +1 -0
  350. package/react/components/FileUpload/file-upload.js +7 -0
  351. package/react/components/FileUpload/file-upload.js.map +1 -0
  352. package/react/components/FileUpload/sgds-file-upload.cjs.js.map +1 -0
  353. package/react/components/FileUpload/sgds-file-upload.js +208 -0
  354. package/react/components/FileUpload/sgds-file-upload.js.map +1 -0
  355. package/react/components/Footer/footer.js +7 -0
  356. package/react/components/Footer/footer.js.map +1 -0
  357. package/react/components/Footer/sgds-footer.cjs.js.map +1 -0
  358. package/react/components/Footer/sgds-footer.js +155 -0
  359. package/react/components/Footer/sgds-footer.js.map +1 -0
  360. package/react/components/Input/input.js +7 -0
  361. package/react/components/Input/input.js.map +1 -0
  362. package/react/components/Input/sgds-input.cjs.js.map +1 -0
  363. package/react/components/Input/sgds-input.js +262 -0
  364. package/react/components/Input/sgds-input.js.map +1 -0
  365. package/react/components/Mainnav/mainnav-dropdown.js +7 -0
  366. package/react/components/Mainnav/mainnav-dropdown.js.map +1 -0
  367. package/react/components/Mainnav/mainnav-item.js +7 -0
  368. package/react/components/Mainnav/mainnav-item.js.map +1 -0
  369. package/react/components/Mainnav/mainnav.js +7 -0
  370. package/react/components/Mainnav/mainnav.js.map +1 -0
  371. package/react/components/Mainnav/sgds-mainnav-dropdown.cjs.js.map +1 -0
  372. package/react/components/Mainnav/sgds-mainnav-dropdown.js +85 -0
  373. package/react/components/Mainnav/sgds-mainnav-dropdown.js.map +1 -0
  374. package/react/components/Mainnav/sgds-mainnav-item.cjs.js.map +1 -0
  375. package/react/components/Mainnav/sgds-mainnav-item.js +14 -0
  376. package/react/components/Mainnav/sgds-mainnav-item.js.map +1 -0
  377. package/react/components/Mainnav/sgds-mainnav.cjs.js.map +1 -0
  378. package/react/components/Mainnav/sgds-mainnav.js +227 -0
  379. package/react/components/Mainnav/sgds-mainnav.js.map +1 -0
  380. package/react/components/Masthead/masthead.js +7 -0
  381. package/react/components/Masthead/masthead.js.map +1 -0
  382. package/react/components/Masthead/sgds-masthead.cjs.js.map +1 -0
  383. package/react/components/Masthead/sgds-masthead.js +182 -0
  384. package/react/components/Masthead/sgds-masthead.js.map +1 -0
  385. package/react/components/Modal/modal.js +7 -0
  386. package/react/components/Modal/modal.js.map +1 -0
  387. package/react/components/Modal/sgds-modal.cjs.js.map +1 -0
  388. package/react/components/Modal/sgds-modal.js +340 -0
  389. package/react/components/Modal/sgds-modal.js.map +1 -0
  390. package/react/components/Pagination/pagination.js +7 -0
  391. package/react/components/Pagination/pagination.js.map +1 -0
  392. package/react/components/Pagination/sgds-pagination.cjs.js.map +1 -0
  393. package/react/components/Pagination/sgds-pagination.js +364 -0
  394. package/react/components/Pagination/sgds-pagination.js.map +1 -0
  395. package/react/components/Progress/progress-bar.js +7 -0
  396. package/react/components/Progress/progress-bar.js.map +1 -0
  397. package/react/components/Progress/progress.js +7 -0
  398. package/react/components/Progress/progress.js.map +1 -0
  399. package/react/components/Progress/sgds-progress-bar.cjs.js.map +1 -0
  400. package/react/components/Progress/sgds-progress-bar.js +59 -0
  401. package/react/components/Progress/sgds-progress-bar.js.map +1 -0
  402. package/react/components/Progress/sgds-progress.cjs.js.map +1 -0
  403. package/react/components/Progress/sgds-progress.js +30 -0
  404. package/react/components/Progress/sgds-progress.js.map +1 -0
  405. package/react/components/QuantityToggle/quantity-toggle.js +7 -0
  406. package/react/components/QuantityToggle/quantity-toggle.js.map +1 -0
  407. package/react/components/QuantityToggle/sgds-quantity-toggle.cjs.js.map +1 -0
  408. package/react/components/QuantityToggle/sgds-quantity-toggle.js +210 -0
  409. package/react/components/QuantityToggle/sgds-quantity-toggle.js.map +1 -0
  410. package/react/components/Radio/radio-group.js +7 -0
  411. package/react/components/Radio/radio-group.js.map +1 -0
  412. package/react/components/Radio/radio.js +7 -0
  413. package/react/components/Radio/radio.js.map +1 -0
  414. package/react/components/Radio/sgds-radio-group.cjs.js.map +1 -0
  415. package/react/components/Radio/sgds-radio-group.js +240 -0
  416. package/react/components/Radio/sgds-radio-group.js.map +1 -0
  417. package/react/components/Radio/sgds-radio.cjs.js.map +1 -0
  418. package/react/components/Radio/sgds-radio.js +138 -0
  419. package/react/components/Radio/sgds-radio.js.map +1 -0
  420. package/react/components/Sidenav/sgds-sidenav-item.cjs.js.map +1 -0
  421. package/react/components/Sidenav/sgds-sidenav-item.js +256 -0
  422. package/react/components/Sidenav/sgds-sidenav-item.js.map +1 -0
  423. package/react/components/Sidenav/sgds-sidenav-link.cjs.js.map +1 -0
  424. package/react/components/Sidenav/sgds-sidenav-link.js +18 -0
  425. package/react/components/Sidenav/sgds-sidenav-link.js.map +1 -0
  426. package/react/components/Sidenav/sgds-sidenav.cjs.js.map +1 -0
  427. package/react/components/Sidenav/sgds-sidenav.js +75 -0
  428. package/react/components/Sidenav/sgds-sidenav.js.map +1 -0
  429. package/react/components/Sidenav/sidenav-item.js +7 -0
  430. package/react/components/Sidenav/sidenav-item.js.map +1 -0
  431. package/react/components/Sidenav/sidenav-link.js +7 -0
  432. package/react/components/Sidenav/sidenav-link.js.map +1 -0
  433. package/react/components/Sidenav/sidenav.js +7 -0
  434. package/react/components/Sidenav/sidenav.js.map +1 -0
  435. package/react/components/Spinner/sgds-spinner.cjs.js.map +1 -0
  436. package/react/components/Spinner/sgds-spinner.js +38 -0
  437. package/react/components/Spinner/sgds-spinner.js.map +1 -0
  438. package/react/components/Spinner/spinner.js +8 -0
  439. package/react/components/Spinner/spinner.js.map +1 -0
  440. package/react/components/Stepper/sgds-stepper.cjs.js.map +1 -0
  441. package/react/components/Stepper/sgds-stepper.js +132 -0
  442. package/react/components/Stepper/sgds-stepper.js.map +1 -0
  443. package/react/components/Stepper/stepper.js +7 -0
  444. package/react/components/Stepper/stepper.js.map +1 -0
  445. package/react/components/Tab/sgds-tab-group.cjs.js.map +1 -0
  446. package/react/components/Tab/sgds-tab-group.js +233 -0
  447. package/react/components/Tab/sgds-tab-group.js.map +1 -0
  448. package/react/components/Tab/sgds-tab-panel.cjs.js.map +1 -0
  449. package/react/components/Tab/sgds-tab-panel.js +63 -0
  450. package/react/components/Tab/sgds-tab-panel.js.map +1 -0
  451. package/react/components/Tab/sgds-tab.cjs.js.map +1 -0
  452. package/react/components/Tab/sgds-tab.js +110 -0
  453. package/react/components/Tab/sgds-tab.js.map +1 -0
  454. package/react/components/Tab/tab-group.js +7 -0
  455. package/react/components/Tab/tab-group.js.map +1 -0
  456. package/react/components/Tab/tab-panel.js +7 -0
  457. package/react/components/Tab/tab-panel.js.map +1 -0
  458. package/react/components/Tab/tab.js +7 -0
  459. package/react/components/Tab/tab.js.map +1 -0
  460. package/react/components/Table/sgds-table.cjs.js.map +1 -0
  461. package/react/components/Table/sgds-table.js +267 -0
  462. package/react/components/Table/sgds-table.js.map +1 -0
  463. package/react/components/Table/table.js +7 -0
  464. package/react/components/Table/table.js.map +1 -0
  465. package/react/components/Textarea/sgds-textarea.cjs.js.map +1 -0
  466. package/react/components/Textarea/sgds-textarea.js +252 -0
  467. package/react/components/Textarea/sgds-textarea.js.map +1 -0
  468. package/react/components/Textarea/textarea.js +7 -0
  469. package/react/components/Textarea/textarea.js.map +1 -0
  470. package/react/components/Toast/sgds-toast-container.cjs.js.map +1 -0
  471. package/react/components/Toast/sgds-toast-container.js +36 -0
  472. package/react/components/Toast/sgds-toast-container.js.map +1 -0
  473. package/react/components/Toast/sgds-toast.cjs.js.map +1 -0
  474. package/react/components/Toast/sgds-toast.js +152 -0
  475. package/react/components/Toast/sgds-toast.js.map +1 -0
  476. package/react/components/Toast/toast-container.js +7 -0
  477. package/react/components/Toast/toast-container.js.map +1 -0
  478. package/react/components/Toast/toast.js +7 -0
  479. package/react/components/Toast/toast.js.map +1 -0
  480. package/react/components/Tooltip/sgds-tooltip.cjs.js.map +1 -0
  481. package/react/components/Tooltip/sgds-tooltip.js +121 -0
  482. package/react/components/Tooltip/sgds-tooltip.js.map +1 -0
  483. package/react/components/Tooltip/tooltip.js +7 -0
  484. package/react/components/Tooltip/tooltip.js.map +1 -0
  485. package/react/datepicker/index.cjs.js +1 -1
  486. package/react/datepicker/index.js +1 -1
  487. package/react/drawer/index.cjs.js +1 -1
  488. package/react/drawer/index.js +1 -1
  489. package/react/dropdown/index.cjs.js +1 -1
  490. package/react/dropdown/index.js +1 -1
  491. package/react/dropdown-item/index.cjs.js +1 -1
  492. package/react/dropdown-item/index.js +1 -1
  493. package/react/file-upload/index.cjs.js +1 -1
  494. package/react/file-upload/index.js +1 -1
  495. package/react/footer/index.cjs.js +1 -1
  496. package/react/footer/index.js +1 -1
  497. package/react/input/index.cjs.js +1 -1
  498. package/react/input/index.js +1 -1
  499. package/react/internals/CloseButton/close-button.js +7 -0
  500. package/react/internals/CloseButton/close-button.js.map +1 -0
  501. package/react/internals/CloseButton/sgds-close-button.cjs.js.map +1 -0
  502. package/react/internals/CloseButton/sgds-close-button.js +55 -0
  503. package/react/internals/CloseButton/sgds-close-button.js.map +1 -0
  504. package/react/mainnav/index.cjs.js +1 -1
  505. package/react/mainnav/index.js +1 -1
  506. package/react/mainnav-dropdown/index.cjs.js +1 -1
  507. package/react/mainnav-dropdown/index.js +1 -1
  508. package/react/mainnav-item/index.cjs.js +1 -1
  509. package/react/mainnav-item/index.js +1 -1
  510. package/react/masthead/index.cjs.js +1 -1
  511. package/react/masthead/index.js +1 -1
  512. package/react/modal/index.cjs.js +1 -1
  513. package/react/modal/index.js +1 -1
  514. package/react/pagination/index.cjs.js +1 -1
  515. package/react/pagination/index.js +1 -1
  516. package/react/progress/index.cjs.js +1 -1
  517. package/react/progress/index.js +1 -1
  518. package/react/progress-bar/index.cjs.js +1 -1
  519. package/react/progress-bar/index.js +1 -1
  520. package/react/quantity-toggle/index.cjs.js +1 -1
  521. package/react/quantity-toggle/index.js +1 -1
  522. package/react/radio/index.cjs.js +1 -1
  523. package/react/radio/index.js +1 -1
  524. package/react/radio-group/index.cjs.js +1 -1
  525. package/react/radio-group/index.js +1 -1
  526. package/react/sidenav/index.cjs.js +1 -1
  527. package/react/sidenav/index.js +1 -1
  528. package/react/sidenav-item/index.cjs.js +1 -1
  529. package/react/sidenav-item/index.js +1 -1
  530. package/react/sidenav-link/index.cjs.js +1 -1
  531. package/react/sidenav-link/index.js +1 -1
  532. package/react/spinner/index.cjs.js +1 -1
  533. package/react/spinner/index.js +1 -1
  534. package/react/stepper/index.cjs.js +1 -1
  535. package/react/stepper/index.js +1 -1
  536. package/react/styles/anchor.js +7 -0
  537. package/react/styles/anchor.js.map +1 -0
  538. package/react/styles/bg-variants.js +7 -0
  539. package/react/styles/bg-variants.js.map +1 -0
  540. package/react/styles/border-variants.js +7 -0
  541. package/react/styles/border-variants.js.map +1 -0
  542. package/react/styles/feedback.js +7 -0
  543. package/react/styles/feedback.js.map +1 -0
  544. package/react/styles/form-hint.js +7 -0
  545. package/react/styles/form-hint.js.map +1 -0
  546. package/react/styles/form-label.js +7 -0
  547. package/react/styles/form-label.js.map +1 -0
  548. package/react/styles/header-class.js +7 -0
  549. package/react/styles/header-class.js.map +1 -0
  550. package/react/styles/paragraph.js +7 -0
  551. package/react/styles/paragraph.js.map +1 -0
  552. package/react/styles/svg.js +7 -0
  553. package/react/styles/svg.js.map +1 -0
  554. package/react/styles/text-variants.js +7 -0
  555. package/react/styles/text-variants.js.map +1 -0
  556. package/react/tab/index.cjs.js +1 -1
  557. package/react/tab/index.js +1 -1
  558. package/react/tab-group/index.cjs.js +1 -1
  559. package/react/tab-group/index.js +1 -1
  560. package/react/tab-panel/index.cjs.js +1 -1
  561. package/react/tab-panel/index.js +1 -1
  562. package/react/table/index.cjs.js +1 -1
  563. package/react/table/index.js +1 -1
  564. package/react/textarea/index.cjs.js +1 -1
  565. package/react/textarea/index.js +1 -1
  566. package/react/toast/index.cjs.js +1 -1
  567. package/react/toast/index.js +1 -1
  568. package/react/toast-container/index.cjs.js +1 -1
  569. package/react/toast-container/index.js +1 -1
  570. package/react/tooltip/index.cjs.js +1 -1
  571. package/react/tooltip/index.js +1 -1
  572. package/react/utils/animate.cjs.js.map +1 -0
  573. package/react/utils/animate.js +42 -0
  574. package/react/utils/animate.js.map +1 -0
  575. package/react/utils/animation-registry.cjs.js.map +1 -0
  576. package/react/utils/animation-registry.js +43 -0
  577. package/react/utils/animation-registry.js.map +1 -0
  578. package/react/utils/breakpoints.cjs.js.map +1 -0
  579. package/react/utils/breakpoints.js +9 -0
  580. package/react/utils/breakpoints.js.map +1 -0
  581. package/react/utils/defaultvalue.cjs.js.map +1 -0
  582. package/react/utils/defaultvalue.js +25 -0
  583. package/react/utils/defaultvalue.js.map +1 -0
  584. package/react/utils/event.cjs.js.map +1 -0
  585. package/react/utils/event.js +16 -0
  586. package/react/utils/event.js.map +1 -0
  587. package/react/utils/form.cjs.js.map +1 -0
  588. package/react/utils/form.js +133 -0
  589. package/react/utils/form.js.map +1 -0
  590. package/react/utils/generateId.cjs.js.map +1 -0
  591. package/react/utils/generateId.js +7 -0
  592. package/react/utils/generateId.js.map +1 -0
  593. package/react/utils/mergeDeep.cjs.js.map +1 -0
  594. package/react/utils/mergeDeep.js +26 -0
  595. package/react/utils/mergeDeep.js.map +1 -0
  596. package/react/utils/modal.cjs.js.map +1 -0
  597. package/react/utils/modal.js +56 -0
  598. package/react/utils/modal.js.map +1 -0
  599. package/react/utils/object.cjs.js.map +1 -0
  600. package/react/utils/object.js +7 -0
  601. package/react/utils/object.js.map +1 -0
  602. package/react/utils/scroll.cjs.js.map +1 -0
  603. package/react/utils/scroll.js +22 -0
  604. package/react/utils/scroll.js.map +1 -0
  605. package/react/utils/slot.cjs.js.map +1 -0
  606. package/react/utils/slot.js +53 -0
  607. package/react/utils/slot.js.map +1 -0
  608. package/react/utils/tabbable.cjs.js.map +1 -0
  609. package/react/utils/tabbable.js +69 -0
  610. package/react/utils/tabbable.js.map +1 -0
  611. package/react/utils/time.cjs.js.map +1 -0
  612. package/react/utils/time.js +75 -0
  613. package/react/utils/time.js.map +1 -0
  614. package/react/utils/watch.cjs.js.map +1 -0
  615. package/react/utils/watch.js +40 -0
  616. package/react/utils/watch.js.map +1 -0
  617. package/styles/anchor.js +0 -1
  618. package/styles/anchor.js.map +1 -1
  619. package/styles/bg-variants.js +0 -1
  620. package/styles/bg-variants.js.map +1 -1
  621. package/styles/border-variants.js +0 -1
  622. package/styles/border-variants.js.map +1 -1
  623. package/styles/feedback.js +0 -1
  624. package/styles/feedback.js.map +1 -1
  625. package/styles/form-hint.js +0 -1
  626. package/styles/form-hint.js.map +1 -1
  627. package/styles/form-label.js +0 -1
  628. package/styles/form-label.js.map +1 -1
  629. package/styles/header-class.js +0 -1
  630. package/styles/header-class.js.map +1 -1
  631. package/styles/paragraph.js +0 -1
  632. package/styles/paragraph.js.map +1 -1
  633. package/styles/svg.js +0 -1
  634. package/styles/svg.js.map +1 -1
  635. package/styles/text-variants.js +0 -1
  636. package/styles/text-variants.js.map +1 -1
  637. package/utils/animate.js +0 -1
  638. package/utils/animate.js.map +1 -1
  639. package/utils/animation-registry.js +0 -1
  640. package/utils/animation-registry.js.map +1 -1
  641. package/utils/breakpoints.js +0 -1
  642. package/utils/breakpoints.js.map +1 -1
  643. package/utils/defaultvalue.js +0 -1
  644. package/utils/defaultvalue.js.map +1 -1
  645. package/utils/event.js +0 -1
  646. package/utils/event.js.map +1 -1
  647. package/utils/form.js +0 -1
  648. package/utils/form.js.map +1 -1
  649. package/utils/generateId.js +0 -1
  650. package/utils/generateId.js.map +1 -1
  651. package/utils/mergeDeep.js +0 -1
  652. package/utils/mergeDeep.js.map +1 -1
  653. package/utils/modal.js +0 -1
  654. package/utils/modal.js.map +1 -1
  655. package/utils/object.js +0 -1
  656. package/utils/object.js.map +1 -1
  657. package/utils/scroll.js +0 -1
  658. package/utils/scroll.js.map +1 -1
  659. package/utils/slot.js +0 -1
  660. package/utils/slot.js.map +1 -1
  661. package/utils/tabbable.js +0 -1
  662. package/utils/tabbable.js.map +1 -1
  663. package/utils/time.js +0 -1
  664. package/utils/time.js.map +1 -1
  665. package/utils/watch.js +0 -1
  666. package/utils/watch.js.map +1 -1
  667. package/base/card-element.cjs.js.map +0 -1
  668. package/base/dropdown-element.cjs.js.map +0 -1
  669. package/base/dropdown-list-element.cjs.js.map +0 -1
  670. package/base/form-check-element.cjs.js.map +0 -1
  671. package/base/link-element.cjs.js.map +0 -1
  672. package/base/sgds-element.cjs.js.map +0 -1
  673. package/components/Accordion/sgds-accordion-item.cjs.js.map +0 -1
  674. package/components/Accordion/sgds-accordion.cjs.js.map +0 -1
  675. package/components/ActionCard/sgds-action-card.cjs.js.map +0 -1
  676. package/components/Alert/sgds-alert-heading.cjs.js.map +0 -1
  677. package/components/Alert/sgds-alert-link.cjs.js.map +0 -1
  678. package/components/Alert/sgds-alert.cjs.js.map +0 -1
  679. package/components/Badge/sgds-badge.cjs.js.map +0 -1
  680. package/components/Breadcrumb/sgds-breadcrumb-item.cjs.js.map +0 -1
  681. package/components/Breadcrumb/sgds-breadcrumb.cjs.js.map +0 -1
  682. package/components/Button/sgds-button.cjs.js.map +0 -1
  683. package/components/Card/sgds-card.cjs.js.map +0 -1
  684. package/components/Checkbox/sgds-checkbox.cjs.js.map +0 -1
  685. package/components/ComboBox/sgds-combo-box.cjs.js.map +0 -1
  686. package/components/Datepicker/datepicker-calendar.cjs.js.map +0 -1
  687. package/components/Datepicker/datepicker-header.cjs.js.map +0 -1
  688. package/components/Datepicker/datepicker-input.cjs.js.map +0 -1
  689. package/components/Datepicker/sgds-datepicker.cjs.js.map +0 -1
  690. package/components/Drawer/sgds-drawer.cjs.js.map +0 -1
  691. package/components/Dropdown/sgds-dropdown-item.cjs.js.map +0 -1
  692. package/components/Dropdown/sgds-dropdown.cjs.js.map +0 -1
  693. package/components/FileUpload/sgds-file-upload.cjs.js.map +0 -1
  694. package/components/Footer/sgds-footer.cjs.js.map +0 -1
  695. package/components/Input/sgds-input.cjs.js.map +0 -1
  696. package/components/Mainnav/sgds-mainnav-dropdown.cjs.js.map +0 -1
  697. package/components/Mainnav/sgds-mainnav-item.cjs.js.map +0 -1
  698. package/components/Mainnav/sgds-mainnav.cjs.js.map +0 -1
  699. package/components/Masthead/sgds-masthead.cjs.js.map +0 -1
  700. package/components/Modal/sgds-modal.cjs.js.map +0 -1
  701. package/components/Pagination/sgds-pagination.cjs.js.map +0 -1
  702. package/components/Progress/sgds-progress-bar.cjs.js.map +0 -1
  703. package/components/Progress/sgds-progress.cjs.js.map +0 -1
  704. package/components/QuantityToggle/sgds-quantity-toggle.cjs.js.map +0 -1
  705. package/components/Radio/sgds-radio-group.cjs.js.map +0 -1
  706. package/components/Radio/sgds-radio.cjs.js.map +0 -1
  707. package/components/Sidenav/sgds-sidenav-item.cjs.js.map +0 -1
  708. package/components/Sidenav/sgds-sidenav-link.cjs.js.map +0 -1
  709. package/components/Sidenav/sgds-sidenav.cjs.js.map +0 -1
  710. package/components/Spinner/sgds-spinner.cjs.js.map +0 -1
  711. package/components/Stepper/sgds-stepper.cjs.js.map +0 -1
  712. package/components/Tab/sgds-tab-group.cjs.js.map +0 -1
  713. package/components/Tab/sgds-tab-panel.cjs.js.map +0 -1
  714. package/components/Tab/sgds-tab.cjs.js.map +0 -1
  715. package/components/Table/sgds-table.cjs.js.map +0 -1
  716. package/components/Textarea/sgds-textarea.cjs.js.map +0 -1
  717. package/components/Toast/sgds-toast-container.cjs.js.map +0 -1
  718. package/components/Toast/sgds-toast.cjs.js.map +0 -1
  719. package/components/Tooltip/sgds-tooltip.cjs.js.map +0 -1
  720. package/internals/CloseButton/sgds-close-button.cjs.js.map +0 -1
  721. package/utils/animate.cjs.js.map +0 -1
  722. package/utils/animation-registry.cjs.js.map +0 -1
  723. package/utils/breakpoints.cjs.js.map +0 -1
  724. package/utils/defaultvalue.cjs.js.map +0 -1
  725. package/utils/event.cjs.js.map +0 -1
  726. package/utils/form.cjs.js.map +0 -1
  727. package/utils/generateId.cjs.js.map +0 -1
  728. package/utils/mergeDeep.cjs.js.map +0 -1
  729. package/utils/modal.cjs.js.map +0 -1
  730. package/utils/object.cjs.js.map +0 -1
  731. package/utils/scroll.cjs.js.map +0 -1
  732. package/utils/slot.cjs.js.map +0 -1
  733. package/utils/tabbable.cjs.js.map +0 -1
  734. package/utils/time.cjs.js.map +0 -1
  735. package/utils/watch.cjs.js.map +0 -1
  736. /package/{base → react/base}/card-element.cjs.js +0 -0
  737. /package/{base → react/base}/card.cjs.js +0 -0
  738. /package/{base → react/base}/card.cjs.js.map +0 -0
  739. /package/{base → react/base}/dropdown-element.cjs.js +0 -0
  740. /package/{base → react/base}/dropdown-list-element.cjs.js +0 -0
  741. /package/{base → react/base}/form-check-element.cjs.js +0 -0
  742. /package/{base → react/base}/link-element.cjs.js +0 -0
  743. /package/{base → react/base}/sgds-element.cjs.js +0 -0
  744. /package/{base → react/base}/sgds-element.cjs2.js +0 -0
  745. /package/{base → react/base}/sgds-element.cjs2.js.map +0 -0
  746. /package/{components → react/components}/Accordion/accordion-item.cjs.js +0 -0
  747. /package/{components → react/components}/Accordion/accordion-item.cjs.js.map +0 -0
  748. /package/{components → react/components}/Accordion/accordion.cjs.js +0 -0
  749. /package/{components → react/components}/Accordion/accordion.cjs.js.map +0 -0
  750. /package/{components → react/components}/Accordion/sgds-accordion-item.cjs.js +0 -0
  751. /package/{components → react/components}/Accordion/sgds-accordion.cjs.js +0 -0
  752. /package/{components → react/components}/ActionCard/action-card.cjs.js +0 -0
  753. /package/{components → react/components}/ActionCard/action-card.cjs.js.map +0 -0
  754. /package/{components → react/components}/ActionCard/sgds-action-card.cjs.js +0 -0
  755. /package/{components → react/components}/Alert/alert-link.cjs.js +0 -0
  756. /package/{components → react/components}/Alert/alert-link.cjs.js.map +0 -0
  757. /package/{components → react/components}/Alert/alert.cjs.js +0 -0
  758. /package/{components → react/components}/Alert/alert.cjs.js.map +0 -0
  759. /package/{components → react/components}/Alert/sgds-alert-heading.cjs.js +0 -0
  760. /package/{components → react/components}/Alert/sgds-alert-link.cjs.js +0 -0
  761. /package/{components → react/components}/Alert/sgds-alert.cjs.js +0 -0
  762. /package/{components → react/components}/Badge/badge.cjs.js +0 -0
  763. /package/{components → react/components}/Badge/badge.cjs.js.map +0 -0
  764. /package/{components → react/components}/Badge/sgds-badge.cjs.js +0 -0
  765. /package/{components → react/components}/Breadcrumb/breadcrumb-item.cjs.js +0 -0
  766. /package/{components → react/components}/Breadcrumb/breadcrumb-item.cjs.js.map +0 -0
  767. /package/{components → react/components}/Breadcrumb/breadcrumb.cjs.js +0 -0
  768. /package/{components → react/components}/Breadcrumb/breadcrumb.cjs.js.map +0 -0
  769. /package/{components → react/components}/Breadcrumb/sgds-breadcrumb-item.cjs.js +0 -0
  770. /package/{components → react/components}/Breadcrumb/sgds-breadcrumb.cjs.js +0 -0
  771. /package/{components → react/components}/Button/button.cjs.js +0 -0
  772. /package/{components → react/components}/Button/button.cjs.js.map +0 -0
  773. /package/{components → react/components}/Button/sgds-button.cjs.js +0 -0
  774. /package/{components → react/components}/Card/card.cjs.js +0 -0
  775. /package/{components → react/components}/Card/card.cjs.js.map +0 -0
  776. /package/{components → react/components}/Card/sgds-card.cjs.js +0 -0
  777. /package/{components → react/components}/Checkbox/checkbox.cjs.js +0 -0
  778. /package/{components → react/components}/Checkbox/checkbox.cjs.js.map +0 -0
  779. /package/{components → react/components}/Checkbox/sgds-checkbox.cjs.js +0 -0
  780. /package/{components → react/components}/ComboBox/combo-box.cjs.js +0 -0
  781. /package/{components → react/components}/ComboBox/combo-box.cjs.js.map +0 -0
  782. /package/{components → react/components}/ComboBox/sgds-combo-box.cjs.js +0 -0
  783. /package/{components → react/components}/Datepicker/datepicker-calendar.cjs.js +0 -0
  784. /package/{components → react/components}/Datepicker/datepicker-calendar.cjs2.js +0 -0
  785. /package/{components → react/components}/Datepicker/datepicker-calendar.cjs2.js.map +0 -0
  786. /package/{components → react/components}/Datepicker/datepicker-header.cjs.js +0 -0
  787. /package/{components → react/components}/Datepicker/datepicker-header.cjs2.js +0 -0
  788. /package/{components → react/components}/Datepicker/datepicker-header.cjs2.js.map +0 -0
  789. /package/{components → react/components}/Datepicker/datepicker-input.cjs.js +0 -0
  790. /package/{components → react/components}/Datepicker/datepicker-input.cjs2.js +0 -0
  791. /package/{components → react/components}/Datepicker/datepicker-input.cjs2.js.map +0 -0
  792. /package/{components → react/components}/Datepicker/datepicker.cjs.js +0 -0
  793. /package/{components → react/components}/Datepicker/datepicker.cjs.js.map +0 -0
  794. /package/{components → react/components}/Datepicker/sgds-datepicker.cjs.js +0 -0
  795. /package/{components → react/components}/Drawer/drawer.cjs.js +0 -0
  796. /package/{components → react/components}/Drawer/drawer.cjs.js.map +0 -0
  797. /package/{components → react/components}/Drawer/sgds-drawer.cjs.js +0 -0
  798. /package/{components → react/components}/Dropdown/dropdown.cjs.js +0 -0
  799. /package/{components → react/components}/Dropdown/dropdown.cjs.js.map +0 -0
  800. /package/{components → react/components}/Dropdown/sgds-dropdown-item.cjs.js +0 -0
  801. /package/{components → react/components}/Dropdown/sgds-dropdown.cjs.js +0 -0
  802. /package/{components → react/components}/FileUpload/file-upload.cjs.js +0 -0
  803. /package/{components → react/components}/FileUpload/file-upload.cjs.js.map +0 -0
  804. /package/{components → react/components}/FileUpload/sgds-file-upload.cjs.js +0 -0
  805. /package/{components → react/components}/Footer/footer.cjs.js +0 -0
  806. /package/{components → react/components}/Footer/footer.cjs.js.map +0 -0
  807. /package/{components → react/components}/Footer/sgds-footer.cjs.js +0 -0
  808. /package/{components → react/components}/Input/input.cjs.js +0 -0
  809. /package/{components → react/components}/Input/input.cjs.js.map +0 -0
  810. /package/{components → react/components}/Input/sgds-input.cjs.js +0 -0
  811. /package/{components → react/components}/Mainnav/mainnav-dropdown.cjs.js +0 -0
  812. /package/{components → react/components}/Mainnav/mainnav-dropdown.cjs.js.map +0 -0
  813. /package/{components → react/components}/Mainnav/mainnav-item.cjs.js +0 -0
  814. /package/{components → react/components}/Mainnav/mainnav-item.cjs.js.map +0 -0
  815. /package/{components → react/components}/Mainnav/mainnav.cjs.js +0 -0
  816. /package/{components → react/components}/Mainnav/mainnav.cjs.js.map +0 -0
  817. /package/{components → react/components}/Mainnav/sgds-mainnav-dropdown.cjs.js +0 -0
  818. /package/{components → react/components}/Mainnav/sgds-mainnav-item.cjs.js +0 -0
  819. /package/{components → react/components}/Mainnav/sgds-mainnav.cjs.js +0 -0
  820. /package/{components → react/components}/Masthead/masthead.cjs.js +0 -0
  821. /package/{components → react/components}/Masthead/masthead.cjs.js.map +0 -0
  822. /package/{components → react/components}/Masthead/sgds-masthead.cjs.js +0 -0
  823. /package/{components → react/components}/Modal/modal.cjs.js +0 -0
  824. /package/{components → react/components}/Modal/modal.cjs.js.map +0 -0
  825. /package/{components → react/components}/Modal/sgds-modal.cjs.js +0 -0
  826. /package/{components → react/components}/Pagination/pagination.cjs.js +0 -0
  827. /package/{components → react/components}/Pagination/pagination.cjs.js.map +0 -0
  828. /package/{components → react/components}/Pagination/sgds-pagination.cjs.js +0 -0
  829. /package/{components → react/components}/Progress/progress-bar.cjs.js +0 -0
  830. /package/{components → react/components}/Progress/progress-bar.cjs.js.map +0 -0
  831. /package/{components → react/components}/Progress/progress.cjs.js +0 -0
  832. /package/{components → react/components}/Progress/progress.cjs.js.map +0 -0
  833. /package/{components → react/components}/Progress/sgds-progress-bar.cjs.js +0 -0
  834. /package/{components → react/components}/Progress/sgds-progress.cjs.js +0 -0
  835. /package/{components → react/components}/QuantityToggle/quantity-toggle.cjs.js +0 -0
  836. /package/{components → react/components}/QuantityToggle/quantity-toggle.cjs.js.map +0 -0
  837. /package/{components → react/components}/QuantityToggle/sgds-quantity-toggle.cjs.js +0 -0
  838. /package/{components → react/components}/Radio/radio-group.cjs.js +0 -0
  839. /package/{components → react/components}/Radio/radio-group.cjs.js.map +0 -0
  840. /package/{components → react/components}/Radio/radio.cjs.js +0 -0
  841. /package/{components → react/components}/Radio/radio.cjs.js.map +0 -0
  842. /package/{components → react/components}/Radio/sgds-radio-group.cjs.js +0 -0
  843. /package/{components → react/components}/Radio/sgds-radio.cjs.js +0 -0
  844. /package/{components → react/components}/Sidenav/sgds-sidenav-item.cjs.js +0 -0
  845. /package/{components → react/components}/Sidenav/sgds-sidenav-link.cjs.js +0 -0
  846. /package/{components → react/components}/Sidenav/sgds-sidenav.cjs.js +0 -0
  847. /package/{components → react/components}/Sidenav/sidenav-item.cjs.js +0 -0
  848. /package/{components → react/components}/Sidenav/sidenav-item.cjs.js.map +0 -0
  849. /package/{components → react/components}/Sidenav/sidenav-link.cjs.js +0 -0
  850. /package/{components → react/components}/Sidenav/sidenav-link.cjs.js.map +0 -0
  851. /package/{components → react/components}/Sidenav/sidenav.cjs.js +0 -0
  852. /package/{components → react/components}/Sidenav/sidenav.cjs.js.map +0 -0
  853. /package/{components → react/components}/Spinner/sgds-spinner.cjs.js +0 -0
  854. /package/{components → react/components}/Spinner/spinner.cjs.js +0 -0
  855. /package/{components → react/components}/Spinner/spinner.cjs.js.map +0 -0
  856. /package/{components → react/components}/Stepper/sgds-stepper.cjs.js +0 -0
  857. /package/{components → react/components}/Stepper/stepper.cjs.js +0 -0
  858. /package/{components → react/components}/Stepper/stepper.cjs.js.map +0 -0
  859. /package/{components → react/components}/Tab/sgds-tab-group.cjs.js +0 -0
  860. /package/{components → react/components}/Tab/sgds-tab-panel.cjs.js +0 -0
  861. /package/{components → react/components}/Tab/sgds-tab.cjs.js +0 -0
  862. /package/{components → react/components}/Tab/tab-group.cjs.js +0 -0
  863. /package/{components → react/components}/Tab/tab-group.cjs.js.map +0 -0
  864. /package/{components → react/components}/Tab/tab-panel.cjs.js +0 -0
  865. /package/{components → react/components}/Tab/tab-panel.cjs.js.map +0 -0
  866. /package/{components → react/components}/Tab/tab.cjs.js +0 -0
  867. /package/{components → react/components}/Tab/tab.cjs.js.map +0 -0
  868. /package/{components → react/components}/Table/sgds-table.cjs.js +0 -0
  869. /package/{components → react/components}/Table/table.cjs.js +0 -0
  870. /package/{components → react/components}/Table/table.cjs.js.map +0 -0
  871. /package/{components → react/components}/Textarea/sgds-textarea.cjs.js +0 -0
  872. /package/{components → react/components}/Textarea/textarea.cjs.js +0 -0
  873. /package/{components → react/components}/Textarea/textarea.cjs.js.map +0 -0
  874. /package/{components → react/components}/Toast/sgds-toast-container.cjs.js +0 -0
  875. /package/{components → react/components}/Toast/sgds-toast.cjs.js +0 -0
  876. /package/{components → react/components}/Toast/toast-container.cjs.js +0 -0
  877. /package/{components → react/components}/Toast/toast-container.cjs.js.map +0 -0
  878. /package/{components → react/components}/Toast/toast.cjs.js +0 -0
  879. /package/{components → react/components}/Toast/toast.cjs.js.map +0 -0
  880. /package/{components → react/components}/Tooltip/sgds-tooltip.cjs.js +0 -0
  881. /package/{components → react/components}/Tooltip/tooltip.cjs.js +0 -0
  882. /package/{components → react/components}/Tooltip/tooltip.cjs.js.map +0 -0
  883. /package/{internals → react/internals}/CloseButton/close-button.cjs.js +0 -0
  884. /package/{internals → react/internals}/CloseButton/close-button.cjs.js.map +0 -0
  885. /package/{internals → react/internals}/CloseButton/sgds-close-button.cjs.js +0 -0
  886. /package/{styles → react/styles}/anchor.cjs.js +0 -0
  887. /package/{styles → react/styles}/anchor.cjs.js.map +0 -0
  888. /package/{styles → react/styles}/bg-variants.cjs.js +0 -0
  889. /package/{styles → react/styles}/bg-variants.cjs.js.map +0 -0
  890. /package/{styles → react/styles}/border-variants.cjs.js +0 -0
  891. /package/{styles → react/styles}/border-variants.cjs.js.map +0 -0
  892. /package/{styles → react/styles}/feedback.cjs.js +0 -0
  893. /package/{styles → react/styles}/feedback.cjs.js.map +0 -0
  894. /package/{styles → react/styles}/form-hint.cjs.js +0 -0
  895. /package/{styles → react/styles}/form-hint.cjs.js.map +0 -0
  896. /package/{styles → react/styles}/form-label.cjs.js +0 -0
  897. /package/{styles → react/styles}/form-label.cjs.js.map +0 -0
  898. /package/{styles → react/styles}/header-class.cjs.js +0 -0
  899. /package/{styles → react/styles}/header-class.cjs.js.map +0 -0
  900. /package/{styles → react/styles}/paragraph.cjs.js +0 -0
  901. /package/{styles → react/styles}/paragraph.cjs.js.map +0 -0
  902. /package/{styles → react/styles}/svg.cjs.js +0 -0
  903. /package/{styles → react/styles}/svg.cjs.js.map +0 -0
  904. /package/{styles → react/styles}/text-variants.cjs.js +0 -0
  905. /package/{styles → react/styles}/text-variants.cjs.js.map +0 -0
  906. /package/{utils → react/utils}/animate.cjs.js +0 -0
  907. /package/{utils → react/utils}/animation-registry.cjs.js +0 -0
  908. /package/{utils → react/utils}/breakpoints.cjs.js +0 -0
  909. /package/{utils → react/utils}/defaultvalue.cjs.js +0 -0
  910. /package/{utils → react/utils}/event.cjs.js +0 -0
  911. /package/{utils → react/utils}/form.cjs.js +0 -0
  912. /package/{utils → react/utils}/generateId.cjs.js +0 -0
  913. /package/{utils → react/utils}/mergeDeep.cjs.js +0 -0
  914. /package/{utils → react/utils}/modal.cjs.js +0 -0
  915. /package/{utils → react/utils}/object.cjs.js +0 -0
  916. /package/{utils → react/utils}/scroll.cjs.js +0 -0
  917. /package/{utils → react/utils}/slot.cjs.js +0 -0
  918. /package/{utils → react/utils}/tabbable.cjs.js +0 -0
  919. /package/{utils → react/utils}/time.cjs.js +0 -0
  920. /package/{utils → react/utils}/watch.cjs.js +0 -0
@@ -0,0 +1,484 @@
1
+ 'use client';
2
+ import { __decorate } from 'tslib';
3
+ import { ScopedElementsMixin } from '@open-wc/scoped-elements';
4
+ import { parse, format } from 'date-fns';
5
+ import { html } from 'lit';
6
+ import { property, state, queryAsync, query } from 'lit/decorators.js';
7
+ import { live } from 'lit/directives/live.js';
8
+ import { ref } from 'lit/directives/ref.js';
9
+ import { DropdownElement } from '../../base/dropdown-element.js';
10
+ import { setTimeToNoon, DATE_PATTERNS } from '../../utils/time.js';
11
+ import { watch } from '../../utils/watch.js';
12
+ import { DatepickerCalendar } from './datepicker-calendar.js';
13
+ import { DatepickerHeader } from './datepicker-header.js';
14
+ import { DatepickerInput } from './datepicker-input.js';
15
+ import { SgdsButton } from '../Button/sgds-button.js';
16
+ import css_248z from '../Dropdown/dropdown.js';
17
+ import css_248z$1 from './datepicker.js';
18
+
19
+ /**
20
+ * @summary The `DatePicker` Component is built using `Dropdown`, `Input` and `Button` components. By default, the Calendar points to today's date and input has no value. Users can either pick dates from the calendar or type dates through the input
21
+ *
22
+ * @event sgds-change-date - Emitted when the state of datepicker's input changes during first load, close button reset click & date click. Date values can be accessed via event.target.value
23
+ *
24
+ * @cssproperty --datepicker-theme-color - Datepicker's overall theme color
25
+ * @cssproperty --datepicker-hover-bg - Datepicker's calendar menu hover color
26
+ * @cssproperty --datepicker-bg - Datepicker's menu background color
27
+ * @cssproperty --datepicker-close-button-bg - Datepicker's close button background color
28
+ * @cssproperty --datepicker-close-button-hover-bg - Datepicker's close button hover background color
29
+ * @cssproperty --datepicker-close-button-color - Datepicker's close button color
30
+ * @cssproperty --datepicker-selected-date-bg - Selected date's background color
31
+ * @cssproperty --datepicker-selected-date-color - Selected date's text color
32
+ *
33
+ * @description displayDate sets the month, year views of the calendar while focusedDate follows the focus which also directly changes
34
+ * displayDate on certain occasions. Example, when keyboard moves up to the next month, it updates displayDate which then affect the current
35
+ * date view of the calendar
36
+ */
37
+ class SgdsDatepicker extends ScopedElementsMixin(DropdownElement) {
38
+ /**@internal */
39
+ static get scopedElements() {
40
+ return {
41
+ "sgds-datepicker-input": DatepickerInput,
42
+ "sgds-datepicker-calendar": DatepickerCalendar,
43
+ "sgds-datepicker-header": DatepickerHeader,
44
+ "sgds-button": SgdsButton
45
+ };
46
+ }
47
+ /** Checks for validity and shows the browser's validation message if the control is invalid. */
48
+ reportValidity() {
49
+ return this._internals.reportValidity();
50
+ }
51
+ constructor() {
52
+ super();
53
+ /** When true, adds required attribute to input element */
54
+ this.required = false;
55
+ /** When true, adds disabled attribute to input and button element */
56
+ this.disabled = false;
57
+ /** The initial value of DatePicker on first load for single & range mode as array of string. eg.'["22/12/2023"]' for single & '["22/12/2023","25/12/2023"]' for range respectively */
58
+ this.initialValue = [];
59
+ /** Date format reflected on input */
60
+ this.dateFormat = "DD/MM/YYYY";
61
+ /** ISO date string to set the lowest allowable date value. e.g. "2016-05-19T12:00:00.000Z" */
62
+ this.minDate = "";
63
+ /** ISO date string to set the highest allowable date value. e.g. "2016-05-19T12:00:00.000Z" */
64
+ this.maxDate = "";
65
+ /** Changes DatePicker to single date selection or range date selection */
66
+ this.mode = "single";
67
+ /**Feedback text for error state when date input is invalid */
68
+ this.invalidFeedback = "Please enter a valid date";
69
+ /** The datepicker input's label */
70
+ this.label = "";
71
+ /** The datepicker input's hint text below the label */
72
+ this.hintText = "";
73
+ /** Controls auto-flipping of menu */
74
+ this.noFlip = false;
75
+ /** The drop position of menu relative to the toggle button */
76
+ this.drop = "down";
77
+ /**@internal */
78
+ this.value = "";
79
+ this.view = "days";
80
+ this.selectedDateRange = [];
81
+ this.focusedTabIndex = 3;
82
+ this._makeInputValueString = (startDate, endDate, dateFormat) => {
83
+ if (!startDate && !endDate)
84
+ return this.value;
85
+ const formatDate = (date) => format(date, DATE_PATTERNS[dateFormat].fnsPattern);
86
+ switch (this.mode) {
87
+ case "single": {
88
+ if (startDate) {
89
+ this.value = formatDate(startDate);
90
+ }
91
+ break;
92
+ }
93
+ case "range": {
94
+ if (startDate && endDate) {
95
+ this.value = `${formatDate(startDate)} - ${formatDate(endDate)}`;
96
+ }
97
+ if (startDate && !endDate) {
98
+ this.value = `${formatDate(startDate)} - ${this.dateFormat.toLowerCase()}`;
99
+ }
100
+ break;
101
+ }
102
+ }
103
+ return this.value;
104
+ };
105
+ this._dialogAriaLabels = {
106
+ days: "Choose date",
107
+ months: "Choose month",
108
+ years: "Choose year"
109
+ };
110
+ this._internals = this.attachInternals();
111
+ /**@internal */
112
+ this.modifierOpt = [
113
+ {
114
+ name: "offset",
115
+ options: {
116
+ offset: [0, 10]
117
+ }
118
+ }
119
+ ];
120
+ }
121
+ async connectedCallback() {
122
+ super.connectedCallback();
123
+ this.addEventListener("sgds-view", this._handleViewChanged);
124
+ this.addEventListener("sgds-change-calendar", this._handleDateChanged);
125
+ this.addEventListener("sgds-update-focus", this._handleFocusDateChanged);
126
+ this.addEventListener("sgds-selectmonth", this._handleSelectMonth);
127
+ this.addEventListener("sgds-selectyear", this._handleSelectYear);
128
+ this.addEventListener("sgds-selectdates", this._handleSelectDatesAndClose);
129
+ this.addEventListener("sgds-selectdates-input", this._handleSelectDatesInput);
130
+ this.addEventListener("sgds-empty-input", this._handleEmptyInput);
131
+ this.addEventListener("keydown", this._handleTab);
132
+ this.addEventListener("sgds-hide", this._handleCloseMenu);
133
+ this.addEventListener("sgds-show", this._handleOpenMenu);
134
+ this.initialDisplayDate = this.displayDate || new Date();
135
+ if (this.initialValue && this.initialValue.length > 0) {
136
+ // Validate initialValue against the dateFormat regex
137
+ const dateFormatRegex = new RegExp(this._getDateFormatRegex());
138
+ // const startDateString = this.initialValue[0];
139
+ const invalidDates = this.initialValue.filter(v => !dateFormatRegex.test(v));
140
+ if (invalidDates.length > 0) {
141
+ return console.error("Invalid date format in initialValue:", invalidDates);
142
+ }
143
+ else {
144
+ const initialSelectedDates = this.initialValue.map(v => setTimeToNoon(parse(v, DATE_PATTERNS[this.dateFormat].fnsPattern, new Date())));
145
+ this._handleSelectDates(initialSelectedDates);
146
+ }
147
+ }
148
+ else {
149
+ this.displayDate = this.initialDisplayDate;
150
+ }
151
+ }
152
+ async firstUpdated() {
153
+ super.firstUpdated();
154
+ if (this.menuIsOpen) {
155
+ const input = await this.datepickerInputAsync;
156
+ this.showMenu();
157
+ const cal = await this.calendar;
158
+ cal.focusOnCalendar(input);
159
+ }
160
+ const shadowInput = await this.datepickerInput.shadowInput;
161
+ this._manageInternalsDefault(shadowInput);
162
+ this._internals.setValidity(shadowInput.validity, shadowInput.validationMessage, shadowInput);
163
+ }
164
+ /** @internal */
165
+ _getDateFormatRegex() {
166
+ // validate date strings and adhere to the specified date format
167
+ return (this.dateFormat
168
+ // Replace any special characters with their escaped version using "\\$&"
169
+ .replace(/[.*+?^${}()|[\]\\]/g, "\\$&")
170
+ // Replace 'MM' with '\\d{2}', which matches two digits representing the month (e.g., 01, 12)
171
+ .replace("MM", "\\d{2}")
172
+ // Replace 'DD' with '\\d{2}', which matches two digits representing the day (e.g., 01, 31)
173
+ .replace("DD", "\\d{2}")
174
+ // Replace 'YYYY' with '\\d{4}', which matches four digits representing the year (e.g., 2021)
175
+ .replace("YYYY", "\\d{4}")
176
+ // Replace '/' with '\\/', which matches the forward slash character
177
+ .replace("/", "\\/"));
178
+ }
179
+ _handleTab(event) {
180
+ if (!this.menuIsOpen) {
181
+ return;
182
+ }
183
+ const tabIndexArray = Array(4);
184
+ if (event.shiftKey && event.key === "Tab") {
185
+ event.preventDefault();
186
+ this.focusedTabIndex = (this.focusedTabIndex - 1 + tabIndexArray.length) % tabIndexArray.length;
187
+ }
188
+ else if (event.key === "Tab") {
189
+ event.preventDefault();
190
+ this.focusedTabIndex = (this.focusedTabIndex + 1 + tabIndexArray.length) % tabIndexArray.length;
191
+ }
192
+ }
193
+ _handleValueChange() {
194
+ this.emit("sgds-change-date");
195
+ this._setInternalFormValue(this.value);
196
+ }
197
+ async _handleCloseMenu() {
198
+ //return focus to input when menu closes
199
+ const input = await this.datepickerInputAsync;
200
+ input.focus();
201
+ if (this.selectedDateRange.length === 0) {
202
+ this.displayDate = this.initialDisplayDate;
203
+ }
204
+ else {
205
+ const selectedDatesLength = this.selectedDateRange.length;
206
+ this.displayDate = this.selectedDateRange[selectedDatesLength - 1];
207
+ const calendar = await this.calendar;
208
+ calendar._updateFocusedDate();
209
+ }
210
+ }
211
+ async _handleOpenMenu() {
212
+ const cal = await this.calendar;
213
+ const input = await this.datepickerInputAsync;
214
+ cal.focusOnCalendar(input);
215
+ }
216
+ _handleSelectDatesInput(event) {
217
+ this._handleSelectDates(event.detail);
218
+ this._manageInternalsDefault(this._shadowInput);
219
+ }
220
+ async _handleSelectDates(newSelectedDates) {
221
+ newSelectedDates.sort((a, b) => a.getTime() - b.getTime());
222
+ this.displayDate = newSelectedDates[0];
223
+ this.focusedDate = newSelectedDates[0];
224
+ this.selectedDateRange = newSelectedDates;
225
+ // Get the formattedDate value for the selected dates
226
+ const formattedDate = this._makeInputValueString(this.selectedDateRange[0], this.selectedDateRange[1], this.dateFormat);
227
+ // Set formattedDate value as the new value for sgds-input
228
+ this.value = formattedDate;
229
+ const input = await this.datepickerInputAsync;
230
+ input.updateMaskValue();
231
+ }
232
+ get _shadowInput() {
233
+ return this.datepickerInput.shadowRoot.querySelector("input");
234
+ }
235
+ _handleSelectDatesAndClose(event) {
236
+ this._handleSelectDates(event.detail);
237
+ if (this.mode === "range" && this.selectedDateRange.length === 2) {
238
+ this.hideMenu();
239
+ }
240
+ else if (this.mode === "single" && this.selectedDateRange.length === 1) {
241
+ this.hideMenu();
242
+ }
243
+ this._manageInternalsValid();
244
+ }
245
+ /** update latest view state from datepicker-header */
246
+ _handleViewChanged(event) {
247
+ this.view = event.detail;
248
+ }
249
+ _handleDateChanged(event) {
250
+ this.displayDate = event.detail;
251
+ }
252
+ _handleFocusDateChanged(event) {
253
+ this.focusedDate = event.detail;
254
+ }
255
+ _handleSelectMonth(event) {
256
+ this.displayDate = event.detail;
257
+ }
258
+ _handleSelectYear(event) {
259
+ this.displayDate = event.detail;
260
+ }
261
+ async _handleInvalidInput() {
262
+ this.selectedDateRange = [];
263
+ this.displayDate = this.initialDisplayDate;
264
+ this._manageInternalsBadInput();
265
+ }
266
+ async _handleButtonResetClick() {
267
+ this.displayDate = this.initialDisplayDate;
268
+ this.selectedDateRange = [];
269
+ this.value = "";
270
+ this.view = "days";
271
+ this.hideMenu();
272
+ const input = await this.datepickerInputAsync;
273
+ input.setInvalid(false);
274
+ input.destroyInputMask();
275
+ await input.applyInputMask();
276
+ this._manageInternalsRequired();
277
+ }
278
+ async _handleEmptyInput() {
279
+ this._manageInternalsRequired();
280
+ }
281
+ _manageInternalsRequired() {
282
+ this.required
283
+ ? this._internals.setValidity({
284
+ valueMissing: true
285
+ }, "Please fill in this field", this._shadowInput)
286
+ : this._internals.setValidity({});
287
+ }
288
+ _manageInternalsBadInput() {
289
+ this._internals.setValidity({
290
+ badInput: true
291
+ }, "The chosen date(s) are invalid", this._shadowInput);
292
+ }
293
+ _manageInternalsValid() {
294
+ this._internals.setValidity({});
295
+ }
296
+ _manageInternalsDefault(inputEl) {
297
+ this._internals.setValidity(inputEl.validity, inputEl.validationMessage, inputEl);
298
+ }
299
+ _setInternalFormValue(value) {
300
+ this._internals.setFormValue(value);
301
+ }
302
+ async _handleInputMaskChange(e) {
303
+ this.value = e.detail;
304
+ }
305
+ render() {
306
+ const svgEl = html `
307
+ <svg
308
+ xmlns="http://www.w3.org/2000/svg"
309
+ width="16"
310
+ height="16"
311
+ fill="currentColor"
312
+ class="bi bi-x"
313
+ viewBox="0 0 16 16"
314
+ >
315
+ <path
316
+ d="M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z"
317
+ />
318
+ </svg>
319
+ `;
320
+ return html `
321
+ <div>
322
+ <sgds-datepicker-input
323
+ .value=${live(this.value)}
324
+ ?required=${this.required}
325
+ ?disabled=${this.disabled}
326
+ placeholder=""
327
+ ${ref(this.myDropdown)}
328
+ mode=${this.mode}
329
+ dateFormat=${this.dateFormat}
330
+ invalidFeedback=${this.invalidFeedback}
331
+ @sgds-mask-input-change=${this._handleInputMaskChange}
332
+ @sgds-invalid-input=${this._handleInvalidInput}
333
+ minDate=${this.minDate}
334
+ maxDate=${this.maxDate}
335
+ label=${this.label}
336
+ hintText=${this.hintText}
337
+ name=${this.name}
338
+ >
339
+ <sgds-button
340
+ role="button"
341
+ slot="calendar-btn"
342
+ class="calendar-btn"
343
+ aria-expanded="${this.menuIsOpen}"
344
+ aria-haspopup="dialog"
345
+ aria-controls=${this.dropdownMenuId}
346
+ @click=${() => this.toggleMenu()}
347
+ ariaLabel=${this.menuIsOpen ? "Close Calendar" : "Open Calendar"}
348
+ ?disabled=${this.disabled}
349
+ variant="outlined"
350
+ >
351
+ <svg
352
+ xmlns="http://www.w3.org/2000/svg"
353
+ width="16"
354
+ height="16"
355
+ fill="currentColor"
356
+ class="bi bi-calendar"
357
+ viewBox="0 0 16 16"
358
+ >
359
+ <path
360
+ d="M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z"
361
+ />
362
+ </svg>
363
+ </sgds-button>
364
+ <sgds-button
365
+ role="button"
366
+ slot="reset-btn"
367
+ variant="primary"
368
+ ?disabled=${this.disabled}
369
+ class="reset-btn"
370
+ @click=${() => this._handleButtonResetClick()}
371
+ ariaLabel="Reset Datepicker"
372
+ >
373
+ ${svgEl}
374
+ </sgds-button>
375
+ </sgds-datepicker-input>
376
+
377
+ <ul
378
+ id=${this.dropdownMenuId}
379
+ class="sgds datepicker dropdown-menu"
380
+ role="dialog"
381
+ part="menu"
382
+ aria-label=${this._dialogAriaLabels[this.view]}
383
+ @click=${(event) => event.stopPropagation()}
384
+ >
385
+ <sgds-datepicker-header
386
+ .view=${this.view}
387
+ .displayDate=${this.displayDate}
388
+ .focusedDate=${this.focusedDate}
389
+ .selectedDate=${this.selectedDateRange}
390
+ .focusedTabIndex=${this.focusedTabIndex}
391
+ ></sgds-datepicker-header>
392
+ <sgds-datepicker-calendar
393
+ .show=${this.menuIsOpen}
394
+ .view=${this.view}
395
+ .displayDate=${this.displayDate}
396
+ .mode=${this.mode}
397
+ minDate=${this.minDate}
398
+ maxDate=${this.maxDate}
399
+ .selectedDate=${this.selectedDateRange}
400
+ .focusedTabIndex=${this.focusedTabIndex}
401
+ ></sgds-datepicker-calendar>
402
+ </ul>
403
+ </div>
404
+ `;
405
+ }
406
+ }
407
+ SgdsDatepicker.styles = [...DropdownElement.styles, css_248z, css_248z$1];
408
+ /**@internal */
409
+ SgdsDatepicker.formAssociated = true;
410
+ __decorate([
411
+ property({ type: Boolean, reflect: true })
412
+ ], SgdsDatepicker.prototype, "required", void 0);
413
+ __decorate([
414
+ property({ reflect: true })
415
+ ], SgdsDatepicker.prototype, "name", void 0);
416
+ __decorate([
417
+ property({ type: Boolean, reflect: true })
418
+ ], SgdsDatepicker.prototype, "disabled", void 0);
419
+ __decorate([
420
+ property({ type: Array, reflect: true })
421
+ ], SgdsDatepicker.prototype, "initialValue", void 0);
422
+ __decorate([
423
+ property({ type: String })
424
+ ], SgdsDatepicker.prototype, "dateFormat", void 0);
425
+ __decorate([
426
+ property({ type: String })
427
+ ], SgdsDatepicker.prototype, "minDate", void 0);
428
+ __decorate([
429
+ property({ type: String })
430
+ ], SgdsDatepicker.prototype, "maxDate", void 0);
431
+ __decorate([
432
+ property({ type: String, reflect: true })
433
+ ], SgdsDatepicker.prototype, "mode", void 0);
434
+ __decorate([
435
+ property({ type: String, reflect: true })
436
+ ], SgdsDatepicker.prototype, "invalidFeedback", void 0);
437
+ __decorate([
438
+ property({ reflect: true })
439
+ ], SgdsDatepicker.prototype, "label", void 0);
440
+ __decorate([
441
+ property({ reflect: true })
442
+ ], SgdsDatepicker.prototype, "hintText", void 0);
443
+ __decorate([
444
+ property({ type: Boolean, reflect: true, state: false })
445
+ ], SgdsDatepicker.prototype, "noFlip", void 0);
446
+ __decorate([
447
+ property({ type: String, reflect: true, state: false })
448
+ ], SgdsDatepicker.prototype, "drop", void 0);
449
+ __decorate([
450
+ property({ attribute: false })
451
+ ], SgdsDatepicker.prototype, "displayDate", void 0);
452
+ __decorate([
453
+ state()
454
+ ], SgdsDatepicker.prototype, "value", void 0);
455
+ __decorate([
456
+ state()
457
+ ], SgdsDatepicker.prototype, "view", void 0);
458
+ __decorate([
459
+ state()
460
+ ], SgdsDatepicker.prototype, "selectedDateRange", void 0);
461
+ __decorate([
462
+ state()
463
+ ], SgdsDatepicker.prototype, "focusedDate", void 0);
464
+ __decorate([
465
+ state()
466
+ ], SgdsDatepicker.prototype, "focusedTabIndex", void 0);
467
+ __decorate([
468
+ queryAsync("sgds-datepicker-calendar")
469
+ ], SgdsDatepicker.prototype, "calendar", void 0);
470
+ __decorate([
471
+ queryAsync("sgds-datepicker-input")
472
+ ], SgdsDatepicker.prototype, "datepickerInputAsync", void 0);
473
+ __decorate([
474
+ queryAsync("sgds-datepicker-header")
475
+ ], SgdsDatepicker.prototype, "datepickerHeaderAsync", void 0);
476
+ __decorate([
477
+ query("sgds-datepicker-input")
478
+ ], SgdsDatepicker.prototype, "datepickerInput", void 0);
479
+ __decorate([
480
+ watch("value")
481
+ ], SgdsDatepicker.prototype, "_handleValueChange", null);
482
+
483
+ export { SgdsDatepicker, SgdsDatepicker as default };
484
+ //# sourceMappingURL=sgds-datepicker.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sgds-datepicker.js","sources":["../../../../src/components/Datepicker/sgds-datepicker.ts"],"sourcesContent":["import { ScopedElementsMixin } from \"@open-wc/scoped-elements\";\nimport { format, parse } from \"date-fns\";\nimport { html } from \"lit\";\nimport { property, query, queryAsync, state } from \"lit/decorators.js\";\nimport { live } from \"lit/directives/live.js\";\nimport { ref } from \"lit/directives/ref.js\";\nimport { DropdownElement } from \"../../base/dropdown-element\";\nimport { type SgdsFormControl } from \"../../utils/form\";\nimport { DATE_PATTERNS, setTimeToNoon } from \"../../utils/time\";\nimport { watch } from \"../../utils/watch\";\nimport { DatepickerCalendar } from \"./datepicker-calendar\";\nimport { DatepickerHeader } from \"./datepicker-header\";\nimport DatepickerInput from \"./datepicker-input\";\nimport { SgdsButton } from \"../Button/sgds-button\";\nimport { ViewEnum } from \"./types\";\nimport dropdownStyle from \"../Dropdown/dropdown.css\";\nimport datepickerStyle from \"./datepicker.css\";\n\nexport type DateFormat = \"MM/DD/YYYY\" | \"DD/MM/YYYY\" | \"YYYY/MM/DD\";\n\n/**\n * @summary The `DatePicker` Component is built using `Dropdown`, `Input` and `Button` components. By default, the Calendar points to today's date and input has no value. Users can either pick dates from the calendar or type dates through the input\n *\n * @event sgds-change-date - Emitted when the state of datepicker's input changes during first load, close button reset click & date click. Date values can be accessed via event.target.value\n *\n * @cssproperty --datepicker-theme-color - Datepicker's overall theme color\n * @cssproperty --datepicker-hover-bg - Datepicker's calendar menu hover color\n * @cssproperty --datepicker-bg - Datepicker's menu background color\n * @cssproperty --datepicker-close-button-bg - Datepicker's close button background color\n * @cssproperty --datepicker-close-button-hover-bg - Datepicker's close button hover background color\n * @cssproperty --datepicker-close-button-color - Datepicker's close button color\n * @cssproperty --datepicker-selected-date-bg - Selected date's background color\n * @cssproperty --datepicker-selected-date-color - Selected date's text color\n *\n * @description displayDate sets the month, year views of the calendar while focusedDate follows the focus which also directly changes\n * displayDate on certain occasions. Example, when keyboard moves up to the next month, it updates displayDate which then affect the current\n * date view of the calendar\n */\nexport class SgdsDatepicker extends ScopedElementsMixin(DropdownElement) implements SgdsFormControl {\n static styles = [...DropdownElement.styles, dropdownStyle, datepickerStyle];\n /**@internal */\n static formAssociated = true;\n private _internals: ElementInternals;\n\n /**@internal */\n static get scopedElements() {\n return {\n \"sgds-datepicker-input\": DatepickerInput,\n \"sgds-datepicker-calendar\": DatepickerCalendar,\n \"sgds-datepicker-header\": DatepickerHeader,\n \"sgds-button\": SgdsButton\n };\n }\n\n /** When true, adds required attribute to input element */\n @property({ type: Boolean, reflect: true }) required = false;\n /**The datepicker input's name attribute */\n @property({ reflect: true }) name: string;\n /** When true, adds disabled attribute to input and button element */\n @property({ type: Boolean, reflect: true }) disabled = false;\n\n /** The initial value of DatePicker on first load for single & range mode as array of string. eg.'[\"22/12/2023\"]' for single & '[\"22/12/2023\",\"25/12/2023\"]' for range respectively */\n @property({ type: Array, reflect: true }) initialValue: string[] = [];\n\n /** Date format reflected on input */\n @property({ type: String }) dateFormat: DateFormat = \"DD/MM/YYYY\";\n\n /** ISO date string to set the lowest allowable date value. e.g. \"2016-05-19T12:00:00.000Z\" */\n @property({ type: String }) minDate = \"\";\n\n /** ISO date string to set the highest allowable date value. e.g. \"2016-05-19T12:00:00.000Z\" */\n @property({ type: String }) maxDate = \"\";\n\n /** Changes DatePicker to single date selection or range date selection */\n @property({ type: String, reflect: true }) mode: \"single\" | \"range\" = \"single\";\n\n /**Feedback text for error state when date input is invalid */\n @property({ type: String, reflect: true }) invalidFeedback = \"Please enter a valid date\";\n\n /** The datepicker input's label */\n @property({ reflect: true }) label = \"\";\n\n /** The datepicker input's hint text below the label */\n @property({ reflect: true }) hintText = \"\";\n\n /** Controls auto-flipping of menu */\n @property({ type: Boolean, reflect: true, state: false })\n noFlip = false;\n\n /** The drop position of menu relative to the toggle button */\n @property({ type: String, reflect: true, state: false })\n drop: \"up\" | \"down\" = \"down\";\n\n /** Provides the date context for Calendar to present the appropriate view. Defaults to today's date */\n @property({ attribute: false }) displayDate: Date;\n /**@internal */\n @state() value = \"\";\n\n @state()\n private view: ViewEnum = \"days\";\n\n @state() private selectedDateRange: Date[] = [];\n\n @state() private focusedDate: Date;\n\n @state() private focusedTabIndex = 3;\n\n private initialDisplayDate: Date;\n\n @queryAsync(\"sgds-datepicker-calendar\")\n private calendar: Promise<DatepickerCalendar>;\n\n @queryAsync(\"sgds-datepicker-input\")\n private datepickerInputAsync: Promise<DatepickerInput>;\n\n @queryAsync(\"sgds-datepicker-header\")\n private datepickerHeaderAsync: Promise<DatepickerHeader>;\n\n @query(\"sgds-datepicker-input\")\n private datepickerInput: DatepickerInput;\n\n /** Checks for validity and shows the browser's validation message if the control is invalid. */\n public reportValidity(): boolean {\n return this._internals.reportValidity();\n }\n constructor() {\n super();\n this._internals = this.attachInternals();\n /**@internal */\n this.modifierOpt = [\n {\n name: \"offset\",\n options: {\n offset: [0, 10]\n }\n }\n ];\n }\n\n async connectedCallback() {\n super.connectedCallback();\n this.addEventListener(\"sgds-view\", this._handleViewChanged);\n this.addEventListener(\"sgds-change-calendar\", this._handleDateChanged);\n this.addEventListener(\"sgds-update-focus\", this._handleFocusDateChanged);\n this.addEventListener(\"sgds-selectmonth\", this._handleSelectMonth);\n this.addEventListener(\"sgds-selectyear\", this._handleSelectYear);\n this.addEventListener(\"sgds-selectdates\", this._handleSelectDatesAndClose);\n this.addEventListener(\"sgds-selectdates-input\", this._handleSelectDatesInput);\n this.addEventListener(\"sgds-empty-input\", this._handleEmptyInput);\n this.addEventListener(\"keydown\", this._handleTab);\n this.addEventListener(\"sgds-hide\", this._handleCloseMenu);\n this.addEventListener(\"sgds-show\", this._handleOpenMenu);\n this.initialDisplayDate = this.displayDate || new Date();\n if (this.initialValue && this.initialValue.length > 0) {\n // Validate initialValue against the dateFormat regex\n const dateFormatRegex = new RegExp(this._getDateFormatRegex());\n // const startDateString = this.initialValue[0];\n const invalidDates = this.initialValue.filter(v => !dateFormatRegex.test(v));\n if (invalidDates.length > 0) {\n return console.error(\"Invalid date format in initialValue:\", invalidDates);\n } else {\n const initialSelectedDates = this.initialValue.map(v =>\n setTimeToNoon(parse(v, DATE_PATTERNS[this.dateFormat].fnsPattern, new Date()))\n );\n this._handleSelectDates(initialSelectedDates);\n }\n } else {\n this.displayDate = this.initialDisplayDate;\n }\n }\n\n async firstUpdated() {\n super.firstUpdated();\n if (this.menuIsOpen) {\n const input = await this.datepickerInputAsync;\n this.showMenu();\n const cal = await this.calendar;\n cal.focusOnCalendar(input);\n }\n\n const shadowInput = await this.datepickerInput.shadowInput;\n this._manageInternalsDefault(shadowInput);\n this._internals.setValidity(shadowInput.validity, shadowInput.validationMessage, shadowInput);\n }\n\n /** @internal */\n private _getDateFormatRegex(): string {\n // validate date strings and adhere to the specified date format\n return (\n this.dateFormat\n // Replace any special characters with their escaped version using \"\\\\$&\"\n .replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\")\n // Replace 'MM' with '\\\\d{2}', which matches two digits representing the month (e.g., 01, 12)\n .replace(\"MM\", \"\\\\d{2}\")\n // Replace 'DD' with '\\\\d{2}', which matches two digits representing the day (e.g., 01, 31)\n .replace(\"DD\", \"\\\\d{2}\")\n // Replace 'YYYY' with '\\\\d{4}', which matches four digits representing the year (e.g., 2021)\n .replace(\"YYYY\", \"\\\\d{4}\")\n // Replace '/' with '\\\\/', which matches the forward slash character\n .replace(\"/\", \"\\\\/\")\n );\n }\n private _handleTab(event: KeyboardEvent) {\n if (!this.menuIsOpen) {\n return;\n }\n const tabIndexArray = Array(4);\n if (event.shiftKey && event.key === \"Tab\") {\n event.preventDefault();\n this.focusedTabIndex = (this.focusedTabIndex - 1 + tabIndexArray.length) % tabIndexArray.length;\n } else if (event.key === \"Tab\") {\n event.preventDefault();\n this.focusedTabIndex = (this.focusedTabIndex + 1 + tabIndexArray.length) % tabIndexArray.length;\n }\n }\n\n @watch(\"value\")\n _handleValueChange() {\n this.emit(\"sgds-change-date\");\n this._setInternalFormValue(this.value);\n }\n\n private async _handleCloseMenu() {\n //return focus to input when menu closes\n const input = await this.datepickerInputAsync;\n input.focus();\n\n if (this.selectedDateRange.length === 0) {\n this.displayDate = this.initialDisplayDate;\n } else {\n const selectedDatesLength = this.selectedDateRange.length;\n this.displayDate = this.selectedDateRange[selectedDatesLength - 1];\n const calendar = await this.calendar;\n calendar._updateFocusedDate();\n }\n }\n private async _handleOpenMenu() {\n const cal = await this.calendar;\n const input = await this.datepickerInputAsync;\n cal.focusOnCalendar(input);\n }\n\n private _makeInputValueString = (startDate: Date, endDate: Date, dateFormat: string) => {\n if (!startDate && !endDate) return this.value;\n const formatDate = (date: Date) => format(date, DATE_PATTERNS[dateFormat].fnsPattern);\n switch (this.mode) {\n case \"single\": {\n if (startDate) {\n this.value = formatDate(startDate);\n }\n break;\n }\n case \"range\": {\n if (startDate && endDate) {\n this.value = `${formatDate(startDate)} - ${formatDate(endDate)}`;\n }\n if (startDate && !endDate) {\n this.value = `${formatDate(startDate)} - ${this.dateFormat.toLowerCase()}`;\n }\n break;\n }\n }\n return this.value;\n };\n private _handleSelectDatesInput(event: CustomEvent<Date[]>) {\n this._handleSelectDates(event.detail);\n this._manageInternalsDefault(this._shadowInput);\n }\n private async _handleSelectDates(newSelectedDates: Date[]) {\n newSelectedDates.sort((a: Date, b: Date) => a.getTime() - b.getTime());\n this.displayDate = newSelectedDates[0];\n this.focusedDate = newSelectedDates[0];\n this.selectedDateRange = newSelectedDates;\n\n // Get the formattedDate value for the selected dates\n const formattedDate = this._makeInputValueString(\n this.selectedDateRange[0],\n this.selectedDateRange[1],\n this.dateFormat\n );\n\n // Set formattedDate value as the new value for sgds-input\n this.value = formattedDate;\n const input = await this.datepickerInputAsync;\n input.updateMaskValue();\n }\n\n private get _shadowInput() {\n return this.datepickerInput.shadowRoot.querySelector(\"input\");\n }\n private _handleSelectDatesAndClose(event: CustomEvent<Date[]>) {\n this._handleSelectDates(event.detail);\n\n if (this.mode === \"range\" && this.selectedDateRange.length === 2) {\n this.hideMenu();\n } else if (this.mode === \"single\" && this.selectedDateRange.length === 1) {\n this.hideMenu();\n }\n this._manageInternalsValid();\n }\n\n /** update latest view state from datepicker-header */\n private _handleViewChanged(event: CustomEvent<string>) {\n this.view = event.detail as ViewEnum;\n }\n\n private _handleDateChanged(event: CustomEvent<Date>) {\n this.displayDate = event.detail;\n }\n private _handleFocusDateChanged(event: CustomEvent<Date>) {\n this.focusedDate = event.detail;\n }\n\n private _handleSelectMonth(event: CustomEvent<Date>) {\n this.displayDate = event.detail;\n }\n\n private _handleSelectYear(event: CustomEvent<Date>) {\n this.displayDate = event.detail;\n }\n private async _handleInvalidInput() {\n this.selectedDateRange = [];\n this.displayDate = this.initialDisplayDate;\n this._manageInternalsBadInput();\n }\n private async _handleButtonResetClick() {\n this.displayDate = this.initialDisplayDate;\n this.selectedDateRange = [];\n this.value = \"\";\n this.view = \"days\";\n this.hideMenu();\n const input = await this.datepickerInputAsync;\n input.setInvalid(false);\n input.destroyInputMask();\n await input.applyInputMask();\n\n this._manageInternalsRequired();\n }\n\n private async _handleEmptyInput() {\n this._manageInternalsRequired();\n }\n\n private _manageInternalsRequired() {\n this.required\n ? this._internals.setValidity(\n {\n valueMissing: true\n },\n \"Please fill in this field\",\n this._shadowInput\n )\n : this._internals.setValidity({});\n }\n private _manageInternalsBadInput() {\n this._internals.setValidity(\n {\n badInput: true\n },\n \"The chosen date(s) are invalid\",\n this._shadowInput\n );\n }\n\n private _manageInternalsValid() {\n this._internals.setValidity({});\n }\n\n private _manageInternalsDefault(inputEl: HTMLInputElement) {\n this._internals.setValidity(inputEl.validity, inputEl.validationMessage, inputEl);\n }\n\n private _setInternalFormValue(value: string) {\n this._internals.setFormValue(value);\n }\n\n private async _handleInputMaskChange(e: CustomEvent) {\n this.value = e.detail;\n }\n\n private _dialogAriaLabels = {\n days: \"Choose date\",\n months: \"Choose month\",\n years: \"Choose year\"\n };\n\n render() {\n const svgEl = html`\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-x\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M4.646 4.646a.5.5 0 0 1 .708 0L8 7.293l2.646-2.647a.5.5 0 0 1 .708.708L8.707 8l2.647 2.646a.5.5 0 0 1-.708.708L8 8.707l-2.646 2.647a.5.5 0 0 1-.708-.708L7.293 8 4.646 5.354a.5.5 0 0 1 0-.708z\"\n />\n </svg>\n `;\n\n return html`\n <div>\n <sgds-datepicker-input\n .value=${live(this.value)}\n ?required=${this.required}\n ?disabled=${this.disabled}\n placeholder=\"\"\n ${ref(this.myDropdown)}\n mode=${this.mode}\n dateFormat=${this.dateFormat}\n invalidFeedback=${this.invalidFeedback}\n @sgds-mask-input-change=${this._handleInputMaskChange}\n @sgds-invalid-input=${this._handleInvalidInput}\n minDate=${this.minDate}\n maxDate=${this.maxDate}\n label=${this.label}\n hintText=${this.hintText}\n name=${this.name}\n >\n <sgds-button\n role=\"button\"\n slot=\"calendar-btn\"\n class=\"calendar-btn\"\n aria-expanded=\"${this.menuIsOpen}\"\n aria-haspopup=\"dialog\"\n aria-controls=${this.dropdownMenuId}\n @click=${() => this.toggleMenu()}\n ariaLabel=${this.menuIsOpen ? \"Close Calendar\" : \"Open Calendar\"}\n ?disabled=${this.disabled}\n variant=\"outlined\"\n >\n <svg\n xmlns=\"http://www.w3.org/2000/svg\"\n width=\"16\"\n height=\"16\"\n fill=\"currentColor\"\n class=\"bi bi-calendar\"\n viewBox=\"0 0 16 16\"\n >\n <path\n d=\"M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5M1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4z\"\n />\n </svg>\n </sgds-button>\n <sgds-button\n role=\"button\"\n slot=\"reset-btn\"\n variant=\"primary\"\n ?disabled=${this.disabled}\n class=\"reset-btn\"\n @click=${() => this._handleButtonResetClick()}\n ariaLabel=\"Reset Datepicker\"\n >\n ${svgEl}\n </sgds-button>\n </sgds-datepicker-input>\n\n <ul\n id=${this.dropdownMenuId}\n class=\"sgds datepicker dropdown-menu\"\n role=\"dialog\"\n part=\"menu\"\n aria-label=${this._dialogAriaLabels[this.view]}\n @click=${(event: MouseEvent) => event.stopPropagation()}\n >\n <sgds-datepicker-header\n .view=${this.view}\n .displayDate=${this.displayDate}\n .focusedDate=${this.focusedDate}\n .selectedDate=${this.selectedDateRange}\n .focusedTabIndex=${this.focusedTabIndex}\n ></sgds-datepicker-header>\n <sgds-datepicker-calendar\n .show=${this.menuIsOpen}\n .view=${this.view}\n .displayDate=${this.displayDate}\n .mode=${this.mode}\n minDate=${this.minDate}\n maxDate=${this.maxDate}\n .selectedDate=${this.selectedDateRange}\n .focusedTabIndex=${this.focusedTabIndex}\n ></sgds-datepicker-calendar>\n </ul>\n </div>\n `;\n }\n}\n\nexport default SgdsDatepicker;\n"],"names":["dropdownStyle","datepickerStyle"],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ 'use client';
2
+ import { css } from 'lit';
3
+
4
+ var css_248z = css`:host{--drawer-padding:var(--sgds-spacer-4);--drawer-size:35rem;--drawer-bg:var(--sgds-body-bg);--drawer-button-gap:var(--sgds-spacer-2);display:contents}.drawer{height:100%;inset-inline-start:0;overflow:hidden;pointer-events:none;top:0;width:100%}.drawer-fixed{position:fixed;z-index:1055}.drawer-panel{background-color:var(--drawer-bg);box-shadow:0 2px 8px hsla(240,4%,46%,.12);display:flex;flex-direction:column;max-height:100%;max-width:100%;overflow:auto;pointer-events:all;position:absolute;z-index:2}.drawer-panel:focus{outline:none}.drawer-top .drawer-panel{bottom:auto;height:var(--drawer-size);inset-inline-end:auto;inset-inline-start:0;top:0;width:100%}.drawer-end .drawer-panel{bottom:auto;height:100%;inset-inline-end:0;inset-inline-start:auto;top:0;width:var(--drawer-size)}.drawer-bottom .drawer-panel{bottom:0;height:var(--drawer-size);inset-inline-end:auto;inset-inline-start:0;top:auto;width:100%}.drawer-start .drawer-panel{bottom:auto;height:100%;inset-inline-end:auto;inset-inline-start:0;top:0;width:var(--drawer-size)}.drawer-header{display:flex;padding:var(--drawer-padding)}.drawer-title{flex:1 1 auto;font:inherit;font-size:calc(1.275rem + .3vw);line-height:1.33;margin:0}.drawer-header-actions{cursor:pointer;display:flex;flex-shrink:0;flex-wrap:wrap;gap:var(--drawer-button-gap);justify-content:end;padding:0 var(--drawer-padding)}.drawer-header-actions .drawer-close{align-self:center;display:flex;flex:0 0 auto}.drawer-body{-webkit-overflow-scrolling:touch;display:block;flex:1 1 auto;overflow:auto}.drawer-body,.drawer-footer{padding:var(--drawer-padding)}.drawer-footer{text-align:right}.drawer-footer ::slotted(sgds-button:not(:last-of-type)){margin-inline-end:var(--drawer-button-gap)}.drawer:not(.drawer-has-footer) .drawer-footer{display:none}.drawer-overlay{background-color:rgba(0,0,0,.5);bottom:0;display:block;left:0;pointer-events:all;position:fixed;right:0;top:0}.drawer-contained .drawer-overlay{display:none}`;
5
+
6
+ export { css_248z as default };
7
+ //# sourceMappingURL=drawer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"drawer.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sgds-drawer.cjs.js","sources":["../../../../src/components/Drawer/sgds-drawer.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 SgdsElement from \"../../base/sgds-element\";\nimport { animateTo, stopAnimations } from \"../../utils/animate.js\";\nimport { getAnimation, setDefaultAnimation } from \"../../utils/animation-registry.js\";\nimport { waitForEvent } from \"../../utils/event.js\";\nimport { lockBodyScrolling, unlockBodyScrolling } from \"../../utils/scroll.js\";\nimport { HasSlotController } from \"../../utils/slot.js\";\nimport { watch } from \"../../utils/watch.js\";\nimport drawerStyles from \"./drawer.css\";\nimport SgdsCloseButton from \"../../internals/CloseButton/sgds-close-button\";\nimport { ScopedElementsMixin } from \"@open-wc/scoped-elements\";\n\n/**\n * @summary Drawers slide in from a container to expose additional options and information.\n *\n * @slot - The drawer's main content.\n * @slot label - The drawer's label. Alternatively, you can use the `label` attribute.\n * @slot header-actions - Optional actions to add to the header.\n * @slot footer - The drawer's footer, usually one or more buttons representing various options.\n *\n * @event sgds-show - Emitted when the drawer opens.\n * @event sgds-after-show - Emitted after the drawer opens and all animations are complete.\n * @event sgds-hide - Emitted when the drawer closes.\n * @event sgds-after-hide - Emitted after the drawer closes and all animations are complete.\n * @event sgds-initial-focus - Emitted when the drawer opens and is ready to receive focus. Calling\n * `event.preventDefault()` will prevent focusing and allow you to set it on a different element, such as an input.\n * @event {{ source: 'close-button' | 'keyboard' | 'overlay' }} sgds-request-close - Emitted when the user attempts to\n * close the drawer by clicking the close button, clicking the overlay, or pressing escape. Calling\n * `event.preventDefault()` will keep the drawer open. Avoid using this unless closing the drawer will result in\n * destructive behavior such as data loss.\n *\n * @csspart base - The component's base wrapper.\n * @csspart overlay - The overlay that covers the screen behind the drawer.\n * @csspart panel - The drawer's panel (where the drawer and its content are rendered).\n * @csspart header - The drawer's header. This element wraps the title and header actions.\n * @csspart header-actions - Optional actions to add to the header.\n * @csspart title - The drawer's title.\n * @csspart close-button - The close button.\n * @csspart body - The drawer's body.\n * @csspart footer - The drawer's footer.\n *\n * @cssproperty --drawer-size - The preferred size of the drawer. This will be applied to the drawer's width or height\n * depending on its `placement`. Note that the drawer will shrink to accommodate smaller screens.\n * @cssproperty --drawer-padding - The amount of padding to use for the header, body and footer\n * @cssproperty --drawer-bg - The drawer's background color.\n * @cssproperty --drawer-button-gap - The drawer's flex gap between buttons.\n *\n */\nexport class SgdsDrawer extends ScopedElementsMixin(SgdsElement) {\n static styles = [...SgdsElement.styles, drawerStyles];\n /**@internal */\n static get scopedElements() {\n return {\n \"sgds-close-button\": SgdsCloseButton\n };\n }\n /** @internal */\n private readonly hasSlotController = new HasSlotController(this, \"footer\");\n /** @internal */\n private originalTrigger: HTMLElement | null;\n /** @internal */\n @query(\".drawer\") drawer: HTMLElement;\n /** @internal */\n @query(\".drawer-panel\") panel: HTMLElement;\n /** @internal */\n @query(\".drawer-overlay\") overlay: HTMLElement;\n\n /**\n * Indicates whether or not the drawer is open. You can toggle this attribute to show and hide the drawer, or you can\n * use the `show()` and `hide()` methods and this attribute will reflect the drawer's open state.\n */\n @property({ type: Boolean, reflect: true }) open = false;\n\n /**\n * The drawer's label as displayed in the header. You should always include a relevant label even when using\n * `noHeader`, as it is required for proper accessibility. If you need to display HTML, use the `label` slot instead.\n */\n @property({ type: String, reflect: true }) label = \"\";\n\n /** The direction from which the drawer will open. */\n @property({ type: String, reflect: true }) placement: \"top\" | \"end\" | \"bottom\" | \"start\" = \"end\";\n\n /**\n * By default, the drawer slides out of its containing block (usually the viewport). To make the drawer slide out of\n * its parent element, set this attribute and add `position: relative` to the parent.\n */\n @property({ type: Boolean, reflect: true }) contained = false;\n\n /**\n * Removes the header. This will also remove the default close button, so please ensure you provide an easy,\n * accessible way for users to dismiss the drawer.\n */\n @property({ type: Boolean, reflect: true }) noHeader = false;\n\n firstUpdated() {\n this.drawer.hidden = !this.open;\n\n if (this.open) {\n this.addOpenListeners();\n\n if (!this.contained) {\n lockBodyScrolling(this);\n }\n }\n }\n\n disconnectedCallback() {\n super.disconnectedCallback();\n unlockBodyScrolling(this);\n }\n\n private uppercaseFirstLetter(string: string) {\n return string.charAt(0).toUpperCase() + string.slice(1);\n }\n\n private requestClose(source: \"close-button\" | \"keyboard\" | \"overlay\") {\n const slRequestClose = this.emit(\"sgds-request-close\", {\n cancelable: true,\n detail: { source }\n });\n\n if (slRequestClose.defaultPrevented) {\n const animation = getAnimation(this, \"drawer.denyClose\");\n animateTo(this.panel, animation.keyframes, animation.options);\n return;\n }\n\n this.hide();\n }\n\n private addOpenListeners() {\n document.addEventListener(\"keydown\", this.handleDocumentKeyDown);\n }\n\n private removeOpenListeners() {\n document.removeEventListener(\"keydown\", this.handleDocumentKeyDown);\n }\n\n private handleDocumentKeyDown = (event: KeyboardEvent) => {\n if (this.open && !this.contained && 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\n // Lock body scrolling only if the drawer isn't contained\n if (!this.contained) {\n lockBodyScrolling(this);\n }\n\n // When the drawer is shown, Safari will attempt to set focus on whatever element has autofocus. This causes the\n // drawer's animation to jitter, so we'll temporarily remove the attribute, call `focus({ preventScroll: true })`\n // ourselves, and add the attribute back afterwards.\n //\n // Related: https://github.com/shoelace-style/shoelace/issues/693\n //\n const autoFocusTarget = this.querySelector(\"[autofocus]\");\n if (autoFocusTarget) {\n autoFocusTarget.removeAttribute(\"autofocus\");\n }\n\n await Promise.all([stopAnimations(this.drawer), stopAnimations(this.overlay)]);\n this.drawer.hidden = false;\n\n // Set initial focus\n requestAnimationFrame(() => {\n const slInitialFocus = this.emit(\"sgds-initial-focus\", { cancelable: true });\n\n if (!slInitialFocus.defaultPrevented) {\n // Set focus to the autofocus target and restore the attribute\n if (autoFocusTarget) {\n (autoFocusTarget as HTMLInputElement).focus({ preventScroll: true });\n } else {\n this.panel.focus({ preventScroll: true });\n }\n }\n\n // Restore the autofocus attribute\n if (autoFocusTarget) {\n autoFocusTarget.setAttribute(\"autofocus\", \"\");\n }\n });\n\n const panelAnimation = getAnimation(this, `drawer.show${this.uppercaseFirstLetter(this.placement)}`);\n const overlayAnimation = getAnimation(this, \"drawer.overlay.show\");\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 } else {\n // Hide\n this.emit(\"sgds-hide\");\n this.removeOpenListeners();\n\n if (!this.contained) {\n unlockBodyScrolling(this);\n }\n\n await Promise.all([stopAnimations(this.drawer), stopAnimations(this.overlay)]);\n const panelAnimation = getAnimation(this, `drawer.hide${this.uppercaseFirstLetter(this.placement)}`);\n const overlayAnimation = getAnimation(this, \"drawer.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 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.drawer.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 // 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 @watch(\"contained\", { waitUntilFirstUpdate: true })\n handleNoModalChange() {\n if (this.open && !this.contained) {\n lockBodyScrolling(this);\n }\n\n if (this.open && this.contained) {\n unlockBodyScrolling(this);\n }\n }\n\n /** Shows the drawer. */\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 drawer */\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 render() {\n return html`\n <div\n part=\"base\"\n class=${classMap({\n drawer: true,\n \"drawer-open\": this.open,\n \"drawer-top\": this.placement === \"top\",\n \"drawer-end\": this.placement === \"end\",\n \"drawer-bottom\": this.placement === \"bottom\",\n \"drawer-start\": this.placement === \"start\",\n \"drawer-contained\": this.contained,\n \"drawer-fixed\": !this.contained,\n \"drawer-has-footer\": this.hasSlotController.test(\"footer\")\n })}\n >\n <div part=\"overlay\" class=\"drawer-overlay\" @click=${() => this.requestClose(\"overlay\")} tabindex=\"-1\"></div>\n\n <div\n part=\"panel\"\n class=\"drawer-panel\"\n role=\"dialog\"\n aria-modal=\"true\"\n aria-hidden=${this.open ? \"false\" : \"true\"}\n aria-label=${ifDefined(this.noHeader ? this.label : undefined)}\n aria-labelledby=${ifDefined(!this.noHeader ? \"title\" : undefined)}\n tabindex=\"0\"\n >\n ${!this.noHeader\n ? html`\n <header part=\"header\" class=\"drawer-header\">\n <h2 part=\"title\" class=\"drawer-title\" id=\"title\">\n <!-- If there's no label, use an invisible character to prevent the header from collapsing -->\n <slot name=\"label\"> ${this.label.length > 0 ? this.label : String.fromCharCode(65279)} </slot>\n </h2>\n <div part=\"header-actions\" class=\"drawer-header-actions\">\n <slot name=\"header-actions\"></slot>\n <sgds-close-button\n part=\"close-button\"\n class=\"drawer-close\"\n aria-label=\"close drawer\"\n @click=\"${() => this.requestClose(\"close-button\")}\"\n ></sgds-close-button>\n </div>\n </header>\n `\n : nothing}\n\n <slot part=\"body\" class=\"drawer-body\"></slot>\n\n <footer part=\"footer\" class=\"drawer-footer\">\n <slot name=\"footer\"></slot>\n </footer>\n </div>\n </div>\n `;\n }\n}\n\n// Top\nsetDefaultAnimation(\"drawer.showTop\", {\n keyframes: [\n { opacity: 0, translate: \"0 -100%\" },\n { opacity: 1, translate: \"0 0\" }\n ],\n options: { duration: 250, easing: \"ease\" }\n});\n\nsetDefaultAnimation(\"drawer.hideTop\", {\n keyframes: [\n { opacity: 1, translate: \"0 0\" },\n { opacity: 0, translate: \"0 -100%\" }\n ],\n options: { duration: 250, easing: \"ease\" }\n});\n\n// End\nsetDefaultAnimation(\"drawer.showEnd\", {\n keyframes: [\n { opacity: 0, translate: \"100%\" },\n { opacity: 1, translate: \"0\" }\n ],\n rtlKeyframes: [\n { opacity: 0, translate: \"-100%\" },\n { opacity: 1, translate: \"0\" }\n ],\n options: { duration: 250, easing: \"ease\" }\n});\n\nsetDefaultAnimation(\"drawer.hideEnd\", {\n keyframes: [\n { opacity: 1, translate: \"0\" },\n { opacity: 0, translate: \"100%\" }\n ],\n rtlKeyframes: [\n { opacity: 1, translate: \"0\" },\n { opacity: 0, translate: \"-100%\" }\n ],\n options: { duration: 250, easing: \"ease\" }\n});\n\n// Bottom\nsetDefaultAnimation(\"drawer.showBottom\", {\n keyframes: [\n { opacity: 0, translate: \"0 100%\" },\n { opacity: 1, translate: \"0 0\" }\n ],\n options: { duration: 250, easing: \"ease\" }\n});\n\nsetDefaultAnimation(\"drawer.hideBottom\", {\n keyframes: [\n { opacity: 1, translate: \"0 0\" },\n { opacity: 0, translate: \"0 100%\" }\n ],\n options: { duration: 250, easing: \"ease\" }\n});\n\n// Start\nsetDefaultAnimation(\"drawer.showStart\", {\n keyframes: [\n { opacity: 0, translate: \"-100%\" },\n { opacity: 1, translate: \"0\" }\n ],\n rtlKeyframes: [\n { opacity: 0, translate: \"100%\" },\n { opacity: 1, translate: \"0\" }\n ],\n options: { duration: 250, easing: \"ease\" }\n});\n\nsetDefaultAnimation(\"drawer.hideStart\", {\n keyframes: [\n { opacity: 1, translate: \"0\" },\n { opacity: 0, translate: \"-100%\" }\n ],\n rtlKeyframes: [\n { opacity: 1, translate: \"0\" },\n { opacity: 0, translate: \"100%\" }\n ],\n options: { duration: 250, easing: \"ease\" }\n});\n\n// Deny close\nsetDefaultAnimation(\"drawer.denyClose\", {\n keyframes: [{ scale: 1 }, { scale: 1.01 }, { scale: 1 }],\n options: { duration: 250 }\n});\n\n// Overlay\nsetDefaultAnimation(\"drawer.overlay.show\", {\n keyframes: [{ opacity: 0 }, { opacity: 1 }],\n options: { duration: 250 }\n});\n\nsetDefaultAnimation(\"drawer.overlay.hide\", {\n keyframes: [{ opacity: 1 }, { opacity: 0 }],\n options: { duration: 250 }\n});\n\nexport default SgdsDrawer;\n"],"names":["ScopedElementsMixin","SgdsElement","HasSlotController","SgdsCloseButton","lockBodyScrolling","unlockBodyScrolling","getAnimation","animateTo","stopAnimations","waitForEvent","html","classMap","ifDefined","nothing","drawerStyles","__decorate","query","property","watch","setDefaultAnimation"],"mappings":"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"}