@navikt/ds-react 0.7.4 → 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 (479) 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 +2 -2
  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/{layouts/product-page/ProductPageSection.js → guide-panel/Guide.js} +7 -5
  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 -6
  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/{accordion-anchor-menu/AccordionAnchorMenu.js → modal/ModalContent.js} +5 -11
  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/grid/Cell.js +1 -1
  187. package/esm/grid/Cell.js.map +1 -1
  188. package/esm/{content-container → grid}/ContentContainer.d.ts +1 -1
  189. package/esm/{content-container → grid}/ContentContainer.js +2 -2
  190. package/esm/grid/ContentContainer.js.map +1 -0
  191. package/esm/grid/index.d.ts +2 -0
  192. package/esm/grid/index.js +2 -0
  193. package/esm/grid/index.js.map +1 -1
  194. package/esm/guide-panel/Guide.d.ts +14 -0
  195. package/esm/guide-panel/Guide.js +21 -0
  196. package/esm/guide-panel/Guide.js.map +1 -0
  197. package/esm/guide-panel/GuidePanel.d.ts +18 -0
  198. package/esm/guide-panel/GuidePanel.js +24 -0
  199. package/esm/guide-panel/GuidePanel.js.map +1 -0
  200. package/esm/guide-panel/Illustration.d.ts +2 -0
  201. package/esm/guide-panel/Illustration.js +18 -0
  202. package/esm/guide-panel/Illustration.js.map +1 -0
  203. package/esm/guide-panel/index.d.ts +3 -0
  204. package/esm/guide-panel/index.js +3 -0
  205. package/esm/guide-panel/index.js.map +1 -0
  206. package/esm/help-text/HelpText.d.ts +15 -0
  207. package/esm/help-text/HelpText.js +41 -0
  208. package/esm/help-text/HelpText.js.map +1 -0
  209. package/esm/help-text/index.d.ts +2 -0
  210. package/esm/help-text/index.js +3 -0
  211. package/esm/help-text/index.js.map +1 -0
  212. package/esm/index.d.ts +4 -5
  213. package/esm/index.js +5 -5
  214. package/esm/index.js.map +1 -1
  215. package/esm/link/Link.d.ts +2 -5
  216. package/esm/link/Link.js +2 -2
  217. package/esm/link/Link.js.map +1 -1
  218. package/esm/link-panel/LinkPanel.d.ts +16 -21
  219. package/esm/link-panel/LinkPanel.js +9 -8
  220. package/esm/link-panel/LinkPanel.js.map +1 -1
  221. package/esm/link-panel/LinkPanelDescription.d.ts +7 -0
  222. package/esm/link-panel/LinkPanelDescription.js +19 -0
  223. package/esm/link-panel/LinkPanelDescription.js.map +1 -0
  224. package/esm/link-panel/LinkPanelTitle.d.ts +8 -0
  225. package/esm/link-panel/LinkPanelTitle.js +18 -0
  226. package/esm/link-panel/LinkPanelTitle.js.map +1 -0
  227. package/esm/loader/Loader.d.ts +3 -3
  228. package/esm/loader/Loader.js +3 -6
  229. package/esm/loader/Loader.js.map +1 -1
  230. package/esm/modal/Modal.d.ts +6 -6
  231. package/esm/modal/Modal.js +5 -3
  232. package/esm/modal/Modal.js.map +1 -1
  233. package/esm/modal/ModalContent.d.ts +10 -0
  234. package/esm/modal/ModalContent.js +19 -0
  235. package/esm/modal/ModalContent.js.map +1 -0
  236. package/esm/modal/index.d.ts +1 -0
  237. package/esm/modal/index.js.map +1 -1
  238. package/esm/page-header/PageHeader.d.ts +27 -0
  239. package/esm/page-header/PageHeader.js +24 -0
  240. package/esm/page-header/PageHeader.js.map +1 -0
  241. package/esm/page-header/index.d.ts +2 -0
  242. package/esm/page-header/index.js +3 -0
  243. package/esm/page-header/index.js.map +1 -0
  244. package/esm/panel/Panel.d.ts +12 -15
  245. package/esm/panel/Panel.js +1 -1
  246. package/esm/panel/Panel.js.map +1 -1
  247. package/esm/popover/Popover.d.ts +13 -8
  248. package/esm/popover/Popover.js +12 -3
  249. package/esm/popover/Popover.js.map +1 -1
  250. package/esm/popover/PopoverContent.d.ts +10 -0
  251. package/esm/popover/PopoverContent.js +19 -0
  252. package/esm/popover/PopoverContent.js.map +1 -0
  253. package/esm/popover/index.d.ts +1 -0
  254. package/esm/speech-bubble/Bubble.d.ts +1 -1
  255. package/esm/tag/Tag.d.ts +7 -1
  256. package/esm/tag/Tag.js +4 -2
  257. package/esm/tag/Tag.js.map +1 -1
  258. package/esm/typography/BodyLong.d.ts +16 -19
  259. package/esm/typography/BodyLong.js +2 -2
  260. package/esm/typography/BodyLong.js.map +1 -1
  261. package/esm/typography/BodyShort.d.ts +16 -19
  262. package/esm/typography/BodyShort.js +2 -2
  263. package/esm/typography/BodyShort.js.map +1 -1
  264. package/esm/typography/Detail.d.ts +16 -19
  265. package/esm/typography/Detail.js +2 -2
  266. package/esm/typography/Detail.js.map +1 -1
  267. package/esm/typography/Heading.d.ts +24 -0
  268. package/esm/typography/{Title.js → Heading.js} +8 -8
  269. package/esm/typography/Heading.js.map +1 -0
  270. package/esm/typography/Ingress.d.ts +11 -14
  271. package/esm/typography/Ingress.js +1 -1
  272. package/esm/typography/Ingress.js.map +1 -1
  273. package/esm/typography/Label.d.ts +16 -19
  274. package/esm/typography/Label.js +2 -2
  275. package/esm/typography/Label.js.map +1 -1
  276. package/esm/typography/index.d.ts +1 -1
  277. package/esm/typography/index.js +1 -1
  278. package/esm/typography/index.js.map +1 -1
  279. package/esm/util/OverridableComponent.d.ts +6 -25
  280. package/esm/util/OverridableComponent.js +1 -0
  281. package/esm/util/useId.d.ts +2 -0
  282. package/esm/util/useId.js +1 -1
  283. package/esm/util/useId.js.map +1 -1
  284. package/package.json +6 -3
  285. package/src/accordion/Accordion.tsx +23 -98
  286. package/src/accordion/AccordionContent.tsx +59 -0
  287. package/src/accordion/AccordionHeader.tsx +84 -0
  288. package/src/accordion/AccordionItem.tsx +93 -0
  289. package/src/accordion/stories/accordion.stories.mdx +55 -16
  290. package/src/accordion/stories/accordion.stories.tsx +76 -43
  291. package/src/accordion-menu/AccordionMenu.tsx +18 -3
  292. package/src/accordion-menu/AccordionMenuCollapsable.tsx +32 -29
  293. package/src/accordion-menu/AccordionMenuItem.tsx +17 -18
  294. package/src/accordion-menu/index.ts +3 -6
  295. package/src/accordion-menu/stories/accordion-menu.stories.mdx +34 -38
  296. package/src/accordion-menu/stories/accordion-menu.stories.tsx +60 -79
  297. package/src/alert/Alert.tsx +66 -43
  298. package/src/alert/AlertContent.tsx +41 -0
  299. package/src/alert/AlertTitle.tsx +41 -0
  300. package/src/alert/stories/alert.stories.mdx +48 -7
  301. package/src/alert/stories/alert.stories.tsx +95 -11
  302. package/src/button/Button.tsx +24 -11
  303. package/src/button/stories/button.stories.mdx +13 -14
  304. package/src/button/stories/button.stories.tsx +28 -17
  305. package/src/card/MicroCard.tsx +25 -23
  306. package/src/copy-to-clipboard/CopyToClipboard.tsx +34 -30
  307. package/src/copy-to-clipboard/stories/copy-to-clipboard.stories.tsx +9 -10
  308. package/src/copy-to-clipboard/stories/copy.stories.mdx +24 -14
  309. package/src/form/ConfirmationPanel.tsx +1 -1
  310. package/src/form/ErrorMessage.tsx +2 -2
  311. package/src/form/Fieldset/Fieldset.tsx +2 -2
  312. package/src/form/Select.tsx +2 -2
  313. package/src/form/TextField.tsx +1 -1
  314. package/src/form/Textarea.tsx +2 -2
  315. package/src/form/checkbox/Checkbox.tsx +1 -1
  316. package/src/form/checkbox/CheckboxGroup.tsx +1 -1
  317. package/src/form/checkbox/stories/checkbox.stories.mdx +7 -3
  318. package/src/form/checkbox/stories/checkbox.stories.tsx +1 -1
  319. package/src/form/error-summary/ErrorSummary.tsx +18 -17
  320. package/src/form/error-summary/ErrorSummaryItem.tsx +11 -11
  321. package/src/form/error-summary/stories/error-summary.stories.tsx +2 -2
  322. package/src/form/radio/Radio.tsx +1 -1
  323. package/src/form/radio/RadioGroup.tsx +1 -1
  324. package/src/form/radio/stories/radio.stories.mdx +11 -3
  325. package/src/form/radio/stories/radio.stories.tsx +1 -1
  326. package/src/form/search-field/SearchField.tsx +3 -3
  327. package/src/form/search-field/SearchFieldButton.tsx +3 -3
  328. package/src/form/search-field/SearchFieldClearButton.tsx +5 -5
  329. package/src/form/search-field/SearchFieldInput.tsx +3 -2
  330. package/src/form/search-field/stories/search-field-example.tsx +9 -10
  331. package/src/form/search-field/stories/search-field.stories.mdx +23 -68
  332. package/src/form/search-field/stories/search-field.stories.tsx +48 -15
  333. package/src/form/stories/confirmation-panel.stories.mdx +2 -2
  334. package/src/form/stories/confirmation-panel.stories.tsx +3 -3
  335. package/src/form/stories/fieldset.stories.mdx +2 -2
  336. package/src/form/stories/fieldset.stories.tsx +1 -1
  337. package/src/form/stories/live-examples.tsx +2 -2
  338. package/src/form/stories/select.stories.mdx +2 -2
  339. package/src/form/stories/select.stories.tsx +1 -1
  340. package/src/form/stories/text-field.stories.mdx +2 -2
  341. package/src/form/stories/text-field.stories.tsx +1 -1
  342. package/src/form/stories/textarea.stories.mdx +2 -2
  343. package/src/form/stories/textarea.stories.tsx +1 -1
  344. package/src/form/useFormField.ts +2 -2
  345. package/src/grid/Cell.tsx +1 -1
  346. package/src/{content-container → grid}/ContentContainer.tsx +3 -5
  347. package/src/grid/index.ts +2 -0
  348. package/src/grid/stories/grid.stories.mdx +24 -5
  349. package/src/grid/stories/grid.stories.tsx +10 -2
  350. package/src/grid/stories/styles.css +16 -0
  351. package/src/guide-panel/Guide.tsx +34 -0
  352. package/src/guide-panel/GuidePanel.tsx +39 -0
  353. package/src/guide-panel/Illustration.tsx +99 -0
  354. package/src/guide-panel/index.ts +3 -0
  355. package/src/guide-panel/stories/example.css +13 -0
  356. package/src/guide-panel/stories/guidepanel.stories.mdx +81 -0
  357. package/src/guide-panel/stories/guidepanel.stories.tsx +68 -0
  358. package/src/help-text/HelpText.tsx +78 -0
  359. package/src/help-text/index.ts +2 -0
  360. package/src/help-text/stories/help-text.stories.mdx +35 -0
  361. package/src/help-text/stories/help-text.stories.tsx +32 -0
  362. package/src/index.ts +6 -5
  363. package/src/link/Link.tsx +7 -18
  364. package/src/link/stories/link.stories.tsx +30 -3
  365. package/src/link-panel/LinkPanel.tsx +32 -44
  366. package/src/link-panel/LinkPanelDescription.tsx +23 -0
  367. package/src/link-panel/LinkPanelTitle.tsx +27 -0
  368. package/src/link-panel/stories/link-panel.stories.mdx +52 -23
  369. package/src/link-panel/stories/link-panel.stories.tsx +43 -34
  370. package/src/loader/Loader.tsx +13 -10
  371. package/src/loader/stories/loader.stories.mdx +27 -28
  372. package/src/loader/stories/loader.stories.tsx +31 -91
  373. package/src/modal/Modal.tsx +16 -14
  374. package/src/modal/ModalContent.tsx +26 -0
  375. package/src/modal/index.ts +1 -0
  376. package/src/modal/stories/modal.stories.mdx +10 -1
  377. package/src/modal/stories/modal.stories.tsx +20 -23
  378. package/src/page-header/PageHeader.tsx +76 -0
  379. package/src/page-header/index.ts +2 -0
  380. package/src/{header → page-header}/stories/header.stories.mdx +31 -24
  381. package/src/{header → page-header}/stories/header.stories.tsx +27 -27
  382. package/src/{header → page-header}/stories/pictogram.tsx +0 -0
  383. package/src/panel/Panel.tsx +14 -23
  384. package/src/popover/Popover.tsx +29 -11
  385. package/src/popover/PopoverContent.tsx +26 -0
  386. package/src/popover/index.ts +1 -0
  387. package/src/popover/stories/popover.stories.tsx +6 -8
  388. package/src/speech-bubble/Bubble.tsx +1 -1
  389. package/src/tag/Tag.tsx +18 -10
  390. package/src/tag/stories/tag.stories.mdx +24 -0
  391. package/src/tag/stories/tag.stories.tsx +13 -0
  392. package/src/typography/BodyLong.tsx +22 -21
  393. package/src/typography/BodyShort.tsx +22 -21
  394. package/src/typography/Detail.tsx +22 -21
  395. package/src/typography/Heading.tsx +45 -0
  396. package/src/typography/Ingress.tsx +23 -24
  397. package/src/typography/Label.tsx +21 -21
  398. package/src/typography/index.ts +1 -1
  399. package/src/typography/stories/typography.stories.tsx +18 -23
  400. package/src/util/OverridableComponent.ts +7 -44
  401. package/src/util/useId.ts +1 -1
  402. package/cjs/accordion-anchor-menu/AccordionAnchorMenuCollapsable.js +0 -4
  403. package/cjs/accordion-anchor-menu/AccordionAnchorMenuItem.js +0 -44
  404. package/cjs/accordion-anchor-menu/ActiveAnchorStore.js +0 -68
  405. package/cjs/accordion-anchor-menu/index.js +0 -8
  406. package/cjs/accordion-anchor-menu/package.json +0 -6
  407. package/cjs/content-container/index.js +0 -15
  408. package/cjs/content-container/package.json +0 -6
  409. package/cjs/header/index.js +0 -15
  410. package/cjs/header/package.json +0 -6
  411. package/cjs/layouts/index.js +0 -8
  412. package/cjs/layouts/package.json +0 -6
  413. package/cjs/layouts/product-page/ProductPageLayout.js +0 -62
  414. package/cjs/layouts/product-page/ProductPagePanel.js +0 -63
  415. package/esm/accordion-anchor-menu/AccordionAnchorMenu.d.ts +0 -7
  416. package/esm/accordion-anchor-menu/AccordionAnchorMenu.js +0 -25
  417. package/esm/accordion-anchor-menu/AccordionAnchorMenu.js.map +0 -1
  418. package/esm/accordion-anchor-menu/AccordionAnchorMenuCollapsable.d.ts +0 -1
  419. package/esm/accordion-anchor-menu/AccordionAnchorMenuCollapsable.js +0 -2
  420. package/esm/accordion-anchor-menu/AccordionAnchorMenuCollapsable.js.map +0 -1
  421. package/esm/accordion-anchor-menu/AccordionAnchorMenuItem.d.ts +0 -3
  422. package/esm/accordion-anchor-menu/AccordionAnchorMenuItem.js +0 -24
  423. package/esm/accordion-anchor-menu/AccordionAnchorMenuItem.js.map +0 -1
  424. package/esm/accordion-anchor-menu/ActiveAnchorStore.d.ts +0 -11
  425. package/esm/accordion-anchor-menu/ActiveAnchorStore.js +0 -47
  426. package/esm/accordion-anchor-menu/ActiveAnchorStore.js.map +0 -1
  427. package/esm/accordion-anchor-menu/index.d.ts +0 -3
  428. package/esm/accordion-anchor-menu/index.js +0 -4
  429. package/esm/accordion-anchor-menu/index.js.map +0 -1
  430. package/esm/content-container/ContentContainer.js.map +0 -1
  431. package/esm/content-container/index.d.ts +0 -2
  432. package/esm/content-container/index.js +0 -3
  433. package/esm/content-container/index.js.map +0 -1
  434. package/esm/header/Header.d.ts +0 -27
  435. package/esm/header/Header.js +0 -23
  436. package/esm/header/Header.js.map +0 -1
  437. package/esm/header/index.d.ts +0 -2
  438. package/esm/header/index.js +0 -3
  439. package/esm/header/index.js.map +0 -1
  440. package/esm/layouts/index.d.ts +0 -3
  441. package/esm/layouts/index.js +0 -4
  442. package/esm/layouts/index.js.map +0 -1
  443. package/esm/layouts/product-page/ProductPageLayout.d.ts +0 -7
  444. package/esm/layouts/product-page/ProductPageLayout.js +0 -39
  445. package/esm/layouts/product-page/ProductPageLayout.js.map +0 -1
  446. package/esm/layouts/product-page/ProductPagePanel.d.ts +0 -12
  447. package/esm/layouts/product-page/ProductPagePanel.js +0 -40
  448. package/esm/layouts/product-page/ProductPagePanel.js.map +0 -1
  449. package/esm/layouts/product-page/ProductPageSection.d.ts +0 -10
  450. package/esm/layouts/product-page/ProductPageSection.js +0 -19
  451. package/esm/layouts/product-page/ProductPageSection.js.map +0 -1
  452. package/esm/typography/Title.d.ts +0 -25
  453. package/esm/typography/Title.js.map +0 -1
  454. package/src/accordion-anchor-menu/AccordionAnchorMenu.tsx +0 -35
  455. package/src/accordion-anchor-menu/AccordionAnchorMenuCollapsable.tsx +0 -1
  456. package/src/accordion-anchor-menu/AccordionAnchorMenuItem.tsx +0 -39
  457. package/src/accordion-anchor-menu/ActiveAnchorStore.tsx +0 -73
  458. package/src/accordion-anchor-menu/index.ts +0 -3
  459. package/src/accordion-anchor-menu/stories/menu.stories.mdx +0 -14
  460. package/src/accordion-anchor-menu/stories/menu.stories.tsx +0 -125
  461. package/src/content-container/index.ts +0 -2
  462. package/src/content-container/stories/container.stories.mdx +0 -31
  463. package/src/content-container/stories/container.stories.tsx +0 -33
  464. package/src/content-container/stories/style.css +0 -15
  465. package/src/form/stories/error-uu.stories.tsx +0 -75
  466. package/src/header/Header.tsx +0 -69
  467. package/src/header/index.ts +0 -2
  468. package/src/layouts/index.ts +0 -3
  469. package/src/layouts/product-page/ProductPageLayout.tsx +0 -60
  470. package/src/layouts/product-page/ProductPagePanel.tsx +0 -72
  471. package/src/layouts/product-page/ProductPageSection.tsx +0 -46
  472. package/src/layouts/stories/components/sections/Left.tsx +0 -22
  473. package/src/layouts/stories/components/sections/Main.tsx +0 -133
  474. package/src/layouts/stories/components/sections/Right.tsx +0 -8
  475. package/src/layouts/stories/components/styles.css +0 -12
  476. package/src/layouts/stories/layout.stories.mdx +0 -8
  477. package/src/layouts/stories/product-page-layout.stories.tsx +0 -90
  478. package/src/loader/stories/demo.css +0 -18
  479. package/src/typography/Title.tsx +0 -56
@@ -0,0 +1,59 @@
1
+ import cl from "classnames";
2
+ import React, { forwardRef, useContext } from "react";
3
+ import { Collapse, UnmountClosed } from "react-collapse";
4
+ import { useClientLayoutEffect, useId } from "../util";
5
+ import { AccordionItemContext } from "./AccordionItem";
6
+
7
+ export interface AccordionContentProps
8
+ extends React.HTMLAttributes<HTMLDivElement> {
9
+ /**
10
+ * Accordion panel content
11
+ */
12
+ children: React.ReactNode;
13
+ }
14
+
15
+ export type AccordionContentType = React.ForwardRefExoticComponent<
16
+ AccordionContentProps & React.RefAttributes<HTMLDivElement>
17
+ >;
18
+
19
+ const AccordionContent: AccordionContentType = forwardRef(
20
+ ({ children, className, id, ...rest }, ref) => {
21
+ const context = useContext(AccordionItemContext);
22
+
23
+ const newId = useId(id);
24
+ const setContentId = context && context.setContentId;
25
+
26
+ useClientLayoutEffect(() => {
27
+ setContentId && setContentId(id ? newId : `accordionContent-${newId}`);
28
+ }, [setContentId, newId]);
29
+
30
+ if (context === null) {
31
+ console.error(
32
+ "<Accordion.Content> has to be used within an <Accordion.Item>"
33
+ );
34
+ return null;
35
+ }
36
+
37
+ const CollapseComponent = context.renderContentWhenClosed
38
+ ? Collapse
39
+ : UnmountClosed;
40
+
41
+ return (
42
+ <div
43
+ ref={ref}
44
+ id={context.contentId}
45
+ role="region"
46
+ aria-labelledby={context.buttonId}
47
+ {...rest}
48
+ >
49
+ <CollapseComponent isOpened={context.open}>
50
+ <div className={cl("navds-accordion__content", className)}>
51
+ {children}
52
+ </div>
53
+ </CollapseComponent>
54
+ </div>
55
+ );
56
+ }
57
+ );
58
+
59
+ export default AccordionContent;
@@ -0,0 +1,84 @@
1
+ import { Expand, ExpandFilled } from "@navikt/ds-icons";
2
+ import cl from "classnames";
3
+ import React, { forwardRef, useContext } from "react";
4
+ import { AccordionItemContext } from "./AccordionItem";
5
+ import { useClientLayoutEffect, useId } from "..";
6
+
7
+ export interface AccordionHeaderProps
8
+ extends React.ButtonHTMLAttributes<HTMLButtonElement> {
9
+ /**
10
+ * Button content
11
+ */
12
+ children: React.ReactNode;
13
+ }
14
+
15
+ export type AccordionHeaderType = React.ForwardRefExoticComponent<
16
+ AccordionHeaderProps & React.RefAttributes<HTMLButtonElement>
17
+ >;
18
+
19
+ const AccordionHeader: AccordionHeaderType = forwardRef(
20
+ ({ children, className, id, onClick, ...rest }, ref) => {
21
+ const context = useContext(AccordionItemContext);
22
+ const newId = useId(id);
23
+
24
+ const setButtonId = context && context.setButtonId;
25
+
26
+ useClientLayoutEffect(() => {
27
+ setButtonId && setButtonId(id ? newId : `accordionContent-${newId}`);
28
+ }, [setButtonId, newId]);
29
+
30
+ if (context === null) {
31
+ console.error(
32
+ "<Accordion.Header> has to be used within an <Accordion.Item>"
33
+ );
34
+ return null;
35
+ }
36
+
37
+ const handleClick = (
38
+ e: React.MouseEvent<HTMLButtonElement, MouseEvent>
39
+ ) => {
40
+ context.toggleOpen();
41
+ onClick && onClick(e);
42
+ };
43
+
44
+ return (
45
+ <button
46
+ ref={ref}
47
+ id={context.buttonId}
48
+ className={cl(
49
+ "navds-accordion__header",
50
+ className,
51
+ "navds-heading",
52
+ "navds-heading--small"
53
+ )}
54
+ onClick={handleClick}
55
+ aria-controls={context.contentId}
56
+ {...rest}
57
+ >
58
+ {children}
59
+ <Expand
60
+ focusable="false"
61
+ role="img"
62
+ aria-label={context.open ? "Lukk panel ikon" : "Åpne panel ikon"}
63
+ className={cl("navds-accordion__expand-icon", {
64
+ "navds-accordion__expand-icon--flip": context.open,
65
+ })}
66
+ />
67
+ <ExpandFilled
68
+ focusable="false"
69
+ role="img"
70
+ aria-label={context.open ? "Lukk panel ikon" : "Åpne panel ikon"}
71
+ className={cl(
72
+ "navds-accordion__expand-icon",
73
+ "navds-accordion__expand-icon--filled",
74
+ {
75
+ "navds-accordion__expand-icon--flip": context.open,
76
+ }
77
+ )}
78
+ />
79
+ </button>
80
+ );
81
+ }
82
+ );
83
+
84
+ export default AccordionHeader;
@@ -0,0 +1,93 @@
1
+ import cl from "classnames";
2
+ import React, { createContext, forwardRef, useState } from "react";
3
+
4
+ export interface AccordionItemProps
5
+ extends React.HTMLAttributes<HTMLDivElement> {
6
+ /**
7
+ * Content inside accordion item
8
+ */
9
+ children: React.ReactNode;
10
+ /**
11
+ * Opens component if 'true', closes if 'false'
12
+ * Using this props removes automatic control of open-state
13
+ */
14
+ open?: boolean;
15
+ /**
16
+ * Defaults the accordion to opened state
17
+ * @default false
18
+ */
19
+ defaultOpen?: boolean;
20
+ /**
21
+ * Removes content-element from dom when closed
22
+ * @default false
23
+ */
24
+ renderContentWhenClosed?: boolean;
25
+ }
26
+
27
+ export type AccordionItemType = React.ForwardRefExoticComponent<
28
+ AccordionItemProps & React.RefAttributes<HTMLDivElement>
29
+ >;
30
+
31
+ export interface AccordionItemContextProps {
32
+ open: boolean;
33
+ toggleOpen: () => void;
34
+ setButtonId: (id: string) => void;
35
+ setContentId: (id: string) => void;
36
+ buttonId: string;
37
+ contentId: string;
38
+ renderContentWhenClosed: boolean;
39
+ }
40
+
41
+ export const AccordionItemContext = createContext<AccordionItemContextProps | null>(
42
+ null
43
+ );
44
+
45
+ const AccordionItem: AccordionItemType = forwardRef(
46
+ (
47
+ {
48
+ children,
49
+ className,
50
+ open,
51
+ defaultOpen = false,
52
+ renderContentWhenClosed = false,
53
+ onClick,
54
+ id,
55
+ ...rest
56
+ },
57
+ ref
58
+ ) => {
59
+ const [internalOpen, setInternalOpen] = useState<boolean>(defaultOpen);
60
+ const [buttonId, setButtonId] = useState("");
61
+ const [contentId, setContentId] = useState("");
62
+
63
+ return (
64
+ <div
65
+ className={cl("navds-accordion__item", className, {
66
+ "navds-accordion__item--open": open ?? internalOpen,
67
+ })}
68
+ ref={ref}
69
+ {...rest}
70
+ >
71
+ <AccordionItemContext.Provider
72
+ value={{
73
+ open: open ?? internalOpen,
74
+ toggleOpen: () => {
75
+ if (open === undefined) {
76
+ setInternalOpen((iOpen) => !iOpen);
77
+ }
78
+ },
79
+ renderContentWhenClosed,
80
+ setButtonId,
81
+ buttonId,
82
+ setContentId,
83
+ contentId,
84
+ }}
85
+ >
86
+ {children}
87
+ </AccordionItemContext.Provider>
88
+ </div>
89
+ );
90
+ }
91
+ );
92
+
93
+ export default AccordionItem;
@@ -1,4 +1,4 @@
1
- import { Meta, Canvas } from "@storybook/addon-docs";
1
+ import { Meta, Canvas, Props } from "@storybook/addon-docs";
2
2
  import { Accordion } from "../../index";
3
3
 
4
4
  <Meta title="ds-react/accordion/intro" />
@@ -6,28 +6,67 @@ import { Accordion } from "../../index";
6
6
  # Hvordan ta i bruk Accordion
7
7
 
8
8
  ```jsx
9
- <Accordion heading="Qui id id ad cupidatat ullamco.">
10
- Et anim nostrud reprehenderit duis eu tempor et irure proident. Eu ea occaecat
11
- aliqua commodo sunt. Sit cupidatat ad id occaecat exercitation ipsum laboris
12
- duis velit consequat adipisicing do amet aute. Aliquip culpa minim commodo
13
- laborum eiusmod eu magna elit veniam ullamco ullamco minim.
9
+ <Accordion>
10
+ <Accordion.Item>
11
+ <Accordion.Header>Accordion header text</Accordion.Header>
12
+ <Accordion.Content>
13
+ Magna aliquip aliquip fugiat nostrud nostrud velit pariatur veniam officia
14
+ laboris voluptate officia pariatur.Lorem est ex anim velit occaecat nisi
15
+ qui nostrud sit.
16
+ </Accordion.Content>
17
+ </Accordion.Item>
18
+ <Accordion.Item>
19
+ <Accordion.Header>Aliquip amet irure consectetur occaecat</Accordion.Header>
20
+ <Accordion.Content>
21
+ Cupidatat aliqua eu ea et anim excepteur. Labore aliquip dolore laborum
22
+ consequat. Reprehenderit ad velit quis eiusmod ex sint aliquip do deserunt
23
+ amet exercitation velit Lorem.
24
+ </Accordion.Content>
25
+ </Accordion.Item>
14
26
  </Accordion>
15
27
  ```
16
28
 
17
29
  <Canvas>
18
- <Accordion heading="Qui id id ad cupidatat ullamco.">
19
- Et anim nostrud reprehenderit duis eu tempor et irure proident. Eu ea
20
- occaecat aliqua commodo sunt. Sit cupidatat ad id occaecat exercitation
21
- ipsum laboris duis velit consequat adipisicing do amet aute. Aliquip culpa
22
- minim commodo laborum eiusmod eu magna elit veniam ullamco ullamco minim.
30
+ <Accordion>
31
+ <Accordion.Item>
32
+ <Accordion.Header>Accordion header text</Accordion.Header>
33
+ <Accordion.Content>
34
+ Magna aliquip aliquip fugiat nostrud nostrud velit pariatur veniam
35
+ officia laboris voluptate officia pariatur.Lorem est ex anim velit
36
+ occaecat nisi qui nostrud sit.
37
+ </Accordion.Content>
38
+ </Accordion.Item>
39
+ <Accordion.Item>
40
+ <Accordion.Header>
41
+ Aliquip amet irure consectetur occaecat
42
+ </Accordion.Header>
43
+ <Accordion.Content>
44
+ Cupidatat aliqua eu ea et anim excepteur. Labore aliquip dolore laborum
45
+ consequat. Reprehenderit ad velit quis eiusmod ex sint aliquip do
46
+ deserunt amet exercitation velit Lorem.
47
+ </Accordion.Content>
48
+ </Accordion.Item>
23
49
  </Accordion>
24
50
  </Canvas>
25
51
 
26
- Accordion-komponeten styrer selv open/closed state, men om man ønsker kan man selv overskrive denne med
27
- `open`-prop + `onClick`-prop.
52
+ ## Controlled state
28
53
 
29
- Note: Hvis man tar i bruk `onClick`, tolker komponeten det slik at du ønsker å styre state selv, så
30
- man da også bruke `open`-prop
54
+ Accordion-komponeten styrer selv open-state, men om man ønsker kan man selv overskrive denne med
55
+ `open`-prop + `onClick`-prop slik det er gjort på eksemplet.
31
56
 
32
- `renderContentWhenClosed`-prop bestemmer om innholdet (children) skal beholdes i dom-strukturen mens
57
+ ```jsx
58
+ <Accordion>
59
+ <Accordion.Item open={open}>
60
+ <Accordion.Header onClick={(open) => setOpen(!open)}>
61
+ Accordion header text
62
+ </Accordion.Header>
63
+ <Accordion.Content>
64
+ Magna aliquip aliquip fugiat nostrud nostrud velit pariatur veniam officia
65
+ laboris voluptate officia pariatur.Lorem est ex anim velit
66
+ </Accordion.Content>
67
+ </Accordion.Item>
68
+ </Accordion>
69
+ ```
70
+
71
+ `renderContentWhenClosed`-prop på `Accordion.Item` bestemmer om innholdet (children) skal beholdes i dom-strukturen mens
33
72
  Accordion er lukket. Defaulter til `false`.
@@ -1,9 +1,17 @@
1
1
  import React, { useState } from "react";
2
+ import AccordionContent from "../AccordionContent";
3
+ import AccordionHeader from "../AccordionHeader";
4
+ import AccordionItem from "../AccordionItem";
2
5
  import { Accordion } from "../index";
3
6
 
4
7
  export default {
5
8
  title: "ds-react/accordion",
6
9
  component: Accordion,
10
+ subcomponents: {
11
+ AccordionItem,
12
+ AccordionContent,
13
+ AccordionHeader,
14
+ },
7
15
  };
8
16
 
9
17
  export const All = () => {
@@ -11,49 +19,74 @@ export const All = () => {
11
19
 
12
20
  return (
13
21
  <>
14
- <h1>Accordion</h1>
15
- <Accordion heading="tittel" open={open} onClick={(e) => setOpen(!open)}>
16
- Eu magna fugiat officia sit ullamco reprehenderit reprehenderit officia.
17
- Culpa fugiat irure deserunt irure enim adipisicing qui id. Pariatur
18
- commodo dolore consequat nulla cupidatat commodo nisi sunt. Ad proident
19
- occaecat cillum eu Lorem proident sunt anim officia voluptate. Veniam
20
- ullamco magna elit amet mollit exercitation magna quis ad occaecat in
21
- elit. Labore ad id pariatur consequat consectetur ullamco culpa dolor
22
- dolor. Sunt irure eiusmod velit duis excepteur veniam consectetur eu
23
- occaecat reprehenderit qui anim dolore. Ea voluptate dolore proident
24
- esse aliqua amet magna pariatur incididunt ea excepteur. Aliquip magna
25
- ut ipsum veniam eu laborum id commodo.
26
- </Accordion>
27
- <h1>Open</h1>
28
- <Accordion heading="tittel" open={true} onClick={(e) => null}>
29
- Eu magna fugiat officia sit ullamco reprehenderit reprehenderit officia.
30
- Culpa fugiat irure deserunt irure enim adipisicing qui id. Pariatur
31
- commodo dolore consequat nulla cupidatat commodo nisi sunt. Ad proident
32
- occaecat cillum eu Lorem proident sunt anim officia voluptate. Veniam
33
- ullamco magna elit amet mollit exercitation magna quis ad occaecat in
34
- elit. Labore ad id pariatur consequat consectetur ullamco culpa dolor
35
- dolor. Sunt irure eiusmod velit duis excepteur veniam consectetur eu
36
- occaecat reprehenderit qui anim dolore. Ea voluptate dolore proident
37
- esse aliqua amet magna pariatur incididunt ea excepteur. Aliquip magna
38
- ut ipsum veniam eu laborum id commodo.
39
- </Accordion>
40
- <h1>Long heading</h1>
41
- <Accordion
42
- heading="Consequat incididunt aliquip aliquip fugiat anim cupidatat eu do ipsum pariatur."
43
- open={open}
44
- onClick={(e) => setOpen(!open)}
45
- >
46
- Eu magna fugiat officia sit ullamco reprehenderit reprehenderit officia.
47
- Culpa fugiat irure deserunt irure enim adipisicing qui id. Pariatur
48
- commodo dolore consequat nulla cupidatat commodo nisi sunt. Ad proident
49
- occaecat cillum eu Lorem proident sunt anim officia voluptate. Veniam
50
- ullamco magna elit amet mollit exercitation magna quis ad occaecat in
51
- elit. Labore ad id pariatur consequat consectetur ullamco culpa dolor
52
- dolor. Sunt irure eiusmod velit duis excepteur veniam consectetur eu
53
- occaecat reprehenderit qui anim dolore. Ea voluptate dolore proident
54
- esse aliqua amet magna pariatur incididunt ea excepteur. Aliquip magna
55
- ut ipsum veniam eu laborum id commodo.
56
- </Accordion>
22
+ <div>
23
+ <h1>Accordion</h1>
24
+ <h2>Controlled</h2>
25
+ <Accordion>
26
+ <Accordion.Item open={open}>
27
+ <Accordion.Header onClick={() => setOpen(!open)}>
28
+ Accordion header text
29
+ </Accordion.Header>
30
+ <Accordion.Content>
31
+ Magna aliquip aliquip fugiat nostrud nostrud velit pariatur veniam
32
+ officia laboris voluptate officia pariatur.Lorem est ex anim velit
33
+ occaecat nisi qui nostrud sit consectetur consectetur officia
34
+ nostrud ullamco. Est ex duis proident nostrud elit qui laborum
35
+ anim minim eu eiusmod. Veniam in nostrud sunt tempor velit
36
+ incididunt sint ex dolor qui velit id eu. Deserunt magna sunt
37
+ velit in. Est exercitation id cillum qui do. Minim adipisicing
38
+ nostrud commodo proident occaecat aliquip nulla anim proident
39
+ reprehenderit. Magna ipsum officia veniam cupidatat duis veniam
40
+ dolore reprehenderit mollit velit.Ut consequat commodo minim
41
+ occaecat id pariatur. Nisi enim tempor laborum commodo. Tempor sit
42
+ quis nostrud eu cupidatat sunt commodo reprehenderit irure
43
+ deserunt eiusmod ipsum. Exercitation quis commodo cillum eiusmod
44
+ eiusmod. Do laborum qui proident commodo adipisicing eiusmod id.
45
+ </Accordion.Content>
46
+ </Accordion.Item>
47
+ </Accordion>
48
+ <h2>Un-controlled</h2>
49
+ <Accordion>
50
+ <Accordion.Item>
51
+ <Accordion.Header>Accordion header text</Accordion.Header>
52
+ <Accordion.Content>
53
+ Magna aliquip aliquip fugiat nostrud nostrud velit pariatur veniam
54
+ officia laboris voluptate officia pariatur.Lorem est ex anim velit
55
+ occaecat nisi qui nostrud sit consectetur consectetur officia
56
+ nostrud ullamco. Est ex duis proident nostrud elit qui laborum
57
+ anim minim eu eiusmod. Veniam in nostrud sunt tempor velit
58
+ incididunt sint ex dolor qui velit id eu. Deserunt magna sunt
59
+ velit in. Est exercitation id cillum qui do. Minim adipisicing
60
+ nostrud commodo proident occaecat aliquip nulla anim proident
61
+ reprehenderit. Magna ipsum officia veniam cupidatat duis veniam
62
+ dolore reprehenderit mollit velit.Ut consequat commodo minim
63
+ occaecat id pariatur. Nisi enim tempor laborum commodo. Tempor sit
64
+ quis nostrud eu cupidatat sunt commodo reprehenderit irure
65
+ deserunt eiusmod ipsum. Exercitation quis commodo cillum eiusmod
66
+ eiusmod. Do laborum qui proident commodo adipisicing eiusmod id.
67
+ </Accordion.Content>
68
+ </Accordion.Item>
69
+ <Accordion.Item>
70
+ <Accordion.Header>Accordion header text</Accordion.Header>
71
+ <Accordion.Content>
72
+ Magna aliquip aliquip fugiat nostrud nostrud velit pariatur veniam
73
+ officia laboris voluptate officia pariatur.Lorem est ex anim velit
74
+ occaecat nisi qui nostrud sit consectetur consectetur officia
75
+ nostrud ullamco. Est ex duis proident nostrud elit qui laborum
76
+ anim minim eu eiusmod. Veniam in nostrud sunt tempor velit
77
+ incididunt sint ex dolor qui velit id eu. Deserunt magna sunt
78
+ velit in. Est exercitation id cillum qui do. Minim adipisicing
79
+ nostrud commodo proident occaecat aliquip nulla anim proident
80
+ reprehenderit. Magna ipsum officia veniam cupidatat duis veniam
81
+ dolore reprehenderit mollit velit.Ut consequat commodo minim
82
+ occaecat id pariatur. Nisi enim tempor laborum commodo. Tempor sit
83
+ quis nostrud eu cupidatat sunt commodo reprehenderit irure
84
+ deserunt eiusmod ipsum. Exercitation quis commodo cillum eiusmod
85
+ eiusmod. Do laborum qui proident commodo adipisicing eiusmod id.
86
+ </Accordion.Content>
87
+ </Accordion.Item>
88
+ </Accordion>
89
+ </div>
57
90
  </>
58
91
  );
59
92
  };