@navikt/ds-react 5.6.4 → 5.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (473) hide show
  1. package/_docs.json +297 -257
  2. package/cjs/accordion/AccordionContent.js +2 -2
  3. package/cjs/accordion/AccordionHeader.js +2 -2
  4. package/cjs/alert/Alert.js +2 -2
  5. package/cjs/button/Button.js +6 -5
  6. package/cjs/copybutton/CopyButton.js +8 -7
  7. package/cjs/date/DateInput.js +6 -5
  8. package/cjs/date/datepicker/DatePicker.js +6 -5
  9. package/cjs/date/datepicker/DatePickerStandalone.js +6 -6
  10. package/cjs/date/datepicker/parts/Caption.js +5 -4
  11. package/cjs/date/datepicker/parts/DropdownCaption.js +7 -6
  12. package/cjs/date/datepicker/parts/WeekRow.js +1 -1
  13. package/cjs/date/datepicker/types.js +2 -0
  14. package/cjs/date/monthpicker/MonthCaption.js +5 -4
  15. package/cjs/date/monthpicker/MonthPicker.js +4 -3
  16. package/cjs/date/monthpicker/MonthSelector.js +2 -2
  17. package/cjs/date/monthpicker/types.js +2 -0
  18. package/cjs/date/utils/parse-date.js +7 -7
  19. package/cjs/dropdown/Dropdown.js +4 -4
  20. package/cjs/dropdown/Menu/GroupedList/GroupedItem.js +2 -2
  21. package/cjs/dropdown/Menu/List/Item.js +3 -3
  22. package/cjs/dropdown/Menu/index.js +2 -2
  23. package/cjs/dropdown/Toggle.js +3 -3
  24. package/cjs/dropdown/context.js +5 -0
  25. package/cjs/expansion-card/ExpansionCard.js +3 -7
  26. package/cjs/expansion-card/ExpansionCardContent.js +4 -4
  27. package/cjs/expansion-card/ExpansionCardDescription.js +5 -5
  28. package/cjs/expansion-card/ExpansionCardHeader.js +3 -3
  29. package/cjs/expansion-card/ExpansionCardTitle.js +1 -1
  30. package/cjs/expansion-card/context.js +9 -0
  31. package/cjs/form/ConfirmationPanel.js +8 -6
  32. package/cjs/form/Fieldset/Fieldset.js +11 -10
  33. package/cjs/form/Fieldset/context.js +5 -0
  34. package/cjs/form/Fieldset/index.js +2 -1
  35. package/cjs/form/Select.js +8 -7
  36. package/cjs/form/Switch.js +7 -5
  37. package/cjs/form/TextField.js +6 -5
  38. package/cjs/form/Textarea.js +8 -7
  39. package/cjs/form/checkbox/Checkbox.js +1 -1
  40. package/cjs/form/checkbox/CheckboxGroup.js +4 -4
  41. package/cjs/form/checkbox/types.js +2 -0
  42. package/cjs/form/checkbox/useCheckbox.js +2 -2
  43. package/cjs/form/combobox/Combobox.js +6 -5
  44. package/cjs/form/combobox/FilteredOptions/FilteredOptions.js +6 -5
  45. package/cjs/form/combobox/Input/Input.js +2 -2
  46. package/cjs/form/combobox/SelectedOptions/SelectedOptions.js +3 -3
  47. package/cjs/form/error-summary/ErrorSummary.js +3 -3
  48. package/cjs/form/radio/RadioGroup.js +6 -6
  49. package/cjs/form/radio/types.js +2 -0
  50. package/cjs/form/radio/useRadio.js +2 -2
  51. package/cjs/form/search/Search.js +10 -9
  52. package/cjs/form/search/SearchButton.js +5 -5
  53. package/cjs/form/search/context.js +5 -0
  54. package/cjs/form/useFormField.js +5 -5
  55. package/cjs/guide-panel/Illustration.js +2 -2
  56. package/cjs/help-text/HelpText.js +5 -4
  57. package/cjs/link-panel/LinkPanel.js +2 -2
  58. package/cjs/link-panel/LinkPanelDescription.js +2 -2
  59. package/cjs/list/List.js +4 -8
  60. package/cjs/list/ListItem.js +2 -2
  61. package/cjs/list/context.js +9 -0
  62. package/cjs/list/types.js +2 -0
  63. package/cjs/loader/Loader.js +4 -4
  64. package/cjs/modal/Modal.js +24 -22
  65. package/cjs/modal/types.js +2 -0
  66. package/cjs/pagination/Pagination.js +5 -5
  67. package/cjs/pagination/PaginationItem.js +2 -2
  68. package/cjs/popover/Popover.js +4 -5
  69. package/cjs/stepper/Step.js +5 -5
  70. package/cjs/stepper/Stepper.js +4 -4
  71. package/cjs/stepper/context.js +5 -0
  72. package/cjs/table/ColumnHeader.js +3 -3
  73. package/cjs/table/DataCell.js +2 -2
  74. package/cjs/table/ExpandableRow.js +2 -2
  75. package/cjs/table/Table.js +7 -7
  76. package/cjs/table/context.js +5 -0
  77. package/cjs/table/types.js +2 -0
  78. package/cjs/tabs/Tab.js +4 -4
  79. package/cjs/tabs/TabList.js +5 -5
  80. package/cjs/tabs/Tabs.js +3 -3
  81. package/cjs/tabs/context.js +5 -0
  82. package/cjs/tag/Tag.js +2 -2
  83. package/cjs/timeline/period/NonClickablePeriod.js +1 -1
  84. package/cjs/timeline/period/types.js +2 -0
  85. package/cjs/toggle-group/ToggleGroup.js +7 -6
  86. package/cjs/toggle-group/ToggleItem.js +4 -4
  87. package/cjs/toggle-group/context.js +5 -0
  88. package/cjs/tooltip/Tooltip.js +4 -3
  89. package/cjs/util/TextareaAutoSize.js +4 -4
  90. package/cjs/util/index.js +7 -38
  91. package/cjs/util/omit.js +7 -0
  92. package/cjs/util/useClientLayoutEffect.js +10 -0
  93. package/cjs/util/useEventListener.js +17 -0
  94. package/esm/accordion/AccordionContent.js +1 -1
  95. package/esm/accordion/AccordionContent.js.map +1 -1
  96. package/esm/accordion/AccordionHeader.js +1 -1
  97. package/esm/accordion/AccordionHeader.js.map +1 -1
  98. package/esm/alert/Alert.js +1 -1
  99. package/esm/alert/Alert.js.map +1 -1
  100. package/esm/button/Button.d.ts +1 -1
  101. package/esm/button/Button.js +4 -3
  102. package/esm/button/Button.js.map +1 -1
  103. package/esm/chips/Chips.d.ts +1 -1
  104. package/esm/chips/Toggle.d.ts +1 -1
  105. package/esm/copybutton/CopyButton.d.ts +7 -7
  106. package/esm/copybutton/CopyButton.js +7 -6
  107. package/esm/copybutton/CopyButton.js.map +1 -1
  108. package/esm/date/DateInput.js +2 -1
  109. package/esm/date/DateInput.js.map +1 -1
  110. package/esm/date/datepicker/DatePicker.d.ts +5 -105
  111. package/esm/date/datepicker/DatePicker.js +4 -3
  112. package/esm/date/datepicker/DatePicker.js.map +1 -1
  113. package/esm/date/datepicker/DatePickerStandalone.d.ts +1 -1
  114. package/esm/date/datepicker/DatePickerStandalone.js +5 -5
  115. package/esm/date/datepicker/DatePickerStandalone.js.map +1 -1
  116. package/esm/date/datepicker/parts/Caption.js +2 -1
  117. package/esm/date/datepicker/parts/Caption.js.map +1 -1
  118. package/esm/date/datepicker/parts/DropdownCaption.js +3 -2
  119. package/esm/date/datepicker/parts/DropdownCaption.js.map +1 -1
  120. package/esm/date/datepicker/parts/WeekRow.js +1 -1
  121. package/esm/date/datepicker/parts/WeekRow.js.map +1 -1
  122. package/esm/date/datepicker/types.d.ts +102 -0
  123. package/esm/date/datepicker/types.js +2 -0
  124. package/esm/date/datepicker/types.js.map +1 -0
  125. package/esm/date/hooks/useMonthPicker.d.ts +1 -1
  126. package/esm/date/index.d.ts +4 -3
  127. package/esm/date/index.js +1 -1
  128. package/esm/date/index.js.map +1 -1
  129. package/esm/date/monthpicker/MonthCaption.js +2 -1
  130. package/esm/date/monthpicker/MonthCaption.js.map +1 -1
  131. package/esm/date/monthpicker/MonthPicker.d.ts +5 -86
  132. package/esm/date/monthpicker/MonthPicker.js +3 -2
  133. package/esm/date/monthpicker/MonthPicker.js.map +1 -1
  134. package/esm/date/monthpicker/MonthPickerStandalone.d.ts +1 -1
  135. package/esm/date/monthpicker/MonthPickerStandalone.js.map +1 -1
  136. package/esm/date/monthpicker/MonthSelector.js +1 -1
  137. package/esm/date/monthpicker/MonthSelector.js.map +1 -1
  138. package/esm/date/monthpicker/types.d.ts +83 -0
  139. package/esm/date/monthpicker/types.js +2 -0
  140. package/esm/date/monthpicker/types.js.map +1 -0
  141. package/esm/date/utils/parse-date.js +1 -1
  142. package/esm/date/utils/parse-date.js.map +1 -1
  143. package/esm/dropdown/Dropdown.d.ts +1 -9
  144. package/esm/dropdown/Dropdown.js +3 -3
  145. package/esm/dropdown/Dropdown.js.map +1 -1
  146. package/esm/dropdown/Menu/GroupedList/GroupedItem.d.ts +1 -1
  147. package/esm/dropdown/Menu/GroupedList/GroupedItem.js +1 -1
  148. package/esm/dropdown/Menu/GroupedList/GroupedItem.js.map +1 -1
  149. package/esm/dropdown/Menu/GroupedList/index.d.ts +1 -1
  150. package/esm/dropdown/Menu/List/Item.d.ts +1 -1
  151. package/esm/dropdown/Menu/List/Item.js +2 -2
  152. package/esm/dropdown/Menu/List/Item.js.map +1 -1
  153. package/esm/dropdown/Menu/List/index.d.ts +1 -1
  154. package/esm/dropdown/Menu/index.js +1 -1
  155. package/esm/dropdown/Menu/index.js.map +1 -1
  156. package/esm/dropdown/Toggle.js +2 -2
  157. package/esm/dropdown/Toggle.js.map +1 -1
  158. package/esm/dropdown/context.d.ts +9 -0
  159. package/esm/dropdown/context.js +3 -0
  160. package/esm/dropdown/context.js.map +1 -0
  161. package/esm/expansion-card/ExpansionCard.d.ts +1 -7
  162. package/esm/expansion-card/ExpansionCard.js +2 -6
  163. package/esm/expansion-card/ExpansionCard.js.map +1 -1
  164. package/esm/expansion-card/ExpansionCardContent.js +2 -2
  165. package/esm/expansion-card/ExpansionCardContent.js.map +1 -1
  166. package/esm/expansion-card/ExpansionCardDescription.js +3 -3
  167. package/esm/expansion-card/ExpansionCardDescription.js.map +1 -1
  168. package/esm/expansion-card/ExpansionCardHeader.js +2 -2
  169. package/esm/expansion-card/ExpansionCardHeader.js.map +1 -1
  170. package/esm/expansion-card/ExpansionCardTitle.d.ts +1 -1
  171. package/esm/expansion-card/ExpansionCardTitle.js +1 -1
  172. package/esm/expansion-card/ExpansionCardTitle.js.map +1 -1
  173. package/esm/expansion-card/context.d.ts +7 -0
  174. package/esm/expansion-card/context.js +7 -0
  175. package/esm/expansion-card/context.js.map +1 -0
  176. package/esm/form/ConfirmationPanel.d.ts +1 -1
  177. package/esm/form/ConfirmationPanel.js +4 -2
  178. package/esm/form/ConfirmationPanel.js.map +1 -1
  179. package/esm/form/Fieldset/Fieldset.d.ts +0 -23
  180. package/esm/form/Fieldset/Fieldset.js +4 -3
  181. package/esm/form/Fieldset/Fieldset.js.map +1 -1
  182. package/esm/form/Fieldset/context.d.ts +24 -0
  183. package/esm/form/Fieldset/context.js +3 -0
  184. package/esm/form/Fieldset/context.js.map +1 -0
  185. package/esm/form/Fieldset/index.d.ts +2 -1
  186. package/esm/form/Fieldset/index.js +2 -1
  187. package/esm/form/Fieldset/index.js.map +1 -1
  188. package/esm/form/Select.js +4 -3
  189. package/esm/form/Select.js.map +1 -1
  190. package/esm/form/Switch.js +3 -1
  191. package/esm/form/Switch.js.map +1 -1
  192. package/esm/form/TextField.js +2 -1
  193. package/esm/form/TextField.js.map +1 -1
  194. package/esm/form/Textarea.js +2 -1
  195. package/esm/form/Textarea.js.map +1 -1
  196. package/esm/form/checkbox/Checkbox.d.ts +2 -34
  197. package/esm/form/checkbox/Checkbox.js +1 -1
  198. package/esm/form/checkbox/Checkbox.js.map +1 -1
  199. package/esm/form/checkbox/CheckboxGroup.d.ts +1 -1
  200. package/esm/form/checkbox/CheckboxGroup.js +2 -2
  201. package/esm/form/checkbox/CheckboxGroup.js.map +1 -1
  202. package/esm/form/checkbox/index.d.ts +2 -1
  203. package/esm/form/checkbox/index.js.map +1 -1
  204. package/esm/form/checkbox/types.d.ts +34 -0
  205. package/esm/form/checkbox/types.js +2 -0
  206. package/esm/form/checkbox/types.js.map +1 -0
  207. package/esm/form/checkbox/useCheckbox.d.ts +1 -1
  208. package/esm/form/checkbox/useCheckbox.js +1 -1
  209. package/esm/form/checkbox/useCheckbox.js.map +1 -1
  210. package/esm/form/combobox/Combobox.d.ts +1 -1
  211. package/esm/form/combobox/Combobox.js +2 -1
  212. package/esm/form/combobox/Combobox.js.map +1 -1
  213. package/esm/form/combobox/FilteredOptions/FilteredOptions.js +2 -1
  214. package/esm/form/combobox/FilteredOptions/FilteredOptions.js.map +1 -1
  215. package/esm/form/combobox/Input/Input.js +1 -1
  216. package/esm/form/combobox/Input/Input.js.map +1 -1
  217. package/esm/form/combobox/SelectedOptions/SelectedOptions.js +1 -1
  218. package/esm/form/combobox/SelectedOptions/SelectedOptions.js.map +1 -1
  219. package/esm/form/error-summary/ErrorSummary.js +1 -1
  220. package/esm/form/error-summary/ErrorSummary.js.map +1 -1
  221. package/esm/form/error-summary/ErrorSummaryItem.d.ts +1 -1
  222. package/esm/form/radio/Radio.d.ts +2 -16
  223. package/esm/form/radio/Radio.js.map +1 -1
  224. package/esm/form/radio/RadioGroup.d.ts +1 -1
  225. package/esm/form/radio/RadioGroup.js +3 -3
  226. package/esm/form/radio/RadioGroup.js.map +1 -1
  227. package/esm/form/radio/index.d.ts +2 -1
  228. package/esm/form/radio/index.js.map +1 -1
  229. package/esm/form/radio/types.d.ts +16 -0
  230. package/esm/form/radio/types.js +2 -0
  231. package/esm/form/radio/types.js.map +1 -0
  232. package/esm/form/radio/useRadio.d.ts +1 -1
  233. package/esm/form/radio/useRadio.js +1 -1
  234. package/esm/form/radio/useRadio.js.map +1 -1
  235. package/esm/form/search/Search.d.ts +0 -7
  236. package/esm/form/search/Search.js +4 -3
  237. package/esm/form/search/Search.js.map +1 -1
  238. package/esm/form/search/SearchButton.d.ts +1 -1
  239. package/esm/form/search/SearchButton.js +3 -3
  240. package/esm/form/search/SearchButton.js.map +1 -1
  241. package/esm/form/search/context.d.ts +8 -0
  242. package/esm/form/search/context.js +3 -0
  243. package/esm/form/search/context.js.map +1 -0
  244. package/esm/form/useFormField.js +3 -3
  245. package/esm/form/useFormField.js.map +1 -1
  246. package/esm/guide-panel/Illustration.js +1 -1
  247. package/esm/guide-panel/Illustration.js.map +1 -1
  248. package/esm/help-text/HelpText.d.ts +1 -1
  249. package/esm/help-text/HelpText.js +2 -1
  250. package/esm/help-text/HelpText.js.map +1 -1
  251. package/esm/link-panel/LinkPanel.d.ts +1 -1
  252. package/esm/link-panel/LinkPanel.js +1 -1
  253. package/esm/link-panel/LinkPanel.js.map +1 -1
  254. package/esm/link-panel/LinkPanelDescription.js +1 -1
  255. package/esm/link-panel/LinkPanelDescription.js.map +1 -1
  256. package/esm/list/List.d.ts +4 -35
  257. package/esm/list/List.js +2 -6
  258. package/esm/list/List.js.map +1 -1
  259. package/esm/list/ListItem.js +1 -1
  260. package/esm/list/ListItem.js.map +1 -1
  261. package/esm/list/context.d.ts +9 -0
  262. package/esm/list/context.js +7 -0
  263. package/esm/list/context.js.map +1 -0
  264. package/esm/list/index.d.ts +1 -1
  265. package/esm/list/types.d.ts +27 -0
  266. package/esm/list/types.js +2 -0
  267. package/esm/list/types.js.map +1 -0
  268. package/esm/loader/Loader.js +2 -2
  269. package/esm/loader/Loader.js.map +1 -1
  270. package/esm/modal/Modal.d.ts +2 -64
  271. package/esm/modal/Modal.js +8 -6
  272. package/esm/modal/Modal.js.map +1 -1
  273. package/esm/modal/ModalUtils.d.ts +1 -1
  274. package/esm/modal/index.d.ts +3 -2
  275. package/esm/modal/index.js.map +1 -1
  276. package/esm/modal/types.d.ts +64 -0
  277. package/esm/modal/types.js +2 -0
  278. package/esm/modal/types.js.map +1 -0
  279. package/esm/pagination/Pagination.js +1 -1
  280. package/esm/pagination/Pagination.js.map +1 -1
  281. package/esm/pagination/PaginationItem.d.ts +2 -1
  282. package/esm/pagination/PaginationItem.js +1 -1
  283. package/esm/pagination/PaginationItem.js.map +1 -1
  284. package/esm/popover/Popover.d.ts +5 -0
  285. package/esm/popover/Popover.js +5 -6
  286. package/esm/popover/Popover.js.map +1 -1
  287. package/esm/stepper/Step.d.ts +1 -1
  288. package/esm/stepper/Step.js +2 -2
  289. package/esm/stepper/Step.js.map +1 -1
  290. package/esm/stepper/Stepper.d.ts +2 -11
  291. package/esm/stepper/Stepper.js +2 -2
  292. package/esm/stepper/Stepper.js.map +1 -1
  293. package/esm/stepper/context.d.ts +10 -0
  294. package/esm/stepper/context.js +3 -0
  295. package/esm/stepper/context.js.map +1 -0
  296. package/esm/table/ColumnHeader.js +2 -2
  297. package/esm/table/ColumnHeader.js.map +1 -1
  298. package/esm/table/DataCell.js +1 -1
  299. package/esm/table/DataCell.js.map +1 -1
  300. package/esm/table/ExpandableRow.js +1 -1
  301. package/esm/table/ExpandableRow.js.map +1 -1
  302. package/esm/table/Table.d.ts +15 -23
  303. package/esm/table/Table.js +5 -5
  304. package/esm/table/Table.js.map +1 -1
  305. package/esm/table/context.d.ts +7 -0
  306. package/esm/table/context.js +3 -0
  307. package/esm/table/context.js.map +1 -0
  308. package/esm/table/index.d.ts +2 -1
  309. package/esm/table/index.js.map +1 -1
  310. package/esm/table/types.d.ts +4 -0
  311. package/esm/table/types.js +2 -0
  312. package/esm/table/types.js.map +1 -0
  313. package/esm/tabs/Tab.d.ts +1 -1
  314. package/esm/tabs/Tab.js +2 -2
  315. package/esm/tabs/Tab.js.map +1 -1
  316. package/esm/tabs/TabList.js +2 -2
  317. package/esm/tabs/TabList.js.map +1 -1
  318. package/esm/tabs/Tabs.d.ts +0 -6
  319. package/esm/tabs/Tabs.js +2 -2
  320. package/esm/tabs/Tabs.js.map +1 -1
  321. package/esm/tabs/context.d.ts +8 -0
  322. package/esm/tabs/context.js +3 -0
  323. package/esm/tabs/context.js.map +1 -0
  324. package/esm/tabs/index.d.ts +1 -1
  325. package/esm/tabs/index.js.map +1 -1
  326. package/esm/tag/Tag.js +1 -1
  327. package/esm/tag/Tag.js.map +1 -1
  328. package/esm/timeline/period/ClickablePeriod.d.ts +1 -1
  329. package/esm/timeline/period/NonClickablePeriod.d.ts +1 -1
  330. package/esm/timeline/period/NonClickablePeriod.js +1 -1
  331. package/esm/timeline/period/NonClickablePeriod.js.map +1 -1
  332. package/esm/timeline/period/index.d.ts +0 -13
  333. package/esm/timeline/period/index.js.map +1 -1
  334. package/esm/timeline/period/types.d.ts +14 -0
  335. package/esm/timeline/period/types.js +2 -0
  336. package/esm/timeline/period/types.js.map +1 -0
  337. package/esm/toggle-group/ToggleGroup.d.ts +0 -4
  338. package/esm/toggle-group/ToggleGroup.js +4 -3
  339. package/esm/toggle-group/ToggleGroup.js.map +1 -1
  340. package/esm/toggle-group/ToggleItem.js +3 -3
  341. package/esm/toggle-group/ToggleItem.js.map +1 -1
  342. package/esm/toggle-group/context.d.ts +6 -0
  343. package/esm/toggle-group/context.js +3 -0
  344. package/esm/toggle-group/context.js.map +1 -0
  345. package/esm/tooltip/Tooltip.js +2 -1
  346. package/esm/tooltip/Tooltip.js.map +1 -1
  347. package/esm/util/TextareaAutoSize.js +1 -1
  348. package/esm/util/TextareaAutoSize.js.map +1 -1
  349. package/esm/util/index.d.ts +5 -11
  350. package/esm/util/index.js +5 -33
  351. package/esm/util/index.js.map +1 -1
  352. package/esm/util/omit.d.ts +1 -0
  353. package/esm/util/omit.js +4 -0
  354. package/esm/util/omit.js.map +1 -0
  355. package/esm/util/useClientLayoutEffect.d.ts +2 -0
  356. package/esm/util/useClientLayoutEffect.js +8 -0
  357. package/esm/util/useClientLayoutEffect.js.map +1 -0
  358. package/esm/util/useEventListener.d.ts +5 -0
  359. package/esm/util/useEventListener.js +14 -0
  360. package/esm/util/useEventListener.js.map +1 -0
  361. package/package.json +3 -3
  362. package/src/accordion/AccordionContent.tsx +1 -1
  363. package/src/accordion/AccordionHeader.tsx +1 -1
  364. package/src/alert/Alert.tsx +1 -1
  365. package/src/button/Button.tsx +9 -3
  366. package/src/chips/Chips.tsx +1 -1
  367. package/src/chips/Toggle.tsx +1 -1
  368. package/src/copybutton/CopyButton.tsx +28 -29
  369. package/src/copybutton/copy-button.stories.tsx +24 -22
  370. package/src/date/DateInput.tsx +2 -1
  371. package/src/date/datepicker/DatePicker.tsx +9 -124
  372. package/src/date/datepicker/DatePickerStandalone.tsx +9 -9
  373. package/src/date/datepicker/parts/Caption.tsx +3 -1
  374. package/src/date/datepicker/parts/DropdownCaption.tsx +3 -2
  375. package/src/date/datepicker/parts/WeekRow.tsx +1 -1
  376. package/src/date/datepicker/types.ts +109 -0
  377. package/src/date/hooks/useMonthPicker.tsx +1 -1
  378. package/src/date/index.ts +5 -7
  379. package/src/date/monthpicker/MonthCaption.tsx +2 -1
  380. package/src/date/monthpicker/MonthPicker.tsx +9 -92
  381. package/src/date/monthpicker/MonthPickerStandalone.tsx +1 -1
  382. package/src/date/monthpicker/MonthSelector.tsx +1 -1
  383. package/src/date/monthpicker/types.ts +83 -0
  384. package/src/date/utils/parse-date.ts +1 -1
  385. package/src/dropdown/Dropdown.tsx +3 -12
  386. package/src/dropdown/Menu/GroupedList/GroupedItem.tsx +2 -2
  387. package/src/dropdown/Menu/GroupedList/index.tsx +1 -1
  388. package/src/dropdown/Menu/List/Item.tsx +3 -3
  389. package/src/dropdown/Menu/List/index.tsx +1 -1
  390. package/src/dropdown/Menu/index.tsx +1 -1
  391. package/src/dropdown/Toggle.tsx +2 -2
  392. package/src/dropdown/context.ts +11 -0
  393. package/src/expansion-card/ExpansionCard.tsx +3 -14
  394. package/src/expansion-card/ExpansionCardContent.tsx +2 -2
  395. package/src/expansion-card/ExpansionCardDescription.tsx +3 -3
  396. package/src/expansion-card/ExpansionCardHeader.tsx +2 -2
  397. package/src/expansion-card/ExpansionCardTitle.tsx +2 -2
  398. package/src/expansion-card/context.ts +13 -0
  399. package/src/form/ConfirmationPanel.tsx +4 -2
  400. package/src/form/Fieldset/Fieldset.tsx +4 -29
  401. package/src/form/Fieldset/context.ts +26 -0
  402. package/src/form/Fieldset/index.ts +2 -5
  403. package/src/form/Select.tsx +4 -4
  404. package/src/form/Switch.tsx +3 -1
  405. package/src/form/TextField.tsx +2 -1
  406. package/src/form/Textarea.tsx +2 -1
  407. package/src/form/checkbox/Checkbox.tsx +3 -38
  408. package/src/form/checkbox/CheckboxGroup.tsx +2 -2
  409. package/src/form/checkbox/index.ts +2 -1
  410. package/src/form/checkbox/types.ts +37 -0
  411. package/src/form/checkbox/useCheckbox.ts +2 -1
  412. package/src/form/combobox/Combobox.tsx +2 -1
  413. package/src/form/combobox/FilteredOptions/FilteredOptions.tsx +2 -1
  414. package/src/form/combobox/Input/Input.tsx +1 -1
  415. package/src/form/combobox/SelectedOptions/SelectedOptions.tsx +1 -1
  416. package/src/form/error-summary/ErrorSummary.tsx +1 -1
  417. package/src/form/error-summary/ErrorSummaryItem.tsx +1 -1
  418. package/src/form/radio/Radio.tsx +2 -19
  419. package/src/form/radio/RadioGroup.tsx +3 -3
  420. package/src/form/radio/index.ts +2 -1
  421. package/src/form/radio/types.ts +19 -0
  422. package/src/form/radio/useRadio.ts +2 -2
  423. package/src/form/search/Search.tsx +5 -14
  424. package/src/form/search/SearchButton.tsx +3 -3
  425. package/src/form/search/context.ts +10 -0
  426. package/src/form/useFormField.ts +3 -3
  427. package/src/guide-panel/Illustration.tsx +1 -1
  428. package/src/help-text/HelpText.tsx +2 -1
  429. package/src/link-panel/LinkPanel.tsx +2 -1
  430. package/src/link-panel/LinkPanelDescription.tsx +1 -1
  431. package/src/list/List.tsx +8 -45
  432. package/src/list/ListItem.tsx +1 -1
  433. package/src/list/context.ts +14 -0
  434. package/src/list/index.ts +1 -1
  435. package/src/list/types.ts +26 -0
  436. package/src/loader/Loader.tsx +2 -2
  437. package/src/modal/Modal.tsx +9 -71
  438. package/src/modal/ModalUtils.ts +1 -1
  439. package/src/modal/index.ts +3 -2
  440. package/src/modal/types.ts +64 -0
  441. package/src/pagination/Pagination.tsx +1 -1
  442. package/src/pagination/PaginationItem.tsx +2 -1
  443. package/src/popover/Popover.tsx +10 -5
  444. package/src/stepper/Step.tsx +3 -2
  445. package/src/stepper/Stepper.tsx +3 -13
  446. package/src/stepper/context.ts +11 -0
  447. package/src/table/ColumnHeader.tsx +3 -3
  448. package/src/table/DataCell.tsx +1 -1
  449. package/src/table/ExpandableRow.tsx +1 -1
  450. package/src/table/Table.tsx +17 -27
  451. package/src/table/context.ts +9 -0
  452. package/src/table/index.ts +2 -1
  453. package/src/table/types.ts +4 -0
  454. package/src/tabs/Tab.tsx +3 -2
  455. package/src/tabs/TabList.tsx +2 -2
  456. package/src/tabs/Tabs.tsx +2 -9
  457. package/src/tabs/context.ts +9 -0
  458. package/src/tabs/index.ts +1 -1
  459. package/src/tag/Tag.tsx +1 -1
  460. package/src/timeline/period/ClickablePeriod.tsx +1 -1
  461. package/src/timeline/period/NonClickablePeriod.tsx +2 -2
  462. package/src/timeline/period/index.tsx +0 -14
  463. package/src/timeline/period/types.ts +13 -0
  464. package/src/timeline/utils/filter.ts +1 -1
  465. package/src/toggle-group/ToggleGroup.tsx +4 -15
  466. package/src/toggle-group/ToggleItem.tsx +3 -3
  467. package/src/toggle-group/context.ts +9 -0
  468. package/src/tooltip/Tooltip.tsx +2 -1
  469. package/src/util/TextareaAutoSize.tsx +1 -1
  470. package/src/util/index.ts +5 -70
  471. package/src/util/omit.ts +10 -0
  472. package/src/util/useClientLayoutEffect.ts +11 -0
  473. package/src/util/useEventListener.ts +32 -0
package/src/date/index.ts CHANGED
@@ -1,19 +1,17 @@
1
1
  export { type DateInputProps } from "./DateInput";
2
2
  export {
3
- type DatePickerProps,
4
3
  default as DatePicker,
4
+ type DatePickerProps,
5
5
  } from "./datepicker/DatePicker";
6
6
  export { type DatePickerStandaloneProps } from "./datepicker/DatePickerStandalone";
7
- export { type MonthPickerStandaloneProps } from "./monthpicker/MonthPickerStandalone";
8
7
  export {
9
8
  useDatepicker,
10
9
  useMonthpicker,
11
10
  useRangeDatepicker,
12
- type RangeValidationT,
13
11
  type DateValidationT,
14
12
  type MonthValidationT,
13
+ type RangeValidationT,
15
14
  } from "./hooks";
16
- export {
17
- default as MonthPicker,
18
- type MonthPickerProps,
19
- } from "./monthpicker/MonthPicker";
15
+ export { default as MonthPicker } from "./monthpicker/MonthPicker";
16
+ export { type MonthPickerStandaloneProps } from "./monthpicker/MonthPickerStandalone";
17
+ export { type MonthPickerProps } from "./monthpicker/types";
@@ -4,10 +4,11 @@ import startOfMonth from "date-fns/startOfMonth";
4
4
  import startOfYear from "date-fns/startOfYear";
5
5
  import React from "react";
6
6
  import { useDayPicker } from "react-day-picker";
7
- import { Button, Select } from "../..";
8
7
  import { useSharedMonthContext } from "../context";
9
8
  import { labelNextYear, labelPrevYear } from "../utils";
10
9
  import { isAfter, isBefore } from "date-fns";
10
+ import { Button } from "../../button";
11
+ import { Select } from "../../form/Select";
11
12
 
12
13
  export const MonthCaption = () => {
13
14
  const {
@@ -1,97 +1,15 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef, useRef, useState } from "react";
3
3
  import { RootProvider } from "react-day-picker";
4
- import { Popover, useId } from "../..";
5
- import { DateInputProps, MonthPickerInput } from "../DateInput";
4
+ import { Popover } from "../../popover";
5
+ import { useId } from "../../util";
6
+ import { MonthPickerInput } from "../DateInput";
6
7
  import { DateContext, SharedMonthProvider } from "../context";
7
- import { getLocaleFromString, Matcher } from "../utils";
8
+ import { getLocaleFromString } from "../utils";
8
9
  import MonthCaption from "./MonthCaption";
9
- import MonthPickerStandalone, {
10
- MonthPickerStandaloneType,
11
- } from "./MonthPickerStandalone";
10
+ import MonthPickerStandalone from "./MonthPickerStandalone";
12
11
  import MonthSelector from "./MonthSelector";
13
-
14
- export interface MonthPickerProps extends React.HTMLAttributes<HTMLDivElement> {
15
- /**
16
- * Element monthpicker anchors to. Use <MonthPicker.Input /> for built-in toggle,
17
- * or make your own with the open/onClose props
18
- */
19
- children?: React.ReactNode;
20
- /**
21
- * Classname for datepicker in popover
22
- */
23
- className?: string;
24
- /**
25
- * Classname for wrapper
26
- */
27
- wrapperClassName?: string;
28
- /**
29
- * The earliest month to start navigation.
30
- */
31
- fromDate?: Date;
32
- /**
33
- * The latest day to end navigation.
34
- */
35
- toDate?: Date;
36
- /**
37
- * Changes monthpicker locale
38
- * @default "nb" (norsk bokmål)
39
- */
40
- locale?: "nb" | "nn" | "en";
41
- /**
42
- * Display dropdown for choosing year. Needs `fromDate` + `toDate` to work.
43
- * @default false
44
- */
45
- dropdownCaption?: boolean;
46
- /**
47
- * Apply the disabled modifier to the matching months. Uses a subset of React Day Picker Matcher type. https://react-day-picker.js.org/api/types/Matcher
48
- */
49
- disabled?: Matcher[];
50
- /**
51
- * Controlled selected-month
52
- */
53
- selected?: Date;
54
- /**
55
- * Default selected month.
56
- */
57
- defaultSelected?: Date;
58
- /**
59
- * Open state for user-controlled state. Component controlled by default
60
- */
61
- open?: boolean;
62
- /**
63
- * onClose callback for user-controlled state
64
- */
65
- onClose?: () => void;
66
- /**
67
- * onOpenToggle callback for user-controlled-state. Only called if `<MonthPicker.Input />` is used
68
- */
69
- onOpenToggle?: () => void;
70
- /**
71
- * Callback for user-controlled state
72
- */
73
- onMonthSelect?: (month?: Date) => void;
74
- /**
75
- * Used to set visible year programmatically. Component controlled by default
76
- */
77
- year?: Date;
78
- /**
79
- * Event fired when the user navigates between years.
80
- */
81
- onYearChange?: (y?: Date) => void;
82
- /**
83
- * Avoid using if possible!
84
- * Changes what CSS position property to use
85
- * You want to use "fixed" if parent wrapper has position relative, but you want popover to escape
86
- * @default "absolute"
87
- */
88
- strategy?: "absolute" | "fixed";
89
- /**
90
- * Bubbles Escape keydown-event up trough DOM-tree. This is set to false by default to prevent closing components like Modal on Escape
91
- * @default false
92
- */
93
- bubbleEscape?: boolean;
94
- }
12
+ import { MonthPickerProps } from "./types";
95
13
 
96
14
  interface MonthPickerComponent
97
15
  extends React.ForwardRefExoticComponent<MonthPickerProps> {
@@ -105,14 +23,12 @@ interface MonthPickerComponent
105
23
  * />
106
24
  * ```
107
25
  */
108
- Standalone: MonthPickerStandaloneType;
26
+ Standalone: typeof MonthPickerStandalone;
109
27
  /**
110
28
  * Custom TextField for MonthPicker
111
29
  * @see 🏷️ {@link DateInputProps}
112
30
  */
113
- Input: React.ForwardRefExoticComponent<
114
- DateInputProps & React.RefAttributes<HTMLInputElement>
115
- >;
31
+ Input: typeof MonthPickerInput;
116
32
  }
117
33
 
118
34
  /**
@@ -211,6 +127,7 @@ export const MonthPicker = forwardRef<HTMLDivElement, MonthPickerProps>(
211
127
  className="navds-date navds-date__popover"
212
128
  strategy={strategy}
213
129
  bubbleEscape={bubbleEscape}
130
+ flip={false}
214
131
  >
215
132
  <RootProvider
216
133
  locale={getLocaleFromString(locale)}
@@ -4,8 +4,8 @@ import { RootProvider } from "react-day-picker";
4
4
  import { SharedMonthProvider } from "../context";
5
5
  import { getLocaleFromString } from "../utils";
6
6
  import MonthCaption from "./MonthCaption";
7
- import { MonthPickerProps } from "./MonthPicker";
8
7
  import MonthSelector from "./MonthSelector";
8
+ import { MonthPickerProps } from "./types";
9
9
 
10
10
  export interface MonthPickerStandaloneProps
11
11
  extends Omit<
@@ -3,7 +3,7 @@ import setMonth from "date-fns/setMonth";
3
3
  import setYear from "date-fns/setYear";
4
4
  import startOfMonth from "date-fns/startOfMonth";
5
5
  import React, { useState } from "react";
6
- import { BodyShort } from "../..";
6
+ import { BodyShort } from "../../typography";
7
7
  import { useSharedMonthContext } from "../context";
8
8
  import { isMatch } from "../utils";
9
9
  import MonthButton from "./MonthButton";
@@ -0,0 +1,83 @@
1
+ import { Matcher } from "../utils";
2
+
3
+ export interface MonthPickerProps extends React.HTMLAttributes<HTMLDivElement> {
4
+ /**
5
+ * Element monthpicker anchors to. Use <MonthPicker.Input /> for built-in toggle,
6
+ * or make your own with the open/onClose props
7
+ */
8
+ children?: React.ReactNode;
9
+ /**
10
+ * Classname for datepicker in popover
11
+ */
12
+ className?: string;
13
+ /**
14
+ * Classname for wrapper
15
+ */
16
+ wrapperClassName?: string;
17
+ /**
18
+ * The earliest month to start navigation.
19
+ */
20
+ fromDate?: Date;
21
+ /**
22
+ * The latest day to end navigation.
23
+ */
24
+ toDate?: Date;
25
+ /**
26
+ * Changes monthpicker locale
27
+ * @default "nb" (norsk bokmål)
28
+ */
29
+ locale?: "nb" | "nn" | "en";
30
+ /**
31
+ * Display dropdown for choosing year. Needs `fromDate` + `toDate` to work.
32
+ * @default false
33
+ */
34
+ dropdownCaption?: boolean;
35
+ /**
36
+ * Apply the disabled modifier to the matching months. Uses a subset of React Day Picker Matcher type. https://react-day-picker.js.org/api/types/Matcher
37
+ */
38
+ disabled?: Matcher[];
39
+ /**
40
+ * Controlled selected-month
41
+ */
42
+ selected?: Date;
43
+ /**
44
+ * Default selected month.
45
+ */
46
+ defaultSelected?: Date;
47
+ /**
48
+ * Open state for user-controlled state. Component controlled by default
49
+ */
50
+ open?: boolean;
51
+ /**
52
+ * onClose callback for user-controlled state
53
+ */
54
+ onClose?: () => void;
55
+ /**
56
+ * onOpenToggle callback for user-controlled-state. Only called if `<MonthPicker.Input />` is used
57
+ */
58
+ onOpenToggle?: () => void;
59
+ /**
60
+ * Callback for user-controlled state
61
+ */
62
+ onMonthSelect?: (month?: Date) => void;
63
+ /**
64
+ * Used to set visible year programmatically. Component controlled by default
65
+ */
66
+ year?: Date;
67
+ /**
68
+ * Event fired when the user navigates between years.
69
+ */
70
+ onYearChange?: (y?: Date) => void;
71
+ /**
72
+ * Avoid using if possible!
73
+ * Changes what CSS position property to use
74
+ * You want to use "fixed" if parent wrapper has position relative, but you want popover to escape
75
+ * @default "absolute"
76
+ */
77
+ strategy?: "absolute" | "fixed";
78
+ /**
79
+ * Bubbles Escape keydown-event up trough DOM-tree. This is set to false by default to prevent closing components like Modal on Escape
80
+ * @default false
81
+ */
82
+ bubbleEscape?: boolean;
83
+ }
@@ -1,7 +1,7 @@
1
1
  import parse from "date-fns/parse";
2
2
  import isBefore from "date-fns/isBefore";
3
3
  import sub from "date-fns/sub";
4
- import { isValidDate } from ".";
4
+ import { isValidDate } from "./check-dates";
5
5
 
6
6
  export const INPUT_DATE_STRING_FORMAT_DATE = "dd.MM.yyyy";
7
7
 
@@ -1,6 +1,7 @@
1
- import React, { createContext, useState } from "react";
2
- import Toggle, { ToggleProps } from "./Toggle";
1
+ import React, { useState } from "react";
3
2
  import Menu, { MenuType } from "./Menu";
3
+ import Toggle, { ToggleProps } from "./Toggle";
4
+ import { DropdownContext } from "./context";
4
5
 
5
6
  export interface DropdownProps {
6
7
  children: React.ReactNode;
@@ -36,16 +37,6 @@ export interface DropdownType extends React.FC<DropdownProps> {
36
37
  Menu: MenuType;
37
38
  }
38
39
 
39
- export interface DropdownContextType {
40
- readonly isOpen: boolean;
41
- handleToggle: (v: boolean) => void;
42
- readonly anchorEl: Element | null;
43
- setAnchorEl: React.Dispatch<React.SetStateAction<Element | null>>;
44
- onSelect: (element: React.MouseEvent) => void;
45
- }
46
-
47
- export const DropdownContext = createContext<DropdownContextType | null>(null);
48
-
49
40
  /**
50
41
  * A component that displays a dropdown menu when the user clicks on its toggle button.
51
42
  *
@@ -1,7 +1,7 @@
1
- import { OverridableComponent } from "../../../util/OverridableComponent";
2
1
  import cl from "clsx";
3
2
  import React, { forwardRef, useContext } from "react";
4
- import { DropdownContext } from "../../Dropdown";
3
+ import { OverridableComponent } from "../../../util";
4
+ import { DropdownContext } from "../../context";
5
5
 
6
6
  export interface GroupedItemProps
7
7
  extends React.ButtonHTMLAttributes<HTMLElement> {
@@ -1,6 +1,6 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef } from "react";
3
- import { OverridableComponent } from "../../../util/OverridableComponent";
3
+ import { OverridableComponent } from "../../../util";
4
4
  import GroupedHeading, { GroupedHeadingProps } from "./GroupedHeading";
5
5
  import GroupedItem, { GroupedItemProps } from "./GroupedItem";
6
6
 
@@ -1,7 +1,7 @@
1
- import React, { forwardRef, useContext } from "react";
2
1
  import cl from "clsx";
3
- import { OverridableComponent } from "../../../util/OverridableComponent";
4
- import { DropdownContext } from "../../Dropdown";
2
+ import React, { forwardRef, useContext } from "react";
3
+ import { OverridableComponent } from "../../../util";
4
+ import { DropdownContext } from "../../context";
5
5
 
6
6
  export interface ListItemProps extends React.ButtonHTMLAttributes<HTMLElement> {
7
7
  /**
@@ -1,6 +1,6 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef } from "react";
3
- import { OverridableComponent } from "../../../util/OverridableComponent";
3
+ import { OverridableComponent } from "../../../util";
4
4
  import ListItem, { ListItemProps } from "./Item";
5
5
 
6
6
  export interface ListProps extends React.HTMLAttributes<HTMLUListElement> {
@@ -1,7 +1,7 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef, useContext } from "react";
3
3
  import { Popover } from "../../popover";
4
- import { DropdownContext } from "../Dropdown";
4
+ import { DropdownContext } from "../context";
5
5
  import Divider from "./Divider";
6
6
  import GroupedList, { GroupedListType } from "./GroupedList";
7
7
  import List, { ListType } from "./List";
@@ -1,6 +1,6 @@
1
- import React, { forwardRef, useContext } from "react";
2
1
  import cl from "clsx";
3
- import { DropdownContext } from "./Dropdown";
2
+ import React, { forwardRef, useContext } from "react";
3
+ import { DropdownContext } from "./context";
4
4
 
5
5
  export interface ToggleProps
6
6
  extends React.ButtonHTMLAttributes<HTMLButtonElement> {
@@ -0,0 +1,11 @@
1
+ import { createContext } from "react";
2
+
3
+ export interface DropdownContextType {
4
+ readonly isOpen: boolean;
5
+ handleToggle: (v: boolean) => void;
6
+ readonly anchorEl: Element | null;
7
+ setAnchorEl: React.Dispatch<React.SetStateAction<Element | null>>;
8
+ onSelect: (element: React.MouseEvent) => void;
9
+ }
10
+
11
+ export const DropdownContext = createContext<DropdownContextType | null>(null);
@@ -1,6 +1,6 @@
1
1
  import cl from "clsx";
2
- import React, { createContext, forwardRef, useRef, useState } from "react";
3
- import { OverridableComponent } from "../util/OverridableComponent";
2
+ import React, { forwardRef, useRef, useState } from "react";
3
+ import { OverridableComponent } from "../util";
4
4
  import ExpansionCardContent, {
5
5
  ExpansionCardContentProps,
6
6
  } from "./ExpansionCardContent";
@@ -15,6 +15,7 @@ import {
15
15
  ExpansionCardTitle,
16
16
  ExpansionCardTitleProps,
17
17
  } from "./ExpansionCardTitle";
18
+ import { ExpansionCardContext } from "./context";
18
19
 
19
20
  interface ExpansionCardComponent
20
21
  extends React.ForwardRefExoticComponent<
@@ -82,18 +83,6 @@ type ExpansionCardConditionalProps =
82
83
  "aria-labelledby": string;
83
84
  };
84
85
 
85
- export type ExpansionCardContextProps = {
86
- open: boolean;
87
- toggleOpen: () => void;
88
- size: "medium" | "small";
89
- };
90
-
91
- export const ExpansionCardContext = createContext<ExpansionCardContextProps>({
92
- open: false,
93
- toggleOpen: () => {},
94
- size: "medium",
95
- });
96
-
97
86
  export type ExpansionCardProps = ExpansionCardCommonProps &
98
87
  ExpansionCardConditionalProps;
99
88
 
@@ -1,7 +1,7 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef, useContext } from "react";
3
- import { BodyLong } from "../typography/BodyLong";
4
- import { ExpansionCardContext } from "./ExpansionCard";
3
+ import { BodyLong } from "../typography";
4
+ import { ExpansionCardContext } from "./context";
5
5
 
6
6
  export interface ExpansionCardContentProps
7
7
  extends React.HTMLAttributes<HTMLDivElement> {
@@ -1,7 +1,7 @@
1
- import React, { forwardRef, useContext } from "react";
2
1
  import cl from "clsx";
3
- import { BodyLong } from "../typography/BodyLong";
4
- import { ExpansionCardContext } from "./ExpansionCard";
2
+ import React, { forwardRef, useContext } from "react";
3
+ import { BodyLong } from "../typography";
4
+ import { ExpansionCardContext } from "./context";
5
5
 
6
6
  export interface ExpansionCardDescriptionProps
7
7
  extends React.HTMLAttributes<HTMLParagraphElement> {
@@ -1,7 +1,7 @@
1
+ import { ChevronDownIcon } from "@navikt/aksel-icons";
1
2
  import cl from "clsx";
2
3
  import React, { forwardRef, useContext } from "react";
3
- import { ExpansionCardContext } from "./ExpansionCard";
4
- import { ChevronDownIcon } from "@navikt/aksel-icons";
4
+ import { ExpansionCardContext } from "./context";
5
5
 
6
6
  export interface ExpansionCardHeaderProps
7
7
  extends React.HTMLAttributes<HTMLDivElement> {
@@ -1,6 +1,6 @@
1
- import React, { forwardRef } from "react";
2
1
  import cl from "clsx";
3
- import { OverridableComponent } from "../util/OverridableComponent";
2
+ import React, { forwardRef } from "react";
3
+ import { OverridableComponent } from "../util";
4
4
 
5
5
  export interface ExpansionCardTitleProps
6
6
  extends React.HTMLAttributes<HTMLHeadingElement> {
@@ -0,0 +1,13 @@
1
+ import { createContext } from "react";
2
+
3
+ export type ExpansionCardContextProps = {
4
+ open: boolean;
5
+ toggleOpen: () => void;
6
+ size: "medium" | "small";
7
+ };
8
+
9
+ export const ExpansionCardContext = createContext<ExpansionCardContextProps>({
10
+ open: false,
11
+ toggleOpen: () => {},
12
+ size: "medium",
13
+ });
@@ -1,6 +1,8 @@
1
- import React, { forwardRef } from "react";
2
1
  import cl from "clsx";
3
- import { BodyLong, Checkbox, CheckboxProps, ErrorMessage, useId } from "..";
2
+ import React, { forwardRef } from "react";
3
+ import { BodyLong, ErrorMessage } from "../typography";
4
+ import { useId } from "../util";
5
+ import { Checkbox, CheckboxProps } from "./checkbox";
4
6
  import { useFormField } from "./useFormField";
5
7
 
6
8
  export interface ConfirmationPanelProps
@@ -1,36 +1,11 @@
1
1
  import cl from "clsx";
2
2
  import React, { FieldsetHTMLAttributes, forwardRef, useContext } from "react";
3
- import { BodyShort, ErrorMessage, Label, omit } from "../..";
3
+ import { BodyShort, ErrorMessage, Label } from "../../typography";
4
+ import { omit } from "../../util";
5
+ import { ReadOnlyIcon } from "../ReadOnlyIcon";
4
6
  import { FormFieldProps } from "../useFormField";
7
+ import { FieldsetContext } from "./context";
5
8
  import { useFieldset } from "./useFieldset";
6
- import { ReadOnlyIcon } from "../ReadOnlyIcon";
7
-
8
- export type FieldsetContextProps = {
9
- /**
10
- * Error message applied to element,
11
- */
12
- error?: React.ReactNode;
13
- /**
14
- * Overrides internal errorId
15
- */
16
- errorId: string;
17
- /**
18
- * Changes paddings, margins and font-sizes
19
- */
20
- size: "medium" | "small";
21
- /**
22
- * Sets fieldset and all form-children to disabled
23
- */
24
- disabled: boolean;
25
- /**
26
- * Read only-state
27
- */
28
- readOnly?: boolean;
29
- };
30
-
31
- export const FieldsetContext = React.createContext<FieldsetContextProps | null>(
32
- null
33
- );
34
9
 
35
10
  export interface FieldsetProps
36
11
  extends FormFieldProps,
@@ -0,0 +1,26 @@
1
+ import { createContext } from "react";
2
+
3
+ export type FieldsetContextProps = {
4
+ /**
5
+ * Error message applied to element,
6
+ */
7
+ error?: React.ReactNode;
8
+ /**
9
+ * Overrides internal errorId
10
+ */
11
+ errorId: string;
12
+ /**
13
+ * Changes paddings, margins and font-sizes
14
+ */
15
+ size: "medium" | "small";
16
+ /**
17
+ * Sets fieldset and all form-children to disabled
18
+ */
19
+ disabled: boolean;
20
+ /**
21
+ * Read only-state
22
+ */
23
+ readOnly?: boolean;
24
+ };
25
+
26
+ export const FieldsetContext = createContext<FieldsetContextProps | null>(null);
@@ -1,5 +1,2 @@
1
- export {
2
- default as Fieldset,
3
- type FieldsetProps,
4
- FieldsetContext,
5
- } from "./Fieldset";
1
+ export { default as Fieldset, type FieldsetProps } from "./Fieldset";
2
+ export { FieldsetContext } from "./context";
@@ -1,10 +1,10 @@
1
+ import { ChevronDownIcon } from "@navikt/aksel-icons";
1
2
  import cl from "clsx";
2
3
  import React, { forwardRef, SelectHTMLAttributes } from "react";
3
-
4
- import { ChevronDownIcon } from "@navikt/aksel-icons";
5
- import { BodyShort, ErrorMessage, Label, omit } from "..";
6
- import { FormFieldProps, useFormField } from "./useFormField";
4
+ import { BodyShort, ErrorMessage, Label } from "../typography";
5
+ import { omit } from "../util";
7
6
  import { ReadOnlyIcon } from "./ReadOnlyIcon";
7
+ import { FormFieldProps, useFormField } from "./useFormField";
8
8
 
9
9
  export interface SelectProps
10
10
  extends FormFieldProps,
@@ -5,9 +5,11 @@ import React, {
5
5
  useEffect,
6
6
  useState,
7
7
  } from "react";
8
- import { BodyShort, Loader, omit } from "..";
9
8
  import { FormFieldProps, useFormField } from "./useFormField";
10
9
  import { ReadOnlyIcon } from "./ReadOnlyIcon";
10
+ import { Loader } from "../loader";
11
+ import { BodyShort } from "../typography";
12
+ import { omit } from "../util";
11
13
 
12
14
  const SelectedIcon = () => (
13
15
  <svg
@@ -1,6 +1,7 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef, InputHTMLAttributes } from "react";
3
- import { BodyShort, ErrorMessage, Label, omit } from "..";
3
+ import { BodyShort, ErrorMessage, Label } from "../typography";
4
+ import { omit } from "../util";
4
5
  import { ReadOnlyIcon } from "./ReadOnlyIcon";
5
6
  import { FormFieldProps, useFormField } from "./useFormField";
6
7
 
@@ -1,9 +1,10 @@
1
1
  import cl from "clsx";
2
2
  import React, { forwardRef, useState } from "react";
3
- import { BodyShort, ErrorMessage, Label, omit, useId } from "..";
3
+ import { BodyShort, ErrorMessage, Label } from "../typography";
4
4
  import TextareaAutosize from "../util/TextareaAutoSize";
5
5
  import { FormFieldProps, useFormField } from "./useFormField";
6
6
  import { ReadOnlyIcon } from "./ReadOnlyIcon";
7
+ import { omit, useId } from "../util";
7
8
 
8
9
  /**
9
10
  * TODO: Mulighet for lokalisering av sr-only/counter text