@digdir/designsystemet-react 1.0.0-next.35 → 1.0.0-next.37

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 (483) hide show
  1. package/README.md +1 -2
  2. package/dist/cjs/components/Accordion/Accordion.js +1 -1
  3. package/dist/cjs/components/Alert/Alert.js +2 -2
  4. package/dist/cjs/components/Avatar/Avatar.js +5 -4
  5. package/dist/cjs/components/Badge/Badge.js +4 -4
  6. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js +1 -1
  7. package/dist/cjs/components/Button/Button.js +3 -4
  8. package/dist/cjs/components/Card/Card.js +1 -1
  9. package/dist/cjs/components/Chip/Chips.js +5 -4
  10. package/dist/cjs/components/Dropdown/Dropdown.js +2 -12
  11. package/dist/cjs/components/Dropdown/DropdownButton.js +12 -0
  12. package/dist/cjs/components/Dropdown/DropdownHeading.js +2 -2
  13. package/dist/cjs/components/Dropdown/DropdownItem.js +2 -5
  14. package/dist/cjs/components/Dropdown/DropdownList.js +1 -2
  15. package/dist/cjs/components/Dropdown/DropdownTriggerContext.js +26 -0
  16. package/dist/cjs/components/Dropdown/index.js +13 -7
  17. package/dist/cjs/components/ErrorSummary/ErrorSummary.js +2 -3
  18. package/dist/cjs/components/ErrorSummary/ErrorSummaryHeading.js +2 -7
  19. package/dist/cjs/components/ErrorSummary/ErrorSummaryList.js +1 -3
  20. package/dist/cjs/components/Heading/Heading.js +3 -3
  21. package/dist/cjs/components/HelpText/HelpText.js +2 -2
  22. package/dist/cjs/components/Label/Label.js +3 -3
  23. package/dist/cjs/components/Link/Link.js +2 -2
  24. package/dist/cjs/components/List/Lists.js +2 -2
  25. package/dist/cjs/components/Modal/Modal.js +10 -4
  26. package/dist/cjs/components/Modal/ModalTrigger.js +2 -2
  27. package/dist/cjs/components/Modal/{ModalContext.js → ModalTriggerContext.js} +3 -3
  28. package/dist/cjs/components/Modal/index.js +4 -4
  29. package/dist/cjs/components/Pagination/Pagination.js +2 -6
  30. package/dist/cjs/components/Pagination/PaginationButton.js +1 -3
  31. package/dist/cjs/components/Paragraph/Paragraph.js +3 -3
  32. package/dist/cjs/components/Popover/Popover.js +39 -16
  33. package/dist/cjs/components/Popover/PopoverTrigger.js +2 -2
  34. package/dist/cjs/components/Popover/{PopoverContext.js → PopoverTriggerContext.js} +3 -3
  35. package/dist/cjs/components/Popover/index.js +4 -4
  36. package/dist/cjs/components/Table/Table.js +2 -2
  37. package/dist/cjs/components/Table/TableFoot.js +11 -0
  38. package/dist/cjs/components/Table/index.js +11 -6
  39. package/dist/cjs/components/Tabs/Tabs.js +2 -3
  40. package/dist/cjs/components/Tabs/TabsPanel.js +1 -1
  41. package/dist/cjs/components/Tag/Tag.js +2 -2
  42. package/dist/cjs/components/ToggleGroup/ToggleGroup.js +1 -2
  43. package/dist/cjs/components/ToggleGroup/ToggleGroupItem.js +2 -2
  44. package/dist/cjs/components/ToggleGroup/useToggleGroupitem.js +0 -1
  45. package/dist/cjs/components/Tooltip/Tooltip.js +48 -18
  46. package/dist/cjs/components/ValidationMessage/ValidationMessage.js +2 -2
  47. package/dist/cjs/components/form/Checkbox/Checkbox.js +10 -18
  48. package/dist/cjs/components/form/Combobox/Combobox.js +2 -2
  49. package/dist/cjs/components/form/Combobox/Custom.js +2 -2
  50. package/dist/cjs/components/form/Combobox/Empty.js +1 -1
  51. package/dist/cjs/components/form/Combobox/Option/Option.js +4 -2
  52. package/dist/cjs/components/form/Combobox/internal/ComboboxChips.js +1 -1
  53. package/dist/cjs/components/form/Combobox/internal/ComboboxError.js +1 -1
  54. package/dist/cjs/components/form/Combobox/internal/ComboboxInput.js +1 -1
  55. package/dist/cjs/components/form/Combobox/internal/ComboboxLabel.js +1 -1
  56. package/dist/cjs/components/form/Field/Field.js +17 -0
  57. package/dist/cjs/components/form/Field/FieldAffix.js +16 -0
  58. package/dist/cjs/components/form/Field/FieldCounter.js +28 -0
  59. package/dist/cjs/components/form/Field/FieldDescription.js +11 -0
  60. package/dist/cjs/components/form/Field/fieldObserver.js +97 -0
  61. package/dist/cjs/components/form/Field/index.js +33 -0
  62. package/dist/cjs/components/form/Fieldset/Fieldset.js +2 -16
  63. package/dist/cjs/components/form/Fieldset/FieldsetDescription.js +12 -0
  64. package/dist/cjs/components/form/Fieldset/FieldsetLegend.js +12 -0
  65. package/dist/cjs/components/form/Fieldset/index.js +25 -0
  66. package/dist/cjs/components/form/Input/Input.js +23 -0
  67. package/dist/cjs/components/form/Radio/Radio.js +10 -9
  68. package/dist/cjs/components/form/Search/Search.js +2 -39
  69. package/dist/cjs/components/form/Search/SearchButton.js +12 -0
  70. package/dist/cjs/components/form/Search/SearchClear.js +28 -0
  71. package/dist/cjs/components/form/Search/SearchInput.js +14 -0
  72. package/dist/cjs/components/form/Search/index.js +33 -0
  73. package/dist/cjs/components/form/Select/Select.js +12 -10
  74. package/dist/cjs/components/form/Select/index.js +4 -3
  75. package/dist/cjs/components/form/Switch/Switch.js +9 -10
  76. package/dist/cjs/components/form/Textarea/Textarea.js +3 -20
  77. package/dist/cjs/components/form/Textfield/Textfield.js +12 -19
  78. package/dist/cjs/components/form/useFormField.js +1 -3
  79. package/dist/cjs/components/loaders/Skeleton/Skeleton.js +2 -3
  80. package/dist/cjs/components/loaders/Spinner/Spinner.js +6 -4
  81. package/dist/cjs/index.js +51 -26
  82. package/dist/cjs/utilities/hooks/useCheckboxGroup/useCheckboxGroup.js +121 -0
  83. package/dist/cjs/utilities/hooks/useDebounceCallback/useDebounceCallback.js +1 -1
  84. package/dist/cjs/utilities/hooks/useRadioGroup/useRadioGroup.js +99 -0
  85. package/dist/esm/components/Accordion/Accordion.js +1 -1
  86. package/dist/esm/components/Alert/Alert.js +2 -2
  87. package/dist/esm/components/Avatar/Avatar.js +5 -4
  88. package/dist/esm/components/Badge/Badge.js +4 -4
  89. package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +1 -1
  90. package/dist/esm/components/Button/Button.js +3 -4
  91. package/dist/esm/components/Card/Card.js +1 -1
  92. package/dist/esm/components/Chip/Chips.js +5 -4
  93. package/dist/esm/components/Dropdown/Dropdown.js +4 -13
  94. package/dist/esm/components/Dropdown/DropdownButton.js +10 -0
  95. package/dist/esm/components/Dropdown/DropdownHeading.js +2 -2
  96. package/dist/esm/components/Dropdown/DropdownItem.js +3 -6
  97. package/dist/esm/components/Dropdown/DropdownList.js +1 -2
  98. package/dist/esm/components/Dropdown/DropdownTriggerContext.js +24 -0
  99. package/dist/esm/components/Dropdown/index.js +12 -7
  100. package/dist/esm/components/ErrorSummary/ErrorSummary.js +2 -3
  101. package/dist/esm/components/ErrorSummary/ErrorSummaryHeading.js +2 -7
  102. package/dist/esm/components/ErrorSummary/ErrorSummaryList.js +2 -4
  103. package/dist/esm/components/Heading/Heading.js +3 -3
  104. package/dist/esm/components/HelpText/HelpText.js +2 -2
  105. package/dist/esm/components/Label/Label.js +3 -3
  106. package/dist/esm/components/Link/Link.js +2 -2
  107. package/dist/esm/components/List/Lists.js +2 -2
  108. package/dist/esm/components/Modal/Modal.js +9 -3
  109. package/dist/esm/components/Modal/ModalTrigger.js +1 -1
  110. package/dist/esm/components/Modal/{ModalContext.js → ModalTriggerContext.js} +3 -3
  111. package/dist/esm/components/Modal/index.js +4 -4
  112. package/dist/esm/components/Pagination/Pagination.js +4 -7
  113. package/dist/esm/components/Pagination/PaginationButton.js +2 -4
  114. package/dist/esm/components/Paragraph/Paragraph.js +3 -3
  115. package/dist/esm/components/Popover/Popover.js +38 -15
  116. package/dist/esm/components/Popover/PopoverTrigger.js +1 -1
  117. package/dist/esm/components/Popover/{PopoverContext.js → PopoverTriggerContext.js} +3 -3
  118. package/dist/esm/components/Popover/index.js +4 -4
  119. package/dist/esm/components/Table/Table.js +2 -2
  120. package/dist/esm/components/Table/TableFoot.js +9 -0
  121. package/dist/esm/components/Table/index.js +11 -7
  122. package/dist/esm/components/Tabs/Tabs.js +2 -3
  123. package/dist/esm/components/Tabs/TabsPanel.js +1 -1
  124. package/dist/esm/components/Tag/Tag.js +2 -2
  125. package/dist/esm/components/ToggleGroup/ToggleGroup.js +1 -2
  126. package/dist/esm/components/ToggleGroup/ToggleGroupItem.js +2 -2
  127. package/dist/esm/components/ToggleGroup/useToggleGroupitem.js +0 -1
  128. package/dist/esm/components/Tooltip/Tooltip.js +50 -20
  129. package/dist/esm/components/ValidationMessage/ValidationMessage.js +2 -2
  130. package/dist/esm/components/form/Checkbox/Checkbox.js +11 -19
  131. package/dist/esm/components/form/Combobox/Combobox.js +2 -2
  132. package/dist/esm/components/form/Combobox/Custom.js +2 -2
  133. package/dist/esm/components/form/Combobox/Empty.js +1 -1
  134. package/dist/esm/components/form/Combobox/Option/Option.js +4 -2
  135. package/dist/esm/components/form/Combobox/internal/ComboboxChips.js +1 -1
  136. package/dist/esm/components/form/Combobox/internal/ComboboxError.js +1 -1
  137. package/dist/esm/components/form/Combobox/internal/ComboboxInput.js +1 -1
  138. package/dist/esm/components/form/Combobox/internal/ComboboxLabel.js +1 -1
  139. package/dist/esm/components/form/Field/Field.js +15 -0
  140. package/dist/esm/components/form/Field/FieldAffix.js +13 -0
  141. package/dist/esm/components/form/Field/FieldCounter.js +26 -0
  142. package/dist/esm/components/form/Field/FieldDescription.js +9 -0
  143. package/dist/esm/components/form/Field/fieldObserver.js +95 -0
  144. package/dist/esm/components/form/Field/index.js +27 -0
  145. package/dist/esm/components/form/Fieldset/Fieldset.js +4 -18
  146. package/dist/esm/components/form/Fieldset/FieldsetDescription.js +10 -0
  147. package/dist/esm/components/form/Fieldset/FieldsetLegend.js +10 -0
  148. package/dist/esm/components/form/Fieldset/index.js +21 -0
  149. package/dist/esm/components/form/Input/Input.js +21 -0
  150. package/dist/esm/components/form/Radio/Radio.js +11 -10
  151. package/dist/esm/components/form/Search/Search.js +4 -41
  152. package/dist/esm/components/form/Search/SearchButton.js +10 -0
  153. package/dist/esm/components/form/Search/SearchClear.js +26 -0
  154. package/dist/esm/components/form/Search/SearchInput.js +12 -0
  155. package/dist/esm/components/form/Search/index.js +28 -0
  156. package/dist/esm/components/form/Select/Select.js +13 -11
  157. package/dist/esm/components/form/Select/index.js +4 -3
  158. package/dist/esm/components/form/Switch/Switch.js +10 -11
  159. package/dist/esm/components/form/Textarea/Textarea.js +5 -22
  160. package/dist/esm/components/form/Textfield/Textfield.js +14 -21
  161. package/dist/esm/components/form/useFormField.js +1 -3
  162. package/dist/esm/components/loaders/Skeleton/Skeleton.js +2 -3
  163. package/dist/esm/components/loaders/Spinner/Spinner.js +6 -4
  164. package/dist/esm/index.js +21 -9
  165. package/dist/esm/utilities/hooks/useCheckboxGroup/useCheckboxGroup.js +119 -0
  166. package/dist/esm/utilities/hooks/useDebounceCallback/useDebounceCallback.js +1 -1
  167. package/dist/esm/utilities/hooks/useRadioGroup/useRadioGroup.js +97 -0
  168. package/dist/react-types.d.ts +11 -0
  169. package/dist/types/colors.d.ts +11 -0
  170. package/dist/types/colors.d.ts.map +1 -0
  171. package/dist/types/components/Accordion/Accordion.d.ts +276 -16
  172. package/dist/types/components/Accordion/Accordion.d.ts.map +1 -1
  173. package/dist/types/components/Accordion/AccordionContent.d.ts.map +1 -1
  174. package/dist/types/components/Accordion/AccordionHeading.d.ts.map +1 -1
  175. package/dist/types/components/Accordion/AccordionItem.d.ts.map +1 -1
  176. package/dist/types/components/Accordion/index.d.ts.map +1 -1
  177. package/dist/types/components/Alert/Alert.d.ts +275 -23
  178. package/dist/types/components/Alert/Alert.d.ts.map +1 -1
  179. package/dist/types/components/Alert/index.d.ts.map +1 -1
  180. package/dist/types/components/Avatar/Avatar.d.ts +282 -36
  181. package/dist/types/components/Avatar/Avatar.d.ts.map +1 -1
  182. package/dist/types/components/Avatar/index.d.ts.map +1 -1
  183. package/dist/types/components/Badge/Badge.d.ts +281 -50
  184. package/dist/types/components/Badge/Badge.d.ts.map +1 -1
  185. package/dist/types/components/Badge/index.d.ts.map +1 -1
  186. package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts +273 -18
  187. package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -1
  188. package/dist/types/components/Breadcrumbs/BreadcrumbsItem.d.ts.map +1 -1
  189. package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts +277 -5
  190. package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts.map +1 -1
  191. package/dist/types/components/Breadcrumbs/BreadcrumbsList.d.ts.map +1 -1
  192. package/dist/types/components/Breadcrumbs/index.d.ts +546 -8
  193. package/dist/types/components/Breadcrumbs/index.d.ts.map +1 -1
  194. package/dist/types/components/Button/Button.d.ts +289 -41
  195. package/dist/types/components/Button/Button.d.ts.map +1 -1
  196. package/dist/types/components/Button/index.d.ts.map +1 -1
  197. package/dist/types/components/Card/Card.d.ts +276 -20
  198. package/dist/types/components/Card/Card.d.ts.map +1 -1
  199. package/dist/types/components/Card/CardBlock.d.ts.map +1 -1
  200. package/dist/types/components/Card/index.d.ts +269 -3
  201. package/dist/types/components/Card/index.d.ts.map +1 -1
  202. package/dist/types/components/Chip/Chips.d.ts +1169 -10
  203. package/dist/types/components/Chip/Chips.d.ts.map +1 -1
  204. package/dist/types/components/Chip/index.d.ts +1158 -12
  205. package/dist/types/components/Chip/index.d.ts.map +1 -1
  206. package/dist/types/components/Divider/Divider.d.ts.map +1 -1
  207. package/dist/types/components/Divider/index.d.ts.map +1 -1
  208. package/dist/types/components/Dropdown/Dropdown.d.ts +283 -15
  209. package/dist/types/components/Dropdown/Dropdown.d.ts.map +1 -1
  210. package/dist/types/components/Dropdown/DropdownButton.d.ts +4 -0
  211. package/dist/types/components/Dropdown/DropdownButton.d.ts.map +1 -0
  212. package/dist/types/components/Dropdown/DropdownHeading.d.ts +7 -3
  213. package/dist/types/components/Dropdown/DropdownHeading.d.ts.map +1 -1
  214. package/dist/types/components/Dropdown/DropdownItem.d.ts +3 -3
  215. package/dist/types/components/Dropdown/DropdownItem.d.ts.map +1 -1
  216. package/dist/types/components/Dropdown/DropdownList.d.ts.map +1 -1
  217. package/dist/types/components/Dropdown/DropdownTrigger.d.ts +285 -15
  218. package/dist/types/components/Dropdown/DropdownTrigger.d.ts.map +1 -1
  219. package/dist/types/components/Dropdown/DropdownTriggerContext.d.ts +22 -0
  220. package/dist/types/components/Dropdown/DropdownTriggerContext.d.ts.map +1 -0
  221. package/dist/types/components/Dropdown/index.d.ts +577 -25
  222. package/dist/types/components/Dropdown/index.d.ts.map +1 -1
  223. package/dist/types/components/ErrorSummary/ErrorSummary.d.ts +3 -8
  224. package/dist/types/components/ErrorSummary/ErrorSummary.d.ts.map +1 -1
  225. package/dist/types/components/ErrorSummary/ErrorSummaryHeading.d.ts +1 -1
  226. package/dist/types/components/ErrorSummary/ErrorSummaryHeading.d.ts.map +1 -1
  227. package/dist/types/components/ErrorSummary/ErrorSummaryItem.d.ts.map +1 -1
  228. package/dist/types/components/ErrorSummary/ErrorSummaryList.d.ts +1 -2
  229. package/dist/types/components/ErrorSummary/ErrorSummaryList.d.ts.map +1 -1
  230. package/dist/types/components/ErrorSummary/index.d.ts +3 -6
  231. package/dist/types/components/ErrorSummary/index.d.ts.map +1 -1
  232. package/dist/types/components/Heading/Heading.d.ts +3 -7
  233. package/dist/types/components/Heading/Heading.d.ts.map +1 -1
  234. package/dist/types/components/Heading/index.d.ts.map +1 -1
  235. package/dist/types/components/HelpText/HelpText.d.ts +286 -22
  236. package/dist/types/components/HelpText/HelpText.d.ts.map +1 -1
  237. package/dist/types/components/HelpText/index.d.ts.map +1 -1
  238. package/dist/types/components/Label/Label.d.ts +4 -13
  239. package/dist/types/components/Label/Label.d.ts.map +1 -1
  240. package/dist/types/components/Label/index.d.ts.map +1 -1
  241. package/dist/types/components/Link/Link.d.ts +284 -20
  242. package/dist/types/components/Link/Link.d.ts.map +1 -1
  243. package/dist/types/components/Link/index.d.ts.map +1 -1
  244. package/dist/types/components/List/ListItem.d.ts.map +1 -1
  245. package/dist/types/components/List/Lists.d.ts +16 -9
  246. package/dist/types/components/List/Lists.d.ts.map +1 -1
  247. package/dist/types/components/List/index.d.ts +2 -4
  248. package/dist/types/components/List/index.d.ts.map +1 -1
  249. package/dist/types/components/Modal/Modal.d.ts +280 -21
  250. package/dist/types/components/Modal/Modal.d.ts.map +1 -1
  251. package/dist/types/components/Modal/ModalBlock.d.ts.map +1 -1
  252. package/dist/types/components/Modal/ModalTrigger.d.ts +282 -7
  253. package/dist/types/components/Modal/ModalTrigger.d.ts.map +1 -1
  254. package/dist/types/components/Modal/ModalTriggerContext.d.ts +10 -0
  255. package/dist/types/components/Modal/ModalTriggerContext.d.ts.map +1 -0
  256. package/dist/types/components/Modal/index.d.ts +562 -17
  257. package/dist/types/components/Modal/index.d.ts.map +1 -1
  258. package/dist/types/components/Pagination/Pagination.d.ts +278 -23
  259. package/dist/types/components/Pagination/Pagination.d.ts.map +1 -1
  260. package/dist/types/components/Pagination/PaginationButton.d.ts +285 -2
  261. package/dist/types/components/Pagination/PaginationButton.d.ts.map +1 -1
  262. package/dist/types/components/Pagination/PaginationItem.d.ts.map +1 -1
  263. package/dist/types/components/Pagination/PaginationList.d.ts.map +1 -1
  264. package/dist/types/components/Pagination/index.d.ts +554 -5
  265. package/dist/types/components/Pagination/index.d.ts.map +1 -1
  266. package/dist/types/components/Pagination/usePagination.d.ts.map +1 -1
  267. package/dist/types/components/Paragraph/Paragraph.d.ts +3 -9
  268. package/dist/types/components/Paragraph/Paragraph.d.ts.map +1 -1
  269. package/dist/types/components/Paragraph/index.d.ts.map +1 -1
  270. package/dist/types/components/Popover/Popover.d.ts +287 -43
  271. package/dist/types/components/Popover/Popover.d.ts.map +1 -1
  272. package/dist/types/components/Popover/PopoverTrigger.d.ts +285 -13
  273. package/dist/types/components/Popover/PopoverTrigger.d.ts.map +1 -1
  274. package/dist/types/components/Popover/PopoverTriggerContext.d.ts +13 -0
  275. package/dist/types/components/Popover/PopoverTriggerContext.d.ts.map +1 -0
  276. package/dist/types/components/Popover/index.d.ts +4 -4
  277. package/dist/types/components/Popover/index.d.ts.map +1 -1
  278. package/dist/types/components/SkipLink/SkipLink.d.ts +279 -5
  279. package/dist/types/components/SkipLink/SkipLink.d.ts.map +1 -1
  280. package/dist/types/components/SkipLink/index.d.ts.map +1 -1
  281. package/dist/types/components/Table/Table.d.ts +3 -12
  282. package/dist/types/components/Table/Table.d.ts.map +1 -1
  283. package/dist/types/components/Table/TableBody.d.ts.map +1 -1
  284. package/dist/types/components/Table/TableCell.d.ts.map +1 -1
  285. package/dist/types/components/Table/TableFoot.d.ts +4 -0
  286. package/dist/types/components/Table/TableFoot.d.ts.map +1 -0
  287. package/dist/types/components/Table/TableHead.d.ts.map +1 -1
  288. package/dist/types/components/Table/TableHeaderCell.d.ts.map +1 -1
  289. package/dist/types/components/Table/TableRow.d.ts.map +1 -1
  290. package/dist/types/components/Table/index.d.ts +18 -10
  291. package/dist/types/components/Table/index.d.ts.map +1 -1
  292. package/dist/types/components/Tabs/Tabs.d.ts +278 -20
  293. package/dist/types/components/Tabs/Tabs.d.ts.map +1 -1
  294. package/dist/types/components/Tabs/TabsList.d.ts.map +1 -1
  295. package/dist/types/components/Tabs/TabsPanel.d.ts.map +1 -1
  296. package/dist/types/components/Tabs/TabsTab.d.ts.map +1 -1
  297. package/dist/types/components/Tabs/index.d.ts +270 -5
  298. package/dist/types/components/Tabs/index.d.ts.map +1 -1
  299. package/dist/types/components/Tag/Tag.d.ts +276 -20
  300. package/dist/types/components/Tag/Tag.d.ts.map +1 -1
  301. package/dist/types/components/Tag/index.d.ts.map +1 -1
  302. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts +279 -23
  303. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts.map +1 -1
  304. package/dist/types/components/ToggleGroup/ToggleGroupItem.d.ts +285 -2
  305. package/dist/types/components/ToggleGroup/ToggleGroupItem.d.ts.map +1 -1
  306. package/dist/types/components/ToggleGroup/index.d.ts.map +1 -1
  307. package/dist/types/components/ToggleGroup/useToggleGroupitem.d.ts +0 -2
  308. package/dist/types/components/ToggleGroup/useToggleGroupitem.d.ts.map +1 -1
  309. package/dist/types/components/Tooltip/Tooltip.d.ts +287 -33
  310. package/dist/types/components/Tooltip/Tooltip.d.ts.map +1 -1
  311. package/dist/types/components/Tooltip/index.d.ts.map +1 -1
  312. package/dist/types/components/ValidationMessage/ValidationMessage.d.ts +275 -20
  313. package/dist/types/components/ValidationMessage/ValidationMessage.d.ts.map +1 -1
  314. package/dist/types/components/ValidationMessage/index.d.ts.map +1 -1
  315. package/dist/types/components/form/CharacterCounter.d.ts +2 -2
  316. package/dist/types/components/form/CharacterCounter.d.ts.map +1 -1
  317. package/dist/types/components/form/Checkbox/Checkbox.d.ts +36 -19
  318. package/dist/types/components/form/Checkbox/Checkbox.d.ts.map +1 -1
  319. package/dist/types/components/form/Checkbox/index.d.ts +2 -21
  320. package/dist/types/components/form/Checkbox/index.d.ts.map +1 -1
  321. package/dist/types/components/form/Combobox/Combobox.d.ts +3 -3
  322. package/dist/types/components/form/Combobox/Combobox.d.ts.map +1 -1
  323. package/dist/types/components/form/Combobox/ComboboxContext.d.ts.map +1 -1
  324. package/dist/types/components/form/Combobox/ComboboxIdContext.d.ts.map +1 -1
  325. package/dist/types/components/form/Combobox/Custom.d.ts.map +1 -1
  326. package/dist/types/components/form/Combobox/Empty.d.ts.map +1 -1
  327. package/dist/types/components/form/Combobox/Option/Description.d.ts.map +1 -1
  328. package/dist/types/components/form/Combobox/Option/Option.d.ts.map +1 -1
  329. package/dist/types/components/form/Combobox/Option/SelectedIcon.d.ts.map +1 -1
  330. package/dist/types/components/form/Combobox/Option/useComboboxOption.d.ts.map +1 -1
  331. package/dist/types/components/form/Combobox/data/data.d.ts.map +1 -1
  332. package/dist/types/components/form/Combobox/index.d.ts.map +1 -1
  333. package/dist/types/components/form/Combobox/internal/ComboboxChips.d.ts.map +1 -1
  334. package/dist/types/components/form/Combobox/internal/ComboboxClearButton.d.ts.map +1 -1
  335. package/dist/types/components/form/Combobox/internal/ComboboxError.d.ts.map +1 -1
  336. package/dist/types/components/form/Combobox/internal/ComboboxInput.d.ts.map +1 -1
  337. package/dist/types/components/form/Combobox/internal/ComboboxLabel.d.ts.map +1 -1
  338. package/dist/types/components/form/Combobox/internal/ComboboxNative.d.ts.map +1 -1
  339. package/dist/types/components/form/Combobox/useCombobox.d.ts.map +1 -1
  340. package/dist/types/components/form/Combobox/useComboboxKeyboard.d.ts.map +1 -1
  341. package/dist/types/components/form/Combobox/useFloatingCombobox.d.ts.map +1 -1
  342. package/dist/types/components/form/Combobox/utilities.d.ts.map +1 -1
  343. package/dist/types/components/form/Field/Field.d.ts +15 -0
  344. package/dist/types/components/form/Field/Field.d.ts.map +1 -0
  345. package/dist/types/components/form/Field/FieldAffix.d.ts +6 -0
  346. package/dist/types/components/form/Field/FieldAffix.d.ts.map +1 -0
  347. package/dist/types/components/form/Field/FieldCounter.d.ts +297 -0
  348. package/dist/types/components/form/Field/FieldCounter.d.ts.map +1 -0
  349. package/dist/types/components/form/Field/FieldDescription.d.ts +4 -0
  350. package/dist/types/components/form/Field/FieldDescription.d.ts.map +1 -0
  351. package/dist/types/components/form/Field/fieldObserver.d.ts +2 -0
  352. package/dist/types/components/form/Field/fieldObserver.d.ts.map +1 -0
  353. package/dist/types/components/form/Field/index.d.ts +301 -0
  354. package/dist/types/components/form/Field/index.d.ts.map +1 -0
  355. package/dist/types/components/form/Fieldset/Fieldset.d.ts +276 -25
  356. package/dist/types/components/form/Fieldset/Fieldset.d.ts.map +1 -1
  357. package/dist/types/components/form/Fieldset/FieldsetContext.d.ts +1 -1
  358. package/dist/types/components/form/Fieldset/FieldsetContext.d.ts.map +1 -1
  359. package/dist/types/components/form/Fieldset/FieldsetDescription.d.ts +8 -0
  360. package/dist/types/components/form/Fieldset/FieldsetDescription.d.ts.map +1 -0
  361. package/dist/types/components/form/Fieldset/FieldsetLegend.d.ts +5 -0
  362. package/dist/types/components/form/Fieldset/FieldsetLegend.d.ts.map +1 -0
  363. package/dist/types/components/form/Fieldset/index.d.ts +295 -1
  364. package/dist/types/components/form/Fieldset/index.d.ts.map +1 -1
  365. package/dist/types/components/form/Input/Input.d.ts +334 -0
  366. package/dist/types/components/form/Input/Input.d.ts.map +1 -0
  367. package/dist/types/components/form/Input/index.d.ts +3 -0
  368. package/dist/types/components/form/Input/index.d.ts.map +1 -0
  369. package/dist/types/components/form/Radio/Radio.d.ts +37 -12
  370. package/dist/types/components/form/Radio/Radio.d.ts.map +1 -1
  371. package/dist/types/components/form/Radio/index.d.ts +2 -19
  372. package/dist/types/components/form/Radio/index.d.ts.map +1 -1
  373. package/dist/types/components/form/Search/Search.d.ts +3 -75
  374. package/dist/types/components/form/Search/Search.d.ts.map +1 -1
  375. package/dist/types/components/form/Search/SearchButton.d.ts +295 -0
  376. package/dist/types/components/form/Search/SearchButton.d.ts.map +1 -0
  377. package/dist/types/components/form/Search/SearchClear.d.ts +299 -0
  378. package/dist/types/components/form/Search/SearchClear.d.ts.map +1 -0
  379. package/dist/types/components/form/Search/SearchInput.d.ts +4 -0
  380. package/dist/types/components/form/Search/SearchInput.d.ts.map +1 -0
  381. package/dist/types/components/form/Search/index.d.ts +593 -1
  382. package/dist/types/components/form/Search/index.d.ts.map +1 -1
  383. package/dist/types/components/form/Select/Select.d.ts +284 -57
  384. package/dist/types/components/form/Select/Select.d.ts.map +1 -1
  385. package/dist/types/components/form/Select/SelectOptgroup.d.ts.map +1 -1
  386. package/dist/types/components/form/Select/SelectOption.d.ts.map +1 -1
  387. package/dist/types/components/form/Select/index.d.ts +284 -5
  388. package/dist/types/components/form/Select/index.d.ts.map +1 -1
  389. package/dist/types/components/form/Switch/Switch.d.ts +43 -18
  390. package/dist/types/components/form/Switch/Switch.d.ts.map +1 -1
  391. package/dist/types/components/form/Switch/index.d.ts.map +1 -1
  392. package/dist/types/components/form/Textarea/Textarea.d.ts +5 -44
  393. package/dist/types/components/form/Textarea/Textarea.d.ts.map +1 -1
  394. package/dist/types/components/form/Textarea/index.d.ts.map +1 -1
  395. package/dist/types/components/form/Textarea/useTextarea.d.ts.map +1 -1
  396. package/dist/types/components/form/Textfield/Textfield.d.ts +38 -61
  397. package/dist/types/components/form/Textfield/Textfield.d.ts.map +1 -1
  398. package/dist/types/components/form/Textfield/index.d.ts.map +1 -1
  399. package/dist/types/components/form/useFormField.d.ts +2 -1
  400. package/dist/types/components/form/useFormField.d.ts.map +1 -1
  401. package/dist/types/components/index.d.ts +2 -0
  402. package/dist/types/components/index.d.ts.map +1 -1
  403. package/dist/types/components/loaders/Skeleton/Skeleton.d.ts.map +1 -1
  404. package/dist/types/components/loaders/Skeleton/index.d.ts.map +1 -1
  405. package/dist/types/components/loaders/Spinner/Spinner.d.ts +15 -14
  406. package/dist/types/components/loaders/Spinner/Spinner.d.ts.map +1 -1
  407. package/dist/types/components/loaders/Spinner/index.d.ts +1 -2
  408. package/dist/types/components/loaders/Spinner/index.d.ts.map +1 -1
  409. package/dist/types/index.d.ts +1 -0
  410. package/dist/types/index.d.ts.map +1 -1
  411. package/dist/types/types.d.ts +19 -0
  412. package/dist/types/types.d.ts.map +1 -0
  413. package/dist/types/utilities/RovingFocus/RovingFocusItem.d.ts.map +1 -1
  414. package/dist/types/utilities/RovingFocus/RovingFocusRoot.d.ts.map +1 -1
  415. package/dist/types/utilities/RovingFocus/index.d.ts.map +1 -1
  416. package/dist/types/utilities/RovingFocus/useRovingFocus.d.ts +3 -1
  417. package/dist/types/utilities/RovingFocus/useRovingFocus.d.ts.map +1 -1
  418. package/dist/types/utilities/hooks/index.d.ts.map +1 -1
  419. package/dist/types/utilities/hooks/useCheckboxGroup/useCheckboxGroup.d.ts +382 -0
  420. package/dist/types/utilities/hooks/useCheckboxGroup/useCheckboxGroup.d.ts.map +1 -0
  421. package/dist/types/utilities/hooks/useDebounceCallback/useDebounceCallback.d.ts.map +1 -1
  422. package/dist/types/utilities/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.d.ts.map +1 -1
  423. package/dist/types/utilities/hooks/useMediaQuery/useMediaQuery.d.ts.map +1 -1
  424. package/dist/types/utilities/hooks/usePrevious.d.ts.map +1 -1
  425. package/dist/types/utilities/hooks/useRadioGroup/useRadioGroup.d.ts +370 -0
  426. package/dist/types/utilities/hooks/useRadioGroup/useRadioGroup.d.ts.map +1 -0
  427. package/dist/types/utilities/hooks/useSynchronizedAnimation/useSynchronizedAnimation.d.ts.map +1 -1
  428. package/dist/types/utilities/index.d.ts +1 -0
  429. package/dist/types/utilities/index.d.ts.map +1 -1
  430. package/dist/types/utilities/omit/omit.d.ts.map +1 -1
  431. package/dist/types/utilities/types.d.ts +10 -0
  432. package/dist/types/utilities/types.d.ts.map +1 -0
  433. package/package.json +11 -4
  434. package/dist/cjs/components/Dropdown/DropdownContext.js +0 -26
  435. package/dist/cjs/components/form/CharacterCounter.js +0 -17
  436. package/dist/cjs/components/form/Checkbox/CheckboxGroup.js +0 -31
  437. package/dist/cjs/components/form/Checkbox/index.js +0 -13
  438. package/dist/cjs/components/form/Checkbox/useCheckbox.js +0 -44
  439. package/dist/cjs/components/form/Radio/RadioGroup.js +0 -23
  440. package/dist/cjs/components/form/Radio/index.js +0 -13
  441. package/dist/cjs/components/form/Radio/useRadio.js +0 -46
  442. package/dist/cjs/components/form/Search/useSearch.js +0 -39
  443. package/dist/cjs/components/form/Select/useSelect.js +0 -49
  444. package/dist/cjs/components/form/Switch/useSwitch.js +0 -46
  445. package/dist/cjs/components/form/Textarea/useTextarea.js +0 -37
  446. package/dist/cjs/components/form/Textfield/useTextfield.js +0 -37
  447. package/dist/esm/components/Dropdown/DropdownContext.js +0 -24
  448. package/dist/esm/components/form/CharacterCounter.js +0 -15
  449. package/dist/esm/components/form/Checkbox/CheckboxGroup.js +0 -28
  450. package/dist/esm/components/form/Checkbox/index.js +0 -10
  451. package/dist/esm/components/form/Checkbox/useCheckbox.js +0 -42
  452. package/dist/esm/components/form/Radio/RadioGroup.js +0 -20
  453. package/dist/esm/components/form/Radio/index.js +0 -10
  454. package/dist/esm/components/form/Radio/useRadio.js +0 -44
  455. package/dist/esm/components/form/Search/useSearch.js +0 -37
  456. package/dist/esm/components/form/Select/useSelect.js +0 -47
  457. package/dist/esm/components/form/Switch/useSwitch.js +0 -44
  458. package/dist/esm/components/form/Textarea/useTextarea.js +0 -35
  459. package/dist/esm/components/form/Textfield/useTextfield.js +0 -35
  460. package/dist/types/components/Dropdown/DropdownContext.d.ts +0 -22
  461. package/dist/types/components/Dropdown/DropdownContext.d.ts.map +0 -1
  462. package/dist/types/components/Modal/ModalContext.d.ts +0 -10
  463. package/dist/types/components/Modal/ModalContext.d.ts.map +0 -1
  464. package/dist/types/components/Popover/PopoverContext.d.ts +0 -13
  465. package/dist/types/components/Popover/PopoverContext.d.ts.map +0 -1
  466. package/dist/types/components/form/Checkbox/CheckboxGroup.d.ts +0 -29
  467. package/dist/types/components/form/Checkbox/CheckboxGroup.d.ts.map +0 -1
  468. package/dist/types/components/form/Checkbox/useCheckbox.d.ts +0 -10
  469. package/dist/types/components/form/Checkbox/useCheckbox.d.ts.map +0 -1
  470. package/dist/types/components/form/Radio/RadioGroup.d.ts +0 -43
  471. package/dist/types/components/form/Radio/RadioGroup.d.ts.map +0 -1
  472. package/dist/types/components/form/Radio/useRadio.d.ts +0 -10
  473. package/dist/types/components/form/Radio/useRadio.d.ts.map +0 -1
  474. package/dist/types/components/form/Search/useSearch.d.ts +0 -10
  475. package/dist/types/components/form/Search/useSearch.d.ts.map +0 -1
  476. package/dist/types/components/form/Select/useSelect.d.ts +0 -10
  477. package/dist/types/components/form/Select/useSelect.d.ts.map +0 -1
  478. package/dist/types/components/form/Switch/useSwitch.d.ts +0 -10
  479. package/dist/types/components/form/Switch/useSwitch.d.ts.map +0 -1
  480. package/dist/types/components/form/Textfield/useTextfield.d.ts +0 -10
  481. package/dist/types/components/form/Textfield/useTextfield.d.ts.map +0 -1
  482. package/dist/types/types/Portal.d.ts +0 -9
  483. package/dist/types/types/Portal.d.ts.map +0 -1
@@ -16,10 +16,8 @@ const useFormField = (props, prefix) => {
16
16
  const descriptionId = `${prefix}-description-${randomId}`;
17
17
  const size = props.size ?? fieldset?.size ?? 'md';
18
18
  const disabled = fieldset?.disabled || props?.disabled;
19
- const readOnly = ((fieldset?.readOnly || props?.readOnly) && !disabled) || undefined;
20
- const hasError = !disabled && !readOnly && !!(props.error || fieldset?.error);
19
+ const hasError = !disabled && !!(props.error || fieldset?.error);
21
20
  return {
22
- readOnly,
23
21
  hasError,
24
22
  errorId,
25
23
  descriptionId,
@@ -8,13 +8,12 @@ var cl = require('clsx/lite');
8
8
  var react = require('react');
9
9
  var useSynchronizedAnimation = require('../../../utilities/hooks/useSynchronizedAnimation/useSynchronizedAnimation.js');
10
10
 
11
- const Skeleton = react.forwardRef(function Skeleton({ asChild, className, children, height, style, variant = 'rectangle', width, ...rest }, ref) {
11
+ const Skeleton = react.forwardRef(function Skeleton({ asChild, className, height, style, variant = 'rectangle', width, ...rest }, ref) {
12
12
  const Component = asChild ? reactSlot.Slot : 'span';
13
13
  const isText = variant === 'text';
14
- const childrenText = isText && '-'.repeat(Number(width) || 1); // s followed by a ­ makes the most average character length
15
14
  const animationRef = useSynchronizedAnimation.useSynchronizedAnimation('ds-skeleton-opacity-fade');
16
15
  const mergedRefs = react$1.useMergeRefs([animationRef, ref]);
17
- return (jsxRuntime.jsx(Component, { "aria-hidden": 'true', className: cl('ds-skeleton', className), "data-variant": variant, ref: mergedRefs, style: isText ? style : { width, height, ...style }, ...rest, children: children || childrenText }));
16
+ return (jsxRuntime.jsx(Component, { "aria-hidden": 'true', className: cl('ds-skeleton', className), "data-text": isText ? '-'.repeat(Number(width) || 1) : undefined, "data-variant": variant, ref: mergedRefs, style: isText ? style : { width, height, ...style }, ...rest }));
18
17
  });
19
18
 
20
19
  exports.Skeleton = Skeleton;
@@ -2,15 +2,17 @@
2
2
  'use strict';
3
3
 
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
+ var react$1 = require('@floating-ui/react');
5
6
  var cl = require('clsx/lite');
7
+ var react = require('react');
6
8
  var useSynchronizedAnimation = require('../../../utilities/hooks/useSynchronizedAnimation/useSynchronizedAnimation.js');
7
9
 
8
10
  /** Spinner component used for indicating busy or indeterminate loading */
9
- const Spinner = ({ title, color = 'neutral', size = 'md', className, ...rest }) => {
11
+ const Spinner = react.forwardRef(function Spinner({ 'aria-label': ariaLabel, className, ...rest }, ref) {
10
12
  const svgRef = useSynchronizedAnimation.useSynchronizedAnimation('ds-spinner-rotate-animation');
11
13
  const strokeRef = useSynchronizedAnimation.useSynchronizedAnimation('ds-spinner-stroke-animation');
12
- return (jsxRuntime.jsxs("svg", { className: cl('ds-spinner', className), viewBox: '0 0 50 50', ref: svgRef, "data-color": color, "data-size": size, ...rest, children: [jsxRuntime.jsx("title", { children: title }), jsxRuntime.jsx("circle", { className: cl('ds-spinner__background'), cx: '25', cy: '25', r: '20', fill: 'none', strokeWidth: '5' }), jsxRuntime.jsx("circle", { className: cl(`ds-spinner__circle`), cx: '25', cy: '25', r: '20', fill: 'none', strokeWidth: '5', ref: strokeRef })] }));
13
- };
14
- Spinner.displayName = 'Spinner';
14
+ const mergedRefs = react$1.useMergeRefs([svgRef, ref]);
15
+ return (jsxRuntime.jsxs("svg", { "aria-label": ariaLabel, className: cl('ds-spinner', className), ref: mergedRefs, role: 'img', viewBox: '0 0 50 50', ...rest, children: [jsxRuntime.jsx("circle", { className: cl('ds-spinner__background'), cx: '25', cy: '25', r: '20', fill: 'none', strokeWidth: '5' }), jsxRuntime.jsx("circle", { className: cl(`ds-spinner__circle`), cx: '25', cy: '25', r: '20', fill: 'none', strokeWidth: '5', ref: strokeRef })] }));
16
+ });
15
17
 
16
18
  exports.Spinner = Spinner;
package/dist/cjs/index.js CHANGED
@@ -43,14 +43,21 @@ var PaginationItem = require('./components/Pagination/PaginationItem.js');
43
43
  var PaginationButton = require('./components/Pagination/PaginationButton.js');
44
44
  var SkipLink = require('./components/SkipLink/SkipLink.js');
45
45
  var Tooltip = require('./components/Tooltip/Tooltip.js');
46
- var index$6 = require('./components/form/Checkbox/index.js');
47
- var CheckboxGroup = require('./components/form/Checkbox/CheckboxGroup.js');
48
- var index$7 = require('./components/form/Radio/index.js');
49
- var RadioGroup = require('./components/form/Radio/RadioGroup.js');
50
- var Fieldset = require('./components/form/Fieldset/Fieldset.js');
46
+ var index$6 = require('./components/form/Field/index.js');
47
+ var FieldDescription = require('./components/form/Field/FieldDescription.js');
48
+ var FieldAffix = require('./components/form/Field/FieldAffix.js');
49
+ var FieldCounter = require('./components/form/Field/FieldCounter.js');
50
+ var Checkbox = require('./components/form/Checkbox/Checkbox.js');
51
+ var useCheckboxGroup = require('./utilities/hooks/useCheckboxGroup/useCheckboxGroup.js');
52
+ var Radio = require('./components/form/Radio/Radio.js');
53
+ var useRadioGroup = require('./utilities/hooks/useRadioGroup/useRadioGroup.js');
54
+ var index$7 = require('./components/form/Fieldset/index.js');
55
+ var FieldsetLegend = require('./components/form/Fieldset/FieldsetLegend.js');
56
+ var FieldsetDescription = require('./components/form/Fieldset/FieldsetDescription.js');
51
57
  var Switch = require('./components/form/Switch/Switch.js');
52
58
  var Textfield = require('./components/form/Textfield/Textfield.js');
53
59
  var Textarea = require('./components/form/Textarea/Textarea.js');
60
+ var Input = require('./components/form/Input/Input.js');
54
61
  var index$8 = require('./components/Tabs/index.js');
55
62
  var TabsTab = require('./components/Tabs/TabsTab.js');
56
63
  var TabsList = require('./components/Tabs/TabsList.js');
@@ -58,32 +65,37 @@ var TabsPanel = require('./components/Tabs/TabsPanel.js');
58
65
  var index$9 = require('./components/ToggleGroup/index.js');
59
66
  var ToggleGroupItem = require('./components/ToggleGroup/ToggleGroupItem.js');
60
67
  var index$a = require('./components/Popover/index.js');
61
- var PopoverContext = require('./components/Popover/PopoverContext.js');
68
+ var PopoverTriggerContext = require('./components/Popover/PopoverTriggerContext.js');
62
69
  var PopoverTrigger = require('./components/Popover/PopoverTrigger.js');
63
70
  var Divider = require('./components/Divider/Divider.js');
64
71
  var index$b = require('./components/Modal/index.js');
65
72
  var ModalBlock = require('./components/Modal/ModalBlock.js');
66
- var ModalContext = require('./components/Modal/ModalContext.js');
73
+ var ModalTriggerContext = require('./components/Modal/ModalTriggerContext.js');
67
74
  var ModalTrigger = require('./components/Modal/ModalTrigger.js');
68
75
  var index$c = require('./components/Dropdown/index.js');
69
- var DropdownContext = require('./components/Dropdown/DropdownContext.js');
76
+ var DropdownTriggerContext = require('./components/Dropdown/DropdownTriggerContext.js');
70
77
  var DropdownList = require('./components/Dropdown/DropdownList.js');
71
78
  var DropdownHeading = require('./components/Dropdown/DropdownHeading.js');
72
79
  var DropdownItem = require('./components/Dropdown/DropdownItem.js');
80
+ var DropdownButton = require('./components/Dropdown/DropdownButton.js');
73
81
  var DropdownTrigger = require('./components/Dropdown/DropdownTrigger.js');
74
- var Search = require('./components/form/Search/Search.js');
75
- var index$d = require('./components/Card/index.js');
82
+ var SearchClear = require('./components/form/Search/SearchClear.js');
83
+ var SearchButton = require('./components/form/Search/SearchButton.js');
84
+ var SearchInput = require('./components/form/Search/SearchInput.js');
85
+ var index$d = require('./components/form/Search/index.js');
86
+ var index$e = require('./components/Card/index.js');
76
87
  var CardBlock = require('./components/Card/CardBlock.js');
77
- var index$e = require('./components/form/Combobox/index.js');
88
+ var index$f = require('./components/form/Combobox/index.js');
78
89
  var Option = require('./components/form/Combobox/Option/Option.js');
79
90
  var Empty = require('./components/form/Combobox/Empty.js');
80
- var index$f = require('./components/Table/index.js');
91
+ var index$g = require('./components/Table/index.js');
81
92
  var TableHead = require('./components/Table/TableHead.js');
82
93
  var TableBody = require('./components/Table/TableBody.js');
83
94
  var TableRow = require('./components/Table/TableRow.js');
84
95
  var TableCell = require('./components/Table/TableCell.js');
85
96
  var TableHeaderCell = require('./components/Table/TableHeaderCell.js');
86
- var index$g = require('./components/ErrorSummary/index.js');
97
+ var TableFoot = require('./components/Table/TableFoot.js');
98
+ var index$h = require('./components/ErrorSummary/index.js');
87
99
  var ErrorSummaryItem = require('./components/ErrorSummary/ErrorSummaryItem.js');
88
100
  var ErrorSummaryHeading = require('./components/ErrorSummary/ErrorSummaryHeading.js');
89
101
  var ErrorSummaryList = require('./components/ErrorSummary/ErrorSummaryList.js');
@@ -138,14 +150,22 @@ exports.PaginationItem = PaginationItem.PaginationItem;
138
150
  exports.PaginationButton = PaginationButton.PaginationButton;
139
151
  exports.SkipLink = SkipLink.SkipLink;
140
152
  exports.Tooltip = Tooltip.Tooltip;
141
- exports.Checkbox = index$6.Checkbox;
142
- exports.CheckboxGroup = CheckboxGroup.CheckboxGroup;
143
- exports.Radio = index$7.Radio;
144
- exports.RadioGroup = RadioGroup.RadioGroup;
145
- exports.Fieldset = Fieldset.Fieldset;
153
+ exports.Field = index$6.Field;
154
+ exports.FieldDescription = FieldDescription.FieldDescription;
155
+ exports.FieldAffix = FieldAffix.FieldAffix;
156
+ exports.FieldAffixes = FieldAffix.FieldAffixes;
157
+ exports.FieldCounter = FieldCounter.FieldCounter;
158
+ exports.Checkbox = Checkbox.Checkbox;
159
+ exports.useCheckboxGroup = useCheckboxGroup.useCheckboxGroup;
160
+ exports.Radio = Radio.Radio;
161
+ exports.useRadioGroup = useRadioGroup.useRadioGroup;
162
+ exports.Fieldset = index$7.Fieldset;
163
+ exports.FieldsetLegend = FieldsetLegend.FieldsetLegend;
164
+ exports.FieldsetDescription = FieldsetDescription.FieldsetDescription;
146
165
  exports.Switch = Switch.Switch;
147
166
  exports.Textfield = Textfield.Textfield;
148
167
  exports.Textarea = Textarea.Textarea;
168
+ exports.Input = Input.Input;
149
169
  exports.Tabs = index$8.Tabs;
150
170
  exports.TabsTab = TabsTab.TabsTab;
151
171
  exports.TabsList = TabsList.TabsList;
@@ -153,32 +173,37 @@ exports.TabsPanel = TabsPanel.TabsPanel;
153
173
  exports.ToggleGroup = index$9.ToggleGroup;
154
174
  exports.ToggleGroupItem = ToggleGroupItem.ToggleGroupItem;
155
175
  exports.Popover = index$a.Popover;
156
- exports.PopoverContext = PopoverContext.PopoverContext;
176
+ exports.PopoverTriggerContext = PopoverTriggerContext.PopoverTriggerContext;
157
177
  exports.PopoverTrigger = PopoverTrigger.PopoverTrigger;
158
178
  exports.Divider = Divider.Divider;
159
179
  exports.Modal = index$b.Modal;
160
180
  exports.ModalBlock = ModalBlock.ModalBlock;
161
- exports.ModalContext = ModalContext.ModalContext;
181
+ exports.ModalTriggerContext = ModalTriggerContext.ModalTriggerContext;
162
182
  exports.ModalTrigger = ModalTrigger.ModalTrigger;
163
183
  exports.Dropdown = index$c.Dropdown;
164
- exports.DropdownContext = DropdownContext.DropdownContext;
184
+ exports.DropdownTriggerContext = DropdownTriggerContext.DropdownTriggerContext;
165
185
  exports.DropdownList = DropdownList.DropdownList;
166
186
  exports.DropdownHeading = DropdownHeading.DropdownHeading;
167
187
  exports.DropdownItem = DropdownItem.DropdownItem;
188
+ exports.DropdownButton = DropdownButton.DropdownButton;
168
189
  exports.DropdownTrigger = DropdownTrigger.DropdownTrigger;
169
- exports.Search = Search.Search;
170
- exports.Card = index$d.Card;
190
+ exports.SearchClear = SearchClear.SearchClear;
191
+ exports.SearchButton = SearchButton.SearchButton;
192
+ exports.SearchInput = SearchInput.SearchInput;
193
+ exports.Search = index$d.Search;
194
+ exports.Card = index$e.Card;
171
195
  exports.CardBlock = CardBlock.CardBlock;
172
- exports.Combobox = index$e.Combobox;
196
+ exports.Combobox = index$f.Combobox;
173
197
  exports.ComboboxOption = Option.ComboboxOption;
174
198
  exports.ComboboxEmpty = Empty.ComboboxEmpty;
175
- exports.Table = index$f.Table;
199
+ exports.Table = index$g.Table;
176
200
  exports.TableHead = TableHead.TableHead;
177
201
  exports.TableBody = TableBody.TableBody;
178
202
  exports.TableRow = TableRow.TableRow;
179
203
  exports.TableCell = TableCell.TableCell;
180
204
  exports.TableHeaderCell = TableHeaderCell.TableHeaderCell;
181
- exports.ErrorSummary = index$g.ErrorSummary;
205
+ exports.TableFoot = TableFoot.TableFoot;
206
+ exports.ErrorSummary = index$h.ErrorSummary;
182
207
  exports.ErrorSummaryItem = ErrorSummaryItem.ErrorSummaryItem;
183
208
  exports.ErrorSummaryHeading = ErrorSummaryHeading.ErrorSummaryHeading;
184
209
  exports.ErrorSummaryList = ErrorSummaryList.ErrorSummaryList;
@@ -0,0 +1,121 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var react$1 = require('@floating-ui/react');
5
+ var react = require('react');
6
+
7
+ const toggleIndeterminate = (getIndeterminateInputs, getInputs) => {
8
+ const inputs = getIndeterminateInputs();
9
+ const checked = !!getInputs(true).length;
10
+ const unchecked = !!getInputs(false).length;
11
+ for (const input of inputs) {
12
+ input.indeterminate = unchecked && checked;
13
+ input.checked = !unchecked && checked;
14
+ }
15
+ };
16
+ function useCheckboxGroup(props) {
17
+ const { error, name: groupName, onChange, value = [], disabled, readOnly, required, } = props || {};
18
+ const [groupValue, setGroupValue] = react.useState(value);
19
+ const namedId = react.useId();
20
+ const errorId = react.useId();
21
+ const checkboxRefs = react.useRef(new Set());
22
+ const indeterminateRefs = react.useRef(new Set());
23
+ const getInputs = (checked) => Array.from(checkboxRefs.current.values()).filter((input) => input.checked === checked);
24
+ const getIndeterminateInputs = () => Array.from(indeterminateRefs.current.values());
25
+ return {
26
+ /**
27
+ * Current value of the group.
28
+ */
29
+ value: groupValue,
30
+ /**
31
+ * Set the value of the group.
32
+ *
33
+ * @param value string[]
34
+ * @returns void
35
+ */
36
+ setValue: setGroupValue,
37
+ /**
38
+ * Props to send to the `Checkbox` component.
39
+ * Accepts value or object
40
+ * @example
41
+ * <Checkbox {...getCheckboxProps('value')} />
42
+ *
43
+ * @example allow indeterminate
44
+ * <Checkbox {...getCheckboxProps({ value: 'all', allowIndeterminate: true })} />
45
+ */
46
+ getCheckboxProps: (propsOrValue) => {
47
+ const props = typeof propsOrValue === 'string'
48
+ ? { value: propsOrValue }
49
+ : propsOrValue || {};
50
+ const { allowIndeterminate = false, ref = undefined, value = '', ...rest } = props;
51
+ const inputRef = react.useRef(null);
52
+ const mergedRefs = react$1.useMergeRefs([ref, inputRef]);
53
+ const handleChange = () => {
54
+ const nextGroupValue = Array.from(getInputs(true), ({ value }) => value);
55
+ setGroupValue(nextGroupValue);
56
+ onChange?.(nextGroupValue, groupValue);
57
+ };
58
+ const indeterminateChange = () => {
59
+ if (!inputRef.current)
60
+ return;
61
+ const checked = !!inputRef.current.checked;
62
+ for (const input of getInputs(!checked)) {
63
+ /* We use click to send both event and change checked state */
64
+ input.click();
65
+ }
66
+ };
67
+ react.useEffect(() => {
68
+ if (!allowIndeterminate)
69
+ return;
70
+ toggleIndeterminate(getIndeterminateInputs, getInputs);
71
+ }, [groupValue]);
72
+ react.useEffect(() => {
73
+ if (!inputRef.current)
74
+ return;
75
+ const input = inputRef.current;
76
+ const refs = allowIndeterminate ? indeterminateRefs : checkboxRefs;
77
+ refs.current.add(input);
78
+ if (getIndeterminateInputs().length)
79
+ toggleIndeterminate(getIndeterminateInputs, getInputs);
80
+ return () => {
81
+ refs.current.delete(input);
82
+ };
83
+ }, [value]);
84
+ return {
85
+ /* Spread anything the user has set first */
86
+ ...rest,
87
+ /* Concat ours with the user prop */
88
+ 'aria-describedby': `${error ? errorId : ''} ${rest['aria-describedby'] || ''}`.trim() ||
89
+ undefined,
90
+ 'aria-invalid': !!error || rest['aria-invalid'],
91
+ checked: allowIndeterminate ? undefined : groupValue.includes(value),
92
+ name: rest.name || groupName || namedId,
93
+ onChange: (e) => {
94
+ rest.onChange?.(e);
95
+ if (e.defaultPrevented)
96
+ return;
97
+ allowIndeterminate && indeterminateChange();
98
+ handleChange();
99
+ },
100
+ ref: mergedRefs,
101
+ value,
102
+ disabled: disabled || rest.disabled,
103
+ readOnly: readOnly || rest.readOnly,
104
+ required: required || rest.required,
105
+ };
106
+ },
107
+ /**
108
+ * Props to send to the `ValidationMessage` component.
109
+ *
110
+ * @example
111
+ * <ValidationMessage {...validationMessageProps} />
112
+ */
113
+ validationMessageProps: {
114
+ children: error,
115
+ hidden: !error,
116
+ id: errorId,
117
+ },
118
+ };
119
+ }
120
+
121
+ exports.useCheckboxGroup = useCheckboxGroup;
@@ -17,7 +17,7 @@ function useDebounceCallback(callback, delay = 50) {
17
17
  if (timeoutRef.current) {
18
18
  clearTimeout(timeoutRef.current);
19
19
  }
20
- timeoutRef.current = setTimeout(() => {
20
+ timeoutRef.current = window.setTimeout(() => {
21
21
  callback(...args);
22
22
  }, delay);
23
23
  };
@@ -0,0 +1,99 @@
1
+ 'use client';
2
+ 'use strict';
3
+
4
+ var react$1 = require('@floating-ui/react');
5
+ var react = require('react');
6
+
7
+ /**
8
+ * useRadioGroup is used to group multiple <Radio> components
9
+ * @example
10
+ * const { getRadioProps, validationMessageProps, value, setValue } = useRadioGroup({
11
+ * disabled: false,
12
+ * error: 'Validation message text',
13
+ * name: 'group-name',
14
+ * onChange: (nextValue, prevValue) => {},
15
+ * readOnly: false,
16
+ * required: true,
17
+ * value: '',
18
+ * });
19
+ */
20
+ function useRadioGroup({ error, readOnly, required, disabled, name, onChange, value: initalValue = '', } = {}) {
21
+ const [groupValue, setGroupValue] = react.useState(initalValue);
22
+ const errorId = react.useId();
23
+ const namedId = react.useId();
24
+ const radioGroupName = name || namedId;
25
+ return {
26
+ /**
27
+ * Current value of the group.
28
+ */
29
+ value: groupValue,
30
+ /**
31
+ * Set the value of the group.
32
+ *
33
+ * @param value string[]
34
+ * @returns void
35
+ */
36
+ setValue: setGroupValue,
37
+ /**
38
+ * Props to send to the `Radio` component.
39
+ * @example
40
+ * <Radio label="Option 1" {...getRadioProps('option-1')} />
41
+ */
42
+ getRadioProps: (propsOrValue) => {
43
+ const props = typeof propsOrValue === 'string'
44
+ ? { value: propsOrValue }
45
+ : propsOrValue;
46
+ const { ref = undefined, value = '', ...rest } = props;
47
+ const localRef = react.useRef(null);
48
+ const mergedRefs = react$1.useMergeRefs([ref, localRef]);
49
+ const handleChange = () => {
50
+ const input = localRef.current;
51
+ const isInput = input instanceof HTMLInputElement;
52
+ if (isInput && input.name === radioGroupName) {
53
+ setGroupValue((prevValue) => {
54
+ onChange?.(input.value, prevValue);
55
+ return input.value;
56
+ });
57
+ }
58
+ };
59
+ react.useEffect(() => {
60
+ if (!localRef.current)
61
+ return;
62
+ localRef.current.checked = value === groupValue;
63
+ }, [groupValue, value]);
64
+ return {
65
+ /* Spread anything the user has set first */
66
+ ...rest,
67
+ /* Concat ours with the user prop */
68
+ name: radioGroupName,
69
+ 'aria-describedby': `${error ? errorId : ''} ${rest['aria-describedby'] || ''}`.trim() ||
70
+ undefined,
71
+ 'aria-invalid': !!error || rest['aria-invalid'],
72
+ value,
73
+ ref: mergedRefs,
74
+ required: required || rest.required,
75
+ readOnly: readOnly || rest.readOnly,
76
+ disabled: disabled || rest.disabled,
77
+ onChange: (e) => {
78
+ rest.onChange?.(e);
79
+ if (e.defaultPrevented)
80
+ return;
81
+ handleChange();
82
+ },
83
+ };
84
+ },
85
+ /**
86
+ * Props to send to the `ValidationMessage` component.
87
+ *
88
+ * @example
89
+ * <ValidationMessage {...validationMessageProps} />
90
+ */
91
+ validationMessageProps: {
92
+ children: error,
93
+ hidden: !error,
94
+ id: errorId,
95
+ },
96
+ };
97
+ }
98
+
99
+ exports.useRadioGroup = useRadioGroup;
@@ -6,7 +6,7 @@ import { forwardRef } from 'react';
6
6
  /**
7
7
  * Accordion component, contains `Accordion.Item` components.
8
8
  */
9
- const Accordion = forwardRef(function Accordion({ border = false, color = 'neutral', className, ...rest }, ref) {
9
+ const Accordion = forwardRef(function Accordion({ border = false, 'data-color': color = 'neutral', className, ...rest }, ref) {
10
10
  return (jsx("div", { className: cl('ds-accordion-group', className), "data-border": border || undefined, "data-color": color, ref: ref, ...rest }));
11
11
  });
12
12
 
@@ -8,8 +8,8 @@ import { forwardRef } from 'react';
8
8
  * @example
9
9
  * <Alert color='info'>Dette er en informasjonsmelding</Alert>
10
10
  */
11
- const Alert = forwardRef(function Alert({ color = 'info', size = 'md', className, ...rest }, ref) {
12
- return (jsx("div", { className: cl('ds-alert', className), "data-color": color, "data-size": size, ref: ref, ...rest }));
11
+ const Alert = forwardRef(function Alert({ 'data-color': color = 'info', className, ...rest }, ref) {
12
+ return (jsx("div", { className: cl('ds-alert', className), "data-color": color, ref: ref, ...rest }));
13
13
  });
14
14
 
15
15
  export { Alert };
@@ -8,7 +8,7 @@ import { forwardRef, Fragment } from 'react';
8
8
  * Avatars are used to represent people or entities.
9
9
  *
10
10
  * @example
11
- * <Avatar aria-label="John Doe">JD</Avatar>
11
+ * <Avatar aria-label="John Doe" initials="JD" />
12
12
  *
13
13
  * @example
14
14
  * <Avatar aria-label="John Doe">
@@ -20,9 +20,10 @@ import { forwardRef, Fragment } from 'react';
20
20
  * <Icon />
21
21
  * </Avatar>
22
22
  */
23
- const Avatar = forwardRef(function Avatar({ 'aria-label': ariaLabel, color = 'accent', size = 'md', variant = 'circle', className, children, ...rest }, ref) {
24
- const Component = children && typeof children !== 'string' ? Slot : Fragment;
25
- return (jsx("span", { ref: ref, className: cl('ds-avatar', className), "data-variant": variant, "data-color": color, "data-size": size, role: 'img', "aria-label": ariaLabel, ...rest, children: jsx(Component, { ...(children ? { 'aria-hidden': true } : {}), children: children }) }));
23
+ const Avatar = forwardRef(function Avatar({ 'aria-label': ariaLabel, variant = 'circle', className, children, initials, ...rest }, ref) {
24
+ const useSlot = children && typeof children !== 'string';
25
+ const Component = useSlot ? Slot : Fragment;
26
+ return (jsx("span", { ref: ref, className: cl('ds-avatar', className), "data-variant": variant, "data-initials": initials, role: 'img', "aria-label": ariaLabel, ...rest, children: jsx(Component, { ...(useSlot ? { 'aria-hidden': true } : {}), children: children }) }));
26
27
  });
27
28
 
28
29
  export { Avatar };
@@ -8,18 +8,18 @@ import { forwardRef } from 'react';
8
8
  *
9
9
  * @example without children
10
10
  * ```jsx
11
- * <Badge color='accent' size='md' count={5} />
11
+ * <Badge color='accent' count={5} />
12
12
  * ```
13
13
  *
14
14
  * @example with children
15
15
  * ```jsx
16
- * <Badge color='accent' size='md'>
16
+ * <Badge color='accent'>
17
17
  * <Icon />
18
18
  * </Badge>
19
19
  * ```
20
20
  */
21
- const Badge = forwardRef(function Badge({ className, color = 'accent', count, maxCount, overlap = 'rectangle', placement = 'top-right', size = 'md', ...rest }, ref) {
22
- return (jsx("span", { className: cl('ds-badge', className), "data-color": color, "data-count": count && maxCount && count > maxCount ? `${maxCount}+` : count, "data-overlap": rest.children ? overlap : null, "data-placement": rest.children ? placement : null, "data-size": size, ref: ref, ...rest }));
21
+ const Badge = forwardRef(function Badge({ className, count, maxCount, overlap = 'rectangle', placement = 'top-right', ...rest }, ref) {
22
+ return (jsx("span", { className: cl('ds-badge', className), "data-count": count && maxCount && count > maxCount ? `${maxCount}+` : count, "data-overlap": rest.children ? overlap : null, "data-placement": rest.children ? placement : null, ref: ref, ...rest }));
23
23
  });
24
24
 
25
25
  export { Badge };
@@ -3,6 +3,6 @@ import { jsx } from 'react/jsx-runtime';
3
3
  import cl from 'clsx/lite';
4
4
  import { forwardRef } from 'react';
5
5
 
6
- const Breadcrumbs = forwardRef(({ 'aria-label': ariaLabel = 'Du er her:', className, size, ...rest }, ref) => (jsx("nav", { "aria-label": ariaLabel, className: cl('ds-breadcrumbs', className), "data-size": size, ref: ref, ...rest })));
6
+ const Breadcrumbs = forwardRef(({ 'aria-label': ariaLabel = 'Du er her:', className, ...rest }, ref) => (jsx("nav", { "aria-label": ariaLabel, className: cl('ds-breadcrumbs', className), ref: ref, ...rest })));
7
7
 
8
8
  export { Breadcrumbs };
@@ -10,13 +10,12 @@ import { Spinner } from '../loaders/Spinner/Spinner.js';
10
10
  * @example
11
11
  * <Button>Click me</Button>
12
12
  */
13
- const Button = forwardRef(function Button({ asChild, className, children, color = 'accent', icon = false, loading = false, size = 'md', variant = 'primary', ...rest }, ref) {
13
+ const Button = forwardRef(function Button({ asChild, className, children, icon = false, loading = false, variant = 'primary', ...rest }, ref) {
14
14
  const Component = asChild ? Slot : 'button';
15
- const spinnerColor = color === 'accent' ? color : 'neutral';
16
15
  // Fallbacks to undefined to prevent rendering attribute="false"
17
- return (jsxs(Component, { "aria-busy": Boolean(loading) || undefined, className: cl('ds-button', className), "data-color": color, "data-icon": icon || undefined, "data-size": size, "data-variant": variant, ref: ref,
16
+ return (jsxs(Component, { "aria-busy": Boolean(loading) || undefined, className: cl('ds-button', className), "data-icon": icon || undefined, "data-variant": variant, ref: ref,
18
17
  /* don't set type when we use `asChild` */
19
- type: asChild ? undefined : 'button', ...rest, children: [loading === true ? (jsx(Spinner, { "aria-hidden": 'true', color: spinnerColor, size: 'sm', title: '' })) : (loading // Allow custom loading spinner
18
+ type: asChild ? undefined : 'button', ...rest, children: [loading === true ? (jsx(Spinner, { "aria-hidden": 'true', "data-size": 'sm' })) : (loading // Allow custom loading spinner
20
19
  ), jsx(Slottable, { children: children })] }));
21
20
  });
22
21
 
@@ -14,7 +14,7 @@ import { forwardRef, useRef, useEffect } from 'react';
14
14
  * <Card.Block>Footer</Card.Block>
15
15
  * </Card>
16
16
  */
17
- const Card = forwardRef(function Card({ asChild = false, color = 'neutral', className, ...rest }, ref) {
17
+ const Card = forwardRef(function Card({ asChild = false, 'data-color': color = 'neutral', className, ...rest }, ref) {
18
18
  const Component = asChild ? Slot : 'div';
19
19
  const cardRef = useRef(null);
20
20
  const mergedRefs = useMergeRefs([cardRef, ref]);
@@ -3,15 +3,16 @@ import { jsx, jsxs } from 'react/jsx-runtime';
3
3
  import { Slottable, Slot } from '@radix-ui/react-slot';
4
4
  import cl from 'clsx/lite';
5
5
  import { forwardRef } from 'react';
6
+ import { Input } from '../form/Input/Input.js';
6
7
 
7
8
  /**
8
9
  * Chip.Button used for interaction
9
10
  * @example
10
11
  * <Chip.Button>Click me</Chip.Button>
11
12
  */
12
- const ChipButton = forwardRef(function ChipButton({ asChild, className, size, ...rest }, ref) {
13
+ const ChipButton = forwardRef(function ChipButton({ asChild, className, ...rest }, ref) {
13
14
  const Component = asChild ? Slot : 'button';
14
- return (jsx(Component, { className: cl('ds-chip', className), "data-size": size, type: asChild ? undefined : 'button', ref: ref, ...rest }));
15
+ return (jsx(Component, { className: cl('ds-chip', className), type: asChild ? undefined : 'button', ref: ref, ...rest }));
15
16
  });
16
17
  /**
17
18
  * Chip.Removable used for interaction
@@ -27,10 +28,10 @@ const ChipRemovable = forwardRef(function ChipRemovable(props, ref) {
27
28
  * <Chip.Checkbox name="language" value="nynorsk">Nynorsk</Chip.Checkbox>
28
29
  * <Chip.Checkbox name="language" value="bokmål">Bokmål</Chip.Checkbox>
29
30
  */
30
- const ChipCheckbox = forwardRef(function ChipCheckbox({ asChild, children, className, size, ...rest }, ref) {
31
+ const ChipCheckbox = forwardRef(function ChipCheckbox({ asChild, children, className, 'data-size': size, 'data-color': color, ...rest }, ref) {
31
32
  const inputType = rest.type ?? 'checkbox';
32
33
  const Component = asChild ? Slot : 'label';
33
- return (jsxs(Component, { className: cl('ds-chip', className), "data-size": size, ref: ref, children: [jsx("input", { ...rest, type: inputType }), jsx(Slottable, { children: children })] }));
34
+ return (jsxs(Component, { className: cl('ds-chip', className), "data-size": size, "data-color": color, ref: ref, children: [jsx(Input, { ...rest, type: inputType }), jsx(Slottable, { children: children })] }));
34
35
  });
35
36
  /**
36
37
  * Chip.Radio used for single selection
@@ -1,20 +1,11 @@
1
1
  'use client';
2
2
  import { jsx } from 'react/jsx-runtime';
3
3
  import cl from 'clsx/lite';
4
- import { forwardRef, useState, useEffect, createContext } from 'react';
4
+ import { forwardRef } from 'react';
5
5
  import { Popover } from '../Popover/index.js';
6
6
 
7
- const Dropdown = forwardRef(function DropddownMenuContent({ placement = 'bottom-end', className, ...rest }, ref) {
8
- const [size, setSize] = useState(rest.size || 'md');
9
- useEffect(() => {
10
- setSize(rest.size || 'md');
11
- }, [rest.size]);
12
- return (jsx(DropdownCtx.Provider, { value: {
13
- size,
14
- }, children: jsx(Popover, { ref: ref, placement: placement, size: size, className: cl('ds-dropdown', className), ...rest }) }));
15
- });
16
- const DropdownCtx = createContext({
17
- size: 'md',
7
+ const Dropdown = forwardRef(function DropdownContent({ placement = 'bottom-end', className, ...rest }, ref) {
8
+ return (jsx(Popover, { className: cl('ds-dropdown', className), placement: placement, ref: ref, ...rest }));
18
9
  });
19
10
 
20
- export { Dropdown, DropdownCtx };
11
+ export { Dropdown };
@@ -0,0 +1,10 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import { forwardRef } from 'react';
4
+ import { Button } from '../Button/Button.js';
5
+
6
+ const DropdownButton = forwardRef(function DropdownButton({ className, ...rest }, ref) {
7
+ return jsx(Button, { ref: ref, variant: 'tertiary', ...rest });
8
+ });
9
+
10
+ export { DropdownButton };
@@ -1,10 +1,10 @@
1
1
  'use client';
2
2
  import { jsx } from 'react/jsx-runtime';
3
- import cl from 'clsx/lite';
4
3
  import { forwardRef } from 'react';
4
+ import { Heading } from '../Heading/Heading.js';
5
5
 
6
6
  const DropdownHeading = forwardRef(function DropdownHeading({ className, ...rest }, ref) {
7
- return (jsx("h2", { ref: ref, className: cl('ds-dropdown__heading', className), ...rest }));
7
+ return jsx(Heading, { ref: ref, ...rest });
8
8
  });
9
9
 
10
10
  export { DropdownHeading };