@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
@@ -17,12 +17,12 @@ import { Success } from "@navikt/ds-react";
17
17
  ## Varianter
18
18
 
19
19
  `variants`-prop kan brukes for å endre utseende mellom
20
- `primary`, `secondary`, `action` og `danger`
20
+ `primary`, `secondary`, `tertiary` og `danger`
21
21
 
22
22
  <Canvas>
23
23
  <Button variant="primary">Buttontekst</Button>
24
24
  <Button variant="secondary">Buttontekst</Button>
25
- <Button variant="action">Buttontekst</Button>
25
+ <Button variant="tertiary">Buttontekst</Button>
26
26
  <Button variant="danger">Buttontekst</Button>
27
27
  </Canvas>
28
28
 
@@ -31,16 +31,16 @@ import { Success } from "@navikt/ds-react";
31
31
  Button har to størrelser: Default 48px min-height og small 32px min-height
32
32
 
33
33
  <Canvas>
34
- <Button size="s" variant="primary">
34
+ <Button size="small" variant="primary">
35
35
  Buttontekst
36
36
  </Button>
37
- <Button size="s" variant="secondary">
37
+ <Button size="small" variant="secondary">
38
38
  Buttontekst
39
39
  </Button>
40
- <Button size="s" variant="action">
40
+ <Button size="small" variant="tertiary">
41
41
  Buttontekst
42
42
  </Button>
43
- <Button size="s" variant="danger">
43
+ <Button size="small" variant="danger">
44
44
  Buttontekst
45
45
  </Button>
46
46
  </Canvas>
@@ -48,18 +48,17 @@ Button har to størrelser: Default 48px min-height og small 32px min-height
48
48
  ## Med ikon eller `<Loader />`
49
49
 
50
50
  Hvis man setter ikoner (svg) eller `<Loader />` rett på button vil størrelsen
51
- bli justert automatisk. For å få riktige marginer rundt ikonet må man da wrappe innholdet
52
- i et element
51
+ bli justert automatisk.
53
52
 
54
53
  <Canvas>
55
54
  <Button>
56
- <span>Buttontekst</span> <Loader />
57
- </Button>
58
- <Button size="s">
59
- <span>Buttontekst</span>
60
- <Loader />
55
+ <Loader /> Buttontekst
61
56
  </Button>
62
57
  <Button>
63
- <Loader /> <span>Buttontekst</span>
58
+ Buttontekst <Loader />
59
+ </Button>
60
+ <Button size="small">
61
+ Buttontekst
62
+ <Loader />
64
63
  </Button>
65
64
  </Canvas>
@@ -22,13 +22,20 @@ const Section = ({ children }) => (
22
22
  </div>
23
23
  );
24
24
 
25
- const variants: Array<"primary" | "secondary" | "action" | "danger"> = [
25
+ const variants: Array<"primary" | "secondary" | "tertiary" | "danger"> = [
26
26
  "primary",
27
27
  "secondary",
28
- "action",
28
+ "tertiary",
29
29
  "danger",
30
30
  ];
31
31
 
32
+ const varSwitch = {
33
+ primary: "Primary",
34
+ secondary: "Secondary",
35
+ tertiary: "Tertiary",
36
+ danger: "Danger",
37
+ };
38
+
32
39
  export const All = () => {
33
40
  return (
34
41
  <>
@@ -36,7 +43,7 @@ export const All = () => {
36
43
  <Section>
37
44
  {variants.map((variant) => (
38
45
  <Button key={variant} variant={variant}>
39
- {variant}
46
+ {varSwitch[variant]}
40
47
  </Button>
41
48
  ))}
42
49
  </Section>
@@ -44,27 +51,23 @@ export const All = () => {
44
51
  <Section>
45
52
  {variants.map((variant) => (
46
53
  <Button key={variant} variant={variant} disabled>
47
- {variant}
54
+ {varSwitch[variant]}
48
55
  </Button>
49
56
  ))}
50
57
  </Section>
51
58
  <h2>As link</h2>
52
59
  <Section>
53
60
  {variants.map((variant) => (
54
- <a
55
- key={variant}
56
- className={`navds-button navds-button--${variant} navds-body-short`}
57
- href="the-link"
58
- >
59
- {variant}
60
- </a>
61
+ <Button as="a" key={variant} variant={variant} href="the-link">
62
+ {varSwitch[variant]}
63
+ </Button>
61
64
  ))}
62
65
  </Section>
63
66
  <h2>Small</h2>
64
67
  <Section>
65
68
  {variants.map((variant) => (
66
- <Button key={variant} variant={variant} size="s">
67
- {variant}
69
+ <Button key={variant} variant={variant} size="small">
70
+ {varSwitch[variant]}
68
71
  </Button>
69
72
  ))}
70
73
  </Section>
@@ -72,21 +75,29 @@ export const All = () => {
72
75
  <Section>
73
76
  {variants.map((variant) => (
74
77
  <Button key={variant} variant={variant}>
75
- <span>{variant}</span> <Success />
78
+ {variant} <Success />
79
+ </Button>
80
+ ))}
81
+ </Section>
82
+ <Section>
83
+ {variants.map((variant) => (
84
+ <Button key={variant} variant={variant}>
85
+ <span className="sr-only">Success ikon</span>
86
+ <Success />
76
87
  </Button>
77
88
  ))}
78
89
  </Section>
79
90
  <h2>Small w/icon</h2>
80
91
  <Section>
81
92
  {variants.map((variant) => (
82
- <Button key={variant} variant={variant} size="s">
83
- <Success /> <span>{variant}</span>
93
+ <Button key={variant} variant={variant} size="small">
94
+ <Success /> {variant}
84
95
  </Button>
85
96
  ))}
86
97
  </Section>
87
98
  <Section>
88
99
  {variants.map((variant) => (
89
- <Button key={variant} variant={variant} size="s">
100
+ <Button key={variant} variant={variant} size="small">
90
101
  <span className="sr-only">Success ikon</span>
91
102
  <Success />
92
103
  </Button>
@@ -1,30 +1,32 @@
1
1
  import React, { forwardRef } from "react";
2
2
  import cl from "classnames";
3
- import { OverridableComponent } from "../util";
3
+ import { OverridableComponent } from "..";
4
4
 
5
- export interface MicroCardProps {
6
- props: {
7
- children: string;
8
- } & React.HTMLAttributes<HTMLAnchorElement>;
9
- defaultComponent: "a";
5
+ export interface MicroCardProps
6
+ extends React.AnchorHTMLAttributes<HTMLAnchorElement> {
7
+ /**
8
+ * Link text
9
+ */
10
+ children: React.ReactNode;
10
11
  }
11
12
 
12
- export const MicroCard: OverridableComponent<MicroCardProps> = forwardRef(
13
- ({ className, component: Component = "a", children, ...rest }, ref) => (
14
- <Component
15
- ref={ref}
16
- className={cl(
17
- "navds-card__micro",
18
- "navds-detail",
19
- "navds-detail--s",
20
- className
21
- )}
22
- title={children}
23
- {...rest}
24
- >
25
- {children}
26
- </Component>
27
- )
28
- );
13
+ export const MicroCard: OverridableComponent<
14
+ MicroCardProps,
15
+ HTMLAnchorElement
16
+ > = forwardRef(({ className, as: Component = "a", children, ...rest }, ref) => (
17
+ <Component
18
+ ref={ref}
19
+ className={cl(
20
+ "navds-card__micro",
21
+ "navds-detail",
22
+ "navds-detail--small",
23
+ className
24
+ )}
25
+ title={children}
26
+ {...rest}
27
+ >
28
+ {children}
29
+ </Component>
30
+ ));
29
31
 
30
32
  export default MicroCard;
@@ -1,18 +1,12 @@
1
1
  import { Copy } from "@navikt/ds-icons";
2
- import copy from "copy-to-clipboard";
2
+ import { Placement } from "@popperjs/core";
3
3
  import cl from "classnames";
4
- import React, {
5
- forwardRef,
6
- HTMLAttributes,
7
- useEffect,
8
- useRef,
9
- useState,
10
- } from "react";
4
+ import copy from "copy-to-clipboard";
5
+ import React, { forwardRef, useEffect, useRef, useState } from "react";
11
6
  import mergeRefs from "react-merge-refs";
12
- import { Popover, Button } from "..";
7
+ import { BodyShort, Button, ButtonProps, Popover } from "..";
13
8
 
14
- export interface CopyToClipboardProps
15
- extends HTMLAttributes<HTMLButtonElement> {
9
+ export interface CopyToClipboardProps extends Omit<ButtonProps, "children"> {
16
10
  /**
17
11
  * Button text
18
12
  */
@@ -20,20 +14,31 @@ export interface CopyToClipboardProps
20
14
  /**
21
15
  * Text to be copied to clipboard
22
16
  */
23
- text: string;
17
+ copyText: string;
24
18
  /**
25
19
  * Description of text, examples: "personnummer", "navn", "epost" etc.
26
20
  */
27
- label: string;
21
+ popoverText: string;
28
22
  /**
29
- * Use a differnet icon to display
30
- * @default "Files" from @navikt/ds-icons
23
+ * Allows extending popover properties like "placement"
24
+ * @default "right"
31
25
  */
32
- icon?: React.ReactElement;
26
+ popoverPlacement?: Placement;
33
27
  }
34
28
 
35
29
  const CopyToClipboard = forwardRef<HTMLButtonElement, CopyToClipboardProps>(
36
- ({ children, text, label, icon, className, ...rest }, ref) => {
30
+ (
31
+ {
32
+ children,
33
+ copyText,
34
+ popoverText,
35
+ className,
36
+ size = "medium",
37
+ popoverPlacement = "right",
38
+ ...rest
39
+ },
40
+ ref
41
+ ) => {
37
42
  const buttonRef = useRef<HTMLButtonElement>(null);
38
43
  const mergedRef = mergeRefs([buttonRef, ref]);
39
44
  const timeoutRef = useRef<number | null>();
@@ -48,10 +53,10 @@ const CopyToClipboard = forwardRef<HTMLButtonElement, CopyToClipboardProps>(
48
53
  };
49
54
  }, [openPopover]);
50
55
 
51
- const title = `Kopier ${label} (${text})`;
56
+ const title = `Kopier ${copyText}`;
52
57
 
53
58
  const handleClick = () => {
54
- copy(text);
59
+ copy(copyText);
55
60
  setOpenPopover(true);
56
61
  };
57
62
 
@@ -63,17 +68,14 @@ const CopyToClipboard = forwardRef<HTMLButtonElement, CopyToClipboardProps>(
63
68
  title={title}
64
69
  className={cl("navds-copy-to-clipboard", className)}
65
70
  onClick={handleClick}
71
+ size={size}
66
72
  {...rest}
67
73
  >
68
- {icon ? (
69
- <>{icon}</>
70
- ) : (
71
- <Copy
72
- focusable="false"
73
- role="img"
74
- aria-label="Fil ikon for kopiering"
75
- />
76
- )}
74
+ <Copy
75
+ focusable="false"
76
+ role="img"
77
+ aria-label="Fil ikon for kopiering"
78
+ />
77
79
  {children ? children : <span className="sr-only">{title}</span>}
78
80
  </Button>
79
81
  <Popover
@@ -81,11 +83,13 @@ const CopyToClipboard = forwardRef<HTMLButtonElement, CopyToClipboardProps>(
81
83
  anchorEl={buttonRef.current}
82
84
  open={openPopover}
83
85
  onClose={() => setOpenPopover(false)}
84
- placement="right"
86
+ placement={popoverPlacement}
85
87
  arrow={false}
86
88
  className="navds-copy-to-clipboard__popover"
87
89
  >
88
- {label}
90
+ <BodyShort size={size} as="span">
91
+ {popoverText}
92
+ </BodyShort>
89
93
  </Popover>
90
94
  </div>
91
95
  );
@@ -1,7 +1,6 @@
1
1
  import * as React from "react";
2
2
 
3
3
  import { CopyToClipboard } from "../index";
4
- import { Link } from "@navikt/ds-icons";
5
4
 
6
5
  export default {
7
6
  title: "@ds-react/copy-to-clipboard",
@@ -15,24 +14,24 @@ export const All = () => {
15
14
  return (
16
15
  <div>
17
16
  <h2>Fritstående knapp</h2>
18
- <CopyToClipboard label={label} text={text} />
17
+ <CopyToClipboard popoverText={label} copyText={text} />
19
18
 
20
19
  <h2>Sammen med tekst</h2>
21
- <CopyToClipboard label={label} text={text}>
20
+ <CopyToClipboard popoverText={label} copyText={text}>
22
21
  Kopier tekst
23
22
  </CopyToClipboard>
24
23
 
25
- <h2>Tilpasser seg fontstørrelse</h2>
26
- <CopyToClipboard label={label} text={text} style={{ fontSize: "0.8rem" }}>
24
+ <h2>Small size</h2>
25
+ <CopyToClipboard popoverText={label} copyText={text} size="small">
27
26
  Kopier tekst
28
27
  </CopyToClipboard>
28
+ <CopyToClipboard popoverText={label} copyText={text} size="small" />
29
29
 
30
- <h2>Custom icon</h2>
30
+ <h2>Endrer placement av popover</h2>
31
31
  <CopyToClipboard
32
- icon={<Link />}
33
- label={label}
34
- text={text}
35
- style={{ fontSize: "0.8rem" }}
32
+ popoverText={label}
33
+ copyText={text}
34
+ popoverPlacement="bottom-end"
36
35
  >
37
36
  Kopier tekst
38
37
  </CopyToClipboard>
@@ -6,30 +6,40 @@ import { Success } from "@navikt/ds-react";
6
6
 
7
7
  # Hvordan ta i bruk CopyToClipboard
8
8
 
9
- Innholdet i `text` vil da bli kopiert til clipboard, mens innholdet i `label`
10
- brukes i popovertekst og `sr-only` span som rendres hvis knappen ikke har noe tekstinnhold
11
- `sr-only` tekst blir da `Kopier ${label} (${text})`
9
+ Innholdet i `copyText` vil bli kopiert til clipboard, mens innholdet i `popoverText`
10
+ brukes i popover. Hvis komponenten ikke har noen children (tekst i button) vil da en "sr-only" tekst blie
11
+ lagt knappen med tekst "Kopier copyText"
12
12
 
13
13
  ```jsx
14
- <CopyToClipboard label={"Kopierte PI til clipboard"} text={"3.14"}>
15
- Kopier Pi{" "}
14
+ <CopyToClipboard popoverText={"Kopierte adresse"} copyText={"0660 OSLO"}>
15
+ Kopier adresse
16
16
  </CopyToClipboard>
17
17
  ```
18
18
 
19
19
  <Canvas>
20
- <CopyToClipboard label={"Kopierte PI til clipboard"} text={"3.14"}>
21
- Kopier Pi{" "}
20
+ <CopyToClipboard popoverText={"Kopiert adresse"} copyText={"0660 OSLO"}>
21
+ Kopier adresse
22
22
  </CopyToClipboard>
23
23
  </Canvas>
24
24
 
25
- ## Custom ikon
26
-
27
- Man kan sette andre ikoner en `Copy` ved `icon`-proppen
25
+ ## Sizing
28
26
 
29
27
  ```jsx
30
28
  <CopyToClipboard
31
- icon={<Link />}
32
- label={"Kopierte PI til clipboard"}
33
- text={"3.14"}
34
- />
29
+ popoverText={"Kopierte adressen"}
30
+ copyText={"0660 OSLO"}
31
+ size="small"
32
+ >
33
+ Kopier adresse
34
+ </CopyToClipboard>
35
35
  ```
36
+
37
+ <Canvas>
38
+ <CopyToClipboard
39
+ popoverText={"Kopierte adressen"}
40
+ copyText={"0660 OSLO"}
41
+ size="small"
42
+ >
43
+ Kopier adresse
44
+ </CopyToClipboard>
45
+ </Canvas>
@@ -23,7 +23,7 @@ const ConfirmationPanel = forwardRef<HTMLDivElement, ConfirmationPanelProps>(
23
23
  <div
24
24
  ref={ref}
25
25
  className={cl("navds-confirmation-panel", className, {
26
- "navds-confirmation-panel--s": props.size === "s",
26
+ "navds-confirmation-panel--s": props.size === "small",
27
27
  "navds-confirmation-panel--error": !!props.error,
28
28
  "navds-confirmation-panel--checked": !!props.checked,
29
29
  })}
@@ -5,11 +5,11 @@ import { Label } from "..";
5
5
  const ErrorMessage = (props) => (
6
6
  <Label
7
7
  {...props}
8
- component="div"
8
+ as="div"
9
9
  className={cl(
10
10
  "navds-error-message",
11
11
  props.className,
12
- `navds-error-message--${props.size ?? "m"}`
12
+ `navds-error-message--${props.size ?? "medium"}`
13
13
  )}
14
14
  />
15
15
  );