@navikt/ds-react 0.7.7 → 0.8.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 (423) hide show
  1. package/cjs/accordion/Accordion.js +10 -26
  2. package/cjs/accordion/AccordionContent.js +60 -0
  3. package/cjs/accordion/AccordionHeader.js +66 -0
  4. package/cjs/accordion/AccordionItem.js +62 -0
  5. package/cjs/accordion/index.js +6 -2
  6. package/cjs/accordion-menu/AccordionMenu.js +5 -1
  7. package/cjs/accordion-menu/AccordionMenuCollapsable.js +3 -3
  8. package/cjs/accordion-menu/AccordionMenuItem.js +4 -4
  9. package/cjs/accordion-menu/index.js +5 -5
  10. package/cjs/alert/Alert.js +18 -12
  11. package/cjs/alert/AlertContent.js +50 -0
  12. package/cjs/alert/AlertTitle.js +49 -0
  13. package/cjs/alert/index.js +6 -2
  14. package/cjs/button/Button.js +5 -3
  15. package/cjs/button/index.js +6 -2
  16. package/cjs/card/MicroCard.js +3 -3
  17. package/cjs/card/index.js +6 -2
  18. package/cjs/copy-to-clipboard/CopyToClipboard.js +9 -8
  19. package/cjs/copy-to-clipboard/index.js +6 -2
  20. package/cjs/form/ConfirmationPanel.js +2 -2
  21. package/cjs/form/ErrorMessage.js +1 -1
  22. package/cjs/form/Fieldset/Fieldset.js +2 -2
  23. package/cjs/form/Fieldset/index.js +5 -1
  24. package/cjs/form/Fieldset/useFieldset.js +2 -1
  25. package/cjs/form/Select.js +3 -3
  26. package/cjs/form/TextField.js +2 -2
  27. package/cjs/form/Textarea.js +5 -4
  28. package/cjs/form/checkbox/Checkbox.js +2 -2
  29. package/cjs/form/checkbox/CheckboxGroup.js +2 -2
  30. package/cjs/form/checkbox/index.js +6 -2
  31. package/cjs/form/checkbox/useCheckbox.js +2 -1
  32. package/cjs/form/error-summary/ErrorSummary.js +4 -4
  33. package/cjs/form/error-summary/ErrorSummaryItem.js +2 -2
  34. package/cjs/form/error-summary/index.js +6 -2
  35. package/cjs/form/index.js +9 -5
  36. package/cjs/form/radio/Radio.js +2 -2
  37. package/cjs/form/radio/RadioGroup.js +2 -2
  38. package/cjs/form/radio/index.js +6 -2
  39. package/cjs/form/radio/useRadio.js +2 -1
  40. package/cjs/form/search-field/SearchField.js +3 -3
  41. package/cjs/form/search-field/SearchFieldButton.js +2 -2
  42. package/cjs/form/search-field/SearchFieldClearButton.js +3 -3
  43. package/cjs/form/search-field/SearchFieldInput.js +2 -2
  44. package/cjs/form/search-field/index.js +8 -4
  45. package/cjs/form/useFormField.js +3 -2
  46. package/cjs/grid/Cell.js +1 -1
  47. package/cjs/{content-container → grid}/ContentContainer.js +3 -3
  48. package/cjs/grid/Grid.js +1 -1
  49. package/cjs/grid/index.js +10 -3
  50. package/cjs/guide-panel/Guide.js +44 -0
  51. package/cjs/guide-panel/GuidePanel.js +47 -0
  52. package/cjs/guide-panel/Illustration.js +24 -0
  53. package/cjs/guide-panel/index.js +19 -0
  54. package/cjs/guide-panel/package.json +6 -0
  55. package/cjs/help-text/HelpText.js +64 -0
  56. package/cjs/help-text/index.js +19 -0
  57. package/cjs/help-text/package.json +6 -0
  58. package/cjs/index.js +6 -4
  59. package/cjs/internal-header/InternalHeader.js +1 -1
  60. package/cjs/internal-header/InternalHeaderTitle.js +1 -1
  61. package/cjs/internal-header/InternalHeaderUser.js +1 -1
  62. package/cjs/internal-header/index.js +8 -4
  63. package/cjs/link/Link.js +3 -3
  64. package/cjs/link/index.js +6 -2
  65. package/cjs/link-panel/LinkPanel.js +10 -10
  66. package/cjs/link-panel/LinkPanelDescription.js +43 -0
  67. package/cjs/link-panel/LinkPanelTitle.js +42 -0
  68. package/cjs/link-panel/index.js +6 -2
  69. package/cjs/loader/Loader.js +4 -7
  70. package/cjs/loader/index.js +6 -2
  71. package/cjs/modal/Modal.js +6 -4
  72. package/cjs/modal/ModalContent.js +42 -0
  73. package/cjs/modal/index.js +6 -2
  74. package/cjs/{header/Header.js → page-header/PageHeader.js} +10 -9
  75. package/cjs/page-header/index.js +19 -0
  76. package/cjs/page-header/package.json +6 -0
  77. package/cjs/panel/Panel.js +2 -2
  78. package/cjs/panel/index.js +6 -2
  79. package/cjs/popover/Popover.js +13 -4
  80. package/cjs/popover/PopoverContent.js +42 -0
  81. package/cjs/popover/index.js +6 -2
  82. package/cjs/speech-bubble/Bubble.js +1 -1
  83. package/cjs/speech-bubble/SpeechBubble.js +1 -1
  84. package/cjs/speech-bubble/index.js +7 -3
  85. package/cjs/tag/Tag.js +5 -3
  86. package/cjs/tag/index.js +6 -2
  87. package/cjs/typography/BodyLong.js +3 -3
  88. package/cjs/typography/BodyShort.js +3 -3
  89. package/cjs/typography/Detail.js +3 -3
  90. package/cjs/typography/{Title.js → Heading.js} +8 -8
  91. package/cjs/typography/Ingress.js +2 -2
  92. package/cjs/typography/Label.js +3 -3
  93. package/cjs/typography/index.js +11 -7
  94. package/cjs/util/index.js +3 -2
  95. package/cjs/util/useId.js +5 -4
  96. package/esm/accordion/Accordion.d.ts +11 -22
  97. package/esm/accordion/Accordion.js +9 -25
  98. package/esm/accordion/Accordion.js.map +1 -1
  99. package/esm/accordion/AccordionContent.d.ts +10 -0
  100. package/esm/accordion/AccordionContent.js +37 -0
  101. package/esm/accordion/AccordionContent.js.map +1 -0
  102. package/esm/accordion/AccordionHeader.d.ts +10 -0
  103. package/esm/accordion/AccordionHeader.js +43 -0
  104. package/esm/accordion/AccordionHeader.js.map +1 -0
  105. package/esm/accordion/AccordionItem.d.ts +35 -0
  106. package/esm/accordion/AccordionItem.js +38 -0
  107. package/esm/accordion/AccordionItem.js.map +1 -0
  108. package/esm/accordion-menu/AccordionMenu.d.ts +9 -3
  109. package/esm/accordion-menu/AccordionMenu.js +4 -0
  110. package/esm/accordion-menu/AccordionMenu.js.map +1 -1
  111. package/esm/accordion-menu/AccordionMenuCollapsable.d.ts +3 -2
  112. package/esm/accordion-menu/AccordionMenuCollapsable.js +2 -2
  113. package/esm/accordion-menu/AccordionMenuCollapsable.js.map +1 -1
  114. package/esm/accordion-menu/AccordionMenuItem.d.ts +11 -10
  115. package/esm/accordion-menu/AccordionMenuItem.js +3 -3
  116. package/esm/accordion-menu/AccordionMenuItem.js.map +1 -1
  117. package/esm/accordion-menu/index.d.ts +3 -3
  118. package/esm/accordion-menu/index.js +0 -2
  119. package/esm/accordion-menu/index.js.map +1 -1
  120. package/esm/alert/Alert.d.ts +26 -4
  121. package/esm/alert/Alert.js +17 -12
  122. package/esm/alert/Alert.js.map +1 -1
  123. package/esm/alert/AlertContent.d.ts +10 -0
  124. package/esm/alert/AlertContent.js +27 -0
  125. package/esm/alert/AlertContent.js.map +1 -0
  126. package/esm/alert/AlertTitle.d.ts +10 -0
  127. package/esm/alert/AlertTitle.js +26 -0
  128. package/esm/alert/AlertTitle.js.map +1 -0
  129. package/esm/button/Button.d.ts +5 -4
  130. package/esm/button/Button.js +4 -2
  131. package/esm/button/Button.js.map +1 -1
  132. package/esm/card/MicroCard.d.ts +7 -7
  133. package/esm/card/MicroCard.js +2 -2
  134. package/esm/card/MicroCard.js.map +1 -1
  135. package/esm/copy-to-clipboard/CopyToClipboard.d.ts +9 -7
  136. package/esm/copy-to-clipboard/CopyToClipboard.js +10 -9
  137. package/esm/copy-to-clipboard/CopyToClipboard.js.map +1 -1
  138. package/esm/form/ConfirmationPanel.js +1 -1
  139. package/esm/form/ConfirmationPanel.js.map +1 -1
  140. package/esm/form/ErrorMessage.d.ts +1 -0
  141. package/esm/form/ErrorMessage.js +1 -1
  142. package/esm/form/ErrorMessage.js.map +1 -1
  143. package/esm/form/Fieldset/Fieldset.d.ts +1 -1
  144. package/esm/form/Fieldset/Fieldset.js +1 -1
  145. package/esm/form/Fieldset/Fieldset.js.map +1 -1
  146. package/esm/form/Fieldset/useFieldset.d.ts +1 -1
  147. package/esm/form/Select.js +2 -2
  148. package/esm/form/Select.js.map +1 -1
  149. package/esm/form/TextField.js +1 -1
  150. package/esm/form/TextField.js.map +1 -1
  151. package/esm/form/Textarea.js +2 -2
  152. package/esm/form/Textarea.js.map +1 -1
  153. package/esm/form/checkbox/Checkbox.js +1 -1
  154. package/esm/form/checkbox/Checkbox.js.map +1 -1
  155. package/esm/form/checkbox/CheckboxGroup.js +1 -1
  156. package/esm/form/checkbox/CheckboxGroup.js.map +1 -1
  157. package/esm/form/checkbox/useCheckbox.d.ts +1 -1
  158. package/esm/form/checkbox/useCheckbox.js +2 -1
  159. package/esm/form/checkbox/useCheckbox.js.map +1 -1
  160. package/esm/form/error-summary/ErrorSummary.d.ts +2 -2
  161. package/esm/form/error-summary/ErrorSummary.js +4 -4
  162. package/esm/form/error-summary/ErrorSummary.js.map +1 -1
  163. package/esm/form/error-summary/ErrorSummaryItem.d.ts +6 -9
  164. package/esm/form/error-summary/ErrorSummaryItem.js +1 -1
  165. package/esm/form/error-summary/ErrorSummaryItem.js.map +1 -1
  166. package/esm/form/radio/Radio.js +1 -1
  167. package/esm/form/radio/Radio.js.map +1 -1
  168. package/esm/form/radio/RadioGroup.js +1 -1
  169. package/esm/form/radio/RadioGroup.js.map +1 -1
  170. package/esm/form/radio/useRadio.d.ts +1 -1
  171. package/esm/form/radio/useRadio.js.map +1 -1
  172. package/esm/form/search-field/SearchField.d.ts +1 -1
  173. package/esm/form/search-field/SearchField.js +2 -2
  174. package/esm/form/search-field/SearchField.js.map +1 -1
  175. package/esm/form/search-field/SearchFieldButton.d.ts +2 -2
  176. package/esm/form/search-field/SearchFieldButton.js +1 -1
  177. package/esm/form/search-field/SearchFieldButton.js.map +1 -1
  178. package/esm/form/search-field/SearchFieldClearButton.d.ts +2 -2
  179. package/esm/form/search-field/SearchFieldClearButton.js +2 -2
  180. package/esm/form/search-field/SearchFieldClearButton.js.map +1 -1
  181. package/esm/form/search-field/SearchFieldInput.js +1 -1
  182. package/esm/form/search-field/SearchFieldInput.js.map +1 -1
  183. package/esm/form/useFormField.d.ts +2 -2
  184. package/esm/form/useFormField.js +1 -1
  185. package/esm/form/useFormField.js.map +1 -1
  186. package/esm/{content-container → grid}/ContentContainer.d.ts +1 -1
  187. package/esm/{content-container → grid}/ContentContainer.js +2 -2
  188. package/esm/grid/ContentContainer.js.map +1 -0
  189. package/esm/grid/index.d.ts +2 -0
  190. package/esm/grid/index.js +2 -0
  191. package/esm/grid/index.js.map +1 -1
  192. package/esm/guide-panel/Guide.d.ts +14 -0
  193. package/esm/guide-panel/Guide.js +21 -0
  194. package/esm/guide-panel/Guide.js.map +1 -0
  195. package/esm/guide-panel/GuidePanel.d.ts +18 -0
  196. package/esm/guide-panel/GuidePanel.js +24 -0
  197. package/esm/guide-panel/GuidePanel.js.map +1 -0
  198. package/esm/guide-panel/Illustration.d.ts +2 -0
  199. package/esm/guide-panel/Illustration.js +18 -0
  200. package/esm/guide-panel/Illustration.js.map +1 -0
  201. package/esm/guide-panel/index.d.ts +3 -0
  202. package/esm/guide-panel/index.js +3 -0
  203. package/esm/guide-panel/index.js.map +1 -0
  204. package/esm/help-text/HelpText.d.ts +15 -0
  205. package/esm/help-text/HelpText.js +41 -0
  206. package/esm/help-text/HelpText.js.map +1 -0
  207. package/esm/help-text/index.d.ts +2 -0
  208. package/esm/help-text/index.js +3 -0
  209. package/esm/help-text/index.js.map +1 -0
  210. package/esm/index.d.ts +4 -3
  211. package/esm/index.js +5 -3
  212. package/esm/index.js.map +1 -1
  213. package/esm/link/Link.d.ts +2 -1
  214. package/esm/link/Link.js +2 -2
  215. package/esm/link/Link.js.map +1 -1
  216. package/esm/link-panel/LinkPanel.d.ts +16 -21
  217. package/esm/link-panel/LinkPanel.js +9 -8
  218. package/esm/link-panel/LinkPanel.js.map +1 -1
  219. package/esm/link-panel/LinkPanelDescription.d.ts +7 -0
  220. package/esm/link-panel/LinkPanelDescription.js +19 -0
  221. package/esm/link-panel/LinkPanelDescription.js.map +1 -0
  222. package/esm/link-panel/LinkPanelTitle.d.ts +8 -0
  223. package/esm/link-panel/LinkPanelTitle.js +18 -0
  224. package/esm/link-panel/LinkPanelTitle.js.map +1 -0
  225. package/esm/loader/Loader.d.ts +3 -3
  226. package/esm/loader/Loader.js +3 -6
  227. package/esm/loader/Loader.js.map +1 -1
  228. package/esm/modal/Modal.d.ts +6 -6
  229. package/esm/modal/Modal.js +5 -3
  230. package/esm/modal/Modal.js.map +1 -1
  231. package/esm/modal/ModalContent.d.ts +10 -0
  232. package/esm/modal/ModalContent.js +19 -0
  233. package/esm/modal/ModalContent.js.map +1 -0
  234. package/esm/modal/index.d.ts +1 -0
  235. package/esm/modal/index.js.map +1 -1
  236. package/esm/page-header/PageHeader.d.ts +27 -0
  237. package/esm/page-header/PageHeader.js +24 -0
  238. package/esm/page-header/PageHeader.js.map +1 -0
  239. package/esm/page-header/index.d.ts +2 -0
  240. package/esm/page-header/index.js +3 -0
  241. package/esm/page-header/index.js.map +1 -0
  242. package/esm/panel/Panel.d.ts +12 -15
  243. package/esm/panel/Panel.js +1 -1
  244. package/esm/panel/Panel.js.map +1 -1
  245. package/esm/popover/Popover.d.ts +13 -8
  246. package/esm/popover/Popover.js +12 -3
  247. package/esm/popover/Popover.js.map +1 -1
  248. package/esm/popover/PopoverContent.d.ts +10 -0
  249. package/esm/popover/PopoverContent.js +19 -0
  250. package/esm/popover/PopoverContent.js.map +1 -0
  251. package/esm/popover/index.d.ts +1 -0
  252. package/esm/speech-bubble/Bubble.d.ts +1 -1
  253. package/esm/tag/Tag.d.ts +7 -1
  254. package/esm/tag/Tag.js +4 -2
  255. package/esm/tag/Tag.js.map +1 -1
  256. package/esm/typography/BodyLong.d.ts +16 -19
  257. package/esm/typography/BodyLong.js +2 -2
  258. package/esm/typography/BodyLong.js.map +1 -1
  259. package/esm/typography/BodyShort.d.ts +16 -19
  260. package/esm/typography/BodyShort.js +2 -2
  261. package/esm/typography/BodyShort.js.map +1 -1
  262. package/esm/typography/Detail.d.ts +16 -19
  263. package/esm/typography/Detail.js +2 -2
  264. package/esm/typography/Detail.js.map +1 -1
  265. package/esm/typography/Heading.d.ts +24 -0
  266. package/esm/typography/{Title.js → Heading.js} +8 -8
  267. package/esm/typography/Heading.js.map +1 -0
  268. package/esm/typography/Ingress.d.ts +11 -14
  269. package/esm/typography/Ingress.js +1 -1
  270. package/esm/typography/Ingress.js.map +1 -1
  271. package/esm/typography/Label.d.ts +16 -19
  272. package/esm/typography/Label.js +2 -2
  273. package/esm/typography/Label.js.map +1 -1
  274. package/esm/typography/index.d.ts +1 -1
  275. package/esm/typography/index.js +1 -1
  276. package/esm/typography/index.js.map +1 -1
  277. package/esm/util/OverridableComponent.d.ts +6 -25
  278. package/esm/util/OverridableComponent.js +1 -0
  279. package/esm/util/useId.d.ts +2 -0
  280. package/esm/util/useId.js +1 -1
  281. package/esm/util/useId.js.map +1 -1
  282. package/package.json +6 -3
  283. package/src/accordion/Accordion.tsx +23 -98
  284. package/src/accordion/AccordionContent.tsx +59 -0
  285. package/src/accordion/AccordionHeader.tsx +84 -0
  286. package/src/accordion/AccordionItem.tsx +93 -0
  287. package/src/accordion/stories/accordion.stories.mdx +55 -16
  288. package/src/accordion/stories/accordion.stories.tsx +76 -43
  289. package/src/accordion-menu/AccordionMenu.tsx +18 -3
  290. package/src/accordion-menu/AccordionMenuCollapsable.tsx +32 -29
  291. package/src/accordion-menu/AccordionMenuItem.tsx +17 -18
  292. package/src/accordion-menu/index.ts +3 -6
  293. package/src/accordion-menu/stories/accordion-menu.stories.mdx +34 -38
  294. package/src/accordion-menu/stories/accordion-menu.stories.tsx +60 -79
  295. package/src/alert/Alert.tsx +66 -43
  296. package/src/alert/AlertContent.tsx +41 -0
  297. package/src/alert/AlertTitle.tsx +41 -0
  298. package/src/alert/stories/alert.stories.mdx +48 -7
  299. package/src/alert/stories/alert.stories.tsx +95 -11
  300. package/src/button/Button.tsx +24 -11
  301. package/src/button/stories/button.stories.mdx +13 -14
  302. package/src/button/stories/button.stories.tsx +18 -14
  303. package/src/card/MicroCard.tsx +25 -23
  304. package/src/copy-to-clipboard/CopyToClipboard.tsx +34 -30
  305. package/src/copy-to-clipboard/stories/copy-to-clipboard.stories.tsx +9 -10
  306. package/src/copy-to-clipboard/stories/copy.stories.mdx +24 -14
  307. package/src/form/ConfirmationPanel.tsx +1 -1
  308. package/src/form/ErrorMessage.tsx +2 -2
  309. package/src/form/Fieldset/Fieldset.tsx +2 -2
  310. package/src/form/Select.tsx +2 -2
  311. package/src/form/TextField.tsx +1 -1
  312. package/src/form/Textarea.tsx +2 -2
  313. package/src/form/checkbox/Checkbox.tsx +1 -1
  314. package/src/form/checkbox/CheckboxGroup.tsx +1 -1
  315. package/src/form/checkbox/stories/checkbox.stories.mdx +7 -3
  316. package/src/form/checkbox/stories/checkbox.stories.tsx +1 -1
  317. package/src/form/error-summary/ErrorSummary.tsx +18 -17
  318. package/src/form/error-summary/ErrorSummaryItem.tsx +11 -11
  319. package/src/form/error-summary/stories/error-summary.stories.tsx +2 -2
  320. package/src/form/radio/Radio.tsx +1 -1
  321. package/src/form/radio/RadioGroup.tsx +1 -1
  322. package/src/form/radio/stories/radio.stories.mdx +11 -3
  323. package/src/form/radio/stories/radio.stories.tsx +1 -1
  324. package/src/form/search-field/SearchField.tsx +3 -3
  325. package/src/form/search-field/SearchFieldButton.tsx +3 -3
  326. package/src/form/search-field/SearchFieldClearButton.tsx +5 -5
  327. package/src/form/search-field/SearchFieldInput.tsx +3 -2
  328. package/src/form/search-field/stories/search-field-example.tsx +9 -10
  329. package/src/form/search-field/stories/search-field.stories.mdx +23 -68
  330. package/src/form/search-field/stories/search-field.stories.tsx +48 -15
  331. package/src/form/stories/confirmation-panel.stories.mdx +2 -2
  332. package/src/form/stories/confirmation-panel.stories.tsx +3 -3
  333. package/src/form/stories/fieldset.stories.mdx +2 -2
  334. package/src/form/stories/fieldset.stories.tsx +1 -1
  335. package/src/form/stories/live-examples.tsx +2 -2
  336. package/src/form/stories/select.stories.mdx +2 -2
  337. package/src/form/stories/select.stories.tsx +1 -1
  338. package/src/form/stories/text-field.stories.mdx +2 -2
  339. package/src/form/stories/text-field.stories.tsx +1 -1
  340. package/src/form/stories/textarea.stories.mdx +2 -2
  341. package/src/form/stories/textarea.stories.tsx +1 -1
  342. package/src/form/useFormField.ts +2 -2
  343. package/src/{content-container → grid}/ContentContainer.tsx +3 -5
  344. package/src/grid/index.ts +2 -0
  345. package/src/grid/stories/grid.stories.mdx +24 -5
  346. package/src/grid/stories/grid.stories.tsx +10 -2
  347. package/src/grid/stories/styles.css +16 -0
  348. package/src/guide-panel/Guide.tsx +34 -0
  349. package/src/guide-panel/GuidePanel.tsx +39 -0
  350. package/src/guide-panel/Illustration.tsx +99 -0
  351. package/src/guide-panel/index.ts +3 -0
  352. package/src/guide-panel/stories/example.css +13 -0
  353. package/src/guide-panel/stories/guidepanel.stories.mdx +81 -0
  354. package/src/guide-panel/stories/guidepanel.stories.tsx +68 -0
  355. package/src/help-text/HelpText.tsx +78 -0
  356. package/src/help-text/index.ts +2 -0
  357. package/src/help-text/stories/help-text.stories.mdx +35 -0
  358. package/src/help-text/stories/help-text.stories.tsx +32 -0
  359. package/src/index.ts +6 -3
  360. package/src/link/Link.tsx +7 -14
  361. package/src/link/stories/link.stories.tsx +1 -1
  362. package/src/link-panel/LinkPanel.tsx +32 -44
  363. package/src/link-panel/LinkPanelDescription.tsx +23 -0
  364. package/src/link-panel/LinkPanelTitle.tsx +27 -0
  365. package/src/link-panel/stories/link-panel.stories.mdx +52 -23
  366. package/src/link-panel/stories/link-panel.stories.tsx +43 -34
  367. package/src/loader/Loader.tsx +13 -10
  368. package/src/loader/stories/loader.stories.mdx +27 -28
  369. package/src/loader/stories/loader.stories.tsx +31 -91
  370. package/src/modal/Modal.tsx +16 -14
  371. package/src/modal/ModalContent.tsx +26 -0
  372. package/src/modal/index.ts +1 -0
  373. package/src/modal/stories/modal.stories.mdx +10 -1
  374. package/src/modal/stories/modal.stories.tsx +20 -16
  375. package/src/page-header/PageHeader.tsx +76 -0
  376. package/src/page-header/index.ts +2 -0
  377. package/src/{header → page-header}/stories/header.stories.mdx +31 -24
  378. package/src/{header → page-header}/stories/header.stories.tsx +27 -27
  379. package/src/{header → page-header}/stories/pictogram.tsx +0 -0
  380. package/src/panel/Panel.tsx +14 -23
  381. package/src/popover/Popover.tsx +29 -11
  382. package/src/popover/PopoverContent.tsx +26 -0
  383. package/src/popover/index.ts +1 -0
  384. package/src/popover/stories/popover.stories.tsx +6 -8
  385. package/src/speech-bubble/Bubble.tsx +1 -1
  386. package/src/tag/Tag.tsx +18 -10
  387. package/src/tag/stories/tag.stories.mdx +24 -0
  388. package/src/tag/stories/tag.stories.tsx +13 -0
  389. package/src/typography/BodyLong.tsx +22 -21
  390. package/src/typography/BodyShort.tsx +22 -21
  391. package/src/typography/Detail.tsx +22 -21
  392. package/src/typography/Heading.tsx +45 -0
  393. package/src/typography/Ingress.tsx +23 -24
  394. package/src/typography/Label.tsx +21 -21
  395. package/src/typography/index.ts +1 -1
  396. package/src/typography/stories/typography.stories.tsx +18 -23
  397. package/src/util/OverridableComponent.ts +7 -44
  398. package/src/util/useId.ts +1 -1
  399. package/cjs/content-container/index.js +0 -15
  400. package/cjs/content-container/package.json +0 -6
  401. package/cjs/header/index.js +0 -15
  402. package/cjs/header/package.json +0 -6
  403. package/esm/content-container/ContentContainer.js.map +0 -1
  404. package/esm/content-container/index.d.ts +0 -2
  405. package/esm/content-container/index.js +0 -3
  406. package/esm/content-container/index.js.map +0 -1
  407. package/esm/header/Header.d.ts +0 -27
  408. package/esm/header/Header.js +0 -23
  409. package/esm/header/Header.js.map +0 -1
  410. package/esm/header/index.d.ts +0 -2
  411. package/esm/header/index.js +0 -3
  412. package/esm/header/index.js.map +0 -1
  413. package/esm/typography/Title.d.ts +0 -25
  414. package/esm/typography/Title.js.map +0 -1
  415. package/src/content-container/index.ts +0 -2
  416. package/src/content-container/stories/container.stories.mdx +0 -31
  417. package/src/content-container/stories/container.stories.tsx +0 -33
  418. package/src/content-container/stories/style.css +0 -15
  419. package/src/form/stories/error-uu.stories.tsx +0 -75
  420. package/src/header/Header.tsx +0 -69
  421. package/src/header/index.ts +0 -2
  422. package/src/loader/stories/demo.css +0 -18
  423. package/src/typography/Title.tsx +0 -56
@@ -1,4 +1,4 @@
1
- export { default as Title } from "./Title";
1
+ export { default as Heading } from "./Heading";
2
2
  export { default as Ingress } from "./Ingress";
3
3
  export { default as BodyLong } from "./BodyLong";
4
4
  export { default as BodyShort } from "./BodyShort";
@@ -1,5 +1,5 @@
1
1
  import React from "react";
2
- import { Title, BodyShort, BodyLong, Detail, Ingress, Label } from "../index";
2
+ import { Heading, BodyShort, BodyLong, Detail, Ingress, Label } from "../index";
3
3
  import "./index.css";
4
4
 
5
5
  export default {
@@ -7,21 +7,16 @@ export default {
7
7
  component: BodyLong,
8
8
  };
9
9
 
10
- const lorem = () => (
11
- <>
12
- Veniam consequat cillum pariatur officia duis aute labore anim labore.
13
- Pariatur ad duis do nulla.
14
- </>
15
- );
10
+ const lorem = () => <>Veniam consequat cillum pariatur officia duis</>;
16
11
 
17
12
  const TitleTemplate = ({ level, size, spacing }) => (
18
- <Title spacing={spacing} size={size} level={level}>
13
+ <Heading spacing={spacing} size={size} level={level}>
19
14
  {lorem()}
20
- </Title>
15
+ </Heading>
21
16
  );
22
17
 
23
- export const TitleStory = TitleTemplate.bind({});
24
- TitleStory.args = { level: 1, size: "2xl", spacing: false };
18
+ export const HeadingStory = TitleTemplate.bind({});
19
+ HeadingStory.args = { level: 1, size: "2xlarge", spacing: false };
25
20
 
26
21
  const IngressTemplate = ({ spacing }) => (
27
22
  <Ingress spacing={spacing}>{lorem()}</Ingress>
@@ -37,7 +32,7 @@ const BodyLongTemplate = ({ spacing, size }) => (
37
32
  );
38
33
 
39
34
  export const BodyLongStory = BodyLongTemplate.bind({});
40
- BodyLongStory.args = { spacing: false, size: "m" };
35
+ BodyLongStory.args = { spacing: false, size: "medium" };
41
36
 
42
37
  const BodyShortTemplate = ({ spacing, size }) => (
43
38
  <BodyShort size={size} spacing={spacing}>
@@ -46,7 +41,7 @@ const BodyShortTemplate = ({ spacing, size }) => (
46
41
  );
47
42
 
48
43
  export const BodyShortStory = BodyShortTemplate.bind({});
49
- BodyShortStory.args = { spacing: false, size: "m" };
44
+ BodyShortStory.args = { spacing: false, size: "medium" };
50
45
 
51
46
  const LabelTemplate = ({ spacing, size }) => (
52
47
  <Label size={size} spacing={spacing}>
@@ -55,7 +50,7 @@ const LabelTemplate = ({ spacing, size }) => (
55
50
  );
56
51
 
57
52
  export const LabelStory = LabelTemplate.bind({});
58
- LabelStory.args = { spacing: false, size: "m" };
53
+ LabelStory.args = { spacing: false, size: "medium" };
59
54
 
60
55
  const DetailTemplate = ({ spacing, size }) => (
61
56
  <Detail size={size} spacing={spacing}>
@@ -64,14 +59,14 @@ const DetailTemplate = ({ spacing, size }) => (
64
59
  );
65
60
 
66
61
  export const DetailStory = DetailTemplate.bind({});
67
- DetailStory.args = { spacing: false, size: "m" };
62
+ DetailStory.args = { spacing: false, size: "medium" };
68
63
 
69
64
  export const SideInnholdEksempel = () => {
70
65
  return (
71
66
  <div style={{ maxWidth: 600 }}>
72
- <Title level={1} size="2xl" spacing>
73
- Title lvl 1 2xl
74
- </Title>
67
+ <Heading level={"1"} size="2xlarge" spacing>
68
+ Title lvl 1 2xlarge
69
+ </Heading>
75
70
  <BodyLong spacing>
76
71
  BodyLong: Aliqua ad et nisi commodo sit excepteur in commodo proident
77
72
  proident. Nostrud consectetur dolore eu nostrud aliqua. Adipisicing
@@ -91,9 +86,9 @@ export const SideInnholdEksempel = () => {
91
86
  BodyLong: Dolore commodo ad veniam commodo aute voluptate est officia
92
87
  sunt proident irure consectetur excepteur.
93
88
  </BodyLong>
94
- <Title level={2} size="xl" spacing>
95
- Title lvl 2 xl
96
- </Title>
89
+ <Heading level={"2"} size="xlarge" spacing>
90
+ Title lvl 2 xlarge
91
+ </Heading>
97
92
  <Ingress spacing>
98
93
  Ingress: Mollit incididunt incididunt officia amet est et non aliqua
99
94
  officia nulla et aute aliqua culpa.
@@ -109,7 +104,7 @@ export const SideInnholdEksempel = () => {
109
104
  adipisicing ut incididunt laborum laborum. Ipsum non amet laboris quis
110
105
  Lorem est laborum qui pariatur ex eu. Eiusmod proident amet esse ex.
111
106
  </BodyLong>
112
- <BodyLong size="s" spacing>
107
+ <BodyLong size="small" spacing>
113
108
  BodyLong small: Irure dolore laborum amet occaecat ex laboris mollit
114
109
  reprehenderit nisi laborum voluptate laborum. Ipsum eu sint laborum
115
110
  adipisicing ut incididunt laborum laborum. Ipsum non amet laboris quis
@@ -119,7 +114,7 @@ export const SideInnholdEksempel = () => {
119
114
  BodyShort: Id consectetur velit sunt laboris consequat ullamco
120
115
  incididunt.
121
116
  </BodyShort>
122
- <BodyShort size="s" spacing>
117
+ <BodyShort size="small" spacing>
123
118
  BodyShort small: Sunt amet officia sit excepteur sit pariatur sit
124
119
  reprehenderit irure ipsum.
125
120
  </BodyShort>
@@ -1,47 +1,10 @@
1
- import React from "react";
1
+ export interface OverridableComponent<Component, Element extends HTMLElement> {
2
+ (props: Component & React.RefAttributes<Element>): ReturnType<React.FC>;
2
3
 
3
- /**
4
- * A component whose root component can be controlled via a `component` prop.
5
- */
6
- export interface OverridableComponent<M extends OverridableTypeMap> {
7
- (props: DefaultComponentProps<M>): React.ReactElement | null;
8
-
9
- <C extends React.ElementType>(
4
+ <As extends React.ElementType>(
10
5
  props: {
11
- component: C;
12
- } & OverrideProps<M, C>
13
- ): React.ReactElement | null;
14
- }
15
-
16
- /**
17
- * Props of the component if `component={Component}` is used.
18
- */
19
- // prettier-ignore
20
- export type OverrideProps<
21
- M extends OverridableTypeMap,
22
- C extends React.ElementType
23
- > = (
24
- & BaseProps<M>
25
- & Omit<React.ComponentPropsWithRef<C>, keyof BaseProps<M>>
26
- );
27
-
28
- /**
29
- * Props if `component={Component}` is NOT used.
30
- */
31
- // prettier-ignore
32
- export type DefaultComponentProps<
33
- M extends OverridableTypeMap
34
- > = (
35
- & BaseProps<M>
36
- & Omit<React.ComponentPropsWithRef<M['defaultComponent']>, keyof BaseProps<M>>
37
- )
38
-
39
- /**
40
- * Props defined on the component.
41
- */
42
- export type BaseProps<M extends OverridableTypeMap> = M["props"];
43
-
44
- export interface OverridableTypeMap {
45
- props: {};
46
- defaultComponent: React.ElementType;
6
+ as: As;
7
+ } & Component &
8
+ Omit<React.ComponentPropsWithRef<As>, keyof Component>
9
+ ): ReturnType<React.FC>;
47
10
  }
package/src/util/useId.ts CHANGED
@@ -9,7 +9,7 @@ const canUseDOM = (): boolean => {
9
9
  );
10
10
  };
11
11
 
12
- const useClientLayoutEffect = canUseDOM() ? useLayoutEffect : () => {};
12
+ export const useClientLayoutEffect = canUseDOM() ? useLayoutEffect : () => {};
13
13
 
14
14
  export const useId: (id?: string) => string = (id) => {
15
15
  const [newId, setNewId] = useState<string | undefined>(undefined);
@@ -1,15 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- var ContentContainer_1 = require("./ContentContainer");
14
- Object.defineProperty(exports, "ContentContainer", { enumerable: true, get: function () { return ContentContainer_1.default; } });
15
- __exportStar(require("./ContentContainer"), exports);
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": false,
3
- "main": "./index.js",
4
- "module": "../../esm/content-container/index.js",
5
- "types": "../../esm/content-container/index.d.ts"
6
- }
@@ -1,15 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
- }) : (function(o, m, k, k2) {
6
- if (k2 === undefined) k2 = k;
7
- o[k2] = m[k];
8
- }));
9
- var __exportStar = (this && this.__exportStar) || function(m, exports) {
10
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
11
- };
12
- Object.defineProperty(exports, "__esModule", { value: true });
13
- var Header_1 = require("./Header");
14
- Object.defineProperty(exports, "Header", { enumerable: true, get: function () { return Header_1.default; } });
15
- __exportStar(require("./Header"), exports);
@@ -1,6 +0,0 @@
1
- {
2
- "sideEffects": false,
3
- "main": "./index.js",
4
- "module": "../../esm/header/index.js",
5
- "types": "../../esm/header/index.d.ts"
6
- }
@@ -1 +0,0 @@
1
- {"version":3,"file":"ContentContainer.js","sourceRoot":"","sources":["../../src/content-container/ContentContainer.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAkB,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAE,MAAM,YAAY,CAAC;AAS5B,MAAM,gBAAgB,GAAG,UAAU,CACjC,CAAC,EAAgC,EAAE,GAAG,EAAE,EAAE;QAAzC,EAAE,QAAQ,EAAE,SAAS,OAAW,EAAN,IAAI,cAA9B,yBAAgC,CAAF;IAAY,OAAA,CACzC,2CACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,yBAAyB,EAAE,SAAS,CAAC,IAC/C,IAAI,GAEP,QAAQ,CACL,CACP,CAAA;CAAA,CACF,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -1,2 +0,0 @@
1
- export { default as ContentContainer } from "./ContentContainer";
2
- export * from "./ContentContainer";
@@ -1,3 +0,0 @@
1
- export { default as ContentContainer } from "./ContentContainer";
2
- export * from "./ContentContainer";
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/content-container/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACjE,cAAc,oBAAoB,CAAC"}
@@ -1,27 +0,0 @@
1
- import React, { HTMLAttributes } from "react";
2
- export interface HeaderProps extends HTMLAttributes<HTMLDivElement> {
3
- /**
4
- * Header title
5
- */
6
- children: string;
7
- /**
8
- * Pictogram placed in header
9
- */
10
- illustration?: React.ReactNode;
11
- /**
12
- * Short text placed under title
13
- */
14
- description?: string;
15
- /**
16
- * Decides how to align content
17
- * @default "left"
18
- */
19
- variant?: "left" | "center";
20
- /**
21
- * Predefined theming for header
22
- * @default "guide"
23
- */
24
- theme?: "situation" | "product" | "guide";
25
- }
26
- declare const Header: React.ForwardRefExoticComponent<HeaderProps & React.RefAttributes<HTMLDivElement>>;
27
- export default Header;
@@ -1,23 +0,0 @@
1
- var __rest = (this && this.__rest) || function (s, e) {
2
- var t = {};
3
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
4
- t[p] = s[p];
5
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
6
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
7
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
8
- t[p[i]] = s[p[i]];
9
- }
10
- return t;
11
- };
12
- import React, { forwardRef } from "react";
13
- import cl from "classnames";
14
- const Header = forwardRef((_a, ref) => {
15
- var { children, className, illustration, description, theme = "guide", variant = "left" } = _a, rest = __rest(_a, ["children", "className", "illustration", "description", "theme", "variant"]);
16
- return (React.createElement("div", Object.assign({ ref: ref, className: cl("navds-header", className, `navds-header--${theme}`, `navds-header--${variant}`) }, rest),
17
- illustration && (React.createElement("div", { className: "navds-header__illustration" }, illustration)),
18
- React.createElement("div", { className: "navds-header__wrapper" },
19
- React.createElement("h1", { className: "navds-header__title navds-title navds-title--2xl" }, children),
20
- description && (React.createElement("p", { className: "navds-body-short navds-body--s" }, description)))));
21
- });
22
- export default Header;
23
- //# sourceMappingURL=Header.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"Header.js","sourceRoot":"","sources":["../../src/header/Header.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAkB,MAAM,OAAO,CAAC;AAC1D,OAAO,EAAE,MAAM,YAAY,CAAC;AA2B5B,MAAM,MAAM,GAAG,UAAU,CACvB,CACE,EAQC,EACD,GAAG,EACH,EAAE;QAVF,EACE,QAAQ,EACR,SAAS,EACT,YAAY,EACZ,WAAW,EACX,KAAK,GAAG,OAAO,EACf,OAAO,GAAG,MAAM,OAEjB,EADI,IAAI,cAPT,4EAQC,CADQ;IAIT,OAAO,CACL,2CACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CACX,cAAc,EACd,SAAS,EACT,iBAAiB,KAAK,EAAE,EACxB,iBAAiB,OAAO,EAAE,CAC3B,IACG,IAAI;QAEP,YAAY,IAAI,CACf,6BAAK,SAAS,EAAC,4BAA4B,IAAE,YAAY,CAAO,CACjE;QACD,6BAAK,SAAS,EAAC,uBAAuB;YACpC,4BAAI,SAAS,EAAC,kDAAkD,IAC7D,QAAQ,CACN;YACJ,WAAW,IAAI,CACd,2BAAG,SAAS,EAAC,gCAAgC,IAAE,WAAW,CAAK,CAChE,CACG,CACF,CACP,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,MAAM,CAAC"}
@@ -1,2 +0,0 @@
1
- export { default as Header } from "./Header";
2
- export * from "./Header";
@@ -1,3 +0,0 @@
1
- export { default as Header } from "./Header";
2
- export * from "./Header";
3
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/header/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,UAAU,CAAC;AAC7C,cAAc,UAAU,CAAC"}
@@ -1,25 +0,0 @@
1
- import React from "react";
2
- import { OverridableComponent } from "../util";
3
- export interface TitleProps {
4
- props: {
5
- /**
6
- * Heading level
7
- */
8
- level?: 1 | 2 | 3 | 4 | 5 | "1" | "2" | "3" | "4" | "5";
9
- /**
10
- * Sizes from largest "2xl" to smallest "s"
11
- */
12
- size: "2xl" | "xl" | "l" | "m" | "s";
13
- /**
14
- * Paragraph text
15
- */
16
- children: React.ReactNode;
17
- /**
18
- * Adds margins to typo
19
- */
20
- spacing?: boolean;
21
- } & React.HTMLAttributes<HTMLHeadingElement>;
22
- defaultComponent: "h1";
23
- }
24
- declare const Title: OverridableComponent<TitleProps>;
25
- export default Title;
@@ -1 +0,0 @@
1
- {"version":3,"file":"Title.js","sourceRoot":"","sources":["../../src/typography/Title.tsx"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,MAAM,YAAY,CAAC;AAyB5B,MAAM,KAAK,GAAqC,UAAU,CACxD,CACE,EAQC,EACD,GAAG,EACH,EAAE;QAVF,EACE,KAAK,GAAG,CAAC,EACT,IAAI,GAAG,KAAK,EACZ,OAAO,EACP,SAAS,EACT,QAAQ,EACR,SAAS,OAEV,EADI,IAAI,cAPT,kEAQC,CADQ;IAIT,IAAI,UAAU,GAAG,SAAS,aAAT,SAAS,cAAT,SAAS,GAAK,IAAI,KAAK,EAAwB,CAAC;IAEjE,OAAO,CACL,oBAAC,UAAU,oBACL,IAAI,IACR,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,aAAa,EAAE,gBAAgB,IAAI,EAAE,EAAE;YAC9D,qBAAqB,EAAE,CAAC,CAAC,OAAO;SACjC,CAAC,KAED,QAAQ,CACE,CACd,CAAC;AACJ,CAAC,CACF,CAAC;AAEF,eAAe,KAAK,CAAC"}
@@ -1,2 +0,0 @@
1
- export { default as ContentContainer } from "./ContentContainer";
2
- export * from "./ContentContainer";
@@ -1,31 +0,0 @@
1
- import { Meta, Canvas } from "@storybook/addon-docs";
2
-
3
- <Meta title="ds-react/content-container/intro" />
4
-
5
- # Hvordan ta i bruk ContentContainer
6
-
7
- ```jsx
8
- <ContentContainer>
9
- <div>innhold...</div>
10
- </ContentContainer>
11
- ```
12
-
13
- ## Bruk
14
-
15
- Komponenten fungerer som en wrapper rundt innholdet ditt på siden for å
16
- justere padding og max-width. Dette er all stylingen som blir applied
17
-
18
- ```css
19
- .navds-content-container {
20
- margin-left: auto;
21
- margin-right: auto;
22
- max-width: var(--navds-content-container-max-width);
23
- padding: var(--navds-content-container-padding-small);
24
- }
25
-
26
- @media (min-width: 448px) {
27
- .navds-content-container {
28
- padding: var(--navds-content-container-padding-medium-and-larger);
29
- }
30
- }
31
- ```
@@ -1,33 +0,0 @@
1
- import * as React from "react";
2
- import { ContentContainer } from "../index";
3
- import { BodyLong } from "../../index";
4
- import "./style.css";
5
-
6
- export default {
7
- title: "ds-react/content-container",
8
- component: ContentContainer,
9
- parameters: {
10
- layout: "fullscreen",
11
- backgrounds: {
12
- default: "NAV gray",
13
- values: [
14
- {
15
- name: "NAV gray",
16
- value: "#f1f1f1",
17
- },
18
- {
19
- name: "white",
20
- value: "#ffffff",
21
- },
22
- ],
23
- },
24
- },
25
- };
26
-
27
- export const All = () => {
28
- return (
29
- <ContentContainer className={"navds-story-content-container"}>
30
- <BodyLong size="m">-- Innhold --</BodyLong>
31
- </ContentContainer>
32
- );
33
- };
@@ -1,15 +0,0 @@
1
- .navds-story-content-container {
2
- display: flex;
3
- border-radius: 0.25rem;
4
- justify-content: center;
5
- align-items: center;
6
- margin-bottom: 1.5rem;
7
- min-height: 10rem;
8
- background: repeating-linear-gradient(
9
- 45deg,
10
- #d6d6d6,
11
- #d6d6d6 10px,
12
- transparent 10px,
13
- transparent 20px
14
- );
15
- }
@@ -1,75 +0,0 @@
1
- import React, { useState } from "react";
2
- import { Fieldset } from "../index";
3
- import { Meta } from "@storybook/react/types-6-0";
4
- import { Button, Checkbox, CheckboxGroup } from "../../index";
5
- export default {
6
- title: "ds-react/form/uu-demo",
7
- component: Fieldset,
8
- } as Meta;
9
-
10
- export const Demo1 = () => {
11
- const [error, setError] = useState(undefined);
12
- const [fieldsetError, setFieldsetError] = useState(undefined);
13
- const [groupError, setGroupError] = useState(undefined);
14
- const [propagation, setPropagation] = useState(true);
15
- return (
16
- <div>
17
- <h1>Nested-erros + aria-describedby</h1>
18
- <div>
19
- <Button
20
- style={{ marginBottom: "2rem" }}
21
- onClick={() => {
22
- !!fieldsetError
23
- ? setFieldsetError(undefined)
24
- : setFieldsetError("Fieldset error message");
25
- }}
26
- >
27
- Toggle fieldset-error
28
- </Button>
29
- <Button
30
- style={{ marginBottom: "2rem" }}
31
- onClick={() => {
32
- !!groupError
33
- ? setGroupError(undefined)
34
- : setGroupError("CheckboxGroup error message");
35
- }}
36
- >
37
- Toggle checkboxgroup-error
38
- </Button>
39
- <Button
40
- style={{ marginBottom: "2rem" }}
41
- onClick={() => {
42
- !!error ? setError(undefined) : setError("Textfield error message");
43
- }}
44
- >
45
- Toggle checkbox-error
46
- </Button>
47
- <Button
48
- style={{ marginBottom: "2rem" }}
49
- onClick={() => setPropagation(!propagation)}
50
- >
51
- Toggle errorPropagation
52
- </Button>
53
- </div>
54
- <Fieldset
55
- errorId="FIELDSET-ERROR"
56
- legend="Mollit eiusmod"
57
- error={fieldsetError}
58
- >
59
- <CheckboxGroup
60
- errorId="GROUP-ERROR"
61
- errorPropagation={propagation}
62
- error={groupError}
63
- legend="checkboxgroup"
64
- hideLegend
65
- >
66
- <Checkbox>Checkbox nr 1</Checkbox>
67
- <Checkbox errorId="CHECKBOX-ERROR" error={error}>
68
- Checkbox nr 2
69
- </Checkbox>
70
- <Checkbox>Checkbox nr 3</Checkbox>
71
- </CheckboxGroup>
72
- </Fieldset>
73
- </div>
74
- );
75
- };