@postenbring/hedwig-react 0.0.76 → 0.0.78

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 (429) hide show
  1. package/dist/_tsup-dts-rollup.d.mts +503 -497
  2. package/dist/_tsup-dts-rollup.d.ts +503 -497
  3. package/dist/accordion/accordion-content.js +20 -18
  4. package/dist/accordion/accordion-content.js.map +1 -1
  5. package/dist/accordion/accordion-content.mjs +1 -1
  6. package/dist/accordion/accordion-header.js +24 -22
  7. package/dist/accordion/accordion-header.js.map +1 -1
  8. package/dist/accordion/accordion-header.mjs +1 -1
  9. package/dist/accordion/accordion-item.js +2 -16
  10. package/dist/accordion/accordion-item.js.map +1 -1
  11. package/dist/accordion/accordion-item.mjs +1 -1
  12. package/dist/accordion/accordion.js +2 -2
  13. package/dist/accordion/accordion.js.map +1 -1
  14. package/dist/accordion/accordion.mjs +1 -1
  15. package/dist/accordion/index.js +48 -58
  16. package/dist/accordion/index.js.map +1 -1
  17. package/dist/accordion/index.mjs +7 -7
  18. package/dist/badge/badge.d.mts +2 -2
  19. package/dist/badge/badge.d.ts +2 -2
  20. package/dist/badge/badge.js +23 -30
  21. package/dist/badge/badge.js.map +1 -1
  22. package/dist/badge/badge.mjs +3 -3
  23. package/dist/badge/index.d.mts +2 -1
  24. package/dist/badge/index.d.ts +2 -1
  25. package/dist/badge/index.js +22 -29
  26. package/dist/badge/index.js.map +1 -1
  27. package/dist/badge/index.mjs +3 -3
  28. package/dist/box/box.js +5 -3
  29. package/dist/box/box.js.map +1 -1
  30. package/dist/box/box.mjs +1 -1
  31. package/dist/box/index.js +5 -3
  32. package/dist/box/index.js.map +1 -1
  33. package/dist/box/index.mjs +2 -2
  34. package/dist/breadcrumbs/breadcrumbs.js.map +1 -1
  35. package/dist/breadcrumbs/breadcrumbs.mjs +1 -1
  36. package/dist/breadcrumbs/index.js.map +1 -1
  37. package/dist/breadcrumbs/index.mjs +1 -1
  38. package/dist/button/button.d.mts +0 -1
  39. package/dist/button/button.d.ts +0 -1
  40. package/dist/button/button.js +15 -22
  41. package/dist/button/button.js.map +1 -1
  42. package/dist/button/button.mjs +1 -3
  43. package/dist/button/index.d.mts +0 -1
  44. package/dist/button/index.d.ts +0 -1
  45. package/dist/button/index.js +15 -20
  46. package/dist/button/index.js.map +1 -1
  47. package/dist/button/index.mjs +1 -1
  48. package/dist/card/card.d.mts +1 -1
  49. package/dist/card/card.d.ts +1 -1
  50. package/dist/card/card.js +63 -46
  51. package/dist/card/card.js.map +1 -1
  52. package/dist/card/card.mjs +1 -1
  53. package/dist/card/index.d.mts +3 -3
  54. package/dist/card/index.d.ts +3 -3
  55. package/dist/card/index.js +80 -59
  56. package/dist/card/index.js.map +1 -1
  57. package/dist/card/index.mjs +10 -2
  58. package/dist/chunk-2UWPZNXC.mjs +40 -0
  59. package/dist/chunk-2UWPZNXC.mjs.map +1 -0
  60. package/dist/chunk-3EFAPJ3H.mjs +44 -0
  61. package/dist/chunk-3EFAPJ3H.mjs.map +1 -0
  62. package/dist/{chunk-XVFQWVHO.mjs → chunk-3MQKXNZ6.mjs} +4 -2
  63. package/dist/chunk-3MQKXNZ6.mjs.map +1 -0
  64. package/dist/{chunk-NMMFIRLZ.mjs → chunk-3NL3TOZF.mjs} +2 -2
  65. package/dist/{chunk-DM4PJFLG.mjs → chunk-6N4TGRZB.mjs} +2 -2
  66. package/dist/{chunk-JDXYRFLJ.mjs → chunk-722MZPXO.mjs} +2 -2
  67. package/dist/chunk-7JDEN3T6.mjs +109 -0
  68. package/dist/chunk-7JDEN3T6.mjs.map +1 -0
  69. package/dist/{chunk-HMB4TY2F.mjs → chunk-7W4HONVO.mjs} +3 -3
  70. package/dist/{chunk-62F4I3MQ.mjs → chunk-A2H2LAII.mjs} +3 -17
  71. package/dist/chunk-A2H2LAII.mjs.map +1 -0
  72. package/dist/{chunk-YC7MT6SO.mjs → chunk-A4ME3VXV.mjs} +2 -2
  73. package/dist/{chunk-VVPJOVFP.mjs → chunk-AXKJB47E.mjs} +1 -1
  74. package/dist/chunk-AXKJB47E.mjs.map +1 -0
  75. package/dist/{chunk-UWTGHSWT.mjs → chunk-CCVZAHYA.mjs} +11 -6
  76. package/dist/chunk-CCVZAHYA.mjs.map +1 -0
  77. package/dist/chunk-CIHZDFSQ.mjs +148 -0
  78. package/dist/chunk-CIHZDFSQ.mjs.map +1 -0
  79. package/dist/chunk-COEZA7WA.mjs +30 -0
  80. package/dist/chunk-COEZA7WA.mjs.map +1 -0
  81. package/dist/chunk-CSXSUQ2M.mjs +1 -0
  82. package/dist/chunk-CSXSUQ2M.mjs.map +1 -0
  83. package/dist/{chunk-4GSNPCNT.mjs → chunk-CYEYGPRH.mjs} +2 -2
  84. package/dist/{chunk-E2AG5TUR.mjs → chunk-DCCQXWD6.mjs} +4 -4
  85. package/dist/{chunk-JXA3B33M.mjs → chunk-DEX36MFK.mjs} +1 -1
  86. package/dist/chunk-DEX36MFK.mjs.map +1 -0
  87. package/dist/chunk-DFU2THGC.mjs +31 -0
  88. package/dist/chunk-DFU2THGC.mjs.map +1 -0
  89. package/dist/{chunk-EGXM575K.mjs → chunk-ENKVTAJB.mjs} +6 -4
  90. package/dist/chunk-ENKVTAJB.mjs.map +1 -0
  91. package/dist/{chunk-25R7DBK6.mjs → chunk-ES6ISHOV.mjs} +1 -1
  92. package/dist/chunk-ES6ISHOV.mjs.map +1 -0
  93. package/dist/{chunk-57SSGJ4X.mjs → chunk-GGQB2WWD.mjs} +6 -3
  94. package/dist/chunk-GGQB2WWD.mjs.map +1 -0
  95. package/dist/chunk-GSJPTZT3.mjs +121 -0
  96. package/dist/chunk-GSJPTZT3.mjs.map +1 -0
  97. package/dist/{chunk-S3BGPCLK.mjs → chunk-HFXVRPBA.mjs} +13 -26
  98. package/dist/chunk-HFXVRPBA.mjs.map +1 -0
  99. package/dist/{chunk-Z753E3XF.mjs → chunk-HMATZX4A.mjs} +1 -1
  100. package/dist/chunk-HMATZX4A.mjs.map +1 -0
  101. package/dist/{chunk-S5RB7KLJ.mjs → chunk-I3ZIMS72.mjs} +4 -2
  102. package/dist/chunk-I3ZIMS72.mjs.map +1 -0
  103. package/dist/{chunk-EJ7ANN7M.mjs → chunk-IKJJWKXM.mjs} +2 -2
  104. package/dist/{chunk-A47QULAK.mjs → chunk-JF3HBGAA.mjs} +10 -6
  105. package/dist/chunk-JF3HBGAA.mjs.map +1 -0
  106. package/dist/{chunk-KTRIVJM3.mjs → chunk-JL4PLDXN.mjs} +2 -2
  107. package/dist/{chunk-UXJIK76H.mjs → chunk-K3CBNVXC.mjs} +3 -5
  108. package/dist/chunk-K3CBNVXC.mjs.map +1 -0
  109. package/dist/{chunk-BWFFP6BB.mjs → chunk-KEKPEN2C.mjs} +17 -23
  110. package/dist/chunk-KEKPEN2C.mjs.map +1 -0
  111. package/dist/{chunk-VRIY65P5.mjs → chunk-KPGSRU4I.mjs} +3 -3
  112. package/dist/chunk-KPGSRU4I.mjs.map +1 -0
  113. package/dist/{chunk-CSAEHQ4R.mjs → chunk-LTTJWLS7.mjs} +2 -2
  114. package/dist/{chunk-5QL53TR2.mjs → chunk-MJ2DZH3N.mjs} +4 -2
  115. package/dist/chunk-MJ2DZH3N.mjs.map +1 -0
  116. package/dist/{chunk-PYR6QEIS.mjs → chunk-MPHMD4LO.mjs} +38 -53
  117. package/dist/chunk-MPHMD4LO.mjs.map +1 -0
  118. package/dist/{chunk-DFH4YKQA.mjs → chunk-NAIBK23T.mjs} +2 -2
  119. package/dist/chunk-P6KBFRF4.mjs +54 -0
  120. package/dist/chunk-P6KBFRF4.mjs.map +1 -0
  121. package/dist/{chunk-TNU64NUN.mjs → chunk-P6WIBHQH.mjs} +2 -2
  122. package/dist/{chunk-E2RTLHMZ.mjs → chunk-PLXB3TNA.mjs} +2 -2
  123. package/dist/chunk-PLXB3TNA.mjs.map +1 -0
  124. package/dist/chunk-PT5H3QV6.mjs +29 -0
  125. package/dist/chunk-PT5H3QV6.mjs.map +1 -0
  126. package/dist/{chunk-5YMUST7H.mjs → chunk-QY2K3GWU.mjs} +3 -3
  127. package/dist/{chunk-6NGF7FFY.mjs → chunk-RYM3LM7K.mjs} +2 -2
  128. package/dist/{chunk-ME66RUR6.mjs → chunk-TQDUBRCZ.mjs} +7 -4
  129. package/dist/chunk-TQDUBRCZ.mjs.map +1 -0
  130. package/dist/{chunk-ZDPU3N54.mjs → chunk-UB2R7TCG.mjs} +1 -1
  131. package/dist/chunk-UB2R7TCG.mjs.map +1 -0
  132. package/dist/{chunk-RHCMBJOT.mjs → chunk-UMYOYHUI.mjs} +3 -3
  133. package/dist/{chunk-I6GDRDYD.mjs → chunk-USXU6ULZ.mjs} +4 -2
  134. package/dist/chunk-USXU6ULZ.mjs.map +1 -0
  135. package/dist/{chunk-MGUYIOP2.mjs → chunk-W2MRIP5P.mjs} +1 -1
  136. package/dist/chunk-W2MRIP5P.mjs.map +1 -0
  137. package/dist/chunk-WHMIHTPC.mjs +41 -0
  138. package/dist/chunk-WHMIHTPC.mjs.map +1 -0
  139. package/dist/{chunk-PUESATBQ.mjs → chunk-XC3UHH2U.mjs} +31 -45
  140. package/dist/chunk-XC3UHH2U.mjs.map +1 -0
  141. package/dist/chunk-XDYXNQDV.mjs +33 -0
  142. package/dist/chunk-XDYXNQDV.mjs.map +1 -0
  143. package/dist/{chunk-MKC7HZCM.mjs → chunk-XUWZ4HGD.mjs} +16 -15
  144. package/dist/chunk-XUWZ4HGD.mjs.map +1 -0
  145. package/dist/{chunk-GGEQEVZ4.mjs → chunk-YSFZCRWS.mjs} +1 -1
  146. package/dist/chunk-YSFZCRWS.mjs.map +1 -0
  147. package/dist/{chunk-XYIY6FHW.mjs → chunk-ZMLHJZQK.mjs} +9 -9
  148. package/dist/description-list/description-list.js.map +1 -1
  149. package/dist/description-list/description-list.mjs +1 -1
  150. package/dist/description-list/index.js.map +1 -1
  151. package/dist/description-list/index.mjs +1 -1
  152. package/dist/footer/footer.d.mts +1 -1
  153. package/dist/footer/footer.d.ts +1 -1
  154. package/dist/footer/footer.js +117 -134
  155. package/dist/footer/footer.js.map +1 -1
  156. package/dist/footer/footer.mjs +9 -9
  157. package/dist/footer/index.js +117 -134
  158. package/dist/footer/index.js.map +1 -1
  159. package/dist/footer/index.mjs +10 -10
  160. package/dist/form/checkbox/checkbox.js +25 -19
  161. package/dist/form/checkbox/checkbox.js.map +1 -1
  162. package/dist/form/checkbox/checkbox.mjs +3 -3
  163. package/dist/form/checkbox/index.js +25 -19
  164. package/dist/form/checkbox/index.js.map +1 -1
  165. package/dist/form/checkbox/index.mjs +3 -3
  166. package/dist/form/date-picker/date-picker.js +28 -22
  167. package/dist/form/date-picker/date-picker.js.map +1 -1
  168. package/dist/form/date-picker/date-picker.mjs +4 -4
  169. package/dist/form/date-picker/index.js +28 -22
  170. package/dist/form/date-picker/index.js.map +1 -1
  171. package/dist/form/date-picker/index.mjs +4 -4
  172. package/dist/form/error-message/error-message.d.mts +1 -1
  173. package/dist/form/error-message/error-message.d.ts +1 -1
  174. package/dist/form/error-message/error-message.js +46 -11
  175. package/dist/form/error-message/error-message.js.map +1 -1
  176. package/dist/form/error-message/error-message.mjs +1 -1
  177. package/dist/form/error-message/index.js +46 -11
  178. package/dist/form/error-message/index.js.map +1 -1
  179. package/dist/form/error-message/index.mjs +1 -1
  180. package/dist/form/fieldset/fieldset.js +22 -16
  181. package/dist/form/fieldset/fieldset.js.map +1 -1
  182. package/dist/form/fieldset/fieldset.mjs +2 -2
  183. package/dist/form/fieldset/index.js +22 -16
  184. package/dist/form/fieldset/index.js.map +1 -1
  185. package/dist/form/fieldset/index.mjs +2 -2
  186. package/dist/form/index.js +48 -42
  187. package/dist/form/index.js.map +1 -1
  188. package/dist/form/index.mjs +11 -11
  189. package/dist/form/input/index.js +26 -20
  190. package/dist/form/input/index.js.map +1 -1
  191. package/dist/form/input/index.mjs +3 -3
  192. package/dist/form/input/input.js +26 -20
  193. package/dist/form/input/input.js.map +1 -1
  194. package/dist/form/input/input.mjs +3 -3
  195. package/dist/form/input-group/index.js +24 -18
  196. package/dist/form/input-group/index.js.map +1 -1
  197. package/dist/form/input-group/index.mjs +2 -2
  198. package/dist/form/input-group/input-group.js +24 -18
  199. package/dist/form/input-group/input-group.js.map +1 -1
  200. package/dist/form/input-group/input-group.mjs +2 -2
  201. package/dist/form/radiobutton/index.js +28 -22
  202. package/dist/form/radiobutton/index.js.map +1 -1
  203. package/dist/form/radiobutton/index.mjs +4 -4
  204. package/dist/form/radiobutton/radiobutton.js +28 -22
  205. package/dist/form/radiobutton/radiobutton.js.map +1 -1
  206. package/dist/form/radiobutton/radiobutton.mjs +4 -4
  207. package/dist/form/radiobutton/radiogroup.js +25 -19
  208. package/dist/form/radiobutton/radiogroup.js.map +1 -1
  209. package/dist/form/radiobutton/radiogroup.mjs +3 -3
  210. package/dist/form/select/index.js +26 -20
  211. package/dist/form/select/index.js.map +1 -1
  212. package/dist/form/select/index.mjs +3 -3
  213. package/dist/form/select/select.js +26 -20
  214. package/dist/form/select/select.js.map +1 -1
  215. package/dist/form/select/select.mjs +3 -3
  216. package/dist/form/textarea/index.js +26 -20
  217. package/dist/form/textarea/index.js.map +1 -1
  218. package/dist/form/textarea/index.mjs +3 -3
  219. package/dist/form/textarea/textarea.js +26 -20
  220. package/dist/form/textarea/textarea.js.map +1 -1
  221. package/dist/form/textarea/textarea.mjs +3 -3
  222. package/dist/help-text/help-text.js +5 -3
  223. package/dist/help-text/help-text.js.map +1 -1
  224. package/dist/help-text/help-text.mjs +3 -3
  225. package/dist/help-text/index.js +5 -3
  226. package/dist/help-text/index.js.map +1 -1
  227. package/dist/help-text/index.mjs +3 -3
  228. package/dist/index-no-css.d.mts +12 -20
  229. package/dist/index-no-css.d.ts +12 -20
  230. package/dist/index-no-css.js +641 -655
  231. package/dist/index-no-css.js.map +1 -1
  232. package/dist/index-no-css.mjs +85 -92
  233. package/dist/index.d.mts +12 -20
  234. package/dist/index.d.ts +12 -20
  235. package/dist/index.js +641 -655
  236. package/dist/index.js.map +1 -1
  237. package/dist/index.mjs +85 -92
  238. package/dist/index.mjs.map +1 -1
  239. package/dist/layout/container/container.js +3 -1
  240. package/dist/layout/container/container.js.map +1 -1
  241. package/dist/layout/container/container.mjs +1 -1
  242. package/dist/layout/grid/grid.js.map +1 -1
  243. package/dist/layout/grid/grid.mjs +1 -1
  244. package/dist/layout/grid/index.js.map +1 -1
  245. package/dist/layout/grid/index.mjs +2 -2
  246. package/dist/layout/index.js +8 -6
  247. package/dist/layout/index.js.map +1 -1
  248. package/dist/layout/index.mjs +4 -4
  249. package/dist/layout/stack/index.js.map +1 -1
  250. package/dist/layout/stack/index.mjs +1 -1
  251. package/dist/layout/stack/stack.js.map +1 -1
  252. package/dist/layout/stack/stack.mjs +1 -1
  253. package/dist/link/index.js +3 -1
  254. package/dist/link/index.js.map +1 -1
  255. package/dist/link/index.mjs +1 -1
  256. package/dist/link/link.js +3 -1
  257. package/dist/link/link.js.map +1 -1
  258. package/dist/link/link.mjs +1 -1
  259. package/dist/list/index.js +39 -31
  260. package/dist/list/index.js.map +1 -1
  261. package/dist/list/index.mjs +2 -2
  262. package/dist/list/link-list.d.mts +1 -1
  263. package/dist/list/link-list.d.ts +1 -1
  264. package/dist/list/link-list.js +39 -31
  265. package/dist/list/link-list.js.map +1 -1
  266. package/dist/list/link-list.mjs +2 -2
  267. package/dist/list/list.d.mts +1 -1
  268. package/dist/list/list.d.ts +1 -1
  269. package/dist/list/list.js +26 -26
  270. package/dist/list/list.js.map +1 -1
  271. package/dist/list/list.mjs +1 -1
  272. package/dist/message/index.js +10 -5
  273. package/dist/message/index.js.map +1 -1
  274. package/dist/message/index.mjs +3 -3
  275. package/dist/message/message.js +10 -5
  276. package/dist/message/message.js.map +1 -1
  277. package/dist/message/message.mjs +2 -2
  278. package/dist/modal/index.d.mts +0 -1
  279. package/dist/modal/index.d.ts +0 -1
  280. package/dist/modal/index.js +17 -13
  281. package/dist/modal/index.js.map +1 -1
  282. package/dist/modal/index.mjs +4 -4
  283. package/dist/modal/modal.d.mts +0 -1
  284. package/dist/modal/modal.d.ts +0 -1
  285. package/dist/modal/modal.js +19 -17
  286. package/dist/modal/modal.js.map +1 -1
  287. package/dist/modal/modal.mjs +5 -7
  288. package/dist/navbar/icons.js.map +1 -1
  289. package/dist/navbar/icons.mjs +1 -1
  290. package/dist/navbar/index.d.mts +7 -1
  291. package/dist/navbar/index.d.ts +7 -1
  292. package/dist/navbar/index.js +113 -80
  293. package/dist/navbar/index.js.map +1 -1
  294. package/dist/navbar/index.mjs +19 -7
  295. package/dist/navbar/navbar-expandable-menu.d.mts +3 -3
  296. package/dist/navbar/navbar-expandable-menu.d.ts +3 -3
  297. package/dist/navbar/navbar-expandable-menu.js +35 -50
  298. package/dist/navbar/navbar-expandable-menu.js.map +1 -1
  299. package/dist/navbar/navbar-expandable-menu.mjs +3 -3
  300. package/dist/navbar/navbar.d.mts +4 -1
  301. package/dist/navbar/navbar.d.ts +4 -1
  302. package/dist/navbar/navbar.js +64 -24
  303. package/dist/navbar/navbar.js.map +1 -1
  304. package/dist/navbar/navbar.mjs +9 -3
  305. package/dist/show-more/index.js +1 -3
  306. package/dist/show-more/index.js.map +1 -1
  307. package/dist/show-more/index.mjs +3 -3
  308. package/dist/show-more/show-more.js.map +1 -1
  309. package/dist/show-more/show-more.mjs +1 -1
  310. package/dist/skeleton/index.js +9 -5
  311. package/dist/skeleton/index.js.map +1 -1
  312. package/dist/skeleton/index.mjs +1 -1
  313. package/dist/skeleton/skeleton.js +9 -5
  314. package/dist/skeleton/skeleton.js.map +1 -1
  315. package/dist/skeleton/skeleton.mjs +1 -1
  316. package/dist/styled-html/index.js +3 -1
  317. package/dist/styled-html/index.js.map +1 -1
  318. package/dist/styled-html/index.mjs +1 -1
  319. package/dist/styled-html/styled-html.js +3 -1
  320. package/dist/styled-html/styled-html.js.map +1 -1
  321. package/dist/styled-html/styled-html.mjs +1 -1
  322. package/dist/tabs/index.d.mts +2 -2
  323. package/dist/tabs/index.d.ts +2 -2
  324. package/dist/tabs/index.js +73 -63
  325. package/dist/tabs/index.js.map +1 -1
  326. package/dist/tabs/index.mjs +5 -5
  327. package/dist/tabs/tabs-content.d.mts +1 -1
  328. package/dist/tabs/tabs-content.d.ts +1 -1
  329. package/dist/tabs/tabs-content.js +10 -5
  330. package/dist/tabs/tabs-content.js.map +1 -1
  331. package/dist/tabs/tabs-content.mjs +1 -1
  332. package/dist/tabs/tabs-list.d.mts +1 -1
  333. package/dist/tabs/tabs-list.d.ts +1 -1
  334. package/dist/tabs/tabs-list.js +60 -57
  335. package/dist/tabs/tabs-list.js.map +1 -1
  336. package/dist/tabs/tabs-list.mjs +2 -2
  337. package/dist/tabs/tabs.js +3 -1
  338. package/dist/tabs/tabs.js.map +1 -1
  339. package/dist/tabs/tabs.mjs +1 -1
  340. package/dist/text/index.d.mts +0 -13
  341. package/dist/text/index.d.ts +0 -13
  342. package/dist/text/index.js +7 -68
  343. package/dist/text/index.js.map +1 -1
  344. package/dist/text/index.mjs +3 -30
  345. package/dist/text/text.js +5 -2
  346. package/dist/text/text.js.map +1 -1
  347. package/dist/text/text.mjs +1 -1
  348. package/dist/utilities/auto-animate-height.js +1 -3
  349. package/dist/utilities/auto-animate-height.js.map +1 -1
  350. package/dist/utilities/auto-animate-height.mjs +2 -2
  351. package/dist/utilities/index.js +1 -3
  352. package/dist/utilities/index.js.map +1 -1
  353. package/dist/utilities/index.mjs +2 -2
  354. package/dist/utils.d.mts +0 -1
  355. package/dist/utils.d.ts +0 -1
  356. package/dist/utils.js.map +1 -1
  357. package/dist/utils.mjs +1 -1
  358. package/dist/warning-banner/index.js +34 -46
  359. package/dist/warning-banner/index.js.map +1 -1
  360. package/dist/warning-banner/index.mjs +3 -3
  361. package/dist/warning-banner/warning-banner.js +34 -46
  362. package/dist/warning-banner/warning-banner.js.map +1 -1
  363. package/dist/warning-banner/warning-banner.mjs +3 -3
  364. package/package.json +3 -3
  365. package/dist/chunk-25R7DBK6.mjs.map +0 -1
  366. package/dist/chunk-57SSGJ4X.mjs.map +0 -1
  367. package/dist/chunk-5QL53TR2.mjs.map +0 -1
  368. package/dist/chunk-625SVQEP.mjs +0 -84
  369. package/dist/chunk-625SVQEP.mjs.map +0 -1
  370. package/dist/chunk-62F4I3MQ.mjs.map +0 -1
  371. package/dist/chunk-A47QULAK.mjs.map +0 -1
  372. package/dist/chunk-BWFFP6BB.mjs.map +0 -1
  373. package/dist/chunk-E2RTLHMZ.mjs.map +0 -1
  374. package/dist/chunk-EGXM575K.mjs.map +0 -1
  375. package/dist/chunk-FYNTNGIY.mjs +0 -61
  376. package/dist/chunk-FYNTNGIY.mjs.map +0 -1
  377. package/dist/chunk-GGEQEVZ4.mjs.map +0 -1
  378. package/dist/chunk-GJDRW6PA.mjs +0 -22
  379. package/dist/chunk-GJDRW6PA.mjs.map +0 -1
  380. package/dist/chunk-GUB3UCXO.mjs +0 -38
  381. package/dist/chunk-GUB3UCXO.mjs.map +0 -1
  382. package/dist/chunk-I6GDRDYD.mjs.map +0 -1
  383. package/dist/chunk-IL7576PP.mjs +0 -19
  384. package/dist/chunk-IL7576PP.mjs.map +0 -1
  385. package/dist/chunk-JXA3B33M.mjs.map +0 -1
  386. package/dist/chunk-ME66RUR6.mjs.map +0 -1
  387. package/dist/chunk-MF2AREPQ.mjs +0 -28
  388. package/dist/chunk-MF2AREPQ.mjs.map +0 -1
  389. package/dist/chunk-MGUYIOP2.mjs.map +0 -1
  390. package/dist/chunk-MKC7HZCM.mjs.map +0 -1
  391. package/dist/chunk-PMLDK3VC.mjs +0 -39
  392. package/dist/chunk-PMLDK3VC.mjs.map +0 -1
  393. package/dist/chunk-PUESATBQ.mjs.map +0 -1
  394. package/dist/chunk-PYR6QEIS.mjs.map +0 -1
  395. package/dist/chunk-S3BGPCLK.mjs.map +0 -1
  396. package/dist/chunk-S5RB7KLJ.mjs.map +0 -1
  397. package/dist/chunk-SRLRTLHS.mjs +0 -106
  398. package/dist/chunk-SRLRTLHS.mjs.map +0 -1
  399. package/dist/chunk-UWTGHSWT.mjs.map +0 -1
  400. package/dist/chunk-UXJIK76H.mjs.map +0 -1
  401. package/dist/chunk-VRIY65P5.mjs.map +0 -1
  402. package/dist/chunk-VVPJOVFP.mjs.map +0 -1
  403. package/dist/chunk-W3D4VR4Y.mjs +0 -61
  404. package/dist/chunk-W3D4VR4Y.mjs.map +0 -1
  405. package/dist/chunk-X5JERDDU.mjs +0 -131
  406. package/dist/chunk-X5JERDDU.mjs.map +0 -1
  407. package/dist/chunk-XE4UZBL2.mjs +0 -33
  408. package/dist/chunk-XE4UZBL2.mjs.map +0 -1
  409. package/dist/chunk-XVFQWVHO.mjs.map +0 -1
  410. package/dist/chunk-YXHXRUFX.mjs +0 -42
  411. package/dist/chunk-YXHXRUFX.mjs.map +0 -1
  412. package/dist/chunk-Z753E3XF.mjs.map +0 -1
  413. package/dist/chunk-ZDPU3N54.mjs.map +0 -1
  414. /package/dist/{chunk-NMMFIRLZ.mjs.map → chunk-3NL3TOZF.mjs.map} +0 -0
  415. /package/dist/{chunk-DM4PJFLG.mjs.map → chunk-6N4TGRZB.mjs.map} +0 -0
  416. /package/dist/{chunk-JDXYRFLJ.mjs.map → chunk-722MZPXO.mjs.map} +0 -0
  417. /package/dist/{chunk-HMB4TY2F.mjs.map → chunk-7W4HONVO.mjs.map} +0 -0
  418. /package/dist/{chunk-YC7MT6SO.mjs.map → chunk-A4ME3VXV.mjs.map} +0 -0
  419. /package/dist/{chunk-4GSNPCNT.mjs.map → chunk-CYEYGPRH.mjs.map} +0 -0
  420. /package/dist/{chunk-E2AG5TUR.mjs.map → chunk-DCCQXWD6.mjs.map} +0 -0
  421. /package/dist/{chunk-EJ7ANN7M.mjs.map → chunk-IKJJWKXM.mjs.map} +0 -0
  422. /package/dist/{chunk-KTRIVJM3.mjs.map → chunk-JL4PLDXN.mjs.map} +0 -0
  423. /package/dist/{chunk-CSAEHQ4R.mjs.map → chunk-LTTJWLS7.mjs.map} +0 -0
  424. /package/dist/{chunk-DFH4YKQA.mjs.map → chunk-NAIBK23T.mjs.map} +0 -0
  425. /package/dist/{chunk-TNU64NUN.mjs.map → chunk-P6WIBHQH.mjs.map} +0 -0
  426. /package/dist/{chunk-5YMUST7H.mjs.map → chunk-QY2K3GWU.mjs.map} +0 -0
  427. /package/dist/{chunk-6NGF7FFY.mjs.map → chunk-RYM3LM7K.mjs.map} +0 -0
  428. /package/dist/{chunk-RHCMBJOT.mjs.map → chunk-UMYOYHUI.mjs.map} +0 -0
  429. /package/dist/{chunk-XYIY6FHW.mjs.map → chunk-ZMLHJZQK.mjs.map} +0 -0
@@ -1,5 +1,6 @@
1
- export { Badge_alias_3 as Badge } from '../_tsup-dts-rollup';
1
+ export { Badge_alias_2 as Badge } from '../_tsup-dts-rollup';
2
2
  export { DarkBadge_alias_3 as DarkBadge } from '../_tsup-dts-rollup';
3
3
  export { WarningBadge_alias_3 as WarningBadge } from '../_tsup-dts-rollup';
4
4
  export { WhiteBadge_alias_3 as WhiteBadge } from '../_tsup-dts-rollup';
5
5
  export { BadgeProps_alias_3 as BadgeProps } from '../_tsup-dts-rollup';
6
+ export { LighterBadge_alias_3 as LighterBadge } from '../_tsup-dts-rollup';
@@ -49,7 +49,7 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
49
49
  // src/badge/index.tsx
50
50
  var badge_exports = {};
51
51
  __export(badge_exports, {
52
- Badge: () => Badge,
52
+ Badge: () => LighterBadge,
53
53
  DarkBadge: () => DarkBadge,
54
54
  WarningBadge: () => WarningBadge,
55
55
  WhiteBadge: () => WhiteBadge
@@ -57,24 +57,17 @@ __export(badge_exports, {
57
57
  module.exports = __toCommonJS(badge_exports);
58
58
 
59
59
  // src/badge/badge.tsx
60
- var React = require("react");
61
60
  var import_typed_classname = require("@postenbring/hedwig-css/typed-classname");
61
+ var import_react_slot = require("@radix-ui/react-slot");
62
+ var import_react = require("react");
62
63
  var import_jsx_runtime = require("react/jsx-runtime");
63
- function BaseBadge(_a) {
64
- var _b = _a, {
65
- children,
66
- variant,
67
- size = "small",
68
- className
69
- } = _b, rest = __objRest(_b, [
70
- "children",
71
- "variant",
72
- "size",
73
- "className"
74
- ]);
64
+ var Badge = (0, import_react.forwardRef)((_a, ref) => {
65
+ var _b = _a, { children, asChild, variant, size = "small", className } = _b, rest = __objRest(_b, ["children", "asChild", "variant", "size", "className"]);
66
+ const Component = asChild ? import_react_slot.Slot : "span";
75
67
  return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
76
- "span",
68
+ Component,
77
69
  __spreadProps(__spreadValues({
70
+ ref,
78
71
  className: (0, import_typed_classname.clsx)(
79
72
  "hds-badge",
80
73
  `hds-badge--${size}`,
@@ -85,23 +78,23 @@ function BaseBadge(_a) {
85
78
  children
86
79
  })
87
80
  );
88
- }
89
- BaseBadge.displayName = "BaseBadge";
90
- function Badge(props) {
91
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseBadge, __spreadProps(__spreadValues({}, props), { variant: "lighter" }));
92
- }
81
+ });
93
82
  Badge.displayName = "Badge";
94
- function DarkBadge(props) {
95
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseBadge, __spreadProps(__spreadValues({}, props), { variant: "dark" }));
96
- }
83
+ var LighterBadge = (0, import_react.forwardRef)((props, ref) => {
84
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Badge, __spreadProps(__spreadValues({}, props), { ref, variant: "lighter" }));
85
+ });
86
+ LighterBadge.displayName = "LighterBadge";
87
+ var DarkBadge = (0, import_react.forwardRef)((props, ref) => {
88
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Badge, __spreadProps(__spreadValues({}, props), { ref, variant: "dark" }));
89
+ });
97
90
  DarkBadge.displayName = "DarkBadge";
98
- function WhiteBadge(props) {
99
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseBadge, __spreadProps(__spreadValues({}, props), { variant: "white" }));
100
- }
91
+ var WhiteBadge = (0, import_react.forwardRef)((props, ref) => {
92
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Badge, __spreadProps(__spreadValues({}, props), { ref, variant: "white" }));
93
+ });
101
94
  WhiteBadge.displayName = "WhiteBadge";
102
- function WarningBadge(props) {
103
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseBadge, __spreadProps(__spreadValues({}, props), { variant: "warning" }));
104
- }
95
+ var WarningBadge = (0, import_react.forwardRef)((props, ref) => {
96
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Badge, __spreadProps(__spreadValues({}, props), { ref, variant: "warning" }));
97
+ });
105
98
  WarningBadge.displayName = "WarningBadge";
106
99
  // Annotate the CommonJS export names for ESM import in node:
107
100
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/badge/index.tsx","../../src/badge/badge.tsx"],"sourcesContent":["export { Badge, DarkBadge, WarningBadge, WhiteBadge } from \"./badge\";\n\nexport type * from \"./badge\";\n","import * as React from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\n\nexport interface BadgeProps extends React.AnchorHTMLAttributes<HTMLSpanElement> {\n /**\n * Font size of the badge\n */\n size?: \"small\" | \"smaller\";\n\n children: React.ReactNode;\n}\n\nfunction BaseBadge({\n children,\n variant,\n size = \"small\",\n className,\n ...rest\n}: BadgeProps & { variant: \"lighter\" | \"dark\" | \"white\" | \"warning\" }) {\n return (\n <span\n className={clsx(\n \"hds-badge\",\n `hds-badge--${size}`,\n `hds-badge--${variant}`,\n className as undefined,\n )}\n {...rest}\n >\n {children}\n </span>\n );\n}\n\nBaseBadge.displayName = \"BaseBadge\";\n\nexport function Badge(props: BadgeProps) {\n return <BaseBadge {...props} variant=\"lighter\" />;\n}\n\nBadge.displayName = \"Badge\";\n\nexport function DarkBadge(props: BadgeProps) {\n return <BaseBadge {...props} variant=\"dark\" />;\n}\n\nDarkBadge.displayName = \"DarkBadge\";\n\nexport function WhiteBadge(props: BadgeProps) {\n return <BaseBadge {...props} variant=\"white\" />;\n}\n\nWhiteBadge.displayName = \"WhiteBadge\";\n\nexport function WarningBadge(props: BadgeProps) {\n return <BaseBadge {...props} variant=\"warning\" />;\n}\n\nWarningBadge.displayName = \"WarningBadge\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,YAAuB;AACvB,6BAAqB;AAmBjB;AARJ,SAAS,UAAU,IAMoD;AANpD,eACjB;AAAA;AAAA,IACA;AAAA,IACA,OAAO;AAAA,IACP;AAAA,EAhBF,IAYmB,IAKd,iBALc,IAKd;AAAA,IAJH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA;AAGA,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAW;AAAA,QACT;AAAA,QACA,cAAc,IAAI;AAAA,QAClB,cAAc,OAAO;AAAA,QACrB;AAAA,MACF;AAAA,OACI,OAPL;AAAA,MASE;AAAA;AAAA,EACH;AAEJ;AAEA,UAAU,cAAc;AAEjB,SAAS,MAAM,OAAmB;AACvC,SAAO,4CAAC,4CAAc,QAAd,EAAqB,SAAQ,YAAU;AACjD;AAEA,MAAM,cAAc;AAEb,SAAS,UAAU,OAAmB;AAC3C,SAAO,4CAAC,4CAAc,QAAd,EAAqB,SAAQ,SAAO;AAC9C;AAEA,UAAU,cAAc;AAEjB,SAAS,WAAW,OAAmB;AAC5C,SAAO,4CAAC,4CAAc,QAAd,EAAqB,SAAQ,UAAQ;AAC/C;AAEA,WAAW,cAAc;AAElB,SAAS,aAAa,OAAmB;AAC9C,SAAO,4CAAC,4CAAc,QAAd,EAAqB,SAAQ,YAAU;AACjD;AAEA,aAAa,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/badge/index.tsx","../../src/badge/badge.tsx"],"sourcesContent":["export { LighterBadge as Badge, DarkBadge, WarningBadge, WhiteBadge } from \"./badge\";\n\nexport type * from \"./badge\";\n","import { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { Slot } from \"@radix-ui/react-slot\";\nimport { forwardRef } from \"react\";\n\nexport interface BadgeProps extends React.AnchorHTMLAttributes<HTMLSpanElement> {\n children: React.ReactNode;\n\n /**\n * Font size of the badge\n *\n * @default \"small\"\n */\n size?: \"small\" | \"smaller\";\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 Badge = forwardRef<\n HTMLSpanElement,\n BadgeProps & { variant: \"lighter\" | \"dark\" | \"white\" | \"warning\" }\n>(({ children, asChild, variant, size = \"small\", className, ...rest }, ref) => {\n const Component = asChild ? Slot : \"span\";\n return (\n <Component\n ref={ref}\n className={clsx(\n \"hds-badge\",\n `hds-badge--${size}`,\n `hds-badge--${variant}`,\n className as undefined,\n )}\n {...rest}\n >\n {children}\n </Component>\n );\n});\nBadge.displayName = \"Badge\";\n\nexport const LighterBadge = forwardRef<HTMLSpanElement, BadgeProps>((props, ref) => {\n return <Badge {...props} ref={ref} variant=\"lighter\" />;\n});\nLighterBadge.displayName = \"LighterBadge\";\n\nexport const DarkBadge = forwardRef<HTMLSpanElement, BadgeProps>((props, ref) => {\n return <Badge {...props} ref={ref} variant=\"dark\" />;\n});\nDarkBadge.displayName = \"DarkBadge\";\n\nexport const WhiteBadge = forwardRef<HTMLSpanElement, BadgeProps>((props, ref) => {\n return <Badge {...props} ref={ref} variant=\"white\" />;\n});\nWhiteBadge.displayName = \"WhiteBadge\";\n\nexport const WarningBadge = forwardRef<HTMLSpanElement, BadgeProps>((props, ref) => {\n return <Badge {...props} ref={ref} variant=\"warning\" />;\n});\nWarningBadge.displayName = \"WarningBadge\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,6BAAqB;AACrB,wBAAqB;AACrB,mBAA2B;AA0BvB;AANJ,IAAM,YAAQ,yBAGZ,CAAC,IAAoE,QAAQ;AAA5E,eAAE,YAAU,SAAS,SAAS,OAAO,SAAS,UAzBjD,IAyBG,IAA4D,iBAA5D,IAA4D,CAA1D,YAAU,WAAS,WAAS,QAAgB;AAC/C,QAAM,YAAY,UAAU,yBAAO;AACnC,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,eAAW;AAAA,QACT;AAAA,QACA,cAAc,IAAI;AAAA,QAClB,cAAc,OAAO;AAAA,QACrB;AAAA,MACF;AAAA,OACI,OARL;AAAA,MAUE;AAAA;AAAA,EACH;AAEJ,CAAC;AACD,MAAM,cAAc;AAEb,IAAM,mBAAe,yBAAwC,CAAC,OAAO,QAAQ;AAClF,SAAO,4CAAC,wCAAU,QAAV,EAAiB,KAAU,SAAQ,YAAU;AACvD,CAAC;AACD,aAAa,cAAc;AAEpB,IAAM,gBAAY,yBAAwC,CAAC,OAAO,QAAQ;AAC/E,SAAO,4CAAC,wCAAU,QAAV,EAAiB,KAAU,SAAQ,SAAO;AACpD,CAAC;AACD,UAAU,cAAc;AAEjB,IAAM,iBAAa,yBAAwC,CAAC,OAAO,QAAQ;AAChF,SAAO,4CAAC,wCAAU,QAAV,EAAiB,KAAU,SAAQ,UAAQ;AACrD,CAAC;AACD,WAAW,cAAc;AAElB,IAAM,mBAAe,yBAAwC,CAAC,OAAO,QAAQ;AAClF,SAAO,4CAAC,wCAAU,QAAV,EAAiB,KAAU,SAAQ,YAAU;AACvD,CAAC;AACD,aAAa,cAAc;","names":[]}
@@ -1,13 +1,13 @@
1
1
  import "../chunk-K6PP3ACJ.mjs";
2
2
  import {
3
- Badge,
4
3
  DarkBadge,
4
+ LighterBadge,
5
5
  WarningBadge,
6
6
  WhiteBadge
7
- } from "../chunk-W3D4VR4Y.mjs";
7
+ } from "../chunk-P6KBFRF4.mjs";
8
8
  import "../chunk-R4SQKVDQ.mjs";
9
9
  export {
10
- Badge,
10
+ LighterBadge as Badge,
11
11
  DarkBadge,
12
12
  WarningBadge,
13
13
  WhiteBadge
package/dist/box/box.js CHANGED
@@ -55,11 +55,12 @@ __export(box_exports, {
55
55
  module.exports = __toCommonJS(box_exports);
56
56
  var import_react = require("react");
57
57
  var import_typed_classname = require("@postenbring/hedwig-css/typed-classname");
58
+ var import_react_slot = require("@radix-ui/react-slot");
58
59
  var import_jsx_runtime = require("react/jsx-runtime");
59
60
  var Box = (0, import_react.forwardRef)(
60
61
  (_a, ref) => {
61
62
  var _b = _a, {
62
- as: Component = "div",
63
+ asChild,
63
64
  variant,
64
65
  closeable = false,
65
66
  onClose: onCloseProp,
@@ -68,7 +69,7 @@ var Box = (0, import_react.forwardRef)(
68
69
  children,
69
70
  className
70
71
  } = _b, rest = __objRest(_b, [
71
- "as",
72
+ "asChild",
72
73
  "variant",
73
74
  "closeable",
74
75
  "onClose",
@@ -89,6 +90,7 @@ var Box = (0, import_react.forwardRef)(
89
90
  }
90
91
  }, []);
91
92
  const closed = closedProp != null ? closedProp : closedState;
93
+ const Component = asChild ? import_react_slot.Slot : "div";
92
94
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
93
95
  Component,
94
96
  __spreadProps(__spreadValues({
@@ -102,7 +104,7 @@ var Box = (0, import_react.forwardRef)(
102
104
  }, rest), {
103
105
  children: [
104
106
  closeable ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BoxCloseButton, __spreadValues({ onClick: onClose }, closeButtonProps)) : null,
105
- children
107
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_slot.Slottable, { children })
106
108
  ]
107
109
  })
108
110
  );
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/box/box.tsx"],"sourcesContent":["import { forwardRef, useCallback, useState } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport type { OverridableComponent } from \"../utils\";\n\nexport interface BoxProps extends React.HTMLAttributes<HTMLDivElement> {\n variant?: \"light-grey\" | \"lighter\" | \"white\" | \"warning\";\n children?: React.ReactNode;\n\n /**\n * If `true`, a close button will be shown.\n * Use when you want to control the close button using the BoxCloseButton component.\n */\n closeable?: boolean;\n\n /**\n * Callback fired when the component requests to be closed.\n * If not set, the component will be closed without any user interaction.\n *\n * If set, and the handler returns non-true value, the component will not be closed.\n * Use this if you want to control the closing of the component, using the `closed` prop\n *\n * If set, and the handler returns the true, the component will be closed.\n * Use this with `window.confirm()` to ask the user to confirm closing the component.\n */\n // eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents -- It's fine, I want to have the boolean in the type\n onClose?: () => boolean | unknown;\n\n /**\n * If `true`, the box will be closed and hidden from view\n */\n closed?: boolean;\n\n /**\n * Props applied to the close button element.\n */\n closeButtonProps?: BoxCloseButtonProps;\n}\n\nexport const Box: OverridableComponent<BoxProps, HTMLDivElement> = forwardRef(\n (\n {\n as: Component = \"div\",\n variant,\n closeable = false,\n onClose: onCloseProp,\n closed: closedProp,\n closeButtonProps,\n children,\n className,\n ...rest\n },\n ref,\n ) => {\n const [closedState, setClosedState] = useState(false);\n const onClose = useCallback(() => {\n if (onCloseProp) {\n const result = onCloseProp();\n if (result === true) {\n setClosedState(true);\n }\n } else {\n setClosedState(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- I know better\n }, []);\n const closed = closedProp ?? closedState;\n\n return (\n <Component\n className={clsx(\n \"hds-box\",\n variant && `hds-box--${variant}`,\n { \"hds-box--closed\": closed },\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {closeable ? <BoxCloseButton onClick={onClose} {...closeButtonProps} /> : null}\n {children}\n </Component>\n );\n },\n);\nBox.displayName = \"Box\";\n\nexport type BoxCloseButtonProps = Omit<React.HTMLAttributes<HTMLButtonElement>, \"children\">;\nexport const BoxCloseButton = forwardRef<HTMLButtonElement, BoxCloseButtonProps>(\n ({ className, ...rest }, ref) => {\n return (\n <button\n className={clsx(\"hds-box__close-button\", className as undefined)}\n ref={ref}\n type=\"button\"\n {...rest}\n />\n );\n },\n);\nBoxCloseButton.displayName = \"Box.CloseButton\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkD;AAClD,6BAAqB;AAmEf;AA9BC,IAAM,UAAsD;AAAA,EACjE,CACE,IAWA,QACG;AAZH,iBACE;AAAA,UAAI,YAAY;AAAA,MAChB;AAAA,MACA,YAAY;AAAA,MACZ,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,IAhDN,IAwCI,IASK,iBATL,IASK;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAKF,UAAM,CAAC,aAAa,cAAc,QAAI,uBAAS,KAAK;AACpD,UAAM,cAAU,0BAAY,MAAM;AAChC,UAAI,aAAa;AACf,cAAM,SAAS,YAAY;AAC3B,YAAI,WAAW,MAAM;AACnB,yBAAe,IAAI;AAAA,QACrB;AAAA,MACF,OAAO;AACL,uBAAe,IAAI;AAAA,MACrB;AAAA,IAEF,GAAG,CAAC,CAAC;AACL,UAAM,SAAS,kCAAc;AAE7B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW;AAAA,UACT;AAAA,UACA,WAAW,YAAY,OAAO;AAAA,UAC9B,EAAE,mBAAmB,OAAO;AAAA,UAC5B;AAAA,QACF;AAAA,QACA;AAAA,SACI,OARL;AAAA,QAUE;AAAA,sBAAY,4CAAC,iCAAe,SAAS,WAAa,iBAAkB,IAAK;AAAA,UACzE;AAAA;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AACA,IAAI,cAAc;AAGX,IAAM,qBAAiB;AAAA,EAC5B,CAAC,IAAwB,QAAQ;AAAhC,iBAAE,YAxFL,IAwFG,IAAgB,iBAAhB,IAAgB,CAAd;AACD,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW,6BAAK,yBAAyB,SAAsB;AAAA,QAC/D;AAAA,QACA,MAAK;AAAA,SACD;AAAA,IACN;AAAA,EAEJ;AACF;AACA,eAAe,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/box/box.tsx"],"sourcesContent":["import { forwardRef, useCallback, useState } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { Slot, Slottable } from \"@radix-ui/react-slot\";\n\nexport interface BoxProps extends React.HTMLAttributes<HTMLDivElement> {\n children?: React.ReactNode;\n\n /**\n * Color variant of the box\n *\n * @default \"light-grey\"\n */\n variant?: \"light-grey\" | \"lighter\" | \"white\" | \"warning\";\n\n /**\n * If `true`, a close button will be shown.\n * Use when you want to control the close button using the BoxCloseButton component.\n *\n * @default false\n */\n closeable?: boolean;\n\n /**\n * Callback fired when the component requests to be closed.\n * If not set, the component will be closed without any user interaction.\n *\n * If set, and the handler returns non-true value, the component will not be closed.\n * Use this if you want to control the closing of the component, using the `closed` prop\n *\n * If set, and the handler returns the true, the component will be closed.\n * Use this with `window.confirm()` to ask the user to confirm closing the component.\n */\n // eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents -- It's fine, I want to have the boolean in the type\n onClose?: () => boolean | unknown;\n\n /**\n * If `true`, the box will be closed and hidden from view\n */\n closed?: boolean;\n\n /**\n * Props applied to the close button element.\n */\n closeButtonProps?: BoxCloseButtonProps;\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\nexport const Box = forwardRef<HTMLDivElement, BoxProps>(\n (\n {\n asChild,\n variant,\n closeable = false,\n onClose: onCloseProp,\n closed: closedProp,\n closeButtonProps,\n children,\n className,\n ...rest\n },\n ref,\n ) => {\n const [closedState, setClosedState] = useState(false);\n const onClose = useCallback(() => {\n if (onCloseProp) {\n const result = onCloseProp();\n if (result === true) {\n setClosedState(true);\n }\n } else {\n setClosedState(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- I know better\n }, []);\n const closed = closedProp ?? closedState;\n const Component = asChild ? Slot : \"div\";\n\n return (\n <Component\n className={clsx(\n \"hds-box\",\n variant && `hds-box--${variant}`,\n { \"hds-box--closed\": closed },\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {closeable ? <BoxCloseButton onClick={onClose} {...closeButtonProps} /> : null}\n <Slottable>{children}</Slottable>\n </Component>\n );\n },\n);\nBox.displayName = \"Box\";\n\nexport type BoxCloseButtonProps = Omit<React.HTMLAttributes<HTMLButtonElement>, \"children\">;\nexport const BoxCloseButton = forwardRef<HTMLButtonElement, BoxCloseButtonProps>(\n ({ className, ...rest }, ref) => {\n return (\n <button\n className={clsx(\"hds-box__close-button\", className as undefined)}\n ref={ref}\n type=\"button\"\n {...rest}\n />\n );\n },\n);\nBoxCloseButton.displayName = \"Box.CloseButton\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAkD;AAClD,6BAAqB;AACrB,wBAAgC;AAkF1B;AA/BC,IAAM,UAAM;AAAA,EACjB,CACE,IAWA,QACG;AAZH,iBACE;AAAA;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,IA/DN,IAuDI,IASK,iBATL,IASK;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAKF,UAAM,CAAC,aAAa,cAAc,QAAI,uBAAS,KAAK;AACpD,UAAM,cAAU,0BAAY,MAAM;AAChC,UAAI,aAAa;AACf,cAAM,SAAS,YAAY;AAC3B,YAAI,WAAW,MAAM;AACnB,yBAAe,IAAI;AAAA,QACrB;AAAA,MACF,OAAO;AACL,uBAAe,IAAI;AAAA,MACrB;AAAA,IAEF,GAAG,CAAC,CAAC;AACL,UAAM,SAAS,kCAAc;AAC7B,UAAM,YAAY,UAAU,yBAAO;AAEnC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW;AAAA,UACT;AAAA,UACA,WAAW,YAAY,OAAO;AAAA,UAC9B,EAAE,mBAAmB,OAAO;AAAA,UAC5B;AAAA,QACF;AAAA,QACA;AAAA,SACI,OARL;AAAA,QAUE;AAAA,sBAAY,4CAAC,iCAAe,SAAS,WAAa,iBAAkB,IAAK;AAAA,UAC1E,4CAAC,+BAAW,UAAS;AAAA;AAAA;AAAA,IACvB;AAAA,EAEJ;AACF;AACA,IAAI,cAAc;AAGX,IAAM,qBAAiB;AAAA,EAC5B,CAAC,IAAwB,QAAQ;AAAhC,iBAAE,YAxGL,IAwGG,IAAgB,iBAAhB,IAAgB,CAAd;AACD,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW,6BAAK,yBAAyB,SAAsB;AAAA,QAC/D;AAAA,QACA,MAAK;AAAA,SACD;AAAA,IACN;AAAA,EAEJ;AACF;AACA,eAAe,cAAc;","names":[]}
package/dist/box/box.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  Box,
3
3
  BoxCloseButton
4
- } from "../chunk-EGXM575K.mjs";
4
+ } from "../chunk-ENKVTAJB.mjs";
5
5
  import "../chunk-R4SQKVDQ.mjs";
6
6
  export {
7
7
  Box,
package/dist/box/index.js CHANGED
@@ -57,11 +57,12 @@ module.exports = __toCommonJS(box_exports);
57
57
  // src/box/box.tsx
58
58
  var import_react = require("react");
59
59
  var import_typed_classname = require("@postenbring/hedwig-css/typed-classname");
60
+ var import_react_slot = require("@radix-ui/react-slot");
60
61
  var import_jsx_runtime = require("react/jsx-runtime");
61
62
  var Box = (0, import_react.forwardRef)(
62
63
  (_a, ref) => {
63
64
  var _b = _a, {
64
- as: Component = "div",
65
+ asChild,
65
66
  variant,
66
67
  closeable = false,
67
68
  onClose: onCloseProp,
@@ -70,7 +71,7 @@ var Box = (0, import_react.forwardRef)(
70
71
  children,
71
72
  className
72
73
  } = _b, rest = __objRest(_b, [
73
- "as",
74
+ "asChild",
74
75
  "variant",
75
76
  "closeable",
76
77
  "onClose",
@@ -91,6 +92,7 @@ var Box = (0, import_react.forwardRef)(
91
92
  }
92
93
  }, []);
93
94
  const closed = closedProp != null ? closedProp : closedState;
95
+ const Component = asChild ? import_react_slot.Slot : "div";
94
96
  return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
95
97
  Component,
96
98
  __spreadProps(__spreadValues({
@@ -104,7 +106,7 @@ var Box = (0, import_react.forwardRef)(
104
106
  }, rest), {
105
107
  children: [
106
108
  closeable ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BoxCloseButton, __spreadValues({ onClick: onClose }, closeButtonProps)) : null,
107
- children
109
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react_slot.Slottable, { children })
108
110
  ]
109
111
  })
110
112
  );
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/box/index.tsx","../../src/box/box.tsx"],"sourcesContent":["import { Box, BoxCloseButton } from \"./box\";\n\nconst BoxComponent = Box as typeof Box & {\n CloseButton: typeof BoxCloseButton;\n};\nBoxComponent.CloseButton = BoxCloseButton;\n\nexport { BoxComponent as Box, BoxCloseButton };\n\nexport type * from \"./box\";\n","import { forwardRef, useCallback, useState } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport type { OverridableComponent } from \"../utils\";\n\nexport interface BoxProps extends React.HTMLAttributes<HTMLDivElement> {\n variant?: \"light-grey\" | \"lighter\" | \"white\" | \"warning\";\n children?: React.ReactNode;\n\n /**\n * If `true`, a close button will be shown.\n * Use when you want to control the close button using the BoxCloseButton component.\n */\n closeable?: boolean;\n\n /**\n * Callback fired when the component requests to be closed.\n * If not set, the component will be closed without any user interaction.\n *\n * If set, and the handler returns non-true value, the component will not be closed.\n * Use this if you want to control the closing of the component, using the `closed` prop\n *\n * If set, and the handler returns the true, the component will be closed.\n * Use this with `window.confirm()` to ask the user to confirm closing the component.\n */\n // eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents -- It's fine, I want to have the boolean in the type\n onClose?: () => boolean | unknown;\n\n /**\n * If `true`, the box will be closed and hidden from view\n */\n closed?: boolean;\n\n /**\n * Props applied to the close button element.\n */\n closeButtonProps?: BoxCloseButtonProps;\n}\n\nexport const Box: OverridableComponent<BoxProps, HTMLDivElement> = forwardRef(\n (\n {\n as: Component = \"div\",\n variant,\n closeable = false,\n onClose: onCloseProp,\n closed: closedProp,\n closeButtonProps,\n children,\n className,\n ...rest\n },\n ref,\n ) => {\n const [closedState, setClosedState] = useState(false);\n const onClose = useCallback(() => {\n if (onCloseProp) {\n const result = onCloseProp();\n if (result === true) {\n setClosedState(true);\n }\n } else {\n setClosedState(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- I know better\n }, []);\n const closed = closedProp ?? closedState;\n\n return (\n <Component\n className={clsx(\n \"hds-box\",\n variant && `hds-box--${variant}`,\n { \"hds-box--closed\": closed },\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {closeable ? <BoxCloseButton onClick={onClose} {...closeButtonProps} /> : null}\n {children}\n </Component>\n );\n },\n);\nBox.displayName = \"Box\";\n\nexport type BoxCloseButtonProps = Omit<React.HTMLAttributes<HTMLButtonElement>, \"children\">;\nexport const BoxCloseButton = forwardRef<HTMLButtonElement, BoxCloseButtonProps>(\n ({ className, ...rest }, ref) => {\n return (\n <button\n className={clsx(\"hds-box__close-button\", className as undefined)}\n ref={ref}\n type=\"button\"\n {...rest}\n />\n );\n },\n);\nBoxCloseButton.displayName = \"Box.CloseButton\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,mBAAkD;AAClD,6BAAqB;AAmEf;AA9BC,IAAM,UAAsD;AAAA,EACjE,CACE,IAWA,QACG;AAZH,iBACE;AAAA,UAAI,YAAY;AAAA,MAChB;AAAA,MACA,YAAY;AAAA,MACZ,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,IAhDN,IAwCI,IASK,iBATL,IASK;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAKF,UAAM,CAAC,aAAa,cAAc,QAAI,uBAAS,KAAK;AACpD,UAAM,cAAU,0BAAY,MAAM;AAChC,UAAI,aAAa;AACf,cAAM,SAAS,YAAY;AAC3B,YAAI,WAAW,MAAM;AACnB,yBAAe,IAAI;AAAA,QACrB;AAAA,MACF,OAAO;AACL,uBAAe,IAAI;AAAA,MACrB;AAAA,IAEF,GAAG,CAAC,CAAC;AACL,UAAM,SAAS,kCAAc;AAE7B,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW;AAAA,UACT;AAAA,UACA,WAAW,YAAY,OAAO;AAAA,UAC9B,EAAE,mBAAmB,OAAO;AAAA,UAC5B;AAAA,QACF;AAAA,QACA;AAAA,SACI,OARL;AAAA,QAUE;AAAA,sBAAY,4CAAC,iCAAe,SAAS,WAAa,iBAAkB,IAAK;AAAA,UACzE;AAAA;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AACA,IAAI,cAAc;AAGX,IAAM,qBAAiB;AAAA,EAC5B,CAAC,IAAwB,QAAQ;AAAhC,iBAAE,YAxFL,IAwFG,IAAgB,iBAAhB,IAAgB,CAAd;AACD,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW,6BAAK,yBAAyB,SAAsB;AAAA,QAC/D;AAAA,QACA,MAAK;AAAA,SACD;AAAA,IACN;AAAA,EAEJ;AACF;AACA,eAAe,cAAc;;;ADjG7B,IAAM,eAAe;AAGrB,aAAa,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/box/index.tsx","../../src/box/box.tsx"],"sourcesContent":["import { Box, BoxCloseButton } from \"./box\";\n\nconst BoxComponent = Box as typeof Box & {\n CloseButton: typeof BoxCloseButton;\n};\nBoxComponent.CloseButton = BoxCloseButton;\n\nexport { BoxComponent as Box, BoxCloseButton };\n\nexport type * from \"./box\";\n","import { forwardRef, useCallback, useState } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport { Slot, Slottable } from \"@radix-ui/react-slot\";\n\nexport interface BoxProps extends React.HTMLAttributes<HTMLDivElement> {\n children?: React.ReactNode;\n\n /**\n * Color variant of the box\n *\n * @default \"light-grey\"\n */\n variant?: \"light-grey\" | \"lighter\" | \"white\" | \"warning\";\n\n /**\n * If `true`, a close button will be shown.\n * Use when you want to control the close button using the BoxCloseButton component.\n *\n * @default false\n */\n closeable?: boolean;\n\n /**\n * Callback fired when the component requests to be closed.\n * If not set, the component will be closed without any user interaction.\n *\n * If set, and the handler returns non-true value, the component will not be closed.\n * Use this if you want to control the closing of the component, using the `closed` prop\n *\n * If set, and the handler returns the true, the component will be closed.\n * Use this with `window.confirm()` to ask the user to confirm closing the component.\n */\n // eslint-disable-next-line @typescript-eslint/no-redundant-type-constituents -- It's fine, I want to have the boolean in the type\n onClose?: () => boolean | unknown;\n\n /**\n * If `true`, the box will be closed and hidden from view\n */\n closed?: boolean;\n\n /**\n * Props applied to the close button element.\n */\n closeButtonProps?: BoxCloseButtonProps;\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\nexport const Box = forwardRef<HTMLDivElement, BoxProps>(\n (\n {\n asChild,\n variant,\n closeable = false,\n onClose: onCloseProp,\n closed: closedProp,\n closeButtonProps,\n children,\n className,\n ...rest\n },\n ref,\n ) => {\n const [closedState, setClosedState] = useState(false);\n const onClose = useCallback(() => {\n if (onCloseProp) {\n const result = onCloseProp();\n if (result === true) {\n setClosedState(true);\n }\n } else {\n setClosedState(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps -- I know better\n }, []);\n const closed = closedProp ?? closedState;\n const Component = asChild ? Slot : \"div\";\n\n return (\n <Component\n className={clsx(\n \"hds-box\",\n variant && `hds-box--${variant}`,\n { \"hds-box--closed\": closed },\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {closeable ? <BoxCloseButton onClick={onClose} {...closeButtonProps} /> : null}\n <Slottable>{children}</Slottable>\n </Component>\n );\n },\n);\nBox.displayName = \"Box\";\n\nexport type BoxCloseButtonProps = Omit<React.HTMLAttributes<HTMLButtonElement>, \"children\">;\nexport const BoxCloseButton = forwardRef<HTMLButtonElement, BoxCloseButtonProps>(\n ({ className, ...rest }, ref) => {\n return (\n <button\n className={clsx(\"hds-box__close-button\", className as undefined)}\n ref={ref}\n type=\"button\"\n {...rest}\n />\n );\n },\n);\nBoxCloseButton.displayName = \"Box.CloseButton\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,mBAAkD;AAClD,6BAAqB;AACrB,wBAAgC;AAkF1B;AA/BC,IAAM,UAAM;AAAA,EACjB,CACE,IAWA,QACG;AAZH,iBACE;AAAA;AAAA,MACA;AAAA,MACA,YAAY;AAAA,MACZ,SAAS;AAAA,MACT,QAAQ;AAAA,MACR;AAAA,MACA;AAAA,MACA;AAAA,IA/DN,IAuDI,IASK,iBATL,IASK;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAKF,UAAM,CAAC,aAAa,cAAc,QAAI,uBAAS,KAAK;AACpD,UAAM,cAAU,0BAAY,MAAM;AAChC,UAAI,aAAa;AACf,cAAM,SAAS,YAAY;AAC3B,YAAI,WAAW,MAAM;AACnB,yBAAe,IAAI;AAAA,QACrB;AAAA,MACF,OAAO;AACL,uBAAe,IAAI;AAAA,MACrB;AAAA,IAEF,GAAG,CAAC,CAAC;AACL,UAAM,SAAS,kCAAc;AAC7B,UAAM,YAAY,UAAU,yBAAO;AAEnC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW;AAAA,UACT;AAAA,UACA,WAAW,YAAY,OAAO;AAAA,UAC9B,EAAE,mBAAmB,OAAO;AAAA,UAC5B;AAAA,QACF;AAAA,QACA;AAAA,SACI,OARL;AAAA,QAUE;AAAA,sBAAY,4CAAC,iCAAe,SAAS,WAAa,iBAAkB,IAAK;AAAA,UAC1E,4CAAC,+BAAW,UAAS;AAAA;AAAA;AAAA,IACvB;AAAA,EAEJ;AACF;AACA,IAAI,cAAc;AAGX,IAAM,qBAAiB;AAAA,EAC5B,CAAC,IAAwB,QAAQ;AAAhC,iBAAE,YAxGL,IAwGG,IAAgB,iBAAhB,IAAgB,CAAd;AACD,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW,6BAAK,yBAAyB,SAAsB;AAAA,QAC/D;AAAA,QACA,MAAK;AAAA,SACD;AAAA,IACN;AAAA,EAEJ;AACF;AACA,eAAe,cAAc;;;ADjH7B,IAAM,eAAe;AAGrB,aAAa,cAAc;","names":[]}
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  BoxComponent
3
- } from "../chunk-NMMFIRLZ.mjs";
3
+ } from "../chunk-3NL3TOZF.mjs";
4
4
  import {
5
5
  BoxCloseButton
6
- } from "../chunk-EGXM575K.mjs";
6
+ } from "../chunk-ENKVTAJB.mjs";
7
7
  import "../chunk-R4SQKVDQ.mjs";
8
8
  export {
9
9
  BoxComponent as Box,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/breadcrumbs/breadcrumbs.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes, type ReactElement, type ReactNode } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\n\nexport interface BreadcrumbsProps extends HTMLAttributes<HTMLOListElement> {\n children: ReactNode | ReactElement<HTMLLIElement> | ReactElement<HTMLLIElement>[];\n\n /**\n * Props passed to the `ol` html element\n */\n olProps?: HTMLAttributes<HTMLElement>;\n}\n\n/**\n * A breadcrumbs navigation menu\n *\n * **Usage**\n *\n * ```tsx\n * <Breadcrumbs data-testid=\"breadcrumbs\">\n * <li><Link href=\"../\">Previous page</Link></li>\n * <li aria-current=\"page\">Current page</li>\n * </Breadcrumbs>\n * ```\n *\n * Outputs this html structure\n *\n * ```html\n * <nav data-testid=\"breadcrumbs\">\n * <ol>\n * <li><a href=\"../\">Previous page</a></li>\n * <li aria-current=\"page\">Current page</li>\n * </ol>\n * </nav>\n * ```\n */\nexport const Breadcrumbs = forwardRef<HTMLDivElement, BreadcrumbsProps>(\n ({ olProps, children, ...rest }, ref) => {\n return (\n <nav ref={ref} {...rest}>\n <ol {...olProps} className={clsx(\"hds-breadcrumbs\", olProps?.className as undefined)}>\n {children}\n </ol>\n </nav>\n );\n },\n);\nBreadcrumbs.displayName = \"Breadcrumbs\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAmF;AACnF,6BAAqB;AAsCb;AAJD,IAAM,kBAAc;AAAA,EACzB,CAAC,IAAgC,QAAQ;AAAxC,iBAAE,WAAS,SApCd,IAoCG,IAAwB,iBAAxB,IAAwB,CAAtB,WAAS;AACV,WACE,4CAAC,sCAAI,OAAc,OAAlB,EACC,sDAAC,uCAAO,UAAP,EAAgB,eAAW,6BAAK,mBAAmB,mCAAS,SAAsB,GAChF,WACH,IACF;AAAA,EAEJ;AACF;AACA,YAAY,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/breadcrumbs/breadcrumbs.tsx"],"sourcesContent":["import { forwardRef, type HTMLAttributes, type ReactElement, type ReactNode } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\n\nexport interface BreadcrumbsProps extends HTMLAttributes<HTMLOListElement> {\n children: ReactNode | ReactElement<HTMLLIElement> | ReactElement<HTMLLIElement>[];\n\n /**\n * Props passed to the `ol` html element\n */\n olProps?: HTMLAttributes<HTMLElement>;\n}\n\n/**\n * A breadcrumbs navigation menu\n *\n * @example\n *\n * ```tsx\n * <Breadcrumbs data-testid=\"breadcrumbs\">\n * <li><Link href=\"../\">Previous page</Link></li>\n * <li aria-current=\"page\">Current page</li>\n * </Breadcrumbs>\n * ```\n *\n * Outputs this html structure\n *\n * ```html\n * <nav data-testid=\"breadcrumbs\">\n * <ol>\n * <li><a href=\"../\">Previous page</a></li>\n * <li aria-current=\"page\">Current page</li>\n * </ol>\n * </nav>\n * ```\n */\nexport const Breadcrumbs = forwardRef<HTMLDivElement, BreadcrumbsProps>(\n ({ olProps, children, ...rest }, ref) => {\n return (\n <nav ref={ref} {...rest}>\n <ol {...olProps} className={clsx(\"hds-breadcrumbs\", olProps?.className as undefined)}>\n {children}\n </ol>\n </nav>\n );\n },\n);\nBreadcrumbs.displayName = \"Breadcrumbs\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAAmF;AACnF,6BAAqB;AAsCb;AAJD,IAAM,kBAAc;AAAA,EACzB,CAAC,IAAgC,QAAQ;AAAxC,iBAAE,WAAS,SApCd,IAoCG,IAAwB,iBAAxB,IAAwB,CAAtB,WAAS;AACV,WACE,4CAAC,sCAAI,OAAc,OAAlB,EACC,sDAAC,uCAAO,UAAP,EAAgB,eAAW,6BAAK,mBAAmB,mCAAS,SAAsB,GAChF,WACH,IACF;AAAA,EAEJ;AACF;AACA,YAAY,cAAc;","names":[]}
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  Breadcrumbs
3
- } from "../chunk-GGEQEVZ4.mjs";
3
+ } from "../chunk-YSFZCRWS.mjs";
4
4
  import "../chunk-R4SQKVDQ.mjs";
5
5
  export {
6
6
  Breadcrumbs
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/breadcrumbs/index.tsx","../../src/breadcrumbs/breadcrumbs.tsx"],"sourcesContent":["export { Breadcrumbs } from \"./breadcrumbs\";\n\nexport type * from \"./breadcrumbs\";\n","import { forwardRef, type HTMLAttributes, type ReactElement, type ReactNode } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\n\nexport interface BreadcrumbsProps extends HTMLAttributes<HTMLOListElement> {\n children: ReactNode | ReactElement<HTMLLIElement> | ReactElement<HTMLLIElement>[];\n\n /**\n * Props passed to the `ol` html element\n */\n olProps?: HTMLAttributes<HTMLElement>;\n}\n\n/**\n * A breadcrumbs navigation menu\n *\n * **Usage**\n *\n * ```tsx\n * <Breadcrumbs data-testid=\"breadcrumbs\">\n * <li><Link href=\"../\">Previous page</Link></li>\n * <li aria-current=\"page\">Current page</li>\n * </Breadcrumbs>\n * ```\n *\n * Outputs this html structure\n *\n * ```html\n * <nav data-testid=\"breadcrumbs\">\n * <ol>\n * <li><a href=\"../\">Previous page</a></li>\n * <li aria-current=\"page\">Current page</li>\n * </ol>\n * </nav>\n * ```\n */\nexport const Breadcrumbs = forwardRef<HTMLDivElement, BreadcrumbsProps>(\n ({ olProps, children, ...rest }, ref) => {\n return (\n <nav ref={ref} {...rest}>\n <ol {...olProps} className={clsx(\"hds-breadcrumbs\", olProps?.className as undefined)}>\n {children}\n </ol>\n </nav>\n );\n },\n);\nBreadcrumbs.displayName = \"Breadcrumbs\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,mBAAmF;AACnF,6BAAqB;AAsCb;AAJD,IAAM,kBAAc;AAAA,EACzB,CAAC,IAAgC,QAAQ;AAAxC,iBAAE,WAAS,SApCd,IAoCG,IAAwB,iBAAxB,IAAwB,CAAtB,WAAS;AACV,WACE,4CAAC,sCAAI,OAAc,OAAlB,EACC,sDAAC,uCAAO,UAAP,EAAgB,eAAW,6BAAK,mBAAmB,mCAAS,SAAsB,GAChF,WACH,IACF;AAAA,EAEJ;AACF;AACA,YAAY,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/breadcrumbs/index.tsx","../../src/breadcrumbs/breadcrumbs.tsx"],"sourcesContent":["export { Breadcrumbs } from \"./breadcrumbs\";\n\nexport type * from \"./breadcrumbs\";\n","import { forwardRef, type HTMLAttributes, type ReactElement, type ReactNode } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\n\nexport interface BreadcrumbsProps extends HTMLAttributes<HTMLOListElement> {\n children: ReactNode | ReactElement<HTMLLIElement> | ReactElement<HTMLLIElement>[];\n\n /**\n * Props passed to the `ol` html element\n */\n olProps?: HTMLAttributes<HTMLElement>;\n}\n\n/**\n * A breadcrumbs navigation menu\n *\n * @example\n *\n * ```tsx\n * <Breadcrumbs data-testid=\"breadcrumbs\">\n * <li><Link href=\"../\">Previous page</Link></li>\n * <li aria-current=\"page\">Current page</li>\n * </Breadcrumbs>\n * ```\n *\n * Outputs this html structure\n *\n * ```html\n * <nav data-testid=\"breadcrumbs\">\n * <ol>\n * <li><a href=\"../\">Previous page</a></li>\n * <li aria-current=\"page\">Current page</li>\n * </ol>\n * </nav>\n * ```\n */\nexport const Breadcrumbs = forwardRef<HTMLDivElement, BreadcrumbsProps>(\n ({ olProps, children, ...rest }, ref) => {\n return (\n <nav ref={ref} {...rest}>\n <ol {...olProps} className={clsx(\"hds-breadcrumbs\", olProps?.className as undefined)}>\n {children}\n </ol>\n </nav>\n );\n },\n);\nBreadcrumbs.displayName = \"Breadcrumbs\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,mBAAmF;AACnF,6BAAqB;AAsCb;AAJD,IAAM,kBAAc;AAAA,EACzB,CAAC,IAAgC,QAAQ;AAAxC,iBAAE,WAAS,SApCd,IAoCG,IAAwB,iBAAxB,IAAwB,CAAtB,WAAS;AACV,WACE,4CAAC,sCAAI,OAAc,OAAlB,EACC,sDAAC,uCAAO,UAAP,EAAgB,eAAW,6BAAK,mBAAmB,mCAAS,SAAsB,GAChF,WACH,IACF;AAAA,EAEJ;AACF;AACA,YAAY,cAAc;","names":[]}
@@ -1,7 +1,7 @@
1
1
  import "../chunk-ISAHCU7C.mjs";
2
2
  import {
3
3
  Breadcrumbs
4
- } from "../chunk-GGEQEVZ4.mjs";
4
+ } from "../chunk-YSFZCRWS.mjs";
5
5
  import "../chunk-R4SQKVDQ.mjs";
6
6
  export {
7
7
  Breadcrumbs
@@ -1,4 +1,3 @@
1
1
  export { ButtonProps_alias_2 as ButtonProps } from '../_tsup-dts-rollup';
2
- export { BaseButton_alias_2 as BaseButton } from '../_tsup-dts-rollup';
3
2
  export { PrimaryButton_alias_2 as PrimaryButton } from '../_tsup-dts-rollup';
4
3
  export { SecondaryButton_alias_2 as SecondaryButton } from '../_tsup-dts-rollup';
@@ -1,4 +1,3 @@
1
1
  export { ButtonProps_alias_2 as ButtonProps } from '../_tsup-dts-rollup';
2
- export { BaseButton_alias_2 as BaseButton } from '../_tsup-dts-rollup';
3
2
  export { PrimaryButton_alias_2 as PrimaryButton } from '../_tsup-dts-rollup';
4
3
  export { SecondaryButton_alias_2 as SecondaryButton } from '../_tsup-dts-rollup';
@@ -49,18 +49,18 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
49
49
  // src/button/button.tsx
50
50
  var button_exports = {};
51
51
  __export(button_exports, {
52
- BaseButton: () => BaseButton,
53
52
  PrimaryButton: () => PrimaryButton,
54
53
  SecondaryButton: () => SecondaryButton
55
54
  });
56
55
  module.exports = __toCommonJS(button_exports);
57
56
  var import_react = require("react");
58
57
  var import_typed_classname = require("@postenbring/hedwig-css/typed-classname");
58
+ var import_react_slot = require("@radix-ui/react-slot");
59
59
  var import_jsx_runtime = require("react/jsx-runtime");
60
- var BaseButton = (0, import_react.forwardRef)(
60
+ var Button = (0, import_react.forwardRef)(
61
61
  (_a, ref) => {
62
62
  var _b = _a, {
63
- as: Component = "button",
63
+ asChild,
64
64
  children,
65
65
  variant,
66
66
  size = "medium",
@@ -69,7 +69,7 @@ var BaseButton = (0, import_react.forwardRef)(
69
69
  icon,
70
70
  className
71
71
  } = _b, rest = __objRest(_b, [
72
- "as",
72
+ "asChild",
73
73
  "children",
74
74
  "variant",
75
75
  "size",
@@ -78,7 +78,8 @@ var BaseButton = (0, import_react.forwardRef)(
78
78
  "icon",
79
79
  "className"
80
80
  ]);
81
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
81
+ const Component = asChild ? import_react_slot.Slot : "button";
82
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
82
83
  Component,
83
84
  __spreadProps(__spreadValues({
84
85
  className: (0, import_typed_classname.clsx)(
@@ -89,36 +90,28 @@ var BaseButton = (0, import_react.forwardRef)(
89
90
  [`hds-button--outline-${variant}`]: fill === "outline",
90
91
  "hds-button--full": fullWidth === true,
91
92
  "hds-button--mobile-full": fullWidth === "mobile",
92
- "hds-button--icon-only": icon && !children
93
+ "hds-button--icon-only": icon
93
94
  },
94
95
  className
95
96
  ),
96
97
  ref
97
98
  }, rest), {
98
- children: [
99
- icon && !children ? icon : null,
100
- children
101
- ]
99
+ children
102
100
  })
103
101
  );
104
102
  }
105
103
  );
106
- BaseButton.displayName = "BaseButton";
107
- var PrimaryButton = (0, import_react.forwardRef)(
108
- (props, ref) => {
109
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseButton, __spreadProps(__spreadValues({}, props), { ref, variant: "primary" }));
110
- }
111
- );
104
+ Button.displayName = "Button";
105
+ var PrimaryButton = (0, import_react.forwardRef)((props, ref) => {
106
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button, __spreadProps(__spreadValues({}, props), { ref, variant: "primary" }));
107
+ });
112
108
  PrimaryButton.displayName = "PrimaryButton";
113
- var SecondaryButton = (0, import_react.forwardRef)(
114
- (props, ref) => {
115
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseButton, __spreadProps(__spreadValues({}, props), { ref, variant: "secondary" }));
116
- }
117
- );
109
+ var SecondaryButton = (0, import_react.forwardRef)((props, ref) => {
110
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button, __spreadProps(__spreadValues({}, props), { ref, variant: "secondary" }));
111
+ });
118
112
  SecondaryButton.displayName = "SecondaryButton";
119
113
  // Annotate the CommonJS export names for ESM import in node:
120
114
  0 && (module.exports = {
121
- BaseButton,
122
115
  PrimaryButton,
123
116
  SecondaryButton
124
117
  });
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/button/button.tsx"],"sourcesContent":["import { forwardRef } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport type { OverridableComponent } from \"../utils\";\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 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 an icon inside the button\n */\n icon?: React.ReactNode;\n\n children?: React.ReactNode;\n}\n\nexport const BaseButton: OverridableComponent<\n ButtonProps & { variant: \"primary\" | \"secondary\" },\n HTMLButtonElement\n> = forwardRef(\n (\n {\n as: Component = \"button\",\n children,\n variant,\n size = \"medium\",\n fullWidth = false,\n fill = \"contained\",\n icon,\n className,\n ...rest\n },\n ref,\n ) => {\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 && !children,\n },\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {icon && !children ? icon : null}\n {children}\n </Component>\n );\n },\n);\nBaseButton.displayName = \"BaseButton\";\n\n/**\n * ## TODO\n *\n * - [x] Handle links that looks like buttons\n * - [ ] Revisit how to handle outline\n * - [ ] Figure out outline-white\n */\n\nexport const PrimaryButton: OverridableComponent<ButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n return <BaseButton {...props} ref={ref} variant=\"primary\" />;\n },\n);\n\nPrimaryButton.displayName = \"PrimaryButton\";\n\nexport const SecondaryButton: OverridableComponent<ButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n return <BaseButton {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n\nSecondaryButton.displayName = \"SecondaryButton\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA2B;AAC3B,6BAAqB;AA+Cf;AAnBC,IAAM,iBAGT;AAAA,EACF,CACE,IAWA,QACG;AAZH,iBACE;AAAA,UAAI,YAAY;AAAA,MAChB;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,OAAO;AAAA,MACP;AAAA,MACA;AAAA,IA1CN,IAkCI,IASK,iBATL,IASK;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAKF,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW;AAAA,UACT;AAAA,UACA,eAAe,IAAI;AAAA,UACnB;AAAA,YACE,CAAC,eAAe,OAAO,EAAE,GAAG,SAAS;AAAA,YACrC,CAAC,uBAAuB,OAAO,EAAE,GAAG,SAAS;AAAA,YAC7C,oBAAoB,cAAc;AAAA,YAClC,2BAA2B,cAAc;AAAA,YACzC,yBAAyB,QAAQ,CAAC;AAAA,UACpC;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,SACI,OAdL;AAAA,QAgBE;AAAA,kBAAQ,CAAC,WAAW,OAAO;AAAA,UAC3B;AAAA;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AACA,WAAW,cAAc;AAUlB,IAAM,oBAAsE;AAAA,EACjF,CAAC,OAAO,QAAQ;AACd,WAAO,4CAAC,6CAAe,QAAf,EAAsB,KAAU,SAAQ,YAAU;AAAA,EAC5D;AACF;AAEA,cAAc,cAAc;AAErB,IAAM,sBAAwE;AAAA,EACnF,CAAC,OAAO,QAAQ;AACd,WAAO,4CAAC,6CAAe,QAAf,EAAsB,KAAU,SAAQ,cAAY;AAAA,EAC9D;AACF;AAEA,gBAAgB,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/button/button.tsx"],"sourcesContent":["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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,mBAA2B;AAC3B,6BAAqB;AACrB,wBAAqB;AAqDf;AAjBN,IAAM,aAAS;AAAA,EACb,CACE,IAWA,QACG;AAZH,iBACE;AAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,OAAO;AAAA,MACP;AAAA,MACA;AAAA,IAhDN,IAwCI,IASK,iBATL,IASK;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAKF,UAAM,YAAY,UAAU,yBAAO;AACnC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW;AAAA,UACT;AAAA,UACA,eAAe,IAAI;AAAA,UACnB;AAAA,YACE,CAAC,eAAe,OAAO,EAAE,GAAG,SAAS;AAAA,YACrC,CAAC,uBAAuB,OAAO,EAAE,GAAG,SAAS;AAAA,YAC7C,oBAAoB,cAAc;AAAA,YAClC,2BAA2B,cAAc;AAAA,YACzC,yBAAyB;AAAA,UAC3B;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,SACI,OAdL;AAAA,QAgBE;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AACA,OAAO,cAAc;AAEd,IAAM,oBAAgB,yBAA2C,CAAC,OAAO,QAAQ;AACtF,SAAO,4CAAC,yCAAW,QAAX,EAAkB,KAAU,SAAQ,YAAU;AACxD,CAAC;AACD,cAAc,cAAc;AAErB,IAAM,sBAAkB,yBAA2C,CAAC,OAAO,QAAQ;AACxF,SAAO,4CAAC,yCAAW,QAAX,EAAkB,KAAU,SAAQ,cAAY;AAC1D,CAAC;AACD,gBAAgB,cAAc;","names":[]}
@@ -1,11 +1,9 @@
1
1
  import {
2
- BaseButton,
3
2
  PrimaryButton,
4
3
  SecondaryButton
5
- } from "../chunk-BWFFP6BB.mjs";
4
+ } from "../chunk-KEKPEN2C.mjs";
6
5
  import "../chunk-R4SQKVDQ.mjs";
7
6
  export {
8
- BaseButton,
9
7
  PrimaryButton,
10
8
  SecondaryButton
11
9
  };
@@ -1,4 +1,3 @@
1
1
  export { PrimaryButton_alias_3 as PrimaryButton } from '../_tsup-dts-rollup';
2
2
  export { SecondaryButton_alias_3 as SecondaryButton } from '../_tsup-dts-rollup';
3
3
  export { ButtonProps_alias_3 as ButtonProps } from '../_tsup-dts-rollup';
4
- export { BaseButton_alias_3 as BaseButton } from '../_tsup-dts-rollup';
@@ -1,4 +1,3 @@
1
1
  export { PrimaryButton_alias_3 as PrimaryButton } from '../_tsup-dts-rollup';
2
2
  export { SecondaryButton_alias_3 as SecondaryButton } from '../_tsup-dts-rollup';
3
3
  export { ButtonProps_alias_3 as ButtonProps } from '../_tsup-dts-rollup';
4
- export { BaseButton_alias_3 as BaseButton } from '../_tsup-dts-rollup';
@@ -57,11 +57,12 @@ module.exports = __toCommonJS(button_exports);
57
57
  // src/button/button.tsx
58
58
  var import_react = require("react");
59
59
  var import_typed_classname = require("@postenbring/hedwig-css/typed-classname");
60
+ var import_react_slot = require("@radix-ui/react-slot");
60
61
  var import_jsx_runtime = require("react/jsx-runtime");
61
- var BaseButton = (0, import_react.forwardRef)(
62
+ var Button = (0, import_react.forwardRef)(
62
63
  (_a, ref) => {
63
64
  var _b = _a, {
64
- as: Component = "button",
65
+ asChild,
65
66
  children,
66
67
  variant,
67
68
  size = "medium",
@@ -70,7 +71,7 @@ var BaseButton = (0, import_react.forwardRef)(
70
71
  icon,
71
72
  className
72
73
  } = _b, rest = __objRest(_b, [
73
- "as",
74
+ "asChild",
74
75
  "children",
75
76
  "variant",
76
77
  "size",
@@ -79,7 +80,8 @@ var BaseButton = (0, import_react.forwardRef)(
79
80
  "icon",
80
81
  "className"
81
82
  ]);
82
- return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
83
+ const Component = asChild ? import_react_slot.Slot : "button";
84
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
83
85
  Component,
84
86
  __spreadProps(__spreadValues({
85
87
  className: (0, import_typed_classname.clsx)(
@@ -90,32 +92,25 @@ var BaseButton = (0, import_react.forwardRef)(
90
92
  [`hds-button--outline-${variant}`]: fill === "outline",
91
93
  "hds-button--full": fullWidth === true,
92
94
  "hds-button--mobile-full": fullWidth === "mobile",
93
- "hds-button--icon-only": icon && !children
95
+ "hds-button--icon-only": icon
94
96
  },
95
97
  className
96
98
  ),
97
99
  ref
98
100
  }, rest), {
99
- children: [
100
- icon && !children ? icon : null,
101
- children
102
- ]
101
+ children
103
102
  })
104
103
  );
105
104
  }
106
105
  );
107
- BaseButton.displayName = "BaseButton";
108
- var PrimaryButton = (0, import_react.forwardRef)(
109
- (props, ref) => {
110
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseButton, __spreadProps(__spreadValues({}, props), { ref, variant: "primary" }));
111
- }
112
- );
106
+ Button.displayName = "Button";
107
+ var PrimaryButton = (0, import_react.forwardRef)((props, ref) => {
108
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button, __spreadProps(__spreadValues({}, props), { ref, variant: "primary" }));
109
+ });
113
110
  PrimaryButton.displayName = "PrimaryButton";
114
- var SecondaryButton = (0, import_react.forwardRef)(
115
- (props, ref) => {
116
- return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(BaseButton, __spreadProps(__spreadValues({}, props), { ref, variant: "secondary" }));
117
- }
118
- );
111
+ var SecondaryButton = (0, import_react.forwardRef)((props, ref) => {
112
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(Button, __spreadProps(__spreadValues({}, props), { ref, variant: "secondary" }));
113
+ });
119
114
  SecondaryButton.displayName = "SecondaryButton";
120
115
  // Annotate the CommonJS export names for ESM import in node:
121
116
  0 && (module.exports = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/button/index.tsx","../../src/button/button.tsx"],"sourcesContent":["export { PrimaryButton, SecondaryButton } from \"./button\";\n\nexport type * from \"./button\";\n","import { forwardRef } from \"react\";\nimport { clsx } from \"@postenbring/hedwig-css/typed-classname\";\nimport type { OverridableComponent } from \"../utils\";\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 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 an icon inside the button\n */\n icon?: React.ReactNode;\n\n children?: React.ReactNode;\n}\n\nexport const BaseButton: OverridableComponent<\n ButtonProps & { variant: \"primary\" | \"secondary\" },\n HTMLButtonElement\n> = forwardRef(\n (\n {\n as: Component = \"button\",\n children,\n variant,\n size = \"medium\",\n fullWidth = false,\n fill = \"contained\",\n icon,\n className,\n ...rest\n },\n ref,\n ) => {\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 && !children,\n },\n className as undefined,\n )}\n ref={ref}\n {...rest}\n >\n {icon && !children ? icon : null}\n {children}\n </Component>\n );\n },\n);\nBaseButton.displayName = \"BaseButton\";\n\n/**\n * ## TODO\n *\n * - [x] Handle links that looks like buttons\n * - [ ] Revisit how to handle outline\n * - [ ] Figure out outline-white\n */\n\nexport const PrimaryButton: OverridableComponent<ButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n return <BaseButton {...props} ref={ref} variant=\"primary\" />;\n },\n);\n\nPrimaryButton.displayName = \"PrimaryButton\";\n\nexport const SecondaryButton: OverridableComponent<ButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n return <BaseButton {...props} ref={ref} variant=\"secondary\" />;\n },\n);\n\nSecondaryButton.displayName = \"SecondaryButton\";\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,mBAA2B;AAC3B,6BAAqB;AA+Cf;AAnBC,IAAM,iBAGT;AAAA,EACF,CACE,IAWA,QACG;AAZH,iBACE;AAAA,UAAI,YAAY;AAAA,MAChB;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,OAAO;AAAA,MACP;AAAA,MACA;AAAA,IA1CN,IAkCI,IASK,iBATL,IASK;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAKF,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW;AAAA,UACT;AAAA,UACA,eAAe,IAAI;AAAA,UACnB;AAAA,YACE,CAAC,eAAe,OAAO,EAAE,GAAG,SAAS;AAAA,YACrC,CAAC,uBAAuB,OAAO,EAAE,GAAG,SAAS;AAAA,YAC7C,oBAAoB,cAAc;AAAA,YAClC,2BAA2B,cAAc;AAAA,YACzC,yBAAyB,QAAQ,CAAC;AAAA,UACpC;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,SACI,OAdL;AAAA,QAgBE;AAAA,kBAAQ,CAAC,WAAW,OAAO;AAAA,UAC3B;AAAA;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AACA,WAAW,cAAc;AAUlB,IAAM,oBAAsE;AAAA,EACjF,CAAC,OAAO,QAAQ;AACd,WAAO,4CAAC,6CAAe,QAAf,EAAsB,KAAU,SAAQ,YAAU;AAAA,EAC5D;AACF;AAEA,cAAc,cAAc;AAErB,IAAM,sBAAwE;AAAA,EACnF,CAAC,OAAO,QAAQ;AACd,WAAO,4CAAC,6CAAe,QAAf,EAAsB,KAAU,SAAQ,cAAY;AAAA,EAC9D;AACF;AAEA,gBAAgB,cAAc;","names":[]}
1
+ {"version":3,"sources":["../../src/button/index.tsx","../../src/button/button.tsx"],"sourcesContent":["export { PrimaryButton, SecondaryButton } from \"./button\";\n\nexport type * from \"./button\";\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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,mBAA2B;AAC3B,6BAAqB;AACrB,wBAAqB;AAqDf;AAjBN,IAAM,aAAS;AAAA,EACb,CACE,IAWA,QACG;AAZH,iBACE;AAAA;AAAA,MACA;AAAA,MACA;AAAA,MACA,OAAO;AAAA,MACP,YAAY;AAAA,MACZ,OAAO;AAAA,MACP;AAAA,MACA;AAAA,IAhDN,IAwCI,IASK,iBATL,IASK;AAAA,MARH;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA;AAKF,UAAM,YAAY,UAAU,yBAAO;AACnC,WACE;AAAA,MAAC;AAAA;AAAA,QACC,eAAW;AAAA,UACT;AAAA,UACA,eAAe,IAAI;AAAA,UACnB;AAAA,YACE,CAAC,eAAe,OAAO,EAAE,GAAG,SAAS;AAAA,YACrC,CAAC,uBAAuB,OAAO,EAAE,GAAG,SAAS;AAAA,YAC7C,oBAAoB,cAAc;AAAA,YAClC,2BAA2B,cAAc;AAAA,YACzC,yBAAyB;AAAA,UAC3B;AAAA,UACA;AAAA,QACF;AAAA,QACA;AAAA,SACI,OAdL;AAAA,QAgBE;AAAA;AAAA,IACH;AAAA,EAEJ;AACF;AACA,OAAO,cAAc;AAEd,IAAM,oBAAgB,yBAA2C,CAAC,OAAO,QAAQ;AACtF,SAAO,4CAAC,yCAAW,QAAX,EAAkB,KAAU,SAAQ,YAAU;AACxD,CAAC;AACD,cAAc,cAAc;AAErB,IAAM,sBAAkB,yBAA2C,CAAC,OAAO,QAAQ;AACxF,SAAO,4CAAC,yCAAW,QAAX,EAAkB,KAAU,SAAQ,cAAY;AAC1D,CAAC;AACD,gBAAgB,cAAc;","names":[]}
@@ -2,7 +2,7 @@ import "../chunk-HT2EIJAD.mjs";
2
2
  import {
3
3
  PrimaryButton,
4
4
  SecondaryButton
5
- } from "../chunk-BWFFP6BB.mjs";
5
+ } from "../chunk-KEKPEN2C.mjs";
6
6
  import "../chunk-R4SQKVDQ.mjs";
7
7
  export {
8
8
  PrimaryButton,
@@ -1,5 +1,5 @@
1
1
  export { CardBaseProps_alias_2 as CardBaseProps } from '../_tsup-dts-rollup';
2
- export { Card_alias_3 as Card } from '../_tsup-dts-rollup';
2
+ export { Card_alias_2 as Card } from '../_tsup-dts-rollup';
3
3
  export { CardMedia_alias_2 as CardMedia } from '../_tsup-dts-rollup';
4
4
  export { CardImageMediaProps_alias_2 as CardImageMediaProps } from '../_tsup-dts-rollup';
5
5
  export { CardMediaImg_alias_2 as CardMediaImg } from '../_tsup-dts-rollup';
@@ -1,5 +1,5 @@
1
1
  export { CardBaseProps_alias_2 as CardBaseProps } from '../_tsup-dts-rollup';
2
- export { Card_alias_3 as Card } from '../_tsup-dts-rollup';
2
+ export { Card_alias_2 as Card } from '../_tsup-dts-rollup';
3
3
  export { CardMedia_alias_2 as CardMedia } from '../_tsup-dts-rollup';
4
4
  export { CardImageMediaProps_alias_2 as CardImageMediaProps } from '../_tsup-dts-rollup';
5
5
  export { CardMediaImg_alias_2 as CardMediaImg } from '../_tsup-dts-rollup';