@digdir/designsystemet-react 0.0.0-next-20250710132619 → 0.0.0-react-side-effects-20260113071010

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 (465) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/components/Combobox/Combobox.js +4 -2
  3. package/dist/cjs/components/Combobox/Custom.js +1 -1
  4. package/dist/cjs/components/Combobox/Option/Option.js +1 -1
  5. package/dist/cjs/components/Combobox/Option/useComboboxOption.js +3 -1
  6. package/dist/cjs/components/Combobox/internal/ComboboxInput.js +1 -1
  7. package/dist/cjs/{utilities → components/Combobox}/omit/omit.js +2 -0
  8. package/dist/cjs/components/Combobox/useCombobox.js +2 -1
  9. package/dist/cjs/components/Combobox/useComboboxKeyboard.js +4 -1
  10. package/dist/cjs/components/breadcrumbs/index.js +6 -6
  11. package/dist/cjs/components/button/button.js +1 -1
  12. package/dist/cjs/components/card/index.js +3 -3
  13. package/dist/cjs/components/chip/index.js +6 -6
  14. package/dist/cjs/components/details/details.js +1 -1
  15. package/dist/cjs/components/details/index.js +4 -4
  16. package/dist/cjs/components/dialog/dialog.js +18 -5
  17. package/dist/cjs/components/dialog/index.js +5 -5
  18. package/dist/cjs/components/dropdown/dropdown-button.js +12 -0
  19. package/dist/cjs/components/dropdown/dropdown-heading.js +8 -0
  20. package/dist/cjs/components/dropdown/dropdown-item.js +12 -0
  21. package/dist/cjs/components/dropdown/dropdown-list.js +12 -0
  22. package/dist/cjs/components/dropdown/dropdown-trigger-context.js +9 -9
  23. package/dist/cjs/components/dropdown/dropdown-trigger.js +16 -0
  24. package/dist/cjs/components/dropdown/index.js +20 -9
  25. package/dist/cjs/components/error-summary/error-summary-heading.js +8 -0
  26. package/dist/cjs/components/error-summary/error-summary-item.js +4 -4
  27. package/dist/cjs/components/error-summary/error-summary-link.js +8 -1
  28. package/dist/cjs/components/error-summary/error-summary-list.js +15 -0
  29. package/dist/cjs/components/error-summary/index.js +6 -6
  30. package/dist/cjs/components/field/field-counter.js +23 -3
  31. package/dist/cjs/components/field/field-description.js +6 -0
  32. package/dist/cjs/components/field/field-observer.js +8 -6
  33. package/dist/cjs/components/field/field.js +1 -1
  34. package/dist/cjs/components/field/index.js +6 -6
  35. package/dist/cjs/components/fieldset/fieldset-description.js +2 -2
  36. package/dist/cjs/components/fieldset/fieldset-legend.js +1 -1
  37. package/dist/cjs/components/fieldset/index.js +4 -4
  38. package/dist/cjs/components/list/index.js +5 -5
  39. package/dist/cjs/components/list/list-item.js +6 -0
  40. package/dist/cjs/components/list/lists.js +8 -8
  41. package/dist/cjs/components/pagination/index.js +5 -5
  42. package/dist/cjs/components/pagination/pagination-button.js +3 -3
  43. package/dist/cjs/components/pagination/pagination-item.js +5 -5
  44. package/dist/cjs/components/pagination/pagination-list.js +5 -5
  45. package/dist/cjs/components/popover/index.js +4 -4
  46. package/dist/cjs/components/popover/popover-trigger-context.js +3 -3
  47. package/dist/cjs/components/popover/popover-trigger.js +6 -6
  48. package/dist/cjs/components/popover/popover.js +7 -5
  49. package/dist/cjs/components/search/index.js +5 -5
  50. package/dist/cjs/components/search/search-button.js +2 -2
  51. package/dist/cjs/components/search/search-clear.js +2 -2
  52. package/dist/cjs/components/search/search-input.js +1 -1
  53. package/dist/cjs/components/select/index.js +4 -4
  54. package/dist/cjs/components/select/select-optgroup.js +4 -4
  55. package/dist/cjs/components/select/select-option.js +2 -2
  56. package/dist/cjs/components/skeleton/skeleton.js +3 -1
  57. package/dist/cjs/components/spinner/spinner.js +3 -1
  58. package/dist/cjs/components/suggestion/index.js +0 -4
  59. package/dist/cjs/components/suggestion/suggestion-clear.js +1 -1
  60. package/dist/cjs/components/suggestion/suggestion-list.js +41 -3
  61. package/dist/cjs/components/suggestion/suggestion-option.js +12 -0
  62. package/dist/cjs/components/suggestion/suggestion.js +39 -30
  63. package/dist/cjs/components/table/index.js +9 -9
  64. package/dist/cjs/components/table/table-body.js +6 -6
  65. package/dist/cjs/components/table/table-cell.js +1 -1
  66. package/dist/cjs/components/table/table-foot.js +6 -6
  67. package/dist/cjs/components/table/table-head.js +6 -6
  68. package/dist/cjs/components/table/table-header-cell.js +1 -1
  69. package/dist/cjs/components/table/table-row.js +4 -4
  70. package/dist/cjs/components/tabs/index.js +5 -5
  71. package/dist/cjs/components/tabs/tabs-list.js +8 -6
  72. package/dist/cjs/components/tabs/tabs-panel.js +18 -5
  73. package/dist/cjs/components/tabs/tabs-tab.js +6 -3
  74. package/dist/cjs/components/tabs/tabs.js +5 -0
  75. package/dist/cjs/components/tag/tag.js +2 -2
  76. package/dist/cjs/components/textfield/textfield.js +1 -1
  77. package/dist/cjs/components/toggle-group/index.js +3 -3
  78. package/dist/cjs/components/toggle-group/toggle-group-item.js +3 -3
  79. package/dist/cjs/components/toggle-group/toggle-group.js +3 -2
  80. package/dist/cjs/components/toggle-group/use-toggle-groupitem.js +2 -0
  81. package/dist/cjs/components/tooltip/tooltip.js +25 -7
  82. package/dist/cjs/index.js +95 -100
  83. package/dist/cjs/utilities/hooks/use-merge-refs/use-merge-refs.js +1 -1
  84. package/dist/cjs/utilities/hooks/use-pagination/use-pagination.js +2 -2
  85. package/dist/cjs/utilities/hooks/use-synchronized-animation/use-synchronized-animation.js +4 -2
  86. package/dist/cjs/utilities/roving-focus/roving-focus-item.js +1 -1
  87. package/dist/cjs/utilities/roving-focus/roving-focus-root.js +4 -3
  88. package/dist/esm/components/Combobox/Combobox.js +5 -3
  89. package/dist/esm/components/Combobox/ComboboxIdContext.js +1 -1
  90. package/dist/esm/components/Combobox/Custom.js +1 -1
  91. package/dist/esm/components/Combobox/Option/Option.js +1 -1
  92. package/dist/esm/components/Combobox/Option/useComboboxOption.js +3 -1
  93. package/dist/esm/components/Combobox/internal/ComboboxInput.js +1 -1
  94. package/dist/esm/{utilities → components/Combobox}/omit/omit.js +2 -0
  95. package/dist/esm/components/Combobox/useCombobox.js +2 -1
  96. package/dist/esm/components/Combobox/useComboboxKeyboard.js +4 -1
  97. package/dist/esm/components/breadcrumbs/index.js +7 -7
  98. package/dist/esm/components/button/button.js +1 -1
  99. package/dist/esm/components/card/index.js +4 -4
  100. package/dist/esm/components/checkbox/checkbox.js +2 -2
  101. package/dist/esm/components/chip/index.js +7 -7
  102. package/dist/esm/components/details/details.js +1 -1
  103. package/dist/esm/components/details/index.js +5 -5
  104. package/dist/esm/components/dialog/dialog.js +18 -5
  105. package/dist/esm/components/dialog/index.js +6 -6
  106. package/dist/esm/components/dropdown/dropdown-button.js +12 -0
  107. package/dist/esm/components/dropdown/dropdown-heading.js +8 -0
  108. package/dist/esm/components/dropdown/dropdown-item.js +12 -0
  109. package/dist/esm/components/dropdown/dropdown-list.js +12 -0
  110. package/dist/esm/components/dropdown/dropdown-trigger-context.js +9 -9
  111. package/dist/esm/components/dropdown/dropdown-trigger.js +16 -0
  112. package/dist/esm/components/dropdown/index.js +21 -10
  113. package/dist/esm/components/error-summary/error-summary-heading.js +8 -0
  114. package/dist/esm/components/error-summary/error-summary-item.js +4 -4
  115. package/dist/esm/components/error-summary/error-summary-link.js +8 -1
  116. package/dist/esm/components/error-summary/error-summary-list.js +17 -2
  117. package/dist/esm/components/error-summary/error-summary.js +1 -1
  118. package/dist/esm/components/error-summary/index.js +7 -7
  119. package/dist/esm/components/field/field-counter.js +23 -3
  120. package/dist/esm/components/field/field-description.js +6 -0
  121. package/dist/esm/components/field/field-observer.js +8 -6
  122. package/dist/esm/components/field/field.js +1 -1
  123. package/dist/esm/components/field/index.js +7 -7
  124. package/dist/esm/components/fieldset/fieldset-description.js +2 -2
  125. package/dist/esm/components/fieldset/fieldset-legend.js +1 -1
  126. package/dist/esm/components/fieldset/index.js +5 -5
  127. package/dist/esm/components/list/index.js +6 -6
  128. package/dist/esm/components/list/list-item.js +6 -0
  129. package/dist/esm/components/list/lists.js +8 -8
  130. package/dist/esm/components/pagination/index.js +6 -6
  131. package/dist/esm/components/pagination/pagination-button.js +3 -3
  132. package/dist/esm/components/pagination/pagination-item.js +5 -5
  133. package/dist/esm/components/pagination/pagination-list.js +5 -5
  134. package/dist/esm/components/popover/index.js +5 -5
  135. package/dist/esm/components/popover/popover-trigger-context.js +3 -3
  136. package/dist/esm/components/popover/popover-trigger.js +6 -6
  137. package/dist/esm/components/popover/popover.js +7 -5
  138. package/dist/esm/components/radio/radio.js +2 -2
  139. package/dist/esm/components/search/index.js +6 -6
  140. package/dist/esm/components/search/search-button.js +2 -2
  141. package/dist/esm/components/search/search-clear.js +2 -2
  142. package/dist/esm/components/search/search-input.js +1 -1
  143. package/dist/esm/components/select/index.js +5 -5
  144. package/dist/esm/components/select/select-optgroup.js +4 -4
  145. package/dist/esm/components/select/select-option.js +2 -2
  146. package/dist/esm/components/skeleton/skeleton.js +3 -1
  147. package/dist/esm/components/spinner/spinner.js +3 -1
  148. package/dist/esm/components/suggestion/index.js +1 -4
  149. package/dist/esm/components/suggestion/suggestion-clear.js +1 -1
  150. package/dist/esm/components/suggestion/suggestion-list.js +41 -3
  151. package/dist/esm/components/suggestion/suggestion-option.js +12 -0
  152. package/dist/esm/components/suggestion/suggestion.js +40 -31
  153. package/dist/esm/components/switch/switch.js +2 -2
  154. package/dist/esm/components/table/index.js +10 -10
  155. package/dist/esm/components/table/table-body.js +6 -6
  156. package/dist/esm/components/table/table-cell.js +1 -1
  157. package/dist/esm/components/table/table-foot.js +6 -6
  158. package/dist/esm/components/table/table-head.js +6 -6
  159. package/dist/esm/components/table/table-header-cell.js +1 -1
  160. package/dist/esm/components/table/table-row.js +4 -4
  161. package/dist/esm/components/tabs/index.js +6 -6
  162. package/dist/esm/components/tabs/tabs-list.js +8 -6
  163. package/dist/esm/components/tabs/tabs-panel.js +20 -7
  164. package/dist/esm/components/tabs/tabs-tab.js +6 -3
  165. package/dist/esm/components/tabs/tabs.js +6 -1
  166. package/dist/esm/components/tag/tag.js +2 -2
  167. package/dist/esm/components/textfield/textfield.js +2 -2
  168. package/dist/esm/components/toggle-group/index.js +4 -4
  169. package/dist/esm/components/toggle-group/toggle-group-item.js +3 -3
  170. package/dist/esm/components/toggle-group/toggle-group.js +4 -3
  171. package/dist/esm/components/toggle-group/use-toggle-groupitem.js +2 -0
  172. package/dist/esm/components/tooltip/tooltip.js +25 -7
  173. package/dist/esm/index.js +48 -49
  174. package/dist/esm/utilities/hooks/use-merge-refs/use-merge-refs.js +1 -1
  175. package/dist/esm/utilities/hooks/use-pagination/use-pagination.js +2 -2
  176. package/dist/esm/utilities/hooks/use-synchronized-animation/use-synchronized-animation.js +4 -3
  177. package/dist/esm/utilities/roving-focus/roving-focus-item.js +1 -1
  178. package/dist/esm/utilities/roving-focus/roving-focus-root.js +5 -4
  179. package/dist/react-types.d.ts +22 -2
  180. package/dist/types/colors.d.ts +1 -23
  181. package/dist/types/colors.d.ts.map +1 -1
  182. package/dist/types/components/Combobox/Combobox.d.ts +6 -6
  183. package/dist/types/components/Combobox/Combobox.d.ts.map +1 -1
  184. package/dist/types/components/Combobox/ComboboxContext.d.ts +1 -1
  185. package/dist/types/components/Combobox/ComboboxContext.d.ts.map +1 -1
  186. package/dist/types/components/Combobox/ComboboxIdContext.d.ts +2 -2
  187. package/dist/types/components/Combobox/ComboboxIdContext.d.ts.map +1 -1
  188. package/dist/types/components/Combobox/Custom.d.ts +1 -1
  189. package/dist/types/components/Combobox/Custom.d.ts.map +1 -1
  190. package/dist/types/components/Combobox/Empty.d.ts +1 -1
  191. package/dist/types/components/Combobox/Empty.d.ts.map +1 -1
  192. package/dist/types/components/Combobox/Option/Description.d.ts +1 -1
  193. package/dist/types/components/Combobox/Option/Description.d.ts.map +1 -1
  194. package/dist/types/components/Combobox/Option/Option.d.ts +2 -2
  195. package/dist/types/components/Combobox/Option/Option.d.ts.map +1 -1
  196. package/dist/types/components/Combobox/internal/ComboboxClearButton.d.ts +1 -1
  197. package/dist/types/components/Combobox/internal/ComboboxClearButton.d.ts.map +1 -1
  198. package/dist/types/components/Combobox/internal/ComboboxInput.d.ts.map +1 -1
  199. package/dist/types/{utilities → components/Combobox}/omit/omit.d.ts +2 -0
  200. package/dist/types/components/Combobox/omit/omit.d.ts.map +1 -0
  201. package/dist/types/components/Combobox/useCombobox.d.ts +3 -3
  202. package/dist/types/components/Combobox/useCombobox.d.ts.map +1 -1
  203. package/dist/types/components/Combobox/useFormField/FieldsetContext.d.ts +1 -1
  204. package/dist/types/components/Combobox/useFormField/FieldsetContext.d.ts.map +1 -1
  205. package/dist/types/components/Combobox/useFormField/useFormField.d.ts +1 -1
  206. package/dist/types/components/Combobox/useFormField/useFormField.d.ts.map +1 -1
  207. package/dist/types/components/alert/alert.d.ts +3 -3
  208. package/dist/types/components/alert/alert.d.ts.map +1 -1
  209. package/dist/types/components/avatar/avatar.d.ts +10 -28
  210. package/dist/types/components/avatar/avatar.d.ts.map +1 -1
  211. package/dist/types/components/badge/badge-position.d.ts +2 -2
  212. package/dist/types/components/badge/badge-position.d.ts.map +1 -1
  213. package/dist/types/components/badge/badge.d.ts +3 -3
  214. package/dist/types/components/badge/badge.d.ts.map +1 -1
  215. package/dist/types/components/badge/index.d.ts +5 -5
  216. package/dist/types/components/breadcrumbs/breadcrumbs-item.d.ts +1 -1
  217. package/dist/types/components/breadcrumbs/breadcrumbs-item.d.ts.map +1 -1
  218. package/dist/types/components/breadcrumbs/breadcrumbs-link.d.ts +3 -3
  219. package/dist/types/components/breadcrumbs/breadcrumbs-link.d.ts.map +1 -1
  220. package/dist/types/components/breadcrumbs/breadcrumbs-list.d.ts +1 -1
  221. package/dist/types/components/breadcrumbs/breadcrumbs-list.d.ts.map +1 -1
  222. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts +2 -2
  223. package/dist/types/components/breadcrumbs/breadcrumbs.d.ts.map +1 -1
  224. package/dist/types/components/breadcrumbs/index.d.ts +48 -12
  225. package/dist/types/components/breadcrumbs/index.d.ts.map +1 -1
  226. package/dist/types/components/button/button.d.ts +7 -5
  227. package/dist/types/components/button/button.d.ts.map +1 -1
  228. package/dist/types/components/card/card-block.d.ts +2 -2
  229. package/dist/types/components/card/card-block.d.ts.map +1 -1
  230. package/dist/types/components/card/card.d.ts +2 -2
  231. package/dist/types/components/card/card.d.ts.map +1 -1
  232. package/dist/types/components/card/index.d.ts +18 -10
  233. package/dist/types/components/card/index.d.ts.map +1 -1
  234. package/dist/types/components/checkbox/checkbox.d.ts +1 -1
  235. package/dist/types/components/checkbox/checkbox.d.ts.map +1 -1
  236. package/dist/types/components/chip/chips.d.ts +4 -4
  237. package/dist/types/components/chip/chips.d.ts.map +1 -1
  238. package/dist/types/components/chip/index.d.ts +33 -14
  239. package/dist/types/components/chip/index.d.ts.map +1 -1
  240. package/dist/types/components/details/details-content.d.ts +1 -1
  241. package/dist/types/components/details/details-content.d.ts.map +1 -1
  242. package/dist/types/components/details/details-summary.d.ts +2 -2
  243. package/dist/types/components/details/details-summary.d.ts.map +1 -1
  244. package/dist/types/components/details/details.d.ts +1 -1
  245. package/dist/types/components/details/details.d.ts.map +1 -1
  246. package/dist/types/components/details/index.d.ts +19 -7
  247. package/dist/types/components/details/index.d.ts.map +1 -1
  248. package/dist/types/components/dialog/dialog-block.d.ts +2 -2
  249. package/dist/types/components/dialog/dialog-block.d.ts.map +1 -1
  250. package/dist/types/components/dialog/dialog-trigger-context.d.ts +1 -1
  251. package/dist/types/components/dialog/dialog-trigger-context.d.ts.map +1 -1
  252. package/dist/types/components/dialog/dialog-trigger.d.ts +5 -5
  253. package/dist/types/components/dialog/dialog-trigger.d.ts.map +1 -1
  254. package/dist/types/components/dialog/dialog.d.ts +24 -4
  255. package/dist/types/components/dialog/dialog.d.ts.map +1 -1
  256. package/dist/types/components/dialog/index.d.ts +46 -25
  257. package/dist/types/components/dialog/index.d.ts.map +1 -1
  258. package/dist/types/components/divider/divider.d.ts +1 -1
  259. package/dist/types/components/divider/divider.d.ts.map +1 -1
  260. package/dist/types/components/dropdown/dropdown-button.d.ts +13 -1
  261. package/dist/types/components/dropdown/dropdown-button.d.ts.map +1 -1
  262. package/dist/types/components/dropdown/dropdown-heading.d.ts +10 -2
  263. package/dist/types/components/dropdown/dropdown-heading.d.ts.map +1 -1
  264. package/dist/types/components/dropdown/dropdown-item.d.ts +13 -1
  265. package/dist/types/components/dropdown/dropdown-item.d.ts.map +1 -1
  266. package/dist/types/components/dropdown/dropdown-list.d.ts +13 -1
  267. package/dist/types/components/dropdown/dropdown-list.d.ts.map +1 -1
  268. package/dist/types/components/dropdown/dropdown-trigger-context.d.ts +9 -9
  269. package/dist/types/components/dropdown/dropdown-trigger.d.ts +17 -1
  270. package/dist/types/components/dropdown/dropdown-trigger.d.ts.map +1 -1
  271. package/dist/types/components/dropdown/dropdown.d.ts +2 -2
  272. package/dist/types/components/dropdown/dropdown.d.ts.map +1 -1
  273. package/dist/types/components/dropdown/index.d.ts +99 -19
  274. package/dist/types/components/dropdown/index.d.ts.map +1 -1
  275. package/dist/types/components/error-summary/error-summary-heading.d.ts +10 -2
  276. package/dist/types/components/error-summary/error-summary-heading.d.ts.map +1 -1
  277. package/dist/types/components/error-summary/error-summary-item.d.ts +6 -6
  278. package/dist/types/components/error-summary/error-summary-item.d.ts.map +1 -1
  279. package/dist/types/components/error-summary/error-summary-link.d.ts +11 -4
  280. package/dist/types/components/error-summary/error-summary-link.d.ts.map +1 -1
  281. package/dist/types/components/error-summary/error-summary-list.d.ts +17 -2
  282. package/dist/types/components/error-summary/error-summary-list.d.ts.map +1 -1
  283. package/dist/types/components/error-summary/error-summary.d.ts +3 -3
  284. package/dist/types/components/error-summary/error-summary.d.ts.map +1 -1
  285. package/dist/types/components/error-summary/index.d.ts +52 -20
  286. package/dist/types/components/error-summary/index.d.ts.map +1 -1
  287. package/dist/types/components/field/field-affix.d.ts +2 -2
  288. package/dist/types/components/field/field-affix.d.ts.map +1 -1
  289. package/dist/types/components/field/field-counter.d.ts +18 -4
  290. package/dist/types/components/field/field-counter.d.ts.map +1 -1
  291. package/dist/types/components/field/field-description.d.ts +7 -1
  292. package/dist/types/components/field/field-description.d.ts.map +1 -1
  293. package/dist/types/components/field/field-observer.d.ts.map +1 -1
  294. package/dist/types/components/field/field.d.ts +2 -2
  295. package/dist/types/components/field/field.d.ts.map +1 -1
  296. package/dist/types/components/field/index.d.ts +45 -17
  297. package/dist/types/components/field/index.d.ts.map +1 -1
  298. package/dist/types/components/fieldset/fieldset-description.d.ts +4 -4
  299. package/dist/types/components/fieldset/fieldset-description.d.ts.map +1 -1
  300. package/dist/types/components/fieldset/fieldset-legend.d.ts +2 -2
  301. package/dist/types/components/fieldset/fieldset-legend.d.ts.map +1 -1
  302. package/dist/types/components/fieldset/fieldset.d.ts +1 -1
  303. package/dist/types/components/fieldset/fieldset.d.ts.map +1 -1
  304. package/dist/types/components/fieldset/index.d.ts +21 -9
  305. package/dist/types/components/fieldset/index.d.ts.map +1 -1
  306. package/dist/types/components/heading/heading.d.ts +2 -2
  307. package/dist/types/components/heading/heading.d.ts.map +1 -1
  308. package/dist/types/components/index.d.ts +2 -2
  309. package/dist/types/components/index.d.ts.map +1 -1
  310. package/dist/types/components/input/input.d.ts +2 -2
  311. package/dist/types/components/input/input.d.ts.map +1 -1
  312. package/dist/types/components/label/label.d.ts +2 -2
  313. package/dist/types/components/label/label.d.ts.map +1 -1
  314. package/dist/types/components/link/link.d.ts +2 -2
  315. package/dist/types/components/link/link.d.ts.map +1 -1
  316. package/dist/types/components/list/index.d.ts +32 -11
  317. package/dist/types/components/list/index.d.ts.map +1 -1
  318. package/dist/types/components/list/list-item.d.ts +8 -2
  319. package/dist/types/components/list/list-item.d.ts.map +1 -1
  320. package/dist/types/components/list/lists.d.ts +12 -12
  321. package/dist/types/components/list/lists.d.ts.map +1 -1
  322. package/dist/types/components/pagination/index.d.ts +38 -15
  323. package/dist/types/components/pagination/index.d.ts.map +1 -1
  324. package/dist/types/components/pagination/pagination-button.d.ts +5 -5
  325. package/dist/types/components/pagination/pagination-button.d.ts.map +1 -1
  326. package/dist/types/components/pagination/pagination-item.d.ts +7 -7
  327. package/dist/types/components/pagination/pagination-item.d.ts.map +1 -1
  328. package/dist/types/components/pagination/pagination-list.d.ts +7 -7
  329. package/dist/types/components/pagination/pagination-list.d.ts.map +1 -1
  330. package/dist/types/components/pagination/pagination.d.ts +2 -2
  331. package/dist/types/components/pagination/pagination.d.ts.map +1 -1
  332. package/dist/types/components/paragraph/paragraph.d.ts +2 -2
  333. package/dist/types/components/paragraph/paragraph.d.ts.map +1 -1
  334. package/dist/types/components/popover/index.d.ts +39 -18
  335. package/dist/types/components/popover/index.d.ts.map +1 -1
  336. package/dist/types/components/popover/popover-trigger-context.d.ts +4 -4
  337. package/dist/types/components/popover/popover-trigger.d.ts +7 -7
  338. package/dist/types/components/popover/popover-trigger.d.ts.map +1 -1
  339. package/dist/types/components/popover/popover.d.ts +3 -3
  340. package/dist/types/components/popover/popover.d.ts.map +1 -1
  341. package/dist/types/components/radio/radio.d.ts +1 -1
  342. package/dist/types/components/radio/radio.d.ts.map +1 -1
  343. package/dist/types/components/search/index.d.ts +34 -15
  344. package/dist/types/components/search/index.d.ts.map +1 -1
  345. package/dist/types/components/search/search-button.d.ts +6 -6
  346. package/dist/types/components/search/search-button.d.ts.map +1 -1
  347. package/dist/types/components/search/search-clear.d.ts +4 -4
  348. package/dist/types/components/search/search-clear.d.ts.map +1 -1
  349. package/dist/types/components/search/search-input.d.ts +2 -2
  350. package/dist/types/components/search/search-input.d.ts.map +1 -1
  351. package/dist/types/components/search/search.d.ts +1 -1
  352. package/dist/types/components/search/search.d.ts.map +1 -1
  353. package/dist/types/components/select/index.d.ts +27 -12
  354. package/dist/types/components/select/index.d.ts.map +1 -1
  355. package/dist/types/components/select/select-optgroup.d.ts +6 -6
  356. package/dist/types/components/select/select-optgroup.d.ts.map +1 -1
  357. package/dist/types/components/select/select-option.d.ts +4 -4
  358. package/dist/types/components/select/select-option.d.ts.map +1 -1
  359. package/dist/types/components/select/select.d.ts +2 -2
  360. package/dist/types/components/select/select.d.ts.map +1 -1
  361. package/dist/types/components/skeleton/skeleton.d.ts +24 -7
  362. package/dist/types/components/skeleton/skeleton.d.ts.map +1 -1
  363. package/dist/types/components/skip-link/skip-link.d.ts +2 -2
  364. package/dist/types/components/skip-link/skip-link.d.ts.map +1 -1
  365. package/dist/types/components/spinner/spinner.d.ts +1 -2
  366. package/dist/types/components/spinner/spinner.d.ts.map +1 -1
  367. package/dist/types/components/suggestion/index.d.ts +67 -44
  368. package/dist/types/components/suggestion/index.d.ts.map +1 -1
  369. package/dist/types/components/suggestion/suggestion-clear.d.ts +2 -2
  370. package/dist/types/components/suggestion/suggestion-clear.d.ts.map +1 -1
  371. package/dist/types/components/suggestion/suggestion-empty.d.ts +1 -1
  372. package/dist/types/components/suggestion/suggestion-empty.d.ts.map +1 -1
  373. package/dist/types/components/suggestion/suggestion-input.d.ts +15 -3
  374. package/dist/types/components/suggestion/suggestion-input.d.ts.map +1 -1
  375. package/dist/types/components/suggestion/suggestion-list.d.ts +12 -2
  376. package/dist/types/components/suggestion/suggestion-list.d.ts.map +1 -1
  377. package/dist/types/components/suggestion/suggestion-option.d.ts +13 -1
  378. package/dist/types/components/suggestion/suggestion-option.d.ts.map +1 -1
  379. package/dist/types/components/suggestion/suggestion.d.ts +47 -57
  380. package/dist/types/components/suggestion/suggestion.d.ts.map +1 -1
  381. package/dist/types/components/switch/switch.d.ts +2 -2
  382. package/dist/types/components/switch/switch.d.ts.map +1 -1
  383. package/dist/types/components/table/index.d.ts +65 -16
  384. package/dist/types/components/table/index.d.ts.map +1 -1
  385. package/dist/types/components/table/table-body.d.ts +7 -7
  386. package/dist/types/components/table/table-body.d.ts.map +1 -1
  387. package/dist/types/components/table/table-cell.d.ts +2 -2
  388. package/dist/types/components/table/table-cell.d.ts.map +1 -1
  389. package/dist/types/components/table/table-foot.d.ts +7 -7
  390. package/dist/types/components/table/table-foot.d.ts.map +1 -1
  391. package/dist/types/components/table/table-head.d.ts +7 -7
  392. package/dist/types/components/table/table-head.d.ts.map +1 -1
  393. package/dist/types/components/table/table-header-cell.d.ts +3 -3
  394. package/dist/types/components/table/table-header-cell.d.ts.map +1 -1
  395. package/dist/types/components/table/table-row.d.ts +5 -5
  396. package/dist/types/components/table/table-row.d.ts.map +1 -1
  397. package/dist/types/components/table/table.d.ts +2 -2
  398. package/dist/types/components/table/table.d.ts.map +1 -1
  399. package/dist/types/components/tabs/index.d.ts +29 -14
  400. package/dist/types/components/tabs/index.d.ts.map +1 -1
  401. package/dist/types/components/tabs/tabs-list.d.ts +5 -5
  402. package/dist/types/components/tabs/tabs-list.d.ts.map +1 -1
  403. package/dist/types/components/tabs/tabs-panel.d.ts +3 -3
  404. package/dist/types/components/tabs/tabs-panel.d.ts.map +1 -1
  405. package/dist/types/components/tabs/tabs-tab.d.ts +3 -3
  406. package/dist/types/components/tabs/tabs-tab.d.ts.map +1 -1
  407. package/dist/types/components/tabs/tabs.d.ts +6 -3
  408. package/dist/types/components/tabs/tabs.d.ts.map +1 -1
  409. package/dist/types/components/tag/tag.d.ts +15 -3
  410. package/dist/types/components/tag/tag.d.ts.map +1 -1
  411. package/dist/types/components/textarea/textarea.d.ts +1 -1
  412. package/dist/types/components/textarea/textarea.d.ts.map +1 -1
  413. package/dist/types/components/textfield/textfield.d.ts +1 -1
  414. package/dist/types/components/textfield/textfield.d.ts.map +1 -1
  415. package/dist/types/components/toggle-group/index.d.ts +11 -11
  416. package/dist/types/components/toggle-group/index.d.ts.map +1 -1
  417. package/dist/types/components/toggle-group/toggle-group-item.d.ts +3 -3
  418. package/dist/types/components/toggle-group/toggle-group-item.d.ts.map +1 -1
  419. package/dist/types/components/toggle-group/toggle-group.d.ts +14 -3
  420. package/dist/types/components/toggle-group/toggle-group.d.ts.map +1 -1
  421. package/dist/types/components/toggle-group/use-toggle-groupitem.d.ts +1 -0
  422. package/dist/types/components/toggle-group/use-toggle-groupitem.d.ts.map +1 -1
  423. package/dist/types/components/tooltip/tooltip.d.ts +11 -1
  424. package/dist/types/components/tooltip/tooltip.d.ts.map +1 -1
  425. package/dist/types/components/validation-message/validation-message.d.ts +3 -3
  426. package/dist/types/components/validation-message/validation-message.d.ts.map +1 -1
  427. package/dist/types/index.d.ts +15 -2
  428. package/dist/types/index.d.ts.map +1 -1
  429. package/dist/types/types.d.ts +1 -1
  430. package/dist/types/types.d.ts.map +1 -1
  431. package/dist/types/utilities/hooks/deprecated/use-debounce-callback/use-debounce-callback.d.ts.map +1 -0
  432. package/dist/types/utilities/hooks/deprecated/use-isomorphic-layout-effect/use-isomorphic-layout-effect.d.ts.map +1 -0
  433. package/dist/types/utilities/hooks/deprecated/use-media-query/use-media-query.d.ts.map +1 -0
  434. package/dist/types/utilities/hooks/index.d.ts +3 -3
  435. package/dist/types/utilities/hooks/index.d.ts.map +1 -1
  436. package/dist/types/utilities/hooks/use-synchronized-animation/use-synchronized-animation.d.ts +3 -1
  437. package/dist/types/utilities/hooks/use-synchronized-animation/use-synchronized-animation.d.ts.map +1 -1
  438. package/dist/types/utilities/index.d.ts +4 -3
  439. package/dist/types/utilities/index.d.ts.map +1 -1
  440. package/dist/types/utilities/roving-focus/roving-focus-item.d.ts +2 -2
  441. package/dist/types/utilities/roving-focus/roving-focus-item.d.ts.map +1 -1
  442. package/dist/types/utilities/roving-focus/roving-focus-root.d.ts +3 -3
  443. package/dist/types/utilities/roving-focus/roving-focus-root.d.ts.map +1 -1
  444. package/dist/types/utilities/roving-focus/use-roving-focus.d.ts +173 -172
  445. package/dist/types/utilities/roving-focus/use-roving-focus.d.ts.map +1 -1
  446. package/package.json +28 -30
  447. package/dist/cjs/components/suggestion/suggestion-chips.js +0 -15
  448. package/dist/esm/components/suggestion/suggestion-chips.js +0 -13
  449. package/dist/types/components/suggestion/suggestion-chips.d.ts +0 -19
  450. package/dist/types/components/suggestion/suggestion-chips.d.ts.map +0 -1
  451. package/dist/types/utilities/hooks/use-debounce-callback/use-debounce-callback.d.ts.map +0 -1
  452. package/dist/types/utilities/hooks/use-isomorphic-layout-effect/use-isomorphic-layout-effect.d.ts.map +0 -1
  453. package/dist/types/utilities/hooks/use-media-query/use-media-query.d.ts.map +0 -1
  454. package/dist/types/utilities/omit/omit.d.ts.map +0 -1
  455. package/dist/types/utilities/roving-focus/index.d.ts +0 -4
  456. package/dist/types/utilities/roving-focus/index.d.ts.map +0 -1
  457. /package/dist/cjs/utilities/hooks/{use-debounce-callback → deprecated/use-debounce-callback}/use-debounce-callback.js +0 -0
  458. /package/dist/cjs/utilities/hooks/{use-isomorphic-layout-effect → deprecated/use-isomorphic-layout-effect}/use-isomorphic-layout-effect.js +0 -0
  459. /package/dist/cjs/utilities/hooks/{use-media-query → deprecated/use-media-query}/use-media-query.js +0 -0
  460. /package/dist/esm/utilities/hooks/{use-debounce-callback → deprecated/use-debounce-callback}/use-debounce-callback.js +0 -0
  461. /package/dist/esm/utilities/hooks/{use-isomorphic-layout-effect → deprecated/use-isomorphic-layout-effect}/use-isomorphic-layout-effect.js +0 -0
  462. /package/dist/esm/utilities/hooks/{use-media-query → deprecated/use-media-query}/use-media-query.js +0 -0
  463. /package/dist/types/utilities/hooks/{use-debounce-callback → deprecated/use-debounce-callback}/use-debounce-callback.d.ts +0 -0
  464. /package/dist/types/utilities/hooks/{use-isomorphic-layout-effect → deprecated/use-isomorphic-layout-effect}/use-isomorphic-layout-effect.d.ts +0 -0
  465. /package/dist/types/utilities/hooks/{use-media-query → deprecated/use-media-query}/use-media-query.d.ts +0 -0
@@ -4,6 +4,7 @@
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var react = require('react');
6
6
  require('@u-elements/u-datalist');
7
+ var dom = require('@floating-ui/dom');
7
8
  var suggestion = require('./suggestion.js');
8
9
 
9
10
  /**
@@ -17,10 +18,47 @@ var suggestion = require('./suggestion.js');
17
18
  * <Suggestion.List />
18
19
  * </Suggestion>
19
20
  */
20
- const SuggestionList = react.forwardRef(function SuggestionList({ singular = '%d forslag', plural = '%d forslag', className, id, ...rest }, ref) {
21
- const { handleFilter } = react.useContext(suggestion.SuggestionContext);
21
+ const SuggestionList = react.forwardRef(function SuggestionList({ singular = '%d forslag', plural = '%d forslag', className, id, autoPlacement = true, ...rest }, ref) {
22
+ const { handleFilter, uComboboxRef } = react.useContext(suggestion.SuggestionContext);
22
23
  react.useEffect(handleFilter); // Must run on every render
23
- return (jsxRuntime.jsx("u-datalist", { "data-nofilter": true, "data-sr-singular": singular, "data-sr-plural": plural, class: className, ref: ref, ...rest }));
24
+ // Position with floating-ui
25
+ react.useEffect(() => {
26
+ const trigger = uComboboxRef?.current?.control;
27
+ const list = uComboboxRef?.current?.list;
28
+ if (list && trigger) {
29
+ return dom.autoUpdate(trigger, list, () => {
30
+ dom.computePosition(trigger, list, {
31
+ placement: 'bottom',
32
+ strategy: 'fixed',
33
+ middleware: [
34
+ ...(autoPlacement
35
+ ? [
36
+ dom.flip({
37
+ fallbackAxisSideDirection: 'start',
38
+ fallbackPlacements: ['top'],
39
+ }),
40
+ dom.shift(),
41
+ ]
42
+ : []),
43
+ undefined,
44
+ triggerWidth,
45
+ ],
46
+ }).then(({ x, y, placement }) => {
47
+ const varOperator = placement.startsWith('top') ? '-' : '+';
48
+ list.style.translate = `${Math.round(x)}px calc(${Math.round(y)}px ${varOperator} var(--dsc-suggestion-list-gap))`;
49
+ });
50
+ });
51
+ }
52
+ }, []);
53
+ return (jsxRuntime.jsx("u-datalist", { "data-nofilter": true, "data-sr-singular": singular, "data-sr-plural": plural, class: className, ref: ref, popover: 'manual', ...rest }));
24
54
  });
55
+ const triggerWidth = {
56
+ name: 'TriggerWidth',
57
+ fn(data) {
58
+ const { elements, rects } = data;
59
+ elements.floating.style.width = `${rects.reference.width}px`;
60
+ return data;
61
+ },
62
+ };
25
63
 
26
64
  exports.SuggestionList = SuggestionList;
@@ -4,6 +4,18 @@
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var react = require('react');
6
6
 
7
+ /**
8
+ * A component for rendering individual options in the Suggestion list.
9
+ *
10
+ * @example
11
+ * <Suggestion>
12
+ * <Suggestion.Input />
13
+ * <Suggestion.List>
14
+ * <Suggestion.Option value='Option 1'>Option 1</Suggestion.Option>
15
+ * <Suggestion.Option value='Option 2'>Option 2</Suggestion.Option>
16
+ * </Suggestion.List>
17
+ * </Suggestion>
18
+ */
7
19
  const SuggestionOption = react.forwardRef(function SuggestionOption({ className, ...rest }, ref) {
8
20
  return (jsxRuntime.jsx("u-option", { class: className, ref: ref, ...rest }));
9
21
  });
@@ -6,42 +6,41 @@ var react = require('react');
6
6
  require('@u-elements/u-combobox');
7
7
  var cl = require('clsx/lite');
8
8
  var useMergeRefs = require('../../utilities/hooks/use-merge-refs/use-merge-refs.js');
9
+ var index = require('../chip/index.js');
9
10
 
10
- const SuggestionContext = react.createContext({
11
- handleFilter: () => undefined,
12
- });
13
11
  const text = (el) => el.textContent?.trim() || '';
14
- const sanitizeItems = (values = []) => (typeof values === 'string'
12
+ const sanitizeItems = (values = []) => typeof values === 'string'
15
13
  ? [{ label: values, value: values }]
16
- : values.map((value) => typeof value === 'string'
17
- ? { label: value, value }
18
- : {
19
- label: value.label || value.value || '',
20
- value: value.value || '',
21
- })).filter((x) => !!x.label);
14
+ : !Array.isArray(values)
15
+ ? [values]
16
+ : values.map((value) => typeof value === 'string' ? { label: value, value } : value);
22
17
  const nextItems = (data, prev, multiple) => {
23
18
  const item = { label: text(data), value: data.value };
24
19
  if (!multiple)
25
- return data.isConnected ? [] : [item];
20
+ return data.isConnected ? undefined : item;
26
21
  return data.isConnected
27
22
  ? sanitizeItems(prev).filter(({ value }) => value !== item.value)
28
23
  : [...sanitizeItems(prev), item];
29
24
  };
30
25
  const defaultFilter = ({ label, input }) => label.toLowerCase().includes(input.value.trim().toLowerCase());
31
- const Suggestion = react.forwardRef(function Suggestion({ children, className, creatable = false, defaultValue, filter = true, multiple = false, name, onValueChange, value, ...rest }, ref) {
26
+ const Suggestion = react.forwardRef(function Suggestion({ children, className, creatable = false, defaultSelected, filter = true, multiple = false, name, onBeforeMatch, onSelectedChange, renderSelected = ({ label }) => label, selected, ...rest }, ref) {
32
27
  const uComboboxRef = react.useRef(null);
33
- const generatedSelectId = react.useId();
34
- const selectId = rest.id ? `${rest.id}-select` : generatedSelectId;
35
- const isContolled = value !== undefined;
28
+ const genId = react.useId();
29
+ const selectId = rest.id ? `${rest.id}-select` : genId;
30
+ const isControlled = selected !== undefined;
36
31
  const mergedRefs = useMergeRefs.useMergeRefs([ref, uComboboxRef]);
37
32
  const [isEmpty, setIsEmpty] = react.useState(false);
38
- const [selectedItems, setSelectedItems] = react.useState(sanitizeItems(defaultValue || value));
39
- // Update if controlled values
40
- const prevControlled = react.useRef(value);
41
- if (value !== prevControlled.current) {
42
- prevControlled.current = value;
43
- setSelectedItems(sanitizeItems(prevControlled.current));
44
- }
33
+ const [defaultItems, setDefaultItems] = react.useState(sanitizeItems(defaultSelected));
34
+ const selectedItems = selected ? sanitizeItems(selected) : defaultItems;
35
+ const onSelectedChangeRef = react.useRef(onSelectedChange);
36
+ const selectedItemsRef = react.useRef(selectedItems);
37
+ // Keep the ref updated with the latest callback
38
+ react.useEffect(() => {
39
+ onSelectedChangeRef.current = onSelectedChange;
40
+ }, [onSelectedChange]);
41
+ react.useEffect(() => {
42
+ selectedItemsRef.current = selectedItems;
43
+ }, [selectedItems]);
45
44
  /**
46
45
  * Listerners and handling of adding/removing
47
46
  */
@@ -51,14 +50,21 @@ const Suggestion = react.forwardRef(function Suggestion({ children, className, c
51
50
  event.preventDefault();
52
51
  const multiple = combobox?.multiple;
53
52
  const data = event.detail;
54
- if (isContolled)
55
- onValueChange?.(nextItems(data, prevControlled.current, multiple));
56
- else
57
- setSelectedItems((prevItems) => nextItems(data, prevItems, multiple));
53
+ const nextItem = nextItems(data, selectedItemsRef.current, multiple);
54
+ onSelectedChangeRef.current?.(nextItem || null);
55
+ if (!isControlled)
56
+ setDefaultItems(sanitizeItems(nextItem));
58
57
  };
59
- combobox?.addEventListener('beforechange', beforeChange);
60
- return () => combobox?.removeEventListener('beforechange', beforeChange);
61
- }, [isContolled, setSelectedItems]);
58
+ combobox?.addEventListener('comboboxbeforeselect', beforeChange);
59
+ return () => combobox?.removeEventListener('comboboxbeforeselect', beforeChange);
60
+ }, [isControlled]);
61
+ // Before match event listener
62
+ react.useEffect(() => {
63
+ const combobox = uComboboxRef.current;
64
+ const beforeMatch = (e) => onBeforeMatch?.(e);
65
+ combobox?.addEventListener('comboboxbeforematch', beforeMatch);
66
+ return () => combobox?.removeEventListener('comboboxbeforematch', beforeMatch);
67
+ }, [onBeforeMatch]);
62
68
  const handleFilter = react.useCallback(() => {
63
69
  const { control: input, options = [] } = uComboboxRef?.current || {};
64
70
  const filterFn = filter === true ? defaultFilter : filter;
@@ -80,7 +86,10 @@ const Suggestion = react.forwardRef(function Suggestion({ children, className, c
80
86
  }
81
87
  setIsEmpty(index === disabled);
82
88
  }, [filter]);
83
- return (jsxRuntime.jsx(SuggestionContext.Provider, { value: { isEmpty, selectedItems, handleFilter }, children: jsxRuntime.jsxs("u-combobox", { "data-multiple": multiple || undefined, "data-creatable": creatable || undefined, class: cl('ds-suggestion', className), ref: mergedRefs, ...rest, children: [children, !!name && (jsxRuntime.jsx("select", { name: name, multiple: true, hidden: true, id: selectId }))] }) }));
89
+ return (jsxRuntime.jsx(SuggestionContext.Provider, { value: { isEmpty, handleFilter, uComboboxRef }, children: jsxRuntime.jsxs("u-combobox", { "data-multiple": multiple || undefined, "data-creatable": creatable || undefined, class: cl('ds-suggestion', className), ref: mergedRefs, ...rest, children: [selectedItems.map((item) => (jsxRuntime.jsx(index.Chip.Removable, { value: item.value, asChild: true, children: jsxRuntime.jsx("data", { children: renderSelected(item) }) }, item.value))), children, !!name && (jsxRuntime.jsx("select", { name: name, multiple: true, hidden: true, id: selectId }))] }) }));
90
+ });
91
+ const SuggestionContext = react.createContext({
92
+ handleFilter: () => undefined,
84
93
  });
85
94
 
86
95
  exports.Suggestion = Suggestion;
@@ -34,7 +34,7 @@ var tableRow = require('./table-row.js');
34
34
  * </Table.Foot>
35
35
  * </Table>
36
36
  */
37
- const Table = Object.assign(table.Table, {
37
+ const TableComponent = Object.assign(table.Table, {
38
38
  Head: tableHead.TableHead,
39
39
  Body: tableBody.TableBody,
40
40
  Row: tableRow.TableRow,
@@ -42,13 +42,13 @@ const Table = Object.assign(table.Table, {
42
42
  HeaderCell: tableHeaderCell.TableHeaderCell,
43
43
  Foot: tableFoot.TableFoot,
44
44
  });
45
- Table.displayName = 'Table';
46
- Table.Head.displayName = 'Table.Head';
47
- Table.Body.displayName = 'Table.Body';
48
- Table.Row.displayName = 'Table.Row';
49
- Table.Cell.displayName = 'Table.Cell';
50
- Table.HeaderCell.displayName = 'Table.HeaderCell';
51
- Table.Foot.displayName = 'Table.Foot';
45
+ TableComponent.displayName = 'Table';
46
+ TableComponent.Head.displayName = 'Table.Head';
47
+ TableComponent.Body.displayName = 'Table.Body';
48
+ TableComponent.Row.displayName = 'Table.Row';
49
+ TableComponent.Cell.displayName = 'Table.Cell';
50
+ TableComponent.HeaderCell.displayName = 'Table.HeaderCell';
51
+ TableComponent.Foot.displayName = 'Table.Foot';
52
52
 
53
53
  exports.TableBody = tableBody.TableBody;
54
54
  exports.TableCell = tableCell.TableCell;
@@ -56,4 +56,4 @@ exports.TableFoot = tableFoot.TableFoot;
56
56
  exports.TableHead = tableHead.TableHead;
57
57
  exports.TableHeaderCell = tableHeaderCell.TableHeaderCell;
58
58
  exports.TableRow = tableRow.TableRow;
59
- exports.Table = Table;
59
+ exports.Table = TableComponent;
@@ -8,12 +8,12 @@ var react = require('react');
8
8
  * TableBody component, used to display the body of a table. Renders a native HTML tbody element.
9
9
  *
10
10
  * @example
11
- * <Table.Body>
12
- * <Table.Row>
13
- * <Table.Cell>John</Table.Cell>
14
- * <Table.Cell>25</Table.Cell>
15
- * </Table.Row>
16
- * </Table.Body>
11
+ * <TableBody>
12
+ * <TableRow>
13
+ * <TableCell>John</TableCell>
14
+ * <TableCell>25</TableCell>
15
+ * </TableRow>
16
+ * </TableBody>
17
17
  */
18
18
  const TableBody = react.forwardRef(function TableBody(rest, ref) {
19
19
  return jsxRuntime.jsx("tbody", { ref: ref, ...rest });
@@ -8,7 +8,7 @@ var react = require('react');
8
8
  * TableCell component, used to display the cells of a table. Renders a native HTML td element.
9
9
  *
10
10
  * @example
11
- * <Table.Cell>John</Table.Cell>
11
+ * <TableCell>John</TableCell>
12
12
  */
13
13
  const TableCell = react.forwardRef(function TableCell(rest, ref) {
14
14
  return jsxRuntime.jsx("td", { ref: ref, ...rest });
@@ -8,12 +8,12 @@ var react = require('react');
8
8
  * TableFoot component, used to display the footer of a table. Renders a native HTML tfoot element.
9
9
  *
10
10
  * @example
11
- * <Table.Foot>
12
- * <Table.Row>
13
- * <Table.Cell>Total</Table.Cell>
14
- * <Table.Cell>2</Table.Cell>
15
- * </Table.Row>
16
- * </Table.Foot>
11
+ * <TableFoot>
12
+ * <TableRow>
13
+ * <TableCell>Total</TableCell>
14
+ * <TableCell>2</TableCell>
15
+ * </TableRow>
16
+ * </TableFoot>
17
17
  */
18
18
  const TableFoot = react.forwardRef(function TableFoot(rest, ref) {
19
19
  return jsxRuntime.jsx("tfoot", { ref: ref, ...rest });
@@ -8,12 +8,12 @@ var react = require('react');
8
8
  * TableHead component, used to display the header of a table. Renders a native HTML thead element.
9
9
  *
10
10
  * @example
11
- * <Table.Head>
12
- * <Table.Row>
13
- * <Table.HeaderCell>Name</Table.HeaderCell>
14
- * <Table.HeaderCell>Age</Table.HeaderCell>
15
- * </Table.Row>
16
- * </Table.Head>
11
+ * <TableHead>
12
+ * <TableRow>
13
+ * <TableHeaderCell>Name</TableHeaderCell>
14
+ * <TableHeaderCell>Age</TableHeaderCell>
15
+ * </TableRow>
16
+ * </TableHead>
17
17
  */
18
18
  const TableHead = react.forwardRef(function TableHead(rest, ref) {
19
19
  return jsxRuntime.jsx("thead", { ref: ref, ...rest });
@@ -8,7 +8,7 @@ var react = require('react');
8
8
  * TableHeaderCell component, used to display the header cells of a table. Renders a native HTML th element.
9
9
  *
10
10
  * @example
11
- * <Table.HeaderCell>Name</Table.HeaderCell>
11
+ * <TableHeaderCell>Name</TableHeaderCell>
12
12
  */
13
13
  const TableHeaderCell = react.forwardRef(function TableHeaderCell({ sort, children, ...rest }, ref) {
14
14
  return (jsxRuntime.jsx("th", { "aria-sort": sort, ref: ref, ...rest, children: sort ? jsxRuntime.jsx("button", { type: 'button', children: children }) : children }));
@@ -8,10 +8,10 @@ var react = require('react');
8
8
  * TableRow component, used to display the rows of a table. Renders a native HTML tr element.
9
9
  *
10
10
  * @example
11
- * <Table.Row>
12
- * <Table.Cell>John</Table.Cell>
13
- * <Table.Cell>25</Table.Cell>
14
- * </Table.Row>
11
+ * <TableRow>
12
+ * <TableCell>John</TableCell>
13
+ * <TableCell>25</TableCell>
14
+ * </TableRow>
15
15
  */
16
16
  const TableRow = react.forwardRef(function TableRow(rest, ref) {
17
17
  return jsxRuntime.jsx("tr", { ref: ref, ...rest });
@@ -21,16 +21,16 @@ var tabsTab = require('./tabs-tab.js');
21
21
  * <Tabs.Panel value='3'>content 3</Tabs.Panel>
22
22
  * </Tabs>
23
23
  */
24
- const Tabs = Object.assign(tabs.Tabs, {
24
+ const TabsComponent = Object.assign(tabs.Tabs, {
25
25
  List: tabsList.TabsList,
26
26
  Tab: tabsTab.TabsTab,
27
27
  Panel: tabsPanel.TabsPanel,
28
28
  });
29
- Tabs.Tab.displayName = 'Tabs.Tab';
30
- Tabs.List.displayName = 'Tabs.List';
31
- Tabs.Panel.displayName = 'Tabs.Panel';
29
+ TabsComponent.Tab.displayName = 'Tabs.Tab';
30
+ TabsComponent.List.displayName = 'Tabs.List';
31
+ TabsComponent.Panel.displayName = 'Tabs.Panel';
32
32
 
33
33
  exports.TabsList = tabsList.TabsList;
34
34
  exports.TabsPanel = tabsPanel.TabsPanel;
35
35
  exports.TabsTab = tabsTab.TabsTab;
36
- exports.Tabs = Tabs;
36
+ exports.Tabs = TabsComponent;
@@ -3,6 +3,7 @@
3
3
 
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var react = require('react');
6
+ var useMergeRefs = require('../../utilities/hooks/use-merge-refs/use-merge-refs.js');
6
7
  var rovingFocusRoot = require('../../utilities/roving-focus/roving-focus-root.js');
7
8
  var tabs = require('./tabs.js');
8
9
 
@@ -10,14 +11,15 @@ var tabs = require('./tabs.js');
10
11
  * The container for all `Tab` components.
11
12
  *
12
13
  * @example
13
- * <Tabs.List>
14
- * <Tabs.Tab value='1'>Tab 1</Tabs.Tab>
15
- * <Tabs.Tab value='2'>Tab 2</Tabs.Tab>
16
- * </Tabs.List>
14
+ * <TabsList>
15
+ * <TabsTab value='1'>Tab 1</TabsTab>
16
+ * <TabsTab value='2'>Tab 2</TabsTab>
17
+ * </TabsList>
17
18
  */
18
19
  const TabsList = react.forwardRef(function TabsList({ children, ...rest }, ref) {
19
- const { value } = react.useContext(tabs.Context);
20
- return (jsxRuntime.jsx(rovingFocusRoot.RovingFocusRoot, { role: 'tablist', activeValue: value, orientation: 'ambiguous', ref: ref, ...rest, children: children }));
20
+ const { value, tablistRef } = react.useContext(tabs.Context);
21
+ const mergedRefs = useMergeRefs.useMergeRefs([ref, tablistRef]);
22
+ return (jsxRuntime.jsx(rovingFocusRoot.RovingFocusRoot, { role: 'tablist', activeValue: value, orientation: 'ambiguous', ref: mergedRefs, ...rest, children: children }));
21
23
  });
22
24
 
23
25
  exports.TabsList = TabsList;
@@ -3,19 +3,22 @@
3
3
 
4
4
  var jsxRuntime = require('react/jsx-runtime');
5
5
  var react = require('react');
6
- var tabs = require('./tabs.js');
7
6
  var useMergeRefs = require('../../utilities/hooks/use-merge-refs/use-merge-refs.js');
7
+ var tabs = require('./tabs.js');
8
8
 
9
9
  /**
10
10
  * A single content item in a Tabs component.
11
11
  *
12
12
  * @example
13
- * <Tabs.Panel value='1'>content 1</Tabs.Panel>
13
+ * <TabsPanel value='1'>content 1</TabsPanel>
14
14
  */
15
- const TabsPanel = react.forwardRef(function TabsPanel({ children, value, ...rest }, ref) {
16
- const { value: tabsValue } = react.useContext(tabs.Context);
15
+ const TabsPanel = react.forwardRef(function TabsPanel({ children, value, id, ...rest }, ref) {
16
+ const { value: tabsValue, tablistRef, setPanelButtonMap, } = react.useContext(tabs.Context);
17
17
  const active = value === tabsValue;
18
+ const generatedId = react.useId();
19
+ const panelId = id ?? `tabpanel-${generatedId}`;
18
20
  const [hasTabbableElement, setHasTabbableElement] = react.useState(false);
21
+ const [labelledBy, setLabelledBy] = react.useState(undefined);
19
22
  const internalRef = react.useRef(null);
20
23
  const mergedRef = useMergeRefs.useMergeRefs([ref, internalRef]);
21
24
  /* Check if the panel has any tabbable elements */
@@ -25,7 +28,17 @@ const TabsPanel = react.forwardRef(function TabsPanel({ children, value, ...rest
25
28
  const tabbableElements = internalRef.current.querySelectorAll('button, [href], input, select, textarea, [tabindex]:not([tabindex="-1"])');
26
29
  setHasTabbableElement(tabbableElements.length > 0);
27
30
  }, [children]);
28
- return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: active && (jsxRuntime.jsx("div", { ref: mergedRef, role: 'tabpanel', tabIndex: hasTabbableElement ? undefined : 0, ...rest, children: children })) }));
31
+ /* get associated button */
32
+ react.useEffect(() => {
33
+ if (!tablistRef)
34
+ return;
35
+ const button = tablistRef.current?.querySelector(`[role="tab"][data-value="${value}"]`);
36
+ setLabelledBy(button ? button.id : undefined);
37
+ if (button) {
38
+ setPanelButtonMap?.((prev) => new Map(prev).set(button.id, panelId));
39
+ }
40
+ }, [tablistRef]);
41
+ return (jsxRuntime.jsx("div", { ref: mergedRef, id: panelId, role: 'tabpanel', tabIndex: hasTabbableElement ? undefined : 0, "aria-labelledby": labelledBy, hidden: !active, ...rest, children: children }));
29
42
  });
30
43
 
31
44
  exports.TabsPanel = TabsPanel;
@@ -10,13 +10,16 @@ var tabs = require('./tabs.js');
10
10
  * A single item in a Tabs component.
11
11
  *
12
12
  * @example
13
- * <Tabs.Tab value='1'>Tab 1</Tabs.Tab>
13
+ * <TabsTab value='1'>Tab 1</TabsTab>
14
14
  */
15
- const TabsTab = react.forwardRef(function TabsTab({ value, id, ...rest }, ref) {
15
+ const TabsTab = react.forwardRef(function TabsTab({ value, id, onClick, ...rest }, ref) {
16
16
  const tabs$1 = react.useContext(tabs.Context);
17
17
  const generatedId = react.useId();
18
18
  const buttonId = id ?? `tab-${generatedId}`;
19
- return (jsxRuntime.jsx(rovingFocusItem.RovingFocusItem, { value: value, ...rest, asChild: true, children: jsxRuntime.jsx("button", { ...rest, "aria-selected": tabs$1.value === value, id: buttonId, onClick: () => tabs$1.onChange?.(value), ref: ref, role: 'tab', type: 'button' }) }));
19
+ return (jsxRuntime.jsx(rovingFocusItem.RovingFocusItem, { value: value, ...rest, asChild: true, children: jsxRuntime.jsx("button", { ref: ref, id: buttonId, "aria-selected": tabs$1.value === value, "data-value": value, role: 'tab', type: 'button', onClick: (e) => {
20
+ tabs$1.onChange?.(value);
21
+ onClick?.(e);
22
+ }, "aria-controls": tabs$1.panelButtonMap?.get(buttonId), ...rest }) }));
20
23
  });
21
24
 
22
25
  exports.TabsTab = TabsTab;
@@ -22,8 +22,10 @@ const Context = react.createContext({});
22
22
  * </Tabs>
23
23
  */
24
24
  const Tabs = react.forwardRef(function Tabs({ value, defaultValue, className, onChange, ...rest }, ref) {
25
+ const tablistRef = react.useRef(null);
25
26
  const isControlled = value !== undefined;
26
27
  const [uncontrolledValue, setUncontrolledValue] = react.useState(defaultValue);
28
+ const [panelButtonMap, setPanelButtonMap] = react.useState(new Map());
27
29
  let onValueChange = onChange;
28
30
  if (!isControlled) {
29
31
  onValueChange = (newValue) => {
@@ -36,6 +38,9 @@ const Tabs = react.forwardRef(function Tabs({ value, defaultValue, className, on
36
38
  value,
37
39
  defaultValue,
38
40
  onChange: onValueChange,
41
+ tablistRef,
42
+ panelButtonMap,
43
+ setPanelButtonMap,
39
44
  }, children: jsxRuntime.jsx("div", { className: cl('ds-tabs', className), ref: ref, ...rest }) }));
40
45
  });
41
46
 
@@ -11,8 +11,8 @@ var react = require('react');
11
11
  * @example
12
12
  * <Tag>Melk</Tag>
13
13
  */
14
- const Tag = react.forwardRef(function Tag({ className, ...rest }, ref) {
15
- return jsxRuntime.jsx("span", { className: cl('ds-tag', className), ref: ref, ...rest });
14
+ const Tag = react.forwardRef(function Tag({ className, variant = 'default', ...rest }, ref) {
15
+ return (jsxRuntime.jsx("span", { className: cl('ds-tag', className), ref: ref, "data-variant": variant, ...rest }));
16
16
  });
17
17
 
18
18
  exports.Tag = Tag;
@@ -21,7 +21,7 @@ var fieldAffix = require('../field/field-affix.js');
21
21
  * <Textfield label="Textfield label">
22
22
  */
23
23
  const Textfield = react.forwardRef(function Textfield({ label: label$1, description, error, multiline, prefix, suffix, 'data-size': size, counter, style, className, ...rest }, ref) {
24
- return (jsxRuntime.jsxs(index.Field, { className: className, "data-size": size, style: style, children: [!!label$1 && jsxRuntime.jsx(label.Label, { children: label$1 }), !!description && jsxRuntime.jsx(fieldDescription.FieldDescription, { children: description }), jsxRuntime.jsxs(fieldAffix.FieldAffixes, { children: [prefix === undefined || jsxRuntime.jsx(fieldAffix.FieldAffix, { children: prefix }), multiline === true ? (jsxRuntime.jsx(textarea.Textarea, { ref: ref, "aria-invalid": Boolean(error) || undefined, ...rest })) : (jsxRuntime.jsx(input.Input, { ref: ref, "aria-invalid": Boolean(error) || undefined, ...rest })), suffix === undefined || jsxRuntime.jsx(fieldAffix.FieldAffix, { children: suffix })] }), !!error && jsxRuntime.jsx(validationMessage.ValidationMessage, { children: error }), !!counter && (jsxRuntime.jsx(index.Field.Counter, { ...(typeof counter === 'number' ? { limit: counter } : counter) }))] }));
24
+ return (jsxRuntime.jsxs(index.Field, { className: className, "data-size": size, style: style, children: [!!label$1 && jsxRuntime.jsx(label.Label, { children: label$1 }), !!description && jsxRuntime.jsx(fieldDescription.FieldDescription, { children: description }), jsxRuntime.jsxs(fieldAffix.FieldAffixes, { children: [prefix === undefined || jsxRuntime.jsx(fieldAffix.FieldAffix, { children: prefix }), multiline === true ? (jsxRuntime.jsx(textarea.Textarea, { ref: ref, "aria-invalid": Boolean(error) || undefined, ...rest })) : (jsxRuntime.jsx(input.Input, { ref: ref, "aria-invalid": Boolean(error) || undefined, ...rest })), suffix === undefined || jsxRuntime.jsx(fieldAffix.FieldAffix, { children: suffix })] }), !!counter && (jsxRuntime.jsx(index.Field.Counter, { ...(typeof counter === 'number' ? { limit: counter } : counter) })), !!error && jsxRuntime.jsx(validationMessage.ValidationMessage, { children: error })] }));
25
25
  });
26
26
 
27
27
  exports.Textfield = Textfield;
@@ -14,10 +14,10 @@ var toggleGroupItem = require('./toggle-group-item.js');
14
14
  * <ToggleGroup.Item value='3'>Toggle 3</ToggleGroup.Item>
15
15
  * </ToggleGroup>
16
16
  */
17
- const ToggleGroup = Object.assign(toggleGroup.ToggleGroup, {
17
+ const ToggleGroupComponent = Object.assign(toggleGroup.ToggleGroup, {
18
18
  Item: toggleGroupItem.ToggleGroupItem,
19
19
  });
20
- ToggleGroup.Item.displayName = 'ToggleGroup.Item';
20
+ ToggleGroupComponent.Item.displayName = 'ToggleGroup.Item';
21
21
 
22
22
  exports.ToggleGroupItem = toggleGroupItem.ToggleGroupItem;
23
- exports.ToggleGroup = ToggleGroup;
23
+ exports.ToggleGroup = ToggleGroupComponent;
@@ -10,11 +10,11 @@ var useToggleGroupitem = require('./use-toggle-groupitem.js');
10
10
  /**
11
11
  * A single item in a ToggleGroup.
12
12
  * @example
13
- * <ToggleGroup.Item value='1'>Toggle 1</ToggleGroup.Item>
13
+ * <ToggleGroupItem value='1'>Toggle 1</ToggleGroupItem>
14
14
  */
15
15
  const ToggleGroupItem = react.forwardRef(function ToggleGroupItem(rest, ref) {
16
- const { active, buttonProps, value } = useToggleGroupitem.useToggleGroupItem(rest);
17
- return (jsxRuntime.jsx(rovingFocusItem.RovingFocusItem, { asChild: true, value: value, children: jsxRuntime.jsx(button.Button, { variant: active ? 'primary' : 'tertiary', ref: ref, ...rest, ...buttonProps }) }));
16
+ const { active, buttonProps, value, variant } = useToggleGroupitem.useToggleGroupItem(rest);
17
+ return (jsxRuntime.jsx(rovingFocusItem.RovingFocusItem, { asChild: true, value: value, children: jsxRuntime.jsx(button.Button, { variant: active ? variant : 'tertiary', ref: ref, ...rest, ...buttonProps }) }));
18
18
  });
19
19
 
20
20
  exports.ToggleGroupItem = ToggleGroupItem;
@@ -17,7 +17,7 @@ const ToggleGroupContext = react.createContext({});
17
17
  * <ToggleGroup.Item value='3'>Toggle 3</ToggleGroup.Item>
18
18
  * </ToggleGroup>
19
19
  */
20
- const ToggleGroup = react.forwardRef(function ToggleGroup({ children, value, defaultValue, onChange, name, className, ...rest }, ref) {
20
+ const ToggleGroup = react.forwardRef(function ToggleGroup({ children, variant = 'primary', value, defaultValue, onChange, name, className, ...rest }, ref) {
21
21
  const nameId = react.useId();
22
22
  const isControlled = value !== undefined;
23
23
  const [uncontrolledValue, setUncontrolledValue] = react.useState(defaultValue);
@@ -30,11 +30,12 @@ const ToggleGroup = react.forwardRef(function ToggleGroup({ children, value, def
30
30
  value = uncontrolledValue;
31
31
  }
32
32
  return (jsxRuntime.jsx(ToggleGroupContext.Provider, { value: {
33
+ variant,
33
34
  value,
34
35
  defaultValue,
35
36
  name: name ?? `togglegroup-name-${nameId}`,
36
37
  onChange: onValueChange,
37
- }, children: jsxRuntime.jsx(rovingFocusRoot.RovingFocusRoot, { asChild: true, activeValue: value, orientation: 'ambiguous', children: jsxRuntime.jsxs("div", { className: cl('ds-toggle-group', className), role: 'radiogroup', ref: ref, ...rest, children: [name && jsxRuntime.jsx("input", { type: 'hidden', name: name, value: value }), children] }) }) }));
38
+ }, children: jsxRuntime.jsx(rovingFocusRoot.RovingFocusRoot, { asChild: true, activeValue: value, orientation: 'ambiguous', children: jsxRuntime.jsxs("div", { className: cl('ds-toggle-group', className), role: 'radiogroup', "data-variant": variant, ref: ref, ...rest, children: [name && jsxRuntime.jsx("input", { type: 'hidden', name: name, value: value }), children] }) }) }));
38
39
  });
39
40
 
40
41
  exports.ToggleGroup = ToggleGroup;
@@ -11,11 +11,13 @@ const useToggleGroupItem = (props) => {
11
11
  const toggleGroup$1 = react.useContext(toggleGroup.ToggleGroupContext);
12
12
  const value = props.value ?? genValue;
13
13
  const active = toggleGroup$1.value === value;
14
+ const variant = toggleGroup$1.variant;
14
15
  const buttonId = `togglegroup-item-${react.useId()}`;
15
16
  return {
16
17
  ...rest,
17
18
  active: active,
18
19
  value,
20
+ variant,
19
21
  buttonProps: {
20
22
  id: buttonId,
21
23
  'aria-checked': active,
@@ -21,13 +21,14 @@ var useMergeRefs = require('../../utilities/hooks/use-merge-refs/use-merge-refs.
21
21
  * Hover me
22
22
  * </Tooltip>
23
23
  */
24
- const Tooltip = react.forwardRef(function Tooltip({ id, children, content, placement = 'top', autoPlacement = true, open, className, ...rest }, ref) {
24
+ const Tooltip = react.forwardRef(function Tooltip({ id, children, content, placement = 'top', autoPlacement = true, open, className, type, ...rest }, ref) {
25
25
  const randomTooltipId = react.useId();
26
26
  const [internalOpen, setInternalOpen] = react.useState(false);
27
27
  const triggerRef = react.useRef(null);
28
28
  const tooltipRef = react.useRef(null);
29
29
  const mergedRefs = useMergeRefs.useMergeRefs([tooltipRef, ref]);
30
30
  const controlledOpen = open ?? internalOpen;
31
+ const tooltipId = id ?? randomTooltipId;
31
32
  const setOpen = () => {
32
33
  setInternalOpen(true);
33
34
  };
@@ -60,23 +61,39 @@ const Tooltip = react.forwardRef(function Tooltip({ id, children, content, place
60
61
  safeAreaElement,
61
62
  ],
62
63
  }).then(({ x, y }) => {
63
- tooltip.style.translate = `${x}px ${y}px`;
64
+ tooltip.style.translate = `${Math.round(x)}px ${Math.round(y)}px`;
64
65
  });
65
66
  });
66
67
  }
67
68
  }, [controlledOpen, placement]);
68
- /* Add listener for ESC to dismiss */
69
+ /* Add listeners for ESC to dismiss and click outside on mobile */
69
70
  react.useEffect(() => {
71
+ const tooltip = tooltipRef.current;
72
+ const trigger = triggerRef.current;
70
73
  const handleKeyDown = (event) => {
71
74
  if (event.key === 'Escape') {
72
75
  setInternalOpen(false);
73
76
  }
74
77
  };
75
- window.addEventListener('keydown', handleKeyDown);
78
+ const handleClick = (event) => {
79
+ const el = event.target;
80
+ const isTooltip = tooltip?.contains(el);
81
+ const isTrigger = trigger?.contains(el);
82
+ const isOutside = !isTrigger && !isTooltip;
83
+ if (isOutside && controlledOpen) {
84
+ setInternalOpen(false);
85
+ }
86
+ };
87
+ if (controlledOpen) {
88
+ window.addEventListener('keydown', handleKeyDown);
89
+ /* Add click listener to handle mobile tap-to-close */
90
+ document.addEventListener('click', handleClick);
91
+ }
76
92
  return () => {
77
93
  window.removeEventListener('keydown', handleKeyDown);
94
+ document.removeEventListener('click', handleClick);
78
95
  };
79
- }, []);
96
+ }, [controlledOpen]);
80
97
  /* If children is only a string, make a span */
81
98
  const ChildContainer = typeof children === 'string' ? 'span' : reactSlot.Slot;
82
99
  /* Make sure it is valid */
@@ -85,12 +102,13 @@ const Tooltip = react.forwardRef(function Tooltip({ id, children, content, place
85
102
  return null;
86
103
  }
87
104
  const popoverProps = {
88
- [react.version.startsWith('19') ? 'popoverTarget' : 'popovertarget']: id ?? randomTooltipId,
105
+ [react.version.startsWith('19') ? 'popoverTarget' : 'popovertarget']: tooltipId,
89
106
  [react.version.startsWith('19')
90
107
  ? 'popoverTargetAction'
91
108
  : 'popovertargetaction']: 'show',
92
109
  };
93
- return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(ChildContainer, { ref: triggerRef, ...popoverProps, onMouseEnter: setOpen, onMouseLeave: setClose, onFocus: setOpen, onBlur: setClose, children: children }), jsxRuntime.jsx("span", { onMouseEnter: setOpen, onMouseLeave: setClose, ref: mergedRefs, role: 'tooltip', className: cl('ds-tooltip', className), id: id ?? randomTooltipId, popover: 'manual', ...rest, children: content })] }));
110
+ const autoType = `aria-${triggerRef.current?.innerText?.trim() ? 'describedby' : 'labelledby'}`;
111
+ return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(ChildContainer, { ref: triggerRef, ...popoverProps, onMouseEnter: setOpen, onMouseLeave: setClose, onFocus: setOpen, onBlur: setClose, [type ? 'aria-' + type : autoType]: tooltipId, children: children }), jsxRuntime.jsx("span", { onMouseEnter: setOpen, onMouseLeave: setClose, ref: mergedRefs, role: 'tooltip', className: cl('ds-tooltip', className), id: tooltipId, popover: 'manual', ...rest, children: content })] }));
94
112
  });
95
113
  const arrowPseudoElement = {
96
114
  name: 'ArrowPseudoElement',