@digdir/designsystemet-react 0.52.0-alpha.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 (769) hide show
  1. package/LICENSE +7 -0
  2. package/README.md +12 -0
  3. package/dist/cjs/components/Accordion/Accordion.js +14 -0
  4. package/dist/cjs/components/Accordion/Accordion.module.css.js +6 -0
  5. package/dist/cjs/components/Accordion/AccordionContent/AccordionContent.js +22 -0
  6. package/dist/cjs/components/Accordion/AccordionHeader/AccordionHeader.js +28 -0
  7. package/dist/cjs/components/Accordion/AccordionItem/AccordionItem.js +28 -0
  8. package/dist/cjs/components/Accordion/index.js +20 -0
  9. package/dist/cjs/components/Alert/Alert.js +28 -0
  10. package/dist/cjs/components/Box/Box.js +16 -0
  11. package/dist/cjs/components/Box/Box.module.css.js +6 -0
  12. package/dist/cjs/components/Button/Button.js +20 -0
  13. package/dist/cjs/components/Button/Button.module.css.js +6 -0
  14. package/dist/cjs/components/Card/Card.js +17 -0
  15. package/dist/cjs/components/Card/Card.module.css.js +6 -0
  16. package/dist/cjs/components/Card/CardContent.js +16 -0
  17. package/dist/cjs/components/Card/CardFooter.js +16 -0
  18. package/dist/cjs/components/Card/CardHeader.js +16 -0
  19. package/dist/cjs/components/Card/CardMedia.js +16 -0
  20. package/dist/cjs/components/Card/index.js +24 -0
  21. package/dist/cjs/components/Chip/Chip.module.css.js +6 -0
  22. package/dist/cjs/components/Chip/Group/Group.js +14 -0
  23. package/dist/cjs/components/Chip/Removable/Removable.js +19 -0
  24. package/dist/cjs/components/Chip/Toggle/Toggle.js +20 -0
  25. package/dist/cjs/components/Chip/index.js +20 -0
  26. package/dist/cjs/components/Divider/Divider.js +15 -0
  27. package/dist/cjs/components/Divider/Divider.module.css.js +6 -0
  28. package/dist/cjs/components/DropdownMenu/DropdownMenu.js +37 -0
  29. package/dist/cjs/components/DropdownMenu/DropdownMenu.module.css.js +6 -0
  30. package/dist/cjs/components/DropdownMenu/DropdownMenuContent.js +75 -0
  31. package/dist/cjs/components/DropdownMenu/DropdownMenuGroup/DropdownMenuGroup.js +18 -0
  32. package/dist/cjs/components/DropdownMenu/DropdownMenuGroup/DropdownMenuGroup.module.css.js +6 -0
  33. package/dist/cjs/components/DropdownMenu/DropdownMenuItem/DropdownMenuItem.js +16 -0
  34. package/dist/cjs/components/DropdownMenu/DropdownMenuItem/DropdownMenuItem.module.css.js +6 -0
  35. package/dist/cjs/components/DropdownMenu/DropdownMenuTrigger.js +20 -0
  36. package/dist/cjs/components/DropdownMenu/index.js +24 -0
  37. package/dist/cjs/components/ErrorSummary/ErrorSummary.module.css.js +6 -0
  38. package/dist/cjs/components/ErrorSummary/ErrorSummaryHeading.js +20 -0
  39. package/dist/cjs/components/ErrorSummary/ErrorSummaryItem.js +13 -0
  40. package/dist/cjs/components/ErrorSummary/ErrorSummaryList.js +12 -0
  41. package/dist/cjs/components/ErrorSummary/ErrorSummaryRoot.js +23 -0
  42. package/dist/cjs/components/ErrorSummary/index.js +23 -0
  43. package/dist/cjs/components/HelpText/HelpText.js +18 -0
  44. package/dist/cjs/components/HelpText/HelpText.module.css.js +6 -0
  45. package/dist/cjs/components/HelpText/HelpTextIcon.js +14 -0
  46. package/dist/cjs/components/Link/Link.js +16 -0
  47. package/dist/cjs/components/Link/Link.module.css.js +6 -0
  48. package/dist/cjs/components/List/List.module.css.js +6 -0
  49. package/dist/cjs/components/List/ListHeading.js +28 -0
  50. package/dist/cjs/components/List/ListItem.js +16 -0
  51. package/dist/cjs/components/List/ListRoot.js +21 -0
  52. package/dist/cjs/components/List/Lists.js +26 -0
  53. package/dist/cjs/components/List/index.js +26 -0
  54. package/dist/cjs/components/Modal/Modal.module.css.js +6 -0
  55. package/dist/cjs/components/Modal/ModalContent/ModaContent.js +16 -0
  56. package/dist/cjs/components/Modal/ModalContent/ModalContent.module.css.js +6 -0
  57. package/dist/cjs/components/Modal/ModalDialog.js +74 -0
  58. package/dist/cjs/components/Modal/ModalFooter/ModalFooter.js +16 -0
  59. package/dist/cjs/components/Modal/ModalFooter/ModalFooter.module.css.js +6 -0
  60. package/dist/cjs/components/Modal/ModalHeader/ModalHeader.js +22 -0
  61. package/dist/cjs/components/Modal/ModalHeader/ModalHeader.module.css.js +6 -0
  62. package/dist/cjs/components/Modal/ModalRoot.js +25 -0
  63. package/dist/cjs/components/Modal/ModalTrigger/ModalTrigger.js +15 -0
  64. package/dist/cjs/components/Modal/index.js +30 -0
  65. package/dist/cjs/components/Modal/useModalState.js +30 -0
  66. package/dist/cjs/components/Modal/useScrollLock.js +29 -0
  67. package/dist/cjs/components/Pagination/Pagination.js +35 -0
  68. package/dist/cjs/components/Pagination/Pagination.module.css.js +6 -0
  69. package/dist/cjs/components/Pagination/PaginationButton.js +14 -0
  70. package/dist/cjs/components/Pagination/PaginationContent.js +17 -0
  71. package/dist/cjs/components/Pagination/PaginationEllipsis.js +20 -0
  72. package/dist/cjs/components/Pagination/PaginationItem.js +21 -0
  73. package/dist/cjs/components/Pagination/PaginationNextPrev.js +16 -0
  74. package/dist/cjs/components/Pagination/PaginationRoot.js +22 -0
  75. package/dist/cjs/components/Pagination/index.js +35 -0
  76. package/dist/cjs/components/Pagination/usePagination.js +65 -0
  77. package/dist/cjs/components/Popover/Popover.js +68 -0
  78. package/dist/cjs/components/Popover/Popover.module.css.js +6 -0
  79. package/dist/cjs/components/Popover/PopoverContent.js +107 -0
  80. package/dist/cjs/components/Popover/PopoverTrigger.js +23 -0
  81. package/dist/cjs/components/Popover/index.js +16 -0
  82. package/dist/cjs/components/Skeleton/Circle/Circle.js +16 -0
  83. package/dist/cjs/components/Skeleton/Rectangle/Rectangle.js +18 -0
  84. package/dist/cjs/components/Skeleton/Skeleton.module.css.js +6 -0
  85. package/dist/cjs/components/Skeleton/Text/Text.js +18 -0
  86. package/dist/cjs/components/Skeleton/index.js +20 -0
  87. package/dist/cjs/components/SkipLink/SkipLink.js +14 -0
  88. package/dist/cjs/components/SkipLink/SkipLink.module.css.js +6 -0
  89. package/dist/cjs/components/Spinner/Spinner.js +25 -0
  90. package/dist/cjs/components/Spinner/Spinner.module.css.js +6 -0
  91. package/dist/cjs/components/Table/Table.js +34 -0
  92. package/dist/cjs/components/Table/Table.module.css.js +6 -0
  93. package/dist/cjs/components/Table/TableBody.js +31 -0
  94. package/dist/cjs/components/Table/TableCell.js +33 -0
  95. package/dist/cjs/components/Table/TableHead.js +33 -0
  96. package/dist/cjs/components/Table/TableHeaderCell.js +40 -0
  97. package/dist/cjs/components/Table/TableRow.js +33 -0
  98. package/dist/cjs/components/Table/index.js +29 -0
  99. package/dist/cjs/components/Tabs/Tab/Tab.js +18 -0
  100. package/dist/cjs/components/Tabs/Tab/Tab.module.css.js +6 -0
  101. package/dist/cjs/components/Tabs/Tab/useTab.js +26 -0
  102. package/dist/cjs/components/Tabs/TabContent/TabContent.js +18 -0
  103. package/dist/cjs/components/Tabs/TabContent/TabContent.module.css.js +6 -0
  104. package/dist/cjs/components/Tabs/TabList/TabList.js +15 -0
  105. package/dist/cjs/components/Tabs/TabList/TabList.module.css.js +6 -0
  106. package/dist/cjs/components/Tabs/Tabs.js +29 -0
  107. package/dist/cjs/components/Tabs/index.js +20 -0
  108. package/dist/cjs/components/Tag/Tag.js +15 -0
  109. package/dist/cjs/components/Tag/Tag.module.css.js +6 -0
  110. package/dist/cjs/components/ToggleGroup/ToggleGroup.js +44 -0
  111. package/dist/cjs/components/ToggleGroup/ToggleGroup.module.css.js +6 -0
  112. package/dist/cjs/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.js +19 -0
  113. package/dist/cjs/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.module.css.js +6 -0
  114. package/dist/cjs/components/ToggleGroup/ToggleGroupItem/useToggleGroupitem.js +31 -0
  115. package/dist/cjs/components/ToggleGroup/index.js +12 -0
  116. package/dist/cjs/components/Tooltip/Tooltip.js +89 -0
  117. package/dist/cjs/components/Tooltip/Tooltip.module.css.js +6 -0
  118. package/dist/cjs/components/Typography/ErrorMessage/ErrorMessage.js +19 -0
  119. package/dist/cjs/components/Typography/ErrorMessage/ErrorMessage.module.css.js +6 -0
  120. package/dist/cjs/components/Typography/Heading/Heading.js +21 -0
  121. package/dist/cjs/components/Typography/Heading/Heading.module.css.js +6 -0
  122. package/dist/cjs/components/Typography/Ingress/Ingress.js +19 -0
  123. package/dist/cjs/components/Typography/Ingress/Ingress.module.css.js +6 -0
  124. package/dist/cjs/components/Typography/Label/Label.js +22 -0
  125. package/dist/cjs/components/Typography/Label/Label.module.css.js +6 -0
  126. package/dist/cjs/components/Typography/Paragraph/Paragraph.js +20 -0
  127. package/dist/cjs/components/Typography/Paragraph/Paragraph.module.css.js +6 -0
  128. package/dist/cjs/components/form/CharacterCounter.js +18 -0
  129. package/dist/cjs/components/form/Checkbox/Checkbox.js +29 -0
  130. package/dist/cjs/components/form/Checkbox/Checkbox.module.css.js +6 -0
  131. package/dist/cjs/components/form/Checkbox/Group/Group.js +30 -0
  132. package/dist/cjs/components/form/Checkbox/index.js +13 -0
  133. package/dist/cjs/components/form/Checkbox/useCheckbox.js +44 -0
  134. package/dist/cjs/components/form/Combobox/Combobox.js +304 -0
  135. package/dist/cjs/components/form/Combobox/Combobox.module.css.js +6 -0
  136. package/dist/cjs/components/form/Combobox/Custom/Custom.js +35 -0
  137. package/dist/cjs/components/form/Combobox/Custom/Custom.module.css.js +6 -0
  138. package/dist/cjs/components/form/Combobox/Empty/Empty.js +23 -0
  139. package/dist/cjs/components/form/Combobox/Empty/Empty.module.css.js +6 -0
  140. package/dist/cjs/components/form/Combobox/Option/Description/Description.js +18 -0
  141. package/dist/cjs/components/form/Combobox/Option/Description/Description.module.css.js +6 -0
  142. package/dist/cjs/components/form/Combobox/Option/Icon/SelectedIcon.js +17 -0
  143. package/dist/cjs/components/form/Combobox/Option/Option.js +53 -0
  144. package/dist/cjs/components/form/Combobox/Option/Option.module.css.js +6 -0
  145. package/dist/cjs/components/form/Combobox/index.js +16 -0
  146. package/dist/cjs/components/form/Combobox/internal/ComboboxChips.js +46 -0
  147. package/dist/cjs/components/form/Combobox/internal/ComboboxClearButton.js +44 -0
  148. package/dist/cjs/components/form/Combobox/internal/ComboboxError.js +17 -0
  149. package/dist/cjs/components/form/Combobox/internal/ComboboxInput.js +108 -0
  150. package/dist/cjs/components/form/Combobox/internal/ComboboxLabel.js +21 -0
  151. package/dist/cjs/components/form/Combobox/internal/ComboboxNative.js +17 -0
  152. package/dist/cjs/components/form/Combobox/useCombobox.js +123 -0
  153. package/dist/cjs/components/form/Fieldset/Fieldset.js +31 -0
  154. package/dist/cjs/components/form/Fieldset/Fieldset.module.css.js +6 -0
  155. package/dist/cjs/components/form/Fieldset/useFieldset.js +19 -0
  156. package/dist/cjs/components/form/NativeSelect/NativeSelect.js +23 -0
  157. package/dist/cjs/components/form/NativeSelect/NativeSelect.module.css.js +6 -0
  158. package/dist/cjs/components/form/NativeSelect/useNativeSelect.js +37 -0
  159. package/dist/cjs/components/form/Radio/Group/Group.js +24 -0
  160. package/dist/cjs/components/form/Radio/Group/Group.module.css.js +6 -0
  161. package/dist/cjs/components/form/Radio/Radio.js +20 -0
  162. package/dist/cjs/components/form/Radio/Radio.module.css.js +6 -0
  163. package/dist/cjs/components/form/Radio/index.js +13 -0
  164. package/dist/cjs/components/form/Radio/useRadio.js +46 -0
  165. package/dist/cjs/components/form/Search/Search.js +50 -0
  166. package/dist/cjs/components/form/Search/Search.module.css.js +6 -0
  167. package/dist/cjs/components/form/Search/useSearch.js +45 -0
  168. package/dist/cjs/components/form/Switch/Switch.js +21 -0
  169. package/dist/cjs/components/form/Switch/Switch.module.css.js +6 -0
  170. package/dist/cjs/components/form/Switch/useSwitch.js +45 -0
  171. package/dist/cjs/components/form/Textarea/Textarea.js +38 -0
  172. package/dist/cjs/components/form/Textarea/Textarea.module.css.js +6 -0
  173. package/dist/cjs/components/form/Textarea/useTextarea.js +37 -0
  174. package/dist/cjs/components/form/Textfield/Textfield.js +38 -0
  175. package/dist/cjs/components/form/Textfield/Textfield.module.css.js +6 -0
  176. package/dist/cjs/components/form/Textfield/useTextfield.js +37 -0
  177. package/dist/cjs/components/form/useFormField.js +39 -0
  178. package/dist/cjs/hooks/useIsomorphicLayoutEffect.js +8 -0
  179. package/dist/cjs/hooks/useMediaQuery.js +21 -0
  180. package/dist/cjs/hooks/usePrevious.js +14 -0
  181. package/dist/cjs/hooks/useSynchronizedAnimation.js +33 -0
  182. package/dist/cjs/index.js +187 -0
  183. package/dist/cjs/node_modules/@babel/runtime/helpers/esm/extends.js +19 -0
  184. package/dist/cjs/node_modules/@floating-ui/core/dist/floating-ui.core.js +636 -0
  185. package/dist/cjs/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +610 -0
  186. package/dist/cjs/node_modules/@floating-ui/react/dist/floating-ui.react.js +3004 -0
  187. package/dist/cjs/node_modules/@floating-ui/react/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +297 -0
  188. package/dist/cjs/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +6 -0
  189. package/dist/cjs/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.js +68 -0
  190. package/dist/cjs/node_modules/@floating-ui/react/utils/dist/floating-ui.react.utils.js +160 -0
  191. package/dist/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +144 -0
  192. package/dist/cjs/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.js +145 -0
  193. package/dist/cjs/node_modules/@radix-ui/react-compose-refs/dist/index.js +22 -0
  194. package/dist/cjs/node_modules/@radix-ui/react-slot/dist/index.js +85 -0
  195. package/dist/cjs/node_modules/@tanstack/react-virtual/build/lib/_virtual/_rollupPluginBabelHelpers.js +29 -0
  196. package/dist/cjs/node_modules/@tanstack/react-virtual/build/lib/index.js +84 -0
  197. package/dist/cjs/node_modules/@tanstack/virtual-core/build/lib/_virtual/_rollupPluginBabelHelpers.js +29 -0
  198. package/dist/cjs/node_modules/@tanstack/virtual-core/build/lib/index.js +607 -0
  199. package/dist/cjs/node_modules/@tanstack/virtual-core/build/lib/utils.js +62 -0
  200. package/dist/cjs/node_modules/clsx/dist/clsx.js +9 -0
  201. package/dist/cjs/node_modules/tabbable/dist/index.esm.js +506 -0
  202. package/dist/cjs/react-components.css +3614 -0
  203. package/dist/cjs/utilities/AnimateHeight/AnimateHeight.js +44 -0
  204. package/dist/cjs/utilities/AnimateHeight/AnimateHeight.module.css.js +6 -0
  205. package/dist/cjs/utilities/RovingTabIndex/RovingTabindexItem.js +44 -0
  206. package/dist/cjs/utilities/RovingTabIndex/RovingTabindexRoot.js +66 -0
  207. package/dist/cjs/utilities/RovingTabIndex/useRovingTabindex.js +42 -0
  208. package/dist/cjs/utilities/objectUtils.js +28 -0
  209. package/dist/cjs/utilities/useDebounce.js +27 -0
  210. package/dist/cjs/utilities/utility.module.css.js +6 -0
  211. package/dist/esm/components/Accordion/Accordion.js +12 -0
  212. package/dist/esm/components/Accordion/Accordion.module.css.js +4 -0
  213. package/dist/esm/components/Accordion/AccordionContent/AccordionContent.js +20 -0
  214. package/dist/esm/components/Accordion/AccordionHeader/AccordionHeader.js +26 -0
  215. package/dist/esm/components/Accordion/AccordionItem/AccordionItem.js +25 -0
  216. package/dist/esm/components/Accordion/index.js +15 -0
  217. package/dist/esm/components/Alert/Alert.js +26 -0
  218. package/dist/esm/components/Box/Box.js +14 -0
  219. package/dist/esm/components/Box/Box.module.css.js +4 -0
  220. package/dist/esm/components/Button/Button.js +18 -0
  221. package/dist/esm/components/Button/Button.module.css.js +4 -0
  222. package/dist/esm/components/Card/Card.js +15 -0
  223. package/dist/esm/components/Card/Card.module.css.js +4 -0
  224. package/dist/esm/components/Card/CardContent.js +14 -0
  225. package/dist/esm/components/Card/CardFooter.js +14 -0
  226. package/dist/esm/components/Card/CardHeader.js +14 -0
  227. package/dist/esm/components/Card/CardMedia.js +14 -0
  228. package/dist/esm/components/Card/index.js +18 -0
  229. package/dist/esm/components/Chip/Chip.module.css.js +4 -0
  230. package/dist/esm/components/Chip/Group/Group.js +11 -0
  231. package/dist/esm/components/Chip/Removable/Removable.js +17 -0
  232. package/dist/esm/components/Chip/Toggle/Toggle.js +18 -0
  233. package/dist/esm/components/Chip/index.js +15 -0
  234. package/dist/esm/components/Divider/Divider.js +13 -0
  235. package/dist/esm/components/Divider/Divider.module.css.js +4 -0
  236. package/dist/esm/components/DropdownMenu/DropdownMenu.js +34 -0
  237. package/dist/esm/components/DropdownMenu/DropdownMenu.module.css.js +4 -0
  238. package/dist/esm/components/DropdownMenu/DropdownMenuContent.js +55 -0
  239. package/dist/esm/components/DropdownMenu/DropdownMenuGroup/DropdownMenuGroup.js +16 -0
  240. package/dist/esm/components/DropdownMenu/DropdownMenuGroup/DropdownMenuGroup.module.css.js +4 -0
  241. package/dist/esm/components/DropdownMenu/DropdownMenuItem/DropdownMenuItem.js +14 -0
  242. package/dist/esm/components/DropdownMenu/DropdownMenuItem/DropdownMenuItem.module.css.js +4 -0
  243. package/dist/esm/components/DropdownMenu/DropdownMenuTrigger.js +18 -0
  244. package/dist/esm/components/DropdownMenu/index.js +18 -0
  245. package/dist/esm/components/ErrorSummary/ErrorSummary.module.css.js +4 -0
  246. package/dist/esm/components/ErrorSummary/ErrorSummaryHeading.js +18 -0
  247. package/dist/esm/components/ErrorSummary/ErrorSummaryItem.js +11 -0
  248. package/dist/esm/components/ErrorSummary/ErrorSummaryList.js +10 -0
  249. package/dist/esm/components/ErrorSummary/ErrorSummaryRoot.js +20 -0
  250. package/dist/esm/components/ErrorSummary/index.js +17 -0
  251. package/dist/esm/components/HelpText/HelpText.js +16 -0
  252. package/dist/esm/components/HelpText/HelpText.module.css.js +4 -0
  253. package/dist/esm/components/HelpText/HelpTextIcon.js +12 -0
  254. package/dist/esm/components/Link/Link.js +14 -0
  255. package/dist/esm/components/Link/Link.module.css.js +4 -0
  256. package/dist/esm/components/List/List.module.css.js +4 -0
  257. package/dist/esm/components/List/ListHeading.js +26 -0
  258. package/dist/esm/components/List/ListItem.js +14 -0
  259. package/dist/esm/components/List/ListRoot.js +18 -0
  260. package/dist/esm/components/List/Lists.js +23 -0
  261. package/dist/esm/components/List/index.js +19 -0
  262. package/dist/esm/components/Modal/Modal.module.css.js +4 -0
  263. package/dist/esm/components/Modal/ModalContent/ModaContent.js +14 -0
  264. package/dist/esm/components/Modal/ModalContent/ModalContent.module.css.js +4 -0
  265. package/dist/esm/components/Modal/ModalDialog.js +72 -0
  266. package/dist/esm/components/Modal/ModalFooter/ModalFooter.js +14 -0
  267. package/dist/esm/components/Modal/ModalFooter/ModalFooter.module.css.js +4 -0
  268. package/dist/esm/components/Modal/ModalHeader/ModalHeader.js +20 -0
  269. package/dist/esm/components/Modal/ModalHeader/ModalHeader.module.css.js +4 -0
  270. package/dist/esm/components/Modal/ModalRoot.js +22 -0
  271. package/dist/esm/components/Modal/ModalTrigger/ModalTrigger.js +13 -0
  272. package/dist/esm/components/Modal/index.js +23 -0
  273. package/dist/esm/components/Modal/useModalState.js +28 -0
  274. package/dist/esm/components/Modal/useScrollLock.js +27 -0
  275. package/dist/esm/components/Pagination/Pagination.js +33 -0
  276. package/dist/esm/components/Pagination/Pagination.module.css.js +4 -0
  277. package/dist/esm/components/Pagination/PaginationButton.js +12 -0
  278. package/dist/esm/components/Pagination/PaginationContent.js +15 -0
  279. package/dist/esm/components/Pagination/PaginationEllipsis.js +15 -0
  280. package/dist/esm/components/Pagination/PaginationItem.js +16 -0
  281. package/dist/esm/components/Pagination/PaginationNextPrev.js +13 -0
  282. package/dist/esm/components/Pagination/PaginationRoot.js +16 -0
  283. package/dist/esm/components/Pagination/index.js +26 -0
  284. package/dist/esm/components/Pagination/usePagination.js +63 -0
  285. package/dist/esm/components/Popover/Popover.js +47 -0
  286. package/dist/esm/components/Popover/Popover.module.css.js +4 -0
  287. package/dist/esm/components/Popover/PopoverContent.js +87 -0
  288. package/dist/esm/components/Popover/PopoverTrigger.js +21 -0
  289. package/dist/esm/components/Popover/index.js +12 -0
  290. package/dist/esm/components/Skeleton/Circle/Circle.js +14 -0
  291. package/dist/esm/components/Skeleton/Rectangle/Rectangle.js +16 -0
  292. package/dist/esm/components/Skeleton/Skeleton.module.css.js +4 -0
  293. package/dist/esm/components/Skeleton/Text/Text.js +16 -0
  294. package/dist/esm/components/Skeleton/index.js +15 -0
  295. package/dist/esm/components/SkipLink/SkipLink.js +12 -0
  296. package/dist/esm/components/SkipLink/SkipLink.module.css.js +4 -0
  297. package/dist/esm/components/Spinner/Spinner.js +23 -0
  298. package/dist/esm/components/Spinner/Spinner.module.css.js +4 -0
  299. package/dist/esm/components/Table/Table.js +13 -0
  300. package/dist/esm/components/Table/Table.module.css.js +4 -0
  301. package/dist/esm/components/Table/TableBody.js +10 -0
  302. package/dist/esm/components/Table/TableCell.js +12 -0
  303. package/dist/esm/components/Table/TableHead.js +12 -0
  304. package/dist/esm/components/Table/TableHeaderCell.js +19 -0
  305. package/dist/esm/components/Table/TableRow.js +12 -0
  306. package/dist/esm/components/Table/index.js +22 -0
  307. package/dist/esm/components/Tabs/Tab/Tab.js +16 -0
  308. package/dist/esm/components/Tabs/Tab/Tab.module.css.js +4 -0
  309. package/dist/esm/components/Tabs/Tab/useTab.js +24 -0
  310. package/dist/esm/components/Tabs/TabContent/TabContent.js +16 -0
  311. package/dist/esm/components/Tabs/TabContent/TabContent.module.css.js +4 -0
  312. package/dist/esm/components/Tabs/TabList/TabList.js +13 -0
  313. package/dist/esm/components/Tabs/TabList/TabList.module.css.js +4 -0
  314. package/dist/esm/components/Tabs/Tabs.js +26 -0
  315. package/dist/esm/components/Tabs/index.js +15 -0
  316. package/dist/esm/components/Tag/Tag.js +13 -0
  317. package/dist/esm/components/Tag/Tag.module.css.js +4 -0
  318. package/dist/esm/components/ToggleGroup/ToggleGroup.js +41 -0
  319. package/dist/esm/components/ToggleGroup/ToggleGroup.module.css.js +4 -0
  320. package/dist/esm/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.js +17 -0
  321. package/dist/esm/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.module.css.js +4 -0
  322. package/dist/esm/components/ToggleGroup/ToggleGroupItem/useToggleGroupitem.js +29 -0
  323. package/dist/esm/components/ToggleGroup/index.js +9 -0
  324. package/dist/esm/components/Tooltip/Tooltip.js +69 -0
  325. package/dist/esm/components/Tooltip/Tooltip.module.css.js +4 -0
  326. package/dist/esm/components/Typography/ErrorMessage/ErrorMessage.js +17 -0
  327. package/dist/esm/components/Typography/ErrorMessage/ErrorMessage.module.css.js +4 -0
  328. package/dist/esm/components/Typography/Heading/Heading.js +19 -0
  329. package/dist/esm/components/Typography/Heading/Heading.module.css.js +4 -0
  330. package/dist/esm/components/Typography/Ingress/Ingress.js +17 -0
  331. package/dist/esm/components/Typography/Ingress/Ingress.module.css.js +4 -0
  332. package/dist/esm/components/Typography/Label/Label.js +20 -0
  333. package/dist/esm/components/Typography/Label/Label.module.css.js +4 -0
  334. package/dist/esm/components/Typography/Paragraph/Paragraph.js +18 -0
  335. package/dist/esm/components/Typography/Paragraph/Paragraph.module.css.js +4 -0
  336. package/dist/esm/components/form/CharacterCounter.js +16 -0
  337. package/dist/esm/components/form/Checkbox/Checkbox.js +27 -0
  338. package/dist/esm/components/form/Checkbox/Checkbox.module.css.js +4 -0
  339. package/dist/esm/components/form/Checkbox/Group/Group.js +27 -0
  340. package/dist/esm/components/form/Checkbox/index.js +10 -0
  341. package/dist/esm/components/form/Checkbox/useCheckbox.js +42 -0
  342. package/dist/esm/components/form/Combobox/Combobox.js +301 -0
  343. package/dist/esm/components/form/Combobox/Combobox.module.css.js +4 -0
  344. package/dist/esm/components/form/Combobox/Custom/Custom.js +30 -0
  345. package/dist/esm/components/form/Combobox/Custom/Custom.module.css.js +4 -0
  346. package/dist/esm/components/form/Combobox/Empty/Empty.js +18 -0
  347. package/dist/esm/components/form/Combobox/Empty/Empty.module.css.js +4 -0
  348. package/dist/esm/components/form/Combobox/Option/Description/Description.js +13 -0
  349. package/dist/esm/components/form/Combobox/Option/Description/Description.module.css.js +4 -0
  350. package/dist/esm/components/form/Combobox/Option/Icon/SelectedIcon.js +12 -0
  351. package/dist/esm/components/form/Combobox/Option/Option.js +51 -0
  352. package/dist/esm/components/form/Combobox/Option/Option.module.css.js +4 -0
  353. package/dist/esm/components/form/Combobox/index.js +12 -0
  354. package/dist/esm/components/form/Combobox/internal/ComboboxChips.js +41 -0
  355. package/dist/esm/components/form/Combobox/internal/ComboboxClearButton.js +39 -0
  356. package/dist/esm/components/form/Combobox/internal/ComboboxError.js +12 -0
  357. package/dist/esm/components/form/Combobox/internal/ComboboxInput.js +103 -0
  358. package/dist/esm/components/form/Combobox/internal/ComboboxLabel.js +16 -0
  359. package/dist/esm/components/form/Combobox/internal/ComboboxNative.js +12 -0
  360. package/dist/esm/components/form/Combobox/useCombobox.js +98 -0
  361. package/dist/esm/components/form/Fieldset/Fieldset.js +28 -0
  362. package/dist/esm/components/form/Fieldset/Fieldset.module.css.js +4 -0
  363. package/dist/esm/components/form/Fieldset/useFieldset.js +17 -0
  364. package/dist/esm/components/form/NativeSelect/NativeSelect.js +21 -0
  365. package/dist/esm/components/form/NativeSelect/NativeSelect.module.css.js +4 -0
  366. package/dist/esm/components/form/NativeSelect/useNativeSelect.js +35 -0
  367. package/dist/esm/components/form/Radio/Group/Group.js +21 -0
  368. package/dist/esm/components/form/Radio/Group/Group.module.css.js +4 -0
  369. package/dist/esm/components/form/Radio/Radio.js +18 -0
  370. package/dist/esm/components/form/Radio/Radio.module.css.js +4 -0
  371. package/dist/esm/components/form/Radio/index.js +10 -0
  372. package/dist/esm/components/form/Radio/useRadio.js +44 -0
  373. package/dist/esm/components/form/Search/Search.js +48 -0
  374. package/dist/esm/components/form/Search/Search.module.css.js +4 -0
  375. package/dist/esm/components/form/Search/useSearch.js +43 -0
  376. package/dist/esm/components/form/Switch/Switch.js +19 -0
  377. package/dist/esm/components/form/Switch/Switch.module.css.js +4 -0
  378. package/dist/esm/components/form/Switch/useSwitch.js +43 -0
  379. package/dist/esm/components/form/Textarea/Textarea.js +36 -0
  380. package/dist/esm/components/form/Textarea/Textarea.module.css.js +4 -0
  381. package/dist/esm/components/form/Textarea/useTextarea.js +35 -0
  382. package/dist/esm/components/form/Textfield/Textfield.js +36 -0
  383. package/dist/esm/components/form/Textfield/Textfield.module.css.js +4 -0
  384. package/dist/esm/components/form/Textfield/useTextfield.js +35 -0
  385. package/dist/esm/components/form/useFormField.js +37 -0
  386. package/dist/esm/hooks/useIsomorphicLayoutEffect.js +6 -0
  387. package/dist/esm/hooks/useMediaQuery.js +19 -0
  388. package/dist/esm/hooks/usePrevious.js +12 -0
  389. package/dist/esm/hooks/useSynchronizedAnimation.js +31 -0
  390. package/dist/esm/index.js +90 -0
  391. package/dist/esm/node_modules/@babel/runtime/helpers/esm/extends.js +17 -0
  392. package/dist/esm/node_modules/@floating-ui/core/dist/floating-ui.core.js +627 -0
  393. package/dist/esm/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +600 -0
  394. package/dist/esm/node_modules/@floating-ui/react/dist/floating-ui.react.js +2964 -0
  395. package/dist/esm/node_modules/@floating-ui/react/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +269 -0
  396. package/dist/esm/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +4 -0
  397. package/dist/esm/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.js +57 -0
  398. package/dist/esm/node_modules/@floating-ui/react/utils/dist/floating-ui.react.utils.js +140 -0
  399. package/dist/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +122 -0
  400. package/dist/esm/node_modules/@floating-ui/utils/dom/dist/floating-ui.utils.dom.js +126 -0
  401. package/dist/esm/node_modules/@radix-ui/react-compose-refs/dist/index.js +20 -0
  402. package/dist/esm/node_modules/@radix-ui/react-slot/dist/index.js +82 -0
  403. package/dist/esm/node_modules/@tanstack/react-virtual/build/lib/_virtual/_rollupPluginBabelHelpers.js +27 -0
  404. package/dist/esm/node_modules/@tanstack/react-virtual/build/lib/index.js +57 -0
  405. package/dist/esm/node_modules/@tanstack/virtual-core/build/lib/_virtual/_rollupPluginBabelHelpers.js +27 -0
  406. package/dist/esm/node_modules/@tanstack/virtual-core/build/lib/index.js +596 -0
  407. package/dist/esm/node_modules/@tanstack/virtual-core/build/lib/utils.js +58 -0
  408. package/dist/esm/node_modules/clsx/dist/clsx.js +4 -0
  409. package/dist/esm/node_modules/tabbable/dist/index.esm.js +504 -0
  410. package/dist/esm/react-components.css +3614 -0
  411. package/dist/esm/utilities/AnimateHeight/AnimateHeight.js +42 -0
  412. package/dist/esm/utilities/AnimateHeight/AnimateHeight.module.css.js +4 -0
  413. package/dist/esm/utilities/RovingTabIndex/RovingTabindexItem.js +40 -0
  414. package/dist/esm/utilities/RovingTabIndex/RovingTabindexRoot.js +63 -0
  415. package/dist/esm/utilities/RovingTabIndex/useRovingTabindex.js +40 -0
  416. package/dist/esm/utilities/objectUtils.js +26 -0
  417. package/dist/esm/utilities/useDebounce.js +25 -0
  418. package/dist/esm/utilities/utility.module.css.js +4 -0
  419. package/dist/types/components/Accordion/Accordion.d.ts +18 -0
  420. package/dist/types/components/Accordion/Accordion.d.ts.map +1 -0
  421. package/dist/types/components/Accordion/AccordionContent/AccordionContent.d.ts +10 -0
  422. package/dist/types/components/Accordion/AccordionContent/AccordionContent.d.ts.map +1 -0
  423. package/dist/types/components/Accordion/AccordionContent/index.d.ts +2 -0
  424. package/dist/types/components/Accordion/AccordionContent/index.d.ts.map +1 -0
  425. package/dist/types/components/Accordion/AccordionHeader/AccordionHeader.d.ts +18 -0
  426. package/dist/types/components/Accordion/AccordionHeader/AccordionHeader.d.ts.map +1 -0
  427. package/dist/types/components/Accordion/AccordionHeader/index.d.ts +2 -0
  428. package/dist/types/components/Accordion/AccordionHeader/index.d.ts.map +1 -0
  429. package/dist/types/components/Accordion/AccordionItem/AccordionItem.d.ts +32 -0
  430. package/dist/types/components/Accordion/AccordionItem/AccordionItem.d.ts.map +1 -0
  431. package/dist/types/components/Accordion/AccordionItem/index.d.ts +2 -0
  432. package/dist/types/components/Accordion/AccordionItem/index.d.ts.map +1 -0
  433. package/dist/types/components/Accordion/index.d.ts +17 -0
  434. package/dist/types/components/Accordion/index.d.ts.map +1 -0
  435. package/dist/types/components/Alert/Alert.d.ts +26 -0
  436. package/dist/types/components/Alert/Alert.d.ts.map +1 -0
  437. package/dist/types/components/Alert/index.d.ts +2 -0
  438. package/dist/types/components/Alert/index.d.ts.map +1 -0
  439. package/dist/types/components/Box/Box.d.ts +31 -0
  440. package/dist/types/components/Box/Box.d.ts.map +1 -0
  441. package/dist/types/components/Box/index.d.ts +3 -0
  442. package/dist/types/components/Box/index.d.ts.map +1 -0
  443. package/dist/types/components/Button/Button.d.ts +26 -0
  444. package/dist/types/components/Button/Button.d.ts.map +1 -0
  445. package/dist/types/components/Button/index.d.ts +3 -0
  446. package/dist/types/components/Button/index.d.ts.map +1 -0
  447. package/dist/types/components/Card/Card.d.ts +27 -0
  448. package/dist/types/components/Card/Card.d.ts.map +1 -0
  449. package/dist/types/components/Card/CardContent.d.ts +16 -0
  450. package/dist/types/components/Card/CardContent.d.ts.map +1 -0
  451. package/dist/types/components/Card/CardFooter.d.ts +16 -0
  452. package/dist/types/components/Card/CardFooter.d.ts.map +1 -0
  453. package/dist/types/components/Card/CardHeader.d.ts +16 -0
  454. package/dist/types/components/Card/CardHeader.d.ts.map +1 -0
  455. package/dist/types/components/Card/CardMedia.d.ts +16 -0
  456. package/dist/types/components/Card/CardMedia.d.ts.map +1 -0
  457. package/dist/types/components/Card/index.d.ts +18 -0
  458. package/dist/types/components/Card/index.d.ts.map +1 -0
  459. package/dist/types/components/Chip/Group/Group.d.ts +18 -0
  460. package/dist/types/components/Chip/Group/Group.d.ts.map +1 -0
  461. package/dist/types/components/Chip/Removable/Removable.d.ts +16 -0
  462. package/dist/types/components/Chip/Removable/Removable.d.ts.map +1 -0
  463. package/dist/types/components/Chip/Toggle/Toggle.d.ts +32 -0
  464. package/dist/types/components/Chip/Toggle/Toggle.d.ts.map +1 -0
  465. package/dist/types/components/Chip/index.d.ts +23 -0
  466. package/dist/types/components/Chip/index.d.ts.map +1 -0
  467. package/dist/types/components/Divider/Divider.d.ts +16 -0
  468. package/dist/types/components/Divider/Divider.d.ts.map +1 -0
  469. package/dist/types/components/Divider/index.d.ts +3 -0
  470. package/dist/types/components/Divider/index.d.ts.map +1 -0
  471. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts +43 -0
  472. package/dist/types/components/DropdownMenu/DropdownMenu.d.ts.map +1 -0
  473. package/dist/types/components/DropdownMenu/DropdownMenuContent.d.ts +8 -0
  474. package/dist/types/components/DropdownMenu/DropdownMenuContent.d.ts.map +1 -0
  475. package/dist/types/components/DropdownMenu/DropdownMenuGroup/DropdownMenuGroup.d.ts +14 -0
  476. package/dist/types/components/DropdownMenu/DropdownMenuGroup/DropdownMenuGroup.d.ts.map +1 -0
  477. package/dist/types/components/DropdownMenu/DropdownMenuItem/DropdownMenuItem.d.ts +5 -0
  478. package/dist/types/components/DropdownMenu/DropdownMenuItem/DropdownMenuItem.d.ts.map +1 -0
  479. package/dist/types/components/DropdownMenu/DropdownMenuTrigger.d.ts +14 -0
  480. package/dist/types/components/DropdownMenu/DropdownMenuTrigger.d.ts.map +1 -0
  481. package/dist/types/components/DropdownMenu/index.d.ts +18 -0
  482. package/dist/types/components/DropdownMenu/index.d.ts.map +1 -0
  483. package/dist/types/components/ErrorSummary/ErrorSummaryHeading.d.ts +7 -0
  484. package/dist/types/components/ErrorSummary/ErrorSummaryHeading.d.ts.map +1 -0
  485. package/dist/types/components/ErrorSummary/ErrorSummaryItem.d.ts +25 -0
  486. package/dist/types/components/ErrorSummary/ErrorSummaryItem.d.ts.map +1 -0
  487. package/dist/types/components/ErrorSummary/ErrorSummaryList.d.ts +9 -0
  488. package/dist/types/components/ErrorSummary/ErrorSummaryList.d.ts.map +1 -0
  489. package/dist/types/components/ErrorSummary/ErrorSummaryRoot.d.ts +15 -0
  490. package/dist/types/components/ErrorSummary/ErrorSummaryRoot.d.ts.map +1 -0
  491. package/dist/types/components/ErrorSummary/index.d.ts +17 -0
  492. package/dist/types/components/ErrorSummary/index.d.ts.map +1 -0
  493. package/dist/types/components/HelpText/HelpText.d.ts +26 -0
  494. package/dist/types/components/HelpText/HelpText.d.ts.map +1 -0
  495. package/dist/types/components/HelpText/HelpTextIcon.d.ts +10 -0
  496. package/dist/types/components/HelpText/HelpTextIcon.d.ts.map +1 -0
  497. package/dist/types/components/HelpText/index.d.ts +3 -0
  498. package/dist/types/components/HelpText/index.d.ts.map +1 -0
  499. package/dist/types/components/Link/Link.d.ts +19 -0
  500. package/dist/types/components/Link/Link.d.ts.map +1 -0
  501. package/dist/types/components/Link/index.d.ts +3 -0
  502. package/dist/types/components/Link/index.d.ts.map +1 -0
  503. package/dist/types/components/List/ListHeading.d.ts +10 -0
  504. package/dist/types/components/List/ListHeading.d.ts.map +1 -0
  505. package/dist/types/components/List/ListItem.d.ts +16 -0
  506. package/dist/types/components/List/ListItem.d.ts.map +1 -0
  507. package/dist/types/components/List/ListRoot.d.ts +31 -0
  508. package/dist/types/components/List/ListRoot.d.ts.map +1 -0
  509. package/dist/types/components/List/Lists.d.ts +30 -0
  510. package/dist/types/components/List/Lists.d.ts.map +1 -0
  511. package/dist/types/components/List/index.d.ts +18 -0
  512. package/dist/types/components/List/index.d.ts.map +1 -0
  513. package/dist/types/components/Modal/ModalContent/ModaContent.d.ts +16 -0
  514. package/dist/types/components/Modal/ModalContent/ModaContent.d.ts.map +1 -0
  515. package/dist/types/components/Modal/ModalDialog.d.ts +38 -0
  516. package/dist/types/components/Modal/ModalDialog.d.ts.map +1 -0
  517. package/dist/types/components/Modal/ModalFooter/ModalFooter.d.ts +16 -0
  518. package/dist/types/components/Modal/ModalFooter/ModalFooter.d.ts.map +1 -0
  519. package/dist/types/components/Modal/ModalHeader/ModalHeader.d.ts +28 -0
  520. package/dist/types/components/Modal/ModalHeader/ModalHeader.d.ts.map +1 -0
  521. package/dist/types/components/Modal/ModalRoot.d.ts +16 -0
  522. package/dist/types/components/Modal/ModalRoot.d.ts.map +1 -0
  523. package/dist/types/components/Modal/ModalTrigger/ModalTrigger.d.ts +14 -0
  524. package/dist/types/components/Modal/ModalTrigger/ModalTrigger.d.ts.map +1 -0
  525. package/dist/types/components/Modal/index.d.ts +23 -0
  526. package/dist/types/components/Modal/index.d.ts.map +1 -0
  527. package/dist/types/components/Modal/useModalState.d.ts +2 -0
  528. package/dist/types/components/Modal/useModalState.d.ts.map +1 -0
  529. package/dist/types/components/Modal/useScrollLock.d.ts +3 -0
  530. package/dist/types/components/Modal/useScrollLock.d.ts.map +1 -0
  531. package/dist/types/components/Pagination/Pagination.d.ts +46 -0
  532. package/dist/types/components/Pagination/Pagination.d.ts.map +1 -0
  533. package/dist/types/components/Pagination/PaginationButton.d.ts +17 -0
  534. package/dist/types/components/Pagination/PaginationButton.d.ts.map +1 -0
  535. package/dist/types/components/Pagination/PaginationContent.d.ts +16 -0
  536. package/dist/types/components/Pagination/PaginationContent.d.ts.map +1 -0
  537. package/dist/types/components/Pagination/PaginationEllipsis.d.ts +6 -0
  538. package/dist/types/components/Pagination/PaginationEllipsis.d.ts.map +1 -0
  539. package/dist/types/components/Pagination/PaginationItem.d.ts +17 -0
  540. package/dist/types/components/Pagination/PaginationItem.d.ts.map +1 -0
  541. package/dist/types/components/Pagination/PaginationNextPrev.d.ts +11 -0
  542. package/dist/types/components/Pagination/PaginationNextPrev.d.ts.map +1 -0
  543. package/dist/types/components/Pagination/PaginationRoot.d.ts +42 -0
  544. package/dist/types/components/Pagination/PaginationRoot.d.ts.map +1 -0
  545. package/dist/types/components/Pagination/index.d.ts +28 -0
  546. package/dist/types/components/Pagination/index.d.ts.map +1 -0
  547. package/dist/types/components/Pagination/usePagination.d.ts +23 -0
  548. package/dist/types/components/Pagination/usePagination.d.ts.map +1 -0
  549. package/dist/types/components/Popover/Popover.d.ts +58 -0
  550. package/dist/types/components/Popover/Popover.d.ts.map +1 -0
  551. package/dist/types/components/Popover/PopoverContent.d.ts +8 -0
  552. package/dist/types/components/Popover/PopoverContent.d.ts.map +1 -0
  553. package/dist/types/components/Popover/PopoverTrigger.d.ts +14 -0
  554. package/dist/types/components/Popover/PopoverTrigger.d.ts.map +1 -0
  555. package/dist/types/components/Popover/index.d.ts +14 -0
  556. package/dist/types/components/Popover/index.d.ts.map +1 -0
  557. package/dist/types/components/Skeleton/Circle/Circle.d.ts +13 -0
  558. package/dist/types/components/Skeleton/Circle/Circle.d.ts.map +1 -0
  559. package/dist/types/components/Skeleton/Rectangle/Rectangle.d.ts +13 -0
  560. package/dist/types/components/Skeleton/Rectangle/Rectangle.d.ts.map +1 -0
  561. package/dist/types/components/Skeleton/Text/Text.d.ts +13 -0
  562. package/dist/types/components/Skeleton/Text/Text.d.ts.map +1 -0
  563. package/dist/types/components/Skeleton/index.d.ts +24 -0
  564. package/dist/types/components/Skeleton/index.d.ts.map +1 -0
  565. package/dist/types/components/SkipLink/SkipLink.d.ts +12 -0
  566. package/dist/types/components/SkipLink/SkipLink.d.ts.map +1 -0
  567. package/dist/types/components/SkipLink/index.d.ts +3 -0
  568. package/dist/types/components/SkipLink/index.d.ts.map +1 -0
  569. package/dist/types/components/Spinner/Spinner.d.ts +15 -0
  570. package/dist/types/components/Spinner/Spinner.d.ts.map +1 -0
  571. package/dist/types/components/Spinner/index.d.ts +3 -0
  572. package/dist/types/components/Spinner/index.d.ts.map +1 -0
  573. package/dist/types/components/Table/Table.d.ts +46 -0
  574. package/dist/types/components/Table/Table.d.ts.map +1 -0
  575. package/dist/types/components/Table/TableBody.d.ts +4 -0
  576. package/dist/types/components/Table/TableBody.d.ts.map +1 -0
  577. package/dist/types/components/Table/TableCell.d.ts +4 -0
  578. package/dist/types/components/Table/TableCell.d.ts.map +1 -0
  579. package/dist/types/components/Table/TableHead.d.ts +4 -0
  580. package/dist/types/components/Table/TableHead.d.ts.map +1 -0
  581. package/dist/types/components/Table/TableHeaderCell.d.ts +37 -0
  582. package/dist/types/components/Table/TableHeaderCell.d.ts.map +1 -0
  583. package/dist/types/components/Table/TableRow.d.ts +4 -0
  584. package/dist/types/components/Table/TableRow.d.ts.map +1 -0
  585. package/dist/types/components/Table/index.d.ts +16 -0
  586. package/dist/types/components/Table/index.d.ts.map +1 -0
  587. package/dist/types/components/Tabs/Tab/Tab.d.ts +10 -0
  588. package/dist/types/components/Tabs/Tab/Tab.d.ts.map +1 -0
  589. package/dist/types/components/Tabs/Tab/index.d.ts +2 -0
  590. package/dist/types/components/Tabs/Tab/index.d.ts.map +1 -0
  591. package/dist/types/components/Tabs/Tab/useTab.d.ts +10 -0
  592. package/dist/types/components/Tabs/Tab/useTab.d.ts.map +1 -0
  593. package/dist/types/components/Tabs/TabContent/TabContent.d.ts +10 -0
  594. package/dist/types/components/Tabs/TabContent/TabContent.d.ts.map +1 -0
  595. package/dist/types/components/Tabs/TabContent/index.d.ts +2 -0
  596. package/dist/types/components/Tabs/TabContent/index.d.ts.map +1 -0
  597. package/dist/types/components/Tabs/TabList/TabList.d.ts +3 -0
  598. package/dist/types/components/Tabs/TabList/TabList.d.ts.map +1 -0
  599. package/dist/types/components/Tabs/TabList/index.d.ts +2 -0
  600. package/dist/types/components/Tabs/TabList/index.d.ts.map +1 -0
  601. package/dist/types/components/Tabs/Tabs.d.ts +44 -0
  602. package/dist/types/components/Tabs/Tabs.d.ts.map +1 -0
  603. package/dist/types/components/Tabs/index.d.ts +15 -0
  604. package/dist/types/components/Tabs/index.d.ts.map +1 -0
  605. package/dist/types/components/Tag/Tag.d.ts +25 -0
  606. package/dist/types/components/Tag/Tag.d.ts.map +1 -0
  607. package/dist/types/components/Tag/index.d.ts +3 -0
  608. package/dist/types/components/Tag/index.d.ts.map +1 -0
  609. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts +44 -0
  610. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts.map +1 -0
  611. package/dist/types/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.d.ts +11 -0
  612. package/dist/types/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.d.ts.map +1 -0
  613. package/dist/types/components/ToggleGroup/ToggleGroupItem/useToggleGroupitem.d.ts +11 -0
  614. package/dist/types/components/ToggleGroup/ToggleGroupItem/useToggleGroupitem.d.ts.map +1 -0
  615. package/dist/types/components/ToggleGroup/index.d.ts +10 -0
  616. package/dist/types/components/ToggleGroup/index.d.ts.map +1 -0
  617. package/dist/types/components/Tooltip/Tooltip.d.ts +56 -0
  618. package/dist/types/components/Tooltip/Tooltip.d.ts.map +1 -0
  619. package/dist/types/components/Tooltip/index.d.ts +3 -0
  620. package/dist/types/components/Tooltip/index.d.ts.map +1 -0
  621. package/dist/types/components/Typography/ErrorMessage/ErrorMessage.d.ts +18 -0
  622. package/dist/types/components/Typography/ErrorMessage/ErrorMessage.d.ts.map +1 -0
  623. package/dist/types/components/Typography/ErrorMessage/index.d.ts +2 -0
  624. package/dist/types/components/Typography/ErrorMessage/index.d.ts.map +1 -0
  625. package/dist/types/components/Typography/Heading/Heading.d.ts +20 -0
  626. package/dist/types/components/Typography/Heading/Heading.d.ts.map +1 -0
  627. package/dist/types/components/Typography/Heading/index.d.ts +2 -0
  628. package/dist/types/components/Typography/Heading/index.d.ts.map +1 -0
  629. package/dist/types/components/Typography/Ingress/Ingress.d.ts +16 -0
  630. package/dist/types/components/Typography/Ingress/Ingress.d.ts.map +1 -0
  631. package/dist/types/components/Typography/Ingress/index.d.ts +2 -0
  632. package/dist/types/components/Typography/Ingress/index.d.ts.map +1 -0
  633. package/dist/types/components/Typography/Label/Label.d.ts +20 -0
  634. package/dist/types/components/Typography/Label/Label.d.ts.map +1 -0
  635. package/dist/types/components/Typography/Label/index.d.ts +2 -0
  636. package/dist/types/components/Typography/Label/index.d.ts.map +1 -0
  637. package/dist/types/components/Typography/Paragraph/Paragraph.d.ts +18 -0
  638. package/dist/types/components/Typography/Paragraph/Paragraph.d.ts.map +1 -0
  639. package/dist/types/components/Typography/Paragraph/index.d.ts +2 -0
  640. package/dist/types/components/Typography/Paragraph/index.d.ts.map +1 -0
  641. package/dist/types/components/Typography/index.d.ts +6 -0
  642. package/dist/types/components/Typography/index.d.ts.map +1 -0
  643. package/dist/types/components/form/CharacterCounter.d.ts +21 -0
  644. package/dist/types/components/form/CharacterCounter.d.ts.map +1 -0
  645. package/dist/types/components/form/Checkbox/Checkbox.d.ts +23 -0
  646. package/dist/types/components/form/Checkbox/Checkbox.d.ts.map +1 -0
  647. package/dist/types/components/form/Checkbox/Group/Group.d.ts +29 -0
  648. package/dist/types/components/form/Checkbox/Group/Group.d.ts.map +1 -0
  649. package/dist/types/components/form/Checkbox/Group/index.d.ts +2 -0
  650. package/dist/types/components/form/Checkbox/Group/index.d.ts.map +1 -0
  651. package/dist/types/components/form/Checkbox/index.d.ts +22 -0
  652. package/dist/types/components/form/Checkbox/index.d.ts.map +1 -0
  653. package/dist/types/components/form/Checkbox/useCheckbox.d.ts +10 -0
  654. package/dist/types/components/form/Checkbox/useCheckbox.d.ts.map +1 -0
  655. package/dist/types/components/form/Combobox/Combobox.d.ts +213 -0
  656. package/dist/types/components/form/Combobox/Combobox.d.ts.map +1 -0
  657. package/dist/types/components/form/Combobox/Custom/Custom.d.ts +33 -0
  658. package/dist/types/components/form/Combobox/Custom/Custom.d.ts.map +1 -0
  659. package/dist/types/components/form/Combobox/Empty/Empty.d.ts +5 -0
  660. package/dist/types/components/form/Combobox/Empty/Empty.d.ts.map +1 -0
  661. package/dist/types/components/form/Combobox/Option/Description/Description.d.ts +5 -0
  662. package/dist/types/components/form/Combobox/Option/Description/Description.d.ts.map +1 -0
  663. package/dist/types/components/form/Combobox/Option/Icon/SelectedIcon.d.ts +10 -0
  664. package/dist/types/components/form/Combobox/Option/Icon/SelectedIcon.d.ts.map +1 -0
  665. package/dist/types/components/form/Combobox/Option/Option.d.ts +32 -0
  666. package/dist/types/components/form/Combobox/Option/Option.d.ts.map +1 -0
  667. package/dist/types/components/form/Combobox/data/data.d.ts +7 -0
  668. package/dist/types/components/form/Combobox/data/data.d.ts.map +1 -0
  669. package/dist/types/components/form/Combobox/index.d.ts +10 -0
  670. package/dist/types/components/form/Combobox/index.d.ts.map +1 -0
  671. package/dist/types/components/form/Combobox/internal/ComboboxChips.d.ts +6 -0
  672. package/dist/types/components/form/Combobox/internal/ComboboxChips.d.ts.map +1 -0
  673. package/dist/types/components/form/Combobox/internal/ComboboxClearButton.d.ts +6 -0
  674. package/dist/types/components/form/Combobox/internal/ComboboxClearButton.d.ts.map +1 -0
  675. package/dist/types/components/form/Combobox/internal/ComboboxError.d.ts +13 -0
  676. package/dist/types/components/form/Combobox/internal/ComboboxError.d.ts.map +1 -0
  677. package/dist/types/components/form/Combobox/internal/ComboboxInput.d.ts +7 -0
  678. package/dist/types/components/form/Combobox/internal/ComboboxInput.d.ts.map +1 -0
  679. package/dist/types/components/form/Combobox/internal/ComboboxLabel.d.ts +16 -0
  680. package/dist/types/components/form/Combobox/internal/ComboboxLabel.d.ts.map +1 -0
  681. package/dist/types/components/form/Combobox/internal/ComboboxNative.d.ts +13 -0
  682. package/dist/types/components/form/Combobox/internal/ComboboxNative.d.ts.map +1 -0
  683. package/dist/types/components/form/Combobox/useCombobox.d.ts +28 -0
  684. package/dist/types/components/form/Combobox/useCombobox.d.ts.map +1 -0
  685. package/dist/types/components/form/Fieldset/Fieldset.d.ts +35 -0
  686. package/dist/types/components/form/Fieldset/Fieldset.d.ts.map +1 -0
  687. package/dist/types/components/form/Fieldset/index.d.ts +2 -0
  688. package/dist/types/components/form/Fieldset/index.d.ts.map +1 -0
  689. package/dist/types/components/form/Fieldset/useFieldset.d.ts +18 -0
  690. package/dist/types/components/form/Fieldset/useFieldset.d.ts.map +1 -0
  691. package/dist/types/components/form/NativeSelect/NativeSelect.d.ts +56 -0
  692. package/dist/types/components/form/NativeSelect/NativeSelect.d.ts.map +1 -0
  693. package/dist/types/components/form/NativeSelect/index.d.ts +3 -0
  694. package/dist/types/components/form/NativeSelect/index.d.ts.map +1 -0
  695. package/dist/types/components/form/NativeSelect/useNativeSelect.d.ts +10 -0
  696. package/dist/types/components/form/NativeSelect/useNativeSelect.d.ts.map +1 -0
  697. package/dist/types/components/form/Radio/Group/Group.d.ts +43 -0
  698. package/dist/types/components/form/Radio/Group/Group.d.ts.map +1 -0
  699. package/dist/types/components/form/Radio/Group/index.d.ts +2 -0
  700. package/dist/types/components/form/Radio/Group/index.d.ts.map +1 -0
  701. package/dist/types/components/form/Radio/Radio.d.ts +15 -0
  702. package/dist/types/components/form/Radio/Radio.d.ts.map +1 -0
  703. package/dist/types/components/form/Radio/index.d.ts +20 -0
  704. package/dist/types/components/form/Radio/index.d.ts.map +1 -0
  705. package/dist/types/components/form/Radio/useRadio.d.ts +10 -0
  706. package/dist/types/components/form/Radio/useRadio.d.ts.map +1 -0
  707. package/dist/types/components/form/Search/Search.d.ts +74 -0
  708. package/dist/types/components/form/Search/Search.d.ts.map +1 -0
  709. package/dist/types/components/form/Search/index.d.ts +2 -0
  710. package/dist/types/components/form/Search/index.d.ts.map +1 -0
  711. package/dist/types/components/form/Search/useSearch.d.ts +12 -0
  712. package/dist/types/components/form/Search/useSearch.d.ts.map +1 -0
  713. package/dist/types/components/form/Switch/Switch.d.ts +23 -0
  714. package/dist/types/components/form/Switch/Switch.d.ts.map +1 -0
  715. package/dist/types/components/form/Switch/index.d.ts +2 -0
  716. package/dist/types/components/form/Switch/index.d.ts.map +1 -0
  717. package/dist/types/components/form/Switch/useSwitch.d.ts +10 -0
  718. package/dist/types/components/form/Switch/useSwitch.d.ts.map +1 -0
  719. package/dist/types/components/form/Textarea/Textarea.d.ts +51 -0
  720. package/dist/types/components/form/Textarea/Textarea.d.ts.map +1 -0
  721. package/dist/types/components/form/Textarea/index.d.ts +2 -0
  722. package/dist/types/components/form/Textarea/index.d.ts.map +1 -0
  723. package/dist/types/components/form/Textarea/useTextarea.d.ts +10 -0
  724. package/dist/types/components/form/Textarea/useTextarea.d.ts.map +1 -0
  725. package/dist/types/components/form/Textfield/Textfield.d.ts +67 -0
  726. package/dist/types/components/form/Textfield/Textfield.d.ts.map +1 -0
  727. package/dist/types/components/form/Textfield/index.d.ts +2 -0
  728. package/dist/types/components/form/Textfield/index.d.ts.map +1 -0
  729. package/dist/types/components/form/Textfield/useTextfield.d.ts +10 -0
  730. package/dist/types/components/form/Textfield/useTextfield.d.ts.map +1 -0
  731. package/dist/types/components/form/useFormField.d.ts +32 -0
  732. package/dist/types/components/form/useFormField.d.ts.map +1 -0
  733. package/dist/types/components/index.d.ts +34 -0
  734. package/dist/types/components/index.d.ts.map +1 -0
  735. package/dist/types/hooks/index.d.ts +5 -0
  736. package/dist/types/hooks/index.d.ts.map +1 -0
  737. package/dist/types/hooks/useIsomorphicLayoutEffect.d.ts +3 -0
  738. package/dist/types/hooks/useIsomorphicLayoutEffect.d.ts.map +1 -0
  739. package/dist/types/hooks/useMediaQuery.d.ts +2 -0
  740. package/dist/types/hooks/useMediaQuery.d.ts.map +1 -0
  741. package/dist/types/hooks/usePrevious.d.ts +2 -0
  742. package/dist/types/hooks/usePrevious.d.ts.map +1 -0
  743. package/dist/types/hooks/useSynchronizedAnimation.d.ts +3 -0
  744. package/dist/types/hooks/useSynchronizedAnimation.d.ts.map +1 -0
  745. package/dist/types/index.d.ts +2 -0
  746. package/dist/types/index.d.ts.map +1 -0
  747. package/dist/types/types/OverridableComponent.d.ts +12 -0
  748. package/dist/types/types/OverridableComponent.d.ts.map +1 -0
  749. package/dist/types/types/Portal.d.ts +9 -0
  750. package/dist/types/types/Portal.d.ts.map +1 -0
  751. package/dist/types/utilities/AnimateHeight/AnimateHeight.d.ts +9 -0
  752. package/dist/types/utilities/AnimateHeight/AnimateHeight.d.ts.map +1 -0
  753. package/dist/types/utilities/AnimateHeight/index.d.ts +3 -0
  754. package/dist/types/utilities/AnimateHeight/index.d.ts.map +1 -0
  755. package/dist/types/utilities/RovingTabIndex/RovingTabindexItem.d.ts +19 -0
  756. package/dist/types/utilities/RovingTabIndex/RovingTabindexItem.d.ts.map +1 -0
  757. package/dist/types/utilities/RovingTabIndex/RovingTabindexRoot.d.ts +28 -0
  758. package/dist/types/utilities/RovingTabIndex/RovingTabindexRoot.d.ts.map +1 -0
  759. package/dist/types/utilities/RovingTabIndex/index.d.ts +4 -0
  760. package/dist/types/utilities/RovingTabIndex/index.d.ts.map +1 -0
  761. package/dist/types/utilities/RovingTabIndex/useRovingTabindex.d.ts +278 -0
  762. package/dist/types/utilities/RovingTabIndex/useRovingTabindex.d.ts.map +1 -0
  763. package/dist/types/utilities/index.d.ts +2 -0
  764. package/dist/types/utilities/index.d.ts.map +1 -0
  765. package/dist/types/utilities/objectUtils.d.ts +11 -0
  766. package/dist/types/utilities/objectUtils.d.ts.map +1 -0
  767. package/dist/types/utilities/useDebounce.d.ts +4 -0
  768. package/dist/types/utilities/useDebounce.d.ts.map +1 -0
  769. package/package.json +48 -0
@@ -0,0 +1,304 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var jsxRuntime = require('react/jsx-runtime');
5
+ var React = require('react');
6
+ var floatingUi_react = require('../../../node_modules/@floating-ui/react/dist/floating-ui.react.js');
7
+ var clsx = require('../../../node_modules/clsx/dist/clsx.js');
8
+ var index = require('../../../node_modules/@tanstack/react-virtual/build/lib/index.js');
9
+ var useFormField = require('../useFormField.js');
10
+ var useDebounce = require('../../../utilities/useDebounce.js');
11
+ var useCombobox = require('./useCombobox.js');
12
+ var Combobox_module = require('./Combobox.module.css.js');
13
+ var ComboboxInput = require('./internal/ComboboxInput.js');
14
+ var ComboboxLabel = require('./internal/ComboboxLabel.js');
15
+ var ComboboxError = require('./internal/ComboboxError.js');
16
+ var ComboboxNative = require('./internal/ComboboxNative.js');
17
+ var Custom = require('./Custom/Custom.js');
18
+ var Box = require('../../Box/Box.js');
19
+ var Spinner = require('../../Spinner/Spinner.js');
20
+ var floatingUi_dom = require('../../../node_modules/@floating-ui/dom/dist/floating-ui.dom.js');
21
+ var floatingUi_core = require('../../../node_modules/@floating-ui/core/dist/floating-ui.core.js');
22
+ var objectUtils = require('../../../utilities/objectUtils.js');
23
+
24
+ const Combobox = React.forwardRef(({ value, onValueChange, label, hideLabel = false, description, multiple = false, size = 'medium', disabled = false, readOnly = false, hideChips = false, cleanButtonLabel = 'Fjern alt', error, errorId, id, name, portal = true, htmlSize = 0, virtual = false, children, style, loading, loadingLabel = 'Laster...', filter = (inputValue, option) => {
25
+ return option.label.toLowerCase().startsWith(inputValue.toLowerCase());
26
+ }, chipSrLabel = (option) => 'Slett ' + option.label, className, ...rest }, forwareddRef) => {
27
+ const inputRef = React.useRef(null);
28
+ const portalRef = React.useRef(null);
29
+ const listId = React.useId();
30
+ const [open, setOpen] = React.useState(false);
31
+ const [inputValue, setInputValue] = React.useState(rest.inputValue || '');
32
+ const [activeIndex, setActiveIndex] = React.useState(null);
33
+ const [selectedOptions, setSelectedOptions] = React.useState([]);
34
+ const [activeDescendant, setActiveDescendant] = React.useState(undefined);
35
+ const [prevSelectedHash, setPrevSelectedHash] = React.useState(JSON.stringify(selectedOptions));
36
+ React.useEffect(() => {
37
+ if (rest.inputValue !== undefined) {
38
+ setInputValue(rest.inputValue);
39
+ }
40
+ }, [rest.inputValue]);
41
+ const formFieldProps = useFormField.useFormField({
42
+ disabled,
43
+ readOnly,
44
+ error,
45
+ errorId,
46
+ size,
47
+ description,
48
+ id,
49
+ }, 'combobox');
50
+ const listRef = React.useRef([]);
51
+ const { options, optionsChildren, restChildren, optionValues, customIds } = useCombobox.default({
52
+ children,
53
+ inputValue,
54
+ filter,
55
+ multiple,
56
+ selectedOptions,
57
+ });
58
+ // if value is set, set input value to the label of the value
59
+ React.useEffect(() => {
60
+ if (value && value.length > 0 && !multiple) {
61
+ const option = options.find((option) => option.value === value[0]);
62
+ setInputValue(option?.label || '');
63
+ }
64
+ }, [multiple, value, options]);
65
+ // floating UI
66
+ const { refs, floatingStyles, context } = floatingUi_react.useFloating({
67
+ whileElementsMounted: floatingUi_dom.autoUpdate,
68
+ open,
69
+ onOpenChange: setOpen,
70
+ middleware: [
71
+ floatingUi_core.flip({ padding: 10 }),
72
+ floatingUi_core.size({
73
+ apply({ rects, elements }) {
74
+ requestAnimationFrame(() => {
75
+ Object.assign(elements.floating.style, {
76
+ width: `calc(${rects.reference.width}px - calc(var(--fds-spacing-2) * 2))`,
77
+ maxHeight: `200px`,
78
+ });
79
+ });
80
+ },
81
+ }),
82
+ floatingUi_core.offset(10),
83
+ ],
84
+ });
85
+ const role = floatingUi_react.useRole(context, { role: 'listbox' });
86
+ const dismiss = floatingUi_react.useDismiss(context);
87
+ const listNav = floatingUi_react.useListNavigation(context, {
88
+ listRef,
89
+ activeIndex,
90
+ virtual: true,
91
+ scrollItemIntoView: true,
92
+ enabled: open,
93
+ });
94
+ const { getReferenceProps, getFloatingProps } = floatingUi_react.useInteractions([
95
+ role,
96
+ dismiss,
97
+ listNav,
98
+ ]);
99
+ // remove active index if combobox is closed
100
+ React.useEffect(() => {
101
+ if (!open) {
102
+ setActiveIndex(null);
103
+ }
104
+ }, [open]);
105
+ // Send new value if option was clicked
106
+ React.useEffect(() => {
107
+ const selectedHash = JSON.stringify(selectedOptions);
108
+ if (prevSelectedHash === selectedHash)
109
+ return;
110
+ const values = selectedOptions.map((option) => option.value);
111
+ onValueChange?.(values);
112
+ setPrevSelectedHash(selectedHash);
113
+ }, [onValueChange, selectedOptions, prevSelectedHash]);
114
+ React.useEffect(() => {
115
+ if (value && options.length > 0) {
116
+ const updatedSelectedOptions = value.map((option) => {
117
+ const value = options.find((value) => value.value === option);
118
+ return value;
119
+ });
120
+ setSelectedOptions(updatedSelectedOptions);
121
+ }
122
+ }, [multiple, prevSelectedHash, value, options]);
123
+ // handle click on option, either select or deselect - Handles single or multiple
124
+ const handleSelectOption = (option) => {
125
+ // if option is already selected, remove it
126
+ if (value && value.includes(option.value)) {
127
+ setSelectedOptions((prev) => prev.filter((i) => i.value !== option.value));
128
+ return;
129
+ }
130
+ if (multiple) {
131
+ setSelectedOptions([...selectedOptions, option]);
132
+ setInputValue('');
133
+ inputRef.current?.focus();
134
+ }
135
+ else {
136
+ setSelectedOptions([option]);
137
+ setInputValue(option?.label || '');
138
+ // move cursor to the end of the input
139
+ setTimeout(() => {
140
+ inputRef.current?.setSelectionRange(option?.label?.length || 0, option?.label?.length || 0);
141
+ }, 0);
142
+ }
143
+ !multiple && setOpen(false);
144
+ refs.domReference.current?.focus();
145
+ };
146
+ const debouncedHandleSelectOption = useDebounce(handleSelectOption, 50);
147
+ // handle keyboard navigation in the list
148
+ const handleKeyDownFunc = (event) => {
149
+ const navigateable = customIds.length + optionsChildren.length;
150
+ if (formFieldProps.readOnly || disabled)
151
+ return;
152
+ if (!event)
153
+ return;
154
+ switch (event.key) {
155
+ case 'ArrowDown':
156
+ event.preventDefault();
157
+ if (!open)
158
+ setOpen(true);
159
+ setActiveIndex((prevActiveIndex) => {
160
+ if (prevActiveIndex === null) {
161
+ return 0;
162
+ }
163
+ return Math.min(prevActiveIndex + 1, navigateable - 1);
164
+ });
165
+ break;
166
+ case 'ArrowUp':
167
+ event.preventDefault();
168
+ /* If we are on the first item, close */
169
+ setActiveIndex((prevActiveIndex) => {
170
+ if (prevActiveIndex === 0) {
171
+ setOpen(false);
172
+ return null;
173
+ }
174
+ if (prevActiveIndex === null) {
175
+ return null;
176
+ }
177
+ return Math.max(prevActiveIndex - 1, 0);
178
+ });
179
+ break;
180
+ case 'Enter':
181
+ event.preventDefault();
182
+ if (activeIndex !== null &&
183
+ (optionsChildren[activeIndex] || customIds.length > 0)) {
184
+ // check if we are in the custom components
185
+ if (activeIndex <= customIds.length) {
186
+ // send `onSelect` event to the custom component
187
+ const selectedId = customIds[activeIndex];
188
+ const selectedComponent = restChildren.find((component) => useCombobox.isInteractiveComboboxCustom(component) &&
189
+ component.props?.id === selectedId);
190
+ if (useCombobox.isInteractiveComboboxCustom(selectedComponent) &&
191
+ selectedComponent.props.onSelect) {
192
+ selectedComponent.props.onSelect();
193
+ }
194
+ }
195
+ // if we are in the options, find the actual index
196
+ const valueIndex = activeIndex - customIds.length;
197
+ const child = optionsChildren[valueIndex];
198
+ if (useCombobox.isComboboxOption(child)) {
199
+ const props = child.props;
200
+ const option = options.find((option) => option.value === props.value);
201
+ if (!multiple) {
202
+ // check if option is already selected, if so, deselect it
203
+ if (selectedOptions.find((i) => i.value === option?.value)) {
204
+ setSelectedOptions([]);
205
+ setInputValue('');
206
+ return;
207
+ }
208
+ }
209
+ debouncedHandleSelectOption(option);
210
+ }
211
+ }
212
+ break;
213
+ case 'Backspace':
214
+ if (inputValue === '' && multiple && selectedOptions.length > 0) {
215
+ setSelectedOptions((prev) => prev.slice(0, prev.length - 1));
216
+ }
217
+ // if we are in single mode, we need to set activeValue to null
218
+ if (!multiple) {
219
+ setSelectedOptions([]);
220
+ }
221
+ break;
222
+ }
223
+ };
224
+ const handleKeyDown = useDebounce(handleKeyDownFunc, 20);
225
+ const rowVirtualizer = index.useVirtualizer({
226
+ count: optionsChildren.length,
227
+ getScrollElement: () => refs.floating.current,
228
+ estimateSize: () => 40,
229
+ measureElement: (elem) => {
230
+ return elem.getBoundingClientRect().height;
231
+ },
232
+ overscan: 1,
233
+ });
234
+ return (jsxRuntime.jsxs(ComboboxContext.Provider, { value: {
235
+ size,
236
+ options,
237
+ selectedOptions,
238
+ multiple,
239
+ activeIndex,
240
+ disabled,
241
+ readOnly,
242
+ open,
243
+ inputRef,
244
+ refs,
245
+ inputValue,
246
+ activeDescendant,
247
+ error,
248
+ formFieldProps,
249
+ name,
250
+ htmlSize,
251
+ optionValues,
252
+ hideChips,
253
+ cleanButtonLabel,
254
+ listId,
255
+ setInputValue,
256
+ setActiveIndex,
257
+ handleKeyDown,
258
+ setOpen,
259
+ getReferenceProps,
260
+ setSelectedOptions,
261
+ /* Recieves index of option, and the ID of the button element */
262
+ setActiveOption: (index, id) => {
263
+ if (readOnly)
264
+ return;
265
+ if (disabled)
266
+ return;
267
+ setActiveIndex(index);
268
+ setActiveDescendant(id);
269
+ },
270
+ /* Recieves the value of the option, and searches for it in our values lookup */
271
+ onOptionClick: (value) => {
272
+ if (readOnly)
273
+ return;
274
+ if (disabled)
275
+ return;
276
+ const option = options.find((option) => option.value === value);
277
+ debouncedHandleSelectOption(option);
278
+ },
279
+ handleSelectOption: debouncedHandleSelectOption,
280
+ chipSrLabel,
281
+ listRef,
282
+ forwareddRef,
283
+ }, children: [jsxRuntime.jsxs(Box.Box, { className: clsx.clsx(Combobox_module.combobox, disabled && Combobox_module.disabled, className), style: style, ref: portalRef, children: [name && (jsxRuntime.jsx(ComboboxNative.default, { name: name, selectedOptions: selectedOptions, multiple: multiple })), jsxRuntime.jsx(ComboboxLabel.default, { label: label, description: description, size: size, readOnly: readOnly, hideLabel: hideLabel, formFieldProps: formFieldProps }), jsxRuntime.jsx(ComboboxInput.default, { ...objectUtils.omit(['inputValue'], rest), "aria-busy": loading }), jsxRuntime.jsx(ComboboxError.default, { size: size, error: error, formFieldProps: formFieldProps })] }), open && (jsxRuntime.jsx(floatingUi_react.FloatingPortal, { root: portal ? null : portalRef, children: jsxRuntime.jsx(floatingUi_react.FloatingFocusManager, { context: context, initialFocus: -1, visuallyHiddenDismiss: true, children: jsxRuntime.jsxs(Box.Box, { id: listId, shadow: 'medium', borderRadius: 'medium', borderColor: 'default', "aria-labelledby": formFieldProps.inputProps.id, "aria-autocomplete": 'list', tabIndex: -1, ...getFloatingProps({
284
+ ref: refs.setFloating,
285
+ style: {
286
+ ...floatingStyles,
287
+ },
288
+ }), className: clsx.clsx(Combobox_module.optionsWrapper, Combobox_module[size]), children: [virtual && (jsxRuntime.jsx("div", { style: {
289
+ height: `${rowVirtualizer.getTotalSize()}px`,
290
+ width: '100%',
291
+ position: 'relative',
292
+ }, children: rowVirtualizer.getVirtualItems().map((virtualRow) => (jsxRuntime.jsx("div", { ref: rowVirtualizer.measureElement, "data-index": virtualRow.index, style: {
293
+ position: 'absolute',
294
+ top: 0,
295
+ left: 0,
296
+ width: '100%',
297
+ transform: `translateY(${virtualRow.start}px)`,
298
+ }, children: optionsChildren[virtualRow.index] }, virtualRow.index))) })), loading ? (jsxRuntime.jsxs(Custom.default, { className: Combobox_module.loading, children: [jsxRuntime.jsx(Spinner.Spinner, { title: 'Laster', size: 'small' }), loadingLabel] })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [restChildren, !virtual && optionsChildren] }))] }) }) }))] }));
299
+ });
300
+ const ComboboxContext = React.createContext(undefined);
301
+ Combobox.displayName = 'Combobox';
302
+
303
+ exports.Combobox = Combobox;
304
+ exports.ComboboxContext = ComboboxContext;
@@ -0,0 +1,6 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var classes = {"combobox":"fds-combobox-combobox-fe4dfa7c","optionsWrapper":"fds-combobox-optionsWrapper-fe4dfa7c","readOnly":"fds-combobox-readOnly-fe4dfa7c","inputWrapper":"fds-combobox-inputWrapper-fe4dfa7c","small":"fds-combobox-small-fe4dfa7c","medium":"fds-combobox-medium-fe4dfa7c","large":"fds-combobox-large-fe4dfa7c","error":"fds-combobox-error-fe4dfa7c","chipAndInput":"fds-combobox-chipAndInput-fe4dfa7c","chips":"fds-combobox-chips-fe4dfa7c","arrow":"fds-combobox-arrow-fe4dfa7c","readonly":"fds-combobox-readonly-fe4dfa7c","label":"fds-combobox-label-fe4dfa7c","description":"fds-combobox-description-fe4dfa7c","clearButton":"fds-combobox-clearButton-fe4dfa7c","disabled":"fds-combobox-disabled-fe4dfa7c","padlock":"fds-combobox-padlock-fe4dfa7c","errorMessage":"fds-combobox-errorMessage-fe4dfa7c","loading":"fds-combobox-loading-fe4dfa7c","inFocus":"fds-combobox-inFocus-fe4dfa7c","showChecked":"fds-combobox-showChecked-fe4dfa7c"};
5
+
6
+ module.exports = classes;
@@ -0,0 +1,35 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var React = require('react');
8
+ var clsx = require('../../../../node_modules/clsx/dist/clsx.js');
9
+ var index = require('../../../../node_modules/@radix-ui/react-slot/dist/index.js');
10
+ var Combobox = require('../Combobox.js');
11
+ var Custom_module = require('./Custom.module.css.js');
12
+ var objectUtils = require('../../../../utilities/objectUtils.js');
13
+
14
+ const ComboboxCustom = React.forwardRef(({ asChild, interactive, id, className, ...rest }, ref) => {
15
+ if (interactive && !id) {
16
+ throw new Error('If ComboboxCustom is interactive, it must have an id');
17
+ }
18
+ const Component = asChild ? index.Slot : 'div';
19
+ const randomId = React.useId();
20
+ const context = React.useContext(Combobox.ComboboxContext);
21
+ if (!context) {
22
+ throw new Error('ComboboxCustom must be used within a Combobox');
23
+ }
24
+ const { size, activeIndex, optionValues, setActiveIndex } = context;
25
+ const index$1 = React.useMemo(() => id && optionValues.indexOf(id), [optionValues, id]);
26
+ return (jsxRuntime.jsx(Component, { ref: ref, tabIndex: -1, className: clsx.clsx(Custom_module.custom, Custom_module[size], className), id: id || randomId, role: 'option', "aria-selected": activeIndex === index$1, "data-active": activeIndex === index$1, onMouseEnter: () => {
27
+ typeof index$1 === 'number' && setActiveIndex(index$1);
28
+ }, onFocus: () => {
29
+ typeof index$1 === 'number' && setActiveIndex(index$1);
30
+ }, ...objectUtils.omit(['interactive'], rest) }));
31
+ });
32
+ var ComboboxCustom$1 = ComboboxCustom;
33
+
34
+ exports.ComboboxCustom = ComboboxCustom;
35
+ exports.default = ComboboxCustom$1;
@@ -0,0 +1,6 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var classes = {"custom":"fds-custom-custom-385f0b36","large":"fds-custom-large-385f0b36","medium":"fds-custom-medium-385f0b36","small":"fds-custom-small-385f0b36"};
5
+
6
+ module.exports = classes;
@@ -0,0 +1,23 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var React = require('react');
8
+ var clsx = require('../../../../node_modules/clsx/dist/clsx.js');
9
+ var Combobox = require('../Combobox.js');
10
+ var Empty_module = require('./Empty.module.css.js');
11
+
12
+ const ComboboxEmpty = React.forwardRef(({ children, className, ...rest }, ref) => {
13
+ const context = React.useContext(Combobox.ComboboxContext);
14
+ if (!context) {
15
+ throw new Error('ComboboxEmpty must be used within a Combobox');
16
+ }
17
+ const { optionValues, size } = context;
18
+ return (optionValues.length === 0 && (jsxRuntime.jsx("div", { ref: ref, className: clsx.clsx(Empty_module.empty, Empty_module[size], className), ...rest, children: children })));
19
+ });
20
+ ComboboxEmpty.displayName = 'ComboboxEmpty';
21
+
22
+ exports.ComboboxEmpty = ComboboxEmpty;
23
+ exports.default = ComboboxEmpty;
@@ -0,0 +1,6 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var classes = {"empty":"fds-empty-empty-a5131d3a","large":"fds-empty-large-a5131d3a","medium":"fds-empty-medium-a5131d3a","small":"fds-empty-small-a5131d3a"};
5
+
6
+ module.exports = classes;
@@ -0,0 +1,18 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var React = require('react');
8
+ var clsx = require('../../../../../node_modules/clsx/dist/clsx.js');
9
+ var Description_module = require('./Description.module.css.js');
10
+
11
+ const ComboboxOptionDescription = React.forwardRef(({ children, className, ...rest }, ref) => {
12
+ return (jsxRuntime.jsx("span", { className: clsx.clsx(Description_module.description, className), ref: ref, ...rest, children: children }));
13
+ });
14
+ ComboboxOptionDescription.displayName = 'ComboboxOptionDescription';
15
+ var ComboboxOptionDescription$1 = ComboboxOptionDescription;
16
+
17
+ exports.ComboboxOptionDescription = ComboboxOptionDescription;
18
+ exports.default = ComboboxOptionDescription$1;
@@ -0,0 +1,6 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var classes = {"description":"fds-description-description-10814aaa"};
5
+
6
+ module.exports = classes;
@@ -0,0 +1,17 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var akselIcons = require('@navikt/aksel-icons');
8
+ var clsx = require('../../../../../node_modules/clsx/dist/clsx.js');
9
+ var Option_module = require('../Option.module.css.js');
10
+
11
+ const SelectedIcon = ({ multiple, selected }) => {
12
+ return (jsxRuntime.jsx("div", { className: clsx.clsx(multiple && Option_module.selectIconWrapper, selected && Option_module.selected), children: selected && (jsxRuntime.jsx(akselIcons.CheckmarkIcon, { className: Option_module.selectIcon, "aria-hidden": true })) }));
13
+ };
14
+ SelectedIcon.displayName = 'SelectedIcon';
15
+
16
+ exports.SelectedIcon = SelectedIcon;
17
+ exports.default = SelectedIcon;
@@ -0,0 +1,53 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var jsxRuntime = require('react/jsx-runtime');
5
+ var React = require('react');
6
+ var clsx = require('../../../../node_modules/clsx/dist/clsx.js');
7
+ var floatingUi_react = require('../../../../node_modules/@floating-ui/react/dist/floating-ui.react.js');
8
+ var Combobox = require('../Combobox.js');
9
+ var useDebounce = require('../../../../utilities/useDebounce.js');
10
+ var SelectedIcon = require('./Icon/SelectedIcon.js');
11
+ var Option_module = require('./Option.module.css.js');
12
+ var Description = require('./Description/Description.js');
13
+ var objectUtils = require('../../../../utilities/objectUtils.js');
14
+ var Label = require('../../../Typography/Label/Label.js');
15
+
16
+ const ComboboxOption = React.forwardRef(({ value, description, children, className, ...rest }, ref) => {
17
+ const labelId = React.useId();
18
+ const generatedId = React.useId();
19
+ const context = React.useContext(Combobox.ComboboxContext);
20
+ if (!context) {
21
+ throw new Error('ComboboxOption must be used within a Combobox');
22
+ }
23
+ const { selectedOptions, activeIndex, setActiveOption, onOptionClick, size, listRef, optionValues, multiple, } = context;
24
+ const index = React.useMemo(() => optionValues.indexOf(value), [optionValues, value]);
25
+ const combinedRef = floatingUi_react.useMergeRefs([
26
+ (node) => {
27
+ listRef.current[index] = node;
28
+ },
29
+ ref,
30
+ ]);
31
+ if (index === -1) {
32
+ throw new Error('Internal error: ComboboxOption did not find index');
33
+ }
34
+ const selected = selectedOptions.find((option) => option.value === value);
35
+ React.useEffect(() => {
36
+ if (activeIndex === index)
37
+ setActiveOption(index, rest.id || generatedId);
38
+ }, [activeIndex, generatedId, index, rest.id, setActiveOption]);
39
+ const onOptionClickDebounced = useDebounce(() => onOptionClick(value), 50);
40
+ return (jsxRuntime.jsxs("button", { id: rest.id || generatedId, role: 'option', type: 'button', "aria-selected": !!selected, "aria-labelledby": labelId, tabIndex: -1, onClick: (e) => {
41
+ onOptionClickDebounced();
42
+ rest.onClick?.(e);
43
+ }, onMouseEnter: (e) => {
44
+ setActiveOption(index, labelId);
45
+ rest.onMouseEnter?.(e);
46
+ }, onFocus: (e) => {
47
+ setActiveOption(index, labelId);
48
+ rest.onFocus?.(e);
49
+ }, className: clsx.clsx(Option_module.option, Option_module[size], activeIndex === index && Option_module.active, multiple && Option_module.multiple, className), ref: combinedRef, ...objectUtils.omit(['displayValue'], rest), children: [jsxRuntime.jsx(Label.Label, { asChild: true, size: size, children: jsxRuntime.jsx("span", { children: jsxRuntime.jsx(SelectedIcon.SelectedIcon, { multiple: multiple, selected: !!selected }) }) }), jsxRuntime.jsxs(Label.Label, { className: Option_module.optionText, size: size, id: labelId, children: [children, description && (jsxRuntime.jsx(Description.default, { children: description }))] })] }));
50
+ });
51
+ ComboboxOption.displayName = 'ComboboxOption';
52
+
53
+ exports.ComboboxOption = ComboboxOption;
@@ -0,0 +1,6 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var classes = {"option":"fds-option-option-6c39c7b6","active":"fds-option-active-6c39c7b6","multiple":"fds-option-multiple-6c39c7b6","optionText":"fds-option-optionText-6c39c7b6","checkbox":"fds-option-checkbox-6c39c7b6","selectIconWrapper":"fds-option-selectIconWrapper-6c39c7b6","small":"fds-option-small-6c39c7b6","medium":"fds-option-medium-6c39c7b6","large":"fds-option-large-6c39c7b6","selected":"fds-option-selected-6c39c7b6","selectIcon":"fds-option-selectIcon-6c39c7b6"};
5
+
6
+ module.exports = classes;
@@ -0,0 +1,16 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var Combobox$1 = require('./Combobox.js');
5
+ var Option = require('./Option/Option.js');
6
+ var Empty = require('./Empty/Empty.js');
7
+
8
+ const Combobox = Combobox$1.Combobox;
9
+ Combobox.Option = Option.ComboboxOption;
10
+ Combobox.Empty = Empty.ComboboxEmpty;
11
+ Combobox.Option.displayName = 'Combobox.Option';
12
+ Combobox.Empty.displayName = 'Combobox.Empty';
13
+
14
+ exports.ComboboxOption = Option.ComboboxOption;
15
+ exports.ComboboxEmpty = Empty.ComboboxEmpty;
16
+ exports.Combobox = Combobox;
@@ -0,0 +1,46 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var React = require('react');
8
+ require('../../../Chip/index.js');
9
+ var Combobox = require('../Combobox.js');
10
+ var Removable = require('../../../Chip/Removable/Removable.js');
11
+
12
+ const ComboboxChips = () => {
13
+ const context = React.useContext(Combobox.ComboboxContext);
14
+ if (!context) {
15
+ throw new Error('ComboboxContext is missing');
16
+ }
17
+ const { size, readOnly, disabled, selectedOptions, setSelectedOptions, chipSrLabel, inputRef, } = context;
18
+ return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: selectedOptions.map((option) => {
19
+ return (jsxRuntime.jsx(Removable.RemovableChip, { size: size, disabled: disabled, onKeyDown: (e) => {
20
+ if (readOnly)
21
+ return;
22
+ if (disabled)
23
+ return;
24
+ if (e.key === 'Enter') {
25
+ e.stopPropagation();
26
+ setSelectedOptions(selectedOptions.filter((i) => i.value !== option.value));
27
+ inputRef.current?.focus();
28
+ }
29
+ }, onClick: () => {
30
+ if (readOnly)
31
+ return;
32
+ if (disabled)
33
+ return;
34
+ /* If we click a chip, filter the active values and remove the one we clicked */
35
+ setSelectedOptions(selectedOptions.filter((i) => i.value !== option.value));
36
+ }, style: {
37
+ /* We already set the opacity on Combobox */
38
+ opacity: 1,
39
+ }, "aria-label": chipSrLabel(option), children: option.label }, option.value));
40
+ }) }));
41
+ };
42
+ ComboboxChips.displayName = 'ComboboxChips';
43
+ var ComboboxChips$1 = ComboboxChips;
44
+
45
+ exports.ComboboxChips = ComboboxChips;
46
+ exports.default = ComboboxChips$1;
@@ -0,0 +1,44 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var React = require('react');
8
+ var akselIcons = require('@navikt/aksel-icons');
9
+ var clsx = require('../../../../node_modules/clsx/dist/clsx.js');
10
+ var Combobox = require('../Combobox.js');
11
+ var Combobox_module = require('../Combobox.module.css.js');
12
+ var utility_module = require('../../../../utilities/utility.module.css.js');
13
+
14
+ const ComboboxClearButton = () => {
15
+ const context = React.useContext(Combobox.ComboboxContext);
16
+ if (!context) {
17
+ throw new Error('ComboboxContext is missing');
18
+ }
19
+ const { size, readOnly, disabled, cleanButtonLabel, inputRef, setSelectedOptions, setInputValue, } = context;
20
+ return (jsxRuntime.jsx("button", { disabled: disabled, className: clsx.clsx(Combobox_module.clearButton, Combobox_module[size], utility_module.focusable), onClick: () => {
21
+ if (readOnly)
22
+ return;
23
+ if (disabled)
24
+ return;
25
+ setSelectedOptions([]);
26
+ setInputValue('');
27
+ }, onKeyDown: (e) => {
28
+ if (readOnly)
29
+ return;
30
+ if (disabled)
31
+ return;
32
+ if (e.key === 'Enter') {
33
+ e.stopPropagation();
34
+ setSelectedOptions([]);
35
+ setInputValue('');
36
+ inputRef.current?.focus();
37
+ }
38
+ }, type: 'button', "aria-label": cleanButtonLabel, children: jsxRuntime.jsx(akselIcons.XMarkIcon, { fontSize: '1.5em', title: 'Clear selection' }) }));
39
+ };
40
+ ComboboxClearButton.displayName = 'ComboboxClearButton';
41
+ var ComboboxClearButton$1 = ComboboxClearButton;
42
+
43
+ exports.ComboboxClearButton = ComboboxClearButton;
44
+ exports.default = ComboboxClearButton$1;
@@ -0,0 +1,17 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ var jsxRuntime = require('react/jsx-runtime');
7
+ var Combobox_module = require('../Combobox.module.css.js');
8
+ var ErrorMessage = require('../../../Typography/ErrorMessage/ErrorMessage.js');
9
+
10
+ const ComboboxError = ({ size, error, formFieldProps, }) => {
11
+ return (jsxRuntime.jsx("div", { className: Combobox_module.errorMessage, id: formFieldProps.errorId, "aria-live": 'polite', "aria-relevant": 'additions removals', children: error && jsxRuntime.jsx(ErrorMessage.ErrorMessage, { size: size, children: error }) }));
12
+ };
13
+ ComboboxError.displayName = 'ComboboxError';
14
+ var ComboboxError$1 = ComboboxError;
15
+
16
+ exports.ComboboxError = ComboboxError;
17
+ exports.default = ComboboxError$1;