@postenbring/hedwig-react 0.0.81 → 0.0.83

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 (580) hide show
  1. package/dist/accordion/accordion-content.d.ts +6 -2
  2. package/dist/accordion/accordion-content.d.ts.map +1 -0
  3. package/dist/accordion/accordion-header.d.ts +6 -2
  4. package/dist/accordion/accordion-header.d.ts.map +1 -0
  5. package/dist/accordion/accordion-item.d.ts +24 -3
  6. package/dist/accordion/accordion-item.d.ts.map +1 -0
  7. package/dist/accordion/accordion.d.ts +44 -2
  8. package/dist/accordion/accordion.d.ts.map +1 -0
  9. package/dist/accordion/accordion.js +102 -4
  10. package/dist/accordion/accordion.js.map +1 -1
  11. package/dist/accordion/accordion.mjs +5 -1
  12. package/dist/accordion/context.d.ts +7 -2
  13. package/dist/accordion/context.d.ts.map +1 -0
  14. package/dist/accordion/index.d.ts +9 -9
  15. package/dist/accordion/index.d.ts.map +1 -0
  16. package/dist/accordion/index.js +52 -53
  17. package/dist/accordion/index.js.map +1 -1
  18. package/dist/accordion/index.mjs +7 -7
  19. package/dist/badge/badge.d.ts +21 -5
  20. package/dist/badge/badge.d.ts.map +1 -0
  21. package/dist/badge/index.d.ts +3 -6
  22. package/dist/badge/index.d.ts.map +1 -0
  23. package/dist/box/box.d.ts +50 -4
  24. package/dist/box/box.d.ts.map +1 -0
  25. package/dist/box/box.js +15 -14
  26. package/dist/box/box.js.map +1 -1
  27. package/dist/box/box.mjs +1 -1
  28. package/dist/box/index.d.ts +3 -4
  29. package/dist/box/index.d.ts.map +1 -0
  30. package/dist/box/index.js +16 -19
  31. package/dist/box/index.js.map +1 -1
  32. package/dist/box/index.mjs +4 -5
  33. package/dist/breadcrumbs/breadcrumbs.d.ts +33 -2
  34. package/dist/breadcrumbs/breadcrumbs.d.ts.map +1 -0
  35. package/dist/breadcrumbs/index.d.ts +3 -2
  36. package/dist/breadcrumbs/index.d.ts.map +1 -0
  37. package/dist/button/button.d.ts +33 -3
  38. package/dist/button/button.d.ts.map +1 -0
  39. package/dist/button/index.d.ts +3 -3
  40. package/dist/button/index.d.ts.map +1 -0
  41. package/dist/card/card.d.ts +69 -12
  42. package/dist/card/card.d.ts.map +1 -0
  43. package/dist/card/card.js +17 -6
  44. package/dist/card/card.js.map +1 -1
  45. package/dist/card/card.mjs +1 -1
  46. package/dist/card/index.d.ts +3 -12
  47. package/dist/card/index.d.ts.map +1 -0
  48. package/dist/card/index.js +18 -19
  49. package/dist/card/index.js.map +1 -1
  50. package/dist/card/index.mjs +4 -5
  51. package/dist/{chunk-6R7AXKBR.mjs → chunk-35TXKAUH.mjs} +2 -2
  52. package/dist/chunk-35TXKAUH.mjs.map +1 -0
  53. package/dist/{chunk-XC3UHH2U.mjs → chunk-3WVRY6CC.mjs} +4 -4
  54. package/dist/{chunk-XC3UHH2U.mjs.map → chunk-3WVRY6CC.mjs.map} +1 -1
  55. package/dist/{chunk-67TP3E2D.mjs → chunk-6FBPKLWB.mjs} +3 -3
  56. package/dist/chunk-6FBPKLWB.mjs.map +1 -0
  57. package/dist/chunk-7YWW46R3.mjs +1 -0
  58. package/dist/{chunk-ENKVTAJB.mjs → chunk-AJWSQEDP.mjs} +18 -17
  59. package/dist/chunk-AJWSQEDP.mjs.map +1 -0
  60. package/dist/chunk-ARHJZUZG.mjs +1 -0
  61. package/dist/{chunk-4WQWU5TL.mjs → chunk-AXQCREUJ.mjs} +2 -2
  62. package/dist/chunk-AXQCREUJ.mjs.map +1 -0
  63. package/dist/chunk-BCFV6VOE.mjs +1 -0
  64. package/dist/{chunk-F2C3KZFX.mjs → chunk-BVPSZ3JI.mjs} +2 -2
  65. package/dist/chunk-BVPSZ3JI.mjs.map +1 -0
  66. package/dist/{chunk-7JRS4WEB.mjs → chunk-C34HEQXO.mjs} +33 -29
  67. package/dist/chunk-C34HEQXO.mjs.map +1 -0
  68. package/dist/chunk-CYDWEPFL.mjs +1 -0
  69. package/dist/{chunk-PLXB3TNA.mjs → chunk-D7QPJIUZ.mjs} +5 -5
  70. package/dist/{chunk-PLXB3TNA.mjs.map → chunk-D7QPJIUZ.mjs.map} +1 -1
  71. package/dist/{chunk-GSJPTZT3.mjs → chunk-FC4CEI2V.mjs} +34 -19
  72. package/dist/chunk-FC4CEI2V.mjs.map +1 -0
  73. package/dist/chunk-FYFJ75NX.mjs +1 -0
  74. package/dist/chunk-FYFJ75NX.mjs.map +1 -0
  75. package/dist/chunk-G65EYZFQ.mjs +1 -0
  76. package/dist/chunk-G65EYZFQ.mjs.map +1 -0
  77. package/dist/chunk-H3E546OT.mjs +1 -0
  78. package/dist/chunk-H3E546OT.mjs.map +1 -0
  79. package/dist/chunk-HQVL3ZJ2.mjs +1 -0
  80. package/dist/chunk-HQVL3ZJ2.mjs.map +1 -0
  81. package/dist/{chunk-KPGSRU4I.mjs → chunk-M3Y3XOGC.mjs} +13 -1
  82. package/dist/chunk-M3Y3XOGC.mjs.map +1 -0
  83. package/dist/{chunk-CIHZDFSQ.mjs → chunk-NU6OSFAU.mjs} +20 -9
  84. package/dist/chunk-NU6OSFAU.mjs.map +1 -0
  85. package/dist/{chunk-XUWZ4HGD.mjs → chunk-OGZ2NBMH.mjs} +49 -46
  86. package/dist/chunk-OGZ2NBMH.mjs.map +1 -0
  87. package/dist/{chunk-3MQKXNZ6.mjs → chunk-QZZIOBF4.mjs} +13 -1
  88. package/dist/chunk-QZZIOBF4.mjs.map +1 -0
  89. package/dist/chunk-RC76SXBP.mjs +1 -0
  90. package/dist/chunk-RC76SXBP.mjs.map +1 -0
  91. package/dist/{chunk-TQDUBRCZ.mjs → chunk-SQ63E7KM.mjs} +24 -22
  92. package/dist/chunk-SQ63E7KM.mjs.map +1 -0
  93. package/dist/{chunk-DEX36MFK.mjs → chunk-TDXU2IC6.mjs} +3 -4
  94. package/dist/chunk-TDXU2IC6.mjs.map +1 -0
  95. package/dist/{chunk-ES6ISHOV.mjs → chunk-UP3M3NEZ.mjs} +14 -13
  96. package/dist/{chunk-ES6ISHOV.mjs.map → chunk-UP3M3NEZ.mjs.map} +1 -1
  97. package/dist/chunk-ZKMFJZSH.mjs +1 -0
  98. package/dist/chunk-ZKMFJZSH.mjs.map +1 -0
  99. package/dist/description-list/description-list.d.ts +42 -2
  100. package/dist/description-list/description-list.d.ts.map +1 -0
  101. package/dist/description-list/index.d.ts +3 -2
  102. package/dist/description-list/index.d.ts.map +1 -0
  103. package/dist/footer/footer.d.ts +67 -7
  104. package/dist/footer/footer.d.ts.map +1 -0
  105. package/dist/footer/footer.js +79 -76
  106. package/dist/footer/footer.js.map +1 -1
  107. package/dist/footer/footer.mjs +4 -4
  108. package/dist/footer/index.d.ts +3 -7
  109. package/dist/footer/index.d.ts.map +1 -0
  110. package/dist/footer/index.js +80 -84
  111. package/dist/footer/index.js.map +1 -1
  112. package/dist/footer/index.mjs +7 -8
  113. package/dist/form/checkbox/checkbox.d.ts +28 -2
  114. package/dist/form/checkbox/checkbox.d.ts.map +1 -0
  115. package/dist/form/checkbox/index.d.ts +3 -2
  116. package/dist/form/checkbox/index.d.ts.map +1 -0
  117. package/dist/form/date-picker/date-picker.d.ts +33 -2
  118. package/dist/form/date-picker/date-picker.d.ts.map +1 -0
  119. package/dist/form/date-picker/date-picker.js +1 -1
  120. package/dist/form/date-picker/date-picker.js.map +1 -1
  121. package/dist/form/date-picker/date-picker.mjs +2 -2
  122. package/dist/form/date-picker/index.d.ts +3 -2
  123. package/dist/form/date-picker/index.d.ts.map +1 -0
  124. package/dist/form/date-picker/index.js +1 -1
  125. package/dist/form/date-picker/index.js.map +1 -1
  126. package/dist/form/date-picker/index.mjs +2 -2
  127. package/dist/form/error-message/error-message.d.ts +8 -2
  128. package/dist/form/error-message/error-message.d.ts.map +1 -0
  129. package/dist/form/error-message/index.d.ts +3 -2
  130. package/dist/form/error-message/index.d.ts.map +1 -0
  131. package/dist/form/fieldset/fieldset.d.ts +22 -3
  132. package/dist/form/fieldset/fieldset.d.ts.map +1 -0
  133. package/dist/form/fieldset/index.d.ts +3 -3
  134. package/dist/form/fieldset/index.d.ts.map +1 -0
  135. package/dist/form/index.d.ts +9 -20
  136. package/dist/form/index.d.ts.map +1 -0
  137. package/dist/form/index.js +1 -1
  138. package/dist/form/index.js.map +1 -1
  139. package/dist/form/index.mjs +2 -2
  140. package/dist/form/input/index.d.ts +3 -2
  141. package/dist/form/input/index.d.ts.map +1 -0
  142. package/dist/form/input/input.d.ts +5 -2
  143. package/dist/form/input/input.d.ts.map +1 -0
  144. package/dist/form/input-group/index.d.ts +3 -2
  145. package/dist/form/input-group/index.d.ts.map +1 -0
  146. package/dist/form/input-group/input-group.d.ts +27 -2
  147. package/dist/form/input-group/input-group.d.ts.map +1 -0
  148. package/dist/form/radiobutton/index.d.ts +5 -5
  149. package/dist/form/radiobutton/index.d.ts.map +1 -0
  150. package/dist/form/radiobutton/radiobutton.d.ts +17 -2
  151. package/dist/form/radiobutton/radiobutton.d.ts.map +1 -0
  152. package/dist/form/radiobutton/radiogroup.d.ts +24 -3
  153. package/dist/form/radiobutton/radiogroup.d.ts.map +1 -0
  154. package/dist/form/select/index.d.ts +3 -2
  155. package/dist/form/select/index.d.ts.map +1 -0
  156. package/dist/form/select/select.d.ts +9 -2
  157. package/dist/form/select/select.d.ts.map +1 -0
  158. package/dist/form/textarea/index.d.ts +3 -2
  159. package/dist/form/textarea/index.d.ts.map +1 -0
  160. package/dist/form/textarea/textarea.d.ts +5 -2
  161. package/dist/form/textarea/textarea.d.ts.map +1 -0
  162. package/dist/help-text/help-text.d.ts +51 -1
  163. package/dist/help-text/help-text.d.ts.map +1 -0
  164. package/dist/help-text/help-text.js +17 -20
  165. package/dist/help-text/help-text.js.map +1 -1
  166. package/dist/help-text/help-text.mjs +3 -3
  167. package/dist/help-text/index.d.ts +3 -1
  168. package/dist/help-text/index.d.ts.map +1 -0
  169. package/dist/help-text/index.js +17 -20
  170. package/dist/help-text/index.js.map +1 -1
  171. package/dist/help-text/index.mjs +3 -3
  172. package/dist/index-no-css.d.ts +26 -128
  173. package/dist/index-no-css.d.ts.map +1 -0
  174. package/dist/index-no-css.js +385 -398
  175. package/dist/index-no-css.js.map +1 -1
  176. package/dist/index-no-css.mjs +70 -68
  177. package/dist/index.d.ts +11 -128
  178. package/dist/index.d.ts.map +1 -0
  179. package/dist/index.js +385 -398
  180. package/dist/index.js.map +1 -1
  181. package/dist/index.mjs +70 -68
  182. package/dist/index.mjs.map +1 -1
  183. package/dist/layout/container/container.d.ts +23 -2
  184. package/dist/layout/container/container.d.ts.map +1 -0
  185. package/dist/layout/grid/grid.d.ts +101 -4
  186. package/dist/layout/grid/grid.d.ts.map +1 -0
  187. package/dist/layout/grid/grid.js +11 -10
  188. package/dist/layout/grid/grid.js.map +1 -1
  189. package/dist/layout/grid/grid.mjs +1 -1
  190. package/dist/layout/grid/index.d.ts +3 -4
  191. package/dist/layout/grid/index.d.ts.map +1 -0
  192. package/dist/layout/grid/index.js +12 -15
  193. package/dist/layout/grid/index.js.map +1 -1
  194. package/dist/layout/grid/index.mjs +4 -5
  195. package/dist/layout/index.d.ts +4 -10
  196. package/dist/layout/index.d.ts.map +1 -0
  197. package/dist/layout/index.js +12 -15
  198. package/dist/layout/index.js.map +1 -1
  199. package/dist/layout/index.mjs +4 -5
  200. package/dist/layout/responsive.d.ts +10 -2
  201. package/dist/layout/responsive.d.ts.map +1 -0
  202. package/dist/layout/spacing.d.ts +33 -3
  203. package/dist/layout/spacing.d.ts.map +1 -0
  204. package/dist/layout/stack/index.d.ts +3 -4
  205. package/dist/layout/stack/index.d.ts.map +1 -0
  206. package/dist/layout/stack/stack.d.ts +62 -4
  207. package/dist/layout/stack/stack.d.ts.map +1 -0
  208. package/dist/link/index.d.ts +3 -2
  209. package/dist/link/index.d.ts.map +1 -0
  210. package/dist/link/link.d.ts +20 -2
  211. package/dist/link/link.d.ts.map +1 -0
  212. package/dist/list/index.d.ts +5 -5
  213. package/dist/list/index.d.ts.map +1 -0
  214. package/dist/list/link-list.d.ts +12 -2
  215. package/dist/list/link-list.d.ts.map +1 -0
  216. package/dist/list/list.d.ts +40 -3
  217. package/dist/list/list.d.ts.map +1 -0
  218. package/dist/message/index.d.ts +3 -3
  219. package/dist/message/index.d.ts.map +1 -0
  220. package/dist/message/index.js +36 -38
  221. package/dist/message/index.js.map +1 -1
  222. package/dist/message/index.mjs +5 -6
  223. package/dist/message/message.d.ts +36 -4
  224. package/dist/message/message.d.ts.map +1 -0
  225. package/dist/message/message.js +35 -32
  226. package/dist/message/message.js.map +1 -1
  227. package/dist/message/message.mjs +2 -2
  228. package/dist/modal/index.d.ts +3 -5
  229. package/dist/modal/index.d.ts.map +1 -0
  230. package/dist/modal/index.js +61 -63
  231. package/dist/modal/index.js.map +1 -1
  232. package/dist/modal/index.mjs +6 -7
  233. package/dist/modal/modal.d.ts +81 -5
  234. package/dist/modal/modal.d.ts.map +1 -0
  235. package/dist/modal/modal.js +60 -56
  236. package/dist/modal/modal.js.map +1 -1
  237. package/dist/modal/modal.mjs +3 -3
  238. package/dist/navbar/icons.d.ts +3 -2
  239. package/dist/navbar/icons.d.ts.map +1 -0
  240. package/dist/navbar/index.d.ts +4 -13
  241. package/dist/navbar/index.d.ts.map +1 -0
  242. package/dist/navbar/index.js +145 -146
  243. package/dist/navbar/index.js.map +1 -1
  244. package/dist/navbar/index.mjs +6 -7
  245. package/dist/navbar/navbar-expandable-menu.d.ts +35 -7
  246. package/dist/navbar/navbar-expandable-menu.d.ts.map +1 -0
  247. package/dist/navbar/navbar-expandable-menu.js +1 -1
  248. package/dist/navbar/navbar-expandable-menu.js.map +1 -1
  249. package/dist/navbar/navbar-expandable-menu.mjs +2 -2
  250. package/dist/navbar/navbar.d.ts +130 -9
  251. package/dist/navbar/navbar.d.ts.map +1 -0
  252. package/dist/navbar/navbar.js +237 -28
  253. package/dist/navbar/navbar.js.map +1 -1
  254. package/dist/navbar/navbar.mjs +4 -1
  255. package/dist/show-more/index.d.ts +5 -4
  256. package/dist/show-more/index.d.ts.map +1 -0
  257. package/dist/show-more/index.js +3 -3
  258. package/dist/show-more/index.js.map +1 -1
  259. package/dist/show-more/index.mjs +2 -2
  260. package/dist/show-more/show-more.d.ts +42 -2
  261. package/dist/show-more/show-more.d.ts.map +1 -0
  262. package/dist/skeleton/index.d.ts +3 -2
  263. package/dist/skeleton/index.d.ts.map +1 -0
  264. package/dist/skeleton/skeleton.d.ts +67 -2
  265. package/dist/skeleton/skeleton.d.ts.map +1 -0
  266. package/dist/step-indicator/index.d.ts +3 -1
  267. package/dist/step-indicator/index.d.ts.map +1 -0
  268. package/dist/step-indicator/step-indicator.d.ts +36 -1
  269. package/dist/step-indicator/step-indicator.d.ts.map +1 -0
  270. package/dist/styled-html/index.d.ts +3 -2
  271. package/dist/styled-html/index.d.ts.map +1 -0
  272. package/dist/styled-html/styled-html.d.ts +36 -2
  273. package/dist/styled-html/styled-html.d.ts.map +1 -0
  274. package/dist/table/index.d.ts +3 -1
  275. package/dist/table/index.d.ts.map +1 -0
  276. package/dist/table/table.d.ts +25 -1
  277. package/dist/table/table.d.ts.map +1 -0
  278. package/dist/tabs/context.d.ts +8 -3
  279. package/dist/tabs/context.d.ts.map +1 -0
  280. package/dist/tabs/index.d.ts +7 -10
  281. package/dist/tabs/index.d.ts.map +1 -0
  282. package/dist/tabs/index.js +35 -38
  283. package/dist/tabs/index.js.map +1 -1
  284. package/dist/tabs/index.mjs +6 -6
  285. package/dist/tabs/tabs-content.d.ts +26 -4
  286. package/dist/tabs/tabs-content.d.ts.map +1 -0
  287. package/dist/tabs/tabs-list.d.ts +21 -4
  288. package/dist/tabs/tabs-list.d.ts.map +1 -0
  289. package/dist/tabs/tabs-list.js +1 -1
  290. package/dist/tabs/tabs-list.js.map +1 -1
  291. package/dist/tabs/tabs-list.mjs +2 -2
  292. package/dist/tabs/tabs.d.ts +26 -2
  293. package/dist/tabs/tabs.d.ts.map +1 -0
  294. package/dist/tabs/tabs.js +205 -8
  295. package/dist/tabs/tabs.js.map +1 -1
  296. package/dist/tabs/tabs.mjs +4 -1
  297. package/dist/text/index.d.ts +4 -2
  298. package/dist/text/index.d.ts.map +1 -0
  299. package/dist/text/text.d.ts +58 -2
  300. package/dist/text/text.d.ts.map +1 -0
  301. package/dist/utils/auto-animate-height.d.ts +33 -0
  302. package/dist/utils/auto-animate-height.d.ts.map +1 -0
  303. package/dist/{utilities → utils}/auto-animate-height.js +3 -3
  304. package/dist/utils/auto-animate-height.js.map +1 -0
  305. package/dist/utils/auto-animate-height.mjs +9 -0
  306. package/dist/utils/auto-animate-height.mjs.map +1 -0
  307. package/dist/utils/index.d.ts +4 -0
  308. package/dist/utils/index.d.ts.map +1 -0
  309. package/dist/{utilities → utils}/index.js +81 -11
  310. package/dist/utils/index.js.map +1 -0
  311. package/dist/utils/index.mjs +19 -0
  312. package/dist/utils/index.mjs.map +1 -0
  313. package/dist/utils/utils.d.ts +24 -0
  314. package/dist/utils/utils.d.ts.map +1 -0
  315. package/dist/{utils.js → utils/utils.js} +1 -3
  316. package/dist/utils/utils.js.map +1 -0
  317. package/dist/utils/utils.mjs +14 -0
  318. package/dist/utils/utils.mjs.map +1 -0
  319. package/dist/warning-banner/index.d.ts +3 -2
  320. package/dist/warning-banner/index.d.ts.map +1 -0
  321. package/dist/warning-banner/index.js +16 -19
  322. package/dist/warning-banner/index.js.map +1 -1
  323. package/dist/warning-banner/index.mjs +3 -3
  324. package/dist/warning-banner/warning-banner.d.ts +8 -2
  325. package/dist/warning-banner/warning-banner.d.ts.map +1 -0
  326. package/dist/warning-banner/warning-banner.js +16 -19
  327. package/dist/warning-banner/warning-banner.js.map +1 -1
  328. package/dist/warning-banner/warning-banner.mjs +3 -3
  329. package/package.json +12 -8
  330. package/src/accordion/accordion-content.tsx +31 -0
  331. package/src/accordion/accordion-header.tsx +36 -0
  332. package/src/accordion/accordion-item.tsx +62 -0
  333. package/src/accordion/accordion.stories.tsx +154 -0
  334. package/src/accordion/accordion.tsx +68 -0
  335. package/src/accordion/context.ts +8 -0
  336. package/src/accordion/index.tsx +9 -0
  337. package/src/badge/badge.stories.tsx +44 -0
  338. package/src/badge/badge.tsx +63 -0
  339. package/src/badge/index.tsx +3 -0
  340. package/src/box/box.stories.tsx +112 -0
  341. package/src/box/box.tsx +122 -0
  342. package/src/box/index.tsx +3 -0
  343. package/src/breadcrumbs/breadcrumbs.stories.tsx +50 -0
  344. package/src/breadcrumbs/breadcrumbs.tsx +47 -0
  345. package/src/breadcrumbs/index.tsx +3 -0
  346. package/src/button/button.stories.tsx +104 -0
  347. package/src/button/button.tsx +87 -0
  348. package/src/button/index.tsx +3 -0
  349. package/src/card/card.stories.tsx +82 -0
  350. package/src/card/card.tsx +222 -0
  351. package/src/card/index.tsx +14 -0
  352. package/src/description-list/description-list.stories.tsx +95 -0
  353. package/src/description-list/description-list.tsx +61 -0
  354. package/src/description-list/index.tsx +2 -0
  355. package/src/footer/footer.tsx +169 -0
  356. package/src/footer/index.tsx +9 -0
  357. package/src/form/checkbox/checkbox.stories.tsx +104 -0
  358. package/src/form/checkbox/checkbox.tsx +82 -0
  359. package/src/form/checkbox/index.tsx +2 -0
  360. package/src/form/date-picker/date-picker.stories.tsx +27 -0
  361. package/src/form/date-picker/date-picker.tsx +85 -0
  362. package/src/form/date-picker/index.tsx +2 -0
  363. package/src/form/error-message/error-message.stories.tsx +19 -0
  364. package/src/form/error-message/error-message.tsx +25 -0
  365. package/src/form/error-message/index.tsx +2 -0
  366. package/src/form/fieldset/fieldset.stories.tsx +86 -0
  367. package/src/form/fieldset/fieldset.tsx +64 -0
  368. package/src/form/fieldset/index.tsx +2 -0
  369. package/src/form/index.tsx +8 -0
  370. package/src/form/input/index.tsx +2 -0
  371. package/src/form/input/input.stories.tsx +166 -0
  372. package/src/form/input/input.tsx +30 -0
  373. package/src/form/input-group/index.tsx +2 -0
  374. package/src/form/input-group/input-group.tsx +106 -0
  375. package/src/form/radiobutton/index.tsx +4 -0
  376. package/src/form/radiobutton/radiobutton.stories.tsx +93 -0
  377. package/src/form/radiobutton/radiobutton.tsx +85 -0
  378. package/src/form/radiobutton/radiogroup.stories.tsx +39 -0
  379. package/src/form/radiobutton/radiogroup.tsx +52 -0
  380. package/src/form/select/index.tsx +2 -0
  381. package/src/form/select/select.stories.tsx +93 -0
  382. package/src/form/select/select.tsx +33 -0
  383. package/src/form/textarea/index.tsx +2 -0
  384. package/src/form/textarea/textarea.stories.tsx +106 -0
  385. package/src/form/textarea/textarea.tsx +33 -0
  386. package/src/help-text/help-text.tsx +98 -0
  387. package/src/help-text/index.ts +2 -0
  388. package/src/index-no-css.tsx +25 -0
  389. package/src/index.tsx +11 -0
  390. package/src/layout/container/container.stories.tsx +62 -0
  391. package/src/layout/container/container.tsx +47 -0
  392. package/src/layout/grid/grid.tsx +163 -0
  393. package/src/layout/grid/index.tsx +3 -0
  394. package/src/layout/index.tsx +3 -0
  395. package/src/layout/responsive.ts +26 -0
  396. package/src/layout/spacing.ts +37 -0
  397. package/src/layout/stack/index.tsx +2 -0
  398. package/src/layout/stack/stack.tsx +128 -0
  399. package/src/link/index.tsx +3 -0
  400. package/src/link/link.stories.tsx +64 -0
  401. package/src/link/link.tsx +46 -0
  402. package/src/list/index.tsx +5 -0
  403. package/src/list/link-list.stories.tsx +38 -0
  404. package/src/list/link-list.tsx +26 -0
  405. package/src/list/list.stories.tsx +71 -0
  406. package/src/list/list.tsx +65 -0
  407. package/src/message/index.tsx +2 -0
  408. package/src/message/message.stories.tsx +93 -0
  409. package/src/message/message.tsx +89 -0
  410. package/src/modal/index.tsx +3 -0
  411. package/src/modal/modal.stories.tsx +147 -0
  412. package/src/modal/modal.tsx +199 -0
  413. package/src/navbar/icons.tsx +21 -0
  414. package/src/navbar/index.tsx +18 -0
  415. package/src/navbar/navbar-expandable-menu.tsx +176 -0
  416. package/src/navbar/navbar.stories.tsx +99 -0
  417. package/src/navbar/navbar.tsx +264 -0
  418. package/src/show-more/index.ts +5 -0
  419. package/src/show-more/show-more.stories.tsx +119 -0
  420. package/src/show-more/show-more.tsx +66 -0
  421. package/src/skeleton/index.ts +2 -0
  422. package/src/skeleton/skeleton.stories.tsx +152 -0
  423. package/src/skeleton/skeleton.tsx +114 -0
  424. package/src/step-indicator/index.ts +2 -0
  425. package/src/step-indicator/step-indicator.stories.tsx +50 -0
  426. package/src/step-indicator/step-indicator.tsx +116 -0
  427. package/src/styled-html/index.ts +2 -0
  428. package/src/styled-html/styled-html.stories.tsx +189 -0
  429. package/src/styled-html/styled-html.tsx +59 -0
  430. package/src/table/index.ts +2 -0
  431. package/src/table/table.tsx +59 -0
  432. package/src/tabs/context.ts +18 -0
  433. package/src/tabs/index.tsx +7 -0
  434. package/src/tabs/tabs-content.tsx +62 -0
  435. package/src/tabs/tabs-list.tsx +129 -0
  436. package/src/tabs/tabs.stories.tsx +138 -0
  437. package/src/tabs/tabs.tsx +50 -0
  438. package/src/text/index.tsx +4 -0
  439. package/src/text/text.stories.tsx +112 -0
  440. package/src/text/text.tsx +129 -0
  441. package/src/utils/auto-animate-height.tsx +139 -0
  442. package/src/utils/index.ts +4 -0
  443. package/src/utils/utils.ts +110 -0
  444. package/src/warning-banner/index.tsx +2 -0
  445. package/src/warning-banner/warning-banner.stories.tsx +43 -0
  446. package/src/warning-banner/warning-banner.tsx +79 -0
  447. package/dist/_tsup-dts-rollup.d.mts +0 -2600
  448. package/dist/_tsup-dts-rollup.d.ts +0 -2600
  449. package/dist/accordion/accordion-content.d.mts +0 -2
  450. package/dist/accordion/accordion-header.d.mts +0 -2
  451. package/dist/accordion/accordion-item.d.mts +0 -3
  452. package/dist/accordion/accordion.d.mts +0 -2
  453. package/dist/accordion/context.d.mts +0 -2
  454. package/dist/accordion/index.d.mts +0 -9
  455. package/dist/badge/badge.d.mts +0 -5
  456. package/dist/badge/index.d.mts +0 -6
  457. package/dist/box/box.d.mts +0 -4
  458. package/dist/box/index.d.mts +0 -4
  459. package/dist/breadcrumbs/breadcrumbs.d.mts +0 -2
  460. package/dist/breadcrumbs/index.d.mts +0 -2
  461. package/dist/button/button.d.mts +0 -3
  462. package/dist/button/index.d.mts +0 -3
  463. package/dist/card/card.d.mts +0 -12
  464. package/dist/card/index.d.mts +0 -12
  465. package/dist/chunk-3MQKXNZ6.mjs.map +0 -1
  466. package/dist/chunk-3NDUE23B.mjs +0 -19
  467. package/dist/chunk-3NDUE23B.mjs.map +0 -1
  468. package/dist/chunk-3NL3TOZF.mjs +0 -13
  469. package/dist/chunk-3NL3TOZF.mjs.map +0 -1
  470. package/dist/chunk-3ZFEUABU.mjs +0 -23
  471. package/dist/chunk-3ZFEUABU.mjs.map +0 -1
  472. package/dist/chunk-4WQWU5TL.mjs.map +0 -1
  473. package/dist/chunk-67TP3E2D.mjs.map +0 -1
  474. package/dist/chunk-6R7AXKBR.mjs.map +0 -1
  475. package/dist/chunk-722MZPXO.mjs +0 -13
  476. package/dist/chunk-722MZPXO.mjs.map +0 -1
  477. package/dist/chunk-7JRS4WEB.mjs.map +0 -1
  478. package/dist/chunk-CIHZDFSQ.mjs.map +0 -1
  479. package/dist/chunk-CYEYGPRH.mjs +0 -17
  480. package/dist/chunk-CYEYGPRH.mjs.map +0 -1
  481. package/dist/chunk-DEX36MFK.mjs.map +0 -1
  482. package/dist/chunk-DZNH5JHY.mjs +0 -1
  483. package/dist/chunk-ENKVTAJB.mjs.map +0 -1
  484. package/dist/chunk-F2C3KZFX.mjs.map +0 -1
  485. package/dist/chunk-GSJPTZT3.mjs.map +0 -1
  486. package/dist/chunk-IJAX6APL.mjs +0 -23
  487. package/dist/chunk-IJAX6APL.mjs.map +0 -1
  488. package/dist/chunk-IKJJWKXM.mjs +0 -15
  489. package/dist/chunk-IKJJWKXM.mjs.map +0 -1
  490. package/dist/chunk-KPGSRU4I.mjs.map +0 -1
  491. package/dist/chunk-PT5H3QV6.mjs +0 -29
  492. package/dist/chunk-PT5H3QV6.mjs.map +0 -1
  493. package/dist/chunk-TQDUBRCZ.mjs.map +0 -1
  494. package/dist/chunk-V6UKKHKD.mjs +0 -33
  495. package/dist/chunk-V6UKKHKD.mjs.map +0 -1
  496. package/dist/chunk-XUWZ4HGD.mjs.map +0 -1
  497. package/dist/description-list/description-list.d.mts +0 -2
  498. package/dist/description-list/index.d.mts +0 -2
  499. package/dist/footer/footer.d.mts +0 -7
  500. package/dist/footer/index.d.mts +0 -7
  501. package/dist/form/checkbox/checkbox.d.mts +0 -2
  502. package/dist/form/checkbox/index.d.mts +0 -2
  503. package/dist/form/date-picker/date-picker.d.mts +0 -2
  504. package/dist/form/date-picker/index.d.mts +0 -2
  505. package/dist/form/error-message/error-message.d.mts +0 -2
  506. package/dist/form/error-message/index.d.mts +0 -2
  507. package/dist/form/fieldset/fieldset.d.mts +0 -3
  508. package/dist/form/fieldset/index.d.mts +0 -3
  509. package/dist/form/index.d.mts +0 -20
  510. package/dist/form/input/index.d.mts +0 -2
  511. package/dist/form/input/input.d.mts +0 -2
  512. package/dist/form/input-group/index.d.mts +0 -2
  513. package/dist/form/input-group/input-group.d.mts +0 -2
  514. package/dist/form/radiobutton/index.d.mts +0 -5
  515. package/dist/form/radiobutton/radiobutton.d.mts +0 -2
  516. package/dist/form/radiobutton/radiogroup.d.mts +0 -3
  517. package/dist/form/select/index.d.mts +0 -2
  518. package/dist/form/select/select.d.mts +0 -2
  519. package/dist/form/textarea/index.d.mts +0 -2
  520. package/dist/form/textarea/textarea.d.mts +0 -2
  521. package/dist/help-text/help-text.d.mts +0 -1
  522. package/dist/help-text/index.d.mts +0 -1
  523. package/dist/index-no-css.d.mts +0 -128
  524. package/dist/index.d.mts +0 -128
  525. package/dist/layout/container/container.d.mts +0 -2
  526. package/dist/layout/grid/grid.d.mts +0 -4
  527. package/dist/layout/grid/index.d.mts +0 -4
  528. package/dist/layout/index.d.mts +0 -10
  529. package/dist/layout/responsive.d.mts +0 -2
  530. package/dist/layout/spacing.d.mts +0 -3
  531. package/dist/layout/stack/index.d.mts +0 -4
  532. package/dist/layout/stack/stack.d.mts +0 -4
  533. package/dist/link/index.d.mts +0 -2
  534. package/dist/link/link.d.mts +0 -2
  535. package/dist/list/index.d.mts +0 -5
  536. package/dist/list/link-list.d.mts +0 -2
  537. package/dist/list/list.d.mts +0 -3
  538. package/dist/message/index.d.mts +0 -3
  539. package/dist/message/message.d.mts +0 -4
  540. package/dist/modal/index.d.mts +0 -5
  541. package/dist/modal/modal.d.mts +0 -5
  542. package/dist/navbar/icons.d.mts +0 -2
  543. package/dist/navbar/index.d.mts +0 -13
  544. package/dist/navbar/navbar-expandable-menu.d.mts +0 -7
  545. package/dist/navbar/navbar.d.mts +0 -9
  546. package/dist/show-more/index.d.mts +0 -4
  547. package/dist/show-more/show-more.d.mts +0 -2
  548. package/dist/skeleton/index.d.mts +0 -2
  549. package/dist/skeleton/skeleton.d.mts +0 -2
  550. package/dist/step-indicator/index.d.mts +0 -1
  551. package/dist/step-indicator/step-indicator.d.mts +0 -1
  552. package/dist/styled-html/index.d.mts +0 -2
  553. package/dist/styled-html/styled-html.d.mts +0 -2
  554. package/dist/table/index.d.mts +0 -1
  555. package/dist/table/table.d.mts +0 -1
  556. package/dist/tabs/context.d.mts +0 -3
  557. package/dist/tabs/index.d.mts +0 -10
  558. package/dist/tabs/tabs-content.d.mts +0 -4
  559. package/dist/tabs/tabs-list.d.mts +0 -4
  560. package/dist/tabs/tabs.d.mts +0 -2
  561. package/dist/text/index.d.mts +0 -2
  562. package/dist/text/text.d.mts +0 -2
  563. package/dist/utilities/auto-animate-height.d.mts +0 -2
  564. package/dist/utilities/auto-animate-height.d.ts +0 -2
  565. package/dist/utilities/auto-animate-height.js.map +0 -1
  566. package/dist/utilities/auto-animate-height.mjs +0 -9
  567. package/dist/utilities/index.d.mts +0 -2
  568. package/dist/utilities/index.d.ts +0 -2
  569. package/dist/utilities/index.js.map +0 -1
  570. package/dist/utilities/index.mjs +0 -10
  571. package/dist/utils.d.mts +0 -5
  572. package/dist/utils.d.ts +0 -5
  573. package/dist/utils.js.map +0 -1
  574. package/dist/utils.mjs +0 -16
  575. package/dist/warning-banner/index.d.mts +0 -2
  576. package/dist/warning-banner/warning-banner.d.mts +0 -2
  577. /package/dist/{chunk-DZNH5JHY.mjs.map → chunk-7YWW46R3.mjs.map} +0 -0
  578. /package/dist/{utilities/auto-animate-height.mjs.map → chunk-ARHJZUZG.mjs.map} +0 -0
  579. /package/dist/{utilities/index.mjs.map → chunk-BCFV6VOE.mjs.map} +0 -0
  580. /package/dist/{utils.mjs.map → chunk-CYDWEPFL.mjs.map} +0 -0
@@ -49,7 +49,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
49
49
  // src/footer/index.tsx
50
50
  var footer_exports = {};
51
51
  __export(footer_exports, {
52
- Footer: () => FooterComponent,
52
+ Footer: () => Footer,
53
53
  FooterButtonLink: () => FooterButtonLink,
54
54
  FooterLinkSection: () => FooterLinkSection,
55
55
  FooterLinkSections: () => FooterLinkSections,
@@ -63,42 +63,23 @@ var import_typed_classname8 = require("@postenbring/hedwig-css/typed-classname")
63
63
  var import_react_slot2 = require("@radix-ui/react-slot");
64
64
 
65
65
  // src/accordion/accordion.tsx
66
- var import_react = require("react");
67
- var import_typed_classname = require("@postenbring/hedwig-css/typed-classname");
68
- var import_jsx_runtime = require("react/jsx-runtime");
69
- var Accordion = (0, import_react.forwardRef)(
70
- (_a, ref) => {
71
- var _b = _a, { children, className, indent = true } = _b, rest = __objRest(_b, ["children", "className", "indent"]);
72
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
73
- "div",
74
- __spreadProps(__spreadValues({}, rest), {
75
- className: (0, import_typed_classname.clsx)(
76
- "hds-accordion",
77
- !indent && "hds-accordion--no-indent",
78
- className
79
- ),
80
- ref,
81
- children
82
- })
83
- );
84
- }
85
- );
86
- Accordion.displayName = "Accordion";
66
+ var import_react5 = require("react");
67
+ var import_typed_classname4 = require("@postenbring/hedwig-css/typed-classname");
87
68
 
88
69
  // src/accordion/accordion-item.tsx
89
- var import_react3 = require("react");
90
- var import_typed_classname2 = require("@postenbring/hedwig-css/typed-classname");
70
+ var import_react2 = require("react");
71
+ var import_typed_classname = require("@postenbring/hedwig-css/typed-classname");
91
72
 
92
73
  // src/accordion/context.ts
93
- var import_react2 = require("react");
94
- var AccordionItemContext = (0, import_react2.createContext)(null);
74
+ var import_react = require("react");
75
+ var AccordionItemContext = (0, import_react.createContext)(null);
95
76
 
96
77
  // src/accordion/accordion-item.tsx
97
- var import_jsx_runtime2 = require("react/jsx-runtime");
98
- var AccordionItem = (0, import_react3.forwardRef)(
78
+ var import_jsx_runtime = require("react/jsx-runtime");
79
+ var AccordionItem = (0, import_react2.forwardRef)(
99
80
  (_a, ref) => {
100
81
  var _b = _a, { children, defaultOpen, open: outerOpen, onOpenChange, className } = _b, rest = __objRest(_b, ["children", "defaultOpen", "open", "onOpenChange", "className"]);
101
- const [innerOpen, setInnerOpen] = (0, import_react3.useState)(defaultOpen != null ? defaultOpen : false);
82
+ const [innerOpen, setInnerOpen] = (0, import_react2.useState)(defaultOpen != null ? defaultOpen : false);
102
83
  const open = outerOpen != null ? outerOpen : innerOpen;
103
84
  const handleOpen = () => {
104
85
  if (outerOpen !== void 0) {
@@ -107,13 +88,13 @@ var AccordionItem = (0, import_react3.forwardRef)(
107
88
  setInnerOpen(!open);
108
89
  }
109
90
  };
110
- return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
91
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
111
92
  "div",
112
93
  __spreadProps(__spreadValues({}, rest), {
113
94
  "data-state": open ? "open" : "closed",
114
- className: (0, import_typed_classname2.clsx)("hds-accordion-item", className),
95
+ className: (0, import_typed_classname.clsx)("hds-accordion-item", className),
115
96
  ref,
116
- children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(AccordionItemContext.Provider, { value: { open, setOpen: handleOpen }, children })
97
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(AccordionItemContext.Provider, { value: { open, setOpen: handleOpen }, children })
117
98
  })
118
99
  );
119
100
  }
@@ -121,13 +102,13 @@ var AccordionItem = (0, import_react3.forwardRef)(
121
102
  AccordionItem.displayName = "Accordion.Item";
122
103
 
123
104
  // src/accordion/accordion-header.tsx
124
- var import_react4 = require("react");
125
- var import_typed_classname3 = require("@postenbring/hedwig-css/typed-classname");
126
- var import_jsx_runtime3 = require("react/jsx-runtime");
127
- var AccordionHeader = (0, import_react4.forwardRef)(
105
+ var import_react3 = require("react");
106
+ var import_typed_classname2 = require("@postenbring/hedwig-css/typed-classname");
107
+ var import_jsx_runtime2 = require("react/jsx-runtime");
108
+ var AccordionHeader = (0, import_react3.forwardRef)(
128
109
  (_a, ref) => {
129
110
  var _b = _a, { children, className, onClick } = _b, rest = __objRest(_b, ["children", "className", "onClick"]);
130
- const context = (0, import_react4.useContext)(AccordionItemContext);
111
+ const context = (0, import_react3.useContext)(AccordionItemContext);
131
112
  if (context === null) {
132
113
  return null;
133
114
  }
@@ -135,16 +116,16 @@ var AccordionHeader = (0, import_react4.forwardRef)(
135
116
  context.setOpen(!context.open);
136
117
  onClick == null ? void 0 : onClick(e);
137
118
  };
138
- return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
119
+ return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
139
120
  "button",
140
121
  __spreadProps(__spreadValues({}, rest), {
141
122
  "aria-expanded": context.open,
142
123
  "data-state": context.open ? "open" : "closed",
143
- className: (0, import_typed_classname3.clsx)("hds-accordion-item-header", className),
124
+ className: (0, import_typed_classname2.clsx)("hds-accordion-item-header", className),
144
125
  onClick: expandOrCollapse,
145
126
  ref,
146
127
  type: "button",
147
- children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("span", { children })
128
+ children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { children })
148
129
  })
149
130
  );
150
131
  }
@@ -152,37 +133,55 @@ var AccordionHeader = (0, import_react4.forwardRef)(
152
133
  AccordionHeader.displayName = "Accordion.Header";
153
134
 
154
135
  // src/accordion/accordion-content.tsx
155
- var import_react5 = require("react");
156
- var import_typed_classname4 = require("@postenbring/hedwig-css/typed-classname");
157
- var import_jsx_runtime4 = require("react/jsx-runtime");
158
- var AccordionContent = (0, import_react5.forwardRef)(
136
+ var import_react4 = require("react");
137
+ var import_typed_classname3 = require("@postenbring/hedwig-css/typed-classname");
138
+ var import_jsx_runtime3 = require("react/jsx-runtime");
139
+ var AccordionContent = (0, import_react4.forwardRef)(
159
140
  (_a, ref) => {
160
141
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
161
- const context = (0, import_react5.useContext)(AccordionItemContext);
142
+ const context = (0, import_react4.useContext)(AccordionItemContext);
162
143
  if (context === null) {
163
144
  return null;
164
145
  }
165
- return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
146
+ return /* @__PURE__ */ (0, import_jsx_runtime3.jsx)(
166
147
  "div",
167
148
  __spreadProps(__spreadValues(__spreadProps(__spreadValues({
168
149
  "aria-hidden": !context.open,
169
150
  "data-state": context.open ? "open" : "closed"
170
151
  }, { inert: context.open ? void 0 : "true" }), {
171
- className: (0, import_typed_classname4.clsx)("hds-accordion-item-content", className),
152
+ className: (0, import_typed_classname3.clsx)("hds-accordion-item-content", className),
172
153
  ref
173
154
  }), rest), {
174
- children: /* @__PURE__ */ (0, import_jsx_runtime4.jsx)("div", { className: (0, import_typed_classname4.clsx)("hds-accordion-item-content-inner"), children })
155
+ children: /* @__PURE__ */ (0, import_jsx_runtime3.jsx)("div", { className: (0, import_typed_classname3.clsx)("hds-accordion-item-content-inner"), children })
175
156
  })
176
157
  );
177
158
  }
178
159
  );
179
160
  AccordionContent.displayName = "Accordion.Content";
180
161
 
181
- // src/accordion/index.tsx
182
- var AccordionComponent = Accordion;
183
- AccordionComponent.Item = AccordionItem;
184
- AccordionComponent.Header = AccordionHeader;
185
- AccordionComponent.Content = AccordionContent;
162
+ // src/accordion/accordion.tsx
163
+ var import_jsx_runtime4 = require("react/jsx-runtime");
164
+ var Accordion = (0, import_react5.forwardRef)(
165
+ (_a, ref) => {
166
+ var _b = _a, { children, className, indent = true } = _b, rest = __objRest(_b, ["children", "className", "indent"]);
167
+ return /* @__PURE__ */ (0, import_jsx_runtime4.jsx)(
168
+ "div",
169
+ __spreadProps(__spreadValues({}, rest), {
170
+ className: (0, import_typed_classname4.clsx)(
171
+ "hds-accordion",
172
+ !indent && "hds-accordion--no-indent",
173
+ className
174
+ ),
175
+ ref,
176
+ children
177
+ })
178
+ );
179
+ }
180
+ );
181
+ Accordion.displayName = "Accordion";
182
+ Accordion.Item = AccordionItem;
183
+ Accordion.Header = AccordionHeader;
184
+ Accordion.Content = AccordionContent;
186
185
 
187
186
  // src/list/link-list.tsx
188
187
  var import_typed_classname6 = require("@postenbring/hedwig-css/typed-classname");
@@ -296,26 +295,6 @@ SecondaryButton.displayName = "SecondaryButton";
296
295
 
297
296
  // src/footer/footer.tsx
298
297
  var import_jsx_runtime8 = require("react/jsx-runtime");
299
- var Footer = (0, import_react9.forwardRef)(
300
- (_a, ref) => {
301
- var _b = _a, { children, className, variant, asChild } = _b, rest = __objRest(_b, ["children", "className", "variant", "asChild"]);
302
- const Component = asChild ? import_react_slot2.Slot : "footer";
303
- return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
304
- Component,
305
- __spreadProps(__spreadValues({
306
- className: (0, import_typed_classname8.clsx)(
307
- `hds-footer`,
308
- variant === "slim" && "hds-footer--slim",
309
- className
310
- ),
311
- ref
312
- }, rest), {
313
- children
314
- })
315
- );
316
- }
317
- );
318
- Footer.displayName = "Footer";
319
298
  var FooterLogo = (0, import_react9.forwardRef)(
320
299
  (_a, ref) => {
321
300
  var _b = _a, { children, className, asChild } = _b, rest = __objRest(_b, ["children", "className", "asChild"]);
@@ -336,7 +315,7 @@ var FooterLinkSections = (0, import_react9.forwardRef)(
336
315
  (_a, ref) => {
337
316
  var _b = _a, { children, className } = _b, rest = __objRest(_b, ["children", "className"]);
338
317
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(import_jsx_runtime8.Fragment, { children: /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
339
- AccordionComponent,
318
+ Accordion,
340
319
  __spreadProps(__spreadValues({
341
320
  className: (0, import_typed_classname8.clsx)("hds-footer__link-sections", className),
342
321
  ref
@@ -353,14 +332,14 @@ var FooterLinkSection = (0, import_react9.forwardRef)(
353
332
  const linkListChildren = /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(LinkList, { children });
354
333
  return /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(import_jsx_runtime8.Fragment, { children: [
355
334
  /* @__PURE__ */ (0, import_jsx_runtime8.jsxs)(
356
- AccordionComponent.Item,
335
+ Accordion.Item,
357
336
  __spreadProps(__spreadValues({
358
337
  className: (0, import_typed_classname8.clsx)(`hds-footer__link-section`, className),
359
338
  ref
360
339
  }, rest), {
361
340
  children: [
362
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(AccordionComponent.Header, { children: heading }),
363
- /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(AccordionComponent.Content, { children: linkListChildren })
341
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Accordion.Header, { children: heading }),
342
+ /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(Accordion.Content, { children: linkListChildren })
364
343
  ]
365
344
  })
366
345
  ),
@@ -372,13 +351,30 @@ var FooterLinkSection = (0, import_react9.forwardRef)(
372
351
  }
373
352
  );
374
353
  FooterLinkSection.displayName = "Footer.LinkSection";
375
-
376
- // src/footer/index.tsx
377
- var FooterComponent = Footer;
378
- FooterComponent.Logo = FooterLogo;
379
- FooterComponent.ButtonLink = FooterButtonLink;
380
- FooterComponent.LinkSections = FooterLinkSections;
381
- FooterComponent.LinkSection = FooterLinkSection;
354
+ var Footer = (0, import_react9.forwardRef)(
355
+ (_a, ref) => {
356
+ var _b = _a, { children, className, variant, asChild } = _b, rest = __objRest(_b, ["children", "className", "variant", "asChild"]);
357
+ const Component = asChild ? import_react_slot2.Slot : "footer";
358
+ return /* @__PURE__ */ (0, import_jsx_runtime8.jsx)(
359
+ Component,
360
+ __spreadProps(__spreadValues({
361
+ className: (0, import_typed_classname8.clsx)(
362
+ `hds-footer`,
363
+ variant === "slim" && "hds-footer--slim",
364
+ className
365
+ ),
366
+ ref
367
+ }, rest), {
368
+ children
369
+ })
370
+ );
371
+ }
372
+ );
373
+ Footer.displayName = "Footer";
374
+ Footer.Logo = FooterLogo;
375
+ Footer.ButtonLink = FooterButtonLink;
376
+ Footer.LinkSections = FooterLinkSections;
377
+ Footer.LinkSection = FooterLinkSection;
382
378
  // Annotate the CommonJS export names for ESM import in node:
383
379
  0 && (module.exports = {
384
380
  Footer,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/footer/index.tsx","../../src/footer/footer.tsx","../../src/accordion/accordion.tsx","../../src/accordion/accordion-item.tsx","../../src/accordion/context.ts","../../src/accordion/accordion-header.tsx","../../src/accordion/accordion-content.tsx","../../src/accordion/index.tsx","../../src/list/link-list.tsx","../../src/list/list.tsx","../../src/button/button.tsx"],"sourcesContent":["import {\n Footer,\n FooterLogo,\n FooterButtonLink,\n FooterLinkSections,\n FooterLinkSection,\n} from \"./footer\";\n\nconst FooterComponent = Footer as typeof Footer & {\n Logo: typeof FooterLogo;\n ButtonLink: typeof FooterButtonLink;\n LinkSections: typeof FooterLinkSections;\n LinkSection: typeof FooterLinkSection;\n};\nFooterComponent.Logo = FooterLogo;\nFooterComponent.ButtonLink = FooterButtonLink;\nFooterComponent.LinkSections = FooterLinkSections;\nFooterComponent.LinkSection = FooterLinkSection;\n\nexport {\n FooterComponent as Footer,\n FooterLogo,\n FooterButtonLink,\n FooterLinkSections,\n FooterLinkSection,\n};\nexport type * from \"./footer\";\n","import { forwardRef, type HTMLAttributes, type ReactElement } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { Accordion } from \"../accordion\";\nimport { LinkList } from \"../list/link-list\";\nimport { PrimaryButton } from \"../button\";\n\nexport interface FooterProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Footer variant\n *\n * @default \"default\"\n */\n variant?: \"default\" | \"slim\";\n\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n *\n * @default false\n */\n asChild?: boolean;\n}\n\n/**\n * 🚨 WORK IN PROGRESS 🚨\n */\nexport const Footer = forwardRef<HTMLDivElement, FooterProps>(\n ({ children, className, variant, asChild, ...rest }, ref) => {\n const Component = asChild ? Slot : \"footer\";\n return (\n <Component\n className={clsx(\n `hds-footer`,\n variant === \"slim\" && \"hds-footer--slim\",\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {children}\n </Component>\n );\n },\n);\nFooter.displayName = \"Footer\";\n\ninterface FooterLogoProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n *\n * @default false\n */\n asChild?: boolean;\n}\n\n/**\n * A fixed Posten or Bring logo.\n *\n * The logo follows the brand theme, so if the class `hds-theme-bring` is set the Bring logo will be shown instead of the Posten logo\n */\nexport const FooterLogo = forwardRef<HTMLDivElement, FooterLogoProps>(\n ({ children, className, asChild, ...rest }, ref) => {\n const Component = asChild ? Slot : \"div\";\n return (\n <Component className={clsx(`hds-footer__logo`, className as undefined)} ref={ref} {...rest}>\n {children}\n </Component>\n );\n },\n);\nFooterLogo.displayName = \"Footer.Logo\";\n\nexport interface FooterButtonLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n *\n * @default false\n */\n asChild?: boolean;\n}\n\n/**\n * 🚨 WORK IN PROGRESS 🚨\n */\nexport const FooterButtonLink = forwardRef<HTMLAnchorElement, FooterButtonLinkProps>(\n ({ children, className, asChild, ...rest }, ref) => {\n const Component = asChild ? Slot : \"a\";\n return (\n <PrimaryButton asChild fill=\"outline\" className={clsx(className as undefined)}>\n <Component ref={ref} {...rest}>\n {children}\n </Component>\n </PrimaryButton>\n );\n },\n);\nFooterButtonLink.displayName = \"FooterButton\";\n\ninterface FooterLinkSectionsProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactElement<FooterLinkSectionProps> | ReactElement<FooterLinkSectionProps>[];\n}\n\n/**\n * Responsive sections of links. Will become an accordion on mobile.\n *\n * Use with {@link FooterLinkSection} for each section.\n */\nexport const FooterLinkSections = forwardRef<HTMLDivElement, FooterLinkSectionsProps>(\n ({ children, className, ...rest }, ref) => {\n return (\n <>\n {/* Mobile and Desktop. The accordion styling gets removed on desktop */}\n <Accordion\n className={clsx(\"hds-footer__link-sections\", className as undefined)}\n ref={ref}\n {...rest}\n >\n {/* @ts-expect-error -- It's ok */}\n {children}\n </Accordion>\n </>\n );\n },\n);\nFooterLinkSections.displayName = \"Footer.LinkSections\";\n\ninterface FooterLinkSectionProps extends HTMLAttributes<HTMLDivElement> {\n heading: React.ReactNode;\n children: React.ReactNode;\n}\n\nexport const FooterLinkSection = forwardRef<HTMLDivElement, FooterLinkSectionProps>(\n ({ heading, children, className, ...rest }, ref) => {\n // @ts-expect-error -- It's ok\n const linkListChildren = <LinkList>{children}</LinkList>;\n return (\n <>\n {/* Mobile */}\n <Accordion.Item\n className={clsx(`hds-footer__link-section`, className as undefined)}\n ref={ref}\n {...rest}\n >\n <Accordion.Header>{heading}</Accordion.Header>\n <Accordion.Content>{linkListChildren}</Accordion.Content>\n </Accordion.Item>\n\n {/* Desktop */}\n <div className={clsx(`hds-footer__link-section`, className as undefined)}>\n <h2>{heading}</h2>\n {linkListChildren}\n </div>\n </>\n );\n },\n);\nFooterLinkSection.displayName = \"Footer.LinkSection\";\n","import type { HTMLAttributes, ReactElement } from \"react\";\nimport { forwardRef } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport type { AccordionItemProps } from \"./accordion-item\";\n\nexport interface AccordionProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Accepts type of <AccordionItem/>\n */\n children: ReactElement<AccordionItemProps> | ReactElement<AccordionItemProps>[];\n\n /**\n * Adds padding to the left of the accordion\n */\n indent?: boolean;\n}\n\nexport const Accordion = forwardRef<HTMLDivElement, AccordionProps>(\n ({ children, className, indent = true, ...rest }, ref) => {\n return (\n <div\n {...rest}\n className={clsx(\n \"hds-accordion\",\n !indent && \"hds-accordion--no-indent\",\n className as undefined,\n )}\n ref={ref}\n >\n {children}\n </div>\n );\n },\n);\n\nAccordion.displayName = \"Accordion\";\n","import type { ReactElement } from \"react\";\nimport { forwardRef, useState } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { AccordionItemContext } from \"./context\";\nimport type { AccordionHeaderProps } from \"./accordion-header\";\nimport type { AccordionContentProps } from \"./accordion-content\";\n\nexport type AccordionItemChildrenType =\n | ReactElement<AccordionHeaderProps>\n | ReactElement<AccordionContentProps>;\n\nexport interface AccordionItemProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Control the open state of the accordion manually\n */\n open?: boolean;\n\n /**\n * Use with open to control the open state of the accordion manually\n */\n onOpenChange?: (open: boolean) => void;\n\n /**\n * If the accordion should be open by default\n */\n defaultOpen?: boolean;\n\n /**\n * Accepts type of Accordion.Content and Accordion.Header\n */\n children: AccordionItemChildrenType[];\n}\n\nexport const AccordionItem = forwardRef<HTMLDivElement, AccordionItemProps>(\n ({ children, defaultOpen, open: outerOpen, onOpenChange, className, ...rest }, ref) => {\n const [innerOpen, setInnerOpen] = useState(defaultOpen ?? false);\n const open = outerOpen ?? innerOpen;\n\n const handleOpen = () => {\n if (outerOpen !== undefined) {\n onOpenChange && onOpenChange(!open);\n } else {\n setInnerOpen(!open);\n }\n };\n\n return (\n <div\n {...rest}\n data-state={open ? \"open\" : \"closed\"}\n className={clsx(\"hds-accordion-item\", className as undefined)}\n ref={ref}\n >\n <AccordionItemContext.Provider value={{ open, setOpen: handleOpen }}>\n {children}\n </AccordionItemContext.Provider>\n </div>\n );\n },\n);\n\nAccordionItem.displayName = \"Accordion.Item\";\n","import { createContext } from \"react\";\n\nexport interface AccordionItemContextProps {\n open: boolean;\n setOpen: (open: boolean) => void;\n}\n\nexport const AccordionItemContext = createContext<AccordionItemContextProps | null>(null);\n","import type { MouseEvent, ReactNode } from \"react\";\nimport { forwardRef, useContext } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { AccordionItemContext } from \"./context\";\n\nexport interface AccordionHeaderProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n children: ReactNode;\n}\n\nexport const AccordionHeader = forwardRef<HTMLButtonElement, AccordionHeaderProps>(\n ({ children, className, onClick, ...rest }, ref) => {\n const context = useContext(AccordionItemContext);\n if (context === null) {\n return null;\n }\n const expandOrCollapse = (e: MouseEvent<HTMLButtonElement>) => {\n context.setOpen(!context.open);\n onClick?.(e);\n };\n return (\n <button\n {...rest}\n aria-expanded={context.open}\n data-state={context.open ? \"open\" : \"closed\"}\n className={clsx(\"hds-accordion-item-header\", className as undefined)}\n onClick={expandOrCollapse}\n ref={ref}\n type=\"button\"\n >\n <span>{children}</span>\n </button>\n );\n },\n);\n\nAccordionHeader.displayName = \"Accordion.Header\";\n","import type { ReactNode } from \"react\";\nimport { forwardRef, useContext } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { AccordionItemContext } from \"./context\";\n\nexport interface AccordionContentProps extends React.HTMLAttributes<HTMLDivElement> {\n children: ReactNode;\n}\n\nexport const AccordionContent = forwardRef<HTMLDivElement, AccordionContentProps>(\n ({ children, className, ...rest }, ref) => {\n const context = useContext(AccordionItemContext);\n if (context === null) {\n return null;\n }\n return (\n <div\n aria-hidden={!context.open}\n data-state={context.open ? \"open\" : \"closed\"}\n {...{ inert: context.open ? undefined : \"true\" }}\n className={clsx(\"hds-accordion-item-content\", className as undefined)}\n ref={ref}\n {...rest}\n >\n <div className={clsx(\"hds-accordion-item-content-inner\")}>{children}</div>\n </div>\n );\n },\n);\n\nAccordionContent.displayName = \"Accordion.Content\";\n","import { Accordion } from \"./accordion\";\nimport { AccordionItem } from \"./accordion-item\";\nimport { AccordionHeader } from \"./accordion-header\";\nimport { AccordionContent } from \"./accordion-content\";\n\nconst AccordionComponent = Accordion as typeof Accordion & {\n Item: typeof AccordionItem;\n Header: typeof AccordionHeader;\n Content: typeof AccordionContent;\n};\n\nAccordionComponent.Item = AccordionItem;\nAccordionComponent.Header = AccordionHeader;\nAccordionComponent.Content = AccordionContent;\n\nexport { AccordionComponent as Accordion, AccordionItem, AccordionHeader, AccordionContent };\n\nexport type * from \"./accordion\";\nexport type * from \"./accordion-item\";\nexport type * from \"./accordion-header\";\nexport type * from \"./accordion-content\";\n","import { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { forwardRef } from \"react\";\nimport type { ListProps } from \"./list\";\nimport { UnorderedList } from \"./list\";\n\nexport interface LinkListProps extends Omit<ListProps, \"listStyle\"> {\n children?: React.ReactElement<HTMLLIElement> | React.ReactElement<HTMLLIElement>[];\n}\n\n/**\n * Show a list of links\n *\n * For other list types use `UnorderedList` and `OrderedList`, or use your own list component using the semantic `ul` and `ol` tags.\n */\nexport const LinkList = forwardRef<HTMLUListElement, LinkListProps>(\n ({ className, ...rest }, ref) => {\n return (\n <UnorderedList\n ref={ref}\n className={clsx(\"hds-list--link-list\", className as undefined)}\n {...rest}\n />\n );\n },\n);\nLinkList.displayName = \"LinkList\";\n","import { forwardRef, type HTMLAttributes } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\n\nexport interface ListProps extends HTMLAttributes<HTMLOListElement | HTMLUListElement> {\n /**\n * Sets the size of the items (font)\n *\n * @default \"medium\"\n */\n size?: \"small\" | \"medium\" | \"large\";\n}\n\n/**\n * An unordered list of simple items, often text. You can nest other lists inside this component.\n *\n * If you have other list needs, you can build your own using the semantic `ul` and `ol` tags.\n *\n * @example\n * ```tsx\n * <UnorderedList>\n * <li>Item 1</li>\n * <li>Item 2</li>\n * <li>Item 3</li>\n * </UnorderedList>\n * ```\n */\nexport const UnorderedList = forwardRef<HTMLUListElement, ListProps>(\n ({ size = \"medium\", className, ...rest }, ref) => {\n return (\n <ul\n ref={ref}\n className={clsx(\"hds-list\", `hds-list--${size}`, className as undefined)}\n {...rest}\n />\n );\n },\n);\nUnorderedList.displayName = \"UnorderedList\";\n\n/**\n * An ordered list of simple items\n *\n * If you have other list needs, you can build your own using the semantic `ul` and `ol` tags.\n *\n * @example\n * ```tsx\n * <OrderedList>\n * <li>Item 1</li>\n * <li>Item 2</li>\n * <li>Item 3</li>\n * </OrderedList>\n * ```\n */\nexport const OrderedList = forwardRef<HTMLOListElement, ListProps>(\n ({ size = \"medium\", className, ...rest }, ref) => {\n return (\n <ol\n ref={ref}\n className={clsx(\"hds-list\", `hds-list--${size}`, className as undefined)}\n {...rest}\n />\n );\n },\n);\nOrderedList.displayName = \"OrderedList\";\n","import { forwardRef } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nexport interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n /**\n * The height, font size and padding of the button\n */\n size?: \"small\" | \"medium\" | \"large\";\n\n /**\n * The background fill of the button\n *\n * @default \"contained\"\n */\n fill?: \"contained\" | \"outline\";\n\n /**\n * Make the button use 100% width available.\n * Using the \"mobile\" it only stretch to full width on smaller screens\n */\n fullWidth?: boolean | \"mobile\";\n\n /**\n * Use the button as an icon button\n *\n * Render the icon in `children`\n */\n icon?: boolean;\n\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n *\n * @default false\n */\n asChild?: boolean;\n}\n\nconst Button = forwardRef<HTMLButtonElement, ButtonProps & { variant: \"primary\" | \"secondary\" }>(\n (\n {\n asChild,\n children,\n variant,\n size = \"medium\",\n fullWidth = false,\n fill = \"contained\",\n icon,\n className,\n ...rest\n },\n ref,\n ) => {\n const Component = asChild ? Slot : \"button\";\n return (\n <Component\n className={clsx(\n \"hds-button\",\n `hds-button--${size}`,\n {\n [`hds-button--${variant}`]: fill === \"contained\",\n [`hds-button--outline-${variant}`]: fill === \"outline\",\n \"hds-button--full\": fullWidth === true,\n \"hds-button--mobile-full\": fullWidth === \"mobile\",\n \"hds-button--icon-only\": icon,\n },\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {children}\n </Component>\n );\n },\n);\nButton.displayName = \"Button\";\n\nexport const PrimaryButton = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n return <Button {...props} ref={ref} variant=\"primary\" />;\n});\nPrimaryButton.displayName = \"PrimaryButton\";\n\nexport const SecondaryButton = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n return <Button {...props} ref={ref} variant=\"secondary\" />;\n});\nSecondaryButton.displayName = \"SecondaryButton\";\n"],"mappings":"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","names":["import_react","import_typed_classname","import_react_slot","import_react","import_typed_classname","import_react","import_jsx_runtime","import_react","import_typed_classname","import_jsx_runtime","import_react","import_typed_classname","import_jsx_runtime","import_typed_classname","import_react","import_react","import_typed_classname","import_jsx_runtime","import_jsx_runtime","import_react","import_typed_classname","import_jsx_runtime","import_jsx_runtime"]}
1
+ {"version":3,"sources":["../../src/footer/index.tsx","../../src/footer/footer.tsx","../../src/accordion/accordion.tsx","../../src/accordion/accordion-item.tsx","../../src/accordion/context.ts","../../src/accordion/accordion-header.tsx","../../src/accordion/accordion-content.tsx","../../src/list/link-list.tsx","../../src/list/list.tsx","../../src/button/button.tsx"],"sourcesContent":["export {\n Footer,\n FooterLogo,\n FooterButtonLink,\n FooterLinkSections,\n FooterLinkSection,\n} from \"./footer\";\n\nexport type * from \"./footer\";\n","import { forwardRef, type HTMLAttributes, type ReactElement } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { Accordion } from \"../accordion\";\nimport { LinkList } from \"../list/link-list\";\nimport { PrimaryButton } from \"../button\";\n\ninterface FooterLogoProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n *\n * @default false\n */\n asChild?: boolean;\n}\n\n/**\n * A fixed Posten or Bring logo.\n *\n * The logo follows the brand theme, so if the class `hds-theme-bring` is set the Bring logo will be shown instead of the Posten logo\n */\nexport const FooterLogo = forwardRef<HTMLDivElement, FooterLogoProps>(\n ({ children, className, asChild, ...rest }, ref) => {\n const Component = asChild ? Slot : \"div\";\n return (\n <Component className={clsx(`hds-footer__logo`, className as undefined)} ref={ref} {...rest}>\n {children}\n </Component>\n );\n },\n);\nFooterLogo.displayName = \"Footer.Logo\";\n\nexport interface FooterButtonLinkProps extends React.AnchorHTMLAttributes<HTMLAnchorElement> {\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n *\n * @default false\n */\n asChild?: boolean;\n}\n\n/**\n * 🚨 WORK IN PROGRESS 🚨\n */\nexport const FooterButtonLink = forwardRef<HTMLAnchorElement, FooterButtonLinkProps>(\n ({ children, className, asChild, ...rest }, ref) => {\n const Component = asChild ? Slot : \"a\";\n return (\n <PrimaryButton asChild fill=\"outline\" className={clsx(className as undefined)}>\n <Component ref={ref} {...rest}>\n {children}\n </Component>\n </PrimaryButton>\n );\n },\n);\nFooterButtonLink.displayName = \"FooterButton\";\n\ninterface FooterLinkSectionsProps extends HTMLAttributes<HTMLDivElement> {\n children: ReactElement<FooterLinkSectionProps> | ReactElement<FooterLinkSectionProps>[];\n}\n\n/**\n * Responsive sections of links. Will become an accordion on mobile.\n *\n * Use with {@link FooterLinkSection} for each section.\n */\nexport const FooterLinkSections = forwardRef<HTMLDivElement, FooterLinkSectionsProps>(\n ({ children, className, ...rest }, ref) => {\n return (\n <>\n {/* Mobile and Desktop. The accordion styling gets removed on desktop */}\n <Accordion\n className={clsx(\"hds-footer__link-sections\", className as undefined)}\n ref={ref}\n {...rest}\n >\n {/* @ts-expect-error -- It's ok */}\n {children}\n </Accordion>\n </>\n );\n },\n);\nFooterLinkSections.displayName = \"Footer.LinkSections\";\n\ninterface FooterLinkSectionProps extends HTMLAttributes<HTMLDivElement> {\n heading: React.ReactNode;\n children: React.ReactNode;\n}\n\nexport const FooterLinkSection = forwardRef<HTMLDivElement, FooterLinkSectionProps>(\n ({ heading, children, className, ...rest }, ref) => {\n // @ts-expect-error -- It's ok\n const linkListChildren = <LinkList>{children}</LinkList>;\n return (\n <>\n {/* Mobile */}\n <Accordion.Item\n className={clsx(`hds-footer__link-section`, className as undefined)}\n ref={ref}\n {...rest}\n >\n <Accordion.Header>{heading}</Accordion.Header>\n <Accordion.Content>{linkListChildren}</Accordion.Content>\n </Accordion.Item>\n\n {/* Desktop */}\n <div className={clsx(`hds-footer__link-section`, className as undefined)}>\n <h2>{heading}</h2>\n {linkListChildren}\n </div>\n </>\n );\n },\n);\nFooterLinkSection.displayName = \"Footer.LinkSection\";\n\nexport interface FooterProps extends HTMLAttributes<HTMLDivElement> {\n /**\n * Footer variant\n *\n * @default \"default\"\n */\n variant?: \"default\" | \"slim\";\n\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n *\n * @default false\n */\n asChild?: boolean;\n}\n\n/**\n * 🚨 WORK IN PROGRESS 🚨\n */\nexport const Footer = forwardRef<HTMLDivElement, FooterProps>(\n ({ children, className, variant, asChild, ...rest }, ref) => {\n const Component = asChild ? Slot : \"footer\";\n return (\n <Component\n className={clsx(\n `hds-footer`,\n variant === \"slim\" && \"hds-footer--slim\",\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {children}\n </Component>\n );\n },\n) as FooterType;\nFooter.displayName = \"Footer\";\n\ntype FooterType = ReturnType<typeof forwardRef<HTMLDivElement, FooterProps>> & {\n Logo: typeof FooterLogo;\n ButtonLink: typeof FooterButtonLink;\n LinkSections: typeof FooterLinkSections;\n LinkSection: typeof FooterLinkSection;\n};\n\nFooter.Logo = FooterLogo;\nFooter.ButtonLink = FooterButtonLink;\nFooter.LinkSections = FooterLinkSections;\nFooter.LinkSection = FooterLinkSection;\n","import type { ReactElement } from \"react\";\nimport { forwardRef } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { AccordionItem, type AccordionItemProps } from \"./accordion-item\";\nimport { AccordionHeader } from \"./accordion-header\";\nimport { AccordionContent } from \"./accordion-content\";\n\nexport interface AccordionProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Accepts type of <AccordionItem/>\n */\n children: ReactElement<AccordionItemProps> | ReactElement<AccordionItemProps>[];\n\n /**\n * Adds padding to the left of the accordion\n */\n indent?: boolean;\n}\n\n/**\n * Displays collapsible content sections\n *\n * @example\n * ```tsx\n * <Accordion>\n * <Accordion.Item defaultOpen>\n * <Accordion.Header>Item one</Accordion.Header>\n * <Accordion.Content>\n * Some content\n * </Accordion.Content>\n * </Accordion.Item>\n * <Accordion.Item>\n * <Accordion.Header>Item two</Accordion.Header>\n * <Accordion.Content>\n * Some more content\n * </Accordion.Content>\n * </Accordion.Item>\n * </Accordion>\n * ```\n */\nexport const Accordion = forwardRef<HTMLDivElement, AccordionProps>(\n ({ children, className, indent = true, ...rest }, ref) => {\n return (\n <div\n {...rest}\n className={clsx(\n \"hds-accordion\",\n !indent && \"hds-accordion--no-indent\",\n className as undefined,\n )}\n ref={ref}\n >\n {children}\n </div>\n );\n },\n) as AccordionType;\nAccordion.displayName = \"Accordion\";\n\nAccordion.Item = AccordionItem;\nAccordion.Header = AccordionHeader;\nAccordion.Content = AccordionContent;\n\ntype AccordionType = ReturnType<typeof forwardRef<HTMLDivElement, AccordionProps>> & {\n Item: typeof AccordionItem;\n Header: typeof AccordionHeader;\n Content: typeof AccordionContent;\n};\n","import type { ReactElement } from \"react\";\nimport { forwardRef, useState } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { AccordionItemContext } from \"./context\";\nimport type { AccordionHeaderProps } from \"./accordion-header\";\nimport type { AccordionContentProps } from \"./accordion-content\";\n\nexport type AccordionItemChildrenType =\n | ReactElement<AccordionHeaderProps>\n | ReactElement<AccordionContentProps>;\n\nexport interface AccordionItemProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Control the open state of the accordion manually\n */\n open?: boolean;\n\n /**\n * Use with open to control the open state of the accordion manually\n */\n onOpenChange?: (open: boolean) => void;\n\n /**\n * If the accordion should be open by default\n */\n defaultOpen?: boolean;\n\n /**\n * Accepts type of Accordion.Content and Accordion.Header\n */\n children: AccordionItemChildrenType[];\n}\n\nexport const AccordionItem = forwardRef<HTMLDivElement, AccordionItemProps>(\n ({ children, defaultOpen, open: outerOpen, onOpenChange, className, ...rest }, ref) => {\n const [innerOpen, setInnerOpen] = useState(defaultOpen ?? false);\n const open = outerOpen ?? innerOpen;\n\n const handleOpen = () => {\n if (outerOpen !== undefined) {\n onOpenChange && onOpenChange(!open);\n } else {\n setInnerOpen(!open);\n }\n };\n\n return (\n <div\n {...rest}\n data-state={open ? \"open\" : \"closed\"}\n className={clsx(\"hds-accordion-item\", className as undefined)}\n ref={ref}\n >\n <AccordionItemContext.Provider value={{ open, setOpen: handleOpen }}>\n {children}\n </AccordionItemContext.Provider>\n </div>\n );\n },\n);\n\nAccordionItem.displayName = \"Accordion.Item\";\n","import { createContext } from \"react\";\n\nexport interface AccordionItemContextProps {\n open: boolean;\n setOpen: (open: boolean) => void;\n}\n\nexport const AccordionItemContext = createContext<AccordionItemContextProps | null>(null);\n","import type { MouseEvent, ReactNode } from \"react\";\nimport { forwardRef, useContext } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { AccordionItemContext } from \"./context\";\n\nexport interface AccordionHeaderProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n children: ReactNode;\n}\n\nexport const AccordionHeader = forwardRef<HTMLButtonElement, AccordionHeaderProps>(\n ({ children, className, onClick, ...rest }, ref) => {\n const context = useContext(AccordionItemContext);\n if (context === null) {\n return null;\n }\n const expandOrCollapse = (e: MouseEvent<HTMLButtonElement>) => {\n context.setOpen(!context.open);\n onClick?.(e);\n };\n return (\n <button\n {...rest}\n aria-expanded={context.open}\n data-state={context.open ? \"open\" : \"closed\"}\n className={clsx(\"hds-accordion-item-header\", className as undefined)}\n onClick={expandOrCollapse}\n ref={ref}\n type=\"button\"\n >\n <span>{children}</span>\n </button>\n );\n },\n);\n\nAccordionHeader.displayName = \"Accordion.Header\";\n","import type { ReactNode } from \"react\";\nimport { forwardRef, useContext } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { AccordionItemContext } from \"./context\";\n\nexport interface AccordionContentProps extends React.HTMLAttributes<HTMLDivElement> {\n children: ReactNode;\n}\n\nexport const AccordionContent = forwardRef<HTMLDivElement, AccordionContentProps>(\n ({ children, className, ...rest }, ref) => {\n const context = useContext(AccordionItemContext);\n if (context === null) {\n return null;\n }\n return (\n <div\n aria-hidden={!context.open}\n data-state={context.open ? \"open\" : \"closed\"}\n {...{ inert: context.open ? undefined : \"true\" }}\n className={clsx(\"hds-accordion-item-content\", className as undefined)}\n ref={ref}\n {...rest}\n >\n <div className={clsx(\"hds-accordion-item-content-inner\")}>{children}</div>\n </div>\n );\n },\n);\n\nAccordionContent.displayName = \"Accordion.Content\";\n","import { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { forwardRef } from \"react\";\nimport type { ListProps } from \"./list\";\nimport { UnorderedList } from \"./list\";\n\nexport interface LinkListProps extends Omit<ListProps, \"listStyle\"> {\n children?: React.ReactElement<HTMLLIElement> | React.ReactElement<HTMLLIElement>[];\n}\n\n/**\n * Show a list of links\n *\n * For other list types use `UnorderedList` and `OrderedList`, or use your own list component using the semantic `ul` and `ol` tags.\n */\nexport const LinkList = forwardRef<HTMLUListElement, LinkListProps>(\n ({ className, ...rest }, ref) => {\n return (\n <UnorderedList\n ref={ref}\n className={clsx(\"hds-list--link-list\", className as undefined)}\n {...rest}\n />\n );\n },\n);\nLinkList.displayName = \"LinkList\";\n","import { forwardRef, type HTMLAttributes } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\n\nexport interface ListProps extends HTMLAttributes<HTMLOListElement | HTMLUListElement> {\n /**\n * Sets the size of the items (font)\n *\n * @default \"medium\"\n */\n size?: \"small\" | \"medium\" | \"large\";\n}\n\n/**\n * An unordered list of simple items, often text. You can nest other lists inside this component.\n *\n * If you have other list needs, you can build your own using the semantic `ul` and `ol` tags.\n *\n * @example\n * ```tsx\n * <UnorderedList>\n * <li>Item 1</li>\n * <li>Item 2</li>\n * <li>Item 3</li>\n * </UnorderedList>\n * ```\n */\nexport const UnorderedList = forwardRef<HTMLUListElement, ListProps>(\n ({ size = \"medium\", className, ...rest }, ref) => {\n return (\n <ul\n ref={ref}\n className={clsx(\"hds-list\", `hds-list--${size}`, className as undefined)}\n {...rest}\n />\n );\n },\n);\nUnorderedList.displayName = \"UnorderedList\";\n\n/**\n * An ordered list of simple items\n *\n * If you have other list needs, you can build your own using the semantic `ul` and `ol` tags.\n *\n * @example\n * ```tsx\n * <OrderedList>\n * <li>Item 1</li>\n * <li>Item 2</li>\n * <li>Item 3</li>\n * </OrderedList>\n * ```\n */\nexport const OrderedList = forwardRef<HTMLOListElement, ListProps>(\n ({ size = \"medium\", className, ...rest }, ref) => {\n return (\n <ol\n ref={ref}\n className={clsx(\"hds-list\", `hds-list--${size}`, className as undefined)}\n {...rest}\n />\n );\n },\n);\nOrderedList.displayName = \"OrderedList\";\n","import { forwardRef } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { Slot } from \"@radix-ui/react-slot\";\n\nexport interface ButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n /**\n * The height, font size and padding of the button\n */\n size?: \"small\" | \"medium\" | \"large\";\n\n /**\n * The background fill of the button\n *\n * @default \"contained\"\n */\n fill?: \"contained\" | \"outline\";\n\n /**\n * Make the button use 100% width available.\n * Using the \"mobile\" it only stretch to full width on smaller screens\n */\n fullWidth?: boolean | \"mobile\";\n\n /**\n * Use the button as an icon button\n *\n * Render the icon in `children`\n */\n icon?: boolean;\n\n /**\n * Change the default rendered element for the one passed as a child, merging their props and behavior.\n *\n * @default false\n */\n asChild?: boolean;\n}\n\nconst Button = forwardRef<HTMLButtonElement, ButtonProps & { variant: \"primary\" | \"secondary\" }>(\n (\n {\n asChild,\n children,\n variant,\n size = \"medium\",\n fullWidth = false,\n fill = \"contained\",\n icon,\n className,\n ...rest\n },\n ref,\n ) => {\n const Component = asChild ? Slot : \"button\";\n return (\n <Component\n className={clsx(\n \"hds-button\",\n `hds-button--${size}`,\n {\n [`hds-button--${variant}`]: fill === \"contained\",\n [`hds-button--outline-${variant}`]: fill === \"outline\",\n \"hds-button--full\": fullWidth === true,\n \"hds-button--mobile-full\": fullWidth === \"mobile\",\n \"hds-button--icon-only\": icon,\n },\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {children}\n </Component>\n );\n },\n);\nButton.displayName = \"Button\";\n\nexport const PrimaryButton = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n return <Button {...props} ref={ref} variant=\"primary\" />;\n});\nPrimaryButton.displayName = \"PrimaryButton\";\n\nexport const SecondaryButton = forwardRef<HTMLButtonElement, ButtonProps>((props, ref) => {\n return <Button {...props} ref={ref} variant=\"secondary\" />;\n});\nSecondaryButton.displayName = \"SecondaryButton\";\n"],"mappings":"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","names":["import_react","import_typed_classname","import_react_slot","import_react","import_typed_classname","import_react","import_react","import_typed_classname","import_jsx_runtime","import_react","import_typed_classname","import_jsx_runtime","import_jsx_runtime","import_typed_classname","import_react","import_react","import_typed_classname","import_jsx_runtime","import_jsx_runtime","import_react","import_typed_classname","import_jsx_runtime","import_jsx_runtime"]}
@@ -1,25 +1,24 @@
1
+ import "../chunk-HQVL3ZJ2.mjs";
1
2
  import {
2
- FooterComponent
3
- } from "../chunk-3NDUE23B.mjs";
4
- import {
3
+ Footer,
5
4
  FooterButtonLink,
6
5
  FooterLinkSection,
7
6
  FooterLinkSections,
8
7
  FooterLogo
9
- } from "../chunk-7JRS4WEB.mjs";
8
+ } from "../chunk-C34HEQXO.mjs";
10
9
  import "../chunk-COEZA7WA.mjs";
11
10
  import "../chunk-WHMIHTPC.mjs";
12
11
  import "../chunk-HT2EIJAD.mjs";
13
12
  import "../chunk-KEKPEN2C.mjs";
14
- import "../chunk-3ZFEUABU.mjs";
13
+ import "../chunk-ZKMFJZSH.mjs";
14
+ import "../chunk-M3Y3XOGC.mjs";
15
+ import "../chunk-A2H2LAII.mjs";
15
16
  import "../chunk-GLAEI3SD.mjs";
16
17
  import "../chunk-3EFAPJ3H.mjs";
17
- import "../chunk-A2H2LAII.mjs";
18
- import "../chunk-KPGSRU4I.mjs";
19
18
  import "../chunk-V3PAFMK5.mjs";
20
19
  import "../chunk-R4SQKVDQ.mjs";
21
20
  export {
22
- FooterComponent as Footer,
21
+ Footer,
23
22
  FooterButtonLink,
24
23
  FooterLinkSection,
25
24
  FooterLinkSections,
@@ -1,2 +1,28 @@
1
- export { CheckboxProps_alias_3 as CheckboxProps } from '../../_tsup-dts-rollup';
2
- export { Checkbox_alias_3 as Checkbox } from '../../_tsup-dts-rollup';
1
+ import { type InputHTMLAttributes, type ReactNode } from "react";
2
+ export type CheckboxProps = Omit<InputHTMLAttributes<HTMLInputElement>, "defaultValue"> & {
3
+ children: ReactNode;
4
+ variant?: "plain" | "bounding-box";
5
+ title?: string;
6
+ } & ({
7
+ /**
8
+ * Set to `true` to add error styling. The component will take care of aria to indicate invalid state.
9
+ *
10
+ * Normally you don't need this, as you should wrap your Checkboxes in the Fieldset component.
11
+ * When providing an errorMessage to Fieldset, all contained Checkboxes will get correct hasError state.
12
+ *
13
+ * You can use this when your checkbox is part of a non-HDS fieldset which shows an error message.
14
+ */
15
+ hasError?: boolean;
16
+ errorMessage?: never;
17
+ } | {
18
+ hasError?: never;
19
+ /**
20
+ * Set an error message to add error styling, and display the error message.
21
+ * The component will take care of aria to connect the error message to the checkbox.
22
+ *
23
+ * Use this when your checkbox is standalone (not part of a fieldset).
24
+ */
25
+ errorMessage?: ReactNode;
26
+ });
27
+ export declare const Checkbox: import("react").ForwardRefExoticComponent<CheckboxProps & import("react").RefAttributes<HTMLInputElement>>;
28
+ //# sourceMappingURL=checkbox.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"checkbox.d.ts","sourceRoot":"","sources":["../../../src/form/checkbox/checkbox.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAqB,KAAK,mBAAmB,EAAE,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAKpF,MAAM,MAAM,aAAa,GAAG,IAAI,CAAC,mBAAmB,CAAC,gBAAgB,CAAC,EAAE,cAAc,CAAC,GAAG;IACxF,QAAQ,EAAE,SAAS,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,GAAG,cAAc,CAAC;IACnC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,GAAG,CACE;IACE;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,YAAY,CAAC,EAAE,KAAK,CAAC;CACtB,GACD;IACE,QAAQ,CAAC,EAAE,KAAK,CAAC;IACjB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;CAC1B,CACJ,CAAC;AAEJ,eAAO,MAAM,QAAQ,4GA8CpB,CAAC"}
@@ -1,2 +1,3 @@
1
- export { Checkbox_alias_4 as Checkbox } from '../../_tsup-dts-rollup';
2
- export { CheckboxProps_alias_4 as CheckboxProps } from '../../_tsup-dts-rollup';
1
+ export { Checkbox } from "./checkbox";
2
+ export type * from "./checkbox";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/form/checkbox/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,mBAAmB,YAAY,CAAC"}
@@ -1,2 +1,33 @@
1
- export { DatePickerProps_alias_3 as DatePickerProps } from '../../_tsup-dts-rollup';
2
- export { DatePicker_alias_3 as DatePicker } from '../../_tsup-dts-rollup';
1
+ import { type InputHTMLAttributes } from "react";
2
+ import { type InputGroupProps } from "../input-group";
3
+ export type DatePickerProps = Omit<InputGroupProps & InputHTMLAttributes<HTMLInputElement>, "children" | "type"> & {
4
+ /**
5
+ * Accessible title for the calendar button
6
+ *
7
+ * This button currently only shows in Chrome.
8
+ *
9
+ * @defaultValue "Åpne kalender"
10
+ */
11
+ calendarButtonTitle?: string;
12
+ };
13
+ /**
14
+ * A basic implementation of a date picker
15
+ *
16
+ * This date picker is an implementation of native date picker, as you get
17
+ * with `<input type="date" />`, where the input field is dressed in Hedwig styling.
18
+ *
19
+ * Due to accessibility concerns you will only see the appropriate Hedwig calendar
20
+ * icon in Chrome. Firefox will show built in icon and Safari will show no icon.
21
+ * Not tested in Edge.
22
+ */
23
+ export declare const DatePicker: import("react").ForwardRefExoticComponent<Omit<InputGroupProps & InputHTMLAttributes<HTMLInputElement>, "children" | "type"> & {
24
+ /**
25
+ * Accessible title for the calendar button
26
+ *
27
+ * This button currently only shows in Chrome.
28
+ *
29
+ * @defaultValue "Åpne kalender"
30
+ */
31
+ calendarButtonTitle?: string | undefined;
32
+ } & import("react").RefAttributes<HTMLInputElement>>;
33
+ //# sourceMappingURL=date-picker.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"date-picker.d.ts","sourceRoot":"","sources":["../../../src/form/date-picker/date-picker.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAsB,KAAK,mBAAmB,EAAE,MAAM,OAAO,CAAC;AAErE,OAAO,EAAc,KAAK,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGlE,MAAM,MAAM,eAAe,GAAG,IAAI,CAChC,eAAe,GAAG,mBAAmB,CAAC,gBAAgB,CAAC,EACvD,UAAU,GAAG,MAAM,CACpB,GAAG;IACF;;;;;;OAMG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF;;;;;;;;;GASG;AACH,eAAO,MAAM,UAAU;IApBrB;;;;;;OAMG;;oDAmEH,CAAC"}
@@ -178,7 +178,7 @@ var InputGroup = (0, import_react2.forwardRef)(function InputGroup2(_a, ref) {
178
178
  );
179
179
  });
180
180
 
181
- // src/utils.ts
181
+ // src/utils/utils.ts
182
182
  var React = __toESM(require("react"));
183
183
  var import_react3 = require("react");
184
184
  function useMergeRefs(refs) {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/form/date-picker/date-picker.tsx","../../../src/form/input-group/input-group.tsx","../../../src/form/error-message/error-message.tsx","../../../src/utils.ts"],"sourcesContent":["import { forwardRef, useRef, type InputHTMLAttributes } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { InputGroup, type InputGroupProps } from \"../input-group\";\nimport { useMergeRefs } from \"../../utils\";\n\nexport type DatePickerProps = Omit<\n InputGroupProps & InputHTMLAttributes<HTMLInputElement>,\n \"children\" | \"type\"\n> & {\n /**\n * Accessible title for the calendar button\n *\n * This button currently only shows in Chrome.\n *\n * @defaultValue \"Åpne kalender\"\n */\n calendarButtonTitle?: string;\n};\n\n/**\n * A basic implementation of a date picker\n *\n * This date picker is an implementation of native date picker, as you get\n * with `<input type=\"date\" />`, where the input field is dressed in Hedwig styling.\n *\n * Due to accessibility concerns you will only see the appropriate Hedwig calendar\n * icon in Chrome. Firefox will show built in icon and Safari will show no icon.\n * Not tested in Edge.\n */\nexport const DatePicker = forwardRef<HTMLInputElement, DatePickerProps>(function DatePicker(\n {\n className,\n variant,\n errorMessage,\n labelProps,\n label,\n id,\n style,\n disabled,\n readOnly,\n calendarButtonTitle = \"Åpne kalender\",\n ...rest\n },\n ref,\n) {\n const inputRef = useRef<HTMLInputElement>(null);\n const mergedRef = useMergeRefs([inputRef, ref]);\n\n return (\n <InputGroup\n className={clsx(\"hds-date-picker\", className as undefined)}\n disabled={disabled}\n errorMessage={errorMessage}\n id={id}\n label={label}\n labelProps={labelProps}\n readOnly={readOnly}\n style={style}\n variant={variant}\n >\n {(inputProps) => (\n <>\n <input\n {...rest}\n {...inputProps}\n disabled={disabled}\n readOnly={readOnly}\n ref={mergedRef}\n type=\"date\"\n />\n <button\n className={clsx(\"hds-date-picker__calendar-button\")}\n type=\"button\"\n title={calendarButtonTitle}\n onClick={() => {\n inputRef.current?.showPicker();\n }}\n />\n </>\n )}\n </InputGroup>\n );\n});\n\nDatePicker.displayName = \"DatePicker\";\n","import { useId, forwardRef, Children, isValidElement, cloneElement } from \"react\";\nimport type { LabelHTMLAttributes, ReactNode, CSSProperties } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { ErrorMessage } from \"../error-message\";\n\ninterface InputProps {\n \"aria-describedby\"?: string;\n \"aria-invalid\"?: boolean;\n id?: string;\n className?: string;\n}\n\nexport interface InputGroupProps {\n id?: string;\n className?: string;\n style?: CSSProperties;\n variant?: \"default\" | \"white\";\n errorMessage?: ReactNode;\n labelProps?: LabelHTMLAttributes<HTMLLabelElement>;\n label: ReactNode;\n disabled?: boolean;\n readOnly?: boolean;\n /**\n * `children` must be either a single input element or a render function.\n *\n * If you use a render function, make sure you spread the input props to the appropriate element.\n */\n children: Exclude<ReactNode, Iterable<ReactNode>> | ((inputProps: InputProps) => ReactNode);\n}\n\nexport const InputGroup = forwardRef<HTMLDivElement, InputGroupProps>(function InputGroup(\n {\n id,\n className,\n style,\n variant = \"default\",\n errorMessage,\n labelProps: { className: labelClassName, ...labelProps } = {},\n label,\n disabled,\n readOnly,\n children,\n ...rest\n },\n ref,\n) {\n const errorMessageId = useId();\n const inputId = useId();\n\n const renderInput = () => {\n const inputProps: InputProps = {\n \"aria-describedby\": errorMessage ? errorMessageId : undefined,\n \"aria-invalid\": errorMessage ? true : undefined,\n id: id ?? inputId,\n className: clsx(\"hds-input-group__input\"),\n };\n\n if (typeof children === \"function\") {\n return children(inputProps);\n }\n\n const input: ReactNode = Children.toArray(children)[0];\n\n if (!isValidElement<InputProps>(input)) {\n return;\n }\n\n return cloneElement<InputProps>(input, {\n ...inputProps,\n ...input.props,\n className: `${inputProps.className} ${input.props.className ?? \"\"}`,\n });\n };\n\n return (\n <div\n className={clsx(\n \"hds-input-group\",\n {\n [`hds-input-group--${variant}`]: variant,\n \"hds-input-group--error\": errorMessage,\n },\n className as undefined,\n )}\n ref={ref}\n style={style}\n {...rest}\n >\n <label\n className={clsx(\"hds-input-group__label\", labelClassName as undefined)}\n {...labelProps}\n htmlFor={id ?? inputId}\n >\n {label}\n </label>\n <div\n className={clsx(\"hds-input-group__input-wrapper\")}\n data-disabled={disabled}\n data-readonly={readOnly}\n >\n {renderInput()}\n </div>\n <ErrorMessage id={errorMessageId}>{errorMessage}</ErrorMessage>\n </div>\n );\n});\n","import { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { forwardRef, type ReactNode } from \"react\";\n\nexport interface ErrorMessageProps extends React.HTMLAttributes<HTMLDivElement> {\n children: ReactNode;\n id: string;\n className?: string;\n}\n\nexport const ErrorMessage = forwardRef<HTMLDivElement, ErrorMessageProps>(\n ({ children, id, className, ...rest }, ref) => {\n return (\n <div\n aria-live=\"assertive\"\n className={clsx(\"hds-error-message\", className as undefined)}\n id={id}\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n );\n },\n);\nErrorMessage.displayName = \"ErrorMessage\";\n","import * as React from \"react\";\nimport { useCallback, useEffect, useState } from \"react\";\n\n/**\n * Merges an array of refs into a single memoized callback ref or `null`.\n * @see https://floating-ui.com/docs/useMergeRefs\n */\nexport function useMergeRefs<Instance>(\n refs: (React.Ref<Instance> | undefined)[],\n): React.RefCallback<Instance> | null {\n return React.useMemo(() => {\n if (refs.every((ref) => ref === null)) {\n return null;\n }\n\n return (value) => {\n refs.forEach((ref) => {\n if (typeof ref === \"function\") {\n ref(value);\n } else if (ref !== null) {\n (ref as React.MutableRefObject<Instance | null>).current = value;\n }\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- It's ok\n }, refs);\n}\n\nexport function useResize<Instance extends HTMLElement>(\n ref: React.RefObject<Instance> | undefined | null,\n): { width: number; height: number } {\n const [width, setWidth] = useState<number>(0);\n const [height, setHeight] = useState<number>(0);\n const handleResize = useCallback(() => {\n if (ref?.current !== null) {\n setWidth(ref?.current?.offsetWidth ?? 0);\n setHeight(ref?.current?.offsetHeight ?? 0);\n }\n }, [ref]);\n useEffect(() => {\n window.addEventListener(\"load\", handleResize);\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"load\", handleResize);\n window.removeEventListener(\"resize\", handleResize);\n };\n }, [ref, handleResize]);\n useEffect(() => {\n handleResize();\n // eslint-disable-next-line react-hooks/exhaustive-deps -- It's ok\n }, []);\n return { width, height };\n}\n\nfunction subscribe() {\n // eslint-disable-next-line @typescript-eslint/no-empty-function -- It's ok\n return () => {};\n}\n\nexport function useHydrated() {\n return React.useSyncExternalStore(\n subscribe,\n () => true,\n () => false,\n );\n}\n\n/**\n * Trap focus inside an element using the `inert` attribute.\n *\n * Adds `inert` to all siblings of the given element, and all their ancestors up to the body.\n * Returns a cleanup function which removes the `inert` property from the elements, effectively giving focus back to rest of the document.\n *\n * NOTE: Does not support portals, i.e. elements outside the DOM hierarchy of the given element.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/inert\n * @see https://web.dev/articles/inert\n */\nexport function focusTrap(element: HTMLElement) {\n // eslint-disable-next-line @typescript-eslint/no-empty-function -- NOP on focus trapping the body element\n if (element === document.body) return () => {};\n\n let inertElements: HTMLElement[] = [];\n for (let el: HTMLElement | null = element; el; el = el.parentElement) {\n if (el === document.body) break;\n\n for (const sibling of el.parentElement?.children ?? []) {\n if (sibling === el) continue;\n if (!(sibling instanceof HTMLElement)) continue;\n if (sibling.hasAttribute(\"inert\")) continue;\n\n sibling.setAttribute(\"inert\", \"true\");\n inertElements.push(sibling);\n }\n }\n\n return () => {\n releaseFocusTrap(inertElements);\n inertElements = [];\n };\n}\n\n/**\n * Unset the `inert` attribute on all elements given\n */\nexport function releaseFocusTrap(inertElements: Iterable<HTMLElement>) {\n for (const el of inertElements) {\n el.removeAttribute(\"inert\");\n }\n}\n"],"mappings":"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","names":["import_react","import_typed_classname","import_react","import_typed_classname","import_jsx_runtime","InputGroup","_a","import_react","import_jsx_runtime","DatePicker","_a"]}
1
+ {"version":3,"sources":["../../../src/form/date-picker/date-picker.tsx","../../../src/form/input-group/input-group.tsx","../../../src/form/error-message/error-message.tsx","../../../src/utils/utils.ts"],"sourcesContent":["import { forwardRef, useRef, type InputHTMLAttributes } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { InputGroup, type InputGroupProps } from \"../input-group\";\nimport { useMergeRefs } from \"../../utils/utils\";\n\nexport type DatePickerProps = Omit<\n InputGroupProps & InputHTMLAttributes<HTMLInputElement>,\n \"children\" | \"type\"\n> & {\n /**\n * Accessible title for the calendar button\n *\n * This button currently only shows in Chrome.\n *\n * @defaultValue \"Åpne kalender\"\n */\n calendarButtonTitle?: string;\n};\n\n/**\n * A basic implementation of a date picker\n *\n * This date picker is an implementation of native date picker, as you get\n * with `<input type=\"date\" />`, where the input field is dressed in Hedwig styling.\n *\n * Due to accessibility concerns you will only see the appropriate Hedwig calendar\n * icon in Chrome. Firefox will show built in icon and Safari will show no icon.\n * Not tested in Edge.\n */\nexport const DatePicker = forwardRef<HTMLInputElement, DatePickerProps>(function DatePicker(\n {\n className,\n variant,\n errorMessage,\n labelProps,\n label,\n id,\n style,\n disabled,\n readOnly,\n calendarButtonTitle = \"Åpne kalender\",\n ...rest\n },\n ref,\n) {\n const inputRef = useRef<HTMLInputElement>(null);\n const mergedRef = useMergeRefs([inputRef, ref]);\n\n return (\n <InputGroup\n className={clsx(\"hds-date-picker\", className as undefined)}\n disabled={disabled}\n errorMessage={errorMessage}\n id={id}\n label={label}\n labelProps={labelProps}\n readOnly={readOnly}\n style={style}\n variant={variant}\n >\n {(inputProps) => (\n <>\n <input\n {...rest}\n {...inputProps}\n disabled={disabled}\n readOnly={readOnly}\n ref={mergedRef}\n type=\"date\"\n />\n <button\n className={clsx(\"hds-date-picker__calendar-button\")}\n type=\"button\"\n title={calendarButtonTitle}\n onClick={() => {\n inputRef.current?.showPicker();\n }}\n />\n </>\n )}\n </InputGroup>\n );\n});\n\nDatePicker.displayName = \"DatePicker\";\n","import { useId, forwardRef, Children, isValidElement, cloneElement } from \"react\";\nimport type { LabelHTMLAttributes, ReactNode, CSSProperties } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { ErrorMessage } from \"../error-message\";\n\ninterface InputProps {\n \"aria-describedby\"?: string;\n \"aria-invalid\"?: boolean;\n id?: string;\n className?: string;\n}\n\nexport interface InputGroupProps {\n id?: string;\n className?: string;\n style?: CSSProperties;\n variant?: \"default\" | \"white\";\n errorMessage?: ReactNode;\n labelProps?: LabelHTMLAttributes<HTMLLabelElement>;\n label: ReactNode;\n disabled?: boolean;\n readOnly?: boolean;\n /**\n * `children` must be either a single input element or a render function.\n *\n * If you use a render function, make sure you spread the input props to the appropriate element.\n */\n children: Exclude<ReactNode, Iterable<ReactNode>> | ((inputProps: InputProps) => ReactNode);\n}\n\nexport const InputGroup = forwardRef<HTMLDivElement, InputGroupProps>(function InputGroup(\n {\n id,\n className,\n style,\n variant = \"default\",\n errorMessage,\n labelProps: { className: labelClassName, ...labelProps } = {},\n label,\n disabled,\n readOnly,\n children,\n ...rest\n },\n ref,\n) {\n const errorMessageId = useId();\n const inputId = useId();\n\n const renderInput = () => {\n const inputProps: InputProps = {\n \"aria-describedby\": errorMessage ? errorMessageId : undefined,\n \"aria-invalid\": errorMessage ? true : undefined,\n id: id ?? inputId,\n className: clsx(\"hds-input-group__input\"),\n };\n\n if (typeof children === \"function\") {\n return children(inputProps);\n }\n\n const input: ReactNode = Children.toArray(children)[0];\n\n if (!isValidElement<InputProps>(input)) {\n return;\n }\n\n return cloneElement<InputProps>(input, {\n ...inputProps,\n ...input.props,\n className: `${inputProps.className} ${input.props.className ?? \"\"}`,\n });\n };\n\n return (\n <div\n className={clsx(\n \"hds-input-group\",\n {\n [`hds-input-group--${variant}`]: variant,\n \"hds-input-group--error\": errorMessage,\n },\n className as undefined,\n )}\n ref={ref}\n style={style}\n {...rest}\n >\n <label\n className={clsx(\"hds-input-group__label\", labelClassName as undefined)}\n {...labelProps}\n htmlFor={id ?? inputId}\n >\n {label}\n </label>\n <div\n className={clsx(\"hds-input-group__input-wrapper\")}\n data-disabled={disabled}\n data-readonly={readOnly}\n >\n {renderInput()}\n </div>\n <ErrorMessage id={errorMessageId}>{errorMessage}</ErrorMessage>\n </div>\n );\n});\n","import { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { forwardRef, type ReactNode } from \"react\";\n\nexport interface ErrorMessageProps extends React.HTMLAttributes<HTMLDivElement> {\n children: ReactNode;\n id: string;\n className?: string;\n}\n\nexport const ErrorMessage = forwardRef<HTMLDivElement, ErrorMessageProps>(\n ({ children, id, className, ...rest }, ref) => {\n return (\n <div\n aria-live=\"assertive\"\n className={clsx(\"hds-error-message\", className as undefined)}\n id={id}\n ref={ref}\n {...rest}\n >\n {children}\n </div>\n );\n },\n);\nErrorMessage.displayName = \"ErrorMessage\";\n","import * as React from \"react\";\nimport { useCallback, useEffect, useState } from \"react\";\n\n/**\n * Merges an array of refs into a single memoized callback ref or `null`.\n * @see https://floating-ui.com/docs/useMergeRefs\n */\nexport function useMergeRefs<Instance>(\n refs: (React.Ref<Instance> | undefined)[],\n): React.RefCallback<Instance> | null {\n return React.useMemo(() => {\n if (refs.every((ref) => ref === null)) {\n return null;\n }\n\n return (value) => {\n refs.forEach((ref) => {\n if (typeof ref === \"function\") {\n ref(value);\n } else if (ref !== null) {\n (ref as React.MutableRefObject<Instance | null>).current = value;\n }\n });\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- It's ok\n }, refs);\n}\n\nexport function useResize<Instance extends HTMLElement>(\n ref: React.RefObject<Instance> | undefined | null,\n): { width: number; height: number } {\n const [width, setWidth] = useState<number>(0);\n const [height, setHeight] = useState<number>(0);\n const handleResize = useCallback(() => {\n if (ref?.current !== null) {\n setWidth(ref?.current?.offsetWidth ?? 0);\n setHeight(ref?.current?.offsetHeight ?? 0);\n }\n }, [ref]);\n useEffect(() => {\n window.addEventListener(\"load\", handleResize);\n window.addEventListener(\"resize\", handleResize);\n return () => {\n window.removeEventListener(\"load\", handleResize);\n window.removeEventListener(\"resize\", handleResize);\n };\n }, [ref, handleResize]);\n useEffect(() => {\n handleResize();\n // eslint-disable-next-line react-hooks/exhaustive-deps -- It's ok\n }, []);\n return { width, height };\n}\n\nfunction subscribe() {\n // eslint-disable-next-line @typescript-eslint/no-empty-function -- It's ok\n return () => {};\n}\n\nexport function useHydrated() {\n return React.useSyncExternalStore(\n subscribe,\n () => true,\n () => false,\n );\n}\n\n/**\n * Trap focus inside an element using the `inert` attribute.\n *\n * Adds `inert` to all siblings of the given element, and all their ancestors up to the body.\n * Returns a cleanup function which removes the `inert` property from the elements, effectively giving focus back to rest of the document.\n *\n * NOTE: Does not support portals, i.e. elements outside the DOM hierarchy of the given element.\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement/inert\n * @see https://web.dev/articles/inert\n */\nexport function focusTrap(element: HTMLElement) {\n // eslint-disable-next-line @typescript-eslint/no-empty-function -- NOP on focus trapping the body element\n if (element === document.body) return () => {};\n\n let inertElements: HTMLElement[] = [];\n for (let el: HTMLElement | null = element; el; el = el.parentElement) {\n if (el === document.body) break;\n\n for (const sibling of el.parentElement?.children ?? []) {\n if (sibling === el) continue;\n if (!(sibling instanceof HTMLElement)) continue;\n if (sibling.hasAttribute(\"inert\")) continue;\n\n sibling.setAttribute(\"inert\", \"true\");\n inertElements.push(sibling);\n }\n }\n\n return () => {\n releaseFocusTrap(inertElements);\n inertElements = [];\n };\n}\n\n/**\n * Unset the `inert` attribute on all elements given\n */\nfunction releaseFocusTrap(inertElements: Iterable<HTMLElement>) {\n for (const el of inertElements) {\n el.removeAttribute(\"inert\");\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,IAAAA,gBAA6D;AAC7D,IAAAC,0BAAqB;;;ACDrB,IAAAC,gBAA0E;AAE1E,IAAAC,0BAAqB;;;ACFrB,6BAAqB;AACrB,mBAA2C;AAWrC;AAHC,IAAM,mBAAe;AAAA,EAC1B,CAAC,IAAsC,QAAQ;AAA9C,iBAAE,YAAU,IAAI,UAVnB,IAUG,IAA8B,iBAA9B,IAA8B,CAA5B,YAAU,MAAI;AACf,WACE;AAAA,MAAC;AAAA;AAAA,QACC,aAAU;AAAA,QACV,eAAW,6BAAK,qBAAqB,SAAsB;AAAA,QAC3D;AAAA,QACA;AAAA,SACI,OALL;AAAA,QAOE;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AACA,aAAa,cAAc;;;ADmDvB,IAAAC,sBAAA;AA7CG,IAAM,iBAAa,0BAA4C,SAASC,YAC7E,IAaA,KACA;AAdA,eAMc;AAAA,IALZ;AAAA,IACA;AAAA,IACA;AAAA,IACA,UAAU;AAAA,IACV;AAAA,IACA,YAAY,KAA+C,CAAC;AAAA,EArChE,IA+BE,IAMc,SAAE,aAAW,eArC7B,IAqCgB,IAAgC,uBAAhC,IAAgC,CAA9B,eANhB,SAOE;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EAzCJ,IA+BE,IAWK,iBAXL,IAWK;AAAA,IAVH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAKF,QAAM,qBAAiB,qBAAM;AAC7B,QAAM,cAAU,qBAAM;AAEtB,QAAM,cAAc,MAAM;AAjD5B,QAAAC;AAkDI,UAAM,aAAyB;AAAA,MAC7B,oBAAoB,eAAe,iBAAiB;AAAA,MACpD,gBAAgB,eAAe,OAAO;AAAA,MACtC,IAAI,kBAAM;AAAA,MACV,eAAW,8BAAK,wBAAwB;AAAA,IAC1C;AAEA,QAAI,OAAO,aAAa,YAAY;AAClC,aAAO,SAAS,UAAU;AAAA,IAC5B;AAEA,UAAM,QAAmB,uBAAS,QAAQ,QAAQ,EAAE,CAAC;AAErD,QAAI,KAAC,8BAA2B,KAAK,GAAG;AACtC;AAAA,IACF;AAEA,eAAO,4BAAyB,OAAO,gDAClC,aACA,MAAM,QAF4B;AAAA,MAGrC,WAAW,GAAG,WAAW,SAAS,KAAIA,MAAA,MAAM,MAAM,cAAZ,OAAAA,MAAyB,EAAE;AAAA,IACnE,EAAC;AAAA,EACH;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAW;AAAA,QACT;AAAA,QACA;AAAA,UACE,CAAC,oBAAoB,OAAO,EAAE,GAAG;AAAA,UACjC,0BAA0B;AAAA,QAC5B;AAAA,QACA;AAAA,MACF;AAAA,MACA;AAAA,MACA;AAAA,OACI,OAXL;AAAA,MAaC;AAAA;AAAA,UAAC;AAAA;AAAA,YACC,eAAW,8BAAK,0BAA0B,cAA2B;AAAA,aACjE,aAFL;AAAA,YAGC,SAAS,kBAAM;AAAA,YAEd;AAAA;AAAA,QACH;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,eAAW,8BAAK,gCAAgC;AAAA,YAChD,iBAAe;AAAA,YACf,iBAAe;AAAA,YAEd,sBAAY;AAAA;AAAA,QACf;AAAA,QACA,6CAAC,gBAAa,IAAI,gBAAiB,wBAAa;AAAA;AAAA;AAAA,EAClD;AAEJ,CAAC;;;AEzGD,YAAuB;AACvB,IAAAC,gBAAiD;AAM1C,SAAS,aACd,MACoC;AACpC,SAAa,cAAQ,MAAM;AACzB,QAAI,KAAK,MAAM,CAAC,QAAQ,QAAQ,IAAI,GAAG;AACrC,aAAO;AAAA,IACT;AAEA,WAAO,CAAC,UAAU;AAChB,WAAK,QAAQ,CAAC,QAAQ;AACpB,YAAI,OAAO,QAAQ,YAAY;AAC7B,cAAI,KAAK;AAAA,QACX,WAAW,QAAQ,MAAM;AACvB,UAAC,IAAgD,UAAU;AAAA,QAC7D;AAAA,MACF,CAAC;AAAA,IACH;AAAA,EAEF,GAAG,IAAI;AACT;;;AHmCQ,IAAAC,sBAAA;AAhCD,IAAM,iBAAa,0BAA8C,SAASC,YAC/E,IAaA,KACA;AAdA,eACE;AAAA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA,sBAAsB;AAAA,EAxC1B,IA8BE,IAWK,iBAXL,IAWK;AAAA,IAVH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAKF,QAAM,eAAW,sBAAyB,IAAI;AAC9C,QAAM,YAAY,aAAa,CAAC,UAAU,GAAG,CAAC;AAE9C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAW,8BAAK,mBAAmB,SAAsB;AAAA,MACzD;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MAEC,WAAC,eACA,8EACE;AAAA;AAAA,UAAC;AAAA,0DACK,OACA,aAFL;AAAA,YAGC;AAAA,YACA;AAAA,YACA,KAAK;AAAA,YACL,MAAK;AAAA;AAAA,QACP;AAAA,QACA;AAAA,UAAC;AAAA;AAAA,YACC,eAAW,8BAAK,kCAAkC;AAAA,YAClD,MAAK;AAAA,YACL,OAAO;AAAA,YACP,SAAS,MAAM;AA1E3B,kBAAAC;AA2Ec,eAAAA,MAAA,SAAS,YAAT,gBAAAA,IAAkB;AAAA,YACpB;AAAA;AAAA,QACF;AAAA,SACF;AAAA;AAAA,EAEJ;AAEJ,CAAC;AAED,WAAW,cAAc;","names":["import_react","import_typed_classname","import_react","import_typed_classname","import_jsx_runtime","InputGroup","_a","import_react","import_jsx_runtime","DatePicker","_a"]}
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  DatePicker
3
- } from "../../chunk-F2C3KZFX.mjs";
3
+ } from "../../chunk-BVPSZ3JI.mjs";
4
4
  import "../../chunk-Y5SUMFYJ.mjs";
5
5
  import "../../chunk-FB5GEZNH.mjs";
6
6
  import "../../chunk-NSLSA7F7.mjs";
7
7
  import "../../chunk-RZZDMBB7.mjs";
8
- import "../../chunk-DEX36MFK.mjs";
8
+ import "../../chunk-TDXU2IC6.mjs";
9
9
  import "../../chunk-R4SQKVDQ.mjs";
10
10
  export {
11
11
  DatePicker
@@ -1,2 +1,3 @@
1
- export { DatePicker_alias_4 as DatePicker } from '../../_tsup-dts-rollup';
2
- export { DatePickerProps_alias_4 as DatePickerProps } from '../../_tsup-dts-rollup';
1
+ export { DatePicker } from "./date-picker";
2
+ export type * from "./date-picker";
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/form/date-picker/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,mBAAmB,eAAe,CAAC"}