@digdir/designsystemet-react 1.0.0-next.34 → 1.0.0-next.36

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 (542) hide show
  1. package/README.md +1 -2
  2. package/dist/cjs/components/Accordion/Accordion.js +1 -1
  3. package/dist/cjs/components/Accordion/AccordionContent.js +1 -2
  4. package/dist/cjs/components/Accordion/AccordionHeading.js +4 -6
  5. package/dist/cjs/components/Accordion/AccordionItem.js +16 -52
  6. package/dist/cjs/components/Alert/Alert.js +2 -3
  7. package/dist/cjs/components/Avatar/Avatar.js +5 -10
  8. package/dist/cjs/components/Badge/Badge.js +4 -10
  9. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js +1 -2
  10. package/dist/cjs/components/Button/Button.js +5 -5
  11. package/dist/cjs/components/Card/Card.js +24 -6
  12. package/dist/cjs/components/Card/{CardMedia.js → CardBlock.js} +3 -4
  13. package/dist/cjs/components/Card/index.js +6 -17
  14. package/dist/cjs/components/Chip/Chips.js +51 -0
  15. package/dist/cjs/components/Chip/index.js +12 -11
  16. package/dist/cjs/components/Dropdown/Dropdown.js +2 -12
  17. package/dist/cjs/components/Dropdown/DropdownButton.js +12 -0
  18. package/dist/cjs/components/Dropdown/DropdownHeading.js +3 -6
  19. package/dist/cjs/components/Dropdown/DropdownItem.js +2 -5
  20. package/dist/cjs/components/Dropdown/DropdownList.js +1 -2
  21. package/dist/cjs/components/Dropdown/DropdownTriggerContext.js +26 -0
  22. package/dist/cjs/components/Dropdown/index.js +13 -7
  23. package/dist/cjs/components/ErrorSummary/ErrorSummary.js +2 -3
  24. package/dist/cjs/components/ErrorSummary/ErrorSummaryHeading.js +3 -8
  25. package/dist/cjs/components/ErrorSummary/ErrorSummaryList.js +1 -3
  26. package/dist/cjs/components/{Typography/Heading → Heading}/Heading.js +3 -4
  27. package/dist/cjs/components/HelpText/HelpText.js +2 -2
  28. package/dist/cjs/components/{Typography/Label → Label}/Label.js +3 -4
  29. package/dist/cjs/components/Link/Link.js +2 -2
  30. package/dist/cjs/components/List/Lists.js +2 -3
  31. package/dist/cjs/components/Modal/Modal.js +51 -0
  32. package/dist/cjs/components/Modal/ModalBlock.js +14 -0
  33. package/dist/cjs/components/Modal/ModalTrigger.js +4 -5
  34. package/dist/cjs/components/Modal/ModalTriggerContext.js +17 -0
  35. package/dist/cjs/components/Modal/index.js +12 -22
  36. package/dist/cjs/components/Pagination/Pagination.js +5 -14
  37. package/dist/cjs/components/Pagination/PaginationButton.js +2 -4
  38. package/dist/cjs/components/Pagination/PaginationItem.js +1 -4
  39. package/dist/cjs/components/Pagination/PaginationList.js +2 -5
  40. package/dist/cjs/components/Pagination/index.js +5 -19
  41. package/dist/cjs/components/Pagination/usePagination.js +46 -51
  42. package/dist/cjs/components/Paragraph/Paragraph.js +20 -0
  43. package/dist/cjs/components/Popover/Popover.js +41 -19
  44. package/dist/cjs/components/Popover/PopoverTrigger.js +2 -2
  45. package/dist/cjs/components/Popover/{PopoverContext.js → PopoverTriggerContext.js} +3 -3
  46. package/dist/cjs/components/Popover/index.js +4 -4
  47. package/dist/cjs/components/SkipLink/SkipLink.js +4 -4
  48. package/dist/cjs/components/Table/Table.js +2 -3
  49. package/dist/cjs/components/Table/TableFoot.js +11 -0
  50. package/dist/cjs/components/Table/index.js +11 -6
  51. package/dist/cjs/components/Tabs/Tabs.js +2 -3
  52. package/dist/cjs/components/Tabs/TabsPanel.js +2 -3
  53. package/dist/cjs/components/Tabs/TabsTab.js +1 -2
  54. package/dist/cjs/components/Tag/Tag.js +2 -3
  55. package/dist/cjs/components/ToggleGroup/ToggleGroup.js +1 -2
  56. package/dist/cjs/components/ToggleGroup/ToggleGroupItem.js +2 -2
  57. package/dist/cjs/components/ToggleGroup/useToggleGroupitem.js +0 -1
  58. package/dist/cjs/components/Tooltip/Tooltip.js +51 -22
  59. package/dist/cjs/components/{Typography/ValidationMessage → ValidationMessage}/ValidationMessage.js +2 -2
  60. package/dist/cjs/components/form/Checkbox/Checkbox.js +11 -19
  61. package/dist/cjs/components/form/Combobox/Combobox.js +3 -4
  62. package/dist/cjs/components/form/Combobox/Custom.js +2 -2
  63. package/dist/cjs/components/form/Combobox/Empty.js +2 -2
  64. package/dist/cjs/components/form/Combobox/Option/Option.js +5 -3
  65. package/dist/cjs/components/form/Combobox/internal/ComboboxChips.js +2 -2
  66. package/dist/cjs/components/form/Combobox/internal/ComboboxError.js +2 -2
  67. package/dist/cjs/components/form/Combobox/internal/ComboboxInput.js +2 -2
  68. package/dist/cjs/components/form/Combobox/internal/ComboboxLabel.js +3 -3
  69. package/dist/cjs/components/form/Field/Field.js +17 -0
  70. package/dist/cjs/components/form/Field/FieldAffix.js +16 -0
  71. package/dist/cjs/components/form/Field/FieldCounter.js +28 -0
  72. package/dist/cjs/components/form/Field/FieldDescription.js +11 -0
  73. package/dist/cjs/components/form/Field/fieldObserver.js +97 -0
  74. package/dist/cjs/components/form/Field/index.js +33 -0
  75. package/dist/cjs/components/form/Fieldset/Fieldset.js +2 -16
  76. package/dist/cjs/components/form/Fieldset/FieldsetDescription.js +12 -0
  77. package/dist/cjs/components/form/Fieldset/FieldsetLegend.js +12 -0
  78. package/dist/cjs/components/form/Fieldset/index.js +25 -0
  79. package/dist/cjs/components/form/Input/Input.js +23 -0
  80. package/dist/cjs/components/form/Radio/Radio.js +11 -10
  81. package/dist/cjs/components/form/Search/Search.js +2 -39
  82. package/dist/cjs/components/form/Search/SearchButton.js +12 -0
  83. package/dist/cjs/components/form/Search/SearchClear.js +28 -0
  84. package/dist/cjs/components/form/Search/SearchInput.js +14 -0
  85. package/dist/cjs/components/form/Search/index.js +33 -0
  86. package/dist/cjs/components/form/Select/Select.js +12 -10
  87. package/dist/cjs/components/form/Select/index.js +4 -3
  88. package/dist/cjs/components/form/Switch/Switch.js +10 -11
  89. package/dist/cjs/components/form/Textarea/Textarea.js +3 -20
  90. package/dist/cjs/components/form/Textfield/Textfield.js +14 -21
  91. package/dist/cjs/components/form/useFormField.js +1 -3
  92. package/dist/cjs/components/loaders/Skeleton/Skeleton.js +2 -1
  93. package/dist/cjs/components/loaders/Spinner/Spinner.js +6 -4
  94. package/dist/cjs/index.js +66 -63
  95. package/dist/cjs/utilities/hooks/useCheckboxGroup/useCheckboxGroup.js +121 -0
  96. package/dist/cjs/utilities/hooks/useRadioGroup/useRadioGroup.js +99 -0
  97. package/dist/esm/components/Accordion/Accordion.js +1 -1
  98. package/dist/esm/components/Accordion/AccordionContent.js +1 -2
  99. package/dist/esm/components/Accordion/AccordionHeading.js +4 -6
  100. package/dist/esm/components/Accordion/AccordionItem.js +17 -53
  101. package/dist/esm/components/Alert/Alert.js +2 -3
  102. package/dist/esm/components/Avatar/Avatar.js +5 -10
  103. package/dist/esm/components/Badge/Badge.js +4 -10
  104. package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +1 -2
  105. package/dist/esm/components/Button/Button.js +6 -6
  106. package/dist/esm/components/Card/Card.js +25 -7
  107. package/dist/esm/components/Card/{CardMedia.js → CardBlock.js} +3 -4
  108. package/dist/esm/components/Card/index.js +6 -14
  109. package/dist/esm/components/Chip/Chips.js +46 -0
  110. package/dist/esm/components/Chip/index.js +9 -9
  111. package/dist/esm/components/Dropdown/Dropdown.js +4 -13
  112. package/dist/esm/components/Dropdown/DropdownButton.js +10 -0
  113. package/dist/esm/components/Dropdown/DropdownHeading.js +4 -7
  114. package/dist/esm/components/Dropdown/DropdownItem.js +3 -6
  115. package/dist/esm/components/Dropdown/DropdownList.js +1 -2
  116. package/dist/esm/components/Dropdown/DropdownTriggerContext.js +24 -0
  117. package/dist/esm/components/Dropdown/index.js +12 -7
  118. package/dist/esm/components/ErrorSummary/ErrorSummary.js +2 -3
  119. package/dist/esm/components/ErrorSummary/ErrorSummaryHeading.js +3 -8
  120. package/dist/esm/components/ErrorSummary/ErrorSummaryList.js +2 -4
  121. package/dist/esm/components/Heading/Heading.js +18 -0
  122. package/dist/esm/components/HelpText/HelpText.js +2 -2
  123. package/dist/esm/components/{Typography/Label → Label}/Label.js +3 -4
  124. package/dist/esm/components/Link/Link.js +2 -2
  125. package/dist/esm/components/List/Lists.js +2 -3
  126. package/dist/esm/components/Modal/Modal.js +49 -0
  127. package/dist/esm/components/Modal/ModalBlock.js +12 -0
  128. package/dist/esm/components/Modal/ModalTrigger.js +4 -5
  129. package/dist/esm/components/Modal/ModalTriggerContext.js +14 -0
  130. package/dist/esm/components/Modal/index.js +11 -18
  131. package/dist/esm/components/Pagination/Pagination.js +6 -15
  132. package/dist/esm/components/Pagination/PaginationButton.js +3 -5
  133. package/dist/esm/components/Pagination/PaginationItem.js +2 -5
  134. package/dist/esm/components/Pagination/PaginationList.js +3 -6
  135. package/dist/esm/components/Pagination/index.js +6 -16
  136. package/dist/esm/components/Pagination/usePagination.js +47 -52
  137. package/dist/esm/components/Paragraph/Paragraph.js +18 -0
  138. package/dist/esm/components/Popover/Popover.js +40 -18
  139. package/dist/esm/components/Popover/PopoverTrigger.js +1 -1
  140. package/dist/esm/components/Popover/{PopoverContext.js → PopoverTriggerContext.js} +3 -3
  141. package/dist/esm/components/Popover/index.js +4 -4
  142. package/dist/esm/components/SkipLink/SkipLink.js +4 -4
  143. package/dist/esm/components/Table/Table.js +2 -3
  144. package/dist/esm/components/Table/TableFoot.js +9 -0
  145. package/dist/esm/components/Table/index.js +11 -7
  146. package/dist/esm/components/Tabs/Tabs.js +2 -3
  147. package/dist/esm/components/Tabs/TabsPanel.js +2 -3
  148. package/dist/esm/components/Tabs/TabsTab.js +1 -2
  149. package/dist/esm/components/Tag/Tag.js +2 -3
  150. package/dist/esm/components/ToggleGroup/ToggleGroup.js +1 -2
  151. package/dist/esm/components/ToggleGroup/ToggleGroupItem.js +2 -2
  152. package/dist/esm/components/ToggleGroup/useToggleGroupitem.js +0 -1
  153. package/dist/esm/components/Tooltip/Tooltip.js +53 -24
  154. package/dist/esm/components/{Typography/ValidationMessage → ValidationMessage}/ValidationMessage.js +2 -2
  155. package/dist/esm/components/form/Checkbox/Checkbox.js +12 -20
  156. package/dist/esm/components/form/Combobox/Combobox.js +4 -5
  157. package/dist/esm/components/form/Combobox/Custom.js +2 -2
  158. package/dist/esm/components/form/Combobox/Empty.js +2 -2
  159. package/dist/esm/components/form/Combobox/Option/Option.js +5 -3
  160. package/dist/esm/components/form/Combobox/internal/ComboboxChips.js +2 -2
  161. package/dist/esm/components/form/Combobox/internal/ComboboxError.js +2 -2
  162. package/dist/esm/components/form/Combobox/internal/ComboboxInput.js +2 -2
  163. package/dist/esm/components/form/Combobox/internal/ComboboxLabel.js +3 -3
  164. package/dist/esm/components/form/Field/Field.js +15 -0
  165. package/dist/esm/components/form/Field/FieldAffix.js +13 -0
  166. package/dist/esm/components/form/Field/FieldCounter.js +26 -0
  167. package/dist/esm/components/form/Field/FieldDescription.js +9 -0
  168. package/dist/esm/components/form/Field/fieldObserver.js +95 -0
  169. package/dist/esm/components/form/Field/index.js +27 -0
  170. package/dist/esm/components/form/Fieldset/Fieldset.js +4 -18
  171. package/dist/esm/components/form/Fieldset/FieldsetDescription.js +10 -0
  172. package/dist/esm/components/form/Fieldset/FieldsetLegend.js +10 -0
  173. package/dist/esm/components/form/Fieldset/index.js +21 -0
  174. package/dist/esm/components/form/Input/Input.js +21 -0
  175. package/dist/esm/components/form/Radio/Radio.js +12 -11
  176. package/dist/esm/components/form/Search/Search.js +4 -41
  177. package/dist/esm/components/form/Search/SearchButton.js +10 -0
  178. package/dist/esm/components/form/Search/SearchClear.js +26 -0
  179. package/dist/esm/components/form/Search/SearchInput.js +12 -0
  180. package/dist/esm/components/form/Search/index.js +28 -0
  181. package/dist/esm/components/form/Select/Select.js +13 -11
  182. package/dist/esm/components/form/Select/index.js +4 -3
  183. package/dist/esm/components/form/Switch/Switch.js +11 -12
  184. package/dist/esm/components/form/Textarea/Textarea.js +5 -22
  185. package/dist/esm/components/form/Textfield/Textfield.js +16 -23
  186. package/dist/esm/components/form/useFormField.js +1 -3
  187. package/dist/esm/components/loaders/Skeleton/Skeleton.js +2 -1
  188. package/dist/esm/components/loaders/Spinner/Spinner.js +6 -4
  189. package/dist/esm/index.js +28 -28
  190. package/dist/esm/utilities/hooks/useCheckboxGroup/useCheckboxGroup.js +119 -0
  191. package/dist/esm/utilities/hooks/useRadioGroup/useRadioGroup.js +97 -0
  192. package/dist/types/colors.d.ts +4 -0
  193. package/dist/types/colors.d.ts.map +1 -0
  194. package/dist/types/components/Accordion/Accordion.d.ts +276 -16
  195. package/dist/types/components/Accordion/Accordion.d.ts.map +1 -1
  196. package/dist/types/components/Accordion/AccordionContent.d.ts.map +1 -1
  197. package/dist/types/components/Accordion/AccordionHeading.d.ts +2 -2
  198. package/dist/types/components/Accordion/AccordionHeading.d.ts.map +1 -1
  199. package/dist/types/components/Accordion/AccordionItem.d.ts +8 -8
  200. package/dist/types/components/Accordion/AccordionItem.d.ts.map +1 -1
  201. package/dist/types/components/Alert/Alert.d.ts +275 -23
  202. package/dist/types/components/Alert/Alert.d.ts.map +1 -1
  203. package/dist/types/components/Avatar/Avatar.d.ts +282 -36
  204. package/dist/types/components/Avatar/Avatar.d.ts.map +1 -1
  205. package/dist/types/components/Badge/Badge.d.ts +281 -50
  206. package/dist/types/components/Badge/Badge.d.ts.map +1 -1
  207. package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts +273 -18
  208. package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  209. package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts +277 -5
  210. package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts.map +1 -1
  211. package/dist/types/components/Breadcrumbs/index.d.ts +546 -8
  212. package/dist/types/components/Breadcrumbs/index.d.ts.map +1 -1
  213. package/dist/types/components/Button/Button.d.ts +289 -41
  214. package/dist/types/components/Button/Button.d.ts.map +1 -1
  215. package/dist/types/components/Card/Card.d.ts +280 -34
  216. package/dist/types/components/Card/Card.d.ts.map +1 -1
  217. package/dist/types/components/Card/{CardMedia.d.ts → CardBlock.d.ts} +3 -3
  218. package/dist/types/components/Card/{CardMedia.d.ts.map → CardBlock.d.ts.map} +1 -1
  219. package/dist/types/components/Card/index.d.ts +278 -16
  220. package/dist/types/components/Card/index.d.ts.map +1 -1
  221. package/dist/types/components/Chip/Chips.d.ts +1204 -0
  222. package/dist/types/components/Chip/Chips.d.ts.map +1 -0
  223. package/dist/types/components/Chip/index.d.ts +1166 -21
  224. package/dist/types/components/Chip/index.d.ts.map +1 -1
  225. package/dist/types/components/Dropdown/Dropdown.d.ts +283 -15
  226. package/dist/types/components/Dropdown/Dropdown.d.ts.map +1 -1
  227. package/dist/types/components/Dropdown/DropdownButton.d.ts +4 -0
  228. package/dist/types/components/Dropdown/DropdownButton.d.ts.map +1 -0
  229. package/dist/types/components/Dropdown/DropdownHeading.d.ts +7 -3
  230. package/dist/types/components/Dropdown/DropdownHeading.d.ts.map +1 -1
  231. package/dist/types/components/Dropdown/DropdownItem.d.ts +3 -3
  232. package/dist/types/components/Dropdown/DropdownItem.d.ts.map +1 -1
  233. package/dist/types/components/Dropdown/DropdownList.d.ts.map +1 -1
  234. package/dist/types/components/Dropdown/DropdownTrigger.d.ts +285 -15
  235. package/dist/types/components/Dropdown/DropdownTrigger.d.ts.map +1 -1
  236. package/dist/types/components/Dropdown/DropdownTriggerContext.d.ts +22 -0
  237. package/dist/types/components/Dropdown/DropdownTriggerContext.d.ts.map +1 -0
  238. package/dist/types/components/Dropdown/index.d.ts +577 -25
  239. package/dist/types/components/Dropdown/index.d.ts.map +1 -1
  240. package/dist/types/components/ErrorSummary/ErrorSummary.d.ts +3 -8
  241. package/dist/types/components/ErrorSummary/ErrorSummary.d.ts.map +1 -1
  242. package/dist/types/components/ErrorSummary/ErrorSummaryHeading.d.ts +2 -3
  243. package/dist/types/components/ErrorSummary/ErrorSummaryHeading.d.ts.map +1 -1
  244. package/dist/types/components/ErrorSummary/ErrorSummaryList.d.ts +1 -2
  245. package/dist/types/components/ErrorSummary/ErrorSummaryList.d.ts.map +1 -1
  246. package/dist/types/components/ErrorSummary/index.d.ts +3 -7
  247. package/dist/types/components/ErrorSummary/index.d.ts.map +1 -1
  248. package/dist/types/components/{Typography/Heading → Heading}/Heading.d.ts +3 -11
  249. package/dist/types/components/Heading/Heading.d.ts.map +1 -0
  250. package/dist/types/components/Heading/index.d.ts.map +1 -0
  251. package/dist/types/components/HelpText/HelpText.d.ts +286 -22
  252. package/dist/types/components/HelpText/HelpText.d.ts.map +1 -1
  253. package/dist/types/components/{Typography/Label → Label}/Label.d.ts +4 -17
  254. package/dist/types/components/Label/Label.d.ts.map +1 -0
  255. package/dist/types/components/Label/index.d.ts.map +1 -0
  256. package/dist/types/components/Link/Link.d.ts +284 -20
  257. package/dist/types/components/Link/Link.d.ts.map +1 -1
  258. package/dist/types/components/List/Lists.d.ts +16 -9
  259. package/dist/types/components/List/Lists.d.ts.map +1 -1
  260. package/dist/types/components/List/index.d.ts +2 -4
  261. package/dist/types/components/List/index.d.ts.map +1 -1
  262. package/dist/types/components/Modal/Modal.d.ts +297 -0
  263. package/dist/types/components/Modal/Modal.d.ts.map +1 -0
  264. package/dist/types/components/{Card/CardFooter.d.ts → Modal/ModalBlock.d.ts} +3 -3
  265. package/dist/types/components/Modal/ModalBlock.d.ts.map +1 -0
  266. package/dist/types/components/Modal/ModalTrigger.d.ts +282 -7
  267. package/dist/types/components/Modal/ModalTrigger.d.ts.map +1 -1
  268. package/dist/types/components/Modal/ModalTriggerContext.d.ts +10 -0
  269. package/dist/types/components/Modal/ModalTriggerContext.d.ts.map +1 -0
  270. package/dist/types/components/Modal/index.d.ts +576 -20
  271. package/dist/types/components/Modal/index.d.ts.map +1 -1
  272. package/dist/types/components/Pagination/Pagination.d.ts +287 -45
  273. package/dist/types/components/Pagination/Pagination.d.ts.map +1 -1
  274. package/dist/types/components/Pagination/PaginationButton.d.ts +289 -5
  275. package/dist/types/components/Pagination/PaginationButton.d.ts.map +1 -1
  276. package/dist/types/components/Pagination/PaginationItem.d.ts.map +1 -1
  277. package/dist/types/components/Pagination/PaginationList.d.ts +1 -1
  278. package/dist/types/components/Pagination/PaginationList.d.ts.map +1 -1
  279. package/dist/types/components/Pagination/index.d.ts +565 -17
  280. package/dist/types/components/Pagination/index.d.ts.map +1 -1
  281. package/dist/types/components/Pagination/usePagination.d.ts +41 -17
  282. package/dist/types/components/Pagination/usePagination.d.ts.map +1 -1
  283. package/dist/types/components/{Typography/Paragraph → Paragraph}/Paragraph.d.ts +3 -13
  284. package/dist/types/components/Paragraph/Paragraph.d.ts.map +1 -0
  285. package/dist/types/components/Paragraph/index.d.ts.map +1 -0
  286. package/dist/types/components/Popover/Popover.d.ts +287 -43
  287. package/dist/types/components/Popover/Popover.d.ts.map +1 -1
  288. package/dist/types/components/Popover/PopoverTrigger.d.ts +285 -13
  289. package/dist/types/components/Popover/PopoverTrigger.d.ts.map +1 -1
  290. package/dist/types/components/Popover/PopoverTriggerContext.d.ts +13 -0
  291. package/dist/types/components/Popover/PopoverTriggerContext.d.ts.map +1 -0
  292. package/dist/types/components/Popover/index.d.ts +4 -4
  293. package/dist/types/components/Popover/index.d.ts.map +1 -1
  294. package/dist/types/components/SkipLink/SkipLink.d.ts +283 -7
  295. package/dist/types/components/SkipLink/SkipLink.d.ts.map +1 -1
  296. package/dist/types/components/Table/Table.d.ts +3 -12
  297. package/dist/types/components/Table/Table.d.ts.map +1 -1
  298. package/dist/types/components/Table/TableFoot.d.ts +4 -0
  299. package/dist/types/components/Table/TableFoot.d.ts.map +1 -0
  300. package/dist/types/components/Table/TableHeaderCell.d.ts.map +1 -1
  301. package/dist/types/components/Table/index.d.ts +18 -10
  302. package/dist/types/components/Table/index.d.ts.map +1 -1
  303. package/dist/types/components/Tabs/Tabs.d.ts +278 -20
  304. package/dist/types/components/Tabs/Tabs.d.ts.map +1 -1
  305. package/dist/types/components/Tabs/TabsPanel.d.ts.map +1 -1
  306. package/dist/types/components/Tabs/TabsTab.d.ts.map +1 -1
  307. package/dist/types/components/Tabs/index.d.ts +270 -5
  308. package/dist/types/components/Tabs/index.d.ts.map +1 -1
  309. package/dist/types/components/Tag/Tag.d.ts +276 -23
  310. package/dist/types/components/Tag/Tag.d.ts.map +1 -1
  311. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts +279 -23
  312. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts.map +1 -1
  313. package/dist/types/components/ToggleGroup/ToggleGroupItem.d.ts +285 -2
  314. package/dist/types/components/ToggleGroup/ToggleGroupItem.d.ts.map +1 -1
  315. package/dist/types/components/ToggleGroup/useToggleGroupitem.d.ts +0 -2
  316. package/dist/types/components/ToggleGroup/useToggleGroupitem.d.ts.map +1 -1
  317. package/dist/types/components/Tooltip/Tooltip.d.ts +286 -33
  318. package/dist/types/components/Tooltip/Tooltip.d.ts.map +1 -1
  319. package/dist/types/components/ValidationMessage/ValidationMessage.d.ts +285 -0
  320. package/dist/types/components/ValidationMessage/ValidationMessage.d.ts.map +1 -0
  321. package/dist/types/components/ValidationMessage/index.d.ts.map +1 -0
  322. package/dist/types/components/form/CharacterCounter.d.ts +2 -2
  323. package/dist/types/components/form/CharacterCounter.d.ts.map +1 -1
  324. package/dist/types/components/form/Checkbox/Checkbox.d.ts +36 -19
  325. package/dist/types/components/form/Checkbox/Checkbox.d.ts.map +1 -1
  326. package/dist/types/components/form/Checkbox/index.d.ts +2 -21
  327. package/dist/types/components/form/Checkbox/index.d.ts.map +1 -1
  328. package/dist/types/components/form/Combobox/Combobox.d.ts +3 -3
  329. package/dist/types/components/form/Combobox/Combobox.d.ts.map +1 -1
  330. package/dist/types/components/form/Combobox/Option/Option.d.ts.map +1 -1
  331. package/dist/types/components/form/Combobox/internal/ComboboxLabel.d.ts.map +1 -1
  332. package/dist/types/components/form/Field/Field.d.ts +15 -0
  333. package/dist/types/components/form/Field/Field.d.ts.map +1 -0
  334. package/dist/types/components/form/Field/FieldAffix.d.ts +6 -0
  335. package/dist/types/components/form/Field/FieldAffix.d.ts.map +1 -0
  336. package/dist/types/components/form/Field/FieldCounter.d.ts +296 -0
  337. package/dist/types/components/form/Field/FieldCounter.d.ts.map +1 -0
  338. package/dist/types/components/form/Field/FieldDescription.d.ts +4 -0
  339. package/dist/types/components/form/Field/FieldDescription.d.ts.map +1 -0
  340. package/dist/types/components/form/Field/fieldObserver.d.ts +2 -0
  341. package/dist/types/components/form/Field/fieldObserver.d.ts.map +1 -0
  342. package/dist/types/components/form/Field/index.d.ts +300 -0
  343. package/dist/types/components/form/Field/index.d.ts.map +1 -0
  344. package/dist/types/components/form/Fieldset/Fieldset.d.ts +276 -25
  345. package/dist/types/components/form/Fieldset/Fieldset.d.ts.map +1 -1
  346. package/dist/types/components/form/Fieldset/FieldsetContext.d.ts +1 -1
  347. package/dist/types/components/form/Fieldset/FieldsetContext.d.ts.map +1 -1
  348. package/dist/types/components/form/Fieldset/FieldsetDescription.d.ts +8 -0
  349. package/dist/types/components/form/Fieldset/FieldsetDescription.d.ts.map +1 -0
  350. package/dist/types/components/form/Fieldset/FieldsetLegend.d.ts +5 -0
  351. package/dist/types/components/form/Fieldset/FieldsetLegend.d.ts.map +1 -0
  352. package/dist/types/components/form/Fieldset/index.d.ts +295 -1
  353. package/dist/types/components/form/Fieldset/index.d.ts.map +1 -1
  354. package/dist/types/components/form/Input/Input.d.ts +334 -0
  355. package/dist/types/components/form/Input/Input.d.ts.map +1 -0
  356. package/dist/types/components/form/Input/index.d.ts +3 -0
  357. package/dist/types/components/form/Input/index.d.ts.map +1 -0
  358. package/dist/types/components/form/Radio/Radio.d.ts +37 -12
  359. package/dist/types/components/form/Radio/Radio.d.ts.map +1 -1
  360. package/dist/types/components/form/Radio/index.d.ts +2 -19
  361. package/dist/types/components/form/Radio/index.d.ts.map +1 -1
  362. package/dist/types/components/form/Search/Search.d.ts +3 -75
  363. package/dist/types/components/form/Search/Search.d.ts.map +1 -1
  364. package/dist/types/components/form/Search/SearchButton.d.ts +295 -0
  365. package/dist/types/components/form/Search/SearchButton.d.ts.map +1 -0
  366. package/dist/types/components/form/Search/SearchClear.d.ts +299 -0
  367. package/dist/types/components/form/Search/SearchClear.d.ts.map +1 -0
  368. package/dist/types/components/form/Search/SearchInput.d.ts +4 -0
  369. package/dist/types/components/form/Search/SearchInput.d.ts.map +1 -0
  370. package/dist/types/components/form/Search/index.d.ts +593 -1
  371. package/dist/types/components/form/Search/index.d.ts.map +1 -1
  372. package/dist/types/components/form/Select/Select.d.ts +283 -57
  373. package/dist/types/components/form/Select/Select.d.ts.map +1 -1
  374. package/dist/types/components/form/Select/index.d.ts +283 -5
  375. package/dist/types/components/form/Select/index.d.ts.map +1 -1
  376. package/dist/types/components/form/Switch/Switch.d.ts +43 -18
  377. package/dist/types/components/form/Switch/Switch.d.ts.map +1 -1
  378. package/dist/types/components/form/Textarea/Textarea.d.ts +5 -44
  379. package/dist/types/components/form/Textarea/Textarea.d.ts.map +1 -1
  380. package/dist/types/components/form/Textfield/Textfield.d.ts +38 -61
  381. package/dist/types/components/form/Textfield/Textfield.d.ts.map +1 -1
  382. package/dist/types/components/form/useFormField.d.ts +2 -1
  383. package/dist/types/components/form/useFormField.d.ts.map +1 -1
  384. package/dist/types/components/index.d.ts +6 -1
  385. package/dist/types/components/index.d.ts.map +1 -1
  386. package/dist/types/components/loaders/Skeleton/Skeleton.d.ts +8 -17
  387. package/dist/types/components/loaders/Skeleton/Skeleton.d.ts.map +1 -1
  388. package/dist/types/components/loaders/Spinner/Spinner.d.ts +15 -14
  389. package/dist/types/components/loaders/Spinner/Spinner.d.ts.map +1 -1
  390. package/dist/types/components/loaders/Spinner/index.d.ts +1 -2
  391. package/dist/types/components/loaders/Spinner/index.d.ts.map +1 -1
  392. package/dist/types/types.d.ts +19 -0
  393. package/dist/types/types.d.ts.map +1 -0
  394. package/dist/types/utilities/RovingFocus/useRovingFocus.d.ts +1 -1
  395. package/dist/types/utilities/hooks/useCheckboxGroup/useCheckboxGroup.d.ts +377 -0
  396. package/dist/types/utilities/hooks/useCheckboxGroup/useCheckboxGroup.d.ts.map +1 -0
  397. package/dist/types/utilities/hooks/useRadioGroup/useRadioGroup.d.ts +365 -0
  398. package/dist/types/utilities/hooks/useRadioGroup/useRadioGroup.d.ts.map +1 -0
  399. package/dist/types/utilities/index.d.ts +1 -0
  400. package/dist/types/utilities/index.d.ts.map +1 -1
  401. package/dist/types/utilities/types.d.ts +10 -0
  402. package/dist/types/utilities/types.d.ts.map +1 -0
  403. package/package.json +3 -3
  404. package/dist/cjs/components/Card/CardContent.js +0 -16
  405. package/dist/cjs/components/Card/CardFooter.js +0 -16
  406. package/dist/cjs/components/Card/CardHeader.js +0 -16
  407. package/dist/cjs/components/Chip/Group/Group.js +0 -15
  408. package/dist/cjs/components/Chip/Removable/Removable.js +0 -17
  409. package/dist/cjs/components/Chip/Toggle/Toggle.js +0 -18
  410. package/dist/cjs/components/Dropdown/DropdownContext.js +0 -26
  411. package/dist/cjs/components/Modal/ModaContent.js +0 -15
  412. package/dist/cjs/components/Modal/ModalDialog.js +0 -73
  413. package/dist/cjs/components/Modal/ModalFooter.js +0 -15
  414. package/dist/cjs/components/Modal/ModalHeader.js +0 -20
  415. package/dist/cjs/components/Modal/ModalRoot.js +0 -31
  416. package/dist/cjs/components/Modal/useModalState.js +0 -30
  417. package/dist/cjs/components/Modal/useScrollLock.js +0 -29
  418. package/dist/cjs/components/Pagination/PaginationEllipsis.js +0 -15
  419. package/dist/cjs/components/Pagination/PaginationNextPrev.js +0 -16
  420. package/dist/cjs/components/Pagination/PaginationRoot.js +0 -18
  421. package/dist/cjs/components/Typography/Ingress/Ingress.js +0 -21
  422. package/dist/cjs/components/Typography/Paragraph/Paragraph.js +0 -26
  423. package/dist/cjs/components/form/CharacterCounter.js +0 -17
  424. package/dist/cjs/components/form/Checkbox/CheckboxGroup.js +0 -31
  425. package/dist/cjs/components/form/Checkbox/index.js +0 -13
  426. package/dist/cjs/components/form/Checkbox/useCheckbox.js +0 -44
  427. package/dist/cjs/components/form/Radio/RadioGroup.js +0 -23
  428. package/dist/cjs/components/form/Radio/index.js +0 -13
  429. package/dist/cjs/components/form/Radio/useRadio.js +0 -46
  430. package/dist/cjs/components/form/Search/useSearch.js +0 -39
  431. package/dist/cjs/components/form/Select/useSelect.js +0 -49
  432. package/dist/cjs/components/form/Switch/useSwitch.js +0 -46
  433. package/dist/cjs/components/form/Textarea/useTextarea.js +0 -37
  434. package/dist/cjs/components/form/Textfield/useTextfield.js +0 -37
  435. package/dist/esm/components/Card/CardContent.js +0 -14
  436. package/dist/esm/components/Card/CardFooter.js +0 -14
  437. package/dist/esm/components/Card/CardHeader.js +0 -14
  438. package/dist/esm/components/Chip/Group/Group.js +0 -12
  439. package/dist/esm/components/Chip/Removable/Removable.js +0 -15
  440. package/dist/esm/components/Chip/Toggle/Toggle.js +0 -16
  441. package/dist/esm/components/Dropdown/DropdownContext.js +0 -24
  442. package/dist/esm/components/Modal/ModaContent.js +0 -13
  443. package/dist/esm/components/Modal/ModalDialog.js +0 -71
  444. package/dist/esm/components/Modal/ModalFooter.js +0 -13
  445. package/dist/esm/components/Modal/ModalHeader.js +0 -18
  446. package/dist/esm/components/Modal/ModalRoot.js +0 -28
  447. package/dist/esm/components/Modal/useModalState.js +0 -28
  448. package/dist/esm/components/Modal/useScrollLock.js +0 -27
  449. package/dist/esm/components/Pagination/PaginationEllipsis.js +0 -13
  450. package/dist/esm/components/Pagination/PaginationNextPrev.js +0 -13
  451. package/dist/esm/components/Pagination/PaginationRoot.js +0 -15
  452. package/dist/esm/components/Typography/Heading/Heading.js +0 -19
  453. package/dist/esm/components/Typography/Ingress/Ingress.js +0 -19
  454. package/dist/esm/components/Typography/Paragraph/Paragraph.js +0 -24
  455. package/dist/esm/components/form/CharacterCounter.js +0 -15
  456. package/dist/esm/components/form/Checkbox/CheckboxGroup.js +0 -28
  457. package/dist/esm/components/form/Checkbox/index.js +0 -10
  458. package/dist/esm/components/form/Checkbox/useCheckbox.js +0 -42
  459. package/dist/esm/components/form/Radio/RadioGroup.js +0 -20
  460. package/dist/esm/components/form/Radio/index.js +0 -10
  461. package/dist/esm/components/form/Radio/useRadio.js +0 -44
  462. package/dist/esm/components/form/Search/useSearch.js +0 -37
  463. package/dist/esm/components/form/Select/useSelect.js +0 -47
  464. package/dist/esm/components/form/Switch/useSwitch.js +0 -44
  465. package/dist/esm/components/form/Textarea/useTextarea.js +0 -35
  466. package/dist/esm/components/form/Textfield/useTextfield.js +0 -35
  467. package/dist/types/components/Card/CardContent.d.ts +0 -16
  468. package/dist/types/components/Card/CardContent.d.ts.map +0 -1
  469. package/dist/types/components/Card/CardFooter.d.ts.map +0 -1
  470. package/dist/types/components/Card/CardHeader.d.ts +0 -16
  471. package/dist/types/components/Card/CardHeader.d.ts.map +0 -1
  472. package/dist/types/components/Chip/Group/Group.d.ts +0 -20
  473. package/dist/types/components/Chip/Group/Group.d.ts.map +0 -1
  474. package/dist/types/components/Chip/Removable/Removable.d.ts +0 -17
  475. package/dist/types/components/Chip/Removable/Removable.d.ts.map +0 -1
  476. package/dist/types/components/Chip/Toggle/Toggle.d.ts +0 -33
  477. package/dist/types/components/Chip/Toggle/Toggle.d.ts.map +0 -1
  478. package/dist/types/components/Dropdown/DropdownContext.d.ts +0 -22
  479. package/dist/types/components/Dropdown/DropdownContext.d.ts.map +0 -1
  480. package/dist/types/components/Modal/ModaContent.d.ts +0 -16
  481. package/dist/types/components/Modal/ModaContent.d.ts.map +0 -1
  482. package/dist/types/components/Modal/ModalDialog.d.ts +0 -38
  483. package/dist/types/components/Modal/ModalDialog.d.ts.map +0 -1
  484. package/dist/types/components/Modal/ModalFooter.d.ts +0 -16
  485. package/dist/types/components/Modal/ModalFooter.d.ts.map +0 -1
  486. package/dist/types/components/Modal/ModalHeader.d.ts +0 -44
  487. package/dist/types/components/Modal/ModalHeader.d.ts.map +0 -1
  488. package/dist/types/components/Modal/ModalRoot.d.ts +0 -17
  489. package/dist/types/components/Modal/ModalRoot.d.ts.map +0 -1
  490. package/dist/types/components/Modal/useModalState.d.ts +0 -2
  491. package/dist/types/components/Modal/useModalState.d.ts.map +0 -1
  492. package/dist/types/components/Modal/useScrollLock.d.ts +0 -2
  493. package/dist/types/components/Modal/useScrollLock.d.ts.map +0 -1
  494. package/dist/types/components/Pagination/PaginationEllipsis.d.ts +0 -4
  495. package/dist/types/components/Pagination/PaginationEllipsis.d.ts.map +0 -1
  496. package/dist/types/components/Pagination/PaginationNextPrev.d.ts +0 -10
  497. package/dist/types/components/Pagination/PaginationNextPrev.d.ts.map +0 -1
  498. package/dist/types/components/Pagination/PaginationRoot.d.ts +0 -53
  499. package/dist/types/components/Pagination/PaginationRoot.d.ts.map +0 -1
  500. package/dist/types/components/Popover/PopoverContext.d.ts +0 -13
  501. package/dist/types/components/Popover/PopoverContext.d.ts.map +0 -1
  502. package/dist/types/components/Typography/Heading/Heading.d.ts.map +0 -1
  503. package/dist/types/components/Typography/Heading/index.d.ts.map +0 -1
  504. package/dist/types/components/Typography/Ingress/Ingress.d.ts +0 -34
  505. package/dist/types/components/Typography/Ingress/Ingress.d.ts.map +0 -1
  506. package/dist/types/components/Typography/Ingress/index.d.ts +0 -2
  507. package/dist/types/components/Typography/Ingress/index.d.ts.map +0 -1
  508. package/dist/types/components/Typography/Label/Label.d.ts.map +0 -1
  509. package/dist/types/components/Typography/Label/index.d.ts.map +0 -1
  510. package/dist/types/components/Typography/Paragraph/Paragraph.d.ts.map +0 -1
  511. package/dist/types/components/Typography/Paragraph/index.d.ts.map +0 -1
  512. package/dist/types/components/Typography/ValidationMessage/ValidationMessage.d.ts +0 -35
  513. package/dist/types/components/Typography/ValidationMessage/ValidationMessage.d.ts.map +0 -1
  514. package/dist/types/components/Typography/ValidationMessage/index.d.ts.map +0 -1
  515. package/dist/types/components/Typography/index.d.ts +0 -6
  516. package/dist/types/components/Typography/index.d.ts.map +0 -1
  517. package/dist/types/components/form/Checkbox/CheckboxGroup.d.ts +0 -29
  518. package/dist/types/components/form/Checkbox/CheckboxGroup.d.ts.map +0 -1
  519. package/dist/types/components/form/Checkbox/useCheckbox.d.ts +0 -10
  520. package/dist/types/components/form/Checkbox/useCheckbox.d.ts.map +0 -1
  521. package/dist/types/components/form/Radio/RadioGroup.d.ts +0 -43
  522. package/dist/types/components/form/Radio/RadioGroup.d.ts.map +0 -1
  523. package/dist/types/components/form/Radio/useRadio.d.ts +0 -10
  524. package/dist/types/components/form/Radio/useRadio.d.ts.map +0 -1
  525. package/dist/types/components/form/Search/useSearch.d.ts +0 -10
  526. package/dist/types/components/form/Search/useSearch.d.ts.map +0 -1
  527. package/dist/types/components/form/Select/useSelect.d.ts +0 -10
  528. package/dist/types/components/form/Select/useSelect.d.ts.map +0 -1
  529. package/dist/types/components/form/Switch/useSwitch.d.ts +0 -10
  530. package/dist/types/components/form/Switch/useSwitch.d.ts.map +0 -1
  531. package/dist/types/components/form/Textfield/useTextfield.d.ts +0 -10
  532. package/dist/types/components/form/Textfield/useTextfield.d.ts.map +0 -1
  533. package/dist/types/types/Portal.d.ts +0 -9
  534. package/dist/types/types/Portal.d.ts.map +0 -1
  535. package/dist/types/utilities/AnimateHeight/AnimateHeight.d.ts +0 -9
  536. package/dist/types/utilities/AnimateHeight/AnimateHeight.d.ts.map +0 -1
  537. package/dist/types/utilities/AnimateHeight/index.d.ts +0 -3
  538. package/dist/types/utilities/AnimateHeight/index.d.ts.map +0 -1
  539. /package/dist/types/components/{Typography/Heading → Heading}/index.d.ts +0 -0
  540. /package/dist/types/components/{Typography/Label → Label}/index.d.ts +0 -0
  541. /package/dist/types/components/{Typography/Paragraph → Paragraph}/index.d.ts +0 -0
  542. /package/dist/types/components/{Typography/ValidationMessage → ValidationMessage}/index.d.ts +0 -0
@@ -1,14 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import cl from 'clsx/lite';
5
- import { forwardRef } from 'react';
6
- import { Paragraph } from '../Typography/Paragraph/Paragraph.js';
7
-
8
- const CardFooter = forwardRef(({ asChild, className, ...rest }, ref) => {
9
- const Component = asChild ? Slot : 'div';
10
- return (jsx(Paragraph, { size: 'md', asChild: true, children: jsx(Component, { className: cl(`ds-card__footer`, className), ref: ref, ...rest }) }));
11
- });
12
- CardFooter.displayName = 'CardFooter';
13
-
14
- export { CardFooter };
@@ -1,14 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import cl from 'clsx/lite';
5
- import { forwardRef } from 'react';
6
- import { Heading } from '../Typography/Heading/Heading.js';
7
-
8
- const CardHeader = forwardRef(({ asChild, className, ...rest }, ref) => {
9
- const Component = asChild ? Slot : 'div';
10
- return (jsx(Heading, { size: 'md', asChild: true, children: jsx(Component, { className: cl(`ds-card__header`, className), ref: ref, ...rest }) }));
11
- });
12
- CardHeader.displayName = 'CardHeader';
13
-
14
- export { CardHeader };
@@ -1,12 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import cl from 'clsx/lite';
4
- import { createContext, forwardRef, Children, isValidElement } from 'react';
5
-
6
- const ChipGroupContext = createContext(null);
7
- const Group = forwardRef(({ size = 'md', children, className, ...rest }, ref) => {
8
- return (jsx("ul", { ref: ref, className: cl(`ds-chip--group-container`, `ds-chip--${size}`, className), ...rest, children: jsx(ChipGroupContext.Provider, { value: { size }, children: Children.toArray(children).map((child, index) => isValidElement(child) ? (jsx("li", { children: child }, `chip-${index}`)) : null) }) }));
9
- });
10
- Group.displayName = 'ChipGroup';
11
-
12
- export { ChipGroupContext, Group };
@@ -1,15 +0,0 @@
1
- 'use client';
2
- import { jsx, jsxs } from 'react/jsx-runtime';
3
- import { XMarkIcon } from '@navikt/aksel-icons';
4
- import cl from 'clsx/lite';
5
- import { forwardRef, useContext } from 'react';
6
- import { ChipGroupContext } from '../Group/Group.js';
7
- import { Paragraph } from '../../Typography/Paragraph/Paragraph.js';
8
-
9
- const RemovableChip = forwardRef(({ size = 'md', children, className, ...rest }, ref) => {
10
- const group = useContext(ChipGroupContext);
11
- return (jsx("button", { type: 'button', ref: ref, className: cl(`ds-focus`, `ds-chip--button`, `ds-chip--removable`, `ds-chip--${group?.size || size}`, className), ...rest, children: jsx(Paragraph, { asChild: true, size: group?.size || size, variant: 'short', children: jsxs("span", { className: `ds-chip__label`, children: [jsx("span", { children: children }), jsx("span", { className: `ds-chip__x-mark`, "aria-hidden": true, children: jsx(XMarkIcon, { className: `ds-chip__icon` }) })] }) }) }));
12
- });
13
- RemovableChip.displayName = 'ChipRemovable';
14
-
15
- export { RemovableChip };
@@ -1,16 +0,0 @@
1
- 'use client';
2
- import { jsx, jsxs } from 'react/jsx-runtime';
3
- import { CheckmarkIcon } from '@navikt/aksel-icons';
4
- import cl from 'clsx/lite';
5
- import { forwardRef, useContext } from 'react';
6
- import { ChipGroupContext } from '../Group/Group.js';
7
- import { Paragraph } from '../../Typography/Paragraph/Paragraph.js';
8
-
9
- const ToggleChip = forwardRef(({ children, selected = false, checkmark = true, size = 'md', className, ...rest }, ref) => {
10
- const shouldDisplayCheckmark = checkmark && selected;
11
- const group = useContext(ChipGroupContext);
12
- return (jsx("button", { ref: ref, type: 'button', "aria-pressed": selected, className: cl(`ds-focus`, `ds-chip--button`, `ds-chip--${group?.size || size}`, shouldDisplayCheckmark && `ds-chip--spacing`, className), ...rest, children: jsx(Paragraph, { asChild: true, size: group?.size || size, variant: 'short', children: jsxs("span", { className: `ds-chip__label`, children: [shouldDisplayCheckmark && (jsx(CheckmarkIcon, { className: `ds-chip__checkmark-icon`, "aria-hidden": true })), jsx("span", { children: children })] }) }) }));
13
- });
14
- ToggleChip.displayName = 'ChipToggle';
15
-
16
- export { ToggleChip };
@@ -1,24 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import '../Popover/index.js';
4
- import { PopoverContext } from '../Popover/PopoverContext.js';
5
-
6
- /**
7
- * DropdownContext is the root component for the DropdownMenu component.
8
- * @example
9
- * <DropdownMenu.Context>
10
- * <DropdownMenu.Trigger>Dropdown</DropdownMenu.Trigger>
11
- * <DropdownMenu>
12
- * <DropdownMenu.Heading>Heading</DropdownMenu.Heading>
13
- * <DropdownMenu.List>
14
- * <DropdownMenu.Item>Button 1</DropdownMenu.Item>
15
- * </DropdownMenu.List>
16
- * </DropdownMenu>
17
- * </DropdownMenu.Context>
18
- */
19
- const DropdownContext = ({ children }) => {
20
- return jsx(PopoverContext, { children: children });
21
- };
22
- DropdownContext.displayName = 'DropdownContext';
23
-
24
- export { DropdownContext };
@@ -1,13 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import cl from 'clsx/lite';
5
- import { forwardRef } from 'react';
6
-
7
- const ModalContent = forwardRef(({ asChild, className, ...rest }, ref) => {
8
- const Component = asChild ? Slot : 'div';
9
- return (jsx(Component, { ref: ref, className: cl('ds-modal__content', className), ...rest }));
10
- });
11
- ModalContent.displayName = 'ModalContent';
12
-
13
- export { ModalContent };
@@ -1,71 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { useMergeRefs } from '@floating-ui/react';
4
- import { Slot } from '@radix-ui/react-slot';
5
- import cl from 'clsx/lite';
6
- import { forwardRef, useRef, useContext, useEffect } from 'react';
7
- import { ModalContext } from './ModalRoot.js';
8
- import { useModalState } from './useModalState.js';
9
- import { useScrollLock } from './useScrollLock.js';
10
-
11
- const ModalDialog = forwardRef(({ onInteractOutside, onClose, onBeforeClose, asChild, className, children, ...rest }, ref) => {
12
- const Component = asChild ? Slot : 'dialog';
13
- // This local ref is used to make sure the modal works without a ModalRoot
14
- const modalDialogRef = useRef(null);
15
- const { modalRef, setOpen, setCloseModal } = useContext(ModalContext);
16
- const open = useModalState(modalDialogRef);
17
- useEffect(() => {
18
- setCloseModal?.(() => {
19
- if (onBeforeClose && onBeforeClose() === false)
20
- return;
21
- modalDialogRef.current?.close();
22
- });
23
- }, [onBeforeClose, setCloseModal]);
24
- const mergedRefs = useMergeRefs([modalRef, ref, modalDialogRef]);
25
- useScrollLock(modalDialogRef, 'ds-modal--lock-scroll');
26
- useEffect(() => {
27
- setOpen(open);
28
- }, [open, setOpen]);
29
- useEffect(() => {
30
- const modalEl = modalRef.current;
31
- const handleBackdropClick = (e) => {
32
- if (e.target === modalEl && onInteractOutside) {
33
- // Fix bug where if you select text spanning two divs it thinks you clicked outside
34
- if (window.getSelection()?.toString())
35
- return;
36
- onInteractOutside?.();
37
- }
38
- };
39
- if (modalEl)
40
- modalEl.addEventListener('click', handleBackdropClick);
41
- return () => {
42
- if (modalEl) {
43
- modalEl.removeEventListener('click', handleBackdropClick);
44
- }
45
- };
46
- }, [onInteractOutside, modalRef, onBeforeClose, ref]);
47
- useEffect(() => {
48
- const modalEl = modalRef.current;
49
- const handleModalClose = () => {
50
- onClose?.();
51
- };
52
- if (modalEl)
53
- modalEl.addEventListener('close', handleModalClose);
54
- return () => {
55
- if (modalEl) {
56
- modalEl.removeEventListener('close', handleModalClose);
57
- }
58
- };
59
- }, [modalRef, onClose]);
60
- const onCancel = (e) => {
61
- if (onBeforeClose && onBeforeClose() === false) {
62
- e.preventDefault();
63
- return;
64
- }
65
- modalRef.current?.close();
66
- };
67
- return (jsx(Component, { ref: mergedRefs, className: cl('ds-modal', className), onCancel: onCancel, ...rest, children: children }));
68
- });
69
- ModalDialog.displayName = 'ModalDialog';
70
-
71
- export { ModalDialog };
@@ -1,13 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import cl from 'clsx/lite';
5
- import { forwardRef } from 'react';
6
-
7
- const ModalFooter = forwardRef(({ asChild, className, ...rest }, ref) => {
8
- const Component = asChild ? Slot : 'footer';
9
- return (jsx(Component, { ref: ref, className: cl('ds-modal__footer', className), ...rest }));
10
- });
11
- ModalFooter.displayName = 'ModalFooter';
12
-
13
- export { ModalFooter };
@@ -1,18 +0,0 @@
1
- 'use client';
2
- import { jsxs, jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import cl from 'clsx/lite';
5
- import { forwardRef, useContext } from 'react';
6
- import { Button } from '../Button/Button.js';
7
- import { ModalContext } from './ModalRoot.js';
8
- import { Heading } from '../Typography/Heading/Heading.js';
9
- import { Paragraph } from '../Typography/Paragraph/Paragraph.js';
10
-
11
- const ModalHeader = forwardRef(({ closeButton = true, closeButtonTitle = 'close modal', children, subtitle, asChild, className, ...rest }, ref) => {
12
- const Component = asChild ? Slot : 'div';
13
- const { closeModal } = useContext(ModalContext);
14
- return (jsxs(Component, { ref: ref, className: cl('ds-modal__header', className), ...rest, children: [subtitle && (jsx(Paragraph, { size: 'sm', variant: 'short', children: subtitle })), jsx(Heading, { level: 2, size: 'xs', children: children }), closeButton && (jsx(Button, { name: 'close', variant: 'tertiary', color: 'neutral', size: 'md', onClick: () => closeModal?.(), autoFocus: true, icon: true, className: 'ds-modal__header__button', title: closeButtonTitle }))] }));
15
- });
16
- ModalHeader.displayName = 'ModalHeader';
17
-
18
- export { ModalHeader };
@@ -1,28 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { createContext, useRef, useState, useCallback } from 'react';
4
-
5
- const ModalContext = createContext({
6
- setCloseModal: () => { },
7
- modalRef: { current: null },
8
- open: false,
9
- setOpen: () => { },
10
- });
11
- const ModalRoot = ({ children }) => {
12
- const modalRef = useRef(null);
13
- const [open, setOpen] = useState(false);
14
- const [closeModal, setCloseModal] = useState();
15
- const setCloseModalInContext = useCallback((fn) => {
16
- setCloseModal(() => fn);
17
- }, []);
18
- return (jsx(ModalContext.Provider, { value: {
19
- setCloseModal: setCloseModalInContext,
20
- closeModal,
21
- modalRef,
22
- open,
23
- setOpen,
24
- }, children: children }));
25
- };
26
- ModalRoot.displayName = 'ModalRoot';
27
-
28
- export { ModalContext, ModalRoot };
@@ -1,28 +0,0 @@
1
- 'use client';
2
- import { useState, useEffect } from 'react';
3
-
4
- const useModalState = (modalRef) => {
5
- const [isOpen, setIsOpen] = useState(false);
6
- useEffect(() => {
7
- if (!modalRef?.current)
8
- return;
9
- if (modalRef.current?.open)
10
- setIsOpen(true);
11
- const observer = new MutationObserver(() => {
12
- if (modalRef.current?.open)
13
- setIsOpen(true);
14
- else
15
- setIsOpen(false);
16
- });
17
- observer.observe(modalRef.current, {
18
- attributes: true,
19
- attributeFilter: ['open'],
20
- });
21
- return () => {
22
- observer.disconnect();
23
- };
24
- }, [modalRef]);
25
- return isOpen;
26
- };
27
-
28
- export { useModalState };
@@ -1,27 +0,0 @@
1
- 'use client';
2
- import { useEffect } from 'react';
3
-
4
- function useScrollLock(modalRef, bodyClass) {
5
- useEffect(() => {
6
- if (!modalRef.current)
7
- return;
8
- if (modalRef.current.open)
9
- document.body.classList.add(bodyClass);
10
- const observer = new MutationObserver(() => {
11
- if (modalRef.current?.open)
12
- document.body.classList.add(bodyClass);
13
- else
14
- document.body.classList.remove(bodyClass);
15
- });
16
- observer.observe(modalRef.current, {
17
- attributes: true,
18
- attributeFilter: ['open'],
19
- });
20
- return () => {
21
- observer.disconnect();
22
- document.body.classList.remove(bodyClass);
23
- };
24
- }, [bodyClass, modalRef]);
25
- }
26
-
27
- export { useScrollLock };
@@ -1,13 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import cl from 'clsx/lite';
4
- import { forwardRef, useContext } from 'react';
5
- import { PaginationContext } from './PaginationRoot.js';
6
- import { Paragraph } from '../Typography/Paragraph/Paragraph.js';
7
-
8
- const PaginationEllipsis = forwardRef(function PaginationEllipsis({ className, ...rest }, ref) {
9
- const { size } = useContext(PaginationContext);
10
- return (jsx(Paragraph, { ref: ref, className: cl('ds-pagination__ellipsis', className), size: size, ...rest, children: "\u2026" }));
11
- });
12
-
13
- export { PaginationEllipsis };
@@ -1,13 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { forwardRef } from 'react';
4
- import { PaginationButton } from './PaginationButton.js';
5
-
6
- const PaginationNext = forwardRef(function PaginationNext({ ...rest }, ref) {
7
- return (jsx(PaginationButton, { "aria-label": rest.children != null ? undefined : 'Neste side', ref: ref, ...rest }));
8
- });
9
- const PaginationPrevious = forwardRef(function PaginationPrevious({ ...rest }, ref) {
10
- return (jsx(PaginationButton, { "aria-label": rest.children != null ? undefined : 'Forrige side', ref: ref, ...rest }));
11
- });
12
-
13
- export { PaginationNext, PaginationPrevious };
@@ -1,15 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import { createContext, forwardRef } from 'react';
5
-
6
- const PaginationContext = createContext({
7
- size: 'md',
8
- compact: false,
9
- });
10
- const PaginationRoot = forwardRef(function PaginationRoot({ 'aria-label': ariaLabel = 'Sidenavigering', asChild, compact = false, size = 'md', ...rest }, ref) {
11
- const Component = asChild ? Slot : 'nav';
12
- return (jsx(PaginationContext.Provider, { value: { size, compact }, children: jsx(Component, { "aria-label": ariaLabel, ref: ref, ...rest }) }));
13
- });
14
-
15
- export { PaginationContext, PaginationRoot };
@@ -1,19 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import cl from 'clsx/lite';
5
- import { forwardRef } from 'react';
6
-
7
- /**
8
- * Use `Heading` to render h1-6 elements with heading text styles.
9
- *
10
- * @example
11
- * <Heading size='lg' level={2}>Heading</Heading>
12
- */
13
- const Heading = forwardRef(({ size = 'xl', level = 2, spacing = false, className, asChild, ...rest }, ref) => {
14
- const Component = asChild ? Slot : `h${level}`;
15
- return (jsx(Component, { ref: ref, className: cl('ds-heading', `ds-heading--${size}`, spacing && 'ds-heading--spacing', className), ...rest }));
16
- });
17
- Heading.displayName = 'Heading';
18
-
19
- export { Heading };
@@ -1,19 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import cl from 'clsx/lite';
5
- import { forwardRef } from 'react';
6
-
7
- /**
8
- * Use `Ingress` to display text as ingress.
9
- *
10
- * @example
11
- * <Ingress size='lg'>Ingress</Ingress>
12
- */
13
- const Ingress = forwardRef(({ size = 'md', className, spacing, asChild, ...rest }, ref) => {
14
- const Component = asChild ? Slot : 'p';
15
- return (jsx(Component, { ref: ref, className: cl(`ds-ingress`, `ds-ingress--${size}`, spacing && 'ds-ingress--spacing', className), ...rest }));
16
- });
17
- Ingress.displayName = 'Ingress';
18
-
19
- export { Ingress };
@@ -1,24 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import { Slot } from '@radix-ui/react-slot';
4
- import cl from 'clsx/lite';
5
- import { forwardRef } from 'react';
6
-
7
- const lineHeightMap = {
8
- short: 'ds-line-height--sm',
9
- default: 'ds-line-height--md',
10
- long: 'ds-line-height--lg',
11
- };
12
- /**
13
- * Use `Paragraph` to display text with paragraph text styles.
14
- *
15
- * @example
16
- * <Paragraph size='lg'>Paragraph</Paragraph>
17
- */
18
- const Paragraph = forwardRef(({ className, spacing, size = 'md', asChild, variant, ...rest }, ref) => {
19
- const Component = asChild ? Slot : 'p';
20
- return (jsx(Component, { ref: ref, className: cl('ds-paragraph', spacing && 'ds-paragraph--spacing', `ds-paragraph--${size}`, lineHeightMap[variant ?? 'default'], className), ...rest }));
21
- });
22
- Paragraph.displayName = 'Paragraph';
23
-
24
- export { Paragraph };
@@ -1,15 +0,0 @@
1
- 'use client';
2
- import { jsxs, Fragment, jsx } from 'react/jsx-runtime';
3
- import { ValidationMessage } from '../Typography/ValidationMessage/ValidationMessage.js';
4
-
5
- const defaultLabel = (count) => count > -1 ? `${count} tegn igjen` : `${Math.abs(count)} tegn for mye`;
6
- const defaultSrLabel = (maxCount) => `Tekstfelt med plass til ${maxCount} tegn`;
7
- const CharacterCounter = ({ label = defaultLabel, srLabel: propsSrLabel, maxCount, value, id, size, }) => {
8
- const currentCount = maxCount - value.length;
9
- const hasExceededLimit = value.length > maxCount;
10
- const srLabel = propsSrLabel ? propsSrLabel : defaultSrLabel(maxCount);
11
- return (jsxs(Fragment, { children: [jsx("span", { className: `ds-sr-only`, id: id, children: srLabel }), jsx(ValidationMessage, { asChild: true, size: size, error: hasExceededLimit, children: jsx("span", { "aria-live": hasExceededLimit ? 'polite' : 'off', children: label(currentCount) }) })] }));
12
- };
13
- CharacterCounter.displayName = 'CharacterCounter';
14
-
15
- export { CharacterCounter };
@@ -1,28 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import cl from 'clsx/lite';
4
- import { createContext, forwardRef, useState } from 'react';
5
- import { Fieldset } from '../Fieldset/Fieldset.js';
6
-
7
- const CheckboxGroupContext = createContext(null);
8
- const CheckboxGroup = forwardRef(({ onChange, children, value, readOnly, defaultValue, size = 'md', ...rest }, ref) => {
9
- const [internalValue, setInternalValue] = useState(defaultValue ?? []);
10
- const toggleValue = (checkboxValue) => {
11
- const currentValue = value ?? internalValue;
12
- const updatedValue = currentValue.includes(checkboxValue)
13
- ? currentValue.filter((x) => x !== checkboxValue)
14
- : [...currentValue, checkboxValue];
15
- if (typeof value !== 'undefined' || value !== null) {
16
- setInternalValue(updatedValue);
17
- }
18
- onChange?.(updatedValue);
19
- };
20
- return (jsx(Fieldset, { readOnly: readOnly, size: size, ref: ref, ...rest, children: jsx(CheckboxGroupContext.Provider, { value: {
21
- value,
22
- defaultValue,
23
- toggleValue,
24
- }, children: jsx("div", { className: cl('ds-checkbox__group', `ds-checkbox__group--${size}`), children: children }) }) }));
25
- });
26
- CheckboxGroup.displayName = 'CheckboxGroup';
27
-
28
- export { CheckboxGroup, CheckboxGroupContext };
@@ -1,10 +0,0 @@
1
- 'use client';
2
- import { Checkbox as Checkbox$1 } from './Checkbox.js';
3
- import { CheckboxGroup } from './CheckboxGroup.js';
4
-
5
- /** `<input> element with `type="checkbox"` used for selecting one option */
6
- const Checkbox = Checkbox$1;
7
- Checkbox.Group = CheckboxGroup;
8
- Checkbox.Group.displayName = 'Checkbox.Group';
9
-
10
- export { Checkbox, CheckboxGroup };
@@ -1,42 +0,0 @@
1
- 'use client';
2
- import { useContext } from 'react';
3
- import { useFormField } from '../useFormField.js';
4
- import { CheckboxGroupContext } from './CheckboxGroup.js';
5
-
6
- /** Handles props for `Checkbox` in context with `Checkbox.Group` (and `Fieldset`) */
7
- const useCheckbox = (props) => {
8
- const checkboxGroup = useContext(CheckboxGroupContext);
9
- const { inputProps, readOnly, ...rest } = useFormField(props, 'checkbox');
10
- return {
11
- ...rest,
12
- readOnly,
13
- inputProps: {
14
- ...inputProps,
15
- readOnly,
16
- type: 'checkbox',
17
- defaultChecked: checkboxGroup?.defaultValue
18
- ? checkboxGroup?.defaultValue.includes(props.value)
19
- : props.defaultChecked,
20
- checked: checkboxGroup?.value
21
- ? checkboxGroup?.value.includes(props.value)
22
- : props.checked,
23
- onClick: (e) => {
24
- if (readOnly) {
25
- e.preventDefault();
26
- return;
27
- }
28
- props?.onClick?.(e);
29
- },
30
- onChange: (e) => {
31
- if (readOnly) {
32
- e.preventDefault();
33
- return;
34
- }
35
- props?.onChange?.(e);
36
- checkboxGroup?.toggleValue(props.value);
37
- },
38
- },
39
- };
40
- };
41
-
42
- export { useCheckbox };
@@ -1,20 +0,0 @@
1
- 'use client';
2
- import { jsx } from 'react/jsx-runtime';
3
- import cl from 'clsx/lite';
4
- import { createContext, forwardRef, useId } from 'react';
5
- import { Fieldset } from '../Fieldset/Fieldset.js';
6
-
7
- const RadioGroupContext = createContext(null);
8
- const RadioGroup = forwardRef(({ onChange, children, value, readOnly, defaultValue, name, size = 'md', required, inline, className, ...rest }, ref) => {
9
- const nameId = useId();
10
- return (jsx(Fieldset, { readOnly: readOnly, size: size, className: className, ref: ref, ...rest, children: jsx(RadioGroupContext.Provider, { value: {
11
- value,
12
- defaultValue,
13
- name: name ?? `radiogroup-name-${nameId}`,
14
- onChange,
15
- required,
16
- }, children: jsx("div", { className: cl('ds-radio__group', `ds-radio__group--${size}`, inline && 'ds-radio__group--horizontal'), children: children }) }) }));
17
- });
18
- RadioGroup.displayName = 'RadioGroup';
19
-
20
- export { RadioGroup, RadioGroupContext };
@@ -1,10 +0,0 @@
1
- 'use client';
2
- import { Radio as Radio$1 } from './Radio.js';
3
- import { RadioGroup } from './RadioGroup.js';
4
-
5
- /** `<input> element with `type="radio"` used for selecting one option */
6
- const Radio = Radio$1;
7
- Radio.Group = RadioGroup;
8
- Radio.Group.displayName = 'Radio.Group';
9
-
10
- export { Radio, RadioGroup };
@@ -1,44 +0,0 @@
1
- 'use client';
2
- import { useContext } from 'react';
3
- import { useFormField } from '../useFormField.js';
4
- import { RadioGroupContext } from './RadioGroup.js';
5
-
6
- /** Handles props for `Radio` in context with `Radio.Group` (and `Fieldset`) */
7
- const useRadio = (props) => {
8
- const radioGroup = useContext(RadioGroupContext);
9
- const { inputProps, readOnly, ...rest } = useFormField(props, 'radio');
10
- return {
11
- ...rest,
12
- readOnly,
13
- inputProps: {
14
- ...inputProps,
15
- readOnly,
16
- type: 'radio',
17
- name: radioGroup?.name ?? props.name,
18
- required: radioGroup?.required,
19
- defaultChecked: radioGroup?.defaultValue
20
- ? radioGroup?.defaultValue === props.value
21
- : props.defaultChecked,
22
- checked: radioGroup?.value
23
- ? radioGroup?.value === props.value
24
- : props.checked,
25
- onClick: (e) => {
26
- if (readOnly) {
27
- e.preventDefault();
28
- return;
29
- }
30
- props?.onClick?.(e);
31
- },
32
- onChange: (e) => {
33
- if (readOnly) {
34
- e.preventDefault();
35
- return;
36
- }
37
- props?.onChange?.(e);
38
- radioGroup?.onChange?.(props.value);
39
- },
40
- },
41
- };
42
- };
43
-
44
- export { useRadio };
@@ -1,37 +0,0 @@
1
- 'use client';
2
- import { useContext } from 'react';
3
- import { FieldsetContext } from '../Fieldset/FieldsetContext.js';
4
- import { useFormField } from '../useFormField.js';
5
-
6
- /** Handles props for `Search` in context with `Fieldset` */
7
- const useSearch = (props) => {
8
- const fieldset = useContext(FieldsetContext);
9
- const { inputProps, readOnly, size = fieldset?.size ?? 'md', ...rest } = useFormField(props, 'search');
10
- return {
11
- ...rest,
12
- readOnly,
13
- size,
14
- inputProps: {
15
- ...inputProps,
16
- type: 'search',
17
- name: props.name ?? 'q',
18
- readOnly,
19
- onClick: (e) => {
20
- if (readOnly) {
21
- e.preventDefault();
22
- return;
23
- }
24
- props?.onClick?.(e);
25
- },
26
- onChange: (e) => {
27
- if (readOnly) {
28
- e.preventDefault();
29
- return;
30
- }
31
- props?.onChange?.(e);
32
- },
33
- },
34
- };
35
- };
36
-
37
- export { useSearch };