@navikt/ds-react 6.0.0 → 6.1.1

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 (695) hide show
  1. package/cjs/accordion/index.d.ts +3 -0
  2. package/cjs/accordion/index.js +8 -1
  3. package/cjs/accordion/index.js.map +1 -1
  4. package/cjs/alert/index.d.ts +1 -2
  5. package/cjs/alert/index.js +1 -0
  6. package/cjs/alert/index.js.map +1 -1
  7. package/cjs/button/index.d.ts +1 -2
  8. package/cjs/button/index.js +1 -0
  9. package/cjs/button/index.js.map +1 -1
  10. package/cjs/chat/Bubble.d.ts +2 -2
  11. package/cjs/chat/index.d.ts +1 -0
  12. package/cjs/chat/index.js +4 -1
  13. package/cjs/chat/index.js.map +1 -1
  14. package/cjs/chips/Chips.d.ts +4 -4
  15. package/cjs/chips/Removable.d.ts +2 -2
  16. package/cjs/chips/Toggle.d.ts +2 -2
  17. package/cjs/chips/index.d.ts +2 -0
  18. package/cjs/chips/index.js +6 -1
  19. package/cjs/chips/index.js.map +1 -1
  20. package/cjs/copybutton/index.js +1 -0
  21. package/cjs/copybutton/index.js.map +1 -1
  22. package/cjs/date/datepicker/index.d.ts +4 -0
  23. package/cjs/date/datepicker/index.js +17 -0
  24. package/cjs/date/datepicker/index.js.map +1 -0
  25. package/cjs/date/datepicker/parts/DropdownCaption.js +3 -3
  26. package/cjs/date/monthpicker/MonthCaption.js +2 -2
  27. package/cjs/date/monthpicker/index.d.ts +5 -0
  28. package/cjs/date/monthpicker/index.js +16 -0
  29. package/cjs/date/monthpicker/index.js.map +1 -0
  30. package/cjs/dropdown/Dropdown.d.ts +2 -2
  31. package/cjs/dropdown/Dropdown.js.map +1 -1
  32. package/cjs/dropdown/Menu/index.d.ts +3 -3
  33. package/cjs/dropdown/Toggle.d.ts +3 -3
  34. package/cjs/dropdown/Toggle.js +3 -3
  35. package/cjs/dropdown/Toggle.js.map +1 -1
  36. package/cjs/dropdown/index.d.ts +8 -0
  37. package/cjs/dropdown/index.js +18 -1
  38. package/cjs/dropdown/index.js.map +1 -1
  39. package/cjs/expansion-card/ExpansionCardDescription.d.ts +1 -0
  40. package/cjs/expansion-card/ExpansionCardDescription.js +1 -0
  41. package/cjs/expansion-card/ExpansionCardDescription.js.map +1 -1
  42. package/cjs/expansion-card/ExpansionCardTitle.d.ts +1 -0
  43. package/cjs/expansion-card/ExpansionCardTitle.js +1 -0
  44. package/cjs/expansion-card/ExpansionCardTitle.js.map +1 -1
  45. package/cjs/expansion-card/index.d.ts +4 -0
  46. package/cjs/expansion-card/index.js +10 -1
  47. package/cjs/expansion-card/index.js.map +1 -1
  48. package/cjs/form/checkbox/CheckboxGroup.d.ts +1 -1
  49. package/cjs/form/checkbox/CheckboxGroup.js +4 -3
  50. package/cjs/form/checkbox/CheckboxGroup.js.map +1 -1
  51. package/cjs/form/checkbox/index.js +1 -0
  52. package/cjs/form/checkbox/index.js.map +1 -1
  53. package/cjs/form/combobox/index.d.ts +1 -1
  54. package/cjs/form/combobox/index.js +3 -2
  55. package/cjs/form/combobox/index.js.map +1 -1
  56. package/cjs/form/{ConfirmationPanel.d.ts → confirmation-panel/ConfirmationPanel.d.ts} +1 -1
  57. package/cjs/form/{ConfirmationPanel.js → confirmation-panel/ConfirmationPanel.js} +4 -4
  58. package/cjs/form/confirmation-panel/ConfirmationPanel.js.map +1 -0
  59. package/cjs/form/confirmation-panel/index.d.ts +1 -0
  60. package/cjs/form/confirmation-panel/index.js +10 -0
  61. package/cjs/form/confirmation-panel/index.js.map +1 -0
  62. package/cjs/form/error-summary/index.d.ts +2 -2
  63. package/cjs/form/error-summary/index.js +4 -1
  64. package/cjs/form/error-summary/index.js.map +1 -1
  65. package/cjs/form/{Fieldset → fieldset}/Fieldset.js.map +1 -1
  66. package/cjs/form/{Fieldset → fieldset}/context.js.map +1 -1
  67. package/cjs/form/{Fieldset → fieldset}/index.d.ts +0 -1
  68. package/cjs/form/{Fieldset → fieldset}/index.js +2 -3
  69. package/cjs/form/fieldset/index.js.map +1 -0
  70. package/cjs/form/{Fieldset → fieldset}/useFieldset.js.map +1 -1
  71. package/cjs/form/radio/RadioGroup.d.ts +1 -1
  72. package/cjs/form/radio/RadioGroup.js +4 -3
  73. package/cjs/form/radio/RadioGroup.js.map +1 -1
  74. package/cjs/form/radio/index.js +1 -0
  75. package/cjs/form/radio/index.js.map +1 -1
  76. package/cjs/form/search/index.d.ts +1 -0
  77. package/cjs/form/search/index.js +4 -1
  78. package/cjs/form/search/index.js.map +1 -1
  79. package/cjs/form/{Select.d.ts → select/Select.d.ts} +1 -1
  80. package/cjs/form/{Select.js → select/Select.js} +4 -4
  81. package/cjs/form/select/Select.js.map +1 -0
  82. package/cjs/form/select/index.d.ts +1 -0
  83. package/cjs/form/select/index.js +10 -0
  84. package/cjs/form/select/index.js.map +1 -0
  85. package/cjs/form/{Switch.d.ts → switch/Switch.d.ts} +1 -1
  86. package/cjs/form/{Switch.js → switch/Switch.js} +5 -5
  87. package/cjs/form/switch/Switch.js.map +1 -0
  88. package/cjs/form/switch/index.d.ts +1 -0
  89. package/cjs/form/switch/index.js +10 -0
  90. package/cjs/form/switch/index.js.map +1 -0
  91. package/{esm/form → cjs/form/textarea}/Textarea.d.ts +1 -1
  92. package/cjs/form/{Textarea.js → textarea/Textarea.js} +7 -7
  93. package/cjs/form/textarea/Textarea.js.map +1 -0
  94. package/cjs/form/{TextareaCounter.js → textarea/TextareaCounter.js} +2 -2
  95. package/cjs/form/textarea/TextareaCounter.js.map +1 -0
  96. package/cjs/form/textarea/index.d.ts +1 -0
  97. package/cjs/form/textarea/index.js +10 -0
  98. package/cjs/form/textarea/index.js.map +1 -0
  99. package/cjs/form/{TextField.d.ts → textfield/TextField.d.ts} +1 -1
  100. package/cjs/form/{TextField.js → textfield/TextField.js} +4 -4
  101. package/cjs/form/textfield/TextField.js.map +1 -0
  102. package/cjs/form/textfield/index.d.ts +1 -0
  103. package/cjs/form/textfield/index.js +10 -0
  104. package/cjs/form/textfield/index.js.map +1 -0
  105. package/cjs/form/useFormField.js +1 -1
  106. package/cjs/guide-panel/index.d.ts +1 -1
  107. package/cjs/guide-panel/index.js +3 -2
  108. package/cjs/guide-panel/index.js.map +1 -1
  109. package/cjs/help-text/index.d.ts +1 -2
  110. package/cjs/help-text/index.js +1 -0
  111. package/cjs/help-text/index.js.map +1 -1
  112. package/cjs/index.d.ts +54 -40
  113. package/cjs/index.js +127 -54
  114. package/cjs/index.js.map +1 -1
  115. package/cjs/internal-header/index.d.ts +4 -4
  116. package/cjs/internal-header/index.js +10 -1
  117. package/cjs/internal-header/index.js.map +1 -1
  118. package/cjs/layout/bleed/Bleed.d.ts +1 -0
  119. package/cjs/layout/bleed/Bleed.js +1 -0
  120. package/cjs/layout/bleed/Bleed.js.map +1 -1
  121. package/cjs/layout/bleed/index.d.ts +1 -1
  122. package/cjs/layout/bleed/index.js +5 -1
  123. package/cjs/layout/bleed/index.js.map +1 -1
  124. package/cjs/layout/box/Box.d.ts +1 -0
  125. package/cjs/layout/box/Box.js +1 -0
  126. package/cjs/layout/box/Box.js.map +1 -1
  127. package/cjs/layout/box/index.d.ts +1 -1
  128. package/cjs/layout/box/index.js +5 -1
  129. package/cjs/layout/box/index.js.map +1 -1
  130. package/cjs/layout/grid/index.js +1 -0
  131. package/cjs/layout/grid/index.js.map +1 -1
  132. package/cjs/layout/page/index.d.ts +1 -1
  133. package/cjs/layout/page/index.js +4 -1
  134. package/cjs/layout/page/index.js.map +1 -1
  135. package/cjs/layout/page/parts/PageBlock.d.ts +1 -0
  136. package/cjs/layout/page/parts/PageBlock.js +1 -0
  137. package/cjs/layout/page/parts/PageBlock.js.map +1 -1
  138. package/cjs/layout/responsive/index.js +1 -0
  139. package/cjs/layout/responsive/index.js.map +1 -1
  140. package/cjs/layout/sidemal-test/Filter.js +4 -4
  141. package/cjs/layout/sidemal-test/Filter.js.map +1 -1
  142. package/cjs/layout/stack/HStack.d.ts +1 -0
  143. package/cjs/layout/stack/HStack.js +1 -0
  144. package/cjs/layout/stack/HStack.js.map +1 -1
  145. package/cjs/layout/stack/Spacer.d.ts +1 -0
  146. package/cjs/layout/stack/Spacer.js +1 -0
  147. package/cjs/layout/stack/Spacer.js.map +1 -1
  148. package/cjs/layout/stack/Stack.d.ts +1 -0
  149. package/cjs/layout/stack/Stack.js +1 -0
  150. package/cjs/layout/stack/Stack.js.map +1 -1
  151. package/cjs/layout/stack/VStack.d.ts +1 -0
  152. package/cjs/layout/stack/VStack.js +1 -0
  153. package/cjs/layout/stack/VStack.js.map +1 -1
  154. package/cjs/layout/stack/index.d.ts +4 -4
  155. package/cjs/layout/stack/index.js +8 -4
  156. package/cjs/layout/stack/index.js.map +1 -1
  157. package/cjs/link/index.d.ts +1 -2
  158. package/cjs/link/index.js +1 -0
  159. package/cjs/link/index.js.map +1 -1
  160. package/cjs/link-panel/LinkPanelDescription.d.ts +1 -0
  161. package/cjs/link-panel/LinkPanelDescription.js +1 -0
  162. package/cjs/link-panel/LinkPanelDescription.js.map +1 -1
  163. package/cjs/link-panel/LinkPanelTitle.d.ts +1 -0
  164. package/cjs/link-panel/LinkPanelTitle.js +1 -0
  165. package/cjs/link-panel/LinkPanelTitle.js.map +1 -1
  166. package/cjs/link-panel/index.d.ts +3 -2
  167. package/cjs/link-panel/index.js +6 -1
  168. package/cjs/link-panel/index.js.map +1 -1
  169. package/cjs/list/index.d.ts +1 -0
  170. package/cjs/list/index.js +4 -1
  171. package/cjs/list/index.js.map +1 -1
  172. package/cjs/loader/index.js +1 -0
  173. package/cjs/loader/index.js.map +1 -1
  174. package/cjs/modal/Modal.js +31 -13
  175. package/cjs/modal/Modal.js.map +1 -1
  176. package/cjs/modal/ModalHeader.js +1 -1
  177. package/cjs/modal/ModalHeader.js.map +1 -1
  178. package/cjs/modal/ModalUtils.d.ts +6 -1
  179. package/cjs/modal/ModalUtils.js +13 -3
  180. package/cjs/modal/ModalUtils.js.map +1 -1
  181. package/cjs/modal/index.d.ts +3 -3
  182. package/cjs/modal/index.js +8 -1
  183. package/cjs/modal/index.js.map +1 -1
  184. package/cjs/modal/types.d.ts +14 -3
  185. package/cjs/modal/types.test-d.d.ts +1 -0
  186. package/cjs/modal/types.test-d.js +67 -0
  187. package/cjs/modal/types.test-d.js.map +1 -0
  188. package/cjs/pagination/index.d.ts +1 -0
  189. package/cjs/pagination/index.js +4 -1
  190. package/cjs/pagination/index.js.map +1 -1
  191. package/cjs/popover/index.d.ts +1 -1
  192. package/cjs/popover/index.js +4 -1
  193. package/cjs/popover/index.js.map +1 -1
  194. package/cjs/{overlays/portal → portal}/Portal.d.ts +1 -1
  195. package/cjs/{overlays/portal → portal}/Portal.js +3 -3
  196. package/cjs/portal/Portal.js.map +1 -0
  197. package/cjs/portal/index.d.ts +1 -0
  198. package/cjs/portal/index.js +10 -0
  199. package/cjs/portal/index.js.map +1 -0
  200. package/cjs/provider/index.d.ts +1 -1
  201. package/cjs/provider/index.js +2 -2
  202. package/cjs/provider/index.js.map +1 -1
  203. package/cjs/read-more/index.d.ts +1 -2
  204. package/cjs/read-more/index.js +1 -0
  205. package/cjs/read-more/index.js.map +1 -1
  206. package/cjs/skeleton/index.d.ts +1 -2
  207. package/cjs/skeleton/index.js +1 -0
  208. package/cjs/skeleton/index.js.map +1 -1
  209. package/cjs/stepper/index.d.ts +1 -0
  210. package/cjs/stepper/index.js +4 -1
  211. package/cjs/stepper/index.js.map +1 -1
  212. package/cjs/table/index.d.ts +7 -7
  213. package/cjs/table/index.js +16 -1
  214. package/cjs/table/index.js.map +1 -1
  215. package/cjs/tabs/index.d.ts +3 -3
  216. package/cjs/tabs/index.js +8 -1
  217. package/cjs/tabs/index.js.map +1 -1
  218. package/cjs/tag/index.js +1 -0
  219. package/cjs/tag/index.js.map +1 -1
  220. package/cjs/timeline/index.d.ts +5 -6
  221. package/cjs/timeline/index.js +10 -1
  222. package/cjs/timeline/index.js.map +1 -1
  223. package/cjs/toggle-group/ToggleGroup.d.ts +3 -3
  224. package/cjs/toggle-group/ToggleGroup.js.map +1 -1
  225. package/cjs/toggle-group/ToggleItem.d.ts +2 -2
  226. package/cjs/toggle-group/index.d.ts +1 -1
  227. package/cjs/toggle-group/index.js +4 -1
  228. package/cjs/toggle-group/index.js.map +1 -1
  229. package/cjs/tooltip/Tooltip.js +2 -2
  230. package/cjs/tooltip/Tooltip.js.map +1 -1
  231. package/cjs/tooltip/index.js +1 -0
  232. package/cjs/tooltip/index.js.map +1 -1
  233. package/cjs/typography/index.js +1 -0
  234. package/cjs/typography/index.js.map +1 -1
  235. package/cjs/util/debounce.js +1 -0
  236. package/cjs/util/debounce.js.map +1 -1
  237. package/cjs/util/hooks/useClientLayoutEffect.js +1 -0
  238. package/cjs/util/hooks/useClientLayoutEffect.js.map +1 -1
  239. package/cjs/util/hooks/useEventListener.js +1 -0
  240. package/cjs/util/hooks/useEventListener.js.map +1 -1
  241. package/cjs/util/hooks/useId.js +1 -0
  242. package/cjs/util/hooks/useId.js.map +1 -1
  243. package/cjs/util/index.d.ts +2 -2
  244. package/cjs/util/index.js +3 -16
  245. package/cjs/util/index.js.map +1 -1
  246. package/cjs/util/omit.d.ts +1 -1
  247. package/cjs/util/omit.js +5 -3
  248. package/cjs/util/omit.js.map +1 -1
  249. package/esm/accordion/index.d.ts +3 -0
  250. package/esm/accordion/index.js +4 -0
  251. package/esm/accordion/index.js.map +1 -1
  252. package/esm/alert/index.d.ts +1 -2
  253. package/esm/alert/index.js +1 -0
  254. package/esm/alert/index.js.map +1 -1
  255. package/esm/button/index.d.ts +1 -2
  256. package/esm/button/index.js +1 -0
  257. package/esm/button/index.js.map +1 -1
  258. package/esm/chat/Bubble.d.ts +2 -2
  259. package/esm/chat/index.d.ts +1 -0
  260. package/esm/chat/index.js +2 -0
  261. package/esm/chat/index.js.map +1 -1
  262. package/esm/chips/Chips.d.ts +4 -4
  263. package/esm/chips/Removable.d.ts +2 -2
  264. package/esm/chips/Toggle.d.ts +2 -2
  265. package/esm/chips/index.d.ts +2 -0
  266. package/esm/chips/index.js +3 -0
  267. package/esm/chips/index.js.map +1 -1
  268. package/esm/copybutton/index.js +1 -0
  269. package/esm/copybutton/index.js.map +1 -1
  270. package/esm/date/datepicker/index.d.ts +4 -0
  271. package/esm/date/datepicker/index.js +6 -0
  272. package/esm/date/datepicker/index.js.map +1 -0
  273. package/esm/date/datepicker/parts/DropdownCaption.js +1 -1
  274. package/esm/date/monthpicker/MonthCaption.js +1 -1
  275. package/esm/date/monthpicker/index.d.ts +5 -0
  276. package/esm/date/monthpicker/index.js +6 -0
  277. package/esm/date/monthpicker/index.js.map +1 -0
  278. package/esm/dropdown/Dropdown.d.ts +2 -2
  279. package/esm/dropdown/Dropdown.js.map +1 -1
  280. package/esm/dropdown/Menu/index.d.ts +3 -3
  281. package/esm/dropdown/Toggle.d.ts +3 -3
  282. package/esm/dropdown/Toggle.js +2 -2
  283. package/esm/dropdown/Toggle.js.map +1 -1
  284. package/esm/dropdown/index.d.ts +8 -0
  285. package/esm/dropdown/index.js +9 -0
  286. package/esm/dropdown/index.js.map +1 -1
  287. package/esm/expansion-card/ExpansionCardDescription.d.ts +1 -0
  288. package/esm/expansion-card/ExpansionCardDescription.js +1 -0
  289. package/esm/expansion-card/ExpansionCardDescription.js.map +1 -1
  290. package/esm/expansion-card/ExpansionCardTitle.d.ts +1 -0
  291. package/esm/expansion-card/ExpansionCardTitle.js +1 -0
  292. package/esm/expansion-card/ExpansionCardTitle.js.map +1 -1
  293. package/esm/expansion-card/index.d.ts +4 -0
  294. package/esm/expansion-card/index.js +5 -0
  295. package/esm/expansion-card/index.js.map +1 -1
  296. package/esm/form/checkbox/CheckboxGroup.d.ts +1 -1
  297. package/esm/form/checkbox/CheckboxGroup.js +2 -1
  298. package/esm/form/checkbox/CheckboxGroup.js.map +1 -1
  299. package/esm/form/checkbox/index.js +1 -0
  300. package/esm/form/checkbox/index.js.map +1 -1
  301. package/esm/form/combobox/index.d.ts +1 -1
  302. package/esm/form/combobox/index.js +2 -1
  303. package/esm/form/combobox/index.js.map +1 -1
  304. package/esm/form/{ConfirmationPanel.d.ts → confirmation-panel/ConfirmationPanel.d.ts} +1 -1
  305. package/esm/form/{ConfirmationPanel.js → confirmation-panel/ConfirmationPanel.js} +4 -4
  306. package/esm/form/confirmation-panel/ConfirmationPanel.js.map +1 -0
  307. package/esm/form/confirmation-panel/index.d.ts +1 -0
  308. package/esm/form/confirmation-panel/index.js +3 -0
  309. package/esm/form/confirmation-panel/index.js.map +1 -0
  310. package/esm/form/error-summary/index.d.ts +2 -2
  311. package/esm/form/error-summary/index.js +3 -1
  312. package/esm/form/error-summary/index.js.map +1 -1
  313. package/esm/form/{Fieldset → fieldset}/Fieldset.js.map +1 -1
  314. package/esm/form/{Fieldset → fieldset}/context.js.map +1 -1
  315. package/esm/form/{Fieldset → fieldset}/index.d.ts +0 -1
  316. package/esm/form/fieldset/index.js +3 -0
  317. package/esm/form/fieldset/index.js.map +1 -0
  318. package/esm/form/{Fieldset → fieldset}/useFieldset.js.map +1 -1
  319. package/esm/form/radio/RadioGroup.d.ts +1 -1
  320. package/esm/form/radio/RadioGroup.js +2 -1
  321. package/esm/form/radio/RadioGroup.js.map +1 -1
  322. package/esm/form/radio/index.js +1 -0
  323. package/esm/form/radio/index.js.map +1 -1
  324. package/esm/form/search/index.d.ts +1 -0
  325. package/esm/form/search/index.js +2 -0
  326. package/esm/form/search/index.js.map +1 -1
  327. package/esm/form/{Select.d.ts → select/Select.d.ts} +1 -1
  328. package/esm/form/{Select.js → select/Select.js} +4 -4
  329. package/esm/form/select/Select.js.map +1 -0
  330. package/esm/form/select/index.d.ts +1 -0
  331. package/esm/form/select/index.js +3 -0
  332. package/esm/form/select/index.js.map +1 -0
  333. package/esm/form/{Switch.d.ts → switch/Switch.d.ts} +1 -1
  334. package/esm/form/{Switch.js → switch/Switch.js} +5 -5
  335. package/esm/form/switch/Switch.js.map +1 -0
  336. package/esm/form/switch/index.d.ts +1 -0
  337. package/esm/form/switch/index.js +3 -0
  338. package/esm/form/switch/index.js.map +1 -0
  339. package/{cjs/form → esm/form/textarea}/Textarea.d.ts +1 -1
  340. package/esm/form/{Textarea.js → textarea/Textarea.js} +7 -7
  341. package/esm/form/textarea/Textarea.js.map +1 -0
  342. package/esm/form/{TextareaCounter.js → textarea/TextareaCounter.js} +2 -2
  343. package/esm/form/textarea/TextareaCounter.js.map +1 -0
  344. package/esm/form/textarea/index.d.ts +1 -0
  345. package/esm/form/textarea/index.js +3 -0
  346. package/esm/form/textarea/index.js.map +1 -0
  347. package/esm/form/{TextField.d.ts → textfield/TextField.d.ts} +1 -1
  348. package/esm/form/{TextField.js → textfield/TextField.js} +4 -4
  349. package/esm/form/textfield/TextField.js.map +1 -0
  350. package/esm/form/textfield/index.d.ts +1 -0
  351. package/esm/form/textfield/index.js +3 -0
  352. package/esm/form/textfield/index.js.map +1 -0
  353. package/esm/form/useFormField.js +1 -1
  354. package/esm/guide-panel/index.d.ts +1 -1
  355. package/esm/guide-panel/index.js +2 -1
  356. package/esm/guide-panel/index.js.map +1 -1
  357. package/esm/help-text/index.d.ts +1 -2
  358. package/esm/help-text/index.js +1 -0
  359. package/esm/help-text/index.js.map +1 -1
  360. package/esm/index.d.ts +54 -40
  361. package/esm/index.js +54 -40
  362. package/esm/index.js.map +1 -1
  363. package/esm/internal-header/index.d.ts +4 -4
  364. package/esm/internal-header/index.js +5 -0
  365. package/esm/internal-header/index.js.map +1 -1
  366. package/esm/layout/bleed/Bleed.d.ts +1 -0
  367. package/esm/layout/bleed/Bleed.js +1 -0
  368. package/esm/layout/bleed/Bleed.js.map +1 -1
  369. package/esm/layout/bleed/index.d.ts +1 -1
  370. package/esm/layout/bleed/index.js +2 -1
  371. package/esm/layout/bleed/index.js.map +1 -1
  372. package/esm/layout/box/Box.d.ts +1 -0
  373. package/esm/layout/box/Box.js +1 -0
  374. package/esm/layout/box/Box.js.map +1 -1
  375. package/esm/layout/box/index.d.ts +1 -1
  376. package/esm/layout/box/index.js +2 -1
  377. package/esm/layout/box/index.js.map +1 -1
  378. package/esm/layout/grid/index.js +1 -0
  379. package/esm/layout/grid/index.js.map +1 -1
  380. package/esm/layout/page/index.d.ts +1 -1
  381. package/esm/layout/page/index.js +2 -0
  382. package/esm/layout/page/index.js.map +1 -1
  383. package/esm/layout/page/parts/PageBlock.d.ts +1 -0
  384. package/esm/layout/page/parts/PageBlock.js +1 -0
  385. package/esm/layout/page/parts/PageBlock.js.map +1 -1
  386. package/esm/layout/responsive/index.js +1 -0
  387. package/esm/layout/responsive/index.js.map +1 -1
  388. package/esm/layout/sidemal-test/Filter.js +1 -1
  389. package/esm/layout/sidemal-test/Filter.js.map +1 -1
  390. package/esm/layout/stack/HStack.d.ts +1 -0
  391. package/esm/layout/stack/HStack.js +1 -0
  392. package/esm/layout/stack/HStack.js.map +1 -1
  393. package/esm/layout/stack/Spacer.d.ts +1 -0
  394. package/esm/layout/stack/Spacer.js +1 -0
  395. package/esm/layout/stack/Spacer.js.map +1 -1
  396. package/esm/layout/stack/Stack.d.ts +1 -0
  397. package/esm/layout/stack/Stack.js +1 -0
  398. package/esm/layout/stack/Stack.js.map +1 -1
  399. package/esm/layout/stack/VStack.d.ts +1 -0
  400. package/esm/layout/stack/VStack.js +1 -0
  401. package/esm/layout/stack/VStack.js.map +1 -1
  402. package/esm/layout/stack/index.d.ts +4 -4
  403. package/esm/layout/stack/index.js +5 -4
  404. package/esm/layout/stack/index.js.map +1 -1
  405. package/esm/link/index.d.ts +1 -2
  406. package/esm/link/index.js +1 -0
  407. package/esm/link/index.js.map +1 -1
  408. package/esm/link-panel/LinkPanelDescription.d.ts +1 -0
  409. package/esm/link-panel/LinkPanelDescription.js +1 -0
  410. package/esm/link-panel/LinkPanelDescription.js.map +1 -1
  411. package/esm/link-panel/LinkPanelTitle.d.ts +1 -0
  412. package/esm/link-panel/LinkPanelTitle.js +1 -0
  413. package/esm/link-panel/LinkPanelTitle.js.map +1 -1
  414. package/esm/link-panel/index.d.ts +3 -2
  415. package/esm/link-panel/index.js +3 -0
  416. package/esm/link-panel/index.js.map +1 -1
  417. package/esm/list/index.d.ts +1 -0
  418. package/esm/list/index.js +2 -0
  419. package/esm/list/index.js.map +1 -1
  420. package/esm/loader/index.js +1 -0
  421. package/esm/loader/index.js.map +1 -1
  422. package/esm/modal/Modal.js +31 -13
  423. package/esm/modal/Modal.js.map +1 -1
  424. package/esm/modal/ModalHeader.js +1 -1
  425. package/esm/modal/ModalHeader.js.map +1 -1
  426. package/esm/modal/ModalUtils.d.ts +6 -1
  427. package/esm/modal/ModalUtils.js +11 -2
  428. package/esm/modal/ModalUtils.js.map +1 -1
  429. package/esm/modal/index.d.ts +3 -3
  430. package/esm/modal/index.js +4 -0
  431. package/esm/modal/index.js.map +1 -1
  432. package/esm/modal/types.d.ts +14 -3
  433. package/esm/modal/types.test-d.d.ts +1 -0
  434. package/esm/modal/types.test-d.js +65 -0
  435. package/esm/modal/types.test-d.js.map +1 -0
  436. package/esm/pagination/index.d.ts +1 -0
  437. package/esm/pagination/index.js +2 -0
  438. package/esm/pagination/index.js.map +1 -1
  439. package/esm/popover/index.d.ts +1 -1
  440. package/esm/popover/index.js +2 -0
  441. package/esm/popover/index.js.map +1 -1
  442. package/esm/{overlays/portal → portal}/Portal.d.ts +1 -1
  443. package/esm/{overlays/portal → portal}/Portal.js +2 -2
  444. package/esm/portal/Portal.js.map +1 -0
  445. package/esm/portal/index.d.ts +1 -0
  446. package/esm/portal/index.js +3 -0
  447. package/esm/portal/index.js.map +1 -0
  448. package/esm/provider/index.d.ts +1 -1
  449. package/esm/provider/index.js +2 -1
  450. package/esm/provider/index.js.map +1 -1
  451. package/esm/read-more/index.d.ts +1 -2
  452. package/esm/read-more/index.js +1 -0
  453. package/esm/read-more/index.js.map +1 -1
  454. package/esm/skeleton/index.d.ts +1 -2
  455. package/esm/skeleton/index.js +1 -0
  456. package/esm/skeleton/index.js.map +1 -1
  457. package/esm/stepper/index.d.ts +1 -0
  458. package/esm/stepper/index.js +2 -0
  459. package/esm/stepper/index.js.map +1 -1
  460. package/esm/table/index.d.ts +7 -7
  461. package/esm/table/index.js +8 -0
  462. package/esm/table/index.js.map +1 -1
  463. package/esm/tabs/index.d.ts +3 -3
  464. package/esm/tabs/index.js +4 -0
  465. package/esm/tabs/index.js.map +1 -1
  466. package/esm/tag/index.js +1 -0
  467. package/esm/tag/index.js.map +1 -1
  468. package/esm/timeline/index.d.ts +5 -6
  469. package/esm/timeline/index.js +5 -0
  470. package/esm/timeline/index.js.map +1 -1
  471. package/esm/toggle-group/ToggleGroup.d.ts +3 -3
  472. package/esm/toggle-group/ToggleGroup.js.map +1 -1
  473. package/esm/toggle-group/ToggleItem.d.ts +2 -2
  474. package/esm/toggle-group/index.d.ts +1 -1
  475. package/esm/toggle-group/index.js +2 -0
  476. package/esm/toggle-group/index.js.map +1 -1
  477. package/esm/tooltip/Tooltip.js +1 -1
  478. package/esm/tooltip/Tooltip.js.map +1 -1
  479. package/esm/tooltip/index.js +1 -0
  480. package/esm/tooltip/index.js.map +1 -1
  481. package/esm/typography/index.js +1 -0
  482. package/esm/typography/index.js.map +1 -1
  483. package/esm/util/debounce.js +1 -0
  484. package/esm/util/debounce.js.map +1 -1
  485. package/esm/util/hooks/useClientLayoutEffect.js +1 -0
  486. package/esm/util/hooks/useClientLayoutEffect.js.map +1 -1
  487. package/esm/util/hooks/useEventListener.js +1 -0
  488. package/esm/util/hooks/useEventListener.js.map +1 -1
  489. package/esm/util/hooks/useId.js +1 -0
  490. package/esm/util/hooks/useId.js.map +1 -1
  491. package/esm/util/index.d.ts +2 -2
  492. package/esm/util/index.js +1 -1
  493. package/esm/util/index.js.map +1 -1
  494. package/esm/util/omit.d.ts +1 -1
  495. package/esm/util/omit.js +5 -3
  496. package/esm/util/omit.js.map +1 -1
  497. package/package.json +512 -13
  498. package/src/accordion/index.ts +13 -0
  499. package/src/alert/index.ts +2 -2
  500. package/src/button/index.ts +2 -2
  501. package/src/chat/Bubble.tsx +2 -2
  502. package/src/chat/chat.stories.tsx +2 -2
  503. package/src/chat/index.ts +2 -0
  504. package/src/chips/Chips.tsx +4 -4
  505. package/src/chips/Removable.tsx +2 -2
  506. package/src/chips/Toggle.tsx +2 -2
  507. package/src/chips/chips.stories.tsx +39 -1
  508. package/src/chips/index.ts +6 -0
  509. package/src/copybutton/copy-button.stories.tsx +49 -0
  510. package/src/copybutton/index.ts +1 -0
  511. package/src/date/datepicker/datepicker.stories.tsx +99 -0
  512. package/src/date/datepicker/datepicker.test.tsx +5 -3
  513. package/src/date/datepicker/index.ts +13 -0
  514. package/src/date/datepicker/parts/DropdownCaption.tsx +1 -1
  515. package/src/date/hooks/useRangeDatepicker.test.tsx +5 -3
  516. package/src/date/monthpicker/MonthCaption.tsx +1 -1
  517. package/src/date/monthpicker/index.ts +9 -0
  518. package/src/date/monthpicker/monthpicker.stories.tsx +27 -1
  519. package/src/date/utils/__tests__/check-dates.test.ts +1 -0
  520. package/src/date/utils/__tests__/dates-disabled.test.ts +1 -0
  521. package/src/date/utils/__tests__/format-dates.test.ts +1 -0
  522. package/src/date/utils/__tests__/get-dates.test.ts +1 -0
  523. package/src/date/utils/__tests__/get-initial-year.test.ts +1 -0
  524. package/src/date/utils/__tests__/get-month-weeks.test.ts +1 -0
  525. package/src/date/utils/__tests__/is-match.test.ts +1 -0
  526. package/src/date/utils/__tests__/parse-dates.test.ts +13 -3
  527. package/src/dropdown/Dropdown.tsx +2 -4
  528. package/src/dropdown/Menu/index.tsx +3 -3
  529. package/src/dropdown/Toggle.tsx +39 -40
  530. package/src/dropdown/index.ts +9 -0
  531. package/src/expansion-card/ExpansionCardDescription.tsx +2 -0
  532. package/src/expansion-card/ExpansionCardTitle.tsx +2 -0
  533. package/src/expansion-card/expansion-card.stories.tsx +32 -1
  534. package/src/expansion-card/index.ts +5 -0
  535. package/src/form/checkbox/Checkbox.test.tsx +6 -4
  536. package/src/form/checkbox/CheckboxGroup.tsx +2 -1
  537. package/src/form/checkbox/checkbox.stories.tsx +58 -2
  538. package/src/form/checkbox/index.ts +1 -0
  539. package/src/form/combobox/combobox.stories.tsx +3 -1
  540. package/src/form/combobox/combobox.test.tsx +6 -5
  541. package/src/form/combobox/index.ts +2 -1
  542. package/src/form/{ConfirmationPanel.test.tsx → confirmation-panel/ConfirmationPanel.test.tsx} +1 -0
  543. package/src/form/{ConfirmationPanel.tsx → confirmation-panel/ConfirmationPanel.tsx} +4 -4
  544. package/src/form/{stories → confirmation-panel}/confirmation-panel.stories.tsx +33 -2
  545. package/src/form/confirmation-panel/index.ts +5 -0
  546. package/src/form/error-summary/index.ts +9 -2
  547. package/src/form/{stories → fieldset}/fieldset.stories.tsx +2 -2
  548. package/src/form/{Fieldset → fieldset}/index.ts +1 -1
  549. package/src/form/radio/Radio.test.tsx +9 -3
  550. package/src/form/radio/RadioGroup.tsx +2 -1
  551. package/src/form/radio/index.ts +1 -0
  552. package/src/form/radio/radio.stories.tsx +51 -2
  553. package/src/form/search/index.ts +6 -0
  554. package/src/form/search/search.stories.tsx +53 -2
  555. package/src/form/{Select.tsx → select/Select.tsx} +4 -4
  556. package/src/form/select/index.ts +2 -0
  557. package/src/form/{stories → select}/select.stories.tsx +45 -2
  558. package/src/form/{Switch.tsx → switch/Switch.tsx} +5 -5
  559. package/src/form/switch/index.ts +2 -0
  560. package/src/form/{stories → switch}/switch.stories.tsx +1 -1
  561. package/src/form/{Textarea.tsx → textarea/Textarea.tsx} +7 -7
  562. package/src/form/{TextareaCounter.tsx → textarea/TextareaCounter.tsx} +2 -2
  563. package/src/form/textarea/index.ts +2 -0
  564. package/src/form/{stories → textarea}/textarea.stories.tsx +30 -1
  565. package/src/form/{TextField.tsx → textfield/TextField.tsx} +4 -4
  566. package/src/form/textfield/index.ts +2 -0
  567. package/src/form/{stories → textfield}/text-field.stories.tsx +45 -2
  568. package/src/form/useFormField.ts +1 -1
  569. package/src/guide-panel/guidepanel.stories.tsx +3 -1
  570. package/src/guide-panel/index.ts +2 -1
  571. package/src/help-text/index.ts +2 -2
  572. package/src/index.ts +143 -40
  573. package/src/internal-header/index.ts +17 -4
  574. package/src/layout/bleed/Bleed.tsx +2 -0
  575. package/src/layout/bleed/index.ts +2 -1
  576. package/src/layout/box/Box.tsx +2 -0
  577. package/src/layout/box/index.ts +2 -1
  578. package/src/layout/grid/index.ts +1 -0
  579. package/src/layout/page/index.ts +2 -1
  580. package/src/layout/page/parts/PageBlock.tsx +2 -0
  581. package/src/layout/responsive/index.ts +1 -0
  582. package/src/layout/sidemal-test/Filter.tsx +1 -1
  583. package/src/layout/stack/HStack.tsx +2 -0
  584. package/src/layout/stack/Spacer.tsx +2 -0
  585. package/src/layout/stack/Stack.tsx +2 -0
  586. package/src/layout/stack/VStack.tsx +2 -0
  587. package/src/layout/stack/index.ts +5 -4
  588. package/src/link/index.ts +2 -2
  589. package/src/link/stories/link.stories.tsx +188 -97
  590. package/src/link-panel/LinkPanelDescription.tsx +2 -0
  591. package/src/link-panel/LinkPanelTitle.tsx +2 -0
  592. package/src/link-panel/index.ts +10 -2
  593. package/src/list/index.ts +2 -0
  594. package/src/loader/index.ts +1 -0
  595. package/src/modal/Modal.test.tsx +1 -0
  596. package/src/modal/Modal.tsx +51 -12
  597. package/src/modal/ModalHeader.tsx +1 -1
  598. package/src/modal/ModalUtils.ts +17 -1
  599. package/src/modal/index.ts +4 -3
  600. package/src/modal/modal.stories.tsx +54 -0
  601. package/src/modal/types.test-d.ts +78 -0
  602. package/src/modal/types.ts +17 -3
  603. package/src/pagination/index.ts +5 -0
  604. package/src/pagination/steps.test.ts +9 -8
  605. package/src/popover/Popover.test.tsx +9 -8
  606. package/src/popover/index.ts +5 -1
  607. package/src/popover/popover.stories.tsx +1 -1
  608. package/src/{overlays/portal → portal}/Portal.stories.tsx +8 -5
  609. package/src/{overlays/portal → portal}/Portal.tsx +3 -3
  610. package/src/portal/index.ts +2 -0
  611. package/src/provider/index.ts +2 -1
  612. package/src/read-more/index.ts +2 -2
  613. package/src/skeleton/index.ts +2 -2
  614. package/src/skeleton/skeleton.stories.tsx +1 -1
  615. package/src/stepper/index.ts +2 -0
  616. package/src/table/index.ts +14 -7
  617. package/src/table/stories/table-1.stories.tsx +1 -1
  618. package/src/table/stories/table-2-expandable.stories.tsx +1 -1
  619. package/src/tabs/Tabs.test.tsx +1 -0
  620. package/src/tabs/index.ts +4 -3
  621. package/src/tag/index.ts +1 -0
  622. package/src/timeline/index.ts +9 -6
  623. package/src/toggle-group/ToggleGroup.stories.tsx +1 -1
  624. package/src/toggle-group/ToggleGroup.test.tsx +1 -0
  625. package/src/toggle-group/ToggleGroup.tsx +3 -3
  626. package/src/toggle-group/ToggleItem.tsx +2 -2
  627. package/src/toggle-group/index.ts +5 -1
  628. package/src/tooltip/Tooltip.test.tsx +5 -4
  629. package/src/tooltip/Tooltip.tsx +1 -1
  630. package/src/tooltip/index.ts +1 -0
  631. package/src/tooltip/tooltip.stories.tsx +1 -1
  632. package/src/typography/index.ts +1 -0
  633. package/src/util/__tests__/Slot.test.tsx +7 -6
  634. package/src/util/__tests__/useMedia.test.tsx +1 -0
  635. package/src/util/debounce.ts +1 -0
  636. package/src/util/hooks/useClientLayoutEffect.ts +2 -0
  637. package/src/util/hooks/useEventListener.ts +2 -0
  638. package/src/util/hooks/useId.ts +2 -0
  639. package/src/util/index.ts +2 -2
  640. package/src/util/omit.ts +8 -4
  641. package/cjs/date/index.d.ts +0 -7
  642. package/cjs/date/index.js +0 -15
  643. package/cjs/date/index.js.map +0 -1
  644. package/cjs/form/ConfirmationPanel.js.map +0 -1
  645. package/cjs/form/Fieldset/index.js.map +0 -1
  646. package/cjs/form/Select.js.map +0 -1
  647. package/cjs/form/Switch.js.map +0 -1
  648. package/cjs/form/TextField.js.map +0 -1
  649. package/cjs/form/Textarea.js.map +0 -1
  650. package/cjs/form/TextareaCounter.js.map +0 -1
  651. package/cjs/form/index.d.ts +0 -11
  652. package/cjs/form/index.js +0 -32
  653. package/cjs/form/index.js.map +0 -1
  654. package/cjs/overlays/index.d.ts +0 -2
  655. package/cjs/overlays/index.js +0 -6
  656. package/cjs/overlays/index.js.map +0 -1
  657. package/cjs/overlays/portal/Portal.js.map +0 -1
  658. package/esm/date/index.d.ts +0 -7
  659. package/esm/date/index.js +0 -4
  660. package/esm/date/index.js.map +0 -1
  661. package/esm/form/ConfirmationPanel.js.map +0 -1
  662. package/esm/form/Fieldset/index.js +0 -3
  663. package/esm/form/Fieldset/index.js.map +0 -1
  664. package/esm/form/Select.js.map +0 -1
  665. package/esm/form/Switch.js.map +0 -1
  666. package/esm/form/TextField.js.map +0 -1
  667. package/esm/form/Textarea.js.map +0 -1
  668. package/esm/form/TextareaCounter.js.map +0 -1
  669. package/esm/form/index.d.ts +0 -11
  670. package/esm/form/index.js +0 -12
  671. package/esm/form/index.js.map +0 -1
  672. package/esm/overlays/index.d.ts +0 -2
  673. package/esm/overlays/index.js +0 -2
  674. package/esm/overlays/index.js.map +0 -1
  675. package/esm/overlays/portal/Portal.js.map +0 -1
  676. package/src/date/index.ts +0 -17
  677. package/src/form/index.ts +0 -24
  678. package/src/overlays/index.ts +0 -2
  679. /package/cjs/form/{Fieldset → fieldset}/Fieldset.d.ts +0 -0
  680. /package/cjs/form/{Fieldset → fieldset}/Fieldset.js +0 -0
  681. /package/cjs/form/{Fieldset → fieldset}/context.d.ts +0 -0
  682. /package/cjs/form/{Fieldset → fieldset}/context.js +0 -0
  683. /package/cjs/form/{Fieldset → fieldset}/useFieldset.d.ts +0 -0
  684. /package/cjs/form/{Fieldset → fieldset}/useFieldset.js +0 -0
  685. /package/cjs/form/{TextareaCounter.d.ts → textarea/TextareaCounter.d.ts} +0 -0
  686. /package/esm/form/{Fieldset → fieldset}/Fieldset.d.ts +0 -0
  687. /package/esm/form/{Fieldset → fieldset}/Fieldset.js +0 -0
  688. /package/esm/form/{Fieldset → fieldset}/context.d.ts +0 -0
  689. /package/esm/form/{Fieldset → fieldset}/context.js +0 -0
  690. /package/esm/form/{Fieldset → fieldset}/useFieldset.d.ts +0 -0
  691. /package/esm/form/{Fieldset → fieldset}/useFieldset.js +0 -0
  692. /package/esm/form/{TextareaCounter.d.ts → textarea/TextareaCounter.d.ts} +0 -0
  693. /package/src/form/{Fieldset → fieldset}/Fieldset.tsx +0 -0
  694. /package/src/form/{Fieldset → fieldset}/context.ts +0 -0
  695. /package/src/form/{Fieldset → fieldset}/useFieldset.ts +0 -0
@@ -0,0 +1,78 @@
1
+ import { expectTypeOf } from "vitest";
2
+ import { ModalProps } from "./types";
3
+
4
+ test("ModalProps works as intended", () => {
5
+ expectTypeOf({
6
+ header: { heading: "Label" },
7
+ children: "OK",
8
+ }).toMatchTypeOf<ModalProps>();
9
+
10
+ expectTypeOf({
11
+ header: { heading: "Label" },
12
+ "aria-label": "Label",
13
+ children: "OK",
14
+ }).toMatchTypeOf<ModalProps>();
15
+
16
+ expectTypeOf({
17
+ header: { heading: "Label" },
18
+ "aria-labelledby": "Label",
19
+ children: "OK",
20
+ }).toMatchTypeOf<ModalProps>();
21
+
22
+ expectTypeOf({
23
+ "aria-label": "Label",
24
+ children: "OK",
25
+ }).toMatchTypeOf<ModalProps>();
26
+
27
+ expectTypeOf({
28
+ "aria-labelledby": "Label",
29
+ children: "OK",
30
+ }).toMatchTypeOf<ModalProps>();
31
+
32
+ expectTypeOf({
33
+ "aria-label": "Label",
34
+ open: true,
35
+ onClose: () => null,
36
+ children: "OK",
37
+ }).toMatchTypeOf<ModalProps>();
38
+
39
+ expectTypeOf({
40
+ children: "Mangler label",
41
+ }).not.toMatchTypeOf<ModalProps>();
42
+
43
+ expectTypeOf({
44
+ open: true,
45
+ children: "Mangler onClose eller label",
46
+ }).not.toMatchTypeOf<ModalProps>();
47
+
48
+ expectTypeOf({
49
+ open: true,
50
+ "aria-label": "Label",
51
+ children: "Mangler onClose",
52
+ }).not.toMatchTypeOf<ModalProps>();
53
+
54
+ expectTypeOf({
55
+ open: true,
56
+ onClose: () => null,
57
+ children: "Mangler label",
58
+ }).not.toMatchTypeOf<ModalProps>();
59
+
60
+ expectTypeOf({
61
+ header: { heading: "Label" },
62
+ open: true,
63
+ children: "Mangler onClose",
64
+ }).not.toMatchTypeOf<ModalProps>();
65
+
66
+ expectTypeOf({
67
+ header: { heading: "Label" },
68
+ "aria-label": "Label",
69
+ "aria-labelledby": "Label",
70
+ children: "For mange labels",
71
+ }).not.toMatchTypeOf<ModalProps>();
72
+
73
+ expectTypeOf({
74
+ "aria-label": "Label",
75
+ "aria-labelledby": "Label",
76
+ children: "For mange labels",
77
+ }).not.toMatchTypeOf<ModalProps>();
78
+ });
@@ -81,11 +81,25 @@ interface ModalPropsBase extends React.DialogHTMLAttributes<HTMLDialogElement> {
81
81
  // Require onClose if you use open & Require either header, aria-labelledby or aria-label
82
82
  export type ModalProps = ModalPropsBase &
83
83
  (
84
- | { open?: never }
85
- | { open: boolean | undefined; onClose: ModalPropsBase["onClose"] }
84
+ | { onClose: ModalPropsBase["onClose"]; open: boolean | undefined }
85
+ | { onClose?: ModalPropsBase["onClose"]; open?: never }
86
86
  ) &
87
87
  (
88
- | { header: ModalPropsBase["header"] }
88
+ | {
89
+ header: ModalPropsBase["header"];
90
+ "aria-labelledby": string;
91
+ "aria-label"?: never;
92
+ }
93
+ | {
94
+ header: ModalPropsBase["header"];
95
+ "aria-label": string;
96
+ "aria-labelledby"?: never;
97
+ }
98
+ | {
99
+ header: ModalPropsBase["header"];
100
+ "aria-labelledby"?: never;
101
+ "aria-label"?: never;
102
+ }
89
103
  | { "aria-labelledby": string; "aria-label"?: never }
90
104
  | { "aria-labelledby"?: never; "aria-label": string }
91
105
  );
@@ -1 +1,6 @@
1
+ "use client";
1
2
  export { default as Pagination, type PaginationProps } from "./Pagination";
3
+ export {
4
+ default as PaginationItem,
5
+ type PaginationItemProps,
6
+ } from "./PaginationItem";
@@ -1,15 +1,16 @@
1
1
  import faker from "faker";
2
+ import { describe, expect, test } from "vitest";
2
3
  import { getSteps } from "./Pagination";
3
4
 
4
5
  describe("getSteps", () => {
5
- it("lists all pages when count is <= 7", () => {
6
+ test("lists all pages when count is <= 7", () => {
6
7
  const count = faker.datatype.number({ min: 1, max: 7 });
7
8
  expect(getSteps({ page: 1, count })).toEqual(
8
9
  Array.from({ length: count }, (_, i) => i + 1),
9
10
  );
10
11
  });
11
12
 
12
- it("has an end ellipsis when count >= 8", () => {
13
+ test("has an end ellipsis when count >= 8", () => {
13
14
  const count = faker.datatype.number({ min: 8 });
14
15
  const page = faker.datatype.number({ min: 1, max: 4 });
15
16
  expect(
@@ -20,7 +21,7 @@ describe("getSteps", () => {
20
21
  ).toEqual([1, 2, 3, 4, 5, "ellipsis", count]);
21
22
  });
22
23
 
23
- it("has a start ellipsis when count - page >= 3", () => {
24
+ test("has a start ellipsis when count - page >= 3", () => {
24
25
  const count = faker.datatype.number({ min: 8 });
25
26
  const page = faker.datatype.number({ min: count - 3, max: count });
26
27
  expect(
@@ -39,7 +40,7 @@ describe("getSteps", () => {
39
40
  ]);
40
41
  });
41
42
 
42
- it("has start & end ellipsis when count is high", () => {
43
+ test("has start & end ellipsis when count is high", () => {
43
44
  const count = faker.datatype.number({ min: 9 });
44
45
  const page = faker.datatype.number({ min: 5, max: count - 4 });
45
46
  expect(
@@ -50,7 +51,7 @@ describe("getSteps", () => {
50
51
  ).toEqual([1, "ellipsis", page - 1, page, page + 1, "ellipsis", count]);
51
52
  });
52
53
 
53
- it("can have a reduced siblingCount", () => {
54
+ test("can have a reduced siblingCount", () => {
54
55
  const count = faker.datatype.number({ min: 7 });
55
56
  const page = faker.datatype.number({ min: 4, max: count - 3 });
56
57
  expect(
@@ -62,7 +63,7 @@ describe("getSteps", () => {
62
63
  ).toEqual([1, "ellipsis", page, "ellipsis", count]);
63
64
  });
64
65
 
65
- it("can have an increased siblingCount", () => {
66
+ test("can have an increased siblingCount", () => {
66
67
  const count = faker.datatype.number({ min: 11 });
67
68
  const page = faker.datatype.number({ min: 6, max: count - 5 });
68
69
  expect(
@@ -84,7 +85,7 @@ describe("getSteps", () => {
84
85
  ]);
85
86
  });
86
87
 
87
- it("can have an reduced boundaryCount", () => {
88
+ test("can have an reduced boundaryCount", () => {
88
89
  const count = faker.datatype.number({ min: 7 });
89
90
  const page = faker.datatype.number({ min: 4, max: count - 3 });
90
91
  expect(
@@ -96,7 +97,7 @@ describe("getSteps", () => {
96
97
  ).toEqual(["ellipsis", page - 1, page, page + 1, "ellipsis"]);
97
98
  });
98
99
 
99
- it("can have an increased boundaryCount", () => {
100
+ test("can have an increased boundaryCount", () => {
100
101
  const count = faker.datatype.number({ min: 11 });
101
102
  const page = faker.datatype.number({ min: 6, max: count - 5 });
102
103
  expect(
@@ -1,5 +1,6 @@
1
1
  import { act, fireEvent, screen } from "@testing-library/react";
2
2
  import React from "react";
3
+ import { describe, expect, test, vi } from "vitest";
3
4
  import { renderWithStyles as render } from "../../tests/utils";
4
5
  import Popover from "./Popover";
5
6
 
@@ -34,8 +35,8 @@ describe("Popover", () => {
34
35
  expect(screen.getByTestId("popover-id")).not.toBeVisible();
35
36
  });
36
37
 
37
- it("outsideClick", async () => {
38
- const fn = jest.fn();
38
+ test("outsideClick", async () => {
39
+ const fn = vi.fn();
39
40
  render(
40
41
  <div>
41
42
  <Popover
@@ -58,8 +59,8 @@ describe("Popover", () => {
58
59
  expect(fn).toHaveBeenCalled();
59
60
  });
60
61
 
61
- it("escape", async () => {
62
- const fn = jest.fn();
62
+ test("escape", async () => {
63
+ const fn = vi.fn();
63
64
  const { container } = render(
64
65
  <div>
65
66
  <Popover
@@ -83,8 +84,8 @@ describe("Popover", () => {
83
84
  expect(fn).toHaveBeenCalled();
84
85
  });
85
86
 
86
- it("keep open on popover-focus", async () => {
87
- const fn = jest.fn();
87
+ test("keep open on popover-focus", async () => {
88
+ const fn = vi.fn();
88
89
  render(
89
90
  <div>
90
91
  <Popover
@@ -106,8 +107,8 @@ describe("Popover", () => {
106
107
  expect(fn).toHaveBeenCalledTimes(0);
107
108
  }, 20000);
108
109
 
109
- it("keep open on popover-click", async () => {
110
- const fn = jest.fn();
110
+ test("keep open on popover-click", async () => {
111
+ const fn = vi.fn();
111
112
  render(
112
113
  <div>
113
114
  <Popover
@@ -1,2 +1,6 @@
1
+ "use client";
1
2
  export { default as Popover, type PopoverProps } from "./Popover";
2
- export { type PopoverContentProps } from "./PopoverContent";
3
+ export {
4
+ default as PopoverContent,
5
+ type PopoverContentProps,
6
+ } from "./PopoverContent";
@@ -1,6 +1,6 @@
1
1
  import React, { useState } from "react";
2
2
  import { Button } from "../button";
3
- import { Popover } from "../index";
3
+ import Popover from "./Popover";
4
4
 
5
5
  const placements = [
6
6
  "top",
@@ -1,6 +1,6 @@
1
1
  import React from "react";
2
- import { Box } from "../../layout/box";
3
- import { Provider } from "../../provider";
2
+ import { Box } from "../layout/box";
3
+ import { Provider } from "../provider";
4
4
  import { Portal } from "./Portal";
5
5
 
6
6
  export default {
@@ -12,7 +12,7 @@ export default {
12
12
 
13
13
  export const Default = () => {
14
14
  return (
15
- <Box background="surface-neutral-subtle" border>
15
+ <Box background="surface-neutral-subtle">
16
16
  <h1>In regular DOM tree</h1>
17
17
  <p>
18
18
  Lorem ipsum dolor sit amet consectetur adipisicing elit. Temporibus
@@ -65,7 +65,10 @@ export const CustomPortalRootFromProvider = () => {
65
65
  <p>This is mounted to Tree B, while created inside Tree A</p>
66
66
  </Portal>
67
67
  </Box>
68
- <Box background="surface-alt-3-subtle" ref={setPortalContainer}>
68
+ <Box
69
+ background="surface-alt-3-subtle"
70
+ ref={(el) => el && setPortalContainer(el)}
71
+ >
69
72
  <h1>Tree B</h1>
70
73
  </Box>
71
74
  </Box>
@@ -75,7 +78,7 @@ export const CustomPortalRootFromProvider = () => {
75
78
 
76
79
  export const AsChild = () => {
77
80
  return (
78
- <Box background="surface-neutral-subtle" border>
81
+ <Box background="surface-neutral-subtle">
79
82
  <h1>In regular DOM tree</h1>
80
83
  <p>
81
84
  Lorem ipsum dolor sit amet consectetur adipisicing elit. Temporibus
@@ -1,8 +1,8 @@
1
1
  import React, { HTMLAttributes, forwardRef } from "react";
2
2
  import ReactDOM from "react-dom";
3
- import { useProvider } from "../../provider";
4
- import { Slot } from "../../util/Slot";
5
- import { AsChildProps } from "../../util/types";
3
+ import { useProvider } from "../provider/Provider";
4
+ import { Slot } from "../util/Slot";
5
+ import { AsChildProps } from "../util/types";
6
6
 
7
7
  interface PortalBaseProps extends HTMLAttributes<HTMLDivElement> {
8
8
  /**
@@ -0,0 +1,2 @@
1
+ "use client";
2
+ export { default as Portal, type PortalProps } from "./Portal";
@@ -1 +1,2 @@
1
- export { default as Provider, useProvider } from "./Provider";
1
+ "use client";
2
+ export { default as Provider, type ProviderProps } from "./Provider";
@@ -1,2 +1,2 @@
1
- export { default as ReadMore } from "./ReadMore";
2
- export { type ReadMoreProps } from "./ReadMore";
1
+ "use client";
2
+ export { default as ReadMore, type ReadMoreProps } from "./ReadMore";
@@ -1,2 +1,2 @@
1
- export { default as Skeleton } from "./Skeleton";
2
- export type { SkeletonProps } from "./Skeleton";
1
+ "use client";
2
+ export { default as Skeleton, type SkeletonProps } from "./Skeleton";
@@ -2,7 +2,7 @@ import React from "react";
2
2
  import { Skeleton } from ".";
3
3
  import { Alert } from "../alert";
4
4
  import { Button } from "../button";
5
- import { Checkbox } from "../form";
5
+ import { Checkbox } from "../form/checkbox";
6
6
  import { BodyLong, Heading } from "../typography";
7
7
 
8
8
  export default {
@@ -1 +1,3 @@
1
+ "use client";
1
2
  export { default as Stepper, type StepperProps } from "./Stepper";
3
+ export { default as StepperStep, type StepperStepProps } from "./Step";
@@ -1,9 +1,16 @@
1
- export { type BodyProps } from "./Body";
2
- export { type ColumnHeaderProps } from "./ColumnHeader";
3
- export { type DataCellProps } from "./DataCell";
4
- export { type ExpandableRowProps } from "./ExpandableRow";
5
- export { type HeaderProps } from "./Header";
6
- export { type HeaderCellProps } from "./HeaderCell";
7
- export { type RowProps } from "./Row";
1
+ "use client";
2
+ export { default as TableBody, type BodyProps } from "./Body";
3
+ export {
4
+ default as TableColumnHeader,
5
+ type ColumnHeaderProps,
6
+ } from "./ColumnHeader";
7
+ export { default as TableDataCell, type DataCellProps } from "./DataCell";
8
+ export {
9
+ default as TableExpandableRow,
10
+ type ExpandableRowProps,
11
+ } from "./ExpandableRow";
12
+ export { default as TableHeader, type HeaderProps } from "./Header";
13
+ export { default as TableHeaderCell, type HeaderCellProps } from "./HeaderCell";
14
+ export { default as TableRow, type RowProps } from "./Row";
8
15
  export { default as Table, type TableProps } from "./Table";
9
16
  export { type SortState } from "./types";
@@ -1,7 +1,7 @@
1
1
  import React, { useState } from "react";
2
2
  import { Table, TableProps } from "../";
3
3
  import { Button } from "../../button";
4
- import { Checkbox } from "../../form";
4
+ import { Checkbox } from "../../form/checkbox";
5
5
  import { VStack } from "../../layout/stack";
6
6
  import {
7
7
  Expandable,
@@ -1,6 +1,6 @@
1
1
  import React, { useState } from "react";
2
2
  import { Button } from "../../button";
3
- import { Checkbox } from "../../form";
3
+ import { Checkbox } from "../../form/checkbox";
4
4
  import { Link } from "../../link";
5
5
  import Table from "../Table";
6
6
 
@@ -1,5 +1,6 @@
1
1
  import { fireEvent, render, screen } from "@testing-library/react";
2
2
  import React from "react";
3
+ import { describe, expect, test } from "vitest";
3
4
  import { Tabs } from "./Tabs";
4
5
 
5
6
  const TestTabs = ({
package/src/tabs/index.ts CHANGED
@@ -1,4 +1,5 @@
1
- export { type TabProps } from "./Tab";
2
- export { type TabListProps } from "./TabList";
3
- export { type TabPanelProps } from "./TabPanel";
1
+ "use client";
2
+ export { default as TabsTab, type TabProps } from "./Tab";
3
+ export { default as TabsList, type TabListProps } from "./TabList";
4
+ export { default as TabsPanel, type TabPanelProps } from "./TabPanel";
4
5
  export { default as Tabs, type TabsProps } from "./Tabs";
package/src/tag/index.ts CHANGED
@@ -1 +1,2 @@
1
+ "use client";
1
2
  export { default as Tag, type TagProps } from "./Tag";
@@ -1,6 +1,9 @@
1
- export { default as Timeline } from "./Timeline";
2
- export type { TimelineProps } from "./Timeline";
3
- export type { TimelineRowProps } from "./TimelineRow";
4
- export type { TimelinePinProps } from "./Pin";
5
- export type { TimelinePeriodProps } from "./period";
6
- export type { TimelineZoomButtonProps } from "./zoom/ZoomButton";
1
+ "use client";
2
+ export { default as Timeline, type TimelineProps } from "./Timeline";
3
+ export { default as TimelineRow, type TimelineRowProps } from "./TimelineRow";
4
+ export { default as TimelinePin, type TimelinePinProps } from "./Pin";
5
+ export { default as TimelinePeriod, type TimelinePeriodProps } from "./period";
6
+ export {
7
+ default as TimelineZoomButton,
8
+ type TimelineZoomButtonProps,
9
+ } from "./zoom/ZoomButton";
@@ -5,7 +5,7 @@ import {
5
5
  EnvelopeOpenIcon,
6
6
  InboxUpIcon,
7
7
  } from "@navikt/aksel-icons";
8
- import { ToggleGroup } from "../index";
8
+ import ToggleGroup from "./ToggleGroup";
9
9
 
10
10
  const meta: Meta<typeof ToggleGroup> = {
11
11
  title: "ds-react/ToggleGroup",
@@ -1,5 +1,6 @@
1
1
  import { fireEvent, render, screen } from "@testing-library/react";
2
2
  import React from "react";
3
+ import { describe, expect, test } from "vitest";
3
4
  import { ToggleGroup } from "./ToggleGroup";
4
5
 
5
6
  const TestToggleGroup = ({ value, onChange, defaultValue }: any) => (
@@ -3,7 +3,7 @@ import cl from "clsx";
3
3
  import React, { HTMLAttributes, forwardRef, useState } from "react";
4
4
  import { Label } from "../typography";
5
5
  import { useId } from "../util/hooks";
6
- import ToggleItem, { ToggleItemProps } from "./ToggleItem";
6
+ import ToggleItem, { ToggleGroupItemProps } from "./ToggleItem";
7
7
  import { ToggleGroupContext } from "./context";
8
8
 
9
9
  export interface ToggleGroupProps
@@ -45,10 +45,10 @@ interface ToggleGroupComponent
45
45
  ToggleGroupProps & React.RefAttributes<HTMLDivElement>
46
46
  > {
47
47
  /**
48
- * @see 🏷️ {@link ToggleItemProps}
48
+ * @see 🏷️ {@link ToggleGroupItemProps}
49
49
  */
50
50
  Item: React.ForwardRefExoticComponent<
51
- ToggleItemProps & React.RefAttributes<HTMLButtonElement>
51
+ ToggleGroupItemProps & React.RefAttributes<HTMLButtonElement>
52
52
  >;
53
53
  }
54
54
 
@@ -4,7 +4,7 @@ import React, { forwardRef, useContext } from "react";
4
4
  import { BodyShort } from "../typography/BodyShort";
5
5
  import { ToggleGroupContext } from "./context";
6
6
 
7
- export interface ToggleItemProps
7
+ export interface ToggleGroupItemProps
8
8
  extends React.HTMLAttributes<HTMLButtonElement> {
9
9
  /**
10
10
  * Content
@@ -16,7 +16,7 @@ export interface ToggleItemProps
16
16
  value: string;
17
17
  }
18
18
 
19
- const ToggleItem = forwardRef<HTMLButtonElement, ToggleItemProps>(
19
+ const ToggleItem = forwardRef<HTMLButtonElement, ToggleGroupItemProps>(
20
20
  ({ className, children, ...rest }, ref) => {
21
21
  const context = useContext(ToggleGroupContext);
22
22
 
@@ -1,2 +1,6 @@
1
+ "use client";
1
2
  export { default as ToggleGroup, type ToggleGroupProps } from "./ToggleGroup";
2
- export { type ToggleItemProps } from "./ToggleItem";
3
+ export {
4
+ default as ToggleGroupItem,
5
+ type ToggleGroupItemProps,
6
+ } from "./ToggleItem";
@@ -1,6 +1,7 @@
1
1
  import { act, fireEvent, screen } from "@testing-library/react";
2
2
  import userEvent from "@testing-library/user-event";
3
3
  import React from "react";
4
+ import { describe, expect, test } from "vitest";
4
5
  import {
5
6
  focusVisible,
6
7
  renderWithStyles as render,
@@ -64,7 +65,7 @@ describe("Tooltip", () => {
64
65
  expect(screen.queryByRole("tooltip")).toBeNull();
65
66
  });
66
67
 
67
- it("delay", async () => {
68
+ test("delay", async () => {
68
69
  const user = userEvent.setup();
69
70
 
70
71
  render(
@@ -85,7 +86,7 @@ describe("Tooltip", () => {
85
86
  expect(screen.getByRole("tooltip")).toBeVisible();
86
87
  });
87
88
 
88
- it("outsideClick", async () => {
89
+ test("outsideClick", async () => {
89
90
  render(
90
91
  <div>
91
92
  <Tooltip content="Hello World">
@@ -108,7 +109,7 @@ describe("Tooltip", () => {
108
109
  expect(screen.queryByRole("tooltip")).toBeNull();
109
110
  });
110
111
 
111
- it("keep open on tooltip-click", async () => {
112
+ test("keep open on tooltip-click", async () => {
112
113
  render(
113
114
  <div>
114
115
  <Tooltip content="Hello World">
@@ -128,7 +129,7 @@ describe("Tooltip", () => {
128
129
  expect(screen.getByRole("tooltip")).toBeVisible();
129
130
  });
130
131
 
131
- it("close on focus-loss", async () => {
132
+ test("close on focus-loss", async () => {
132
133
  render(
133
134
  <div>
134
135
  <Tooltip content="Hello World">
@@ -14,7 +14,7 @@ import {
14
14
  import cl from "clsx";
15
15
  import React, { HTMLAttributes, cloneElement, forwardRef, useRef } from "react";
16
16
  import { useModalContext } from "../modal/Modal.context";
17
- import Portal from "../overlays/portal/Portal";
17
+ import { Portal } from "../portal";
18
18
  import { Detail } from "../typography";
19
19
  import { useId } from "../util/hooks";
20
20
  import { useControllableState } from "../util/hooks/useControllableState";
@@ -1 +1,2 @@
1
+ "use client";
1
2
  export { default as Tooltip, type TooltipProps } from "./Tooltip";
@@ -2,7 +2,7 @@ import { Meta } from "@storybook/react";
2
2
  import React from "react";
3
3
  import { Alert } from "../alert";
4
4
  import { Button } from "../button";
5
- import { Search } from "../form";
5
+ import { Search } from "../form/search";
6
6
  import Tooltip from "./Tooltip";
7
7
 
8
8
  export default {
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  export { type BodyLongProps, default as BodyLong } from "./BodyLong";
2
3
  export { type BodyShortProps, default as BodyShort } from "./BodyShort";
3
4
  export { default as Detail, type DetailProps } from "./Detail";
@@ -1,12 +1,13 @@
1
1
  import { fireEvent, render, screen } from "@testing-library/react";
2
2
  import React from "react";
3
+ import { describe, expect, test, vi } from "vitest";
3
4
  import { Button } from "../../button";
4
5
  import { Slot } from "../Slot";
5
6
 
6
7
  describe("Slot", () => {
7
8
  describe("should handle forwarning events", () => {
8
9
  test("Should call onClick when event is on Slot", async () => {
9
- const handleClick = jest.fn();
10
+ const handleClick = vi.fn();
10
11
  render(
11
12
  <Slot onClick={handleClick}>
12
13
  <Button>Button</Button>
@@ -17,7 +18,7 @@ describe("Slot", () => {
17
18
  });
18
19
 
19
20
  test("Should call onClick when event is on Child", async () => {
20
- const handleClick = jest.fn();
21
+ const handleClick = vi.fn();
21
22
  render(
22
23
  <Slot>
23
24
  <Button onClick={handleClick}>Button</Button>
@@ -28,8 +29,8 @@ describe("Slot", () => {
28
29
  });
29
30
 
30
31
  test("Should call onClick when event is on Child and Slot", async () => {
31
- const handleClickSlot = jest.fn();
32
- const handleClick = jest.fn();
32
+ const handleClickSlot = vi.fn();
33
+ const handleClick = vi.fn();
33
34
  render(
34
35
  <Slot onClick={handleClickSlot}>
35
36
  <Button onClick={handleClick}>Button</Button>
@@ -41,7 +42,7 @@ describe("Slot", () => {
41
42
  });
42
43
 
43
44
  test("Should call onClick when event is on Child and undefined on Slot", async () => {
44
- const handleClick = jest.fn();
45
+ const handleClick = vi.fn();
45
46
  render(
46
47
  <Slot onClick={undefined}>
47
48
  <Button onClick={handleClick}>Button</Button>
@@ -52,7 +53,7 @@ describe("Slot", () => {
52
53
  });
53
54
 
54
55
  test("Should call onClick when event is on Slot and undefined on Child", async () => {
55
- const handleClick = jest.fn();
56
+ const handleClick = vi.fn();
56
57
  render(
57
58
  <Slot onClick={handleClick}>
58
59
  <Button onClick={undefined}>Button</Button>
@@ -1,5 +1,6 @@
1
1
  import { render, screen } from "@testing-library/react";
2
2
  import React from "react";
3
+ import { describe, expect, test } from "vitest";
3
4
  import { useMedia } from "../hooks";
4
5
 
5
6
  function TestComponent({ fallback }: { fallback?: boolean }) {
@@ -1,3 +1,4 @@
1
+ "use client";
1
2
  // https://github.com/mui/material-ui/blob/master/packages/mui-utils/src/debounce.js
2
3
  export default function debounce(func, wait = 166) {
3
4
  let timeout;
@@ -1,3 +1,5 @@
1
+ "use client";
2
+
1
3
  import { useLayoutEffect } from "react";
2
4
 
3
5
  export const useClientLayoutEffect = globalThis?.document
@@ -1,3 +1,5 @@
1
+ "use client";
2
+
1
3
  import { useEffect } from "react";
2
4
 
3
5
  export interface ListenerT {