@dsn-starter-kit/components-react 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (641) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +181 -0
  3. package/dist/ActionGroup/ActionGroup.css +55 -0
  4. package/dist/ActionGroup/ActionGroup.d.ts +41 -0
  5. package/dist/ActionGroup/ActionGroup.d.ts.map +1 -0
  6. package/dist/ActionGroup/ActionGroup.js +36 -0
  7. package/dist/ActionGroup/ActionGroup.js.map +1 -0
  8. package/dist/ActionGroup/index.d.ts +3 -0
  9. package/dist/ActionGroup/index.d.ts.map +1 -0
  10. package/dist/ActionGroup/index.js +2 -0
  11. package/dist/ActionGroup/index.js.map +1 -0
  12. package/dist/Alert/Alert.css +145 -0
  13. package/dist/Alert/Alert.d.ts +69 -0
  14. package/dist/Alert/Alert.d.ts.map +1 -0
  15. package/dist/Alert/Alert.js +57 -0
  16. package/dist/Alert/Alert.js.map +1 -0
  17. package/dist/Alert/index.d.ts +3 -0
  18. package/dist/Alert/index.d.ts.map +1 -0
  19. package/dist/Alert/index.js +2 -0
  20. package/dist/Alert/index.js.map +1 -0
  21. package/dist/Backdrop/Backdrop.css +30 -0
  22. package/dist/Backdrop/Backdrop.d.ts +26 -0
  23. package/dist/Backdrop/Backdrop.d.ts.map +1 -0
  24. package/dist/Backdrop/Backdrop.js +23 -0
  25. package/dist/Backdrop/Backdrop.js.map +1 -0
  26. package/dist/Backdrop/index.d.ts +3 -0
  27. package/dist/Backdrop/index.d.ts.map +1 -0
  28. package/dist/Backdrop/index.js +2 -0
  29. package/dist/Backdrop/index.js.map +1 -0
  30. package/dist/Body/Body.css +14 -0
  31. package/dist/Body/Body.d.ts +27 -0
  32. package/dist/Body/Body.d.ts.map +1 -0
  33. package/dist/Body/Body.js +27 -0
  34. package/dist/Body/Body.js.map +1 -0
  35. package/dist/Body/index.d.ts +3 -0
  36. package/dist/Body/index.d.ts.map +1 -0
  37. package/dist/Body/index.js +2 -0
  38. package/dist/Body/index.js.map +1 -0
  39. package/dist/BreadcrumbNavigation/BreadcrumbNavigation.css +216 -0
  40. package/dist/BreadcrumbNavigation/BreadcrumbNavigation.d.ts +43 -0
  41. package/dist/BreadcrumbNavigation/BreadcrumbNavigation.d.ts.map +1 -0
  42. package/dist/BreadcrumbNavigation/BreadcrumbNavigation.js +42 -0
  43. package/dist/BreadcrumbNavigation/BreadcrumbNavigation.js.map +1 -0
  44. package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.d.ts +32 -0
  45. package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.d.ts.map +1 -0
  46. package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.js +20 -0
  47. package/dist/BreadcrumbNavigation/BreadcrumbNavigationItem.js.map +1 -0
  48. package/dist/BreadcrumbNavigation/index.d.ts +3 -0
  49. package/dist/BreadcrumbNavigation/index.d.ts.map +1 -0
  50. package/dist/BreadcrumbNavigation/index.js +3 -0
  51. package/dist/BreadcrumbNavigation/index.js.map +1 -0
  52. package/dist/BreakoutSection/BreakoutSection.css +19 -0
  53. package/dist/BreakoutSection/BreakoutSection.d.ts +30 -0
  54. package/dist/BreakoutSection/BreakoutSection.d.ts.map +1 -0
  55. package/dist/BreakoutSection/BreakoutSection.js +27 -0
  56. package/dist/BreakoutSection/BreakoutSection.js.map +1 -0
  57. package/dist/BreakoutSection/index.d.ts +3 -0
  58. package/dist/BreakoutSection/index.d.ts.map +1 -0
  59. package/dist/BreakoutSection/index.js +2 -0
  60. package/dist/BreakoutSection/index.js.map +1 -0
  61. package/dist/Button/Button.css +337 -0
  62. package/dist/Button/Button.d.ts +90 -0
  63. package/dist/Button/Button.d.ts.map +1 -0
  64. package/dist/Button/Button.js +53 -0
  65. package/dist/Button/Button.js.map +1 -0
  66. package/dist/Button/index.d.ts +3 -0
  67. package/dist/Button/index.d.ts.map +1 -0
  68. package/dist/Button/index.js +2 -0
  69. package/dist/Button/index.js.map +1 -0
  70. package/dist/ButtonLink/ButtonLink.css +29 -0
  71. package/dist/ButtonLink/ButtonLink.d.ts +92 -0
  72. package/dist/ButtonLink/ButtonLink.d.ts.map +1 -0
  73. package/dist/ButtonLink/ButtonLink.js +50 -0
  74. package/dist/ButtonLink/ButtonLink.js.map +1 -0
  75. package/dist/ButtonLink/index.d.ts +3 -0
  76. package/dist/ButtonLink/index.d.ts.map +1 -0
  77. package/dist/ButtonLink/index.js +2 -0
  78. package/dist/ButtonLink/index.js.map +1 -0
  79. package/dist/Card/Card.css +169 -0
  80. package/dist/Card/Card.d.ts +105 -0
  81. package/dist/Card/Card.d.ts.map +1 -0
  82. package/dist/Card/Card.js +80 -0
  83. package/dist/Card/Card.js.map +1 -0
  84. package/dist/Card/index.d.ts +3 -0
  85. package/dist/Card/index.d.ts.map +1 -0
  86. package/dist/Card/index.js +2 -0
  87. package/dist/Card/index.js.map +1 -0
  88. package/dist/Checkbox/Checkbox.css +239 -0
  89. package/dist/Checkbox/Checkbox.d.ts +18 -0
  90. package/dist/Checkbox/Checkbox.d.ts.map +1 -0
  91. package/dist/Checkbox/Checkbox.js +24 -0
  92. package/dist/Checkbox/Checkbox.js.map +1 -0
  93. package/dist/Checkbox/index.d.ts +3 -0
  94. package/dist/Checkbox/index.d.ts.map +1 -0
  95. package/dist/Checkbox/index.js +2 -0
  96. package/dist/Checkbox/index.js.map +1 -0
  97. package/dist/CheckboxGroup/CheckboxGroup.css +10 -0
  98. package/dist/CheckboxGroup/CheckboxGroup.d.ts +37 -0
  99. package/dist/CheckboxGroup/CheckboxGroup.d.ts.map +1 -0
  100. package/dist/CheckboxGroup/CheckboxGroup.js +37 -0
  101. package/dist/CheckboxGroup/CheckboxGroup.js.map +1 -0
  102. package/dist/CheckboxGroup/index.d.ts +3 -0
  103. package/dist/CheckboxGroup/index.d.ts.map +1 -0
  104. package/dist/CheckboxGroup/index.js +2 -0
  105. package/dist/CheckboxGroup/index.js.map +1 -0
  106. package/dist/CheckboxOption/CheckboxOption.css +17 -0
  107. package/dist/CheckboxOption/CheckboxOption.d.ts +14 -0
  108. package/dist/CheckboxOption/CheckboxOption.d.ts.map +1 -0
  109. package/dist/CheckboxOption/CheckboxOption.js +15 -0
  110. package/dist/CheckboxOption/CheckboxOption.js.map +1 -0
  111. package/dist/CheckboxOption/index.d.ts +3 -0
  112. package/dist/CheckboxOption/index.d.ts.map +1 -0
  113. package/dist/CheckboxOption/index.js +2 -0
  114. package/dist/CheckboxOption/index.js.map +1 -0
  115. package/dist/Container/Container.css +48 -0
  116. package/dist/Container/Container.d.ts +41 -0
  117. package/dist/Container/Container.d.ts.map +1 -0
  118. package/dist/Container/Container.js +33 -0
  119. package/dist/Container/Container.js.map +1 -0
  120. package/dist/Container/index.d.ts +3 -0
  121. package/dist/Container/index.d.ts.map +1 -0
  122. package/dist/Container/index.js +2 -0
  123. package/dist/Container/index.js.map +1 -0
  124. package/dist/DateInput/DateInput.css +37 -0
  125. package/dist/DateInput/DateInput.d.ts +37 -0
  126. package/dist/DateInput/DateInput.d.ts.map +1 -0
  127. package/dist/DateInput/DateInput.js +52 -0
  128. package/dist/DateInput/DateInput.js.map +1 -0
  129. package/dist/DateInput/index.d.ts +3 -0
  130. package/dist/DateInput/index.d.ts.map +1 -0
  131. package/dist/DateInput/index.js +2 -0
  132. package/dist/DateInput/index.js.map +1 -0
  133. package/dist/DateInputGroup/DateInputGroup.css +30 -0
  134. package/dist/DateInputGroup/DateInputGroup.d.ts +65 -0
  135. package/dist/DateInputGroup/DateInputGroup.d.ts.map +1 -0
  136. package/dist/DateInputGroup/DateInputGroup.js +53 -0
  137. package/dist/DateInputGroup/DateInputGroup.js.map +1 -0
  138. package/dist/DateInputGroup/index.d.ts +3 -0
  139. package/dist/DateInputGroup/index.d.ts.map +1 -0
  140. package/dist/DateInputGroup/index.js +2 -0
  141. package/dist/DateInputGroup/index.js.map +1 -0
  142. package/dist/Details/Details.css +134 -0
  143. package/dist/Details/Details.d.ts +46 -0
  144. package/dist/Details/Details.d.ts.map +1 -0
  145. package/dist/Details/Details.js +37 -0
  146. package/dist/Details/Details.js.map +1 -0
  147. package/dist/Details/index.d.ts +3 -0
  148. package/dist/Details/index.d.ts.map +1 -0
  149. package/dist/Details/index.js +2 -0
  150. package/dist/Details/index.js.map +1 -0
  151. package/dist/DotBadge/DotBadge.css +98 -0
  152. package/dist/DotBadge/DotBadge.d.ts +40 -0
  153. package/dist/DotBadge/DotBadge.d.ts.map +1 -0
  154. package/dist/DotBadge/DotBadge.js +33 -0
  155. package/dist/DotBadge/DotBadge.js.map +1 -0
  156. package/dist/DotBadge/index.d.ts +2 -0
  157. package/dist/DotBadge/index.d.ts.map +1 -0
  158. package/dist/DotBadge/index.js +2 -0
  159. package/dist/DotBadge/index.js.map +1 -0
  160. package/dist/Drawer/Drawer.css +258 -0
  161. package/dist/Drawer/Drawer.d.ts +109 -0
  162. package/dist/Drawer/Drawer.d.ts.map +1 -0
  163. package/dist/Drawer/Drawer.js +115 -0
  164. package/dist/Drawer/Drawer.js.map +1 -0
  165. package/dist/Drawer/index.d.ts +3 -0
  166. package/dist/Drawer/index.d.ts.map +1 -0
  167. package/dist/Drawer/index.js +2 -0
  168. package/dist/Drawer/index.js.map +1 -0
  169. package/dist/EmailInput/EmailInput.css +4 -0
  170. package/dist/EmailInput/EmailInput.d.ts +38 -0
  171. package/dist/EmailInput/EmailInput.d.ts.map +1 -0
  172. package/dist/EmailInput/EmailInput.js +27 -0
  173. package/dist/EmailInput/EmailInput.js.map +1 -0
  174. package/dist/EmailInput/index.d.ts +3 -0
  175. package/dist/EmailInput/index.d.ts.map +1 -0
  176. package/dist/EmailInput/index.js +2 -0
  177. package/dist/EmailInput/index.js.map +1 -0
  178. package/dist/File/File.css +206 -0
  179. package/dist/File/File.d.ts +116 -0
  180. package/dist/File/File.d.ts.map +1 -0
  181. package/dist/File/File.js +100 -0
  182. package/dist/File/File.js.map +1 -0
  183. package/dist/File/index.d.ts +3 -0
  184. package/dist/File/index.d.ts.map +1 -0
  185. package/dist/File/index.js +2 -0
  186. package/dist/File/index.js.map +1 -0
  187. package/dist/FileInput/FileInput.css +112 -0
  188. package/dist/FileInput/FileInput.d.ts +36 -0
  189. package/dist/FileInput/FileInput.d.ts.map +1 -0
  190. package/dist/FileInput/FileInput.js +31 -0
  191. package/dist/FileInput/FileInput.js.map +1 -0
  192. package/dist/FileInput/index.d.ts +3 -0
  193. package/dist/FileInput/index.d.ts.map +1 -0
  194. package/dist/FileInput/index.js +2 -0
  195. package/dist/FileInput/index.js.map +1 -0
  196. package/dist/FormField/FormField.css +16 -0
  197. package/dist/FormField/FormField.d.ts +85 -0
  198. package/dist/FormField/FormField.d.ts.map +1 -0
  199. package/dist/FormField/FormField.js +60 -0
  200. package/dist/FormField/FormField.js.map +1 -0
  201. package/dist/FormField/index.d.ts +3 -0
  202. package/dist/FormField/index.d.ts.map +1 -0
  203. package/dist/FormField/index.js +2 -0
  204. package/dist/FormField/index.js.map +1 -0
  205. package/dist/FormFieldDescription/FormFieldDescription.css +25 -0
  206. package/dist/FormFieldDescription/FormFieldDescription.d.ts +47 -0
  207. package/dist/FormFieldDescription/FormFieldDescription.d.ts.map +1 -0
  208. package/dist/FormFieldDescription/FormFieldDescription.js +37 -0
  209. package/dist/FormFieldDescription/FormFieldDescription.js.map +1 -0
  210. package/dist/FormFieldDescription/index.d.ts +3 -0
  211. package/dist/FormFieldDescription/index.d.ts.map +1 -0
  212. package/dist/FormFieldDescription/index.js +2 -0
  213. package/dist/FormFieldDescription/index.js.map +1 -0
  214. package/dist/FormFieldErrorMessage/FormFieldErrorMessage.css +38 -0
  215. package/dist/FormFieldErrorMessage/FormFieldErrorMessage.d.ts +40 -0
  216. package/dist/FormFieldErrorMessage/FormFieldErrorMessage.d.ts.map +1 -0
  217. package/dist/FormFieldErrorMessage/FormFieldErrorMessage.js +32 -0
  218. package/dist/FormFieldErrorMessage/FormFieldErrorMessage.js.map +1 -0
  219. package/dist/FormFieldErrorMessage/index.d.ts +3 -0
  220. package/dist/FormFieldErrorMessage/index.d.ts.map +1 -0
  221. package/dist/FormFieldErrorMessage/index.js +2 -0
  222. package/dist/FormFieldErrorMessage/index.js.map +1 -0
  223. package/dist/FormFieldLabel/FormFieldLabel.css +48 -0
  224. package/dist/FormFieldLabel/FormFieldLabel.d.ts +38 -0
  225. package/dist/FormFieldLabel/FormFieldLabel.d.ts.map +1 -0
  226. package/dist/FormFieldLabel/FormFieldLabel.js +30 -0
  227. package/dist/FormFieldLabel/FormFieldLabel.js.map +1 -0
  228. package/dist/FormFieldLabel/index.d.ts +3 -0
  229. package/dist/FormFieldLabel/index.d.ts.map +1 -0
  230. package/dist/FormFieldLabel/index.js +2 -0
  231. package/dist/FormFieldLabel/index.js.map +1 -0
  232. package/dist/FormFieldLegend/FormFieldLegend.css +7 -0
  233. package/dist/FormFieldLegend/FormFieldLegend.d.ts +39 -0
  234. package/dist/FormFieldLegend/FormFieldLegend.d.ts.map +1 -0
  235. package/dist/FormFieldLegend/FormFieldLegend.js +31 -0
  236. package/dist/FormFieldLegend/FormFieldLegend.js.map +1 -0
  237. package/dist/FormFieldLegend/index.d.ts +2 -0
  238. package/dist/FormFieldLegend/index.d.ts.map +1 -0
  239. package/dist/FormFieldLegend/index.js +2 -0
  240. package/dist/FormFieldLegend/index.js.map +1 -0
  241. package/dist/FormFieldStatus/FormFieldStatus.css +66 -0
  242. package/dist/FormFieldStatus/FormFieldStatus.d.ts +52 -0
  243. package/dist/FormFieldStatus/FormFieldStatus.d.ts.map +1 -0
  244. package/dist/FormFieldStatus/FormFieldStatus.js +44 -0
  245. package/dist/FormFieldStatus/FormFieldStatus.js.map +1 -0
  246. package/dist/FormFieldStatus/index.d.ts +3 -0
  247. package/dist/FormFieldStatus/index.d.ts.map +1 -0
  248. package/dist/FormFieldStatus/index.js +2 -0
  249. package/dist/FormFieldStatus/index.js.map +1 -0
  250. package/dist/FormFieldset/FormFieldset.css +24 -0
  251. package/dist/FormFieldset/FormFieldset.d.ts +83 -0
  252. package/dist/FormFieldset/FormFieldset.d.ts.map +1 -0
  253. package/dist/FormFieldset/FormFieldset.js +59 -0
  254. package/dist/FormFieldset/FormFieldset.js.map +1 -0
  255. package/dist/FormFieldset/index.d.ts +2 -0
  256. package/dist/FormFieldset/index.d.ts.map +1 -0
  257. package/dist/FormFieldset/index.js +2 -0
  258. package/dist/FormFieldset/index.js.map +1 -0
  259. package/dist/Grid/Grid.css +573 -0
  260. package/dist/Grid/Grid.d.ts +35 -0
  261. package/dist/Grid/Grid.d.ts.map +1 -0
  262. package/dist/Grid/Grid.js +29 -0
  263. package/dist/Grid/Grid.js.map +1 -0
  264. package/dist/Grid/GridItem.d.ts +84 -0
  265. package/dist/Grid/GridItem.d.ts.map +1 -0
  266. package/dist/Grid/GridItem.js +39 -0
  267. package/dist/Grid/GridItem.js.map +1 -0
  268. package/dist/Grid/index.d.ts +5 -0
  269. package/dist/Grid/index.d.ts.map +1 -0
  270. package/dist/Grid/index.js +3 -0
  271. package/dist/Grid/index.js.map +1 -0
  272. package/dist/Heading/Heading.css +81 -0
  273. package/dist/Heading/Heading.d.ts +38 -0
  274. package/dist/Heading/Heading.d.ts.map +1 -0
  275. package/dist/Heading/Heading.js +24 -0
  276. package/dist/Heading/Heading.js.map +1 -0
  277. package/dist/Heading/index.d.ts +3 -0
  278. package/dist/Heading/index.d.ts.map +1 -0
  279. package/dist/Heading/index.js +2 -0
  280. package/dist/Heading/index.js.map +1 -0
  281. package/dist/Hero/Hero.css +205 -0
  282. package/dist/Hero/Hero.d.ts +45 -0
  283. package/dist/Hero/Hero.d.ts.map +1 -0
  284. package/dist/Hero/Hero.js +33 -0
  285. package/dist/Hero/Hero.js.map +1 -0
  286. package/dist/Hero/index.d.ts +3 -0
  287. package/dist/Hero/index.d.ts.map +1 -0
  288. package/dist/Hero/index.js +2 -0
  289. package/dist/Hero/index.js.map +1 -0
  290. package/dist/Icon/Icon.css +57 -0
  291. package/dist/Icon/Icon.d.ts +48 -0
  292. package/dist/Icon/Icon.d.ts.map +1 -0
  293. package/dist/Icon/Icon.js +42 -0
  294. package/dist/Icon/Icon.js.map +1 -0
  295. package/dist/Icon/icon-registry.generated.d.ts +4 -0
  296. package/dist/Icon/icon-registry.generated.d.ts.map +1 -0
  297. package/dist/Icon/icon-registry.generated.js +105 -0
  298. package/dist/Icon/icon-registry.generated.js.map +1 -0
  299. package/dist/Icon/index.d.ts +3 -0
  300. package/dist/Icon/index.d.ts.map +1 -0
  301. package/dist/Icon/index.js +2 -0
  302. package/dist/Icon/index.js.map +1 -0
  303. package/dist/Image/Image.css +123 -0
  304. package/dist/Image/Image.d.ts +54 -0
  305. package/dist/Image/Image.d.ts.map +1 -0
  306. package/dist/Image/Image.js +53 -0
  307. package/dist/Image/Image.js.map +1 -0
  308. package/dist/Image/index.d.ts +3 -0
  309. package/dist/Image/index.d.ts.map +1 -0
  310. package/dist/Image/index.js +2 -0
  311. package/dist/Image/index.js.map +1 -0
  312. package/dist/Link/Link.css +113 -0
  313. package/dist/Link/Link.d.ts +80 -0
  314. package/dist/Link/Link.d.ts.map +1 -0
  315. package/dist/Link/Link.js +58 -0
  316. package/dist/Link/Link.js.map +1 -0
  317. package/dist/Link/index.d.ts +3 -0
  318. package/dist/Link/index.d.ts.map +1 -0
  319. package/dist/Link/index.js +2 -0
  320. package/dist/Link/index.js.map +1 -0
  321. package/dist/LinkButton/LinkButton.css +40 -0
  322. package/dist/LinkButton/LinkButton.d.ts +52 -0
  323. package/dist/LinkButton/LinkButton.d.ts.map +1 -0
  324. package/dist/LinkButton/LinkButton.js +34 -0
  325. package/dist/LinkButton/LinkButton.js.map +1 -0
  326. package/dist/LinkButton/index.d.ts +3 -0
  327. package/dist/LinkButton/index.d.ts.map +1 -0
  328. package/dist/LinkButton/index.js +2 -0
  329. package/dist/LinkButton/index.js.map +1 -0
  330. package/dist/Logo/Logo.css +33 -0
  331. package/dist/Logo/Logo.d.ts +33 -0
  332. package/dist/Logo/Logo.d.ts.map +1 -0
  333. package/dist/Logo/Logo.js +32 -0
  334. package/dist/Logo/Logo.js.map +1 -0
  335. package/dist/Logo/index.d.ts +2 -0
  336. package/dist/Logo/index.d.ts.map +1 -0
  337. package/dist/Logo/index.js +2 -0
  338. package/dist/Logo/index.js.map +1 -0
  339. package/dist/Menu/Menu.css +57 -0
  340. package/dist/Menu/Menu.d.ts +56 -0
  341. package/dist/Menu/Menu.d.ts.map +1 -0
  342. package/dist/Menu/Menu.js +38 -0
  343. package/dist/Menu/Menu.js.map +1 -0
  344. package/dist/Menu/index.d.ts +2 -0
  345. package/dist/Menu/index.d.ts.map +1 -0
  346. package/dist/Menu/index.js +2 -0
  347. package/dist/Menu/index.js.map +1 -0
  348. package/dist/MenuButton/MenuButton.css +106 -0
  349. package/dist/MenuButton/MenuButton.d.ts +54 -0
  350. package/dist/MenuButton/MenuButton.d.ts.map +1 -0
  351. package/dist/MenuButton/MenuButton.js +37 -0
  352. package/dist/MenuButton/MenuButton.js.map +1 -0
  353. package/dist/MenuButton/index.d.ts +2 -0
  354. package/dist/MenuButton/index.d.ts.map +1 -0
  355. package/dist/MenuButton/index.js +2 -0
  356. package/dist/MenuButton/index.js.map +1 -0
  357. package/dist/MenuLink/MenuLink.css +212 -0
  358. package/dist/MenuLink/MenuLink.d.ts +96 -0
  359. package/dist/MenuLink/MenuLink.d.ts.map +1 -0
  360. package/dist/MenuLink/MenuLink.js +50 -0
  361. package/dist/MenuLink/MenuLink.js.map +1 -0
  362. package/dist/MenuLink/index.d.ts +2 -0
  363. package/dist/MenuLink/index.d.ts.map +1 -0
  364. package/dist/MenuLink/index.js +2 -0
  365. package/dist/MenuLink/index.js.map +1 -0
  366. package/dist/ModalDialog/ModalDialog.css +199 -0
  367. package/dist/ModalDialog/ModalDialog.d.ts +95 -0
  368. package/dist/ModalDialog/ModalDialog.d.ts.map +1 -0
  369. package/dist/ModalDialog/ModalDialog.js +93 -0
  370. package/dist/ModalDialog/ModalDialog.js.map +1 -0
  371. package/dist/ModalDialog/index.d.ts +3 -0
  372. package/dist/ModalDialog/index.d.ts.map +1 -0
  373. package/dist/ModalDialog/index.js +2 -0
  374. package/dist/ModalDialog/index.js.map +1 -0
  375. package/dist/Note/Note.css +169 -0
  376. package/dist/Note/Note.d.ts +78 -0
  377. package/dist/Note/Note.d.ts.map +1 -0
  378. package/dist/Note/Note.js +68 -0
  379. package/dist/Note/Note.js.map +1 -0
  380. package/dist/Note/index.d.ts +3 -0
  381. package/dist/Note/index.d.ts.map +1 -0
  382. package/dist/Note/index.js +2 -0
  383. package/dist/Note/index.js.map +1 -0
  384. package/dist/NumberBadge/NumberBadge.css +83 -0
  385. package/dist/NumberBadge/NumberBadge.d.ts +42 -0
  386. package/dist/NumberBadge/NumberBadge.d.ts.map +1 -0
  387. package/dist/NumberBadge/NumberBadge.js +46 -0
  388. package/dist/NumberBadge/NumberBadge.js.map +1 -0
  389. package/dist/NumberBadge/index.d.ts +2 -0
  390. package/dist/NumberBadge/index.d.ts.map +1 -0
  391. package/dist/NumberBadge/index.js +2 -0
  392. package/dist/NumberBadge/index.js.map +1 -0
  393. package/dist/NumberInput/NumberInput.css +4 -0
  394. package/dist/NumberInput/NumberInput.d.ts +45 -0
  395. package/dist/NumberInput/NumberInput.d.ts.map +1 -0
  396. package/dist/NumberInput/NumberInput.js +27 -0
  397. package/dist/NumberInput/NumberInput.js.map +1 -0
  398. package/dist/NumberInput/index.d.ts +3 -0
  399. package/dist/NumberInput/index.d.ts.map +1 -0
  400. package/dist/NumberInput/index.js +2 -0
  401. package/dist/NumberInput/index.js.map +1 -0
  402. package/dist/OptionLabel/OptionLabel.css +18 -0
  403. package/dist/OptionLabel/OptionLabel.d.ts +13 -0
  404. package/dist/OptionLabel/OptionLabel.d.ts.map +1 -0
  405. package/dist/OptionLabel/OptionLabel.js +13 -0
  406. package/dist/OptionLabel/OptionLabel.js.map +1 -0
  407. package/dist/OptionLabel/index.d.ts +3 -0
  408. package/dist/OptionLabel/index.d.ts.map +1 -0
  409. package/dist/OptionLabel/index.js +2 -0
  410. package/dist/OptionLabel/index.js.map +1 -0
  411. package/dist/OrderedList/OrderedList.css +37 -0
  412. package/dist/OrderedList/OrderedList.d.ts +32 -0
  413. package/dist/OrderedList/OrderedList.d.ts.map +1 -0
  414. package/dist/OrderedList/OrderedList.js +28 -0
  415. package/dist/OrderedList/OrderedList.js.map +1 -0
  416. package/dist/OrderedList/index.d.ts +3 -0
  417. package/dist/OrderedList/index.d.ts.map +1 -0
  418. package/dist/OrderedList/index.js +2 -0
  419. package/dist/OrderedList/index.js.map +1 -0
  420. package/dist/PageBody/PageBody.css +69 -0
  421. package/dist/PageBody/PageBody.d.ts +33 -0
  422. package/dist/PageBody/PageBody.d.ts.map +1 -0
  423. package/dist/PageBody/PageBody.js +28 -0
  424. package/dist/PageBody/PageBody.js.map +1 -0
  425. package/dist/PageBody/index.d.ts +2 -0
  426. package/dist/PageBody/index.d.ts.map +1 -0
  427. package/dist/PageBody/index.js +2 -0
  428. package/dist/PageBody/index.js.map +1 -0
  429. package/dist/PageFooter/PageFooter.css +102 -0
  430. package/dist/PageFooter/PageFooter.d.ts +55 -0
  431. package/dist/PageFooter/PageFooter.d.ts.map +1 -0
  432. package/dist/PageFooter/PageFooter.js +45 -0
  433. package/dist/PageFooter/PageFooter.js.map +1 -0
  434. package/dist/PageFooter/index.d.ts +2 -0
  435. package/dist/PageFooter/index.d.ts.map +1 -0
  436. package/dist/PageFooter/index.js +2 -0
  437. package/dist/PageFooter/index.js.map +1 -0
  438. package/dist/PageHeader/PageHeader.css +517 -0
  439. package/dist/PageHeader/PageHeader.d.ts +190 -0
  440. package/dist/PageHeader/PageHeader.d.ts.map +1 -0
  441. package/dist/PageHeader/PageHeader.js +115 -0
  442. package/dist/PageHeader/PageHeader.js.map +1 -0
  443. package/dist/PageHeader/index.d.ts +2 -0
  444. package/dist/PageHeader/index.d.ts.map +1 -0
  445. package/dist/PageHeader/index.js +2 -0
  446. package/dist/PageHeader/index.js.map +1 -0
  447. package/dist/PageLayout/PageLayout.css +6 -0
  448. package/dist/PageLayout/PageLayout.d.ts +38 -0
  449. package/dist/PageLayout/PageLayout.d.ts.map +1 -0
  450. package/dist/PageLayout/PageLayout.js +33 -0
  451. package/dist/PageLayout/PageLayout.js.map +1 -0
  452. package/dist/PageLayout/index.d.ts +2 -0
  453. package/dist/PageLayout/index.d.ts.map +1 -0
  454. package/dist/PageLayout/index.js +2 -0
  455. package/dist/PageLayout/index.js.map +1 -0
  456. package/dist/Paragraph/Paragraph.css +38 -0
  457. package/dist/Paragraph/Paragraph.d.ts +35 -0
  458. package/dist/Paragraph/Paragraph.d.ts.map +1 -0
  459. package/dist/Paragraph/Paragraph.js +25 -0
  460. package/dist/Paragraph/Paragraph.js.map +1 -0
  461. package/dist/Paragraph/index.d.ts +3 -0
  462. package/dist/Paragraph/index.d.ts.map +1 -0
  463. package/dist/Paragraph/index.js +2 -0
  464. package/dist/Paragraph/index.js.map +1 -0
  465. package/dist/PasswordInput/PasswordInput.css +4 -0
  466. package/dist/PasswordInput/PasswordInput.d.ts +52 -0
  467. package/dist/PasswordInput/PasswordInput.d.ts.map +1 -0
  468. package/dist/PasswordInput/PasswordInput.js +32 -0
  469. package/dist/PasswordInput/PasswordInput.js.map +1 -0
  470. package/dist/PasswordInput/index.d.ts +3 -0
  471. package/dist/PasswordInput/index.d.ts.map +1 -0
  472. package/dist/PasswordInput/index.js +2 -0
  473. package/dist/PasswordInput/index.js.map +1 -0
  474. package/dist/Popover/Popover.css +233 -0
  475. package/dist/Popover/Popover.d.ts +117 -0
  476. package/dist/Popover/Popover.d.ts.map +1 -0
  477. package/dist/Popover/Popover.js +219 -0
  478. package/dist/Popover/Popover.js.map +1 -0
  479. package/dist/Popover/index.d.ts +3 -0
  480. package/dist/Popover/index.d.ts.map +1 -0
  481. package/dist/Popover/index.js +2 -0
  482. package/dist/Popover/index.js.map +1 -0
  483. package/dist/ProgressBar/ProgressBar.css +91 -0
  484. package/dist/ProgressBar/ProgressBar.d.ts +53 -0
  485. package/dist/ProgressBar/ProgressBar.d.ts.map +1 -0
  486. package/dist/ProgressBar/ProgressBar.js +36 -0
  487. package/dist/ProgressBar/ProgressBar.js.map +1 -0
  488. package/dist/ProgressBar/index.d.ts +2 -0
  489. package/dist/ProgressBar/index.d.ts.map +1 -0
  490. package/dist/ProgressBar/index.js +2 -0
  491. package/dist/ProgressBar/index.js.map +1 -0
  492. package/dist/Radio/Radio.css +169 -0
  493. package/dist/Radio/Radio.d.ts +14 -0
  494. package/dist/Radio/Radio.d.ts.map +1 -0
  495. package/dist/Radio/Radio.js +14 -0
  496. package/dist/Radio/Radio.js.map +1 -0
  497. package/dist/Radio/index.d.ts +3 -0
  498. package/dist/Radio/index.d.ts.map +1 -0
  499. package/dist/Radio/index.js +2 -0
  500. package/dist/Radio/index.js.map +1 -0
  501. package/dist/RadioGroup/RadioGroup.css +10 -0
  502. package/dist/RadioGroup/RadioGroup.d.ts +37 -0
  503. package/dist/RadioGroup/RadioGroup.d.ts.map +1 -0
  504. package/dist/RadioGroup/RadioGroup.js +37 -0
  505. package/dist/RadioGroup/RadioGroup.js.map +1 -0
  506. package/dist/RadioGroup/index.d.ts +3 -0
  507. package/dist/RadioGroup/index.d.ts.map +1 -0
  508. package/dist/RadioGroup/index.js +2 -0
  509. package/dist/RadioGroup/index.js.map +1 -0
  510. package/dist/RadioOption/RadioOption.css +17 -0
  511. package/dist/RadioOption/RadioOption.d.ts +14 -0
  512. package/dist/RadioOption/RadioOption.d.ts.map +1 -0
  513. package/dist/RadioOption/RadioOption.js +15 -0
  514. package/dist/RadioOption/RadioOption.js.map +1 -0
  515. package/dist/RadioOption/index.d.ts +3 -0
  516. package/dist/RadioOption/index.d.ts.map +1 -0
  517. package/dist/RadioOption/index.js +2 -0
  518. package/dist/RadioOption/index.js.map +1 -0
  519. package/dist/SearchInput/SearchInput.css +59 -0
  520. package/dist/SearchInput/SearchInput.d.ts +40 -0
  521. package/dist/SearchInput/SearchInput.d.ts.map +1 -0
  522. package/dist/SearchInput/SearchInput.js +31 -0
  523. package/dist/SearchInput/SearchInput.js.map +1 -0
  524. package/dist/SearchInput/index.d.ts +3 -0
  525. package/dist/SearchInput/index.d.ts.map +1 -0
  526. package/dist/SearchInput/index.js +2 -0
  527. package/dist/SearchInput/index.js.map +1 -0
  528. package/dist/Select/Select.css +86 -0
  529. package/dist/Select/Select.d.ts +52 -0
  530. package/dist/Select/Select.d.ts.map +1 -0
  531. package/dist/Select/Select.js +43 -0
  532. package/dist/Select/Select.js.map +1 -0
  533. package/dist/Select/index.d.ts +3 -0
  534. package/dist/Select/index.d.ts.map +1 -0
  535. package/dist/Select/index.js +2 -0
  536. package/dist/Select/index.js.map +1 -0
  537. package/dist/SkipLink/SkipLink.css +58 -0
  538. package/dist/SkipLink/SkipLink.d.ts +35 -0
  539. package/dist/SkipLink/SkipLink.d.ts.map +1 -0
  540. package/dist/SkipLink/SkipLink.js +23 -0
  541. package/dist/SkipLink/SkipLink.js.map +1 -0
  542. package/dist/SkipLink/index.d.ts +2 -0
  543. package/dist/SkipLink/index.d.ts.map +1 -0
  544. package/dist/SkipLink/index.js +2 -0
  545. package/dist/SkipLink/index.js.map +1 -0
  546. package/dist/Spinner/Spinner.css +101 -0
  547. package/dist/Spinner/Spinner.d.ts +43 -0
  548. package/dist/Spinner/Spinner.d.ts.map +1 -0
  549. package/dist/Spinner/Spinner.js +30 -0
  550. package/dist/Spinner/Spinner.js.map +1 -0
  551. package/dist/Spinner/index.d.ts +2 -0
  552. package/dist/Spinner/index.d.ts.map +1 -0
  553. package/dist/Spinner/index.js +2 -0
  554. package/dist/Spinner/index.js.map +1 -0
  555. package/dist/Stack/Stack.css +59 -0
  556. package/dist/Stack/Stack.d.ts +35 -0
  557. package/dist/Stack/Stack.d.ts.map +1 -0
  558. package/dist/Stack/Stack.js +29 -0
  559. package/dist/Stack/Stack.js.map +1 -0
  560. package/dist/Stack/index.d.ts +3 -0
  561. package/dist/Stack/index.d.ts.map +1 -0
  562. package/dist/Stack/index.js +2 -0
  563. package/dist/Stack/index.js.map +1 -0
  564. package/dist/StatusBadge/StatusBadge.css +87 -0
  565. package/dist/StatusBadge/StatusBadge.d.ts +50 -0
  566. package/dist/StatusBadge/StatusBadge.d.ts.map +1 -0
  567. package/dist/StatusBadge/StatusBadge.js +40 -0
  568. package/dist/StatusBadge/StatusBadge.js.map +1 -0
  569. package/dist/StatusBadge/index.d.ts +2 -0
  570. package/dist/StatusBadge/index.d.ts.map +1 -0
  571. package/dist/StatusBadge/index.js +2 -0
  572. package/dist/StatusBadge/index.js.map +1 -0
  573. package/dist/SummaryList/SummaryList.css +151 -0
  574. package/dist/SummaryList/SummaryList.d.ts +49 -0
  575. package/dist/SummaryList/SummaryList.d.ts.map +1 -0
  576. package/dist/SummaryList/SummaryList.js +31 -0
  577. package/dist/SummaryList/SummaryList.js.map +1 -0
  578. package/dist/SummaryList/index.d.ts +3 -0
  579. package/dist/SummaryList/index.d.ts.map +1 -0
  580. package/dist/SummaryList/index.js +2 -0
  581. package/dist/SummaryList/index.js.map +1 -0
  582. package/dist/Table/Table.css +243 -0
  583. package/dist/Table/Table.d.ts +61 -0
  584. package/dist/Table/Table.d.ts.map +1 -0
  585. package/dist/Table/Table.js +37 -0
  586. package/dist/Table/Table.js.map +1 -0
  587. package/dist/Table/index.d.ts +3 -0
  588. package/dist/Table/index.d.ts.map +1 -0
  589. package/dist/Table/index.js +2 -0
  590. package/dist/Table/index.js.map +1 -0
  591. package/dist/TelephoneInput/TelephoneInput.css +4 -0
  592. package/dist/TelephoneInput/TelephoneInput.d.ts +38 -0
  593. package/dist/TelephoneInput/TelephoneInput.d.ts.map +1 -0
  594. package/dist/TelephoneInput/TelephoneInput.js +27 -0
  595. package/dist/TelephoneInput/TelephoneInput.js.map +1 -0
  596. package/dist/TelephoneInput/index.d.ts +3 -0
  597. package/dist/TelephoneInput/index.d.ts.map +1 -0
  598. package/dist/TelephoneInput/index.js +2 -0
  599. package/dist/TelephoneInput/index.js.map +1 -0
  600. package/dist/TextArea/TextArea.css +126 -0
  601. package/dist/TextArea/TextArea.d.ts +44 -0
  602. package/dist/TextArea/TextArea.d.ts.map +1 -0
  603. package/dist/TextArea/TextArea.js +33 -0
  604. package/dist/TextArea/TextArea.js.map +1 -0
  605. package/dist/TextArea/index.d.ts +3 -0
  606. package/dist/TextArea/index.d.ts.map +1 -0
  607. package/dist/TextArea/index.js +2 -0
  608. package/dist/TextArea/index.js.map +1 -0
  609. package/dist/TextInput/TextInput.css +122 -0
  610. package/dist/TextInput/TextInput.d.ts +44 -0
  611. package/dist/TextInput/TextInput.d.ts.map +1 -0
  612. package/dist/TextInput/TextInput.js +33 -0
  613. package/dist/TextInput/TextInput.js.map +1 -0
  614. package/dist/TextInput/index.d.ts +3 -0
  615. package/dist/TextInput/index.d.ts.map +1 -0
  616. package/dist/TextInput/index.js +2 -0
  617. package/dist/TextInput/index.js.map +1 -0
  618. package/dist/TimeInput/TimeInput.css +37 -0
  619. package/dist/TimeInput/TimeInput.d.ts +37 -0
  620. package/dist/TimeInput/TimeInput.d.ts.map +1 -0
  621. package/dist/TimeInput/TimeInput.js +52 -0
  622. package/dist/TimeInput/TimeInput.js.map +1 -0
  623. package/dist/TimeInput/index.d.ts +3 -0
  624. package/dist/TimeInput/index.d.ts.map +1 -0
  625. package/dist/TimeInput/index.js +2 -0
  626. package/dist/TimeInput/index.js.map +1 -0
  627. package/dist/UnorderedList/UnorderedList.css +38 -0
  628. package/dist/UnorderedList/UnorderedList.d.ts +26 -0
  629. package/dist/UnorderedList/UnorderedList.d.ts.map +1 -0
  630. package/dist/UnorderedList/UnorderedList.js +22 -0
  631. package/dist/UnorderedList/UnorderedList.js.map +1 -0
  632. package/dist/UnorderedList/index.d.ts +3 -0
  633. package/dist/UnorderedList/index.d.ts.map +1 -0
  634. package/dist/UnorderedList/index.js +2 -0
  635. package/dist/UnorderedList/index.js.map +1 -0
  636. package/dist/index.css +7036 -0
  637. package/dist/index.d.ts +76 -0
  638. package/dist/index.d.ts.map +1 -0
  639. package/dist/index.js +86 -0
  640. package/dist/index.js.map +1 -0
  641. package/package.json +57 -0
@@ -0,0 +1,58 @@
1
+ import { jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ import { classNames } from '@dsn-starter-kit/core';
4
+ import './Link.css';
5
+ /**
6
+ * Link component with icon support and size variants
7
+ *
8
+ * @example
9
+ * ```tsx
10
+ * // Basic usage (inherits font from parent)
11
+ * <Link href="/about">About us</Link>
12
+ *
13
+ * // With explicit size
14
+ * <Link href="/about" size="small">Small link</Link>
15
+ * <Link href="/about" size="default">Default link</Link>
16
+ * <Link href="/about" size="large">Large link</Link>
17
+ *
18
+ * // With icon before text
19
+ * <Link href="/download" iconStart={<Icon name="download" />}>
20
+ * Download
21
+ * </Link>
22
+ *
23
+ * // With icon after text
24
+ * <Link href="/next" iconEnd={<Icon name="arrow-right" />}>
25
+ * Next page
26
+ * </Link>
27
+ *
28
+ * // External link (opens in new tab with visible hint)
29
+ * <Link href="https://example.com" external>
30
+ * External site
31
+ * </Link>
32
+ *
33
+ * // Current page
34
+ * <Link href="/dashboard" current>Dashboard</Link>
35
+ *
36
+ * // Disabled
37
+ * <Link disabled>Unavailable</Link>
38
+ * ```
39
+ */
40
+ export const Link = React.forwardRef(({ disabled = false, current = false, external = false, size, iconStart, iconEnd, className, href, target, rel, tabIndex, children, onClick, ...props }, ref) => {
41
+ // Only add size class when explicitly provided.
42
+ // Without a size prop, the link inherits font from its parent,
43
+ // which is the expected behavior for inline usage in paragraphs.
44
+ const classes = classNames('dsn-link', size && `dsn-link--size-${size}`, className);
45
+ const handleClick = (e) => {
46
+ if (disabled) {
47
+ e.preventDefault();
48
+ return;
49
+ }
50
+ onClick?.(e);
51
+ };
52
+ // External links: add target, rel, and visible hint automatically
53
+ const resolvedTarget = external ? (target ?? '_blank') : target;
54
+ const resolvedRel = external ? (rel ?? 'noopener noreferrer') : rel;
55
+ return (_jsxs("a", { ref: ref, className: classes, href: disabled ? undefined : href, target: resolvedTarget, rel: resolvedRel, tabIndex: disabled ? -1 : tabIndex, "aria-disabled": disabled || undefined, "aria-current": current ? 'page' : undefined, onClick: handleClick, ...props, children: [iconStart, children, external && ' (opent nieuw tabblad)', iconEnd] }));
56
+ });
57
+ Link.displayName = 'Link';
58
+ //# sourceMappingURL=Link.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Link.js","sourceRoot":"","sources":["../../src/Link/Link.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,YAAY,CAAC;AAoDpB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAClC,CACE,EACE,QAAQ,GAAG,KAAK,EAChB,OAAO,GAAG,KAAK,EACf,QAAQ,GAAG,KAAK,EAChB,IAAI,EACJ,SAAS,EACT,OAAO,EACP,SAAS,EACT,IAAI,EACJ,MAAM,EACN,GAAG,EACH,QAAQ,EACR,QAAQ,EACR,OAAO,EACP,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,gDAAgD;IAChD,+DAA+D;IAC/D,iEAAiE;IACjE,MAAM,OAAO,GAAG,UAAU,CACxB,UAAU,EACV,IAAI,IAAI,kBAAkB,IAAI,EAAE,EAChC,SAAS,CACV,CAAC;IAEF,MAAM,WAAW,GAAG,CAAC,CAAsC,EAAE,EAAE;QAC7D,IAAI,QAAQ,EAAE,CAAC;YACb,CAAC,CAAC,cAAc,EAAE,CAAC;YACnB,OAAO;QACT,CAAC;QACD,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;IACf,CAAC,CAAC;IAEF,kEAAkE;IAClE,MAAM,cAAc,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;IAChE,MAAM,WAAW,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,qBAAqB,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;IAEpE,OAAO,CACL,aACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,OAAO,EAClB,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EACjC,MAAM,EAAE,cAAc,EACtB,GAAG,EAAE,WAAW,EAChB,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,mBACnB,QAAQ,IAAI,SAAS,kBACtB,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,EAC1C,OAAO,EAAE,WAAW,KAChB,KAAK,aAER,SAAS,EACT,QAAQ,EACR,QAAQ,IAAI,wBAAwB,EACpC,OAAO,IACN,CACL,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { Link } from './Link';
2
+ export type { LinkProps, LinkSize } from './Link';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Link/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { Link } from './Link';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Link/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,40 @@
1
+ /**
2
+ * LinkButton Component Styles for React
3
+ * Re-exports the base LinkButton styles from components-html
4
+ */
5
+
6
+ /**
7
+ * LinkButton Component
8
+ * Resets native <button> styles so the element inherits dsn-link appearance.
9
+ * Always combine with the dsn-link class:
10
+ * <button class="dsn-link dsn-link-button">Label</button>
11
+ */
12
+
13
+ .dsn-link-button {
14
+ appearance: none;
15
+ background: none;
16
+ border: none;
17
+ padding: 0;
18
+ margin: 0;
19
+ cursor: pointer;
20
+ /* font: inherit is intentionally omitted — dsn-link already sets this,
21
+ and repeating it here would override font-size from dsn-link--size-* */
22
+ }
23
+
24
+ /* dsn-link uses [aria-disabled='true'] for its disabled state,
25
+ but <button> uses the native disabled attribute — that selector does not match.
26
+ We manually apply the same visual treatment via :disabled. */
27
+ .dsn-link.dsn-link-button:disabled {
28
+ color: var(--dsn-link-disabled-color);
29
+ text-decoration-line: none;
30
+ cursor: not-allowed;
31
+ }
32
+
33
+ /* Prevent hover/active styles from applying on a disabled button.
34
+ dsn-link uses :not([aria-disabled='true']) which does not cover :disabled. */
35
+ .dsn-link.dsn-link-button:disabled:hover,
36
+ .dsn-link.dsn-link-button:disabled:active {
37
+ color: var(--dsn-link-disabled-color);
38
+ text-decoration-line: none;
39
+ }
40
+
@@ -0,0 +1,52 @@
1
+ import React from 'react';
2
+ import './LinkButton.css';
3
+ export type LinkButtonSize = 'small' | 'default' | 'large';
4
+ export interface LinkButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
5
+ /**
6
+ * Button size — controls font-size, gap, and icon size.
7
+ * When omitted, the button inherits the surrounding font (same as Link).
8
+ */
9
+ size?: LinkButtonSize;
10
+ /**
11
+ * Icon element rendered before the button text
12
+ */
13
+ iconStart?: React.ReactNode;
14
+ /**
15
+ * Icon element rendered after the button text
16
+ */
17
+ iconEnd?: React.ReactNode;
18
+ /**
19
+ * Additional CSS class names
20
+ */
21
+ className?: string;
22
+ /**
23
+ * Button content
24
+ */
25
+ children?: React.ReactNode;
26
+ }
27
+ /**
28
+ * LinkButton — semantically a <button>, visually styled as a Link.
29
+ *
30
+ * Use when an action requires a JavaScript handler or form submit,
31
+ * but the visual prominence of a Button does not fit the context.
32
+ *
33
+ * @example
34
+ * ```tsx
35
+ * // Basic usage (inherits font from parent)
36
+ * <LinkButton onClick={handleClick}>Wachtwoord vergeten?</LinkButton>
37
+ *
38
+ * // With explicit size
39
+ * <LinkButton size="small">Klein</LinkButton>
40
+ *
41
+ * // With icon
42
+ * <LinkButton iconStart={<Icon name="arrow-left" aria-hidden />}>Terug</LinkButton>
43
+ *
44
+ * // Disabled
45
+ * <LinkButton disabled>Niet beschikbaar</LinkButton>
46
+ *
47
+ * // Form submit
48
+ * <LinkButton type="submit">Bevestigen</LinkButton>
49
+ * ```
50
+ */
51
+ export declare const LinkButton: React.ForwardRefExoticComponent<LinkButtonProps & React.RefAttributes<HTMLButtonElement>>;
52
+ //# sourceMappingURL=LinkButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkButton.d.ts","sourceRoot":"","sources":["../../src/LinkButton/LinkButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,kBAAkB,CAAC;AAE1B,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,SAAS,GAAG,OAAO,CAAC;AAE3D,MAAM,WAAW,eAAgB,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACpF;;;OAGG;IACH,IAAI,CAAC,EAAE,cAAc,CAAC;IAEtB;;OAEG;IACH,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE5B;;OAEG;IACH,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,UAAU,2FA4BtB,CAAC"}
@@ -0,0 +1,34 @@
1
+ import { jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ import { classNames } from '@dsn-starter-kit/core';
4
+ import './LinkButton.css';
5
+ /**
6
+ * LinkButton — semantically a <button>, visually styled as a Link.
7
+ *
8
+ * Use when an action requires a JavaScript handler or form submit,
9
+ * but the visual prominence of a Button does not fit the context.
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * // Basic usage (inherits font from parent)
14
+ * <LinkButton onClick={handleClick}>Wachtwoord vergeten?</LinkButton>
15
+ *
16
+ * // With explicit size
17
+ * <LinkButton size="small">Klein</LinkButton>
18
+ *
19
+ * // With icon
20
+ * <LinkButton iconStart={<Icon name="arrow-left" aria-hidden />}>Terug</LinkButton>
21
+ *
22
+ * // Disabled
23
+ * <LinkButton disabled>Niet beschikbaar</LinkButton>
24
+ *
25
+ * // Form submit
26
+ * <LinkButton type="submit">Bevestigen</LinkButton>
27
+ * ```
28
+ */
29
+ export const LinkButton = React.forwardRef(({ size, iconStart, iconEnd, className, type = 'button', children, ...props }, ref) => {
30
+ const classes = classNames('dsn-link', 'dsn-link-button', size && `dsn-link--size-${size}`, className);
31
+ return (_jsxs("button", { ref: ref, type: type, className: classes, ...props, children: [iconStart, children, iconEnd] }));
32
+ });
33
+ LinkButton.displayName = 'LinkButton';
34
+ //# sourceMappingURL=LinkButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LinkButton.js","sourceRoot":"","sources":["../../src/LinkButton/LinkButton.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,kBAAkB,CAAC;AAgC1B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CACxC,CACE,EACE,IAAI,EACJ,SAAS,EACT,OAAO,EACP,SAAS,EACT,IAAI,GAAG,QAAQ,EACf,QAAQ,EACR,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,OAAO,GAAG,UAAU,CACxB,UAAU,EACV,iBAAiB,EACjB,IAAI,IAAI,kBAAkB,IAAI,EAAE,EAChC,SAAS,CACV,CAAC;IAEF,OAAO,CACL,kBAAQ,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,KAAM,KAAK,aACxD,SAAS,EACT,QAAQ,EACR,OAAO,IACD,CACV,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,UAAU,CAAC,WAAW,GAAG,YAAY,CAAC"}
@@ -0,0 +1,3 @@
1
+ export { LinkButton } from './LinkButton';
2
+ export type { LinkButtonProps, LinkButtonSize } from './LinkButton';
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/LinkButton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,2 @@
1
+ export { LinkButton } from './LinkButton';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/LinkButton/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC"}
@@ -0,0 +1,33 @@
1
+ /**
2
+ * Logo Component
3
+ * Theme-aware SVG logo component met design token kleuren.
4
+ *
5
+ * De twee kleurlagen — primaire merkkleur en labelkleur — zijn gekoppeld aan
6
+ * design tokens zodat het logo zich automatisch aanpast aan elk thema en elke kleurmodus.
7
+ *
8
+ * Standalone gebruik (met accessible title):
9
+ * <svg class="dsn-logo" xmlns="http://www.w3.org/2000/svg" width="186" height="48"
10
+ * viewBox="0 0 186 48" fill="none" role="img" aria-labelledby="logo-title">
11
+ * <title id="logo-title">Starter Kit</title>
12
+ * <path class="dsn-logo__primary" d="M0 0h185.491v48H0z"/>
13
+ * <path class="dsn-logo__label" d="M8 8h169.491v32H8z"/>
14
+ * <!-- letterpaden met dsn-logo__primary -->
15
+ * </svg>
16
+ *
17
+ * Decoratief gebruik (in een link):
18
+ * <a href="/">
19
+ * <svg class="dsn-logo" aria-hidden="true" ...>
20
+ * <!-- geen <title> — link levert de accessible name -->
21
+ * </svg>
22
+ * <span class="dsn-visually-hidden">Starter Kit — terug naar homepage</span>
23
+ * </a>
24
+ */
25
+
26
+ .dsn-logo__primary {
27
+ fill: var(--dsn-logo-color-primary);
28
+ }
29
+
30
+ .dsn-logo__label {
31
+ fill: var(--dsn-logo-color-label);
32
+ }
33
+
@@ -0,0 +1,33 @@
1
+ import React from 'react';
2
+ import './Logo.css';
3
+ export interface LogoProps extends React.SVGProps<SVGSVGElement> {
4
+ /**
5
+ * Accessible naam via <title> in de SVG.
6
+ * Niet gerenderd wanneer aria-hidden={true}.
7
+ * @default 'Starter Kit'
8
+ */
9
+ title?: string;
10
+ }
11
+ /**
12
+ * Logo component
13
+ * Rendert het Starter Kit-logo als inline SVG met theme-aware kleuren via design tokens.
14
+ *
15
+ * De twee kleurlagen zijn gekoppeld aan tokens:
16
+ * - dsn-logo__primary — achtergrondrechthoek + letterpaden (merkkleur van het actieve thema)
17
+ * - dsn-logo__label — binnenste rechthoek (documentachtergrondkleur, doorkijkje-effect)
18
+ *
19
+ * @example
20
+ * // Standalone — screenreader leest de title
21
+ * <Logo />
22
+ *
23
+ * // Decoratief — in een link, omringende context levert de accessible name
24
+ * <a href="/">
25
+ * <Logo aria-hidden={true} />
26
+ * <span className="dsn-visually-hidden">Starter Kit — terug naar homepage</span>
27
+ * </a>
28
+ *
29
+ * // Custom title (bijv. na white-label herbranding)
30
+ * <Logo title="Mijn Organisatie" />
31
+ */
32
+ export declare const Logo: React.ForwardRefExoticComponent<Omit<LogoProps, "ref"> & React.RefAttributes<SVGSVGElement>>;
33
+ //# sourceMappingURL=Logo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Logo.d.ts","sourceRoot":"","sources":["../../src/Logo/Logo.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAgB,MAAM,OAAO,CAAC;AAErC,OAAO,YAAY,CAAC;AAEpB,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC9D;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,IAAI,8FAmChB,CAAC"}
@@ -0,0 +1,32 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ import React, { useId } from 'react';
3
+ import { classNames } from '@dsn-starter-kit/core';
4
+ import './Logo.css';
5
+ /**
6
+ * Logo component
7
+ * Rendert het Starter Kit-logo als inline SVG met theme-aware kleuren via design tokens.
8
+ *
9
+ * De twee kleurlagen zijn gekoppeld aan tokens:
10
+ * - dsn-logo__primary — achtergrondrechthoek + letterpaden (merkkleur van het actieve thema)
11
+ * - dsn-logo__label — binnenste rechthoek (documentachtergrondkleur, doorkijkje-effect)
12
+ *
13
+ * @example
14
+ * // Standalone — screenreader leest de title
15
+ * <Logo />
16
+ *
17
+ * // Decoratief — in een link, omringende context levert de accessible name
18
+ * <a href="/">
19
+ * <Logo aria-hidden={true} />
20
+ * <span className="dsn-visually-hidden">Starter Kit — terug naar homepage</span>
21
+ * </a>
22
+ *
23
+ * // Custom title (bijv. na white-label herbranding)
24
+ * <Logo title="Mijn Organisatie" />
25
+ */
26
+ export const Logo = React.forwardRef(({ className, title = 'Starter Kit', 'aria-hidden': ariaHidden, ...props }, ref) => {
27
+ const titleId = useId();
28
+ const isDecorative = ariaHidden === true || ariaHidden === 'true';
29
+ return (_jsxs("svg", { ref: ref, className: classNames('dsn-logo', className), xmlns: "http://www.w3.org/2000/svg", width: "186", height: "48", viewBox: "0 0 186 48", fill: "none", role: isDecorative ? undefined : 'img', "aria-labelledby": isDecorative ? undefined : titleId, "aria-hidden": isDecorative ? true : undefined, ...props, children: [!isDecorative && _jsx("title", { id: titleId, children: title }), _jsx("path", { className: "dsn-logo__primary", d: "M0 0h185.491v48H0z" }), _jsx("path", { className: "dsn-logo__label", d: "M8 8h169.491v32H8z" }), _jsx("path", { className: "dsn-logo__primary", d: "M164.624 32h-3.6q-.423 0-.622-.178-.178-.2-.178-.622V20.289h-3.267q-.422 0-.622-.178-.178-.2-.178-.622V16.8q0-.423.178-.6.2-.2.622-.2h11.734q.422 0 .6.2.2.178.2.6v2.689q0 .422-.2.622-.178.178-.6.178h-3.267V31.2q0 .423-.2.622-.178.178-.6.178M144.059 32q-.423 0-.622-.178-.178-.2-.178-.622v-2.644q0-.423.178-.6.2-.2.622-.2h2.2v-7.467h-2.2q-.423 0-.622-.178-.178-.2-.178-.622V16.8q0-.423.178-.6.2-.2.622-.2h9.466q.423 0 .6.2.2.178.2.6v2.689q0 .422-.2.622-.177.178-.6.178h-2.155v7.467h2.155q.423 0 .6.2.2.177.2.6V31.2q0 .423-.2.622-.177.178-.6.178zM131.279 32h-3.445q-.422 0-.622-.178-.178-.2-.178-.622V16.8q0-.423.178-.6.2-.2.622-.2h3.445q.421 0 .6.2.2.178.2.6v5.111h.889l2.288-5.178q.156-.399.423-.555.266-.178.689-.178h3.422q.378 0 .511.2.133.178-.022.533l-2.267 5.178q1.245.066 1.978.889.755.8.755 2.133V31.2q0 .423-.2.622-.177.178-.6.178h-3.422q-.422 0-.622-.178-.178-.2-.178-.622v-4.333q0-.356-.178-.556-.177-.2-.533-.2h-2.933V31.2q0 .423-.2.622-.179.178-.6.178M110.551 20v2.844h1.666q.578 0 .778-.288.2-.312.2-.756v-.756q0-.444-.2-.733-.2-.31-.778-.311zm-.8 12h-3.423q-.422 0-.622-.178-.178-.2-.178-.622V16.8q0-.423.178-.6.2-.2.622-.2h7.4q2.49 0 3.423 1.044.955 1.022.955 2.667v1.022q0 .934-.289 1.6-.267.645-.955.934 1.2.134 1.933.977.756.845.756 2.245V31.2q0 .423-.2.622-.178.178-.6.178h-3.445q-.422 0-.622-.178-.178-.2-.178-.622v-3.4q0-.489-.2-.711-.177-.245-.644-.245h-3.111V31.2q0 .423-.2.622-.178.178-.6.178M102.099 32h-10.31q-.423 0-.623-.178-.177-.2-.178-.622V16.8q0-.423.178-.6.2-.2.622-.2H102.1q.423 0 .6.2.2.178.2.6v2.6q0 .423-.2.622-.177.178-.6.178h-6.133v1.711h4.333q.423 0 .6.2.2.178.2.6v2.378q0 .422-.2.622-.177.178-.6.178h-4.333V27.8h6.133q.423 0 .6.2.2.178.2.6v2.6q0 .423-.2.622-.177.178-.6.178M83.96 32h-3.6q-.423 0-.622-.178-.178-.2-.178-.622V20.289h-3.267q-.422 0-.622-.178-.178-.2-.178-.622V16.8q0-.423.178-.6.2-.2.622-.2h11.733q.423 0 .6.2.2.178.2.6v2.689q0 .422-.2.622-.177.178-.6.178H84.76V31.2q0 .423-.2.622-.178.178-.6.178M65.585 20v2.844h1.666q.579 0 .778-.288.2-.312.2-.756v-.756q0-.444-.2-.733-.2-.31-.778-.311zm-.8 12h-3.422q-.423 0-.623-.178-.177-.2-.178-.622V16.8q0-.423.178-.6.2-.2.622-.2h7.4q2.49 0 3.423 1.044.955 1.022.955 2.667v1.022q0 .934-.289 1.6-.266.645-.955.934 1.2.134 1.933.977.756.845.756 2.245V31.2q0 .423-.2.622-.178.178-.6.178H70.34q-.422 0-.622-.178-.177-.2-.178-.622v-3.4q0-.489-.2-.711-.177-.245-.644-.245h-3.111V31.2q0 .423-.2.622-.178.178-.6.178M50.13 20.667l-1.044 3.377h3.489l-1.045-3.377a.76.76 0 0 0-.2-.29.3.3 0 0 0-.222-.088h-.555q-.134 0-.245.089a1 1 0 0 0-.178.289M48.864 31.2q0 .423-.2.622-.179.178-.6.178h-3.267q-.422 0-.622-.178-.178-.2-.178-.622v-5.867q0-.666.2-1.533.222-.867.667-2.022l1.933-5.045q.133-.378.4-.555.29-.178.733-.178h5.978q.422 0 .69.178.288.177.421.555l1.934 5.045q.443 1.155.644 2.022.222.867.222 1.533V31.2q0 .423-.2.622-.177.178-.6.178h-3.355q-.445 0-.667-.178-.2-.2-.2-.622v-3.111h-3.933zM38.192 32h-3.6q-.422 0-.622-.178-.178-.2-.178-.622V20.289h-3.266q-.423 0-.623-.178-.177-.2-.177-.622V16.8q0-.423.177-.6.2-.2.623-.2h11.733q.421 0 .6.2.2.178.2.6v2.689q0 .422-.2.622-.179.178-.6.178h-3.267V31.2q0 .423-.2.622-.177.178-.6.178M23.822 32H16.8q-.423 0-.622-.178-.178-.2-.178-.622v-2.6q0-.423.178-.6.2-.2.622-.2h5.978q.288 0 .422-.178a.74.74 0 0 0 .156-.466q0-.378-.156-.556-.134-.178-.422-.2l-3.334-.467q-1.556-.222-2.51-1.022-.934-.8-.934-2.667v-2.333q0-1.89 1.222-2.889Q18.445 16 20.6 16h6.222q.423 0 .6.2.2.178.2.6v2.644q0 .423-.2.623-.177.177-.6.177h-5.178a.53.53 0 0 0-.444.2.68.68 0 0 0-.156.467q0 .29.156.489a.6.6 0 0 0 .444.222l3.312.445q1.556.222 2.51 1.022.957.8.956 2.667v2.333q0 1.89-1.244 2.911-1.223 1-3.356 1" })] }));
30
+ });
31
+ Logo.displayName = 'Logo';
32
+ //# sourceMappingURL=Logo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Logo.js","sourceRoot":"","sources":["../../src/Logo/Logo.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,EAAE,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,YAAY,CAAC;AAWpB;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAClC,CACE,EAAE,SAAS,EAAE,KAAK,GAAG,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,GAAG,KAAK,EAAE,EACzE,GAAG,EACH,EAAE;IACF,MAAM,OAAO,GAAG,KAAK,EAAE,CAAC;IACxB,MAAM,YAAY,GAAG,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,MAAM,CAAC;IAElE,OAAO,CACL,eACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,UAAU,CAAC,UAAU,EAAE,SAAS,CAAC,EAC5C,KAAK,EAAC,4BAA4B,EAClC,KAAK,EAAC,KAAK,EACX,MAAM,EAAC,IAAI,EACX,OAAO,EAAC,YAAY,EACpB,IAAI,EAAC,MAAM,EACX,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,qBACrB,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,iBACtC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,KACxC,KAAK,aAER,CAAC,YAAY,IAAI,gBAAO,EAAE,EAAE,OAAO,YAAG,KAAK,GAAS,EAErD,eAAM,SAAS,EAAC,mBAAmB,EAAC,CAAC,EAAC,oBAAoB,GAAG,EAE7D,eAAM,SAAS,EAAC,iBAAiB,EAAC,CAAC,EAAC,oBAAoB,GAAG,EAE3D,eACE,SAAS,EAAC,mBAAmB,EAC7B,CAAC,EAAC,8hHAA8hH,GAChiH,IACE,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './Logo';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Logo/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './Logo';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Logo/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * Menu Component
3
+ * Containercomponent voor MenuLink- en MenuButton-items.
4
+ * Rendert een <ul> met verticale (standaard) of horizontale oriëntatie.
5
+ *
6
+ * Altijd gewrapped in een semantisch element (<nav>) — verantwoordelijkheid van de ouder.
7
+ *
8
+ * Structuur:
9
+ * <ul class="dsn-menu">
10
+ * <li class="dsn-menu-link dsn-menu-link--level-1">...</li>
11
+ * <li class="dsn-menu-button">...</li>
12
+ * </ul>
13
+ *
14
+ * Horizontaal:
15
+ * <ul class="dsn-menu dsn-menu--horizontal">
16
+ * ...
17
+ * </ul>
18
+ */
19
+
20
+ /* =============================================================================
21
+ Base
22
+ ============================================================================= */
23
+
24
+ .dsn-menu {
25
+ /* Reset */
26
+ list-style: none;
27
+ margin: 0;
28
+ padding: 0;
29
+
30
+ /* Layout — verticaal (standaard) */
31
+ display: flex;
32
+ flex-direction: column;
33
+ align-items: stretch;
34
+ gap: var(--dsn-menu-gap-vertical);
35
+ }
36
+
37
+ /* =============================================================================
38
+ Icon-start uitlijning — level 2+ indent gelijk aan icon-breedte + gap
39
+ Gebruik wanneer level-1 items een iconStart hebben.
40
+ ============================================================================= */
41
+
42
+ .dsn-menu--icon-start {
43
+ --dsn-menu-link-level-indent: calc(
44
+ var(--dsn-menu-item-icon-size) + var(--dsn-menu-item-gap)
45
+ );
46
+ }
47
+
48
+ /* =============================================================================
49
+ Horizontale oriëntatie
50
+ ============================================================================= */
51
+
52
+ .dsn-menu--horizontal {
53
+ flex-direction: row;
54
+ align-items: center;
55
+ gap: var(--dsn-menu-gap-horizontal);
56
+ }
57
+
@@ -0,0 +1,56 @@
1
+ import React from 'react';
2
+ import './Menu.css';
3
+ export type MenuOrientation = 'vertical' | 'horizontal';
4
+ export interface MenuProps extends React.HTMLAttributes<HTMLUListElement> {
5
+ /**
6
+ * Bepaalt de lay-out van de items.
7
+ * - `vertical` (standaard): items onder elkaar, volledige breedte
8
+ * - `horizontal`: items naast elkaar, breedte op inhoud
9
+ * @default 'vertical'
10
+ */
11
+ orientation?: MenuOrientation;
12
+ /**
13
+ * Geeft aan dat level-1 items een `iconStart` hebben.
14
+ * Level 2+ items worden dan ingesprongen zodat hun tekst uitlijnt met het label van level 1.
15
+ * @default false
16
+ */
17
+ iconStart?: boolean;
18
+ /**
19
+ * `MenuLink`- en/of `MenuButton`-items (verplicht)
20
+ */
21
+ children: React.ReactNode;
22
+ /**
23
+ * Aanvullende CSS-klassen voor het `<ul>`-element
24
+ */
25
+ className?: string;
26
+ }
27
+ /**
28
+ * Menu component
29
+ * Containercomponent voor MenuLink- en MenuButton-items.
30
+ * Rendert een `<ul>` met verticale (standaard) of horizontale oriëntatie.
31
+ *
32
+ * Gebruik `Menu` altijd binnen een semantisch element zoals `<nav>` —
33
+ * dit is de verantwoordelijkheid van de ouder.
34
+ *
35
+ * @example
36
+ * ```tsx
37
+ * // Verticaal (standaard)
38
+ * <nav aria-label="Hoofdnavigatie">
39
+ * <Menu>
40
+ * <MenuLink href="/home">Home</MenuLink>
41
+ * <MenuLink href="/over">Over ons</MenuLink>
42
+ * <MenuButton onClick={handleLogout}>Uitloggen</MenuButton>
43
+ * </Menu>
44
+ * </nav>
45
+ *
46
+ * // Horizontaal
47
+ * <nav aria-label="Paginanavigatie">
48
+ * <Menu orientation="horizontal">
49
+ * <MenuLink href="/home" current>Home</MenuLink>
50
+ * <MenuLink href="/over">Over ons</MenuLink>
51
+ * </Menu>
52
+ * </nav>
53
+ * ```
54
+ */
55
+ export declare const Menu: React.ForwardRefExoticComponent<MenuProps & React.RefAttributes<HTMLUListElement>>;
56
+ //# sourceMappingURL=Menu.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menu.d.ts","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,YAAY,CAAC;AAEpB,MAAM,MAAM,eAAe,GAAG,UAAU,GAAG,YAAY,CAAC;AAExD,MAAM,WAAW,SAAU,SAAQ,KAAK,CAAC,cAAc,CAAC,gBAAgB,CAAC;IACvE;;;;;OAKG;IACH,WAAW,CAAC,EAAE,eAAe,CAAC;IAE9B;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAE1B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,IAAI,oFAwBhB,CAAC"}
@@ -0,0 +1,38 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import React from 'react';
3
+ import { classNames } from '@dsn-starter-kit/core';
4
+ import './Menu.css';
5
+ /**
6
+ * Menu component
7
+ * Containercomponent voor MenuLink- en MenuButton-items.
8
+ * Rendert een `<ul>` met verticale (standaard) of horizontale oriëntatie.
9
+ *
10
+ * Gebruik `Menu` altijd binnen een semantisch element zoals `<nav>` —
11
+ * dit is de verantwoordelijkheid van de ouder.
12
+ *
13
+ * @example
14
+ * ```tsx
15
+ * // Verticaal (standaard)
16
+ * <nav aria-label="Hoofdnavigatie">
17
+ * <Menu>
18
+ * <MenuLink href="/home">Home</MenuLink>
19
+ * <MenuLink href="/over">Over ons</MenuLink>
20
+ * <MenuButton onClick={handleLogout}>Uitloggen</MenuButton>
21
+ * </Menu>
22
+ * </nav>
23
+ *
24
+ * // Horizontaal
25
+ * <nav aria-label="Paginanavigatie">
26
+ * <Menu orientation="horizontal">
27
+ * <MenuLink href="/home" current>Home</MenuLink>
28
+ * <MenuLink href="/over">Over ons</MenuLink>
29
+ * </Menu>
30
+ * </nav>
31
+ * ```
32
+ */
33
+ export const Menu = React.forwardRef(({ orientation = 'vertical', iconStart = false, className, children, ...props }, ref) => {
34
+ const classes = classNames('dsn-menu', orientation === 'horizontal' && 'dsn-menu--horizontal', iconStart && 'dsn-menu--icon-start', className);
35
+ return (_jsx("ul", { ref: ref, className: classes, ...props, children: children }));
36
+ });
37
+ Menu.displayName = 'Menu';
38
+ //# sourceMappingURL=Menu.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Menu.js","sourceRoot":"","sources":["../../src/Menu/Menu.tsx"],"names":[],"mappings":";AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,YAAY,CAAC;AA+BpB;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAClC,CACE,EACE,WAAW,GAAG,UAAU,EACxB,SAAS,GAAG,KAAK,EACjB,SAAS,EACT,QAAQ,EACR,GAAG,KAAK,EACT,EACD,GAAG,EACH,EAAE;IACF,MAAM,OAAO,GAAG,UAAU,CACxB,UAAU,EACV,WAAW,KAAK,YAAY,IAAI,sBAAsB,EACtD,SAAS,IAAI,sBAAsB,EACnC,SAAS,CACV,CAAC;IAEF,OAAO,CACL,aAAI,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,KAAM,KAAK,YACxC,QAAQ,GACN,CACN,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './Menu';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/Menu/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './Menu';
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/Menu/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC"}
@@ -0,0 +1,106 @@
1
+ /**
2
+ * MenuButton Component
3
+ * Navigatieknop voor JS-acties met icoon- en badge-ondersteuning.
4
+ * Semantisch een `<button>`, visueel consistent met MenuLink.
5
+ *
6
+ * Gedeelde visuele stijl via --dsn-menu-item-* tokens (menu-item.json).
7
+ *
8
+ * Structuur:
9
+ * <li class="dsn-menu-button">
10
+ * <button type="button" class="dsn-menu-button__button">
11
+ * <svg class="dsn-icon" aria-hidden="true"><!-- icoon-start --></svg>
12
+ * <span class="dsn-menu-button__label">Label</span>
13
+ * <span class="dsn-dot-badge dsn-dot-badge--negative" aria-hidden="true"></span>
14
+ * <svg class="dsn-icon" aria-hidden="true"><!-- icoon-end --></svg>
15
+ * </button>
16
+ * </li>
17
+ */
18
+
19
+ /* =============================================================================
20
+ List item
21
+ ============================================================================= */
22
+
23
+ .dsn-menu-button {
24
+ list-style: none;
25
+ margin: 0;
26
+ padding: 0;
27
+ }
28
+
29
+ /* =============================================================================
30
+ Button
31
+ ============================================================================= */
32
+
33
+ .dsn-menu-button__button {
34
+ /* Button reset */
35
+ appearance: none;
36
+ background: none;
37
+ border: 0;
38
+ cursor: pointer;
39
+ position: relative; /* Ankerpunt voor DotBadge */
40
+
41
+ /* Layout */
42
+ display: inline-flex;
43
+ align-items: center;
44
+ width: 100%;
45
+ min-block-size: var(--dsn-menu-item-min-block-size);
46
+ gap: var(--dsn-menu-item-gap);
47
+ padding-block: var(--dsn-menu-item-padding-block);
48
+ padding-inline: var(--dsn-menu-item-padding-inline);
49
+
50
+ /* Typography */
51
+ font-family: inherit;
52
+ font-size: var(--dsn-menu-item-font-size);
53
+ font-weight: var(--dsn-menu-item-font-weight);
54
+ line-height: var(--dsn-menu-item-line-height);
55
+ text-align: start;
56
+
57
+ /* Colors */
58
+ color: var(--dsn-menu-item-color);
59
+ background-color: var(--dsn-menu-item-background-color);
60
+
61
+ /* Transitions */
62
+ transition:
63
+ background-color var(--dsn-transition-duration-normal)
64
+ var(--dsn-transition-easing-default),
65
+ color var(--dsn-transition-duration-normal)
66
+ var(--dsn-transition-easing-default);
67
+ }
68
+
69
+ .dsn-menu-button__button > .dsn-icon {
70
+ width: var(--dsn-menu-item-icon-size);
71
+ height: var(--dsn-menu-item-icon-size);
72
+ flex-shrink: 0;
73
+ }
74
+
75
+ .dsn-menu-button__label {
76
+ /* De <button> zelf is full-width via width: 100%.
77
+ Het label vult de resterende ruimte zodat iconEnd rechts uitlijnt. */
78
+ flex: 1;
79
+ text-align: start;
80
+ }
81
+
82
+ /* =============================================================================
83
+ States
84
+ ============================================================================= */
85
+
86
+ .dsn-menu-button__button:hover {
87
+ color: var(--dsn-menu-item-hover-color);
88
+ background-color: var(--dsn-menu-item-hover-background-color);
89
+ }
90
+
91
+ .dsn-menu-button__button:active {
92
+ color: var(--dsn-menu-item-active-color);
93
+ background-color: var(--dsn-menu-item-active-background-color);
94
+ }
95
+
96
+ .dsn-menu-button__button:focus-visible {
97
+ background-color: var(--dsn-focus-background-color);
98
+ color: var(--dsn-focus-color);
99
+ outline: var(--dsn-focus-outline-width) var(--dsn-focus-outline-style)
100
+ var(--dsn-focus-outline-color);
101
+ outline-offset: var(--dsn-focus-outline-offset);
102
+ box-shadow: 0 0 0
103
+ calc(var(--dsn-focus-outline-offset) + var(--dsn-focus-outline-width))
104
+ var(--dsn-focus-inverse-outline-color);
105
+ }
106
+