@fremtind/jokul 0.44.6 → 0.45.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 (785) hide show
  1. package/build/build-stats.html +1 -1
  2. package/build/cjs/components/accordion/Accordion.cjs.map +1 -1
  3. package/build/cjs/components/accordion/Accordion.d.cts +1 -6
  4. package/build/cjs/components/accordion/AccordionItem.cjs.map +1 -1
  5. package/build/cjs/components/accordion/AccordionItem.d.cts +2 -9
  6. package/build/cjs/components/accordion/index.d.cts +3 -2
  7. package/build/cjs/components/accordion/types.cjs +2 -0
  8. package/build/cjs/components/accordion/types.cjs.map +1 -0
  9. package/build/cjs/components/accordion/types.d.cts +13 -0
  10. package/build/cjs/components/autosuggest/Autosuggest.cjs.map +1 -1
  11. package/build/cjs/components/autosuggest/Autosuggest.d.cts +1 -45
  12. package/build/cjs/components/autosuggest/BaseAutosuggest.cjs.map +1 -1
  13. package/build/cjs/components/autosuggest/BaseAutosuggest.d.cts +1 -1
  14. package/build/cjs/components/autosuggest/index.d.cts +1 -1
  15. package/build/cjs/components/autosuggest/types.cjs +2 -0
  16. package/build/cjs/components/autosuggest/types.cjs.map +1 -0
  17. package/build/cjs/components/autosuggest/types.d.cts +44 -0
  18. package/build/cjs/components/breadcrumb/Breadcrumb.cjs.map +1 -1
  19. package/build/cjs/components/breadcrumb/Breadcrumb.d.cts +1 -5
  20. package/build/cjs/components/breadcrumb/BreadcrumbItem.cjs.map +1 -1
  21. package/build/cjs/components/breadcrumb/BreadcrumbItem.d.cts +1 -9
  22. package/build/cjs/components/breadcrumb/index.d.cts +3 -2
  23. package/build/cjs/components/breadcrumb/types.cjs +2 -0
  24. package/build/cjs/components/breadcrumb/types.cjs.map +1 -0
  25. package/build/cjs/components/breadcrumb/types.d.cts +13 -0
  26. package/build/cjs/components/card/NavCard.cjs.map +1 -1
  27. package/build/cjs/components/card/NavCard.d.cts +1 -1
  28. package/build/cjs/components/checkbox/Checkbox.cjs.map +1 -1
  29. package/build/cjs/components/checkbox/Checkbox.d.cts +2 -16
  30. package/build/cjs/components/checkbox/index.d.cts +2 -1
  31. package/build/cjs/components/checkbox/types.cjs +2 -0
  32. package/build/cjs/components/checkbox/types.cjs.map +1 -0
  33. package/build/cjs/components/checkbox/types.d.cts +16 -0
  34. package/build/cjs/components/checkbox-panel/CheckboxPanel.cjs +2 -0
  35. package/build/cjs/components/checkbox-panel/CheckboxPanel.cjs.map +1 -0
  36. package/build/cjs/components/checkbox-panel/CheckboxPanel.d.cts +3 -0
  37. package/build/cjs/components/checkbox-panel/index.cjs +2 -0
  38. package/build/cjs/components/checkbox-panel/index.d.cts +2 -0
  39. package/build/cjs/components/checkbox-panel/types.cjs +2 -0
  40. package/build/cjs/components/checkbox-panel/types.cjs.map +1 -0
  41. package/build/cjs/components/checkbox-panel/types.d.cts +6 -0
  42. package/build/cjs/components/chip/Chip.cjs.map +1 -1
  43. package/build/cjs/components/chip/Chip.d.cts +2 -13
  44. package/build/cjs/components/chip/index.d.cts +2 -1
  45. package/build/cjs/components/chip/types.cjs +2 -0
  46. package/build/cjs/components/chip/types.cjs.map +1 -0
  47. package/build/cjs/components/chip/types.d.cts +13 -0
  48. package/build/cjs/components/combobox/Combobox.cjs.map +1 -1
  49. package/build/cjs/components/combobox/Combobox.d.cts +2 -38
  50. package/build/cjs/components/combobox/index.d.cts +2 -1
  51. package/build/cjs/components/combobox/types.cjs +2 -0
  52. package/build/cjs/components/combobox/types.cjs.map +1 -0
  53. package/build/cjs/components/combobox/types.d.cts +37 -0
  54. package/build/cjs/components/countdown/Countdown.cjs.map +1 -0
  55. package/build/cjs/components/countdown/Countdown.d.cts +3 -0
  56. package/build/cjs/components/countdown/index.cjs +2 -0
  57. package/build/cjs/components/countdown/index.cjs.map +1 -0
  58. package/build/cjs/components/countdown/index.d.cts +2 -0
  59. package/build/cjs/components/countdown/types.cjs +2 -0
  60. package/build/cjs/components/countdown/types.cjs.map +1 -0
  61. package/build/cjs/components/{progress-bar/Countdown.d.cts → countdown/types.d.cts} +1 -2
  62. package/build/cjs/components/datepicker/types.d.cts +3 -3
  63. package/build/cjs/components/description-list/DescriptionList.cjs.map +1 -1
  64. package/build/cjs/components/description-list/DescriptionList.d.cts +1 -10
  65. package/build/cjs/components/description-list/index.d.cts +2 -1
  66. package/build/cjs/components/description-list/types.cjs +2 -0
  67. package/build/cjs/components/description-list/types.cjs.map +1 -0
  68. package/build/cjs/components/description-list/types.d.cts +10 -0
  69. package/build/cjs/components/feedback/Feedback.cjs.map +1 -1
  70. package/build/cjs/components/feedback/Feedback.d.cts +1 -1
  71. package/build/cjs/components/feedback/FeedbackSuccess.cjs.map +1 -1
  72. package/build/cjs/components/feedback/FeedbackSuccess.d.cts +1 -1
  73. package/build/cjs/components/feedback/feedbackContext.cjs.map +1 -1
  74. package/build/cjs/components/feedback/feedbackContext.d.cts +1 -1
  75. package/build/cjs/components/feedback/types.d.cts +12 -4
  76. package/build/cjs/components/file-input/FileInput.cjs.map +1 -1
  77. package/build/cjs/components/file-input/FileInput.d.cts +1 -1
  78. package/build/cjs/components/flex/Flex.cjs.map +1 -1
  79. package/build/cjs/components/flex/Flex.d.cts +1 -14
  80. package/build/cjs/components/flex/index.d.cts +1 -0
  81. package/build/cjs/components/flex/types.cjs +2 -0
  82. package/build/cjs/components/flex/types.cjs.map +1 -0
  83. package/build/cjs/components/flex/types.d.cts +14 -0
  84. package/build/cjs/components/icon/types.d.cts +2 -1
  85. package/build/cjs/components/icon-button/IconButton.cjs.map +1 -1
  86. package/build/cjs/components/icon-button/IconButton.d.cts +2 -5
  87. package/build/cjs/components/icon-button/index.d.cts +2 -1
  88. package/build/cjs/components/icon-button/types.cjs +2 -0
  89. package/build/cjs/components/icon-button/types.cjs.map +1 -0
  90. package/build/cjs/components/icon-button/types.d.cts +5 -0
  91. package/build/cjs/components/image/Image.cjs.map +1 -1
  92. package/build/cjs/components/image/Image.d.cts +1 -11
  93. package/build/cjs/components/image/index.d.cts +2 -1
  94. package/build/cjs/components/image/types.cjs +2 -0
  95. package/build/cjs/components/image/types.cjs.map +1 -0
  96. package/build/cjs/components/image/types.d.cts +12 -0
  97. package/build/cjs/components/index.cjs +1 -1
  98. package/build/cjs/components/index.d.cts +4 -1
  99. package/build/cjs/components/input-group/FieldGroup.cjs.map +1 -1
  100. package/build/cjs/components/input-group/FieldGroup.d.cts +2 -14
  101. package/build/cjs/components/input-group/InputGroup.cjs.map +1 -1
  102. package/build/cjs/components/input-group/InputGroup.d.cts +11 -33
  103. package/build/cjs/components/input-group/Label.cjs.map +1 -1
  104. package/build/cjs/components/input-group/Label.d.cts +2 -13
  105. package/build/cjs/components/input-group/SupportLabel.cjs.map +1 -1
  106. package/build/cjs/components/input-group/SupportLabel.d.cts +2 -60
  107. package/build/cjs/components/input-group/index.d.cts +5 -4
  108. package/build/cjs/components/input-group/types.cjs +2 -0
  109. package/build/cjs/components/input-group/types.cjs.map +1 -0
  110. package/build/cjs/components/input-group/types.d.cts +101 -0
  111. package/build/cjs/components/link/Link.cjs.map +1 -1
  112. package/build/cjs/components/link/Link.d.cts +4 -6
  113. package/build/cjs/components/link/index.cjs +1 -1
  114. package/build/cjs/components/link/index.d.cts +2 -2
  115. package/build/cjs/components/link/types.cjs +2 -0
  116. package/build/cjs/components/link/types.cjs.map +1 -0
  117. package/build/cjs/components/link/types.d.cts +4 -0
  118. package/build/cjs/components/loader/Loader.cjs.map +1 -1
  119. package/build/cjs/components/loader/Loader.d.cts +1 -15
  120. package/build/cjs/components/loader/index.d.cts +10 -9
  121. package/build/cjs/components/loader/skeletons/SkeletonAnimation.cjs.map +1 -1
  122. package/build/cjs/components/loader/skeletons/SkeletonAnimation.d.cts +2 -15
  123. package/build/cjs/components/loader/skeletons/SkeletonButton.cjs.map +1 -1
  124. package/build/cjs/components/loader/skeletons/SkeletonButton.d.cts +1 -5
  125. package/build/cjs/components/loader/skeletons/SkeletonCheckboxGroup.cjs.map +1 -1
  126. package/build/cjs/components/loader/skeletons/SkeletonCheckboxGroup.d.cts +1 -10
  127. package/build/cjs/components/loader/skeletons/SkeletonElement.cjs.map +1 -1
  128. package/build/cjs/components/loader/skeletons/SkeletonElement.d.cts +2 -7
  129. package/build/cjs/components/loader/skeletons/SkeletonInput.cjs.map +1 -1
  130. package/build/cjs/components/loader/skeletons/SkeletonInput.d.cts +1 -9
  131. package/build/cjs/components/loader/skeletons/SkeletonLabel.cjs.map +1 -1
  132. package/build/cjs/components/loader/skeletons/SkeletonLabel.d.cts +1 -6
  133. package/build/cjs/components/loader/skeletons/SkeletonRadioButtonGroup.cjs.map +1 -1
  134. package/build/cjs/components/loader/skeletons/SkeletonRadioButtonGroup.d.cts +1 -10
  135. package/build/cjs/components/loader/skeletons/SkeletonTable.cjs.map +1 -1
  136. package/build/cjs/components/loader/skeletons/SkeletonTable.d.cts +2 -16
  137. package/build/cjs/components/loader/skeletons/SkeletonTextArea.cjs.map +1 -1
  138. package/build/cjs/components/loader/skeletons/SkeletonTextArea.d.cts +1 -9
  139. package/build/cjs/components/loader/types.cjs +2 -0
  140. package/build/cjs/components/loader/types.cjs.map +1 -0
  141. package/build/cjs/components/loader/types.d.cts +82 -0
  142. package/build/cjs/components/logo/Logo.cjs.map +1 -1
  143. package/build/cjs/components/logo/Logo.d.cts +1 -14
  144. package/build/cjs/components/logo/LogoStamp.cjs.map +1 -1
  145. package/build/cjs/components/logo/LogoStamp.d.cts +1 -15
  146. package/build/cjs/components/logo/index.d.cts +3 -2
  147. package/build/cjs/components/logo/types.cjs +2 -0
  148. package/build/cjs/components/logo/types.cjs.map +1 -0
  149. package/build/cjs/components/logo/types.d.cts +28 -0
  150. package/build/cjs/components/menu/Menu.cjs.map +1 -1
  151. package/build/cjs/components/menu/Menu.d.cts +2 -38
  152. package/build/cjs/components/menu/MenuItem.cjs.map +1 -1
  153. package/build/cjs/components/menu/MenuItem.d.cts +2 -22
  154. package/build/cjs/components/menu/MenuItemCheckbox.cjs.map +1 -1
  155. package/build/cjs/components/menu/MenuItemCheckbox.d.cts +2 -10
  156. package/build/cjs/components/menu/index.d.cts +4 -3
  157. package/build/cjs/components/menu/types.cjs +2 -0
  158. package/build/cjs/components/menu/types.cjs.map +1 -0
  159. package/build/cjs/components/menu/types.d.cts +68 -0
  160. package/build/cjs/components/message/FormErrorMessage.cjs.map +1 -1
  161. package/build/cjs/components/message/FormErrorMessage.d.cts +1 -12
  162. package/build/cjs/components/message/Message.cjs.map +1 -1
  163. package/build/cjs/components/message/Message.d.cts +2 -15
  164. package/build/cjs/components/message/index.d.cts +3 -2
  165. package/build/cjs/components/message/types.cjs +2 -0
  166. package/build/cjs/components/message/types.cjs.map +1 -0
  167. package/build/cjs/components/message/types.d.cts +26 -0
  168. package/build/cjs/components/modal/Modal.cjs.map +1 -1
  169. package/build/cjs/components/modal/Modal.d.cts +2 -23
  170. package/build/cjs/components/modal/index.d.cts +3 -2
  171. package/build/cjs/components/modal/types.cjs +2 -0
  172. package/build/cjs/components/modal/types.cjs.map +1 -0
  173. package/build/cjs/components/modal/types.d.cts +42 -0
  174. package/build/cjs/components/modal/useModal.cjs.map +1 -1
  175. package/build/cjs/components/modal/useModal.d.cts +1 -24
  176. package/build/cjs/components/nav-link/NavLink.cjs.map +1 -0
  177. package/build/cjs/components/nav-link/NavLink.d.cts +5 -0
  178. package/build/cjs/components/nav-link/index.cjs +2 -0
  179. package/build/cjs/components/nav-link/index.cjs.map +1 -0
  180. package/build/cjs/components/nav-link/index.d.cts +2 -0
  181. package/build/cjs/components/nav-link/types.cjs +2 -0
  182. package/build/cjs/components/nav-link/types.cjs.map +1 -0
  183. package/build/cjs/components/nav-link/types.d.cts +5 -0
  184. package/build/cjs/components/pagination/Pagination.cjs.map +1 -1
  185. package/build/cjs/components/pagination/Pagination.d.cts +1 -15
  186. package/build/cjs/components/pagination/index.d.cts +2 -1
  187. package/build/cjs/components/pagination/types.cjs +2 -0
  188. package/build/cjs/components/pagination/types.cjs.map +1 -0
  189. package/build/cjs/components/pagination/types.d.cts +15 -0
  190. package/build/cjs/components/popover/Popover.cjs.map +1 -1
  191. package/build/cjs/components/popover/Popover.d.cts +1 -102
  192. package/build/cjs/components/popover/index.d.cts +2 -1
  193. package/build/cjs/components/popover/types.cjs +2 -0
  194. package/build/cjs/components/popover/types.cjs.map +1 -0
  195. package/build/cjs/components/popover/types.d.cts +102 -0
  196. package/build/cjs/components/progress-bar/ProgressBar.cjs.map +1 -1
  197. package/build/cjs/components/progress-bar/ProgressBar.d.cts +2 -20
  198. package/build/cjs/components/progress-bar/index.cjs +1 -1
  199. package/build/cjs/components/progress-bar/index.d.cts +2 -2
  200. package/build/cjs/components/progress-bar/types.cjs +2 -0
  201. package/build/cjs/components/progress-bar/types.cjs.map +1 -0
  202. package/build/cjs/components/progress-bar/types.d.cts +20 -0
  203. package/build/cjs/components/radio-button/BaseRadioButton.cjs.map +1 -1
  204. package/build/cjs/components/radio-button/BaseRadioButton.d.cts +2 -9
  205. package/build/cjs/components/radio-button/RadioButton.cjs.map +1 -1
  206. package/build/cjs/components/radio-button/RadioButton.d.cts +2 -14
  207. package/build/cjs/components/radio-button/RadioButtonGroup.cjs.map +1 -1
  208. package/build/cjs/components/radio-button/RadioButtonGroup.d.cts +2 -23
  209. package/build/cjs/components/radio-button/index.d.cts +4 -3
  210. package/build/cjs/components/radio-button/types.cjs +2 -0
  211. package/build/cjs/components/radio-button/types.cjs.map +1 -0
  212. package/build/cjs/components/radio-button/types.d.cts +41 -0
  213. package/build/cjs/components/radio-panel/RadioPanel.cjs +2 -0
  214. package/build/cjs/components/radio-panel/RadioPanel.cjs.map +1 -0
  215. package/build/cjs/components/radio-panel/RadioPanel.d.cts +3 -0
  216. package/build/cjs/components/radio-panel/RadioPanelGroup.cjs.map +1 -0
  217. package/build/cjs/components/radio-panel/RadioPanelGroup.d.cts +3 -0
  218. package/build/cjs/components/radio-panel/index.cjs +2 -0
  219. package/build/cjs/components/radio-panel/index.cjs.map +1 -0
  220. package/build/cjs/components/radio-panel/index.d.cts +3 -0
  221. package/build/cjs/components/{input-panel → radio-panel}/radioPanelContext.cjs.map +1 -1
  222. package/build/cjs/components/radio-panel/types.cjs +2 -0
  223. package/build/cjs/components/radio-panel/types.cjs.map +1 -0
  224. package/build/cjs/components/radio-panel/types.d.cts +9 -0
  225. package/build/cjs/components/select/NativeSelect.cjs.map +1 -1
  226. package/build/cjs/components/select/NativeSelect.d.cts +2 -18
  227. package/build/cjs/components/select/Select.cjs.map +1 -1
  228. package/build/cjs/components/select/Select.d.cts +2 -53
  229. package/build/cjs/components/select/index.d.cts +3 -2
  230. package/build/cjs/components/select/types.cjs +2 -0
  231. package/build/cjs/components/select/types.cjs.map +1 -0
  232. package/build/cjs/components/select/types.d.cts +67 -0
  233. package/build/cjs/components/summary-table/SummaryTable.cjs.map +1 -1
  234. package/build/cjs/components/summary-table/SummaryTable.d.cts +2 -8
  235. package/build/cjs/components/summary-table/SummaryTableRow.cjs.map +1 -1
  236. package/build/cjs/components/summary-table/SummaryTableRow.d.cts +2 -6
  237. package/build/cjs/components/summary-table/index.d.cts +3 -2
  238. package/build/cjs/components/summary-table/types.cjs +2 -0
  239. package/build/cjs/components/summary-table/types.cjs.map +1 -0
  240. package/build/cjs/components/summary-table/types.d.cts +13 -0
  241. package/build/cjs/components/system-message/SystemMessage.cjs.map +1 -1
  242. package/build/cjs/components/system-message/SystemMessage.d.cts +1 -15
  243. package/build/cjs/components/system-message/index.d.cts +2 -1
  244. package/build/cjs/components/system-message/types.cjs +2 -0
  245. package/build/cjs/components/system-message/types.cjs.map +1 -0
  246. package/build/cjs/components/system-message/types.d.cts +15 -0
  247. package/build/cjs/components/table/DataTable.cjs.map +1 -1
  248. package/build/cjs/components/table/DataTable.d.cts +2 -16
  249. package/build/cjs/components/table/ExpandableTableRow.cjs.map +1 -1
  250. package/build/cjs/components/table/ExpandableTableRow.d.cts +1 -14
  251. package/build/cjs/components/table/ExpandableTableRowController.cjs.map +1 -1
  252. package/build/cjs/components/table/ExpandableTableRowController.d.cts +1 -7
  253. package/build/cjs/components/table/Table.cjs.map +1 -1
  254. package/build/cjs/components/table/Table.d.cts +2 -9
  255. package/build/cjs/components/table/TableBody.cjs.map +1 -1
  256. package/build/cjs/components/table/TableBody.d.cts +2 -3
  257. package/build/cjs/components/table/TableCaption.cjs.map +1 -1
  258. package/build/cjs/components/table/TableCaption.d.cts +2 -5
  259. package/build/cjs/components/table/TableCell.cjs.map +1 -1
  260. package/build/cjs/components/table/TableCell.d.cts +2 -15
  261. package/build/cjs/components/table/TableColumn.cjs.map +1 -1
  262. package/build/cjs/components/table/TableColumn.d.cts +2 -3
  263. package/build/cjs/components/table/TableColumnGroup.cjs.map +1 -1
  264. package/build/cjs/components/table/TableColumnGroup.d.cts +2 -3
  265. package/build/cjs/components/table/TableFooter.cjs.map +1 -1
  266. package/build/cjs/components/table/TableFooter.d.cts +2 -3
  267. package/build/cjs/components/table/TableHead.cjs.map +1 -1
  268. package/build/cjs/components/table/TableHead.d.cts +2 -5
  269. package/build/cjs/components/table/TableHeader.cjs.map +1 -1
  270. package/build/cjs/components/table/TableHeader.d.cts +2 -19
  271. package/build/cjs/components/table/TablePagination.cjs.map +1 -1
  272. package/build/cjs/components/table/TablePagination.d.cts +2 -42
  273. package/build/cjs/components/table/TableRow.cjs.map +1 -1
  274. package/build/cjs/components/table/TableRow.d.cts +2 -13
  275. package/build/cjs/components/table/index.d.cts +1 -16
  276. package/build/cjs/components/table/tableContext.cjs.map +1 -1
  277. package/build/cjs/components/table/tableContext.d.cts +1 -10
  278. package/build/cjs/components/table/tableSectionContext.cjs.map +1 -1
  279. package/build/cjs/components/table/tableSectionContext.d.cts +1 -10
  280. package/build/cjs/components/table/types.cjs +2 -0
  281. package/build/cjs/components/table/types.cjs.map +1 -0
  282. package/build/cjs/components/table/types.d.cts +157 -0
  283. package/build/cjs/components/tabs/NavTab.cjs.map +1 -1
  284. package/build/cjs/components/tabs/NavTab.d.cts +2 -24
  285. package/build/cjs/components/tabs/NavTabs.cjs.map +1 -1
  286. package/build/cjs/components/tabs/NavTabs.d.cts +1 -7
  287. package/build/cjs/components/tabs/Tab.cjs.map +1 -1
  288. package/build/cjs/components/tabs/Tab.d.cts +1 -4
  289. package/build/cjs/components/tabs/TabList.cjs.map +1 -1
  290. package/build/cjs/components/tabs/TabList.d.cts +1 -5
  291. package/build/cjs/components/tabs/TabPanel.cjs.map +1 -1
  292. package/build/cjs/components/tabs/TabPanel.d.cts +1 -4
  293. package/build/cjs/components/tabs/Tabs.cjs.map +1 -1
  294. package/build/cjs/components/tabs/Tabs.d.cts +1 -7
  295. package/build/cjs/components/tabs/index.d.cts +7 -6
  296. package/build/cjs/components/tabs/types.cjs +2 -0
  297. package/build/cjs/components/tabs/types.cjs.map +1 -0
  298. package/build/cjs/components/tabs/types.d.cts +47 -0
  299. package/build/cjs/components/tag/Tag.cjs.map +1 -1
  300. package/build/cjs/components/tag/Tag.d.cts +2 -5
  301. package/build/cjs/components/tag/index.d.cts +2 -1
  302. package/build/cjs/components/tag/types.cjs +2 -0
  303. package/build/cjs/components/tag/types.cjs.map +1 -0
  304. package/build/cjs/components/tag/types.d.cts +5 -0
  305. package/build/cjs/components/text-input/BaseTextArea.cjs.map +1 -1
  306. package/build/cjs/components/text-input/BaseTextArea.d.cts +2 -25
  307. package/build/cjs/components/text-input/BaseTextInput.cjs.map +1 -1
  308. package/build/cjs/components/text-input/BaseTextInput.d.cts +2 -50
  309. package/build/cjs/components/text-input/TextArea.cjs.map +1 -1
  310. package/build/cjs/components/text-input/TextArea.d.cts +1 -4
  311. package/build/cjs/components/text-input/TextInput.cjs.map +1 -1
  312. package/build/cjs/components/text-input/TextInput.d.cts +1 -7
  313. package/build/cjs/components/text-input/index.d.cts +5 -4
  314. package/build/cjs/components/text-input/types.cjs +2 -0
  315. package/build/cjs/components/text-input/types.cjs.map +1 -0
  316. package/build/cjs/components/text-input/types.d.cts +82 -0
  317. package/build/cjs/components/toast/Toast.cjs +1 -1
  318. package/build/cjs/components/toast/Toast.cjs.map +1 -1
  319. package/build/cjs/components/toggle-switch/ToggleSlider.cjs.map +1 -1
  320. package/build/cjs/components/toggle-switch/ToggleSlider.d.cts +1 -9
  321. package/build/cjs/components/toggle-switch/ToggleSwitch.cjs.map +1 -1
  322. package/build/cjs/components/toggle-switch/ToggleSwitch.d.cts +3 -29
  323. package/build/cjs/components/toggle-switch/index.d.cts +3 -2
  324. package/build/cjs/components/toggle-switch/types.cjs +2 -0
  325. package/build/cjs/components/toggle-switch/types.cjs.map +1 -0
  326. package/build/cjs/components/toggle-switch/types.d.cts +26 -0
  327. package/build/cjs/components/tooltip/PopupTip.cjs.map +1 -1
  328. package/build/cjs/components/tooltip/PopupTip.d.cts +2 -12
  329. package/build/cjs/components/tooltip/Tooltip.cjs.map +1 -1
  330. package/build/cjs/components/tooltip/Tooltip.d.cts +2 -30
  331. package/build/cjs/components/tooltip/index.d.cts +3 -2
  332. package/build/cjs/components/tooltip/types.cjs +2 -0
  333. package/build/cjs/components/tooltip/types.cjs.map +1 -0
  334. package/build/cjs/components/tooltip/types.d.cts +41 -0
  335. package/build/cjs/index.cjs +1 -1
  336. package/build/cjs/shared/input-panel/BasePanel.cjs +2 -0
  337. package/build/cjs/shared/input-panel/BasePanel.cjs.map +1 -0
  338. package/build/cjs/tailwind/tailwindPreset.cjs +1 -1
  339. package/build/cjs/tailwind/tailwindPreset.cjs.map +1 -1
  340. package/build/es/components/accordion/Accordion.d.ts +1 -6
  341. package/build/es/components/accordion/Accordion.js.map +1 -1
  342. package/build/es/components/accordion/AccordionItem.d.ts +2 -9
  343. package/build/es/components/accordion/AccordionItem.js.map +1 -1
  344. package/build/es/components/accordion/index.d.ts +3 -2
  345. package/build/es/components/accordion/types.d.ts +13 -0
  346. package/build/es/components/accordion/types.js +2 -0
  347. package/build/es/components/accordion/types.js.map +1 -0
  348. package/build/es/components/autosuggest/Autosuggest.d.ts +1 -45
  349. package/build/es/components/autosuggest/Autosuggest.js.map +1 -1
  350. package/build/es/components/autosuggest/BaseAutosuggest.d.ts +1 -1
  351. package/build/es/components/autosuggest/BaseAutosuggest.js.map +1 -1
  352. package/build/es/components/autosuggest/index.d.ts +1 -1
  353. package/build/es/components/autosuggest/types.d.ts +44 -0
  354. package/build/es/components/autosuggest/types.js +2 -0
  355. package/build/es/components/autosuggest/types.js.map +1 -0
  356. package/build/es/components/breadcrumb/Breadcrumb.d.ts +1 -5
  357. package/build/es/components/breadcrumb/Breadcrumb.js.map +1 -1
  358. package/build/es/components/breadcrumb/BreadcrumbItem.d.ts +1 -9
  359. package/build/es/components/breadcrumb/BreadcrumbItem.js.map +1 -1
  360. package/build/es/components/breadcrumb/index.d.ts +3 -2
  361. package/build/es/components/breadcrumb/types.d.ts +13 -0
  362. package/build/es/components/breadcrumb/types.js +2 -0
  363. package/build/es/components/breadcrumb/types.js.map +1 -0
  364. package/build/es/components/card/NavCard.d.ts +1 -1
  365. package/build/es/components/card/NavCard.js.map +1 -1
  366. package/build/es/components/checkbox/Checkbox.d.ts +2 -16
  367. package/build/es/components/checkbox/Checkbox.js.map +1 -1
  368. package/build/es/components/checkbox/index.d.ts +2 -1
  369. package/build/es/components/checkbox/types.d.ts +16 -0
  370. package/build/es/components/checkbox/types.js +2 -0
  371. package/build/es/components/checkbox/types.js.map +1 -0
  372. package/build/es/components/checkbox-panel/CheckboxPanel.d.ts +3 -0
  373. package/build/es/components/checkbox-panel/CheckboxPanel.js +2 -0
  374. package/build/es/components/checkbox-panel/CheckboxPanel.js.map +1 -0
  375. package/build/es/components/checkbox-panel/index.d.ts +2 -0
  376. package/build/es/components/checkbox-panel/index.js +2 -0
  377. package/build/es/components/checkbox-panel/types.d.ts +6 -0
  378. package/build/es/components/checkbox-panel/types.js +2 -0
  379. package/build/es/components/checkbox-panel/types.js.map +1 -0
  380. package/build/es/components/chip/Chip.d.ts +2 -13
  381. package/build/es/components/chip/Chip.js.map +1 -1
  382. package/build/es/components/chip/index.d.ts +2 -1
  383. package/build/es/components/chip/types.d.ts +13 -0
  384. package/build/es/components/chip/types.js +2 -0
  385. package/build/es/components/chip/types.js.map +1 -0
  386. package/build/es/components/combobox/Combobox.d.ts +2 -38
  387. package/build/es/components/combobox/Combobox.js.map +1 -1
  388. package/build/es/components/combobox/index.d.ts +2 -1
  389. package/build/es/components/combobox/types.d.ts +37 -0
  390. package/build/es/components/combobox/types.js +2 -0
  391. package/build/es/components/combobox/types.js.map +1 -0
  392. package/build/es/components/countdown/Countdown.d.ts +3 -0
  393. package/build/es/components/countdown/Countdown.js.map +1 -0
  394. package/build/es/components/countdown/index.d.ts +2 -0
  395. package/build/es/components/countdown/index.js +2 -0
  396. package/build/es/components/countdown/index.js.map +1 -0
  397. package/build/es/components/{progress-bar/Countdown.d.ts → countdown/types.d.ts} +1 -2
  398. package/build/es/components/countdown/types.js +2 -0
  399. package/build/es/components/countdown/types.js.map +1 -0
  400. package/build/es/components/datepicker/types.d.ts +3 -3
  401. package/build/es/components/description-list/DescriptionList.d.ts +1 -10
  402. package/build/es/components/description-list/DescriptionList.js.map +1 -1
  403. package/build/es/components/description-list/index.d.ts +2 -1
  404. package/build/es/components/description-list/types.d.ts +10 -0
  405. package/build/es/components/description-list/types.js +2 -0
  406. package/build/es/components/description-list/types.js.map +1 -0
  407. package/build/es/components/feedback/Feedback.d.ts +1 -1
  408. package/build/es/components/feedback/Feedback.js.map +1 -1
  409. package/build/es/components/feedback/FeedbackSuccess.d.ts +1 -1
  410. package/build/es/components/feedback/FeedbackSuccess.js.map +1 -1
  411. package/build/es/components/feedback/feedbackContext.d.ts +1 -1
  412. package/build/es/components/feedback/feedbackContext.js.map +1 -1
  413. package/build/es/components/feedback/types.d.ts +12 -4
  414. package/build/es/components/file-input/FileInput.d.ts +1 -1
  415. package/build/es/components/file-input/FileInput.js.map +1 -1
  416. package/build/es/components/flex/Flex.d.ts +1 -14
  417. package/build/es/components/flex/Flex.js.map +1 -1
  418. package/build/es/components/flex/index.d.ts +1 -0
  419. package/build/es/components/flex/types.d.ts +14 -0
  420. package/build/es/components/flex/types.js +2 -0
  421. package/build/es/components/flex/types.js.map +1 -0
  422. package/build/es/components/icon/types.d.ts +2 -1
  423. package/build/es/components/icon-button/IconButton.d.ts +2 -5
  424. package/build/es/components/icon-button/IconButton.js.map +1 -1
  425. package/build/es/components/icon-button/index.d.ts +2 -1
  426. package/build/es/components/icon-button/types.d.ts +5 -0
  427. package/build/es/components/icon-button/types.js +2 -0
  428. package/build/es/components/icon-button/types.js.map +1 -0
  429. package/build/es/components/image/Image.d.ts +1 -11
  430. package/build/es/components/image/Image.js.map +1 -1
  431. package/build/es/components/image/index.d.ts +2 -1
  432. package/build/es/components/image/types.d.ts +12 -0
  433. package/build/es/components/image/types.js +2 -0
  434. package/build/es/components/image/types.js.map +1 -0
  435. package/build/es/components/index.d.ts +4 -1
  436. package/build/es/components/index.js +1 -1
  437. package/build/es/components/input-group/FieldGroup.d.ts +2 -14
  438. package/build/es/components/input-group/FieldGroup.js.map +1 -1
  439. package/build/es/components/input-group/InputGroup.d.ts +11 -33
  440. package/build/es/components/input-group/InputGroup.js.map +1 -1
  441. package/build/es/components/input-group/Label.d.ts +2 -13
  442. package/build/es/components/input-group/Label.js.map +1 -1
  443. package/build/es/components/input-group/SupportLabel.d.ts +2 -60
  444. package/build/es/components/input-group/SupportLabel.js.map +1 -1
  445. package/build/es/components/input-group/index.d.ts +5 -4
  446. package/build/es/components/input-group/types.d.ts +101 -0
  447. package/build/es/components/input-group/types.js +2 -0
  448. package/build/es/components/input-group/types.js.map +1 -0
  449. package/build/es/components/link/Link.d.ts +4 -6
  450. package/build/es/components/link/Link.js.map +1 -1
  451. package/build/es/components/link/index.d.ts +2 -2
  452. package/build/es/components/link/index.js +1 -1
  453. package/build/es/components/link/types.d.ts +4 -0
  454. package/build/es/components/link/types.js +2 -0
  455. package/build/es/components/link/types.js.map +1 -0
  456. package/build/es/components/loader/Loader.d.ts +1 -15
  457. package/build/es/components/loader/Loader.js.map +1 -1
  458. package/build/es/components/loader/index.d.ts +10 -9
  459. package/build/es/components/loader/skeletons/SkeletonAnimation.d.ts +2 -15
  460. package/build/es/components/loader/skeletons/SkeletonAnimation.js.map +1 -1
  461. package/build/es/components/loader/skeletons/SkeletonButton.d.ts +1 -5
  462. package/build/es/components/loader/skeletons/SkeletonButton.js.map +1 -1
  463. package/build/es/components/loader/skeletons/SkeletonCheckboxGroup.d.ts +1 -10
  464. package/build/es/components/loader/skeletons/SkeletonCheckboxGroup.js.map +1 -1
  465. package/build/es/components/loader/skeletons/SkeletonElement.d.ts +2 -7
  466. package/build/es/components/loader/skeletons/SkeletonElement.js.map +1 -1
  467. package/build/es/components/loader/skeletons/SkeletonInput.d.ts +1 -9
  468. package/build/es/components/loader/skeletons/SkeletonInput.js.map +1 -1
  469. package/build/es/components/loader/skeletons/SkeletonLabel.d.ts +1 -6
  470. package/build/es/components/loader/skeletons/SkeletonLabel.js.map +1 -1
  471. package/build/es/components/loader/skeletons/SkeletonRadioButtonGroup.d.ts +1 -10
  472. package/build/es/components/loader/skeletons/SkeletonRadioButtonGroup.js.map +1 -1
  473. package/build/es/components/loader/skeletons/SkeletonTable.d.ts +2 -16
  474. package/build/es/components/loader/skeletons/SkeletonTable.js.map +1 -1
  475. package/build/es/components/loader/skeletons/SkeletonTextArea.d.ts +1 -9
  476. package/build/es/components/loader/skeletons/SkeletonTextArea.js.map +1 -1
  477. package/build/es/components/loader/types.d.ts +82 -0
  478. package/build/es/components/loader/types.js +2 -0
  479. package/build/es/components/loader/types.js.map +1 -0
  480. package/build/es/components/logo/Logo.d.ts +1 -14
  481. package/build/es/components/logo/Logo.js.map +1 -1
  482. package/build/es/components/logo/LogoStamp.d.ts +1 -15
  483. package/build/es/components/logo/LogoStamp.js.map +1 -1
  484. package/build/es/components/logo/index.d.ts +3 -2
  485. package/build/es/components/logo/types.d.ts +28 -0
  486. package/build/es/components/logo/types.js +2 -0
  487. package/build/es/components/logo/types.js.map +1 -0
  488. package/build/es/components/menu/Menu.d.ts +2 -38
  489. package/build/es/components/menu/Menu.js.map +1 -1
  490. package/build/es/components/menu/MenuItem.d.ts +2 -22
  491. package/build/es/components/menu/MenuItem.js.map +1 -1
  492. package/build/es/components/menu/MenuItemCheckbox.d.ts +2 -10
  493. package/build/es/components/menu/MenuItemCheckbox.js.map +1 -1
  494. package/build/es/components/menu/index.d.ts +4 -3
  495. package/build/es/components/menu/types.d.ts +68 -0
  496. package/build/es/components/menu/types.js +2 -0
  497. package/build/es/components/menu/types.js.map +1 -0
  498. package/build/es/components/message/FormErrorMessage.d.ts +1 -12
  499. package/build/es/components/message/FormErrorMessage.js.map +1 -1
  500. package/build/es/components/message/Message.d.ts +2 -15
  501. package/build/es/components/message/Message.js.map +1 -1
  502. package/build/es/components/message/index.d.ts +3 -2
  503. package/build/es/components/message/types.d.ts +26 -0
  504. package/build/es/components/message/types.js +2 -0
  505. package/build/es/components/message/types.js.map +1 -0
  506. package/build/es/components/modal/Modal.d.ts +2 -23
  507. package/build/es/components/modal/Modal.js.map +1 -1
  508. package/build/es/components/modal/index.d.ts +3 -2
  509. package/build/es/components/modal/types.d.ts +42 -0
  510. package/build/es/components/modal/types.js +2 -0
  511. package/build/es/components/modal/types.js.map +1 -0
  512. package/build/es/components/modal/useModal.d.ts +1 -24
  513. package/build/es/components/modal/useModal.js.map +1 -1
  514. package/build/es/components/nav-link/NavLink.d.ts +5 -0
  515. package/build/es/components/nav-link/NavLink.js.map +1 -0
  516. package/build/es/components/nav-link/index.d.ts +2 -0
  517. package/build/es/components/nav-link/index.js +2 -0
  518. package/build/es/components/nav-link/index.js.map +1 -0
  519. package/build/es/components/nav-link/types.d.ts +5 -0
  520. package/build/es/components/nav-link/types.js +2 -0
  521. package/build/es/components/nav-link/types.js.map +1 -0
  522. package/build/es/components/pagination/Pagination.d.ts +1 -15
  523. package/build/es/components/pagination/Pagination.js.map +1 -1
  524. package/build/es/components/pagination/index.d.ts +2 -1
  525. package/build/es/components/pagination/types.d.ts +15 -0
  526. package/build/es/components/pagination/types.js +2 -0
  527. package/build/es/components/pagination/types.js.map +1 -0
  528. package/build/es/components/popover/Popover.d.ts +1 -102
  529. package/build/es/components/popover/Popover.js.map +1 -1
  530. package/build/es/components/popover/index.d.ts +2 -1
  531. package/build/es/components/popover/types.d.ts +102 -0
  532. package/build/es/components/popover/types.js +2 -0
  533. package/build/es/components/popover/types.js.map +1 -0
  534. package/build/es/components/progress-bar/ProgressBar.d.ts +2 -20
  535. package/build/es/components/progress-bar/ProgressBar.js.map +1 -1
  536. package/build/es/components/progress-bar/index.d.ts +2 -2
  537. package/build/es/components/progress-bar/index.js +1 -1
  538. package/build/es/components/progress-bar/types.d.ts +20 -0
  539. package/build/es/components/progress-bar/types.js +2 -0
  540. package/build/es/components/progress-bar/types.js.map +1 -0
  541. package/build/es/components/radio-button/BaseRadioButton.d.ts +2 -9
  542. package/build/es/components/radio-button/BaseRadioButton.js.map +1 -1
  543. package/build/es/components/radio-button/RadioButton.d.ts +2 -14
  544. package/build/es/components/radio-button/RadioButton.js.map +1 -1
  545. package/build/es/components/radio-button/RadioButtonGroup.d.ts +2 -23
  546. package/build/es/components/radio-button/RadioButtonGroup.js.map +1 -1
  547. package/build/es/components/radio-button/index.d.ts +4 -3
  548. package/build/es/components/radio-button/types.d.ts +41 -0
  549. package/build/es/components/radio-button/types.js +2 -0
  550. package/build/es/components/radio-button/types.js.map +1 -0
  551. package/build/es/components/radio-panel/RadioPanel.d.ts +3 -0
  552. package/build/es/components/radio-panel/RadioPanel.js +2 -0
  553. package/build/es/components/radio-panel/RadioPanel.js.map +1 -0
  554. package/build/es/components/radio-panel/RadioPanelGroup.d.ts +3 -0
  555. package/build/es/components/radio-panel/RadioPanelGroup.js.map +1 -0
  556. package/build/es/components/radio-panel/index.d.ts +3 -0
  557. package/build/es/components/radio-panel/index.js +2 -0
  558. package/build/es/components/radio-panel/index.js.map +1 -0
  559. package/build/es/components/{input-panel → radio-panel}/radioPanelContext.js.map +1 -1
  560. package/build/es/components/radio-panel/types.d.ts +9 -0
  561. package/build/es/components/radio-panel/types.js +2 -0
  562. package/build/es/components/radio-panel/types.js.map +1 -0
  563. package/build/es/components/select/NativeSelect.d.ts +2 -18
  564. package/build/es/components/select/NativeSelect.js.map +1 -1
  565. package/build/es/components/select/Select.d.ts +2 -53
  566. package/build/es/components/select/Select.js.map +1 -1
  567. package/build/es/components/select/index.d.ts +3 -2
  568. package/build/es/components/select/types.d.ts +67 -0
  569. package/build/es/components/select/types.js +2 -0
  570. package/build/es/components/select/types.js.map +1 -0
  571. package/build/es/components/summary-table/SummaryTable.d.ts +2 -8
  572. package/build/es/components/summary-table/SummaryTable.js.map +1 -1
  573. package/build/es/components/summary-table/SummaryTableRow.d.ts +2 -6
  574. package/build/es/components/summary-table/SummaryTableRow.js.map +1 -1
  575. package/build/es/components/summary-table/index.d.ts +3 -2
  576. package/build/es/components/summary-table/types.d.ts +13 -0
  577. package/build/es/components/summary-table/types.js +2 -0
  578. package/build/es/components/summary-table/types.js.map +1 -0
  579. package/build/es/components/system-message/SystemMessage.d.ts +1 -15
  580. package/build/es/components/system-message/SystemMessage.js.map +1 -1
  581. package/build/es/components/system-message/index.d.ts +2 -1
  582. package/build/es/components/system-message/types.d.ts +15 -0
  583. package/build/es/components/system-message/types.js +2 -0
  584. package/build/es/components/system-message/types.js.map +1 -0
  585. package/build/es/components/table/DataTable.d.ts +2 -16
  586. package/build/es/components/table/DataTable.js.map +1 -1
  587. package/build/es/components/table/ExpandableTableRow.d.ts +1 -14
  588. package/build/es/components/table/ExpandableTableRow.js.map +1 -1
  589. package/build/es/components/table/ExpandableTableRowController.d.ts +1 -7
  590. package/build/es/components/table/ExpandableTableRowController.js.map +1 -1
  591. package/build/es/components/table/Table.d.ts +2 -9
  592. package/build/es/components/table/Table.js.map +1 -1
  593. package/build/es/components/table/TableBody.d.ts +2 -3
  594. package/build/es/components/table/TableBody.js.map +1 -1
  595. package/build/es/components/table/TableCaption.d.ts +2 -5
  596. package/build/es/components/table/TableCaption.js.map +1 -1
  597. package/build/es/components/table/TableCell.d.ts +2 -15
  598. package/build/es/components/table/TableCell.js.map +1 -1
  599. package/build/es/components/table/TableColumn.d.ts +2 -3
  600. package/build/es/components/table/TableColumn.js.map +1 -1
  601. package/build/es/components/table/TableColumnGroup.d.ts +2 -3
  602. package/build/es/components/table/TableColumnGroup.js.map +1 -1
  603. package/build/es/components/table/TableFooter.d.ts +2 -3
  604. package/build/es/components/table/TableFooter.js.map +1 -1
  605. package/build/es/components/table/TableHead.d.ts +2 -5
  606. package/build/es/components/table/TableHead.js.map +1 -1
  607. package/build/es/components/table/TableHeader.d.ts +2 -19
  608. package/build/es/components/table/TableHeader.js.map +1 -1
  609. package/build/es/components/table/TablePagination.d.ts +2 -42
  610. package/build/es/components/table/TablePagination.js.map +1 -1
  611. package/build/es/components/table/TableRow.d.ts +2 -13
  612. package/build/es/components/table/TableRow.js.map +1 -1
  613. package/build/es/components/table/index.d.ts +1 -16
  614. package/build/es/components/table/tableContext.d.ts +1 -10
  615. package/build/es/components/table/tableContext.js.map +1 -1
  616. package/build/es/components/table/tableSectionContext.d.ts +1 -10
  617. package/build/es/components/table/tableSectionContext.js.map +1 -1
  618. package/build/es/components/table/types.d.ts +157 -0
  619. package/build/es/components/table/types.js +2 -0
  620. package/build/es/components/table/types.js.map +1 -0
  621. package/build/es/components/tabs/NavTab.d.ts +2 -24
  622. package/build/es/components/tabs/NavTab.js.map +1 -1
  623. package/build/es/components/tabs/NavTabs.d.ts +1 -7
  624. package/build/es/components/tabs/NavTabs.js.map +1 -1
  625. package/build/es/components/tabs/Tab.d.ts +1 -4
  626. package/build/es/components/tabs/Tab.js.map +1 -1
  627. package/build/es/components/tabs/TabList.d.ts +1 -5
  628. package/build/es/components/tabs/TabList.js.map +1 -1
  629. package/build/es/components/tabs/TabPanel.d.ts +1 -4
  630. package/build/es/components/tabs/TabPanel.js.map +1 -1
  631. package/build/es/components/tabs/Tabs.d.ts +1 -7
  632. package/build/es/components/tabs/Tabs.js.map +1 -1
  633. package/build/es/components/tabs/index.d.ts +7 -6
  634. package/build/es/components/tabs/types.d.ts +47 -0
  635. package/build/es/components/tabs/types.js +2 -0
  636. package/build/es/components/tabs/types.js.map +1 -0
  637. package/build/es/components/tag/Tag.d.ts +2 -5
  638. package/build/es/components/tag/Tag.js.map +1 -1
  639. package/build/es/components/tag/index.d.ts +2 -1
  640. package/build/es/components/tag/types.d.ts +5 -0
  641. package/build/es/components/tag/types.js +2 -0
  642. package/build/es/components/tag/types.js.map +1 -0
  643. package/build/es/components/text-input/BaseTextArea.d.ts +2 -25
  644. package/build/es/components/text-input/BaseTextArea.js.map +1 -1
  645. package/build/es/components/text-input/BaseTextInput.d.ts +2 -50
  646. package/build/es/components/text-input/BaseTextInput.js.map +1 -1
  647. package/build/es/components/text-input/TextArea.d.ts +1 -4
  648. package/build/es/components/text-input/TextArea.js.map +1 -1
  649. package/build/es/components/text-input/TextInput.d.ts +1 -7
  650. package/build/es/components/text-input/TextInput.js.map +1 -1
  651. package/build/es/components/text-input/index.d.ts +5 -4
  652. package/build/es/components/text-input/types.d.ts +82 -0
  653. package/build/es/components/text-input/types.js +2 -0
  654. package/build/es/components/text-input/types.js.map +1 -0
  655. package/build/es/components/toast/Toast.js +1 -1
  656. package/build/es/components/toast/Toast.js.map +1 -1
  657. package/build/es/components/toggle-switch/ToggleSlider.d.ts +1 -9
  658. package/build/es/components/toggle-switch/ToggleSlider.js.map +1 -1
  659. package/build/es/components/toggle-switch/ToggleSwitch.d.ts +3 -29
  660. package/build/es/components/toggle-switch/ToggleSwitch.js.map +1 -1
  661. package/build/es/components/toggle-switch/index.d.ts +3 -2
  662. package/build/es/components/toggle-switch/types.d.ts +26 -0
  663. package/build/es/components/toggle-switch/types.js +2 -0
  664. package/build/es/components/toggle-switch/types.js.map +1 -0
  665. package/build/es/components/tooltip/PopupTip.d.ts +2 -12
  666. package/build/es/components/tooltip/PopupTip.js.map +1 -1
  667. package/build/es/components/tooltip/Tooltip.d.ts +2 -30
  668. package/build/es/components/tooltip/Tooltip.js.map +1 -1
  669. package/build/es/components/tooltip/index.d.ts +3 -2
  670. package/build/es/components/tooltip/types.d.ts +41 -0
  671. package/build/es/components/tooltip/types.js +2 -0
  672. package/build/es/components/tooltip/types.js.map +1 -0
  673. package/build/es/index.js +1 -1
  674. package/build/es/shared/input-panel/BasePanel.js +2 -0
  675. package/build/es/shared/input-panel/BasePanel.js.map +1 -0
  676. package/build/es/tailwind/tailwindPreset.js +1 -1
  677. package/build/es/tailwind/tailwindPreset.js.map +1 -1
  678. package/package.json +46 -13
  679. package/styles/components/button/button.css +2 -2
  680. package/styles/components/button/button.min.css +1 -1
  681. package/styles/components/checkbox/checkbox.css +4 -4
  682. package/styles/components/checkbox/checkbox.min.css +1 -1
  683. package/styles/components/{input-panel → checkbox-panel}/_index.scss +0 -1
  684. package/styles/components/{input-panel → checkbox-panel}/checkbox-panel.css +2 -2
  685. package/styles/components/{input-panel → checkbox-panel}/checkbox-panel.min.css +1 -1
  686. package/styles/components/{input-panel → checkbox-panel}/checkbox-panel.scss +2 -2
  687. package/styles/components/countdown/_index.scss +1 -0
  688. package/styles/components/countdown/countdown.css +40 -0
  689. package/styles/components/countdown/countdown.min.css +1 -0
  690. package/styles/components/countdown/countdown.scss +23 -0
  691. package/styles/components/feedback/feedback.css +2 -2
  692. package/styles/components/feedback/feedback.min.css +1 -1
  693. package/styles/components/input-group/input-group.css +2 -2
  694. package/styles/components/input-group/input-group.min.css +1 -1
  695. package/styles/components/link/_index.scss +0 -1
  696. package/styles/components/loader/loader.css +6 -6
  697. package/styles/components/loader/loader.min.css +1 -1
  698. package/styles/components/loader/skeleton-loader.css +5 -5
  699. package/styles/components/loader/skeleton-loader.min.css +1 -1
  700. package/styles/components/message/message.css +2 -2
  701. package/styles/components/message/message.min.css +1 -1
  702. package/styles/components/nav-link/_index.scss +1 -0
  703. package/styles/components/progress-bar/progress-bar.css +5 -15
  704. package/styles/components/progress-bar/progress-bar.min.css +1 -1
  705. package/styles/components/progress-bar/progress-bar.scss +3 -34
  706. package/styles/components/radio-button/radio-button.css +2 -2
  707. package/styles/components/radio-button/radio-button.min.css +1 -1
  708. package/styles/components/radio-panel/_index.scss +1 -0
  709. package/styles/components/radio-panel/development/styles.css +25 -0
  710. package/styles/components/radio-panel/development/styles.min.css +1 -0
  711. package/styles/components/radio-panel/development/styles.scss +27 -0
  712. package/styles/components/{input-panel → radio-panel}/radio-panel.css +2 -2
  713. package/styles/components/{input-panel → radio-panel}/radio-panel.min.css +1 -1
  714. package/styles/components/{input-panel → radio-panel}/radio-panel.scss +1 -1
  715. package/styles/components/system-message/system-message.css +2 -2
  716. package/styles/components/system-message/system-message.min.css +1 -1
  717. package/styles/components/toast/toast.css +4 -4
  718. package/styles/components/toast/toast.min.css +1 -1
  719. package/styles/shared/track/track.css +4 -0
  720. package/styles/shared/track/track.min.css +0 -0
  721. package/styles/shared/track/track.scss +27 -0
  722. package/styles/styles.css +334 -308
  723. package/styles/styles.min.css +1 -1
  724. package/styles/styles.scss +4 -1
  725. package/build/cjs/components/input-panel/BasePanel.cjs +0 -2
  726. package/build/cjs/components/input-panel/BasePanel.cjs.map +0 -1
  727. package/build/cjs/components/input-panel/CheckboxPanel.cjs +0 -2
  728. package/build/cjs/components/input-panel/CheckboxPanel.cjs.map +0 -1
  729. package/build/cjs/components/input-panel/CheckboxPanel.d.cts +0 -7
  730. package/build/cjs/components/input-panel/RadioPanel.cjs +0 -2
  731. package/build/cjs/components/input-panel/RadioPanel.cjs.map +0 -1
  732. package/build/cjs/components/input-panel/RadioPanel.d.cts +0 -8
  733. package/build/cjs/components/input-panel/RadioPanelGroup.cjs.map +0 -1
  734. package/build/cjs/components/input-panel/RadioPanelGroup.d.cts +0 -4
  735. package/build/cjs/components/input-panel/development/checkbox-panel/ControlledExample.d.cts +0 -4
  736. package/build/cjs/components/input-panel/development/checkbox-panel/UncontrolledExample.d.cts +0 -4
  737. package/build/cjs/components/input-panel/development/radio-panel/ControlledExample.d.cts +0 -4
  738. package/build/cjs/components/input-panel/development/radio-panel/UncontrolledExample.d.cts +0 -4
  739. package/build/cjs/components/input-panel/index.cjs +0 -2
  740. package/build/cjs/components/input-panel/index.d.cts +0 -3
  741. package/build/cjs/components/link/NavLink.cjs.map +0 -1
  742. package/build/cjs/components/link/NavLink.d.cts +0 -8
  743. package/build/cjs/components/progress-bar/Countdown.cjs.map +0 -1
  744. package/build/es/components/input-panel/BasePanel.js +0 -2
  745. package/build/es/components/input-panel/BasePanel.js.map +0 -1
  746. package/build/es/components/input-panel/CheckboxPanel.d.ts +0 -7
  747. package/build/es/components/input-panel/CheckboxPanel.js +0 -2
  748. package/build/es/components/input-panel/CheckboxPanel.js.map +0 -1
  749. package/build/es/components/input-panel/RadioPanel.d.ts +0 -8
  750. package/build/es/components/input-panel/RadioPanel.js +0 -2
  751. package/build/es/components/input-panel/RadioPanel.js.map +0 -1
  752. package/build/es/components/input-panel/RadioPanelGroup.d.ts +0 -4
  753. package/build/es/components/input-panel/RadioPanelGroup.js.map +0 -1
  754. package/build/es/components/input-panel/development/checkbox-panel/ControlledExample.d.ts +0 -4
  755. package/build/es/components/input-panel/development/checkbox-panel/UncontrolledExample.d.ts +0 -4
  756. package/build/es/components/input-panel/development/radio-panel/ControlledExample.d.ts +0 -4
  757. package/build/es/components/input-panel/development/radio-panel/UncontrolledExample.d.ts +0 -4
  758. package/build/es/components/input-panel/index.d.ts +0 -3
  759. package/build/es/components/input-panel/index.js +0 -2
  760. package/build/es/components/link/NavLink.d.ts +0 -8
  761. package/build/es/components/link/NavLink.js.map +0 -1
  762. package/build/es/components/progress-bar/Countdown.js.map +0 -1
  763. /package/build/cjs/components/{input-panel → checkbox-panel}/index.cjs.map +0 -0
  764. /package/build/cjs/components/{progress-bar → countdown}/Countdown.cjs +0 -0
  765. /package/build/cjs/components/{link → nav-link}/NavLink.cjs +0 -0
  766. /package/build/cjs/components/{input-panel → radio-panel}/RadioPanelGroup.cjs +0 -0
  767. /package/build/cjs/components/{input-panel → radio-panel}/radioPanelContext.cjs +0 -0
  768. /package/build/cjs/components/{input-panel → radio-panel}/radioPanelContext.d.cts +0 -0
  769. /package/build/cjs/{components → shared}/input-panel/BasePanel.d.cts +0 -0
  770. /package/build/es/components/{input-panel → checkbox-panel}/index.js.map +0 -0
  771. /package/build/es/components/{progress-bar → countdown}/Countdown.js +0 -0
  772. /package/build/es/components/{link → nav-link}/NavLink.js +0 -0
  773. /package/build/es/components/{input-panel → radio-panel}/RadioPanelGroup.js +0 -0
  774. /package/build/es/components/{input-panel → radio-panel}/radioPanelContext.d.ts +0 -0
  775. /package/build/es/components/{input-panel → radio-panel}/radioPanelContext.js +0 -0
  776. /package/build/es/{components → shared}/input-panel/BasePanel.d.ts +0 -0
  777. /package/styles/components/{input-panel → checkbox-panel}/development/styles.css +0 -0
  778. /package/styles/components/{input-panel → checkbox-panel}/development/styles.min.css +0 -0
  779. /package/styles/components/{input-panel → checkbox-panel}/development/styles.scss +0 -0
  780. /package/styles/components/{link → nav-link}/nav-link.css +0 -0
  781. /package/styles/components/{link → nav-link}/nav-link.min.css +0 -0
  782. /package/styles/components/{link → nav-link}/nav-link.scss +0 -0
  783. /package/styles/{components → shared}/input-panel/shared.css +0 -0
  784. /package/styles/{components → shared}/input-panel/shared.min.css +0 -0
  785. /package/styles/{components → shared}/input-panel/shared.scss +0 -0
@@ -0,0 +1,3 @@
1
+ import { FC } from 'react';
2
+ import { RadioPanelGroupProps } from './types.cjs';
3
+ export declare const RadioPanelGroup: FC<RadioPanelGroupProps>;
@@ -0,0 +1,2 @@
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const e=require("./RadioPanel.cjs"),o=require("./RadioPanelGroup.cjs");exports.RadioPanel=e.RadioPanel,exports.RadioPanelGroup=o.RadioPanelGroup;
2
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ export { RadioPanel } from './RadioPanel.cjs';
2
+ export { RadioPanelGroup } from './RadioPanelGroup.cjs';
3
+ export type { RadioPanelProps, RadioPanelGroupProps } from './types.cjs';
@@ -1 +1 @@
1
- {"version":3,"file":"radioPanelContext.cjs","sources":["../../../../src/components/input-panel/radioPanelContext.tsx"],"sourcesContent":["import { createContext } from \"react\";\n\ntype Context = {\n checkedValue?: string;\n onValueChange?: (value: string) => void;\n};\n\nexport const context = createContext<Context>({});\n"],"names":["context","createContext"],"mappings":"sFAOaA,mBAAiCC,cAAA,CAAE"}
1
+ {"version":3,"file":"radioPanelContext.cjs","sources":["../../../../src/components/radio-panel/radioPanelContext.tsx"],"sourcesContent":["import { createContext } from \"react\";\n\ntype Context = {\n checkedValue?: string;\n onValueChange?: (value: string) => void;\n};\n\nexport const context = createContext<Context>({});\n"],"names":["context","createContext"],"mappings":"sFAOaA,mBAAiCC,cAAA,CAAE"}
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,9 @@
1
+ import { ComponentPropsWithRef } from 'react';
2
+ import { FieldGroupProps } from '../input-group/types.cjs';
3
+ export type RadioPanelProps = Omit<ComponentPropsWithRef<"input">, "type" | "aria-invalid"> & {
4
+ value: string;
5
+ label: string;
6
+ extraLabel?: React.ReactNode;
7
+ alwaysOpen?: boolean;
8
+ };
9
+ export type RadioPanelGroupProps = FieldGroupProps & {};
@@ -1 +1 @@
1
- {"version":3,"file":"NativeSelect.cjs","sources":["../../../../src/components/select/NativeSelect.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef, SelectHTMLAttributes } from \"react\";\nimport { getValuePair, ValuePair } from \"../../utilities/valuePair.js\";\nimport { ArrowVerticalAnimated } from \"../icon/icons/animated/ArrowVerticalAnimated.js\";\nimport { InputGroup, InputGroupProps } from \"../input-group/InputGroup.js\";\n\nexport interface NativeSelectProps\n extends Omit<InputGroupProps, \"children\">,\n SelectHTMLAttributes<HTMLSelectElement> {\n /**\n * Merk som ugyldig uten å sende inn en errorLabel.\n * NB! Brukes kun i tilfeller der valideringsfeil dukker opp andre steder, for eksempel i en FieldGroup.\n */\n invalid?: boolean;\n /**\n * Setter inn et placeholderelement som vises når ingenting er valgt i nedtrekkslisten.\n * @default \"Velg\"\n */\n placeholder?: string;\n items: Array<string | ValuePair>;\n selectClassName?: string;\n width?: string;\n}\n\nexport const NativeSelect = forwardRef<HTMLSelectElement, NativeSelectProps>(\n (props, ref) => {\n const {\n label,\n className,\n density,\n errorLabel,\n helpLabel,\n inline,\n invalid,\n items,\n labelProps,\n placeholder = \"Velg\",\n selectClassName,\n supportLabelProps,\n tooltip,\n value,\n width,\n ...rest\n } = props;\n\n const inputGroupProps = {\n label,\n density,\n errorLabel,\n helpLabel,\n labelProps,\n inline,\n supportLabelProps,\n tooltip,\n };\n\n return (\n <InputGroup\n {...inputGroupProps}\n data-testid=\"jkl-select\"\n className={clsx(\"jkl-select\", className, {\n \"jkl-select--inline\": inline,\n \"jkl-select--invalid\": !!errorLabel || invalid,\n })}\n render={(inputProps) => (\n <div\n className=\"jkl-select__outer-wrapper\"\n style={{ width }}\n >\n <select\n ref={ref}\n className={clsx(\n \"jkl-select__button\",\n selectClassName,\n {\n \"jkl-select__button--active-value\": !!value,\n },\n )}\n defaultValue={value ? undefined : \"\"}\n value={value}\n {...inputProps}\n {...rest}\n >\n {placeholder && !value && (\n <option disabled value=\"\">\n {placeholder}\n </option>\n )}\n {items.map(getValuePair).map((item) => (\n <option\n data-testid=\"jkl-select__option\"\n className=\"jkl-select__option\"\n key={item.value}\n value={item.value}\n >\n {item.label}\n </option>\n ))}\n </select>\n <ArrowVerticalAnimated\n variant=\"medium\"\n pointingDown\n className=\"jkl-select__arrow\"\n />\n </div>\n )}\n />\n );\n },\n);\n\nNativeSelect.displayName = \"NativeSelect\";\n"],"names":["NativeSelect","forwardRef","props","ref","label","className","density","errorLabel","helpLabel","inline","invalid","items","labelProps","placeholder","selectClassName","supportLabelProps","tooltip","value","width","rest","inputGroupProps","jsx","InputGroup","clsx","render","inputProps","jsxs","style","children","defaultValue","disabled","map","getValuePair","item","ArrowVerticalAnimated","variant","pointingDown","displayName"],"mappings":"oUAwBaA,EAAeC,EAAAA,YACxB,CAACC,EAAOC,KACE,MACFC,MAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,WAAAA,EACAC,UAAAA,EACAC,OAAAA,EACAC,QAAAA,EACAC,MAAAA,EACAC,WAAAA,EACAC,YAAAA,EAAc,OACdC,gBAAAA,EACAC,kBAAAA,EACAC,QAAAA,EACAC,MAAAA,EACAC,MAAAA,KACGC,GACHjB,EAEEkB,EAAkB,CACpBhB,MAAAA,EACAE,QAAAA,EACAC,WAAAA,EACAC,UAAAA,EACAI,WAAAA,EACAH,OAAAA,EACAM,kBAAAA,EACAC,QAAAA,GAIA,OAAAK,EAAAA,IAACC,EAAAA,WAAA,IACOF,EACJ,cAAY,aACZf,UAAWkB,EAAAA,KAAK,aAAclB,EAAW,CACrC,qBAAsBI,EACtB,wBAAyBF,GAAcG,IAE3Cc,OAASC,GACLC,EAAAA,KAAC,MAAA,CACGrB,UAAU,4BACVsB,MAAO,CAAET,MAAAA,GAETU,SAAA,CAAAF,EAAAA,KAAC,SAAA,CACGvB,IAAAA,EACAE,UAAWkB,EAAAA,KACP,qBACAT,EACA,CACI,qCAAsCG,IAG9CY,aAAcZ,OAAQ,EAAY,GAClCA,MAAAA,KACIQ,KACAN,EAEHS,SAAA,CAAef,IAACI,GACZI,EAAAA,IAAA,SAAA,CAAOS,UAAQ,EAACb,MAAM,GAClBW,SACLf,IAEHF,EAAMoB,IAAIC,EAAYA,cAAED,KAAKE,GAC1BZ,EAAAA,IAAC,SAAA,CACG,cAAY,qBACZhB,UAAU,qBAEVY,MAAOgB,EAAKhB,MAEXW,SAAKK,EAAA7B,OAHD6B,EAAKhB,YAOtBI,EAAAA,IAACa,EAAAA,sBAAA,CACGC,QAAQ,SACRC,cAAY,EACZ/B,UAAU,0BAElB,IAOpBL,EAAaqC,YAAc"}
1
+ {"version":3,"file":"NativeSelect.cjs","sources":["../../../../src/components/select/NativeSelect.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { forwardRef } from \"react\";\nimport { getValuePair } from \"../../utilities/valuePair.js\";\nimport { ArrowVerticalAnimated } from \"../icon/icons/animated/ArrowVerticalAnimated.js\";\nimport { InputGroup } from \"../input-group/InputGroup.js\";\nimport { NativeSelectProps } from \"./types.js\";\n\nexport const NativeSelect = forwardRef<HTMLSelectElement, NativeSelectProps>(\n (props, ref) => {\n const {\n label,\n className,\n density,\n errorLabel,\n helpLabel,\n inline,\n invalid,\n items,\n labelProps,\n placeholder = \"Velg\",\n selectClassName,\n supportLabelProps,\n tooltip,\n value,\n width,\n ...rest\n } = props;\n\n const inputGroupProps = {\n label,\n density,\n errorLabel,\n helpLabel,\n labelProps,\n inline,\n supportLabelProps,\n tooltip,\n };\n\n return (\n <InputGroup\n {...inputGroupProps}\n data-testid=\"jkl-select\"\n className={clsx(\"jkl-select\", className, {\n \"jkl-select--inline\": inline,\n \"jkl-select--invalid\": !!errorLabel || invalid,\n })}\n render={(inputProps) => (\n <div\n className=\"jkl-select__outer-wrapper\"\n style={{ width }}\n >\n <select\n ref={ref}\n className={clsx(\n \"jkl-select__button\",\n selectClassName,\n {\n \"jkl-select__button--active-value\": !!value,\n },\n )}\n defaultValue={value ? undefined : \"\"}\n value={value}\n {...inputProps}\n {...rest}\n >\n {placeholder && !value && (\n <option disabled value=\"\">\n {placeholder}\n </option>\n )}\n {items.map(getValuePair).map((item) => (\n <option\n data-testid=\"jkl-select__option\"\n className=\"jkl-select__option\"\n key={item.value}\n value={item.value}\n >\n {item.label}\n </option>\n ))}\n </select>\n <ArrowVerticalAnimated\n variant=\"medium\"\n pointingDown\n className=\"jkl-select__arrow\"\n />\n </div>\n )}\n />\n );\n },\n);\n\nNativeSelect.displayName = \"NativeSelect\";\n"],"names":["NativeSelect","forwardRef","props","ref","label","className","density","errorLabel","helpLabel","inline","invalid","items","labelProps","placeholder","selectClassName","supportLabelProps","tooltip","value","width","rest","inputGroupProps","jsx","InputGroup","clsx","render","inputProps","jsxs","style","children","defaultValue","disabled","map","getValuePair","item","ArrowVerticalAnimated","variant","pointingDown","displayName"],"mappings":"oUAOaA,EAAeC,EAAAA,YACxB,CAACC,EAAOC,KACE,MACFC,MAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,WAAAA,EACAC,UAAAA,EACAC,OAAAA,EACAC,QAAAA,EACAC,MAAAA,EACAC,WAAAA,EACAC,YAAAA,EAAc,OACdC,gBAAAA,EACAC,kBAAAA,EACAC,QAAAA,EACAC,MAAAA,EACAC,MAAAA,KACGC,GACHjB,EAEEkB,EAAkB,CACpBhB,MAAAA,EACAE,QAAAA,EACAC,WAAAA,EACAC,UAAAA,EACAI,WAAAA,EACAH,OAAAA,EACAM,kBAAAA,EACAC,QAAAA,GAIA,OAAAK,EAAAA,IAACC,EAAAA,WAAA,IACOF,EACJ,cAAY,aACZf,UAAWkB,EAAAA,KAAK,aAAclB,EAAW,CACrC,qBAAsBI,EACtB,wBAAyBF,GAAcG,IAE3Cc,OAASC,GACLC,EAAAA,KAAC,MAAA,CACGrB,UAAU,4BACVsB,MAAO,CAAET,MAAAA,GAETU,SAAA,CAAAF,EAAAA,KAAC,SAAA,CACGvB,IAAAA,EACAE,UAAWkB,EAAAA,KACP,qBACAT,EACA,CACI,qCAAsCG,IAG9CY,aAAcZ,OAAQ,EAAY,GAClCA,MAAAA,KACIQ,KACAN,EAEHS,SAAA,CAAef,IAACI,GACZI,EAAAA,IAAA,SAAA,CAAOS,UAAQ,EAACb,MAAM,GAClBW,SACLf,IAEHF,EAAMoB,IAAIC,EAAYA,cAAED,KAAKE,GAC1BZ,EAAAA,IAAC,SAAA,CACG,cAAY,qBACZhB,UAAU,qBAEVY,MAAOgB,EAAKhB,MAEXW,SAAKK,EAAA7B,OAHD6B,EAAKhB,YAOtBI,EAAAA,IAACa,EAAAA,sBAAA,CACGC,QAAQ,SACRC,cAAY,EACZ/B,UAAU,0BAElB,IAOpBL,EAAaqC,YAAc"}
@@ -1,19 +1,3 @@
1
- import { default as React, SelectHTMLAttributes } from 'react';
2
- import { ValuePair } from '../../utilities/valuePair.cjs';
3
- import { InputGroupProps } from '../input-group/InputGroup.cjs';
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
- }
1
+ import { default as React } from 'react';
2
+ import { NativeSelectProps } from './types.cjs';
19
3
  export declare const NativeSelect: React.ForwardRefExoticComponent<NativeSelectProps & React.RefAttributes<HTMLSelectElement>>;
@@ -1 +1 @@
1
- {"version":3,"file":"Select.cjs","sources":["../../../../src/components/select/Select.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, {\n ChangeEvent,\n CSSProperties,\n FocusEvent,\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { DataTestAutoId, Density } from \"../../core/types.js\";\nimport { useAnimatedHeight } from \"../../hooks/useAnimatedHeight/useAnimatedHeight.js\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport { useListNavigation } from \"../../hooks/useListNavigation/useListNavigation.js\";\nimport { usePreviousValue } from \"../../hooks/usePreviousValue/usePreviousValue.js\";\nimport { getValuePair, ValuePair } from \"../../utilities/valuePair.js\";\nimport { ArrowVerticalAnimated } from \"../icon/icons/animated/ArrowVerticalAnimated.js\";\nimport { InputGroup, InputGroupProps } from \"../input-group/InputGroup.js\";\nimport { LabelProps } from \"../input-group/Label.js\";\nimport type { PopupTipProps } from \"../tooltip/PopupTip.js\";\nimport { focusSelected, toLower } from \"./select-utils.js\";\n\nexport interface SelectPartialChangeEvent\n extends Partial<Omit<ChangeEvent<HTMLSelectElement>, \"target\">> {\n /** Kreves av react-hook-form, det skjer ulike ting avhengig av om det er blur eller change */\n type: \"change\" | \"blur\";\n target: {\n /** Kreves av react-hook-form for å vite hvilket skjemafelt som ble endret */\n name: string;\n value: string;\n };\n}\n\nexport type SelectChangeEventHandler = (\n event: SelectPartialChangeEvent,\n) => void;\n\ninterface Option extends ValuePair {\n visible: boolean;\n}\n\nexport interface SelectProps\n extends Omit<InputGroupProps, \"children\">,\n DataTestAutoId {\n id?: string;\n name: string;\n label: string;\n labelProps?: Omit<\n LabelProps,\n \"children\" | \"density\" | \"htmlFor\" | \"standAlone\"\n >;\n items: Array<string | ValuePair>;\n /**\n * @default false\n */\n inline?: boolean;\n /**\n * @default \"Velg\"\n */\n defaultPrompt?: string;\n className?: string;\n value?: string;\n helpLabel?: string;\n errorLabel?: string;\n /**\n * @default false\n */\n searchable?:\n | boolean\n | ((searchValue: string, searchItem: string | ValuePair) => boolean);\n density?: Density;\n width?: string;\n onChange?: SelectChangeEventHandler;\n onBlur?: SelectChangeEventHandler;\n onFocus?: SelectChangeEventHandler;\n /**\n * Merk som ugyldig uten å sende inn en errorLabel.\n * NB! Brukes kun i tilfeller der valideringsfeil dukker opp andre steder, for eksempel i en FieldGroup.\n */\n invalid?: boolean;\n /**\n * Hvor mange valg skal vises i listen før den begynner å scrolle.\n * @default 5\n */\n maxShownOptions?: number;\n}\n\nconst noop = () => {\n return;\n};\n\nexport const Select = forwardRef<HTMLSelectElement, SelectProps>(\n (props, forwardedSelectRef) => {\n const {\n id,\n name,\n items,\n value,\n label,\n labelProps,\n onChange,\n onBlur,\n onFocus,\n className,\n helpLabel,\n errorLabel,\n invalid,\n searchable = false,\n inline = false,\n defaultPrompt = \"Velg\",\n density,\n width,\n maxShownOptions = 5,\n style,\n tooltip,\n ...rest\n } = props;\n\n const listId = useId(id || \"jkl-select\", { generateSuffix: !id });\n const labelId = `${listId}_label`;\n const buttonId = `${listId}_button`;\n const searchInputId = `${listId}_search-input`;\n\n const [dropdownIsShown, setShown] = useState(false);\n const toggleListVisibility = useCallback(() => {\n setShown((previousValue) => !previousValue);\n }, []);\n\n /// Søk\n\n const isSearchable = Boolean(searchable);\n const showSearchInputField = isSearchable && dropdownIsShown;\n const [searchValue, setSearchValue] = useState(\"\");\n const searchFn = useCallback(\n (item: ValuePair) => {\n if (\n item.label.toLowerCase().includes(searchValue.toLowerCase())\n ) {\n return true;\n }\n\n if (typeof searchable === \"function\") {\n return searchable(searchValue, item);\n }\n\n return false;\n },\n [searchable, searchValue],\n );\n const visibleItems: Option[] = useMemo(\n () =>\n items.map(getValuePair).map((item) => {\n const visible =\n !isSearchable || searchValue === \"\" || searchFn(item);\n return { ...item, visible };\n }),\n [items, isSearchable, searchValue, searchFn],\n );\n const valueIsInItems: boolean = useMemo(() => {\n if (typeof value === \"undefined\") {\n return false;\n }\n return items.some((item) =>\n typeof item === \"string\"\n ? item === value\n : item.value === value,\n );\n }, [value, items]);\n\n /// Valg av <option>\n\n const [selectedValue, setSelectedValue] = useState<string>(\n valueIsInItems && value !== undefined ? value : \"\",\n );\n const hasSelectedValue = selectedValue !== \"\";\n const selectedValueLabel = useMemo(\n () =>\n visibleItems.find((item) => item.value === selectedValue)\n ?.label || defaultPrompt,\n [visibleItems, selectedValue, defaultPrompt],\n );\n\n const selectRef = useRef<HTMLSelectElement | null>(null);\n // Hjelpefunksjon som gjør det enklere å forwarde refen og å bruke den selv internt\n const unifiedSelectRef = useCallback(\n (instance: HTMLSelectElement | null) => {\n selectRef.current = instance;\n if (forwardedSelectRef) {\n if (typeof forwardedSelectRef === \"function\") {\n forwardedSelectRef(instance);\n } else {\n forwardedSelectRef.current = instance;\n }\n }\n if (instance) {\n setSelectedValue(instance.value);\n }\n },\n [selectRef, forwardedSelectRef],\n );\n\n const previousValue = usePreviousValue(value);\n useEffect(() => {\n if (value === previousValue) {\n return;\n }\n if (typeof value === \"undefined\" || !valueIsInItems) {\n setSelectedValue(\"\");\n } else {\n setSelectedValue(value);\n }\n }, [setSelectedValue, value, previousValue, valueIsInItems]);\n\n const selectOption = useCallback(\n (item: Option) => {\n const nextValue = item.value;\n setSearchValue(\"\");\n setSelectedValue(nextValue);\n toggleListVisibility();\n buttonRef.current?.focus();\n },\n [setSearchValue, setSelectedValue, toggleListVisibility],\n );\n\n // La komponenten rendre <select> med den valgte verdien før onChange trigges, slik at\n // react-hook-form@>7.41.1 behandler feltet som at det har en verdi.\n const previousSelectedValue = usePreviousValue(selectedValue);\n useEffect(() => {\n // previousSelectedValue er undefined på første render, men da vil vi ikke ha en onChange uansett\n if (\n typeof previousSelectedValue === \"undefined\" ||\n previousSelectedValue === selectedValue ||\n selectedValue === value\n ) {\n return;\n }\n if (onChange) {\n onChange({\n type: \"change\",\n target: { name, value: selectedValue },\n });\n }\n if (selectRef.current) {\n selectRef.current.dispatchEvent(\n new Event(\"change\", { bubbles: true }),\n );\n }\n }, [onChange, name, value, selectedValue, previousSelectedValue]);\n\n /// Fokushåndtering\n\n const componentRootElementRef = useRef<HTMLDivElement>(null);\n const focusInsideRef = useRef(false);\n const searchFieldRef = useRef<HTMLInputElement>(null);\n const buttonRef = useRef<HTMLButtonElement>(null);\n\n const handleFocusPlacement = useCallback(\n (isOpen: boolean, ref: RefObject<HTMLElement>) => {\n if (isOpen && !isSearchable) {\n const listElement = ref.current;\n if (listElement) {\n focusSelected(listElement, selectedValue);\n }\n } else if (isOpen) {\n if (searchFieldRef.current) {\n searchFieldRef.current.focus();\n }\n } else {\n if (focusInsideRef.current && buttonRef.current) {\n buttonRef.current.focus();\n }\n }\n },\n [isSearchable, selectedValue],\n );\n\n const [dropdownRef] = useAnimatedHeight<HTMLDivElement>(\n dropdownIsShown,\n {\n onFirstVisible: handleFocusPlacement,\n onTransitionEnd: handleFocusPlacement,\n },\n );\n\n useListNavigation({ ref: dropdownRef });\n\n const close = useCallback(() => {\n if (isSearchable) {\n setSearchValue(\"\");\n }\n if (onBlur) {\n onBlur({\n type: \"blur\",\n target: { name, value: selectedValue },\n });\n selectRef.current?.dispatchEvent(\n new Event(\"focusout\", { bubbles: true }),\n );\n }\n focusInsideRef.current = false;\n setShown(false);\n }, [\n onBlur,\n setSearchValue,\n setShown,\n isSearchable,\n name,\n selectedValue,\n ]);\n\n const handleBlur = useCallback(\n (e: FocusEvent<HTMLButtonElement | HTMLInputElement>) => {\n const componentRootElement = componentRootElementRef.current;\n // There are known issues in Firefox when using \"relatedTarget\" in onBlur events:\n // https://github.com/facebook/react/issues/2011\n // This might be fixed in react 17. Se issue above.\n const nextFocusIsInsideComponent =\n componentRootElement &&\n componentRootElement.contains(e.relatedTarget as Node);\n if (!nextFocusIsInsideComponent) {\n close();\n }\n },\n [close],\n );\n\n const handleFocus = useCallback(() => {\n if (!focusInsideRef.current) {\n if (onFocus) {\n onFocus({\n type: \"change\",\n target: { name, value: selectedValue },\n });\n }\n focusInsideRef.current = true;\n }\n }, [onFocus, selectedValue, name]);\n\n const handleMouseOver = useCallback(\n (e: MouseEvent<HTMLButtonElement>) => {\n // Ved mouseOver på options flytter vi fokus til dem for å unngå \"dobbel fokus\"\n // der det ser ut som to forskjellige elementer er fokusert/hovered samtidig\n (e.target as HTMLButtonElement).focus({ preventScroll: true });\n },\n [],\n );\n\n // Handle focus and blur of hidden select element\n useEffect(() => {\n const select = selectRef.current;\n const searchField = searchFieldRef.current;\n const button = buttonRef.current;\n const componentRootElement = componentRootElementRef.current;\n\n select?.addEventListener(\"focus\", () => {\n showSearchInputField ? searchField?.focus() : button?.focus();\n });\n select?.addEventListener(\"blur\", function (this, ev) {\n componentRootElement &&\n componentRootElement.contains(ev.relatedTarget as Node) &&\n ev.preventDefault();\n });\n\n return () => {\n select?.removeEventListener(\"focus\", () => {\n showSearchInputField\n ? searchField?.focus()\n : button?.focus();\n });\n select?.removeEventListener(\"blur\", function (this, ev) {\n componentRootElement &&\n componentRootElement.contains(\n ev.relatedTarget as Node,\n ) &&\n ev.preventDefault();\n });\n };\n }, [showSearchInputField]);\n\n /// Tastaturnavigasjon\n\n // Add support for opening dropdown with arrowkey down as expected from native select\n // onKeyDown to stop ArrowDown from scrolling the page\n const handleOnKeyDown = useCallback(\n (e: KeyboardEvent<HTMLButtonElement>) => {\n if (\n (e.key === \"ArrowDown\" || e.key === \" \") &&\n !dropdownIsShown\n ) {\n e.preventDefault();\n e.stopPropagation();\n setShown(true);\n } else if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n setShown(false);\n }\n },\n [setShown, dropdownIsShown],\n );\n\n // onKeyDown to stop ArrowDown from scrolling the page\n const handleSearchOnKeyDown = useCallback(\n (e: KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"ArrowDown\") {\n e.preventDefault();\n e.stopPropagation();\n\n const listElement = dropdownRef.current;\n if (listElement) {\n if (isSearchable) {\n // Flytt fokus til det første elementet i listen, ikke det forrige valgte.\n // Ved endring i filter er det ikke gitt at vi ønsker å ta utgangspunkt i\n // den valgte verdien.\n focusSelected(listElement, undefined);\n } else {\n focusSelected(listElement, selectedValue);\n }\n }\n } else if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n setShown(false);\n } else if (e.key === \"Tab\" && !e.shiftKey) {\n const listElement = dropdownRef.current;\n if (listElement) {\n e.preventDefault();\n e.stopPropagation();\n focusSelected(listElement, selectedValue);\n }\n } else if (e.key === \"Enter\" && dropdownIsShown) {\n // Should not propagate Enter keyevent because form might submit\n e.preventDefault();\n e.stopPropagation();\n }\n },\n [\n setShown,\n dropdownRef,\n selectedValue,\n isSearchable,\n dropdownIsShown,\n ],\n );\n\n // onKeyDown so this Tab listener isn't triggered by tabbing from search field to option\n const handleOptionOnKeyDown = useCallback(\n (e: KeyboardEvent<HTMLButtonElement>) => {\n if (e.key === \"Tab\") {\n e.preventDefault();\n e.stopPropagation();\n\n if (e.shiftKey && searchFieldRef.current) {\n searchFieldRef.current.focus();\n } else if (buttonRef.current) {\n // Mimic behaviour of Firefox and native select, where Tab selects the current item and closes the menu\n setSelectedValue(e.currentTarget.value);\n setShown(false);\n buttonRef.current.focus();\n }\n } else if (e.key === \"ArrowUp\") {\n if (dropdownRef.current && searchFieldRef.current) {\n // Can't be based on index since the first item might be filtered out\n const firstVisible = dropdownRef.current.querySelector(\n '[role=\"option\"]:not([hidden])',\n );\n if (\n e.currentTarget.id === firstVisible?.id &&\n searchFieldRef.current\n ) {\n searchFieldRef.current.focus();\n }\n }\n }\n },\n [setShown, dropdownRef],\n );\n\n // Add support for closing the dropdown with Escape like native select. Unfortunately, Escape does not trigger the button onKeyDown.\n useEffect(() => {\n const handleEscape = (e: globalThis.KeyboardEvent) => {\n if (e.key === \"Escape\" && dropdownIsShown) {\n setShown(false);\n }\n };\n if (typeof window !== \"undefined\" && dropdownIsShown) {\n window.addEventListener(\"keydown\", handleEscape);\n }\n return () => {\n if (typeof window !== \"undefined\") {\n window.removeEventListener(\"keydown\", handleEscape);\n }\n };\n }, [setShown, dropdownIsShown]);\n\n return (\n <>\n <select\n name={name}\n tabIndex={-1}\n data-testid=\"jkl-native-select\"\n className=\"jkl-sr-only\"\n aria-hidden\n ref={unifiedSelectRef}\n value={selectedValue}\n onChange={noop} // React complains unless we give an onChange handler. This is technically a read-only field, but readOnly isn't an option here.\n >\n <option value=\"\"></option>{\" \"}\n {/* Tom option må være et valg, ellers vil <select> alltid ha en value */}\n {visibleItems.map((item) => (\n <option\n key={`${listId}-opt-${item.value}`}\n hidden={!item.visible}\n value={item.value}\n >\n {item.label}\n </option>\n ))}\n </select>\n <InputGroup\n ref={componentRootElementRef}\n data-testid=\"jkl-select\"\n className={clsx(\"jkl-select\", className, {\n \"jkl-select--inline\": inline,\n \"jkl-select--open\":\n dropdownIsShown &&\n visibleItems.some((item) => item.visible),\n \"jkl-select--no-value\": !hasSelectedValue,\n \"jkl-select--invalid\": !!errorLabel || invalid,\n })}\n tooltip={\n tooltip && React.isValidElement<PopupTipProps>(tooltip)\n ? React.cloneElement(tooltip, {\n triggerProps: {\n ...tooltip.props.triggerProps,\n onFocus: (\n e: FocusEvent<HTMLButtonElement>,\n ) => {\n tooltip.props.triggerProps?.onFocus?.(\n e,\n );\n close();\n },\n },\n })\n : null\n }\n {...rest}\n id={isSearchable ? searchInputId : buttonId}\n style={\n {\n [\"--jkl-select-max-shown-options\"]: maxShownOptions,\n ...style,\n } as CSSProperties\n }\n density={density}\n label={label}\n labelProps={{\n id: labelId,\n srOnly: inline,\n ...labelProps,\n htmlFor: isSearchable ? searchInputId : buttonId,\n }}\n helpLabel={helpLabel}\n errorLabel={errorLabel}\n render={({\n \"aria-invalid\": ariaInvalid,\n ...inputProps\n }) => (\n <div\n className=\"jkl-select__outer-wrapper\"\n style={{ width }}\n >\n {isSearchable && (\n <input\n {...inputProps}\n aria-invalid={ariaInvalid}\n id={searchInputId}\n hidden={!showSearchInputField}\n ref={searchFieldRef}\n placeholder=\"Søk\"\n value={searchValue}\n onChange={(e) =>\n setSearchValue(e.target.value)\n }\n data-testid=\"jkl-select__search-input\"\n className=\"jkl-select__search-input\"\n aria-autocomplete=\"list\"\n aria-activedescendant={\n hasSelectedValue\n ? `${listId}__${toLower(\n selectedValue,\n )}`\n : undefined\n }\n aria-controls={listId}\n aria-expanded={dropdownIsShown}\n role=\"combobox\"\n onKeyDown={handleSearchOnKeyDown}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onClick={(e) => {\n e.stopPropagation();\n }}\n />\n )}\n {/* eslint-disable-next-line jsx-a11y/role-supports-aria-props */}\n <button\n // Nei dette er ikke i henhold til speccen, men VoiceOver leser den likevel og det er oppførselen vi ønsker\n aria-invalid={ariaInvalid}\n {...inputProps}\n id={buttonId}\n ref={buttonRef}\n hidden={showSearchInputField}\n type=\"button\"\n name={`${name}-btn`}\n className={clsx(\"jkl-select__button\", {\n \"jkl-select__button--active-value\":\n !!selectedValue,\n })}\n data-testid=\"jkl-select__button\"\n aria-label={`${\n selectedValueLabel || \"Velg\"\n },${label}`}\n aria-expanded={dropdownIsShown}\n aria-controls={listId}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyDown={handleOnKeyDown}\n onClick={toggleListVisibility}\n onMouseDown={(e) => {\n // Workaround for en Safari-bug hvor e.relatedTarget er null i onBlur\n // https://twitter.com/MilesSorce/status/1278762360669265925\n e.preventDefault();\n buttonRef.current?.focus();\n }}\n >\n {selectedValueLabel}\n </button>\n <div\n id={listId}\n ref={dropdownRef}\n role=\"listbox\"\n className=\"jkl-select__options-menu\"\n hidden={\n !dropdownIsShown ||\n visibleItems.every((item) => !item.visible)\n }\n aria-labelledby={labelId}\n tabIndex={-1}\n data-focus=\"controlled\" // lar oss styre markering av valg vha focus\n >\n {visibleItems.map((item, i) =>\n // Det er viktig at vi _fjerner_ elementer som ikke er synlige fra DOMen for at tastaturnavigasjon skal fungere.\n // For eksempel, hvis vi har elementene Apple, Samsung og LG i den rekkefølgen og søker etter \"l\"\n // vil Samsung ikke synes. Om vi bare setter hidden-attributtet på Samsung vil ArrowDown fra Apple ikke fungere.\n // Dette lar seg ikke gjenskape i en enhetstest med JSDOM + user-events, og Cypress lukker Select\n // ved første {downArrow} ¯\\_(ツ)_/¯. Så please test scenariet over manuelt om dette skaper trøbbel for deg.\n item.visible ? (\n <button\n key={`${listId}-${item.value}`}\n hidden={!item.visible}\n type=\"button\"\n id={`${listId}__${toLower(\n item.value,\n )}`}\n className=\"jkl-select__option\"\n data-testid=\"jkl-select__option\"\n aria-selected={\n item.value === selectedValue\n }\n role=\"option\"\n value={item.value}\n data-testautoid={`jkl-select__option-${i}`}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyDown={handleOptionOnKeyDown}\n onClick={(e) => {\n e.preventDefault();\n selectOption(item);\n }}\n onMouseOver={handleMouseOver}\n >\n {item.label}\n {item.description ? (\n <span className=\"jkl-select__option-description\">\n {item.description}\n </span>\n ) : null}\n </button>\n ) : null,\n )}\n </div>\n <ArrowVerticalAnimated\n variant=\"medium\"\n pointingDown={!dropdownIsShown}\n className=\"jkl-select__arrow\"\n />\n </div>\n )}\n />\n </>\n );\n },\n);\n\nSelect.displayName = \"Select\";\n"],"names":["noop","Select","forwardRef","props","forwardedSelectRef","id","name","items","value","label","labelProps","onChange","onBlur","onFocus","className","helpLabel","errorLabel","invalid","searchable","inline","defaultPrompt","density","width","maxShownOptions","style","tooltip","rest","listId","useId","generateSuffix","labelId","buttonId","searchInputId","dropdownIsShown","setShown","useState","toggleListVisibility","useCallback","previousValue","isSearchable","showSearchInputField","searchValue","setSearchValue","searchFn","item","toLowerCase","includes","visibleItems","useMemo","map","getValuePair","visible","valueIsInItems","some","selectedValue","setSelectedValue","hasSelectedValue","selectedValueLabel","_a","find","selectRef","useRef","unifiedSelectRef","instance","current","usePreviousValue","useEffect","selectOption","nextValue","buttonRef","focus","previousSelectedValue","type","target","dispatchEvent","Event","bubbles","componentRootElementRef","focusInsideRef","searchFieldRef","handleFocusPlacement","isOpen","ref","listElement","focusSelected","dropdownRef","useAnimatedHeight","onFirstVisible","onTransitionEnd","useListNavigation","close","handleBlur","e","componentRootElement","contains","relatedTarget","handleFocus","handleMouseOver","preventScroll","select","searchField","button","addEventListener","ev","preventDefault","removeEventListener","handleOnKeyDown","key","stopPropagation","handleSearchOnKeyDown","shiftKey","handleOptionOnKeyDown","currentTarget","firstVisible","querySelector","handleEscape","window","jsxs","Fragment","children","tabIndex","jsx","hidden","InputGroup","clsx","React","isValidElement","cloneElement","triggerProps","_b","call","srOnly","htmlFor","render","ariaInvalid","inputProps","placeholder","toLower","role","onKeyDown","onClick","onMouseDown","every","i","onMouseOver","description","ArrowVerticalAnimated","variant","pointingDown","displayName"],"mappings":"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"}
1
+ {"version":3,"file":"Select.cjs","sources":["../../../../src/components/select/Select.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, {\n CSSProperties,\n FocusEvent,\n forwardRef,\n KeyboardEvent,\n MouseEvent,\n RefObject,\n useCallback,\n useEffect,\n useMemo,\n useRef,\n useState,\n} from \"react\";\nimport { useAnimatedHeight } from \"../../hooks/useAnimatedHeight/useAnimatedHeight.js\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport { useListNavigation } from \"../../hooks/useListNavigation/useListNavigation.js\";\nimport { usePreviousValue } from \"../../hooks/usePreviousValue/usePreviousValue.js\";\nimport { getValuePair, ValuePair } from \"../../utilities/valuePair.js\";\nimport { ArrowVerticalAnimated } from \"../icon/icons/animated/ArrowVerticalAnimated.js\";\nimport { InputGroup } from \"../input-group/InputGroup.js\";\nimport type { PopupTipProps } from \"../tooltip/types.js\";\nimport { focusSelected, toLower } from \"./select-utils.js\";\nimport { SelectProps } from \"./types.js\";\n\nconst noop = () => {\n return;\n};\n\ninterface Option extends ValuePair {\n visible: boolean;\n}\n\nexport const Select = forwardRef<HTMLSelectElement, SelectProps>(\n (props, forwardedSelectRef) => {\n const {\n id,\n name,\n items,\n value,\n label,\n labelProps,\n onChange,\n onBlur,\n onFocus,\n className,\n helpLabel,\n errorLabel,\n invalid,\n searchable = false,\n inline = false,\n defaultPrompt = \"Velg\",\n density,\n width,\n maxShownOptions = 5,\n style,\n tooltip,\n ...rest\n } = props;\n\n const listId = useId(id || \"jkl-select\", { generateSuffix: !id });\n const labelId = `${listId}_label`;\n const buttonId = `${listId}_button`;\n const searchInputId = `${listId}_search-input`;\n\n const [dropdownIsShown, setShown] = useState(false);\n const toggleListVisibility = useCallback(() => {\n setShown((previousValue) => !previousValue);\n }, []);\n\n /// Søk\n\n const isSearchable = Boolean(searchable);\n const showSearchInputField = isSearchable && dropdownIsShown;\n const [searchValue, setSearchValue] = useState(\"\");\n const searchFn = useCallback(\n (item: ValuePair) => {\n if (\n item.label.toLowerCase().includes(searchValue.toLowerCase())\n ) {\n return true;\n }\n\n if (typeof searchable === \"function\") {\n return searchable(searchValue, item);\n }\n\n return false;\n },\n [searchable, searchValue],\n );\n const visibleItems: Option[] = useMemo(\n () =>\n items.map(getValuePair).map((item) => {\n const visible =\n !isSearchable || searchValue === \"\" || searchFn(item);\n return { ...item, visible };\n }),\n [items, isSearchable, searchValue, searchFn],\n );\n const valueIsInItems: boolean = useMemo(() => {\n if (typeof value === \"undefined\") {\n return false;\n }\n return items.some((item) =>\n typeof item === \"string\"\n ? item === value\n : item.value === value,\n );\n }, [value, items]);\n\n /// Valg av <option>\n\n const [selectedValue, setSelectedValue] = useState<string>(\n valueIsInItems && value !== undefined ? value : \"\",\n );\n const hasSelectedValue = selectedValue !== \"\";\n const selectedValueLabel = useMemo(\n () =>\n visibleItems.find((item) => item.value === selectedValue)\n ?.label || defaultPrompt,\n [visibleItems, selectedValue, defaultPrompt],\n );\n\n const selectRef = useRef<HTMLSelectElement | null>(null);\n // Hjelpefunksjon som gjør det enklere å forwarde refen og å bruke den selv internt\n const unifiedSelectRef = useCallback(\n (instance: HTMLSelectElement | null) => {\n selectRef.current = instance;\n if (forwardedSelectRef) {\n if (typeof forwardedSelectRef === \"function\") {\n forwardedSelectRef(instance);\n } else {\n forwardedSelectRef.current = instance;\n }\n }\n if (instance) {\n setSelectedValue(instance.value);\n }\n },\n [selectRef, forwardedSelectRef],\n );\n\n const previousValue = usePreviousValue(value);\n useEffect(() => {\n if (value === previousValue) {\n return;\n }\n if (typeof value === \"undefined\" || !valueIsInItems) {\n setSelectedValue(\"\");\n } else {\n setSelectedValue(value);\n }\n }, [setSelectedValue, value, previousValue, valueIsInItems]);\n\n const selectOption = useCallback(\n (item: Option) => {\n const nextValue = item.value;\n setSearchValue(\"\");\n setSelectedValue(nextValue);\n toggleListVisibility();\n buttonRef.current?.focus();\n },\n [setSearchValue, setSelectedValue, toggleListVisibility],\n );\n\n // La komponenten rendre <select> med den valgte verdien før onChange trigges, slik at\n // react-hook-form@>7.41.1 behandler feltet som at det har en verdi.\n const previousSelectedValue = usePreviousValue(selectedValue);\n useEffect(() => {\n // previousSelectedValue er undefined på første render, men da vil vi ikke ha en onChange uansett\n if (\n typeof previousSelectedValue === \"undefined\" ||\n previousSelectedValue === selectedValue ||\n selectedValue === value\n ) {\n return;\n }\n if (onChange) {\n onChange({\n type: \"change\",\n target: { name, value: selectedValue },\n });\n }\n if (selectRef.current) {\n selectRef.current.dispatchEvent(\n new Event(\"change\", { bubbles: true }),\n );\n }\n }, [onChange, name, value, selectedValue, previousSelectedValue]);\n\n /// Fokushåndtering\n\n const componentRootElementRef = useRef<HTMLDivElement>(null);\n const focusInsideRef = useRef(false);\n const searchFieldRef = useRef<HTMLInputElement>(null);\n const buttonRef = useRef<HTMLButtonElement>(null);\n\n const handleFocusPlacement = useCallback(\n (isOpen: boolean, ref: RefObject<HTMLElement>) => {\n if (isOpen && !isSearchable) {\n const listElement = ref.current;\n if (listElement) {\n focusSelected(listElement, selectedValue);\n }\n } else if (isOpen) {\n if (searchFieldRef.current) {\n searchFieldRef.current.focus();\n }\n } else {\n if (focusInsideRef.current && buttonRef.current) {\n buttonRef.current.focus();\n }\n }\n },\n [isSearchable, selectedValue],\n );\n\n const [dropdownRef] = useAnimatedHeight<HTMLDivElement>(\n dropdownIsShown,\n {\n onFirstVisible: handleFocusPlacement,\n onTransitionEnd: handleFocusPlacement,\n },\n );\n\n useListNavigation({ ref: dropdownRef });\n\n const close = useCallback(() => {\n if (isSearchable) {\n setSearchValue(\"\");\n }\n if (onBlur) {\n onBlur({\n type: \"blur\",\n target: { name, value: selectedValue },\n });\n selectRef.current?.dispatchEvent(\n new Event(\"focusout\", { bubbles: true }),\n );\n }\n focusInsideRef.current = false;\n setShown(false);\n }, [\n onBlur,\n setSearchValue,\n setShown,\n isSearchable,\n name,\n selectedValue,\n ]);\n\n const handleBlur = useCallback(\n (e: FocusEvent<HTMLButtonElement | HTMLInputElement>) => {\n const componentRootElement = componentRootElementRef.current;\n // There are known issues in Firefox when using \"relatedTarget\" in onBlur events:\n // https://github.com/facebook/react/issues/2011\n // This might be fixed in react 17. Se issue above.\n const nextFocusIsInsideComponent =\n componentRootElement &&\n componentRootElement.contains(e.relatedTarget as Node);\n if (!nextFocusIsInsideComponent) {\n close();\n }\n },\n [close],\n );\n\n const handleFocus = useCallback(() => {\n if (!focusInsideRef.current) {\n if (onFocus) {\n onFocus({\n type: \"change\",\n target: { name, value: selectedValue },\n });\n }\n focusInsideRef.current = true;\n }\n }, [onFocus, selectedValue, name]);\n\n const handleMouseOver = useCallback(\n (e: MouseEvent<HTMLButtonElement>) => {\n // Ved mouseOver på options flytter vi fokus til dem for å unngå \"dobbel fokus\"\n // der det ser ut som to forskjellige elementer er fokusert/hovered samtidig\n (e.target as HTMLButtonElement).focus({ preventScroll: true });\n },\n [],\n );\n\n // Handle focus and blur of hidden select element\n useEffect(() => {\n const select = selectRef.current;\n const searchField = searchFieldRef.current;\n const button = buttonRef.current;\n const componentRootElement = componentRootElementRef.current;\n\n select?.addEventListener(\"focus\", () => {\n showSearchInputField ? searchField?.focus() : button?.focus();\n });\n select?.addEventListener(\"blur\", function (this, ev) {\n componentRootElement &&\n componentRootElement.contains(ev.relatedTarget as Node) &&\n ev.preventDefault();\n });\n\n return () => {\n select?.removeEventListener(\"focus\", () => {\n showSearchInputField\n ? searchField?.focus()\n : button?.focus();\n });\n select?.removeEventListener(\"blur\", function (this, ev) {\n componentRootElement &&\n componentRootElement.contains(\n ev.relatedTarget as Node,\n ) &&\n ev.preventDefault();\n });\n };\n }, [showSearchInputField]);\n\n /// Tastaturnavigasjon\n\n // Add support for opening dropdown with arrowkey down as expected from native select\n // onKeyDown to stop ArrowDown from scrolling the page\n const handleOnKeyDown = useCallback(\n (e: KeyboardEvent<HTMLButtonElement>) => {\n if (\n (e.key === \"ArrowDown\" || e.key === \" \") &&\n !dropdownIsShown\n ) {\n e.preventDefault();\n e.stopPropagation();\n setShown(true);\n } else if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n setShown(false);\n }\n },\n [setShown, dropdownIsShown],\n );\n\n // onKeyDown to stop ArrowDown from scrolling the page\n const handleSearchOnKeyDown = useCallback(\n (e: KeyboardEvent<HTMLInputElement>) => {\n if (e.key === \"ArrowDown\") {\n e.preventDefault();\n e.stopPropagation();\n\n const listElement = dropdownRef.current;\n if (listElement) {\n if (isSearchable) {\n // Flytt fokus til det første elementet i listen, ikke det forrige valgte.\n // Ved endring i filter er det ikke gitt at vi ønsker å ta utgangspunkt i\n // den valgte verdien.\n focusSelected(listElement, undefined);\n } else {\n focusSelected(listElement, selectedValue);\n }\n }\n } else if (e.key === \"Escape\") {\n e.preventDefault();\n e.stopPropagation();\n setShown(false);\n } else if (e.key === \"Tab\" && !e.shiftKey) {\n const listElement = dropdownRef.current;\n if (listElement) {\n e.preventDefault();\n e.stopPropagation();\n focusSelected(listElement, selectedValue);\n }\n } else if (e.key === \"Enter\" && dropdownIsShown) {\n // Should not propagate Enter keyevent because form might submit\n e.preventDefault();\n e.stopPropagation();\n }\n },\n [\n setShown,\n dropdownRef,\n selectedValue,\n isSearchable,\n dropdownIsShown,\n ],\n );\n\n // onKeyDown so this Tab listener isn't triggered by tabbing from search field to option\n const handleOptionOnKeyDown = useCallback(\n (e: KeyboardEvent<HTMLButtonElement>) => {\n if (e.key === \"Tab\") {\n e.preventDefault();\n e.stopPropagation();\n\n if (e.shiftKey && searchFieldRef.current) {\n searchFieldRef.current.focus();\n } else if (buttonRef.current) {\n // Mimic behaviour of Firefox and native select, where Tab selects the current item and closes the menu\n setSelectedValue(e.currentTarget.value);\n setShown(false);\n buttonRef.current.focus();\n }\n } else if (e.key === \"ArrowUp\") {\n if (dropdownRef.current && searchFieldRef.current) {\n // Can't be based on index since the first item might be filtered out\n const firstVisible = dropdownRef.current.querySelector(\n '[role=\"option\"]:not([hidden])',\n );\n if (\n e.currentTarget.id === firstVisible?.id &&\n searchFieldRef.current\n ) {\n searchFieldRef.current.focus();\n }\n }\n }\n },\n [setShown, dropdownRef],\n );\n\n // Add support for closing the dropdown with Escape like native select. Unfortunately, Escape does not trigger the button onKeyDown.\n useEffect(() => {\n const handleEscape = (e: globalThis.KeyboardEvent) => {\n if (e.key === \"Escape\" && dropdownIsShown) {\n setShown(false);\n }\n };\n if (typeof window !== \"undefined\" && dropdownIsShown) {\n window.addEventListener(\"keydown\", handleEscape);\n }\n return () => {\n if (typeof window !== \"undefined\") {\n window.removeEventListener(\"keydown\", handleEscape);\n }\n };\n }, [setShown, dropdownIsShown]);\n\n return (\n <>\n <select\n name={name}\n tabIndex={-1}\n data-testid=\"jkl-native-select\"\n className=\"jkl-sr-only\"\n aria-hidden\n ref={unifiedSelectRef}\n value={selectedValue}\n onChange={noop} // React complains unless we give an onChange handler. This is technically a read-only field, but readOnly isn't an option here.\n >\n <option value=\"\"></option>{\" \"}\n {/* Tom option må være et valg, ellers vil <select> alltid ha en value */}\n {visibleItems.map((item) => (\n <option\n key={`${listId}-opt-${item.value}`}\n hidden={!item.visible}\n value={item.value}\n >\n {item.label}\n </option>\n ))}\n </select>\n <InputGroup\n ref={componentRootElementRef}\n data-testid=\"jkl-select\"\n className={clsx(\"jkl-select\", className, {\n \"jkl-select--inline\": inline,\n \"jkl-select--open\":\n dropdownIsShown &&\n visibleItems.some((item) => item.visible),\n \"jkl-select--no-value\": !hasSelectedValue,\n \"jkl-select--invalid\": !!errorLabel || invalid,\n })}\n tooltip={\n tooltip && React.isValidElement<PopupTipProps>(tooltip)\n ? React.cloneElement(tooltip, {\n triggerProps: {\n ...tooltip.props.triggerProps,\n onFocus: (\n e: FocusEvent<HTMLButtonElement>,\n ) => {\n tooltip.props.triggerProps?.onFocus?.(\n e,\n );\n close();\n },\n },\n })\n : null\n }\n {...rest}\n id={isSearchable ? searchInputId : buttonId}\n style={\n {\n [\"--jkl-select-max-shown-options\"]: maxShownOptions,\n ...style,\n } as CSSProperties\n }\n density={density}\n label={label}\n labelProps={{\n id: labelId,\n srOnly: inline,\n ...labelProps,\n htmlFor: isSearchable ? searchInputId : buttonId,\n }}\n helpLabel={helpLabel}\n errorLabel={errorLabel}\n render={({\n \"aria-invalid\": ariaInvalid,\n ...inputProps\n }) => (\n <div\n className=\"jkl-select__outer-wrapper\"\n style={{ width }}\n >\n {isSearchable && (\n <input\n {...inputProps}\n aria-invalid={ariaInvalid}\n id={searchInputId}\n hidden={!showSearchInputField}\n ref={searchFieldRef}\n placeholder=\"Søk\"\n value={searchValue}\n onChange={(e) =>\n setSearchValue(e.target.value)\n }\n data-testid=\"jkl-select__search-input\"\n className=\"jkl-select__search-input\"\n aria-autocomplete=\"list\"\n aria-activedescendant={\n hasSelectedValue\n ? `${listId}__${toLower(\n selectedValue,\n )}`\n : undefined\n }\n aria-controls={listId}\n aria-expanded={dropdownIsShown}\n role=\"combobox\"\n onKeyDown={handleSearchOnKeyDown}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onClick={(e) => {\n e.stopPropagation();\n }}\n />\n )}\n {/* eslint-disable-next-line jsx-a11y/role-supports-aria-props */}\n <button\n // Nei dette er ikke i henhold til speccen, men VoiceOver leser den likevel og det er oppførselen vi ønsker\n aria-invalid={ariaInvalid}\n {...inputProps}\n id={buttonId}\n ref={buttonRef}\n hidden={showSearchInputField}\n type=\"button\"\n name={`${name}-btn`}\n className={clsx(\"jkl-select__button\", {\n \"jkl-select__button--active-value\":\n !!selectedValue,\n })}\n data-testid=\"jkl-select__button\"\n aria-label={`${\n selectedValueLabel || \"Velg\"\n },${label}`}\n aria-expanded={dropdownIsShown}\n aria-controls={listId}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyDown={handleOnKeyDown}\n onClick={toggleListVisibility}\n onMouseDown={(e) => {\n // Workaround for en Safari-bug hvor e.relatedTarget er null i onBlur\n // https://twitter.com/MilesSorce/status/1278762360669265925\n e.preventDefault();\n buttonRef.current?.focus();\n }}\n >\n {selectedValueLabel}\n </button>\n <div\n id={listId}\n ref={dropdownRef}\n role=\"listbox\"\n className=\"jkl-select__options-menu\"\n hidden={\n !dropdownIsShown ||\n visibleItems.every((item) => !item.visible)\n }\n aria-labelledby={labelId}\n tabIndex={-1}\n data-focus=\"controlled\" // lar oss styre markering av valg vha focus\n >\n {visibleItems.map((item, i) =>\n // Det er viktig at vi _fjerner_ elementer som ikke er synlige fra DOMen for at tastaturnavigasjon skal fungere.\n // For eksempel, hvis vi har elementene Apple, Samsung og LG i den rekkefølgen og søker etter \"l\"\n // vil Samsung ikke synes. Om vi bare setter hidden-attributtet på Samsung vil ArrowDown fra Apple ikke fungere.\n // Dette lar seg ikke gjenskape i en enhetstest med JSDOM + user-events, og Cypress lukker Select\n // ved første {downArrow} ¯\\_(ツ)_/¯. Så please test scenariet over manuelt om dette skaper trøbbel for deg.\n item.visible ? (\n <button\n key={`${listId}-${item.value}`}\n hidden={!item.visible}\n type=\"button\"\n id={`${listId}__${toLower(\n item.value,\n )}`}\n className=\"jkl-select__option\"\n data-testid=\"jkl-select__option\"\n aria-selected={\n item.value === selectedValue\n }\n role=\"option\"\n value={item.value}\n data-testautoid={`jkl-select__option-${i}`}\n onBlur={handleBlur}\n onFocus={handleFocus}\n onKeyDown={handleOptionOnKeyDown}\n onClick={(e) => {\n e.preventDefault();\n selectOption(item);\n }}\n onMouseOver={handleMouseOver}\n >\n {item.label}\n {item.description ? (\n <span className=\"jkl-select__option-description\">\n {item.description}\n </span>\n ) : null}\n </button>\n ) : null,\n )}\n </div>\n <ArrowVerticalAnimated\n variant=\"medium\"\n pointingDown={!dropdownIsShown}\n className=\"jkl-select__arrow\"\n />\n </div>\n )}\n />\n </>\n );\n },\n);\n\nSelect.displayName = \"Select\";\n"],"names":["noop","Select","forwardRef","props","forwardedSelectRef","id","name","items","value","label","labelProps","onChange","onBlur","onFocus","className","helpLabel","errorLabel","invalid","searchable","inline","defaultPrompt","density","width","maxShownOptions","style","tooltip","rest","listId","useId","generateSuffix","labelId","buttonId","searchInputId","dropdownIsShown","setShown","useState","toggleListVisibility","useCallback","previousValue","isSearchable","showSearchInputField","searchValue","setSearchValue","searchFn","item","toLowerCase","includes","visibleItems","useMemo","map","getValuePair","visible","valueIsInItems","some","selectedValue","setSelectedValue","hasSelectedValue","selectedValueLabel","_a","find","selectRef","useRef","unifiedSelectRef","instance","current","usePreviousValue","useEffect","selectOption","nextValue","buttonRef","focus","previousSelectedValue","type","target","dispatchEvent","Event","bubbles","componentRootElementRef","focusInsideRef","searchFieldRef","handleFocusPlacement","isOpen","ref","listElement","focusSelected","dropdownRef","useAnimatedHeight","onFirstVisible","onTransitionEnd","useListNavigation","close","handleBlur","e","componentRootElement","contains","relatedTarget","handleFocus","handleMouseOver","preventScroll","select","searchField","button","addEventListener","ev","preventDefault","removeEventListener","handleOnKeyDown","key","stopPropagation","handleSearchOnKeyDown","shiftKey","handleOptionOnKeyDown","currentTarget","firstVisible","querySelector","handleEscape","window","jsxs","Fragment","children","tabIndex","jsx","hidden","InputGroup","clsx","React","isValidElement","cloneElement","triggerProps","_b","call","srOnly","htmlFor","render","ariaInvalid","inputProps","placeholder","toLower","role","onKeyDown","onClick","onMouseDown","every","i","onMouseOver","description","ArrowVerticalAnimated","variant","pointingDown","displayName"],"mappings":"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"}
@@ -1,54 +1,3 @@
1
- import { default as React, ChangeEvent } from 'react';
2
- import { DataTestAutoId, Density } from '../../core/types.cjs';
3
- import { ValuePair } from '../../utilities/valuePair.cjs';
4
- import { InputGroupProps } from '../input-group/InputGroup.cjs';
5
- import { LabelProps } from '../input-group/Label.cjs';
6
- export interface SelectPartialChangeEvent extends Partial<Omit<ChangeEvent<HTMLSelectElement>, "target">> {
7
- /** Kreves av react-hook-form, det skjer ulike ting avhengig av om det er blur eller change */
8
- type: "change" | "blur";
9
- target: {
10
- /** Kreves av react-hook-form for å vite hvilket skjemafelt som ble endret */
11
- name: string;
12
- value: string;
13
- };
14
- }
15
- export type SelectChangeEventHandler = (event: SelectPartialChangeEvent) => void;
16
- export interface SelectProps extends Omit<InputGroupProps, "children">, DataTestAutoId {
17
- id?: string;
18
- name: string;
19
- label: string;
20
- labelProps?: Omit<LabelProps, "children" | "density" | "htmlFor" | "standAlone">;
21
- items: Array<string | ValuePair>;
22
- /**
23
- * @default false
24
- */
25
- inline?: boolean;
26
- /**
27
- * @default "Velg"
28
- */
29
- defaultPrompt?: string;
30
- className?: string;
31
- value?: string;
32
- helpLabel?: string;
33
- errorLabel?: string;
34
- /**
35
- * @default false
36
- */
37
- searchable?: boolean | ((searchValue: string, searchItem: string | ValuePair) => boolean);
38
- density?: Density;
39
- width?: string;
40
- onChange?: SelectChangeEventHandler;
41
- onBlur?: SelectChangeEventHandler;
42
- onFocus?: SelectChangeEventHandler;
43
- /**
44
- * Merk som ugyldig uten å sende inn en errorLabel.
45
- * NB! Brukes kun i tilfeller der valideringsfeil dukker opp andre steder, for eksempel i en FieldGroup.
46
- */
47
- invalid?: boolean;
48
- /**
49
- * Hvor mange valg skal vises i listen før den begynner å scrolle.
50
- * @default 5
51
- */
52
- maxShownOptions?: number;
53
- }
1
+ import { default as React } from 'react';
2
+ import { SelectProps } from './types.cjs';
54
3
  export declare const Select: React.ForwardRefExoticComponent<SelectProps & React.RefAttributes<HTMLSelectElement>>;
@@ -1,2 +1,3 @@
1
- export { Select, type SelectProps, type SelectChangeEventHandler, type SelectPartialChangeEvent, } from './Select.cjs';
2
- export { NativeSelect, type NativeSelectProps } from './NativeSelect.cjs';
1
+ export { Select } from './Select.cjs';
2
+ export { NativeSelect } from './NativeSelect.cjs';
3
+ export type { SelectProps, SelectChangeEventHandler, SelectPartialChangeEvent, NativeSelectProps, } from './types.cjs';
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,67 @@
1
+ import { ChangeEvent, SelectHTMLAttributes } from 'react';
2
+ import { DataTestAutoId, Density } from '../../core/types.cjs';
3
+ import { ValuePair } from '../../utilities/valuePair.cjs';
4
+ import { LabelProps, InputGroupProps } from '../input-group/types.cjs';
5
+ export interface NativeSelectProps extends Omit<InputGroupProps, "children">, SelectHTMLAttributes<HTMLSelectElement> {
6
+ /**
7
+ * Merk som ugyldig uten å sende inn en errorLabel.
8
+ * NB! Brukes kun i tilfeller der valideringsfeil dukker opp andre steder, for eksempel i en FieldGroup.
9
+ */
10
+ invalid?: boolean;
11
+ /**
12
+ * Setter inn et placeholderelement som vises når ingenting er valgt i nedtrekkslisten.
13
+ * @default "Velg"
14
+ */
15
+ placeholder?: string;
16
+ items: Array<string | ValuePair>;
17
+ selectClassName?: string;
18
+ width?: string;
19
+ }
20
+ export interface SelectPartialChangeEvent extends Partial<Omit<ChangeEvent<HTMLSelectElement>, "target">> {
21
+ /** Kreves av react-hook-form, det skjer ulike ting avhengig av om det er blur eller change */
22
+ type: "change" | "blur";
23
+ target: {
24
+ /** Kreves av react-hook-form for å vite hvilket skjemafelt som ble endret */
25
+ name: string;
26
+ value: string;
27
+ };
28
+ }
29
+ export type SelectChangeEventHandler = (event: SelectPartialChangeEvent) => void;
30
+ export interface SelectProps extends Omit<InputGroupProps, "children">, DataTestAutoId {
31
+ id?: string;
32
+ name: string;
33
+ label: string;
34
+ labelProps?: Omit<LabelProps, "children" | "density" | "htmlFor" | "standAlone">;
35
+ items: Array<string | ValuePair>;
36
+ /**
37
+ * @default false
38
+ */
39
+ inline?: boolean;
40
+ /**
41
+ * @default "Velg"
42
+ */
43
+ defaultPrompt?: string;
44
+ className?: string;
45
+ value?: string;
46
+ helpLabel?: string;
47
+ errorLabel?: string;
48
+ /**
49
+ * @default false
50
+ */
51
+ searchable?: boolean | ((searchValue: string, searchItem: string | ValuePair) => boolean);
52
+ density?: Density;
53
+ width?: string;
54
+ onChange?: SelectChangeEventHandler;
55
+ onBlur?: SelectChangeEventHandler;
56
+ onFocus?: SelectChangeEventHandler;
57
+ /**
58
+ * Merk som ugyldig uten å sende inn en errorLabel.
59
+ * NB! Brukes kun i tilfeller der valideringsfeil dukker opp andre steder, for eksempel i en FieldGroup.
60
+ */
61
+ invalid?: boolean;
62
+ /**
63
+ * Hvor mange valg skal vises i listen før den begynner å scrolle.
64
+ * @default 5
65
+ */
66
+ maxShownOptions?: number;
67
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"SummaryTable.cjs","sources":["../../../../src/components/summary-table/SummaryTable.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { ReactNode, FC } from \"react\";\n\nexport interface SummaryTableProps {\n className?: string;\n caption?: string;\n header: [string, string];\n body: ReactNode;\n footer?: ReactNode;\n}\n\nexport const SummaryTable: FC<SummaryTableProps> = ({\n className,\n caption,\n header,\n body,\n footer,\n ...rest\n}) => {\n return (\n <table {...rest} className={clsx(\"jkl-summary-table\", className)}>\n {caption && <caption className=\"jkl-sr-only\">{caption}</caption>}\n\n <thead className=\"jkl-sr-only\">\n <tr>\n {header.map((description, index) => (\n <th scope=\"col\" key={index}>\n {description}\n </th>\n ))}\n </tr>\n </thead>\n\n <tbody>{body}</tbody>\n\n <tfoot>{footer}</tfoot>\n </table>\n );\n};\n"],"names":["className","caption","header","body","footer","rest","jsxs","clsx","children","jsx","map","description","index","scope"],"mappings":"kLAWmD,EAC/CA,UAAAA,EACAC,QAAAA,EACAC,OAAAA,EACAC,KAAAA,EACAC,OAAAA,KACGC,KAGCC,EAAAA,KAAC,YAAUD,EAAML,UAAWO,EAAAA,KAAK,oBAAqBP,GACjDQ,SAAA,CAAAP,GAAYQ,EAAAA,IAAA,UAAA,CAAQT,UAAU,cAAeQ,SAAQP,UAErD,QAAM,CAAAD,UAAU,cACbQ,SAACC,EAAAA,IAAA,KAAA,CACID,WAAOE,KAAI,CAACC,EAAaC,IACtBH,EAAAA,IAAC,MAAGI,MAAM,MACLL,YADgBI,SAOjCH,EAAAA,IAAC,SAAOD,SAAKL,IAEbM,EAAAA,IAAC,SAAOD,SAAOJ"}
1
+ {"version":3,"file":"SummaryTable.cjs","sources":["../../../../src/components/summary-table/SummaryTable.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React, { FC } from \"react\";\nimport { SummaryTableProps } from \"./types.js\";\n\nexport const SummaryTable: FC<SummaryTableProps> = ({\n className,\n caption,\n header,\n body,\n footer,\n ...rest\n}) => {\n return (\n <table {...rest} className={clsx(\"jkl-summary-table\", className)}>\n {caption && <caption className=\"jkl-sr-only\">{caption}</caption>}\n\n <thead className=\"jkl-sr-only\">\n <tr>\n {header.map((description, index) => (\n <th scope=\"col\" key={index}>\n {description}\n </th>\n ))}\n </tr>\n </thead>\n\n <tbody>{body}</tbody>\n\n <tfoot>{footer}</tfoot>\n </table>\n );\n};\n"],"names":["className","caption","header","body","footer","rest","jsxs","clsx","children","jsx","map","description","index","scope"],"mappings":"kLAImD,EAC/CA,UAAAA,EACAC,QAAAA,EACAC,OAAAA,EACAC,KAAAA,EACAC,OAAAA,KACGC,KAGCC,EAAAA,KAAC,YAAUD,EAAML,UAAWO,EAAAA,KAAK,oBAAqBP,GACjDQ,SAAA,CAAAP,GAAYQ,EAAAA,IAAA,UAAA,CAAQT,UAAU,cAAeQ,SAAQP,UAErD,QAAM,CAAAD,UAAU,cACbQ,SAACC,EAAAA,IAAA,KAAA,CACID,WAAOE,KAAI,CAACC,EAAaC,IACtBH,EAAAA,IAAC,MAAGI,MAAM,MACLL,YADgBI,SAOjCH,EAAAA,IAAC,SAAOD,SAAKL,IAEbM,EAAAA,IAAC,SAAOD,SAAOJ"}
@@ -1,9 +1,3 @@
1
- import { ReactNode, FC } from 'react';
2
- export interface SummaryTableProps {
3
- className?: string;
4
- caption?: string;
5
- header: [string, string];
6
- body: ReactNode;
7
- footer?: ReactNode;
8
- }
1
+ import { FC } from 'react';
2
+ import { SummaryTableProps } from './types.cjs';
9
3
  export declare const SummaryTable: FC<SummaryTableProps>;
@@ -1 +1 @@
1
- {"version":3,"file":"SummaryTableRow.cjs","sources":["../../../../src/components/summary-table/SummaryTableRow.tsx"],"sourcesContent":["import React, { FC, ReactNode } from \"react\";\n\nexport interface SummaryTableRowProps {\n className?: string;\n header: string | ReactNode;\n content: string | ReactNode;\n}\n\nexport const SummaryTableRow: FC<SummaryTableRowProps> = ({\n className,\n header,\n content,\n ...rest\n}) => {\n return (\n <tr {...rest} className={className}>\n <th scope=\"row\">{header}</th>\n <td>{content}</td>\n </tr>\n );\n};\n"],"names":["className","header","content","rest","jsxs","children","jsx","scope"],"mappings":"6IAQyD,EACrDA,UAAAA,EACAC,OAAAA,EACAC,QAAAA,KACGC,KAGEC,EAAAA,KAAA,KAAA,IAAOD,EAAMH,UAAAA,EACVK,SAAA,CAACC,EAAAA,IAAA,KAAA,CAAGC,MAAM,MAAOF,SAAOJ,IACxBK,EAAAA,IAAC,MAAID,SAAQH"}
1
+ {"version":3,"file":"SummaryTableRow.cjs","sources":["../../../../src/components/summary-table/SummaryTableRow.tsx"],"sourcesContent":["import React, { FC } from \"react\";\nimport { SummaryTableRowProps } from \"./types.js\";\n\nexport const SummaryTableRow: FC<SummaryTableRowProps> = ({\n className,\n header,\n content,\n ...rest\n}) => {\n return (\n <tr {...rest} className={className}>\n <th scope=\"row\">{header}</th>\n <td>{content}</td>\n </tr>\n );\n};\n"],"names":["className","header","content","rest","jsxs","children","jsx","scope"],"mappings":"6IAGyD,EACrDA,UAAAA,EACAC,OAAAA,EACAC,QAAAA,KACGC,KAGEC,EAAAA,KAAA,KAAA,IAAOD,EAAMH,UAAAA,EACVK,SAAA,CAACC,EAAAA,IAAA,KAAA,CAAGC,MAAM,MAAOF,SAAOJ,IACxBK,EAAAA,IAAC,MAAID,SAAQH"}
@@ -1,7 +1,3 @@
1
- import { FC, ReactNode } from 'react';
2
- export interface SummaryTableRowProps {
3
- className?: string;
4
- header: string | ReactNode;
5
- content: string | ReactNode;
6
- }
1
+ import { FC } from 'react';
2
+ import { SummaryTableRowProps } from './types.cjs';
7
3
  export declare const SummaryTableRow: FC<SummaryTableRowProps>;
@@ -1,2 +1,3 @@
1
- export { SummaryTable, type SummaryTableProps } from './SummaryTable.cjs';
2
- export { SummaryTableRow, type SummaryTableRowProps, } from './SummaryTableRow.cjs';
1
+ export { SummaryTable } from './SummaryTable.cjs';
2
+ export { SummaryTableRow } from './SummaryTableRow.cjs';
3
+ export type { SummaryTableProps, SummaryTableRowProps } from './types.cjs';
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,13 @@
1
+ import { ReactNode } from 'react';
2
+ export interface SummaryTableProps {
3
+ className?: string;
4
+ caption?: string;
5
+ header: [string, string];
6
+ body: ReactNode;
7
+ footer?: ReactNode;
8
+ }
9
+ export interface SummaryTableRowProps {
10
+ className?: string;
11
+ header: string | ReactNode;
12
+ content: string | ReactNode;
13
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"SystemMessage.cjs","sources":["../../../../src/components/system-message/SystemMessage.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { Density, WithChildren } from \"../../core/types.js\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport { DismissButton } from \"../message/DismissButton.js\";\nimport { MessageIcon } from \"./common/MessageIcon.js\";\n\ntype messageTypes = \"info\" | \"error\" | \"success\" | \"warning\";\n\nexport interface SystemMessageProps extends WithChildren {\n id?: string;\n className?: string;\n density?: Density;\n maxContentWidth?: string;\n paddingLeft?: string;\n /** Overstyr standardrollen til meldingen. Om du ønsker å \"skru av\" rollen kan du bruke verdien `none presentation`. */\n role?: string;\n dismissed?: boolean;\n dismissAction?: {\n handleDismiss: () => void;\n buttonTitle?: string;\n };\n}\n\nfunction systemFactory(\n messageType: messageTypes,\n): React.FC<SystemMessageProps> {\n const SystemMessage: React.FC<SystemMessageProps> = ({\n id,\n className,\n density,\n maxContentWidth,\n paddingLeft,\n role = \"status\",\n dismissed,\n dismissAction,\n children,\n ...rest\n }) => {\n const systemId = useId(id || \"jkl-system-message\", {\n generateSuffix: !id,\n });\n\n return (\n <div\n role={role}\n {...rest}\n id={systemId}\n className={clsx(\n \"jkl-system-message\",\n \"jkl-system-message--\" + messageType,\n className,\n {\n \"jkl-system-message--dismissed\": dismissed,\n },\n )}\n data-density={density}\n >\n <div\n className=\"jkl-system-message__content\"\n data-testid=\"system-message-content\"\n data-theme=\"light\"\n style={{\n maxWidth: maxContentWidth,\n paddingLeft,\n }}\n >\n <MessageIcon messageType={messageType} />\n <span className=\"jkl-system-message__message\">\n {children}\n </span>\n {dismissAction?.handleDismiss && (\n <DismissButton\n data-theme=\"light\"\n aria-controls={systemId}\n className=\"jkl-system-message__dismiss-button\"\n label={dismissAction.buttonTitle || \"Lukk\"}\n onClick={dismissAction.handleDismiss}\n />\n )}\n </div>\n </div>\n );\n };\n return SystemMessage;\n}\n\nexport const InfoSystemMessage = systemFactory(\"info\");\nInfoSystemMessage.displayName = \"InfoSystemMessage\";\nexport const ErrorSystemMessage = systemFactory(\"error\");\nErrorSystemMessage.displayName = \"ErrorSystemMessage\";\nexport const WarningSystemMessage = systemFactory(\"warning\");\nWarningSystemMessage.displayName = \"WarningSystemMessage\";\nexport const SuccessSystemMessage = systemFactory(\"success\");\nSuccessSystemMessage.displayName = \"SuccessSystemMessage\";\n"],"names":["systemFactory","messageType","id","className","density","maxContentWidth","paddingLeft","role","dismissed","dismissAction","children","rest","systemId","useId","generateSuffix","jsx","clsx","jsxs","style","maxWidth","MessageIcon","handleDismiss","DismissButton","label","buttonTitle","onClick","InfoSystemMessage","displayName","ErrorSystemMessage","WarningSystemMessage","SuccessSystemMessage"],"mappings":"sRAwBA,SAASA,EACLC,GA2DO,MAzD6C,EAChDC,GAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,gBAAAA,EACAC,YAAAA,EACAC,KAAAA,EAAO,SACPC,UAAAA,EACAC,cAAAA,EACAC,SAAAA,KACGC,MAEG,MAAAC,EAAWC,EAAAA,MAAMX,GAAM,qBAAsB,CAC/CY,gBAAiBZ,IAIjB,OAAAa,EAAAA,IAAC,MAAA,CACGR,KAAAA,KACII,EACJT,GAAIU,EACJT,UAAWa,EAAAA,KACP,qBACA,uBAAyBf,EACzBE,EACA,CACI,gCAAiCK,IAGzC,eAAcJ,EAEdM,SAAAO,EAAAA,KAAC,MAAA,CACGd,UAAU,8BACV,cAAY,yBACZ,aAAW,QACXe,MAAO,CACHC,SAAUd,EACVC,YAAAA,GAGJI,SAAA,CAAAK,MAACK,EAAAA,aAAYnB,YAAAA,IACZc,EAAAA,IAAA,OAAA,CAAKZ,UAAU,8BACXO,SAAAA,KAEJ,MAAAD,OAAAA,EAAAA,EAAeY,gBACZN,EAAAA,IAACO,EAAAA,cAAA,CACG,aAAW,QACX,gBAAeV,EACfT,UAAU,qCACVoB,MAAOd,EAAce,aAAe,OACpCC,QAAShB,EAAcY,oBAGnC,CAKhB,CAEa,MAAAK,EAAoB1B,EAAc,QAC/C0B,EAAkBC,YAAc,oBACnB,MAAAC,EAAqB5B,EAAc,SAChD4B,EAAmBD,YAAc,qBACpB,MAAAE,EAAuB7B,EAAc,WAClD6B,EAAqBF,YAAc,uBACtB,MAAAG,EAAuB9B,EAAc,WAClD8B,EAAqBH,YAAc"}
1
+ {"version":3,"file":"SystemMessage.cjs","sources":["../../../../src/components/system-message/SystemMessage.tsx"],"sourcesContent":["import clsx from \"clsx\";\nimport React from \"react\";\nimport { useId } from \"../../hooks/useId/useId.js\";\nimport { DismissButton } from \"../message/DismissButton.js\";\nimport { MessageIcon } from \"./common/MessageIcon.js\";\nimport { SystemMessageProps } from \"./types.js\";\n\ntype messageTypes = \"info\" | \"error\" | \"success\" | \"warning\";\n\nfunction systemFactory(\n messageType: messageTypes,\n): React.FC<SystemMessageProps> {\n const SystemMessage: React.FC<SystemMessageProps> = ({\n id,\n className,\n density,\n maxContentWidth,\n paddingLeft,\n role = \"status\",\n dismissed,\n dismissAction,\n children,\n ...rest\n }) => {\n const systemId = useId(id || \"jkl-system-message\", {\n generateSuffix: !id,\n });\n\n return (\n <div\n role={role}\n {...rest}\n id={systemId}\n className={clsx(\n \"jkl-system-message\",\n \"jkl-system-message--\" + messageType,\n className,\n {\n \"jkl-system-message--dismissed\": dismissed,\n },\n )}\n data-density={density}\n >\n <div\n className=\"jkl-system-message__content\"\n data-testid=\"system-message-content\"\n data-theme=\"light\"\n style={{\n maxWidth: maxContentWidth,\n paddingLeft,\n }}\n >\n <MessageIcon messageType={messageType} />\n <span className=\"jkl-system-message__message\">\n {children}\n </span>\n {dismissAction?.handleDismiss && (\n <DismissButton\n data-theme=\"light\"\n aria-controls={systemId}\n className=\"jkl-system-message__dismiss-button\"\n label={dismissAction.buttonTitle || \"Lukk\"}\n onClick={dismissAction.handleDismiss}\n />\n )}\n </div>\n </div>\n );\n };\n return SystemMessage;\n}\n\nexport const InfoSystemMessage = systemFactory(\"info\");\nInfoSystemMessage.displayName = \"InfoSystemMessage\";\nexport const ErrorSystemMessage = systemFactory(\"error\");\nErrorSystemMessage.displayName = \"ErrorSystemMessage\";\nexport const WarningSystemMessage = systemFactory(\"warning\");\nWarningSystemMessage.displayName = \"WarningSystemMessage\";\nexport const SuccessSystemMessage = systemFactory(\"success\");\nSuccessSystemMessage.displayName = \"SuccessSystemMessage\";\n"],"names":["systemFactory","messageType","id","className","density","maxContentWidth","paddingLeft","role","dismissed","dismissAction","children","rest","systemId","useId","generateSuffix","jsx","clsx","jsxs","style","maxWidth","MessageIcon","handleDismiss","DismissButton","label","buttonTitle","onClick","InfoSystemMessage","displayName","ErrorSystemMessage","WarningSystemMessage","SuccessSystemMessage"],"mappings":"sRASA,SAASA,EACLC,GA2DO,MAzD6C,EAChDC,GAAAA,EACAC,UAAAA,EACAC,QAAAA,EACAC,gBAAAA,EACAC,YAAAA,EACAC,KAAAA,EAAO,SACPC,UAAAA,EACAC,cAAAA,EACAC,SAAAA,KACGC,MAEG,MAAAC,EAAWC,EAAAA,MAAMX,GAAM,qBAAsB,CAC/CY,gBAAiBZ,IAIjB,OAAAa,EAAAA,IAAC,MAAA,CACGR,KAAAA,KACII,EACJT,GAAIU,EACJT,UAAWa,EAAAA,KACP,qBACA,uBAAyBf,EACzBE,EACA,CACI,gCAAiCK,IAGzC,eAAcJ,EAEdM,SAAAO,EAAAA,KAAC,MAAA,CACGd,UAAU,8BACV,cAAY,yBACZ,aAAW,QACXe,MAAO,CACHC,SAAUd,EACVC,YAAAA,GAGJI,SAAA,CAAAK,MAACK,EAAAA,aAAYnB,YAAAA,IACZc,EAAAA,IAAA,OAAA,CAAKZ,UAAU,8BACXO,SAAAA,KAEJ,MAAAD,OAAAA,EAAAA,EAAeY,gBACZN,EAAAA,IAACO,EAAAA,cAAA,CACG,aAAW,QACX,gBAAeV,EACfT,UAAU,qCACVoB,MAAOd,EAAce,aAAe,OACpCC,QAAShB,EAAcY,oBAGnC,CAKhB,CAEa,MAAAK,EAAoB1B,EAAc,QAC/C0B,EAAkBC,YAAc,oBACnB,MAAAC,EAAqB5B,EAAc,SAChD4B,EAAmBD,YAAc,qBACpB,MAAAE,EAAuB7B,EAAc,WAClD6B,EAAqBF,YAAc,uBACtB,MAAAG,EAAuB9B,EAAc,WAClD8B,EAAqBH,YAAc"}
@@ -1,19 +1,5 @@
1
1
  import { default as React } from 'react';
2
- import { Density, WithChildren } from '../../core/types.cjs';
3
- export interface SystemMessageProps extends WithChildren {
4
- id?: string;
5
- className?: string;
6
- density?: Density;
7
- maxContentWidth?: string;
8
- paddingLeft?: string;
9
- /** Overstyr standardrollen til meldingen. Om du ønsker å "skru av" rollen kan du bruke verdien `none presentation`. */
10
- role?: string;
11
- dismissed?: boolean;
12
- dismissAction?: {
13
- handleDismiss: () => void;
14
- buttonTitle?: string;
15
- };
16
- }
2
+ import { SystemMessageProps } from './types.cjs';
17
3
  export declare const InfoSystemMessage: React.FC<SystemMessageProps>;
18
4
  export declare const ErrorSystemMessage: React.FC<SystemMessageProps>;
19
5
  export declare const WarningSystemMessage: React.FC<SystemMessageProps>;
@@ -1 +1,2 @@
1
- export { InfoSystemMessage, WarningSystemMessage, ErrorSystemMessage, SuccessSystemMessage, type SystemMessageProps, } from './SystemMessage.cjs';
1
+ export { InfoSystemMessage, WarningSystemMessage, ErrorSystemMessage, SuccessSystemMessage, } from './SystemMessage.cjs';
2
+ export type { SystemMessageProps } from './types.cjs';
@@ -0,0 +1,2 @@
1
+ "use strict";
2
+ //# sourceMappingURL=types.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.cjs","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -0,0 +1,15 @@
1
+ import { Density, WithChildren } from '../../core/types.cjs';
2
+ export interface SystemMessageProps extends WithChildren {
3
+ id?: string;
4
+ className?: string;
5
+ density?: Density;
6
+ maxContentWidth?: string;
7
+ paddingLeft?: string;
8
+ /** Overstyr standardrollen til meldingen. Om du ønsker å "skru av" rollen kan du bruke verdien `none presentation`. */
9
+ role?: string;
10
+ dismissed?: boolean;
11
+ dismissAction?: {
12
+ handleDismiss: () => void;
13
+ buttonTitle?: string;
14
+ };
15
+ }