@fremtind/jokul 0.8.1 → 0.10.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 (360) hide show
  1. package/build/NativeSelect-DSmX3GZo.cjs +2 -0
  2. package/build/NativeSelect-DSmX3GZo.cjs.map +1 -0
  3. package/build/NativeSelect-EidDABsT.js +2 -0
  4. package/build/NativeSelect-EidDABsT.js.map +1 -0
  5. package/build/build-stats.html +1 -1
  6. package/build/cjs/components/accordion/Accordion.js +2 -0
  7. package/build/cjs/components/accordion/Accordion.js.map +1 -0
  8. package/build/cjs/components/accordion/AccordionItem.js +2 -0
  9. package/build/cjs/components/accordion/AccordionItem.js.map +1 -0
  10. package/build/cjs/components/accordion/index.js +2 -0
  11. package/build/cjs/components/accordion/index.js.map +1 -0
  12. package/build/cjs/components/breadcrumb/Breadcrumb.js +2 -0
  13. package/build/cjs/components/breadcrumb/Breadcrumb.js.map +1 -0
  14. package/build/cjs/components/breadcrumb/BreadcrumbItem.js +2 -0
  15. package/build/cjs/components/breadcrumb/BreadcrumbItem.js.map +1 -0
  16. package/build/cjs/components/breadcrumb/index.js +2 -0
  17. package/build/cjs/components/breadcrumb/index.js.map +1 -0
  18. package/build/cjs/components/button/Button.js +2 -0
  19. package/build/cjs/components/button/Button.js.map +1 -0
  20. package/build/cjs/components/button/index.js +2 -0
  21. package/build/cjs/components/button/index.js.map +1 -0
  22. package/build/cjs/components/button/types.js +2 -0
  23. package/build/cjs/components/button/types.js.map +1 -0
  24. package/build/cjs/components/checkbox/Checkbox.js +2 -0
  25. package/build/cjs/components/checkbox/Checkbox.js.map +1 -0
  26. package/build/cjs/components/checkbox/index.js +2 -0
  27. package/build/cjs/components/checkbox/index.js.map +1 -0
  28. package/build/cjs/components/combobox/Combobox.js +2 -0
  29. package/build/cjs/components/combobox/Combobox.js.map +1 -0
  30. package/build/cjs/components/combobox/index.js +2 -0
  31. package/build/cjs/components/combobox/index.js.map +1 -0
  32. package/build/cjs/components/cookie-consent/CookieConsent.js +2 -0
  33. package/build/cjs/components/cookie-consent/CookieConsent.js.map +1 -0
  34. package/build/cjs/components/cookie-consent/CookieConsentContext.js +2 -0
  35. package/build/cjs/components/cookie-consent/CookieConsentContext.js.map +1 -0
  36. package/build/cjs/components/cookie-consent/CookieConsentModal.js +2 -0
  37. package/build/cjs/components/cookie-consent/CookieConsentModal.js.map +1 -0
  38. package/build/cjs/components/cookie-consent/consents/CustomConsents.js +2 -0
  39. package/build/cjs/components/cookie-consent/consents/CustomConsents.js.map +1 -0
  40. package/build/cjs/components/cookie-consent/consents/DefaultConsents.js +2 -0
  41. package/build/cjs/components/cookie-consent/consents/DefaultConsents.js.map +1 -0
  42. package/build/cjs/components/cookie-consent/consents/RequirementCheckbox.js +2 -0
  43. package/build/cjs/components/cookie-consent/consents/RequirementCheckbox.js.map +1 -0
  44. package/build/cjs/components/cookie-consent/cookieConsentUtils.js +2 -0
  45. package/build/cjs/components/cookie-consent/cookieConsentUtils.js.map +1 -0
  46. package/build/cjs/components/cookie-consent/index.js +2 -0
  47. package/build/cjs/components/cookie-consent/index.js.map +1 -0
  48. package/build/cjs/components/cookie-consent/types.js +2 -0
  49. package/build/cjs/components/cookie-consent/types.js.map +1 -0
  50. package/build/cjs/components/datepicker/DatePicker.js +2 -0
  51. package/build/cjs/components/datepicker/DatePicker.js.map +1 -0
  52. package/build/cjs/components/datepicker/index.js +2 -0
  53. package/build/cjs/components/datepicker/index.js.map +1 -0
  54. package/build/cjs/components/datepicker/internal/Calendar.js +2 -0
  55. package/build/cjs/components/datepicker/internal/Calendar.js.map +1 -0
  56. package/build/cjs/components/datepicker/internal/calendarReducer.js +2 -0
  57. package/build/cjs/components/datepicker/internal/calendarReducer.js.map +1 -0
  58. package/build/cjs/components/datepicker/internal/useCalendar.js +2 -0
  59. package/build/cjs/components/datepicker/internal/useCalendar.js.map +1 -0
  60. package/build/cjs/components/datepicker/internal/utils.js +2 -0
  61. package/build/cjs/components/datepicker/internal/utils.js.map +1 -0
  62. package/build/cjs/components/datepicker/types.js +2 -0
  63. package/build/cjs/components/datepicker/types.js.map +1 -0
  64. package/build/cjs/components/datepicker/utils.js +2 -0
  65. package/build/cjs/components/datepicker/utils.js.map +1 -0
  66. package/build/cjs/components/datepicker/validation.js +2 -0
  67. package/build/cjs/components/datepicker/validation.js.map +1 -0
  68. package/build/cjs/components/index.js +1 -1
  69. package/build/cjs/components/input-group/FieldGroup.js +1 -1
  70. package/build/cjs/components/input-group/FieldGroup.js.map +1 -1
  71. package/build/cjs/components/input-group/InputGroup.js +1 -1
  72. package/build/cjs/components/input-group/InputGroup.js.map +1 -1
  73. package/build/cjs/components/input-group/Label.js +1 -1
  74. package/build/cjs/components/input-group/Label.js.map +1 -1
  75. package/build/cjs/components/input-group/SupportLabel.js +1 -1
  76. package/build/cjs/components/input-group/SupportLabel.js.map +1 -1
  77. package/build/cjs/components/list/List.js +2 -0
  78. package/build/cjs/components/list/List.js.map +1 -0
  79. package/build/cjs/components/list/ListItem.js +2 -0
  80. package/build/cjs/components/list/ListItem.js.map +1 -0
  81. package/build/cjs/components/list/index.js +2 -0
  82. package/build/cjs/components/list/index.js.map +1 -0
  83. package/build/cjs/components/modal/Modal.js +2 -0
  84. package/build/cjs/components/modal/Modal.js.map +1 -0
  85. package/build/cjs/components/modal/index.js +2 -0
  86. package/build/cjs/components/modal/index.js.map +1 -0
  87. package/build/cjs/components/modal/useModal.js +2 -0
  88. package/build/cjs/components/modal/useModal.js.map +1 -0
  89. package/build/cjs/components/radio-button/BaseRadioButton.js +2 -0
  90. package/build/cjs/components/radio-button/BaseRadioButton.js.map +1 -0
  91. package/build/cjs/components/radio-button/RadioButton.js +2 -0
  92. package/build/cjs/components/radio-button/RadioButton.js.map +1 -0
  93. package/build/cjs/components/radio-button/RadioButtonGroup.js +2 -0
  94. package/build/cjs/components/radio-button/RadioButtonGroup.js.map +1 -0
  95. package/build/cjs/components/radio-button/index.js +2 -0
  96. package/build/cjs/components/radio-button/index.js.map +1 -0
  97. package/build/cjs/components/radio-button/radioGroupContext.js +2 -0
  98. package/build/cjs/components/radio-button/radioGroupContext.js.map +1 -0
  99. package/build/cjs/components/select/NativeSelect.js +2 -0
  100. package/build/cjs/components/select/NativeSelect.js.map +1 -0
  101. package/build/cjs/components/select/Select.js +2 -0
  102. package/build/cjs/components/select/Select.js.map +1 -0
  103. package/build/cjs/components/select/index.js +2 -0
  104. package/build/cjs/components/select/index.js.map +1 -0
  105. package/build/cjs/components/select/select-utils.js +2 -0
  106. package/build/cjs/components/select/select-utils.js.map +1 -0
  107. package/build/cjs/components/tag/Tag.js +1 -1
  108. package/build/cjs/components/tag/Tag.js.map +1 -1
  109. package/build/cjs/components/text-input/BaseTextArea.js +2 -0
  110. package/build/cjs/components/text-input/BaseTextArea.js.map +1 -0
  111. package/build/cjs/components/text-input/BaseTextInput.js +2 -0
  112. package/build/cjs/components/text-input/BaseTextInput.js.map +1 -0
  113. package/build/cjs/components/text-input/TextArea.js +2 -0
  114. package/build/cjs/components/text-input/TextArea.js.map +1 -0
  115. package/build/cjs/components/text-input/TextInput.js +2 -0
  116. package/build/cjs/components/text-input/TextInput.js.map +1 -0
  117. package/build/cjs/components/text-input/index.js +2 -0
  118. package/build/cjs/components/text-input/index.js.map +1 -0
  119. package/build/cjs/components/tooltip/PopupTip.js +1 -1
  120. package/build/cjs/components/tooltip/PopupTip.js.map +1 -1
  121. package/build/cjs/components/tooltip/TooltipContent.js +1 -1
  122. package/build/cjs/components/tooltip/TooltipContent.js.map +1 -1
  123. package/build/cjs/components/tooltip/TooltipTrigger.js +1 -1
  124. package/build/cjs/components/tooltip/TooltipTrigger.js.map +1 -1
  125. package/build/cjs/index.js +1 -1
  126. package/build/components/accordion/Accordion.d.ts +8 -0
  127. package/build/components/accordion/AccordionItem.d.ts +10 -0
  128. package/build/components/accordion/index.d.ts +4 -0
  129. package/build/components/breadcrumb/Breadcrumb.d.ts +6 -0
  130. package/build/components/breadcrumb/BreadcrumbItem.d.ts +10 -0
  131. package/build/components/breadcrumb/index.d.ts +4 -0
  132. package/build/components/button/Button.d.ts +7 -0
  133. package/build/components/button/index.d.ts +2 -0
  134. package/build/components/button/types.d.ts +19 -0
  135. package/build/components/checkbox/Checkbox.d.ts +17 -0
  136. package/build/components/checkbox/index.d.ts +2 -0
  137. package/build/components/combobox/Combobox.d.ts +39 -0
  138. package/build/components/combobox/index.d.ts +2 -0
  139. package/build/components/cookie-consent/CookieConsent.d.ts +6 -0
  140. package/build/components/cookie-consent/CookieConsentContext.d.ts +48 -0
  141. package/build/components/cookie-consent/CookieConsentModal.d.ts +3 -0
  142. package/build/components/cookie-consent/consents/CustomConsents.d.ts +9 -0
  143. package/build/components/cookie-consent/consents/DefaultConsents.d.ts +9 -0
  144. package/build/components/cookie-consent/consents/RequirementCheckbox.d.ts +9 -0
  145. package/build/components/cookie-consent/cookieConsentUtils.d.ts +23 -0
  146. package/build/components/cookie-consent/index.d.ts +5 -0
  147. package/build/components/cookie-consent/types.d.ts +12 -0
  148. package/build/components/datepicker/DatePicker.d.ts +3 -0
  149. package/build/components/datepicker/index.d.ts +4 -0
  150. package/build/components/datepicker/internal/Calendar.d.ts +18 -0
  151. package/build/components/datepicker/internal/calendarReducer.d.ts +18 -0
  152. package/build/components/datepicker/internal/useCalendar.d.ts +59 -0
  153. package/build/components/datepicker/internal/utils.d.ts +167 -0
  154. package/build/components/datepicker/types.d.ts +269 -0
  155. package/build/components/datepicker/utils.d.ts +23 -0
  156. package/build/components/datepicker/validation.d.ts +11 -0
  157. package/build/components/index.d.ts +12 -0
  158. package/build/components/list/List.d.ts +8 -0
  159. package/build/components/list/ListItem.d.ts +8 -0
  160. package/build/components/list/index.d.ts +3 -0
  161. package/build/components/modal/Modal.d.ts +72 -0
  162. package/build/components/modal/index.d.ts +4 -0
  163. package/build/components/modal/useModal.d.ts +69 -0
  164. package/build/components/radio-button/BaseRadioButton.d.ts +10 -0
  165. package/build/components/radio-button/RadioButton.d.ts +15 -0
  166. package/build/components/radio-button/RadioButtonGroup.d.ts +24 -0
  167. package/build/components/radio-button/index.d.ts +6 -0
  168. package/build/components/radio-button/radioGroupContext.d.ts +16 -0
  169. package/build/components/select/NativeSelect.d.ts +19 -0
  170. package/build/components/select/Select.d.ts +53 -0
  171. package/build/components/select/index.d.ts +4 -0
  172. package/build/components/select/select-utils.d.ts +2 -0
  173. package/build/components/text-input/BaseTextArea.d.ts +27 -0
  174. package/build/components/text-input/BaseTextInput.d.ts +34 -0
  175. package/build/components/text-input/TextArea.d.ts +6 -0
  176. package/build/components/text-input/TextInput.d.ts +9 -0
  177. package/build/components/text-input/index.d.ts +4 -0
  178. package/build/es/components/accordion/Accordion.js +2 -0
  179. package/build/es/components/accordion/Accordion.js.map +1 -0
  180. package/build/es/components/accordion/AccordionItem.js +2 -0
  181. package/build/es/components/accordion/AccordionItem.js.map +1 -0
  182. package/build/es/components/accordion/index.js +2 -0
  183. package/build/es/components/accordion/index.js.map +1 -0
  184. package/build/es/components/breadcrumb/Breadcrumb.js +2 -0
  185. package/build/es/components/breadcrumb/Breadcrumb.js.map +1 -0
  186. package/build/es/components/breadcrumb/BreadcrumbItem.js +2 -0
  187. package/build/es/components/breadcrumb/BreadcrumbItem.js.map +1 -0
  188. package/build/es/components/breadcrumb/index.js +2 -0
  189. package/build/es/components/breadcrumb/index.js.map +1 -0
  190. package/build/es/components/button/Button.js +2 -0
  191. package/build/es/components/button/Button.js.map +1 -0
  192. package/build/es/components/button/index.js +2 -0
  193. package/build/es/components/button/index.js.map +1 -0
  194. package/build/es/components/button/types.js +2 -0
  195. package/build/es/components/button/types.js.map +1 -0
  196. package/build/es/components/checkbox/Checkbox.js +2 -0
  197. package/build/es/components/checkbox/Checkbox.js.map +1 -0
  198. package/build/es/components/checkbox/index.js +2 -0
  199. package/build/es/components/checkbox/index.js.map +1 -0
  200. package/build/es/components/combobox/Combobox.js +2 -0
  201. package/build/es/components/combobox/Combobox.js.map +1 -0
  202. package/build/es/components/combobox/index.js +2 -0
  203. package/build/es/components/combobox/index.js.map +1 -0
  204. package/build/es/components/cookie-consent/CookieConsent.js +2 -0
  205. package/build/es/components/cookie-consent/CookieConsent.js.map +1 -0
  206. package/build/es/components/cookie-consent/CookieConsentContext.js +2 -0
  207. package/build/es/components/cookie-consent/CookieConsentContext.js.map +1 -0
  208. package/build/es/components/cookie-consent/CookieConsentModal.js +2 -0
  209. package/build/es/components/cookie-consent/CookieConsentModal.js.map +1 -0
  210. package/build/es/components/cookie-consent/consents/CustomConsents.js +2 -0
  211. package/build/es/components/cookie-consent/consents/CustomConsents.js.map +1 -0
  212. package/build/es/components/cookie-consent/consents/DefaultConsents.js +2 -0
  213. package/build/es/components/cookie-consent/consents/DefaultConsents.js.map +1 -0
  214. package/build/es/components/cookie-consent/consents/RequirementCheckbox.js +2 -0
  215. package/build/es/components/cookie-consent/consents/RequirementCheckbox.js.map +1 -0
  216. package/build/es/components/cookie-consent/cookieConsentUtils.js +2 -0
  217. package/build/es/components/cookie-consent/cookieConsentUtils.js.map +1 -0
  218. package/build/es/components/cookie-consent/index.js +2 -0
  219. package/build/es/components/cookie-consent/index.js.map +1 -0
  220. package/build/es/components/cookie-consent/types.js +2 -0
  221. package/build/es/components/cookie-consent/types.js.map +1 -0
  222. package/build/es/components/datepicker/DatePicker.js +2 -0
  223. package/build/es/components/datepicker/DatePicker.js.map +1 -0
  224. package/build/es/components/datepicker/index.js +2 -0
  225. package/build/es/components/datepicker/index.js.map +1 -0
  226. package/build/es/components/datepicker/internal/Calendar.js +2 -0
  227. package/build/es/components/datepicker/internal/Calendar.js.map +1 -0
  228. package/build/es/components/datepicker/internal/calendarReducer.js +2 -0
  229. package/build/es/components/datepicker/internal/calendarReducer.js.map +1 -0
  230. package/build/es/components/datepicker/internal/useCalendar.js +2 -0
  231. package/build/es/components/datepicker/internal/useCalendar.js.map +1 -0
  232. package/build/es/components/datepicker/internal/utils.js +2 -0
  233. package/build/es/components/datepicker/internal/utils.js.map +1 -0
  234. package/build/es/components/datepicker/types.js +2 -0
  235. package/build/es/components/datepicker/types.js.map +1 -0
  236. package/build/es/components/datepicker/utils.js +2 -0
  237. package/build/es/components/datepicker/utils.js.map +1 -0
  238. package/build/es/components/datepicker/validation.js +2 -0
  239. package/build/es/components/datepicker/validation.js.map +1 -0
  240. package/build/es/components/index.js +1 -1
  241. package/build/es/components/input-group/FieldGroup.js +1 -1
  242. package/build/es/components/input-group/FieldGroup.js.map +1 -1
  243. package/build/es/components/input-group/InputGroup.js +1 -1
  244. package/build/es/components/input-group/InputGroup.js.map +1 -1
  245. package/build/es/components/input-group/Label.js +1 -1
  246. package/build/es/components/input-group/Label.js.map +1 -1
  247. package/build/es/components/input-group/SupportLabel.js +1 -1
  248. package/build/es/components/input-group/SupportLabel.js.map +1 -1
  249. package/build/es/components/list/List.js +2 -0
  250. package/build/es/components/list/List.js.map +1 -0
  251. package/build/es/components/list/ListItem.js +2 -0
  252. package/build/es/components/list/ListItem.js.map +1 -0
  253. package/build/es/components/list/index.js +2 -0
  254. package/build/es/components/list/index.js.map +1 -0
  255. package/build/es/components/modal/Modal.js +2 -0
  256. package/build/es/components/modal/Modal.js.map +1 -0
  257. package/build/es/components/modal/index.js +2 -0
  258. package/build/es/components/modal/index.js.map +1 -0
  259. package/build/es/components/modal/useModal.js +2 -0
  260. package/build/es/components/modal/useModal.js.map +1 -0
  261. package/build/es/components/radio-button/BaseRadioButton.js +2 -0
  262. package/build/es/components/radio-button/BaseRadioButton.js.map +1 -0
  263. package/build/es/components/radio-button/RadioButton.js +2 -0
  264. package/build/es/components/radio-button/RadioButton.js.map +1 -0
  265. package/build/es/components/radio-button/RadioButtonGroup.js +2 -0
  266. package/build/es/components/radio-button/RadioButtonGroup.js.map +1 -0
  267. package/build/es/components/radio-button/index.js +2 -0
  268. package/build/es/components/radio-button/index.js.map +1 -0
  269. package/build/es/components/radio-button/radioGroupContext.js +2 -0
  270. package/build/es/components/radio-button/radioGroupContext.js.map +1 -0
  271. package/build/es/components/select/NativeSelect.js +2 -0
  272. package/build/es/components/select/NativeSelect.js.map +1 -0
  273. package/build/es/components/select/Select.js +2 -0
  274. package/build/es/components/select/Select.js.map +1 -0
  275. package/build/es/components/select/index.js +2 -0
  276. package/build/es/components/select/index.js.map +1 -0
  277. package/build/es/components/select/select-utils.js +2 -0
  278. package/build/es/components/select/select-utils.js.map +1 -0
  279. package/build/es/components/tag/Tag.js +1 -1
  280. package/build/es/components/tag/Tag.js.map +1 -1
  281. package/build/es/components/text-input/BaseTextArea.js +2 -0
  282. package/build/es/components/text-input/BaseTextArea.js.map +1 -0
  283. package/build/es/components/text-input/BaseTextInput.js +2 -0
  284. package/build/es/components/text-input/BaseTextInput.js.map +1 -0
  285. package/build/es/components/text-input/TextArea.js +2 -0
  286. package/build/es/components/text-input/TextArea.js.map +1 -0
  287. package/build/es/components/text-input/TextInput.js +2 -0
  288. package/build/es/components/text-input/TextInput.js.map +1 -0
  289. package/build/es/components/text-input/index.js +2 -0
  290. package/build/es/components/text-input/index.js.map +1 -0
  291. package/build/es/components/tooltip/PopupTip.js +1 -1
  292. package/build/es/components/tooltip/PopupTip.js.map +1 -1
  293. package/build/es/components/tooltip/TooltipContent.js +1 -1
  294. package/build/es/components/tooltip/TooltipContent.js.map +1 -1
  295. package/build/es/components/tooltip/TooltipTrigger.js +1 -1
  296. package/build/es/components/tooltip/TooltipTrigger.js.map +1 -1
  297. package/build/es/index.js +1 -1
  298. package/build/hooks/useAriaLiveRegion/useAriaLiveRegion.d.ts +1 -1
  299. package/package.json +31 -4
  300. package/src/components/accordion/styles/_index.scss +1 -0
  301. package/src/components/accordion/styles/accordion.css +166 -0
  302. package/src/components/accordion/styles/accordion.min.css +1 -0
  303. package/src/components/accordion/styles/accordion.scss +147 -0
  304. package/src/components/breadcrumb/styles/_index.scss +1 -0
  305. package/src/components/breadcrumb/styles/breadcrumb.css +29 -0
  306. package/src/components/breadcrumb/styles/breadcrumb.min.css +1 -0
  307. package/src/components/breadcrumb/styles/breadcrumb.scss +34 -0
  308. package/src/components/button/styles/_index.scss +1 -0
  309. package/src/components/button/styles/button.css +251 -0
  310. package/src/components/button/styles/button.min.css +1 -0
  311. package/src/components/button/styles/button.scss +294 -0
  312. package/src/components/checkbox/styles/_index.scss +1 -0
  313. package/src/components/checkbox/styles/checkbox.css +191 -0
  314. package/src/components/checkbox/styles/checkbox.min.css +1 -0
  315. package/src/components/checkbox/styles/checkbox.scss +229 -0
  316. package/src/components/combobox/styles/_index.scss +1 -0
  317. package/src/components/combobox/styles/combobox.css +337 -0
  318. package/src/components/combobox/styles/combobox.min.css +1 -0
  319. package/src/components/combobox/styles/combobox.scss +307 -0
  320. package/src/components/cookie-consent/styles/_index.scss +1 -0
  321. package/src/components/cookie-consent/styles/cookie-consent.css +94 -0
  322. package/src/components/cookie-consent/styles/cookie-consent.min.css +1 -0
  323. package/src/components/cookie-consent/styles/cookie-consent.scss +79 -0
  324. package/src/components/datepicker/styles/_calendar-date-button.scss +100 -0
  325. package/src/components/datepicker/styles/_calendar-navigation-dropdown.scss +53 -0
  326. package/src/components/datepicker/styles/_calendar-navigation.scss +54 -0
  327. package/src/components/datepicker/styles/_calendar-table.scss +27 -0
  328. package/src/components/datepicker/styles/_calendar.scss +68 -0
  329. package/src/components/datepicker/styles/_index.scss +1 -0
  330. package/src/components/datepicker/styles/datepicker.css +453 -0
  331. package/src/components/datepicker/styles/datepicker.min.css +1 -0
  332. package/src/components/datepicker/styles/datepicker.scss +63 -0
  333. package/src/components/list/styles/_index.scss +1 -0
  334. package/src/components/list/styles/list.css +128 -0
  335. package/src/components/list/styles/list.min.css +1 -0
  336. package/src/components/list/styles/list.scss +166 -0
  337. package/src/components/loader/styles/loader.css +6 -6
  338. package/src/components/loader/styles/loader.min.css +1 -1
  339. package/src/components/loader/styles/skeleton-loader.css +5 -5
  340. package/src/components/loader/styles/skeleton-loader.min.css +1 -1
  341. package/src/components/modal/styles/_index.scss +1 -0
  342. package/src/components/modal/styles/modal.css +115 -0
  343. package/src/components/modal/styles/modal.min.css +1 -0
  344. package/src/components/modal/styles/modal.scss +100 -0
  345. package/src/components/radio-button/styles/_index.scss +1 -0
  346. package/src/components/radio-button/styles/radio-button.css +180 -0
  347. package/src/components/radio-button/styles/radio-button.min.css +1 -0
  348. package/src/components/radio-button/styles/radio-button.scss +201 -0
  349. package/src/components/select/styles/_index.scss +1 -0
  350. package/src/components/select/styles/select.css +350 -0
  351. package/src/components/select/styles/select.min.css +1 -0
  352. package/src/components/select/styles/select.scss +330 -0
  353. package/src/components/text-input/styles/_index.scss +1 -0
  354. package/src/components/text-input/styles/text-input.css +513 -0
  355. package/src/components/text-input/styles/text-input.min.css +1 -0
  356. package/src/components/text-input/styles/text-input.scss +389 -0
  357. package/src/components/tooltip/styles/_index.scss +1 -0
  358. package/src/components/tooltip/styles/tooltip.css +136 -0
  359. package/src/components/tooltip/styles/tooltip.min.css +1 -0
  360. package/src/components/tooltip/styles/tooltip.scss +105 -0
@@ -0,0 +1,269 @@
1
+ import { ChangeEvent, KeyboardEvent, FocusEvent, ButtonHTMLAttributes } from 'react';
2
+ import { DataTestAutoId, Density } from '../../core';
3
+ import { InputGroupProps, LabelProps } from '../input-group';
4
+ export type DateValidationError = "WRONG_FORMAT" | "OUTSIDE_LOWER_BOUND" | "OUTSIDE_UPPER_BOUND";
5
+ export type DatePickerChangeEventHandler = (e: ChangeEvent<HTMLInputElement>, date: Date | null, meta: DatePickerMetadata) => void;
6
+ export type DatePickerBlurEventHandler = (e: FocusEvent<HTMLInputElement>, date: Date | null, meta: DatePickerMetadata) => void;
7
+ export type DatePickerFocusEventHandler = DatePickerBlurEventHandler;
8
+ export type DatePickerKeyDownEventHandler = (e: KeyboardEvent<HTMLInputElement>, date: Date | null, meta: DatePickerMetadata) => void;
9
+ export type DatePickerMetadata = {
10
+ error: DateValidationError | null;
11
+ /** Samme som event.target.value */
12
+ value: string;
13
+ };
14
+ export type YearsToShow = number | "all" | {
15
+ previous: number;
16
+ coming: number;
17
+ };
18
+ export interface DatePickerProps extends Omit<InputGroupProps, "label" | "children">, DataTestAutoId {
19
+ /** Settes på rotnivå. */
20
+ id?: string;
21
+ /** Settes på rotnivå. */
22
+ className?: string;
23
+ /**
24
+ * @default "Velg dato"
25
+ */
26
+ label?: string;
27
+ /**
28
+ * Bruk labelProps for å sette props som `variant` og `srOnly`.
29
+ *
30
+ * @example
31
+ * ```tsx
32
+ * <DatePicker
33
+ * labelProps={{ srOnly: true }}
34
+ * />
35
+ * ```
36
+ */
37
+ labelProps?: Omit<LabelProps, "children">;
38
+ /**
39
+ * dd.mm.åååå
40
+ *
41
+ * Dersom komponenten ikke er _controlled_, send inn ønsket standardverdi her (hvis noen).
42
+ *
43
+ * @default undefined // tomt skjemafelt
44
+ */
45
+ defaultValue?: string;
46
+ /**
47
+ * Styr om du vil at kalenderen skal starte åpen.
48
+ * @default false
49
+ */
50
+ defaultShow?: boolean;
51
+ /**
52
+ * dd.mm.åååå
53
+ *
54
+ * Verdien til inputfeltet.
55
+ */
56
+ value?: string;
57
+ /**
58
+ * dd.mm.åååå
59
+ *
60
+ * Skru av knapper i kalenderen før denne datoen,
61
+ * og gi valideringsfeil om dato som har blitt skrevet inn er utenfor.
62
+ */
63
+ disableBeforeDate?: string;
64
+ /**
65
+ * dd.mm.åååå
66
+ *
67
+ * Skru av knapper i kalenderen etter denne datoen,
68
+ * og gi valideringsfeil om dato som har blitt skrevet inn er utenfor.
69
+ */
70
+ disableAfterDate?: string;
71
+ /**
72
+ * Angir hvor mange år som skal vises i nedtrekkslisten i kalenderen. Du kan angi samme verdi
73
+ * for kommende og foregående år ved å sende inn et tall, eller sende inn et objekt med separate
74
+ * verdier for kommende og foregående år. Hvis du sender inn "all" vil alle år mellom min. og
75
+ * maks. dato vises i listen (eller default antall år hvis ikke min./maks. dato er angitt).
76
+ * @default 3
77
+ */
78
+ yearsToShow?: YearsToShow;
79
+ /**
80
+ * Settes på inputfeltet.
81
+ */
82
+ name?: string;
83
+ /**
84
+ * Hjelpetekst som vises under inputfeltet.
85
+ */
86
+ helpLabel?: string;
87
+ /**
88
+ * Hvis datovelgeren har valideringsfeil må dette feltet settes. Inputfeltet
89
+ * merkes som ugyldig og teksten erstatter en eventuell hjelpetekst.
90
+ */
91
+ errorLabel?: string;
92
+ /**
93
+ * Merk som ugyldig uten å sende inn en errorLabel.
94
+ * NB! Brukes kun i tilfeller der valideringsfeil dukker opp andre steder, for eksempel i en FieldGroup.
95
+ */
96
+ invalid?: boolean;
97
+ density?: Density;
98
+ /**
99
+ * @deprecated Kalenderen viser nå alltid kontroller for å navigere mellom år og måneder. Denne prop'en gjør ikke lenger noe og kan fjernes.
100
+ */
101
+ extended?: boolean;
102
+ /**
103
+ * Om du ønsker andre labels for ukedagene kan du gi de her.
104
+ */
105
+ days?: string[];
106
+ /**
107
+ * Om du ønsker andre labels for måneder kan du gi de her.
108
+ */
109
+ months?: string[];
110
+ /**
111
+ * Overstyr hvordan vi omtaler "Måned".
112
+ * @default "Måned"
113
+ */
114
+ monthLabel?: string;
115
+ /**
116
+ * Overstyr hvordan vi omtaler "År".
117
+ * @default "År"
118
+ */
119
+ yearLabel?: string;
120
+ /**
121
+ * Vises i inputfeltet hvis det ikke har noen input, som hint for datoformat.
122
+ * @default "dd.mm.åååå"
123
+ */
124
+ placeholder?: string;
125
+ /**
126
+ * Bredden på inputfeltet, tilpasset typisk bredde for en dato i formatet `dd.mm.åååå`.
127
+ * @default "10ch"
128
+ */
129
+ width?: string;
130
+ /**
131
+ * Kalles ved change-event fra datovelgerens inputfelt. Verdien fra selve eventet vil
132
+ * alltid være teksten fra inputfeltet.
133
+ *
134
+ * Det er _ikke_ garantert at verdien fra `event.target.value` er en
135
+ * gyldig dato, eller i datoformat. Andre parameter vil enten være en gyldig
136
+ * `Date` eller `null`. Tredje parameter har informasjon om validering,
137
+ * men du kan også gjøre validering selv rett på `event.target.value`
138
+ * med utility-funksjoner som eksporteres fra pakka (se eksempel lenger ned).
139
+ *
140
+ * Kalles også når brukeren velger en dato fra kalendervisningen. Kallet
141
+ * prøver å simulere et vanlig change-event så nært som mulig.
142
+ *
143
+ * Bruk meta-objektet for å se om det er valideringsfeil, og i så fal hvilken type feil:
144
+ *
145
+ * - ugyldig format på tekst
146
+ * - dato utenfor minimum tillatte dato (satt med `disableBeforeDate`)
147
+ * - dato utenfor maksimum tillatte dato (satt med `disableAfterDate`)
148
+ *
149
+ * @example
150
+ *
151
+ * ```tsx
152
+ * <DatePicker
153
+ * value={value}
154
+ * onChange={(e, date, meta) => {
155
+ * setValue(e.target.value);
156
+ *
157
+ * console.log("onChange", {
158
+ * event: e,
159
+ * date,
160
+ * meta,
161
+ * });
162
+ * }}
163
+ * />
164
+ * ```
165
+ *
166
+ * @example
167
+ *
168
+ * ```tsx
169
+ * import {
170
+ * DatePicker,
171
+ * formatInput,
172
+ * isCorrectFormat,
173
+ * isWithinUpperBound,
174
+ * isWithinLowerBound,
175
+ * parseDateString
176
+ * } from "@fremtind/jkl-datepicker-react";
177
+ * import { formatDate } from "@fremtind/jkl-formatters-util";
178
+ *
179
+ * <DatePicker
180
+ * label="Fødselsdato"
181
+ * errorLabel={formState.errors.fodselsdato?.message}
182
+ * disableBefore="01.01.1970"
183
+ * disableAfter={formatInput(new Date())}
184
+ * {...register("fodselsdato", {
185
+ * required: "Du må fylle ut fødselsdato",
186
+ * validate: {
187
+ * isCorrectFormat: (v) =>
188
+ * isCorrectFormat(v) ||
189
+ * `Datoen må være skrevet i formen ${formatDate(new Date())} eller kortformat`,
190
+ * withinLowerBound: (v) =>
191
+ * isWithinLowerBound(v, parseDateString("01.01.1970") || "Datoen må være før 01.01.1970"",
192
+ * withinUpperBound: (v) =>
193
+ * isWithinUpperBound(v, new Date()) || `Datoen må være før ${formatDate(new Date())}`,
194
+ * },
195
+ * })}
196
+ * />
197
+ * ```
198
+ */
199
+ onChange?: DatePickerChangeEventHandler;
200
+ /**
201
+ * Kalles ved focus-event fra datovelgerens inputfelt.
202
+ *
203
+ * @example
204
+ * ```tsx
205
+ * <DatePicker
206
+ * onFocus={(e, date, meta) => {
207
+ * console.log("onFocus", {
208
+ * event: e,
209
+ * date,
210
+ * meta,
211
+ * });
212
+ * }}
213
+ * />
214
+ * ```
215
+ */
216
+ onFocus?: DatePickerFocusEventHandler;
217
+ /**
218
+ * Kalles ved blur-event fra datovelgerens inputfelt, og kommer når fokus flyttes ut
219
+ * av skjemaelementet.
220
+ *
221
+ * **NB!** Dette inkluderer når fokus flyttes inn i kalenderen, eller til kalenderknappen!
222
+ *
223
+ * Om du ønsker å gjøre ting når brukeren går videre fra hele DatePicker:
224
+ * 1. Ha en onBlur på DatePicker, men ignorere events når fokus er inni DatePicker
225
+ * 2. Ha en onBlur på DatePicker sin action-prop (kalenderknappen), og gjøre det samme
226
+ *
227
+ * Hjelpefunksjonen isBlurTargetOutside hjelper med detaljene.
228
+ *
229
+ * @example
230
+ * ```tsx
231
+ * import { DatePicker, isBlurTargetOutside } from "@fremtind/jkl-datepicker-react";
232
+ *
233
+ * <DatePicker
234
+ * onBlur={(e, date, meta) => {
235
+ * // Ignorer blurs som går til kalenderknapper
236
+ * if (isBlurTargetOutside(e)) {
237
+ * console.log("onBlur");
238
+ * }
239
+ * }}
240
+ * action={{
241
+ * onBlur: (e) => {
242
+ * // Ignorer blurs som går tilbake til inputfeltet
243
+ * if (isBlurTargetOutside(e)) {
244
+ * console.log("action.onBlur");
245
+ * }
246
+ * },
247
+ * }}
248
+ * />
249
+ * ```
250
+ */
251
+ onBlur?: DatePickerBlurEventHandler;
252
+ /**
253
+ * Kalles ved onKeyDown på datovelgerens inputfelt. Dersom du trenger å fange opp
254
+ * alle tastetrykk, inkludert Tab videre til knappen for å åpne/lukke kalenderen,
255
+ * så kan du bruke dette eventet.
256
+ *
257
+ * @deprecated Eventet har mye overlapp med onChange, men var tidligere eneste metode for å
258
+ * få tilbakemelding ved tastetrykk i inputfeltet. Foretrekk onChange for ny kode.
259
+ */
260
+ onKeyDown?: DatePickerKeyDownEventHandler;
261
+ /**
262
+ * Lar deg sette lyttere på kalenderknappen i skjemafeltet.
263
+ */
264
+ action?: DatePickerAction;
265
+ showCalendarLabel?: string;
266
+ hideCalendarLabel?: string;
267
+ }
268
+ export interface DatePickerAction extends Exclude<ButtonHTMLAttributes<HTMLButtonElement>, "disabled"> {
269
+ }
@@ -0,0 +1,23 @@
1
+ import { default as React } from 'react';
2
+ export declare const dayMonthYearRegex: RegExp;
3
+ /**
4
+ * Format a Date object as a string in the format DatePicker expects.
5
+ *
6
+ * @param date the Date object to format
7
+ * @return returns a date string with "dd.mm.yyyy"-format
8
+ */
9
+ export declare function formatInput(date: Date): string;
10
+ /**
11
+ * Convert a date string to a Date object
12
+ *
13
+ * @param dateString date as string with format dd.mm.yyyy
14
+ * @return a Date object representing the given date
15
+ */
16
+ export declare function parseDateString(dateString?: string): Date | undefined;
17
+ /**
18
+ * Hjelpefunksjon for å se om en onBlur går utenfor DatePicker,
19
+ * eller om den går til et interaktivt element inni DatePickeren.
20
+ * @param {React.FocusEvent<HTMLButtonElement | HTMLInputElement>} e - Eventet fra onBlur og action.onBlur
21
+ * @returns {boolean} true hvis e.relatedTarget er utenfor DatePicker
22
+ */
23
+ export declare function isBlurTargetOutside(e: React.FocusEvent<HTMLButtonElement | HTMLInputElement>): boolean;
@@ -0,0 +1,11 @@
1
+ export declare function isCorrectFormat(value: string | undefined): boolean;
2
+ type ComparisonOptions = {
3
+ /**
4
+ * Kontroller om testen skal godkjennes om verdien er lik
5
+ * @default false
6
+ */
7
+ inclusive: boolean;
8
+ };
9
+ export declare function isWithinLowerBound(value: Date | string | undefined, minDate: Date, options?: ComparisonOptions): boolean;
10
+ export declare function isWithinUpperBound(value: Date | string | undefined, maxDate: Date, options?: ComparisonOptions): boolean;
11
+ export {};
@@ -1,10 +1,22 @@
1
+ export * from './accordion';
2
+ export * from './breadcrumb';
3
+ export * from './button';
1
4
  export * from './card';
5
+ export * from './checkbox';
6
+ export * from './combobox';
7
+ export * from './cookie-consent';
8
+ export * from './datepicker';
2
9
  export * from './icon';
3
10
  export * from './icon-button';
4
11
  export * from './input-group';
5
12
  export * from './link';
6
13
  export * from './link-list';
14
+ export * from './list';
7
15
  export * from './loader';
16
+ export * from './modal';
17
+ export * from './radio-button';
18
+ export * from './select';
8
19
  export * from './tag';
20
+ export * from './text-input';
9
21
  export * from './tooltip';
10
22
  export { ScreenReaderOnly, type ScreenReaderOnlyProps } from './ScreenReaderOnly';
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+ import { WithChildren } from '../..';
3
+ export interface ListProps extends WithChildren {
4
+ className?: string;
5
+ }
6
+ export declare const UnorderedList: React.FC<ListProps>;
7
+ export declare const OrderedList: React.FC<ListProps>;
8
+ export declare const List: React.FC<ListProps>;
@@ -0,0 +1,8 @@
1
+ import { default as React } from 'react';
2
+ import { WithChildren } from '../..';
3
+ export interface ListItemProps extends WithChildren {
4
+ className?: string;
5
+ }
6
+ export declare const ListItem: React.FC<ListItemProps>;
7
+ export declare const CrossListItem: React.FC<ListItemProps>;
8
+ export declare const CheckListItem: React.FC<ListItemProps>;
@@ -0,0 +1,3 @@
1
+ export type { ListProps } from './List';
2
+ export { UnorderedList, OrderedList, List } from './List';
3
+ export { ListItem, CheckListItem, CrossListItem } from './ListItem';
@@ -0,0 +1,72 @@
1
+ import { default as React } from 'react';
2
+ import { WithOptionalChildren } from '../..';
3
+ import { IconButtonProps } from '../icon-button';
4
+ export interface ModalProps extends WithOptionalChildren {
5
+ id?: string;
6
+ className?: string;
7
+ component?: React.ElementType;
8
+ style?: React.CSSProperties;
9
+ /**
10
+ * Overstyrer padding på modalen via en CSS-variabel.
11
+ */
12
+ padding?: 16 | 24 | 40;
13
+ }
14
+ type BaseModalProps = Omit<ModalProps, "padding" | "component">;
15
+ /**
16
+ * Ment å brukes med `useModal`.
17
+ */
18
+ export declare const ModalContainer: React.ForwardRefExoticComponent<Omit<{
19
+ id: string;
20
+ ref: (node: HTMLElement | React.ReactNode) => void;
21
+ role: string;
22
+ 'aria-modal': boolean;
23
+ 'aria-hidden': boolean;
24
+ 'aria-labelledby': string;
25
+ } & BaseModalProps, "ref"> & React.RefAttributes<HTMLDivElement>>;
26
+ /**
27
+ * Ment å brukes med `useModal`.
28
+ */
29
+ export declare const ModalOverlay: React.ForwardRefExoticComponent<{
30
+ onClick?: (() => void) | undefined;
31
+ } & BaseModalProps & {
32
+ /**
33
+ * Rendre uten bakgrunnsfarge, men med click target for å lukke modalen ved klikk utenfor.
34
+ */
35
+ transparent?: boolean | undefined;
36
+ } & React.RefAttributes<HTMLDivElement>>;
37
+ /**
38
+ * Ment å brukes med `useModal`.
39
+ */
40
+ export declare const Modal: React.ForwardRefExoticComponent<{
41
+ role: "document";
42
+ } & ModalProps & React.RefAttributes<HTMLElement>>;
43
+ /**
44
+ * Ment å brukes med `useModal`.
45
+ */
46
+ export declare const ModalHeader: React.ForwardRefExoticComponent<BaseModalProps & React.RefAttributes<HTMLDivElement>>;
47
+ /**
48
+ * Ment å brukes med `useModal`.
49
+ */
50
+ export declare const ModalTitle: React.ForwardRefExoticComponent<{
51
+ role: "heading";
52
+ 'aria-level': number;
53
+ id: string;
54
+ } & BaseModalProps & React.RefAttributes<HTMLParagraphElement>>;
55
+ /**
56
+ * Ment å brukes med `useModal`.
57
+ */
58
+ export declare const ModalCloseButton: React.ForwardRefExoticComponent<Omit<{
59
+ type: "button";
60
+ onClick: () => void;
61
+ } & {
62
+ "aria-label": string;
63
+ }, "onClick"> & BaseModalProps & IconButtonProps & React.RefAttributes<HTMLButtonElement>>;
64
+ /**
65
+ * Ment å brukes med `useModal`.
66
+ */
67
+ export declare const ModalBody: React.ForwardRefExoticComponent<BaseModalProps & React.RefAttributes<HTMLDivElement>>;
68
+ /**
69
+ * Ment å brukes med `useModal`.
70
+ */
71
+ export declare const ModalActions: React.ForwardRefExoticComponent<BaseModalProps & React.RefAttributes<HTMLDivElement>>;
72
+ export {};
@@ -0,0 +1,4 @@
1
+ export type { ModalProps } from './Modal';
2
+ export { ModalContainer, ModalOverlay, Modal, ModalHeader, ModalTitle, ModalCloseButton, ModalBody, ModalActions, } from './Modal';
3
+ export type { UseModalOptions, ModalInstance, ModalConfig } from './useModal';
4
+ export { useModal } from './useModal';
@@ -0,0 +1,69 @@
1
+ import { A11yDialogConfig, A11yDialogProps } from 'react-a11y-dialog';
2
+ export interface UseModalOptions extends Omit<A11yDialogProps, "id" | "closeButtonPosition"> {
3
+ id?: string;
4
+ /**
5
+ * @default "Lukk"
6
+ */
7
+ closeButtonLabel?: string;
8
+ /**
9
+ * Sett til `alertdialog` om du ønsker å slå av muligheten til å lukke med ESC og klikk utenfor.
10
+ *
11
+ * @default "dialog"
12
+ */
13
+ role?: "dialog" | "alertdialog";
14
+ /**
15
+ * Påkrevd for universell utforming. Tittelen kan gjenbrukes som `children` i `<ModalTitle>` med en konstant.
16
+ */
17
+ title: string;
18
+ }
19
+ export type ModalInstance = ReturnType<typeof useModal>[0];
20
+ export interface ModalConfig extends Omit<A11yDialogConfig, "dialog"> {
21
+ modal: A11yDialogConfig["dialog"];
22
+ closeButton: A11yDialogConfig["closeButton"] & {
23
+ "aria-label": string;
24
+ };
25
+ }
26
+ /**
27
+ * @example
28
+ * ```jsx
29
+ * const heading = "Bekreft sletting";
30
+ * const [instance, { title, overlay, container, modal, closeButton }] = useModal({ title: heading });
31
+ *
32
+ * useEffect(() => {
33
+ * if (!instance) {
34
+ * return;
35
+ * }
36
+ * instance.show();
37
+ * }, [instance]);
38
+ *
39
+ * return ReactDOM.createPortal(
40
+ * <ModalContainer {...container}>
41
+ * <ModalOverlay {...overlay} />
42
+ * <Modal {...modal}>
43
+ * <ModalHeader>
44
+ * <ModalTitle {...title}>{heading}</ModalTitle>
45
+ * <ModalCloseButton {...closeButton} />
46
+ * </ModalHeader>
47
+ * <ModalBody>
48
+ * Er du sikker på at du vil slette Foo Bar Baz?
49
+ * </ModalBody>
50
+ * <ModalActions>
51
+ * <PrimaryButton
52
+ * onClick={() => {
53
+ * // Do the thing
54
+ * instance?.hide()
55
+ * }}
56
+ * >
57
+ * Bekreft
58
+ * </PrimaryButton>
59
+ * <TertiaryButton onClick={() => instance?.hide()}>
60
+ * Avbryt
61
+ * </TertiaryButton>
62
+ * </ModalActions>
63
+ * </Modal>
64
+ * </ModalContainer>,
65
+ * document.body,
66
+ * );
67
+ * ```
68
+ */
69
+ export declare function useModal(props: UseModalOptions): readonly [A11yDialog.A11yDialog, ModalConfig];
@@ -0,0 +1,10 @@
1
+ import { default as React, ChangeEventHandler } from 'react';
2
+ import { Density } from '../..';
3
+ import { RadioButtonProps } from './RadioButton';
4
+ export interface BaseRadioButtonProps extends RadioButtonProps {
5
+ inline?: boolean;
6
+ density?: Density;
7
+ invalid?: boolean;
8
+ onChange?: ChangeEventHandler<HTMLInputElement>;
9
+ }
10
+ export declare const BaseRadioButton: React.ForwardRefExoticComponent<BaseRadioButtonProps & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,15 @@
1
+ import { default as React, InputHTMLAttributes, ChangeEventHandler, ReactNode } from 'react';
2
+ import { SupportLabelProps } from '../input-group';
3
+ export interface RadioButtonProps extends Omit<InputHTMLAttributes<HTMLInputElement>, "children"> {
4
+ children?: ReactNode;
5
+ value: string;
6
+ /** Kan også settes på RadioButtonGroup, men settes på RadioButton f. eks. av react-hook-form */
7
+ name?: string;
8
+ /** Kan også settes på RadioButtonGroup, men settes på RadioButton f. eks. av react-hook-form */
9
+ onChange?: ChangeEventHandler<HTMLInputElement>;
10
+ /** @deprecated Bruk children */
11
+ label?: ReactNode;
12
+ helpLabel?: ReactNode;
13
+ supportLabelProps?: Omit<SupportLabelProps, "id" | "errorLabel" | "helpLabel" | "density">;
14
+ }
15
+ export declare const RadioButton: React.ForwardRefExoticComponent<RadioButtonProps & React.RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,24 @@
1
+ import { ChangeEventHandler, FC } from 'react';
2
+ import { Density } from '../..';
3
+ import { FieldGroupProps } from '../input-group';
4
+ export interface RadioButtonGroupProps extends Omit<FieldGroupProps, "onChange"> {
5
+ legend: string;
6
+ /** Alle RadioButton i gruppen får dette som name. */
7
+ name?: string;
8
+ /** Om gruppen skal være controlled setter du den valgte verdien her. */
9
+ value?: string;
10
+ onChange?: ChangeEventHandler<HTMLInputElement>;
11
+ helpLabel?: string;
12
+ /**
13
+ * Erstatter hjelpeteksten (hvis noen) med en feilmelding.
14
+ * Merker samtidig alle RadioButton i gruppen som ugyldige.
15
+ */
16
+ errorLabel?: string;
17
+ /**
18
+ * Setter inline-modifieren på alle RadioButton i gruppen.
19
+ * @default false
20
+ */
21
+ inline?: boolean;
22
+ density?: Density;
23
+ }
24
+ export declare const RadioButtonGroup: FC<RadioButtonGroupProps>;
@@ -0,0 +1,6 @@
1
+ export type { RadioButtonProps } from './RadioButton';
2
+ export { RadioButton } from './RadioButton';
3
+ export type { RadioButtonGroupProps } from './RadioButtonGroup';
4
+ export { RadioButtonGroup } from './RadioButtonGroup';
5
+ export type { BaseRadioButtonProps } from './BaseRadioButton';
6
+ export { BaseRadioButton } from './BaseRadioButton';
@@ -0,0 +1,16 @@
1
+ import { default as React, ChangeEventHandler } from 'react';
2
+ import { Density, WithChildren } from '../..';
3
+ type RadioGroupContext = {
4
+ name: string | undefined;
5
+ value: string | undefined;
6
+ inline: boolean;
7
+ density?: Density;
8
+ invalid: boolean;
9
+ onChange: ChangeEventHandler<HTMLInputElement> | undefined;
10
+ };
11
+ export declare const useRadioGroupContext: () => RadioGroupContext;
12
+ interface Props extends WithChildren {
13
+ state: RadioGroupContext;
14
+ }
15
+ export declare const RadioGroupContextProvider: React.FC<Props>;
16
+ export {};
@@ -0,0 +1,19 @@
1
+ import { default as React, SelectHTMLAttributes } from 'react';
2
+ import { ValuePair } from '../..';
3
+ import { InputGroupProps } from '../input-group';
4
+ export interface NativeSelectProps extends Omit<InputGroupProps, "children">, SelectHTMLAttributes<HTMLSelectElement> {
5
+ /**
6
+ * Merk som ugyldig uten å sende inn en errorLabel.
7
+ * NB! Brukes kun i tilfeller der valideringsfeil dukker opp andre steder, for eksempel i en FieldGroup.
8
+ */
9
+ invalid?: boolean;
10
+ /**
11
+ * Setter inn et placeholderelement som vises når ingenting er valgt i nedtrekkslisten.
12
+ * @default "Velg"
13
+ */
14
+ placeholder?: string;
15
+ items: Array<string | ValuePair>;
16
+ selectClassName?: string;
17
+ width?: string;
18
+ }
19
+ export declare const NativeSelect: React.ForwardRefExoticComponent<NativeSelectProps & React.RefAttributes<HTMLSelectElement>>;
@@ -0,0 +1,53 @@
1
+ import { default as React, ChangeEvent } from 'react';
2
+ import { ValuePair, DataTestAutoId, Density } from '../..';
3
+ import { LabelProps, InputGroupProps } from '../input-group';
4
+ interface PartialChangeEvent extends Partial<Omit<ChangeEvent<HTMLSelectElement>, "target">> {
5
+ /** Kreves av react-hook-form, det skjer ulike ting avhengig av om det er blur eller change */
6
+ type: "change" | "blur";
7
+ target: {
8
+ /** Kreves av react-hook-form for å vite hvilket skjemafelt som ble endret */
9
+ name: string;
10
+ value: string;
11
+ };
12
+ }
13
+ type ChangeEventHandler = (event: PartialChangeEvent) => void;
14
+ export interface SelectProps extends Omit<InputGroupProps, "children">, DataTestAutoId {
15
+ id?: string;
16
+ name: string;
17
+ label: string;
18
+ labelProps?: Omit<LabelProps, "children" | "density" | "htmlFor" | "standAlone">;
19
+ items: Array<string | ValuePair>;
20
+ /**
21
+ * @default false
22
+ */
23
+ inline?: boolean;
24
+ /**
25
+ * @default "Velg"
26
+ */
27
+ defaultPrompt?: string;
28
+ className?: string;
29
+ value?: string;
30
+ helpLabel?: string;
31
+ errorLabel?: string;
32
+ /**
33
+ * @default false
34
+ */
35
+ searchable?: boolean | ((searchValue: string, searchItem: string | ValuePair) => boolean);
36
+ density?: Density;
37
+ width?: string;
38
+ onChange?: ChangeEventHandler;
39
+ onBlur?: ChangeEventHandler;
40
+ onFocus?: ChangeEventHandler;
41
+ /**
42
+ * Merk som ugyldig uten å sende inn en errorLabel.
43
+ * NB! Brukes kun i tilfeller der valideringsfeil dukker opp andre steder, for eksempel i en FieldGroup.
44
+ */
45
+ invalid?: boolean;
46
+ /**
47
+ * Hvor mange valg skal vises i listen før den begynner å scrolle.
48
+ * @default 5
49
+ */
50
+ maxShownOptions?: number;
51
+ }
52
+ export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLSelectElement>>;
53
+ export {};
@@ -0,0 +1,4 @@
1
+ export type { SelectProps } from './Select';
2
+ export { Select } from './Select';
3
+ export type { NativeSelectProps } from './NativeSelect';
4
+ export { NativeSelect } from './NativeSelect';
@@ -0,0 +1,2 @@
1
+ export declare function toLower(str?: string): string;
2
+ export declare function focusSelected(listEl: HTMLElement, selected: string | undefined): void;