@digdir/designsystemet-react 1.0.0-next.46 → 1.0.0-next.48

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 (436) hide show
  1. package/dist/cjs/components/Alert/Alert.js +2 -1
  2. package/dist/cjs/components/Badge/Badge.js +3 -7
  3. package/dist/cjs/components/Badge/BadgePosition.js +9 -0
  4. package/dist/cjs/components/Badge/index.js +6 -0
  5. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js +18 -0
  6. package/dist/cjs/components/Breadcrumbs/index.js +13 -8
  7. package/dist/cjs/components/Button/Button.js +1 -0
  8. package/dist/cjs/components/Card/Card.js +1 -0
  9. package/dist/cjs/components/Card/index.js +10 -0
  10. package/dist/cjs/components/Checkbox/Checkbox.js +3 -2
  11. package/dist/cjs/components/Chip/Chips.js +1 -0
  12. package/dist/cjs/components/Combobox/Combobox.js +5 -2
  13. package/dist/cjs/components/Combobox/Custom.js +1 -1
  14. package/dist/cjs/components/Combobox/index.js +3 -0
  15. package/dist/cjs/components/Combobox/internal/ComboboxChips.js +1 -1
  16. package/dist/cjs/components/Details/Details.js +3 -2
  17. package/dist/cjs/components/Details/DetailsContent.js +1 -0
  18. package/dist/cjs/components/Details/DetailsSummary.js +1 -0
  19. package/dist/cjs/components/Details/index.js +4 -3
  20. package/dist/cjs/components/Divider/Divider.js +6 -0
  21. package/dist/cjs/components/Dropdown/Dropdown.js +27 -0
  22. package/dist/cjs/components/Dropdown/DropdownTriggerContext.js +4 -1
  23. package/dist/cjs/components/Dropdown/index.js +11 -9
  24. package/dist/cjs/components/ErrorSummary/ErrorSummary.js +20 -2
  25. package/dist/cjs/components/ErrorSummary/ErrorSummaryItem.js +10 -4
  26. package/dist/cjs/components/ErrorSummary/ErrorSummaryLink.js +15 -0
  27. package/dist/cjs/components/ErrorSummary/index.js +15 -4
  28. package/dist/cjs/components/Field/Field.js +11 -0
  29. package/dist/cjs/components/Field/FieldAffix.js +21 -0
  30. package/dist/cjs/components/Field/FieldCounter.js +9 -0
  31. package/dist/cjs/components/Field/index.js +7 -5
  32. package/dist/cjs/components/Fieldset/Fieldset.js +15 -0
  33. package/dist/cjs/components/Fieldset/FieldsetDescription.js +8 -0
  34. package/dist/cjs/components/Fieldset/FieldsetLegend.js +6 -0
  35. package/dist/cjs/components/Fieldset/index.js +10 -3
  36. package/dist/cjs/components/Input/Input.js +2 -3
  37. package/dist/cjs/components/Label/Label.js +2 -2
  38. package/dist/cjs/components/Link/Link.js +6 -0
  39. package/dist/cjs/components/List/Lists.js +20 -0
  40. package/dist/cjs/components/Modal/Modal.js +23 -0
  41. package/dist/cjs/components/Modal/ModalBlock.js +16 -0
  42. package/dist/cjs/components/Modal/ModalTrigger.js +11 -0
  43. package/dist/cjs/components/Modal/ModalTriggerContext.js +11 -0
  44. package/dist/cjs/components/Modal/index.js +13 -0
  45. package/dist/cjs/components/Pagination/Pagination.js +18 -0
  46. package/dist/cjs/components/Pagination/PaginationButton.js +8 -0
  47. package/dist/cjs/components/Pagination/PaginationItem.js +10 -0
  48. package/dist/cjs/components/Pagination/PaginationList.js +12 -0
  49. package/dist/cjs/components/Pagination/index.js +18 -0
  50. package/dist/cjs/components/Pagination/usePagination.js +29 -1
  51. package/dist/cjs/components/Paragraph/Paragraph.js +1 -0
  52. package/dist/cjs/components/Popover/Popover.js +17 -0
  53. package/dist/cjs/components/Popover/PopoverTrigger.js +27 -2
  54. package/dist/cjs/components/Popover/PopoverTriggerContext.js +11 -0
  55. package/dist/cjs/components/Popover/index.js +15 -3
  56. package/dist/cjs/components/Radio/Radio.js +3 -2
  57. package/dist/cjs/components/Search/Search.js +16 -0
  58. package/dist/cjs/components/Search/SearchButton.js +9 -0
  59. package/dist/cjs/components/Search/SearchClear.js +9 -0
  60. package/dist/cjs/components/Search/SearchInput.js +8 -0
  61. package/dist/cjs/components/Search/index.js +11 -7
  62. package/dist/cjs/components/Select/Select.js +9 -0
  63. package/dist/cjs/components/Select/SelectOptgroup.js +11 -0
  64. package/dist/cjs/components/Select/SelectOption.js +9 -0
  65. package/dist/cjs/components/Select/index.js +9 -0
  66. package/dist/cjs/components/Skeleton/Skeleton.js +5 -4
  67. package/dist/cjs/components/SkipLink/SkipLink.js +7 -0
  68. package/dist/cjs/components/Spinner/Spinner.js +6 -1
  69. package/dist/cjs/components/Suggestion/Suggestion.js +55 -0
  70. package/dist/cjs/components/Suggestion/SuggestionClear.js +48 -0
  71. package/dist/cjs/components/Suggestion/SuggestionEmpty.js +23 -0
  72. package/dist/cjs/components/Suggestion/SuggestionInput.js +45 -0
  73. package/dist/cjs/components/Suggestion/SuggestionList.js +30 -0
  74. package/dist/cjs/components/Suggestion/SuggestionOption.js +12 -0
  75. package/dist/cjs/components/Suggestion/index.js +44 -0
  76. package/dist/cjs/components/Switch/Switch.js +1 -0
  77. package/dist/cjs/components/Table/Table.js +25 -0
  78. package/dist/cjs/components/Table/TableBody.js +11 -0
  79. package/dist/cjs/components/Table/TableCell.js +6 -0
  80. package/dist/cjs/components/Table/TableFoot.js +11 -0
  81. package/dist/cjs/components/Table/TableHead.js +11 -0
  82. package/dist/cjs/components/Table/TableHeaderCell.js +6 -0
  83. package/dist/cjs/components/Table/TableRow.js +9 -0
  84. package/dist/cjs/components/Table/index.js +25 -0
  85. package/dist/cjs/components/Tabs/Tabs.js +1 -2
  86. package/dist/cjs/components/Tabs/TabsList.js +1 -2
  87. package/dist/cjs/components/Tabs/TabsPanel.js +1 -2
  88. package/dist/cjs/components/Tabs/TabsTab.js +1 -0
  89. package/dist/cjs/components/Tabs/index.js +1 -2
  90. package/dist/cjs/components/Tag/Tag.js +3 -2
  91. package/dist/cjs/components/Textarea/Textarea.js +2 -3
  92. package/dist/cjs/components/Textfield/Textfield.js +1 -3
  93. package/dist/cjs/components/ToggleGroup/ToggleGroup.js +1 -0
  94. package/dist/cjs/components/ToggleGroup/index.js +4 -4
  95. package/dist/cjs/components/Tooltip/Tooltip.js +8 -4
  96. package/dist/cjs/components/ValidationMessage/ValidationMessage.js +6 -1
  97. package/dist/cjs/index.js +14 -2
  98. package/dist/cjs/utilities/RovingFocus/RovingFocusRoot.js +1 -1
  99. package/dist/esm/components/Alert/Alert.js +2 -1
  100. package/dist/esm/components/Badge/Badge.js +3 -7
  101. package/dist/esm/components/Badge/BadgePosition.js +9 -0
  102. package/dist/esm/components/Badge/index.js +6 -0
  103. package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +18 -0
  104. package/dist/esm/components/Breadcrumbs/index.js +13 -8
  105. package/dist/esm/components/Button/Button.js +1 -0
  106. package/dist/esm/components/Card/Card.js +1 -0
  107. package/dist/esm/components/Card/index.js +10 -0
  108. package/dist/esm/components/Checkbox/Checkbox.js +3 -2
  109. package/dist/esm/components/Chip/Chips.js +1 -0
  110. package/dist/esm/components/Combobox/Combobox.js +5 -2
  111. package/dist/esm/components/Combobox/Custom.js +1 -1
  112. package/dist/esm/components/Combobox/index.js +3 -0
  113. package/dist/esm/components/Combobox/internal/ComboboxChips.js +1 -1
  114. package/dist/esm/components/Details/Details.js +3 -2
  115. package/dist/esm/components/Details/DetailsContent.js +1 -0
  116. package/dist/esm/components/Details/DetailsSummary.js +1 -0
  117. package/dist/esm/components/Details/index.js +4 -3
  118. package/dist/esm/components/Divider/Divider.js +6 -0
  119. package/dist/esm/components/Dropdown/Dropdown.js +27 -0
  120. package/dist/esm/components/Dropdown/DropdownTriggerContext.js +4 -1
  121. package/dist/esm/components/Dropdown/index.js +11 -9
  122. package/dist/esm/components/ErrorSummary/ErrorSummary.js +20 -2
  123. package/dist/esm/components/ErrorSummary/ErrorSummaryItem.js +10 -4
  124. package/dist/esm/components/ErrorSummary/ErrorSummaryLink.js +13 -0
  125. package/dist/esm/components/ErrorSummary/index.js +15 -5
  126. package/dist/esm/components/Field/Field.js +11 -0
  127. package/dist/esm/components/Field/FieldAffix.js +21 -0
  128. package/dist/esm/components/Field/FieldCounter.js +9 -0
  129. package/dist/esm/components/Field/index.js +7 -5
  130. package/dist/esm/components/Fieldset/Fieldset.js +15 -0
  131. package/dist/esm/components/Fieldset/FieldsetDescription.js +8 -0
  132. package/dist/esm/components/Fieldset/FieldsetLegend.js +6 -0
  133. package/dist/esm/components/Fieldset/index.js +10 -3
  134. package/dist/esm/components/Input/Input.js +2 -3
  135. package/dist/esm/components/Label/Label.js +2 -2
  136. package/dist/esm/components/Link/Link.js +6 -0
  137. package/dist/esm/components/List/Lists.js +20 -0
  138. package/dist/esm/components/Modal/Modal.js +23 -0
  139. package/dist/esm/components/Modal/ModalBlock.js +16 -0
  140. package/dist/esm/components/Modal/ModalTrigger.js +11 -0
  141. package/dist/esm/components/Modal/ModalTriggerContext.js +11 -0
  142. package/dist/esm/components/Modal/index.js +13 -0
  143. package/dist/esm/components/Pagination/Pagination.js +18 -0
  144. package/dist/esm/components/Pagination/PaginationButton.js +8 -0
  145. package/dist/esm/components/Pagination/PaginationItem.js +10 -0
  146. package/dist/esm/components/Pagination/PaginationList.js +12 -0
  147. package/dist/esm/components/Pagination/index.js +18 -0
  148. package/dist/esm/components/Pagination/usePagination.js +29 -1
  149. package/dist/esm/components/Paragraph/Paragraph.js +1 -0
  150. package/dist/esm/components/Popover/Popover.js +17 -0
  151. package/dist/esm/components/Popover/PopoverTrigger.js +28 -3
  152. package/dist/esm/components/Popover/PopoverTriggerContext.js +11 -0
  153. package/dist/esm/components/Popover/index.js +15 -3
  154. package/dist/esm/components/Radio/Radio.js +3 -2
  155. package/dist/esm/components/Search/Search.js +16 -0
  156. package/dist/esm/components/Search/SearchButton.js +9 -0
  157. package/dist/esm/components/Search/SearchClear.js +9 -0
  158. package/dist/esm/components/Search/SearchInput.js +8 -0
  159. package/dist/esm/components/Search/index.js +11 -7
  160. package/dist/esm/components/Select/Select.js +9 -0
  161. package/dist/esm/components/Select/SelectOptgroup.js +11 -0
  162. package/dist/esm/components/Select/SelectOption.js +9 -0
  163. package/dist/esm/components/Select/index.js +9 -0
  164. package/dist/esm/components/Skeleton/Skeleton.js +5 -4
  165. package/dist/esm/components/SkipLink/SkipLink.js +7 -0
  166. package/dist/esm/components/Spinner/Spinner.js +6 -1
  167. package/dist/esm/components/Suggestion/Suggestion.js +52 -0
  168. package/dist/esm/components/Suggestion/SuggestionClear.js +45 -0
  169. package/dist/esm/components/Suggestion/SuggestionEmpty.js +21 -0
  170. package/dist/esm/components/Suggestion/SuggestionInput.js +43 -0
  171. package/dist/esm/components/Suggestion/SuggestionList.js +28 -0
  172. package/dist/esm/components/Suggestion/SuggestionOption.js +10 -0
  173. package/dist/esm/components/Suggestion/index.js +37 -0
  174. package/dist/esm/components/Switch/Switch.js +1 -0
  175. package/dist/esm/components/Table/Table.js +25 -0
  176. package/dist/esm/components/Table/TableBody.js +11 -0
  177. package/dist/esm/components/Table/TableCell.js +6 -0
  178. package/dist/esm/components/Table/TableFoot.js +11 -0
  179. package/dist/esm/components/Table/TableHead.js +11 -0
  180. package/dist/esm/components/Table/TableHeaderCell.js +6 -0
  181. package/dist/esm/components/Table/TableRow.js +9 -0
  182. package/dist/esm/components/Table/index.js +25 -0
  183. package/dist/esm/components/Tabs/Tabs.js +1 -2
  184. package/dist/esm/components/Tabs/TabsList.js +1 -2
  185. package/dist/esm/components/Tabs/TabsPanel.js +1 -2
  186. package/dist/esm/components/Tabs/TabsTab.js +1 -0
  187. package/dist/esm/components/Tabs/index.js +1 -2
  188. package/dist/esm/components/Tag/Tag.js +3 -2
  189. package/dist/esm/components/Textarea/Textarea.js +2 -3
  190. package/dist/esm/components/Textfield/Textfield.js +1 -3
  191. package/dist/esm/components/ToggleGroup/ToggleGroup.js +1 -0
  192. package/dist/esm/components/ToggleGroup/index.js +4 -4
  193. package/dist/esm/components/Tooltip/Tooltip.js +9 -5
  194. package/dist/esm/components/ValidationMessage/ValidationMessage.js +6 -1
  195. package/dist/esm/index.js +7 -1
  196. package/dist/esm/utilities/RovingFocus/RovingFocusRoot.js +1 -1
  197. package/dist/types/components/Alert/Alert.d.ts +6 -3
  198. package/dist/types/components/Alert/Alert.d.ts.map +1 -1
  199. package/dist/types/components/Alert/index.d.ts +2 -1
  200. package/dist/types/components/Alert/index.d.ts.map +1 -1
  201. package/dist/types/components/Badge/Badge.d.ts +3 -7
  202. package/dist/types/components/Badge/Badge.d.ts.map +1 -1
  203. package/dist/types/components/Badge/BadgePosition.d.ts +9 -0
  204. package/dist/types/components/Badge/BadgePosition.d.ts.map +1 -1
  205. package/dist/types/components/Badge/index.d.ts +6 -0
  206. package/dist/types/components/Badge/index.d.ts.map +1 -1
  207. package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts +18 -0
  208. package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  209. package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts +1 -3
  210. package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts.map +1 -1
  211. package/dist/types/components/Breadcrumbs/index.d.ts +14 -11
  212. package/dist/types/components/Breadcrumbs/index.d.ts.map +1 -1
  213. package/dist/types/components/Button/Button.d.ts +11 -6
  214. package/dist/types/components/Button/Button.d.ts.map +1 -1
  215. package/dist/types/components/Card/Card.d.ts +9 -0
  216. package/dist/types/components/Card/Card.d.ts.map +1 -1
  217. package/dist/types/components/Card/index.d.ts +10 -0
  218. package/dist/types/components/Card/index.d.ts.map +1 -1
  219. package/dist/types/components/Checkbox/Checkbox.d.ts +17 -6
  220. package/dist/types/components/Checkbox/Checkbox.d.ts.map +1 -1
  221. package/dist/types/components/Checkbox/index.d.ts +2 -1
  222. package/dist/types/components/Checkbox/index.d.ts.map +1 -1
  223. package/dist/types/components/Chip/Chips.d.ts +1 -0
  224. package/dist/types/components/Chip/Chips.d.ts.map +1 -1
  225. package/dist/types/components/Combobox/Combobox.d.ts +3 -0
  226. package/dist/types/components/Combobox/Combobox.d.ts.map +1 -1
  227. package/dist/types/components/Combobox/ComboboxContext.d.ts +1 -1
  228. package/dist/types/components/Combobox/ComboboxContext.d.ts.map +1 -1
  229. package/dist/types/components/Combobox/Option/Option.d.ts +2 -2
  230. package/dist/types/components/Combobox/Option/Option.d.ts.map +1 -1
  231. package/dist/types/components/Combobox/Option/useComboboxOption.d.ts +6 -4
  232. package/dist/types/components/Combobox/Option/useComboboxOption.d.ts.map +1 -1
  233. package/dist/types/components/Combobox/index.d.ts +3 -0
  234. package/dist/types/components/Combobox/index.d.ts.map +1 -1
  235. package/dist/types/components/Combobox/useFloatingCombobox.d.ts +2 -2
  236. package/dist/types/components/Combobox/useFloatingCombobox.d.ts.map +1 -1
  237. package/dist/types/components/Details/Details.d.ts +9 -4
  238. package/dist/types/components/Details/Details.d.ts.map +1 -1
  239. package/dist/types/components/Details/DetailsContent.d.ts +1 -0
  240. package/dist/types/components/Details/DetailsContent.d.ts.map +1 -1
  241. package/dist/types/components/Details/DetailsSummary.d.ts +1 -0
  242. package/dist/types/components/Details/DetailsSummary.d.ts.map +1 -1
  243. package/dist/types/components/Details/index.d.ts +4 -3
  244. package/dist/types/components/Details/index.d.ts.map +1 -1
  245. package/dist/types/components/Divider/Divider.d.ts +6 -0
  246. package/dist/types/components/Divider/Divider.d.ts.map +1 -1
  247. package/dist/types/components/Dropdown/Dropdown.d.ts +31 -2
  248. package/dist/types/components/Dropdown/Dropdown.d.ts.map +1 -1
  249. package/dist/types/components/Dropdown/DropdownTriggerContext.d.ts +4 -1
  250. package/dist/types/components/Dropdown/DropdownTriggerContext.d.ts.map +1 -1
  251. package/dist/types/components/Dropdown/index.d.ts +11 -9
  252. package/dist/types/components/Dropdown/index.d.ts.map +1 -1
  253. package/dist/types/components/ErrorSummary/ErrorSummary.d.ts +22 -2
  254. package/dist/types/components/ErrorSummary/ErrorSummary.d.ts.map +1 -1
  255. package/dist/types/components/ErrorSummary/ErrorSummaryItem.d.ts +11 -21
  256. package/dist/types/components/ErrorSummary/ErrorSummaryItem.d.ts.map +1 -1
  257. package/dist/types/components/ErrorSummary/ErrorSummaryLink.d.ts +10 -0
  258. package/dist/types/components/ErrorSummary/ErrorSummaryLink.d.ts.map +1 -0
  259. package/dist/types/components/ErrorSummary/index.d.ts +24 -7
  260. package/dist/types/components/ErrorSummary/index.d.ts.map +1 -1
  261. package/dist/types/components/Field/Field.d.ts +15 -2
  262. package/dist/types/components/Field/Field.d.ts.map +1 -1
  263. package/dist/types/components/Field/FieldAffix.d.ts +21 -0
  264. package/dist/types/components/Field/FieldAffix.d.ts.map +1 -1
  265. package/dist/types/components/Field/FieldCounter.d.ts +35 -6
  266. package/dist/types/components/Field/FieldCounter.d.ts.map +1 -1
  267. package/dist/types/components/Field/index.d.ts +7 -5
  268. package/dist/types/components/Field/index.d.ts.map +1 -1
  269. package/dist/types/components/Fieldset/Fieldset.d.ts +15 -0
  270. package/dist/types/components/Fieldset/Fieldset.d.ts.map +1 -1
  271. package/dist/types/components/Fieldset/FieldsetDescription.d.ts +8 -0
  272. package/dist/types/components/Fieldset/FieldsetDescription.d.ts.map +1 -1
  273. package/dist/types/components/Fieldset/FieldsetLegend.d.ts +6 -0
  274. package/dist/types/components/Fieldset/FieldsetLegend.d.ts.map +1 -1
  275. package/dist/types/components/Fieldset/index.d.ts +10 -3
  276. package/dist/types/components/Fieldset/index.d.ts.map +1 -1
  277. package/dist/types/components/Heading/Heading.d.ts +6 -2
  278. package/dist/types/components/Heading/Heading.d.ts.map +1 -1
  279. package/dist/types/components/Heading/index.d.ts +2 -1
  280. package/dist/types/components/Heading/index.d.ts.map +1 -1
  281. package/dist/types/components/Input/Input.d.ts +22 -11
  282. package/dist/types/components/Input/Input.d.ts.map +1 -1
  283. package/dist/types/components/Label/Label.d.ts +2 -2
  284. package/dist/types/components/Label/index.d.ts +2 -1
  285. package/dist/types/components/Label/index.d.ts.map +1 -1
  286. package/dist/types/components/Link/Link.d.ts +13 -11
  287. package/dist/types/components/Link/Link.d.ts.map +1 -1
  288. package/dist/types/components/List/Lists.d.ts +20 -0
  289. package/dist/types/components/List/Lists.d.ts.map +1 -1
  290. package/dist/types/components/Modal/Modal.d.ts +31 -0
  291. package/dist/types/components/Modal/Modal.d.ts.map +1 -1
  292. package/dist/types/components/Modal/ModalBlock.d.ts +16 -0
  293. package/dist/types/components/Modal/ModalBlock.d.ts.map +1 -1
  294. package/dist/types/components/Modal/ModalTrigger.d.ts +13 -4
  295. package/dist/types/components/Modal/ModalTrigger.d.ts.map +1 -1
  296. package/dist/types/components/Modal/ModalTriggerContext.d.ts +12 -1
  297. package/dist/types/components/Modal/ModalTriggerContext.d.ts.map +1 -1
  298. package/dist/types/components/Modal/index.d.ts +15 -4
  299. package/dist/types/components/Modal/index.d.ts.map +1 -1
  300. package/dist/types/components/Pagination/Pagination.d.ts +18 -0
  301. package/dist/types/components/Pagination/Pagination.d.ts.map +1 -1
  302. package/dist/types/components/Pagination/PaginationButton.d.ts +8 -0
  303. package/dist/types/components/Pagination/PaginationButton.d.ts.map +1 -1
  304. package/dist/types/components/Pagination/PaginationItem.d.ts +10 -0
  305. package/dist/types/components/Pagination/PaginationItem.d.ts.map +1 -1
  306. package/dist/types/components/Pagination/PaginationList.d.ts +12 -0
  307. package/dist/types/components/Pagination/PaginationList.d.ts.map +1 -1
  308. package/dist/types/components/Pagination/index.d.ts +18 -0
  309. package/dist/types/components/Pagination/index.d.ts.map +1 -1
  310. package/dist/types/components/Pagination/usePagination.d.ts +29 -1
  311. package/dist/types/components/Pagination/usePagination.d.ts.map +1 -1
  312. package/dist/types/components/Paragraph/Paragraph.d.ts +1 -0
  313. package/dist/types/components/Paragraph/Paragraph.d.ts.map +1 -1
  314. package/dist/types/components/Paragraph/index.d.ts +2 -1
  315. package/dist/types/components/Paragraph/index.d.ts.map +1 -1
  316. package/dist/types/components/Popover/Popover.d.ts +34 -9
  317. package/dist/types/components/Popover/Popover.d.ts.map +1 -1
  318. package/dist/types/components/Popover/PopoverTrigger.d.ts +33 -0
  319. package/dist/types/components/Popover/PopoverTrigger.d.ts.map +1 -1
  320. package/dist/types/components/Popover/PopoverTriggerContext.d.ts +11 -0
  321. package/dist/types/components/Popover/PopoverTriggerContext.d.ts.map +1 -1
  322. package/dist/types/components/Popover/index.d.ts +25 -5
  323. package/dist/types/components/Popover/index.d.ts.map +1 -1
  324. package/dist/types/components/Radio/Radio.d.ts +17 -6
  325. package/dist/types/components/Radio/Radio.d.ts.map +1 -1
  326. package/dist/types/components/Radio/index.d.ts +2 -1
  327. package/dist/types/components/Radio/index.d.ts.map +1 -1
  328. package/dist/types/components/Search/Search.d.ts +16 -0
  329. package/dist/types/components/Search/Search.d.ts.map +1 -1
  330. package/dist/types/components/Search/SearchButton.d.ts +15 -1
  331. package/dist/types/components/Search/SearchButton.d.ts.map +1 -1
  332. package/dist/types/components/Search/SearchClear.d.ts +9 -0
  333. package/dist/types/components/Search/SearchClear.d.ts.map +1 -1
  334. package/dist/types/components/Search/SearchInput.d.ts +8 -0
  335. package/dist/types/components/Search/SearchInput.d.ts.map +1 -1
  336. package/dist/types/components/Search/index.d.ts +11 -7
  337. package/dist/types/components/Search/index.d.ts.map +1 -1
  338. package/dist/types/components/Select/Select.d.ts +17 -4
  339. package/dist/types/components/Select/Select.d.ts.map +1 -1
  340. package/dist/types/components/Select/SelectOptgroup.d.ts +11 -0
  341. package/dist/types/components/Select/SelectOptgroup.d.ts.map +1 -1
  342. package/dist/types/components/Select/SelectOption.d.ts +9 -0
  343. package/dist/types/components/Select/SelectOption.d.ts.map +1 -1
  344. package/dist/types/components/Select/index.d.ts +9 -0
  345. package/dist/types/components/Select/index.d.ts.map +1 -1
  346. package/dist/types/components/Skeleton/Skeleton.d.ts +15 -10
  347. package/dist/types/components/Skeleton/Skeleton.d.ts.map +1 -1
  348. package/dist/types/components/SkipLink/SkipLink.d.ts +19 -4
  349. package/dist/types/components/SkipLink/SkipLink.d.ts.map +1 -1
  350. package/dist/types/components/Spinner/Spinner.d.ts +9 -2
  351. package/dist/types/components/Spinner/Spinner.d.ts.map +1 -1
  352. package/dist/types/components/Spinner/index.d.ts +2 -1
  353. package/dist/types/components/Spinner/index.d.ts.map +1 -1
  354. package/dist/types/components/Suggestion/Suggestion.d.ts +102 -0
  355. package/dist/types/components/Suggestion/Suggestion.d.ts.map +1 -0
  356. package/dist/types/components/Suggestion/SuggestionClear.d.ts +35 -0
  357. package/dist/types/components/Suggestion/SuggestionClear.d.ts.map +1 -0
  358. package/dist/types/components/Suggestion/SuggestionEmpty.d.ts +28 -0
  359. package/dist/types/components/Suggestion/SuggestionEmpty.d.ts.map +1 -0
  360. package/dist/types/components/Suggestion/SuggestionInput.d.ts +21 -0
  361. package/dist/types/components/Suggestion/SuggestionInput.d.ts.map +1 -0
  362. package/dist/types/components/Suggestion/SuggestionList.d.ts +40 -0
  363. package/dist/types/components/Suggestion/SuggestionList.d.ts.map +1 -0
  364. package/dist/types/components/Suggestion/SuggestionOption.d.ts +6 -0
  365. package/dist/types/components/Suggestion/SuggestionOption.d.ts.map +1 -0
  366. package/dist/types/components/Suggestion/index.d.ts +56 -0
  367. package/dist/types/components/Suggestion/index.d.ts.map +1 -0
  368. package/dist/types/components/Switch/Switch.d.ts +15 -5
  369. package/dist/types/components/Switch/Switch.d.ts.map +1 -1
  370. package/dist/types/components/Switch/index.d.ts +2 -1
  371. package/dist/types/components/Switch/index.d.ts.map +1 -1
  372. package/dist/types/components/Table/Table.d.ts +33 -8
  373. package/dist/types/components/Table/Table.d.ts.map +1 -1
  374. package/dist/types/components/Table/TableBody.d.ts +11 -0
  375. package/dist/types/components/Table/TableBody.d.ts.map +1 -1
  376. package/dist/types/components/Table/TableCell.d.ts +6 -0
  377. package/dist/types/components/Table/TableCell.d.ts.map +1 -1
  378. package/dist/types/components/Table/TableFoot.d.ts +11 -0
  379. package/dist/types/components/Table/TableFoot.d.ts.map +1 -1
  380. package/dist/types/components/Table/TableHead.d.ts +11 -0
  381. package/dist/types/components/Table/TableHead.d.ts.map +1 -1
  382. package/dist/types/components/Table/TableHeaderCell.d.ts +6 -0
  383. package/dist/types/components/Table/TableHeaderCell.d.ts.map +1 -1
  384. package/dist/types/components/Table/TableRow.d.ts +9 -0
  385. package/dist/types/components/Table/TableRow.d.ts.map +1 -1
  386. package/dist/types/components/Table/index.d.ts +25 -0
  387. package/dist/types/components/Table/index.d.ts.map +1 -1
  388. package/dist/types/components/Tabs/Tabs.d.ts +25 -8
  389. package/dist/types/components/Tabs/Tabs.d.ts.map +1 -1
  390. package/dist/types/components/Tabs/TabsList.d.ts +1 -2
  391. package/dist/types/components/Tabs/TabsList.d.ts.map +1 -1
  392. package/dist/types/components/Tabs/TabsPanel.d.ts +9 -4
  393. package/dist/types/components/Tabs/TabsPanel.d.ts.map +1 -1
  394. package/dist/types/components/Tabs/TabsTab.d.ts +7 -2
  395. package/dist/types/components/Tabs/TabsTab.d.ts.map +1 -1
  396. package/dist/types/components/Tabs/index.d.ts +1 -2
  397. package/dist/types/components/Tabs/index.d.ts.map +1 -1
  398. package/dist/types/components/Tag/Tag.d.ts +3 -2
  399. package/dist/types/components/Tag/Tag.d.ts.map +1 -1
  400. package/dist/types/components/Tag/index.d.ts +2 -1
  401. package/dist/types/components/Tag/index.d.ts.map +1 -1
  402. package/dist/types/components/Textarea/Textarea.d.ts +2 -3
  403. package/dist/types/components/Textarea/Textarea.d.ts.map +1 -1
  404. package/dist/types/components/Textarea/index.d.ts +2 -1
  405. package/dist/types/components/Textarea/index.d.ts.map +1 -1
  406. package/dist/types/components/Textfield/Textfield.d.ts +30 -12
  407. package/dist/types/components/Textfield/Textfield.d.ts.map +1 -1
  408. package/dist/types/components/Textfield/index.d.ts +2 -1
  409. package/dist/types/components/Textfield/index.d.ts.map +1 -1
  410. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts +25 -8
  411. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts.map +1 -1
  412. package/dist/types/components/ToggleGroup/index.d.ts +13 -9
  413. package/dist/types/components/ToggleGroup/index.d.ts.map +1 -1
  414. package/dist/types/components/Tooltip/Tooltip.d.ts +8 -3
  415. package/dist/types/components/Tooltip/Tooltip.d.ts.map +1 -1
  416. package/dist/types/components/ValidationMessage/ValidationMessage.d.ts +6 -1
  417. package/dist/types/components/ValidationMessage/ValidationMessage.d.ts.map +1 -1
  418. package/dist/types/components/ValidationMessage/index.d.ts +2 -1
  419. package/dist/types/components/ValidationMessage/index.d.ts.map +1 -1
  420. package/dist/types/components/index.d.ts +1 -0
  421. package/dist/types/components/index.d.ts.map +1 -1
  422. package/dist/types/utilities/RovingFocus/useRovingFocus.d.ts +14 -1
  423. package/dist/types/utilities/RovingFocus/useRovingFocus.d.ts.map +1 -1
  424. package/dist/types/utilities/hooks/index.d.ts +0 -1
  425. package/dist/types/utilities/hooks/index.d.ts.map +1 -1
  426. package/dist/types/utilities/hooks/useCheckboxGroup/useCheckboxGroup.d.ts +6 -325
  427. package/dist/types/utilities/hooks/useCheckboxGroup/useCheckboxGroup.d.ts.map +1 -1
  428. package/dist/types/utilities/hooks/useRadioGroup/useRadioGroup.d.ts +13 -327
  429. package/dist/types/utilities/hooks/useRadioGroup/useRadioGroup.d.ts.map +1 -1
  430. package/dist/types/utilities/hooks/useSynchronizedAnimation/useSynchronizedAnimation.d.ts +1 -1
  431. package/dist/types/utilities/hooks/useSynchronizedAnimation/useSynchronizedAnimation.d.ts.map +1 -1
  432. package/package.json +13 -12
  433. package/dist/cjs/utilities/hooks/usePrevious/usePrevious.js +0 -14
  434. package/dist/esm/utilities/hooks/usePrevious/usePrevious.js +0 -12
  435. package/dist/types/utilities/hooks/usePrevious/usePrevious.d.ts +0 -2
  436. package/dist/types/utilities/hooks/usePrevious/usePrevious.d.ts.map +0 -1
@@ -5,6 +5,17 @@ import cl from 'clsx/lite';
5
5
  import { forwardRef, useRef, useEffect } from 'react';
6
6
  import { fieldObserver } from './fieldObserver.js';
7
7
 
8
+ /**
9
+ * Field component, used to wrap a form field.
10
+ *
11
+ * @example
12
+ * <Field>
13
+ * <Label>Kort beskrivelse</Label>
14
+ * <Field.Description>Beskrivelse</Field.Description>
15
+ * <Input />
16
+ * <ValidationMessage>Feilmelding</ValidationMessage>
17
+ * </Field>
18
+ */
8
19
  const Field = forwardRef(function Field({ className, position, ...rest }, ref) {
9
20
  const fieldRef = useRef(null);
10
21
  const mergedRefs = useMergeRefs([fieldRef, ref]);
@@ -3,9 +3,30 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import cl from 'clsx/lite';
4
4
  import { forwardRef } from 'react';
5
5
 
6
+ /**
7
+ * FieldAffixes component, used to wrap a form field.
8
+ *
9
+ * @example
10
+ * <Field.Affixes>
11
+ * <Field.Affix>NOK</Field.Affix>
12
+ * <Input />
13
+ * <Field.Affix>pr. mnd.</Field.Affix>
14
+ * </Field.Affixes>
15
+ */
6
16
  const FieldAffixes = forwardRef(function FieldAffixes({ className, ...rest }, ref) {
7
17
  return (jsx("div", { className: cl('ds-field-affixes', className), ref: ref, ...rest }));
8
18
  });
19
+ /**
20
+ * FieldAffix component, used to wrap a form field.
21
+ * Use together with Field.Affixes.
22
+ *
23
+ * @example
24
+ * <Field.Affixes>
25
+ * <Field.Affix>NOK</Field.Affix>
26
+ * <Input />
27
+ * <Field.Affix>pr. mnd.</Field.Affix>
28
+ * </Field.Affixes>
29
+ */
9
30
  const FieldAffix = forwardRef(function FieldAffix({ className, ...rest }, ref) {
10
31
  return (jsx("span", { className: cl('ds-field-affix', className), "aria-hidden": 'true', ref: ref, ...rest }));
11
32
  });
@@ -6,6 +6,15 @@ import { ValidationMessage } from '../ValidationMessage/ValidationMessage.js';
6
6
  import { Paragraph } from '../Paragraph/Paragraph.js';
7
7
 
8
8
  const label = (text, count) => text.replace('%d', Math.abs(count).toString());
9
+ /**
10
+ * FieldCounter component, used to display a counter for a form field.
11
+ *
12
+ * @example
13
+ * <Field>
14
+ * <Input />
15
+ * <Field.Counter limit={100} under='%d tegn igjen' over='%d tegn for mye' />
16
+ * </Field>
17
+ */
9
18
  const FieldCounter = forwardRef(function FieldCounter({ limit, under = '%d tegn igjen', over = '%d tegn for mye', ...rest }, ref) {
10
19
  const [count, setCount] = useState(0);
11
20
  const counterRef = useRef(null);
@@ -5,12 +5,14 @@ import { FieldCounter } from './FieldCounter.js';
5
5
  import { FieldDescription } from './FieldDescription.js';
6
6
 
7
7
  /**
8
+ * Field component, used to wrap a form field.
9
+ *
8
10
  * @example
9
- * <Field>
10
- * <Label>Label text</Label>
11
- * <Field.Description>Description</Field.Description>
12
- * <Input />
13
- * <ValidationMessage>Validation message</ValidationMessage>
11
+ * <Field data-my-field>
12
+ * <Label>Kort beskrivelse</Label>
13
+ * <Field.Description>Beskrivelse</Field.Description>
14
+ * <Input />
15
+ * <ValidationMessage>Feilmelding</ValidationMessage>
14
16
  * </Field>
15
17
  */
16
18
  const Field = Object.assign(Field$1, {
@@ -3,6 +3,21 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import cl from 'clsx/lite';
4
4
  import { forwardRef } from 'react';
5
5
 
6
+ /**
7
+ * Fieldset component, used to wrap a form field. Uses native `fieldset` element.
8
+ *
9
+ * @example
10
+ * <Fieldset>
11
+ * <Fieldset.Legend>Skriv inn dine svar</Fieldset.Legend>
12
+ * <Fieldset.Description>
13
+ * Gi en kort beskrivelse i begge feltene
14
+ * </Fieldset.Description>
15
+ * <Field>
16
+ * <Label>Kort beskrivelse</Label>
17
+ * <Input />
18
+ * </Field>
19
+ * </Fieldset>
20
+ */
6
21
  const Fieldset = forwardRef(function Fieldset({ className, ...rest }, ref) {
7
22
  return (jsx("fieldset", { className: cl('ds-fieldset', className), ref: ref, ...rest }));
8
23
  });
@@ -3,6 +3,14 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import { forwardRef } from 'react';
4
4
  import { Paragraph } from '../Paragraph/Paragraph.js';
5
5
 
6
+ /**
7
+ * FieldsetDescription component, used to display a description for a fieldset.
8
+ *
9
+ * @example
10
+ * <Fieldset.Description>
11
+ * Gi en kort beskrivelse i begge feltene
12
+ * </Fieldset.Description>
13
+ */
6
14
  const FieldsetDescription = forwardRef(function FieldsetDescription(rest, ref) {
7
15
  return jsx(Paragraph, { ref: ref, ...rest });
8
16
  });
@@ -3,6 +3,12 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import { forwardRef } from 'react';
4
4
  import { Label } from '../Label/Label.js';
5
5
 
6
+ /**
7
+ * FieldsetLegend component, used to display a legend for a fieldset.
8
+ *
9
+ * @example
10
+ * <Fieldset.Legend>Skriv inn dine svar</Fieldset.Legend>
11
+ */
6
12
  const FieldsetLegend = forwardRef(function FieldsetLegend(rest, ref) {
7
13
  return (jsx(Label, { asChild: true, children: jsx("legend", { ref: ref, ...rest }) }));
8
14
  });
@@ -4,11 +4,18 @@ import { FieldsetDescription } from './FieldsetDescription.js';
4
4
  import { FieldsetLegend } from './FieldsetLegend.js';
5
5
 
6
6
  /**
7
+ * Fieldset component, used to wrap a form field.
8
+ *
7
9
  * @example
8
10
  * <Fieldset>
9
- * <Fieldset.Legend>Legend text</Fieldset.Legend>
10
- * <Fieldset.Description>Description text</Fieldset.Description>
11
- * ...input components
11
+ * <Fieldset.Legend>Skriv inn dine svar</Fieldset.Legend>
12
+ * <Fieldset.Description>
13
+ * Gi en kort beskrivelse i begge feltene
14
+ * </Fieldset.Description>
15
+ * <Field>
16
+ * <Label>Kort beskrivelse</Label>
17
+ * <Input />
18
+ * </Field>
12
19
  * </Fieldset>
13
20
  */
14
21
  const Fieldset = Object.assign(Fieldset$1, {
@@ -3,12 +3,11 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import cl from 'clsx/lite';
4
4
  import { forwardRef } from 'react';
5
5
 
6
- /** Input field
6
+ /**
7
+ * Input renders a native `input` element.
7
8
  *
8
9
  * @example
9
- * ```tsx
10
10
  * <Input />
11
- * ```
12
11
  */
13
12
  const Input = forwardRef(function Input({ type = 'text', className, onChange, onClick, ...rest }, ref) {
14
13
  return (jsx("input", { className: cl(`ds-input`, className), ref: ref, type: type, onChange: (event) => rest.readOnly || onChange?.(event), onClick: (event) => {
@@ -5,10 +5,10 @@ import cl from 'clsx/lite';
5
5
  import { forwardRef } from 'react';
6
6
 
7
7
  /**
8
- * Use `Label` for labels.
8
+ * Use `Label` for labels. Renders a native `label` element.
9
9
  *
10
10
  * @example
11
- * <Label data-size='lg'>Label</Label>
11
+ * <Label data-size='lg' weight='medium'>Label</Label>
12
12
  */
13
13
  const Label = forwardRef(function Label({ className, weight = 'medium', asChild, ...rest }, ref) {
14
14
  const Component = asChild ? Slot : 'label';
@@ -4,6 +4,12 @@ import { Slot } from '@radix-ui/react-slot';
4
4
  import cl from 'clsx/lite';
5
5
  import { forwardRef } from 'react';
6
6
 
7
+ /**
8
+ * Link component, renders a native `a` element.
9
+ *
10
+ * @example
11
+ * <Link href='#'>Link</Link>
12
+ */
7
13
  const Link = forwardRef(({ asChild, className, ...rest }, ref) => {
8
14
  const Component = asChild ? Slot : 'a';
9
15
  return (jsx(Component, { className: cl('ds-link', className), ref: ref, ...rest }));
@@ -8,9 +8,29 @@ const render = (tagName, { asChild, className, ...rest }, ref) => {
8
8
  const Component = asChild ? Slot : tagName;
9
9
  return jsx(Component, { className: cl(`ds-list`, className), ref: ref, ...rest });
10
10
  };
11
+ /**
12
+ * ListUnordered component, used to display a list of items.
13
+ * Renders a native `ul` element.
14
+ *
15
+ * @example
16
+ * <List.Unordered>
17
+ * <List.Item>Item 1</List.Item>
18
+ * <List.Item>Item 2</List.Item>
19
+ * </List.Unordered>
20
+ */
11
21
  const ListUnordered = forwardRef(function ListUnordered(props, ref) {
12
22
  return render('ul', props, ref);
13
23
  });
24
+ /**
25
+ * ListOrdered component, used to display a list of items.
26
+ * Renders a native `ol` element.
27
+ *
28
+ * @example
29
+ * <List.Ordered>
30
+ * <List.Item>Item 1</List.Item>
31
+ * <List.Item>Item 2</List.Item>
32
+ * </List.Ordered>
33
+ */
14
34
  const ListOrdered = forwardRef(function ListOrdered(props, ref) {
15
35
  return render('ol', props, ref);
16
36
  });
@@ -7,6 +7,29 @@ import { forwardRef, useContext, useRef, useEffect } from 'react';
7
7
  import { Context } from './ModalTriggerContext.js';
8
8
  import { Button } from '../Button/Button.js';
9
9
 
10
+ /**
11
+ * Modal component, used to display a modal dialog.
12
+ *
13
+ * @example with TriggerContext
14
+ * <Modal.TriggerContext>
15
+ * <Modal.Trigger>Open Modal</Modal.Trigger>
16
+ * <Modal>
17
+ * <Modal.Block>
18
+ * Content
19
+ * </Modal.Block>
20
+ * </Modal>
21
+ * </Modal.TriggerContext>
22
+ *
23
+ * @example without TriggerContext
24
+ * const modalRef = useRef<HTMLDialogElement>(null);
25
+ *
26
+ * ...
27
+ *
28
+ * <Button onClick={() => modalRef.current?.showModal()}>Open Modal</Button>
29
+ * <Modal ref={modalRef}>
30
+ * Content
31
+ * </Modal>
32
+ */
10
33
  const Modal = forwardRef(function Modal({ asChild, children, className, closeButton = 'Lukk dialogvindu', onClose, open, backdropClose = false, ...rest }, ref) {
11
34
  const contextRef = useContext(Context);
12
35
  const modalRef = useRef(null); // This local ref is used to make sure the modal works without a ModalTriggerContext
@@ -4,6 +4,22 @@ import { Slot } from '@radix-ui/react-slot';
4
4
  import cl from 'clsx/lite';
5
5
  import { forwardRef } from 'react';
6
6
 
7
+ /**
8
+ * ModalBlock component, used to separate content in a modal.
9
+ *
10
+ * @example
11
+ * <Modal>
12
+ * <Modal.Block>
13
+ * Header
14
+ * </Modal.Block>
15
+ * <Modal.Block>
16
+ * Content
17
+ * </Modal.Block>
18
+ * <Modal.Block>
19
+ * Footer
20
+ * </Modal.Block>
21
+ * </Modal>
22
+ */
7
23
  const ModalBlock = forwardRef(function ModalBlock({ asChild, className, ...rest }, ref) {
8
24
  const Component = asChild ? Slot : 'div';
9
25
  return (jsx(Component, { className: cl('ds-modal__block', className), ref: ref, ...rest }));
@@ -5,6 +5,17 @@ import { forwardRef, useContext } from 'react';
5
5
  import { Button } from '../Button/Button.js';
6
6
  import { Context } from './ModalTriggerContext.js';
7
7
 
8
+ /**
9
+ * ModalTrigger component, used within a Modal.TriggerContext to open a modal.
10
+ *
11
+ * @example
12
+ * <Modal.TriggerContext>
13
+ * <Modal.Trigger>Open Modal</Modal.Trigger>
14
+ * <Modal>
15
+ * Content
16
+ * </Modal>
17
+ * </Modal.TriggerContext>
18
+ */
8
19
  const ModalTrigger = forwardRef(function ModalTrigger({ asChild, ...rest }, ref) {
9
20
  const contextRef = useContext(Context);
10
21
  const Component = asChild ? Slot : Button;
@@ -5,6 +5,17 @@ import { createContext, useRef } from 'react';
5
5
  const Context = createContext({
6
6
  current: null,
7
7
  });
8
+ /**
9
+ * ModalTriggerContext component, used to provide a context for a modal trigger.
10
+ *
11
+ * @example
12
+ * <Modal.TriggerContext>
13
+ * <Modal.Trigger>Open Modal</Modal.Trigger>
14
+ * <Modal>
15
+ * Content
16
+ * </Modal>
17
+ * </Modal.TriggerContext>
18
+ */
8
19
  const ModalTriggerContext = ({ children }) => {
9
20
  const contextRef = useRef(null);
10
21
  return jsx(Context.Provider, { value: contextRef, children: children });
@@ -4,6 +4,19 @@ import { ModalBlock } from './ModalBlock.js';
4
4
  import { ModalTrigger } from './ModalTrigger.js';
5
5
  import { ModalTriggerContext } from './ModalTriggerContext.js';
6
6
 
7
+ /**
8
+ * Modal component, used to display a modal dialog.
9
+ *
10
+ * @example
11
+ * <Modal.TriggerContext>
12
+ * <Modal.Trigger>Open Modal</Modal.Trigger>
13
+ * <Modal>
14
+ * <Modal.Block>
15
+ * Content
16
+ * </Modal.Block>
17
+ * </Modal>
18
+ * </Modal.TriggerContext>
19
+ */
7
20
  const Modal = Object.assign(Modal$1, {
8
21
  Block: ModalBlock,
9
22
  TriggerContext: ModalTriggerContext,
@@ -4,6 +4,24 @@ import { Slot } from '@radix-ui/react-slot';
4
4
  import cl from 'clsx/lite';
5
5
  import { forwardRef } from 'react';
6
6
 
7
+ /**
8
+ * Pagination component, used to navigate through a list of items.
9
+ *
10
+ * @example
11
+ * <Pagination>
12
+ * <Pagination.List>
13
+ * <Pagination.Item>
14
+ * <Pagination.Button aria-label='Forrige side'>Forrige</Pagination.Button>
15
+ * </Pagination.Item>
16
+ * <Pagination.Item>
17
+ * <Pagination.Button aria-label='Side 1'>1</Pagination.Button>
18
+ * </Pagination.Item>
19
+ * <Pagination.Item>
20
+ * <Pagination.Button aria-label='Side 2'>2</Pagination.Button>
21
+ * </Pagination.Item>
22
+ * </Pagination.List>
23
+ * </Pagination>
24
+ */
7
25
  const Pagination = forwardRef(function Pagination({ 'aria-label': ariaLabel = 'Sidenavigering', asChild, className, ...rest }, ref) {
8
26
  const Component = asChild ? Slot : 'nav';
9
27
  return (jsx(Component, { "aria-label": ariaLabel, className: cl('ds-pagination', className), ref: ref, ...rest }));
@@ -3,6 +3,14 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import { forwardRef } from 'react';
4
4
  import { Button } from '../Button/Button.js';
5
5
 
6
+ /**
7
+ * PaginationButton component, use within a Pagination.Item.
8
+ *
9
+ * @example
10
+ * <Pagination.Item>
11
+ * <Pagination.Button aria-label='Forrige side'>Forrige</Pagination.Button>
12
+ * </Pagination.Item>
13
+ */
6
14
  const PaginationButton = forwardRef(function PaginationButton(rest, ref) {
7
15
  return jsx(Button, { ref: ref, ...rest });
8
16
  });
@@ -3,6 +3,16 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import { Slot } from '@radix-ui/react-slot';
4
4
  import { forwardRef } from 'react';
5
5
 
6
+ /**
7
+ * PaginationItem component, use within a Pagination.List.
8
+ *
9
+ * @example
10
+ * <Pagination.List>
11
+ * <Pagination.Item>
12
+ * <Pagination.Button aria-label='Forrige side'>Forrige</Pagination.Button>
13
+ * </Pagination.Item>
14
+ * </Pagination.List>
15
+ */
6
16
  const PaginationItem = forwardRef(function PaginationItem({ asChild, className, ...rest }, ref) {
7
17
  const Component = asChild ? Slot : 'li';
8
18
  return jsx(Component, { ref: ref, ...rest });
@@ -3,6 +3,18 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import { Slot } from '@radix-ui/react-slot';
4
4
  import { forwardRef } from 'react';
5
5
 
6
+ /**
7
+ * PaginationList component, use within a Pagination.
8
+ *
9
+ * @example
10
+ * <Pagination>
11
+ * <Pagination.List>
12
+ * <Pagination.Item>
13
+ * <Pagination.Button aria-label='Forrige side'>Forrige</Pagination.Button>
14
+ * </Pagination.Item>
15
+ * </Pagination.List>
16
+ * </Pagination>
17
+ */
6
18
  const PaginationList = forwardRef(function PaginationList({ asChild, ...rest }, ref) {
7
19
  const Component = asChild ? Slot : 'ul';
8
20
  return jsx(Component, { ref: ref, ...rest });
@@ -4,6 +4,24 @@ import { PaginationButton } from './PaginationButton.js';
4
4
  import { PaginationItem } from './PaginationItem.js';
5
5
  import { PaginationList } from './PaginationList.js';
6
6
 
7
+ /**
8
+ * Pagination component, used to navigate through a list of items.
9
+ *
10
+ * @example
11
+ * <Pagination>
12
+ * <Pagination.List>
13
+ * <Pagination.Item>
14
+ * <Pagination.Button aria-label='Forrige side'>Forrige</Pagination.Button>
15
+ * </Pagination.Item>
16
+ * <Pagination.Item>
17
+ * <Pagination.Button aria-label='Side 1'>1</Pagination.Button>
18
+ * </Pagination.Item>
19
+ * <Pagination.Item>
20
+ * <Pagination.Button aria-label='Side 2'>2</Pagination.Button>
21
+ * </Pagination.Item>
22
+ * </Pagination.List>
23
+ * </Pagination>
24
+ */
7
25
  const Pagination = Object.assign(Pagination$1, {
8
26
  List: PaginationList,
9
27
  Item: PaginationItem,
@@ -12,7 +12,35 @@ const getSteps = (now, max, show) => {
12
12
  pages.splice(-2, 2, 0, max);
13
13
  return pages;
14
14
  };
15
- /** Hook to help manage pagination state */
15
+ /**
16
+ * Hook to help manage pagination state
17
+ *
18
+ * @example
19
+ * const { pages, nextButtonProps, prevButtonProps } = usePagination({
20
+ * currentPage: page,
21
+ * totalPages: 10,
22
+ * showPages: 7,
23
+ * setCurrentPage,
24
+ * })
25
+ *
26
+ * <Pagination>
27
+ * <Pagination.Item>
28
+ * <Pagination.Button {...prevButtonProps}>Forrige</Pagination.Button>
29
+ * </Pagination.Item>
30
+ * {pages.map(({ page, itemKey, buttonProps }) => (
31
+ * <Pagination.Item key={itemKey}>
32
+ * {typeof page === 'number' && (
33
+ * <Pagination.Button {...buttonProps} aria-label={`Side ${page}`}>
34
+ * {page}
35
+ * </Pagination.Button>
36
+ * )}
37
+ * </Pagination.Item>
38
+ * ))}
39
+ * <Pagination.Item>
40
+ * <Pagination.Button {...nextButtonProps}>Neste</Pagination.Button>
41
+ * </Pagination.Item>
42
+ * </Pagination>
43
+ **/
16
44
  const usePagination = ({ currentPage = 1, setCurrentPage, onChange, totalPages, showPages = 7, }) => useMemo(() => {
17
45
  const hasNext = currentPage < totalPages;
18
46
  const hasPrev = currentPage !== 1;
@@ -6,6 +6,7 @@ import { forwardRef } from 'react';
6
6
 
7
7
  /**
8
8
  * Use `Paragraph` to display text with paragraph text styles.
9
+ * Renders a native `p` element.
9
10
  *
10
11
  * @example
11
12
  * <Paragraph data-size='lg'>Paragraph</Paragraph>
@@ -7,6 +7,23 @@ import cl from 'clsx/lite';
7
7
  import { forwardRef, useRef, useContext, useState, useEffect } from 'react';
8
8
  import { Context } from './PopoverTriggerContext.js';
9
9
 
10
+ /**
11
+ * Popover component, used to display content in a popover over an element.
12
+ *
13
+ * @example with TriggerContext
14
+ * <Popover.TriggerContext>
15
+ * <Popover.Trigger>Open Popover</Popover.Trigger>
16
+ * <Popover>
17
+ * Content
18
+ * </Popover>
19
+ * </Popover.TriggerContext>
20
+ *
21
+ * @example without TriggerContext
22
+ * <Button popovertarget="my-popover">Open Popover</Button>
23
+ * <Popover id="my-popover">
24
+ * Content
25
+ * </Popover>
26
+ */
10
27
  const Popover = forwardRef(function Popover({ id, className, onClose, onOpen, open, placement = 'top', autoPlacement = true, asChild = false, ...rest }, ref) {
11
28
  const Component = asChild ? Slot : 'div';
12
29
  const popoverRef = useRef(null);
@@ -1,18 +1,43 @@
1
1
  'use client';
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { Slot } from '@radix-ui/react-slot';
4
- import { forwardRef, useContext } from 'react';
4
+ import { forwardRef, useContext, version } from 'react';
5
5
  import { Button } from '../Button/Button.js';
6
6
  import { Context } from './PopoverTriggerContext.js';
7
7
 
8
+ /**
9
+ * PopoverTrigger component, used to trigger a popover.
10
+ *
11
+ * @example
12
+ * <Popover.TriggerContext>
13
+ * <Popover.Trigger>Open Popover</Popover.Trigger>
14
+ * <Popover>
15
+ * Content
16
+ * </Popover>
17
+ * </Popover.TriggerContext>
18
+ *
19
+ * @example inline
20
+ * <Popover.TriggerContext>
21
+ * <Paragraph>
22
+ * We can use it <Popover.Trigger inline={true}>inline</Popover.Trigger>.
23
+ * </Paragraph>
24
+ * <Popover>
25
+ * Content
26
+ * </Popover>
27
+ * </Popover.TriggerContext>
28
+ */
8
29
  const PopoverTrigger = forwardRef(function PopoverTrigger({ id, inline, asChild, ...rest }, ref) {
9
30
  const { popoverId } = useContext(Context);
10
31
  const Component = asChild ? Slot : inline ? 'button' : Button;
11
- return (jsx(Component, { ref: ref, popovertarget: popoverId, ...(inline
32
+ const popoverProps = Object.assign({
33
+ [version.startsWith('19') ? 'popoverTarget' : 'popovertarget']: popoverId,
34
+ ...(inline
12
35
  ? {
13
36
  'data-popover': 'inline',
14
37
  }
15
- : {}), ...rest }));
38
+ : {}),
39
+ }, rest);
40
+ return jsx(Component, { ref: ref, ...popoverProps });
16
41
  });
17
42
 
18
43
  export { PopoverTrigger };
@@ -2,6 +2,17 @@
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import { useId, useState, createContext } from 'react';
4
4
 
5
+ /**
6
+ * PopoverTriggerContext component, use to wrap a Popover.Trigger and Popover.
7
+ *
8
+ * @example
9
+ * <Popover.TriggerContext>
10
+ * <Popover.Trigger>Open Popover</Popover.Trigger>
11
+ * <Popover>
12
+ * Content
13
+ * </Popover>
14
+ * </Popover.TriggerContext>
15
+ */
5
16
  const PopoverTriggerContext = ({ children, }) => {
6
17
  const randomPopoverId = useId();
7
18
  const [popoverId, setPopoverId] = useState(randomPopoverId);
@@ -3,9 +3,21 @@ import { Popover as Popover$1 } from './Popover.js';
3
3
  import { PopoverTrigger } from './PopoverTrigger.js';
4
4
  import { PopoverTriggerContext } from './PopoverTriggerContext.js';
5
5
 
6
- const Popover = Popover$1;
7
- Popover.TriggerContext = PopoverTriggerContext;
8
- Popover.Trigger = PopoverTrigger;
6
+ /**
7
+ * Popover component, used to display content in a popover over an element.
8
+ *
9
+ * @example
10
+ * <Popover.TriggerContext>
11
+ * <Popover.Trigger>Open Popover</Popover.Trigger>
12
+ * <Popover>
13
+ * Content
14
+ * </Popover>
15
+ * </Popover.TriggerContext>
16
+ */
17
+ const Popover = Object.assign(Popover$1, {
18
+ TriggerContext: PopoverTriggerContext,
19
+ Trigger: PopoverTrigger,
20
+ });
9
21
  Popover.TriggerContext.displayName = 'Popover.TriggerContext';
10
22
  Popover.Trigger.displayName = 'Popover.Trigger';
11
23
 
@@ -8,11 +8,12 @@ import { ValidationMessage } from '../ValidationMessage/ValidationMessage.js';
8
8
 
9
9
  /**
10
10
  * Radio used to select multiple options.
11
+ *
11
12
  * @example
12
13
  * <Radio label="I agree" value="agree" />
13
14
  */
14
- const Radio = forwardRef(function Radio({ 'data-size': size, className, style, children, label, description, validation, ...rest }, ref) {
15
- return (jsxs(Field, { "data-size": size, className: className, style: style, children: [jsx(Input, { type: 'radio', ref: ref, ...rest }), !!label && jsx(Label, { weight: 'regular', children: label }), !!description && jsx("div", { "data-field": 'description', children: description }), !!validation && jsx(ValidationMessage, { children: validation })] }));
15
+ const Radio = forwardRef(function Radio({ 'data-size': size, className, style, children, label, description, error, ...rest }, ref) {
16
+ return (jsxs(Field, { "data-size": size, className: className, style: style, children: [jsx(Input, { type: 'radio', ref: ref, ...rest }), !!label && jsx(Label, { weight: 'regular', children: label }), !!description && jsx("div", { "data-field": 'description', children: description }), !!error && jsx(ValidationMessage, { children: error })] }));
16
17
  });
17
18
 
18
19
  export { Radio };
@@ -3,6 +3,22 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import cl from 'clsx/lite';
4
4
  import { forwardRef } from 'react';
5
5
 
6
+ /**
7
+ * Search component, use to display different variations of a search input
8
+ *
9
+ * @example with button
10
+ * <Search>
11
+ * <Search.Input aria-label='Søk' />
12
+ * <Search.Clear />
13
+ * <Search.Button />
14
+ * </Search>
15
+ *
16
+ * @example with icon
17
+ * <Search>
18
+ * <Search.Input aria-label='Søk' />
19
+ * <Search.Clear />
20
+ * </Search>
21
+ */
6
22
  const Search = forwardRef(function Search({ className, ...rest }, ref) {
7
23
  return jsx("div", { ref: ref, className: cl('ds-search', className), ...rest });
8
24
  });