@navikt/ds-react 7.2.0 → 7.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (294) hide show
  1. package/cjs/accordion/AccordionHeader.js +1 -1
  2. package/cjs/accordion/AccordionHeader.js.map +1 -1
  3. package/cjs/alert/Alert.d.ts +0 -3
  4. package/cjs/alert/Alert.js +11 -17
  5. package/cjs/alert/Alert.js.map +1 -1
  6. package/cjs/chips/Removable.d.ts +5 -5
  7. package/cjs/chips/Removable.js +4 -2
  8. package/cjs/chips/Removable.js.map +1 -1
  9. package/cjs/collapsible/Collapsible.context.d.ts +1 -1
  10. package/cjs/date/datepicker/DatePicker.d.ts +2 -2
  11. package/cjs/date/monthpicker/MonthPicker.d.ts +2 -2
  12. package/cjs/dropdown/Menu/index.js +1 -1
  13. package/cjs/dropdown/Menu/index.js.map +1 -1
  14. package/cjs/form/checkbox/useCheckbox.js +3 -2
  15. package/cjs/form/checkbox/useCheckbox.js.map +1 -1
  16. package/cjs/form/combobox/ComboboxProvider.js +4 -1
  17. package/cjs/form/combobox/ComboboxProvider.js.map +1 -1
  18. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js +1 -1
  19. package/cjs/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
  20. package/cjs/form/combobox/FilteredOptions/useVirtualFocus.d.ts +3 -0
  21. package/cjs/form/combobox/FilteredOptions/useVirtualFocus.js +33 -10
  22. package/cjs/form/combobox/FilteredOptions/useVirtualFocus.js.map +1 -1
  23. package/cjs/form/combobox/Input/Input.js +23 -10
  24. package/cjs/form/combobox/Input/Input.js.map +1 -1
  25. package/cjs/form/file-upload/FileUpload.context.d.ts +1 -1
  26. package/cjs/form/radio/useRadio.js +3 -2
  27. package/cjs/form/radio/useRadio.js.map +1 -1
  28. package/cjs/form/search/Search.js +1 -1
  29. package/cjs/form/search/Search.js.map +1 -1
  30. package/cjs/form/switch/Switch.js +2 -1
  31. package/cjs/form/switch/Switch.js.map +1 -1
  32. package/cjs/index.d.ts +1 -0
  33. package/cjs/index.js +4 -2
  34. package/cjs/index.js.map +1 -1
  35. package/cjs/layout/base/BasePrimitive.d.ts +3 -0
  36. package/cjs/layout/base/BasePrimitive.js.map +1 -1
  37. package/cjs/layout/box/Box.d.ts +2 -2
  38. package/cjs/layout/box/Box.js.map +1 -1
  39. package/cjs/layout/grid/HGrid.d.ts +2 -2
  40. package/cjs/layout/grid/HGrid.js.map +1 -1
  41. package/cjs/layout/stack/Stack.d.ts +2 -2
  42. package/cjs/layout/stack/Stack.js.map +1 -1
  43. package/cjs/modal/ModalHeader.js +6 -1
  44. package/cjs/modal/ModalHeader.js.map +1 -1
  45. package/cjs/modal/dialog-polyfill.js +2 -2
  46. package/cjs/modal/dialog-polyfill.js.map +1 -1
  47. package/cjs/overlays/action-menu/ActionMenu.d.ts +310 -0
  48. package/cjs/overlays/action-menu/ActionMenu.js +227 -0
  49. package/cjs/overlays/action-menu/ActionMenu.js.map +1 -0
  50. package/cjs/overlays/action-menu/index.d.ts +1 -0
  51. package/cjs/overlays/action-menu/index.js +19 -0
  52. package/cjs/overlays/action-menu/index.js.map +1 -0
  53. package/cjs/overlays/floating/Floating.js +9 -10
  54. package/cjs/overlays/floating/Floating.js.map +1 -1
  55. package/cjs/overlays/floating/Floating.utils.d.ts +3 -5
  56. package/cjs/overlays/floating/Floating.utils.js +0 -2
  57. package/cjs/overlays/floating/Floating.utils.js.map +1 -1
  58. package/cjs/overlays/floating-menu/Menu.d.ts +15 -21
  59. package/cjs/overlays/floating-menu/Menu.js +119 -230
  60. package/cjs/overlays/floating-menu/Menu.js.map +1 -1
  61. package/cjs/overlays/floating-menu/parts/RovingFocus.d.ts +1 -1
  62. package/cjs/overlays/floating-menu/parts/RovingFocus.js +4 -4
  63. package/cjs/overlays/floating-menu/parts/RovingFocus.js.map +1 -1
  64. package/cjs/pagination/Pagination.d.ts +1 -6
  65. package/cjs/pagination/Pagination.js.map +1 -1
  66. package/cjs/provider/i18n/LanguageProvider.d.ts +3 -3
  67. package/cjs/stepper/context.d.ts +1 -1
  68. package/cjs/table/Body.d.ts +2 -4
  69. package/cjs/table/Body.js.map +1 -1
  70. package/cjs/table/ColumnHeader.d.ts +1 -2
  71. package/cjs/table/ColumnHeader.js.map +1 -1
  72. package/cjs/table/ExpandableRow.d.ts +1 -2
  73. package/cjs/table/ExpandableRow.js.map +1 -1
  74. package/cjs/table/Header.d.ts +2 -4
  75. package/cjs/table/Header.js.map +1 -1
  76. package/cjs/table/HeaderCell.d.ts +1 -2
  77. package/cjs/table/HeaderCell.js.map +1 -1
  78. package/cjs/table/Row.d.ts +1 -2
  79. package/cjs/table/Row.js.map +1 -1
  80. package/cjs/tabs/Tabs.context.d.ts +1 -1
  81. package/cjs/tabs/parts/tablist/useScrollButtons.js +1 -1
  82. package/cjs/tabs/parts/tablist/useScrollButtons.js.map +1 -1
  83. package/cjs/tabs/parts/tablist/useTabList.js +4 -4
  84. package/cjs/tabs/parts/tablist/useTabList.js.map +1 -1
  85. package/cjs/timeline/TimelineRow.js +9 -10
  86. package/cjs/timeline/TimelineRow.js.map +1 -1
  87. package/cjs/toggle-group/ToggleGroup.context.d.ts +1 -1
  88. package/cjs/toggle-group/parts/useToggleItem.js +4 -4
  89. package/cjs/toggle-group/parts/useToggleItem.js.map +1 -1
  90. package/cjs/util/TextareaAutoSize.js +2 -2
  91. package/cjs/util/TextareaAutoSize.js.map +1 -1
  92. package/cjs/util/hooks/descendants/descendant.js +1 -1
  93. package/cjs/util/hooks/descendants/descendant.js.map +1 -1
  94. package/cjs/util/hooks/descendants/useDescendant.js +1 -1
  95. package/cjs/util/hooks/descendants/useDescendant.js.map +1 -1
  96. package/cjs/util/i18n/get.d.ts +2 -2
  97. package/cjs/util/i18n/get.js.map +1 -1
  98. package/cjs/util/i18n/i18n.context.d.ts +2 -3
  99. package/cjs/util/i18n/i18n.context.js.map +1 -1
  100. package/cjs/util/i18n/i18n.types.d.ts +5 -9
  101. package/cjs/util/i18n/locales/en.d.ts +39 -0
  102. package/cjs/util/i18n/locales/en.js +41 -0
  103. package/cjs/util/i18n/locales/en.js.map +1 -0
  104. package/cjs/util/i18n/locales/nb.d.ts +14 -0
  105. package/cjs/util/i18n/locales/nb.js +14 -0
  106. package/cjs/util/i18n/locales/nb.js.map +1 -1
  107. package/cjs/util/i18n/locales/nn.d.ts +39 -0
  108. package/cjs/util/i18n/locales/nn.js +41 -0
  109. package/cjs/util/i18n/locales/nn.js.map +1 -0
  110. package/cjs/util/requireReactElement.d.ts +2 -0
  111. package/cjs/util/requireReactElement.js +22 -0
  112. package/cjs/util/requireReactElement.js.map +1 -0
  113. package/cjs/util/virtualfocus/Context.d.ts +1 -1
  114. package/cjs/util/virtualfocus/parts/VirtualFocusContent.d.ts +1 -2
  115. package/cjs/util/virtualfocus/parts/VirtualFocusContent.js.map +1 -1
  116. package/esm/accordion/AccordionHeader.js +1 -1
  117. package/esm/accordion/AccordionHeader.js.map +1 -1
  118. package/esm/alert/Alert.d.ts +0 -3
  119. package/esm/alert/Alert.js +11 -17
  120. package/esm/alert/Alert.js.map +1 -1
  121. package/esm/chips/Removable.d.ts +5 -5
  122. package/esm/chips/Removable.js +4 -2
  123. package/esm/chips/Removable.js.map +1 -1
  124. package/esm/collapsible/Collapsible.context.d.ts +1 -1
  125. package/esm/date/datepicker/DatePicker.d.ts +2 -2
  126. package/esm/date/monthpicker/MonthPicker.d.ts +2 -2
  127. package/esm/dropdown/Menu/index.js +1 -1
  128. package/esm/dropdown/Menu/index.js.map +1 -1
  129. package/esm/form/checkbox/useCheckbox.js +3 -2
  130. package/esm/form/checkbox/useCheckbox.js.map +1 -1
  131. package/esm/form/combobox/ComboboxProvider.js +4 -1
  132. package/esm/form/combobox/ComboboxProvider.js.map +1 -1
  133. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js +1 -1
  134. package/esm/form/combobox/FilteredOptions/filteredOptionsContext.js.map +1 -1
  135. package/esm/form/combobox/FilteredOptions/useVirtualFocus.d.ts +3 -0
  136. package/esm/form/combobox/FilteredOptions/useVirtualFocus.js +34 -11
  137. package/esm/form/combobox/FilteredOptions/useVirtualFocus.js.map +1 -1
  138. package/esm/form/combobox/Input/Input.js +23 -10
  139. package/esm/form/combobox/Input/Input.js.map +1 -1
  140. package/esm/form/file-upload/FileUpload.context.d.ts +1 -1
  141. package/esm/form/radio/useRadio.js +3 -2
  142. package/esm/form/radio/useRadio.js.map +1 -1
  143. package/esm/form/search/Search.js +1 -1
  144. package/esm/form/search/Search.js.map +1 -1
  145. package/esm/form/switch/Switch.js +2 -1
  146. package/esm/form/switch/Switch.js.map +1 -1
  147. package/esm/index.d.ts +1 -0
  148. package/esm/index.js +1 -0
  149. package/esm/index.js.map +1 -1
  150. package/esm/layout/base/BasePrimitive.d.ts +3 -0
  151. package/esm/layout/base/BasePrimitive.js.map +1 -1
  152. package/esm/layout/box/Box.d.ts +2 -2
  153. package/esm/layout/box/Box.js.map +1 -1
  154. package/esm/layout/grid/HGrid.d.ts +2 -2
  155. package/esm/layout/grid/HGrid.js.map +1 -1
  156. package/esm/layout/stack/Stack.d.ts +2 -2
  157. package/esm/layout/stack/Stack.js.map +1 -1
  158. package/esm/modal/ModalHeader.js +6 -1
  159. package/esm/modal/ModalHeader.js.map +1 -1
  160. package/esm/modal/dialog-polyfill.js +2 -2
  161. package/esm/modal/dialog-polyfill.js.map +1 -1
  162. package/esm/overlays/action-menu/ActionMenu.d.ts +310 -0
  163. package/esm/overlays/action-menu/ActionMenu.js +197 -0
  164. package/esm/overlays/action-menu/ActionMenu.js.map +1 -0
  165. package/esm/overlays/action-menu/index.d.ts +1 -0
  166. package/esm/overlays/action-menu/index.js +3 -0
  167. package/esm/overlays/action-menu/index.js.map +1 -0
  168. package/esm/overlays/floating/Floating.js +9 -10
  169. package/esm/overlays/floating/Floating.js.map +1 -1
  170. package/esm/overlays/floating/Floating.utils.d.ts +3 -5
  171. package/esm/overlays/floating/Floating.utils.js +0 -2
  172. package/esm/overlays/floating/Floating.utils.js.map +1 -1
  173. package/esm/overlays/floating-menu/Menu.d.ts +15 -21
  174. package/esm/overlays/floating-menu/Menu.js +119 -230
  175. package/esm/overlays/floating-menu/Menu.js.map +1 -1
  176. package/esm/overlays/floating-menu/parts/RovingFocus.d.ts +1 -1
  177. package/esm/overlays/floating-menu/parts/RovingFocus.js +4 -4
  178. package/esm/overlays/floating-menu/parts/RovingFocus.js.map +1 -1
  179. package/esm/pagination/Pagination.d.ts +1 -6
  180. package/esm/pagination/Pagination.js.map +1 -1
  181. package/esm/provider/i18n/LanguageProvider.d.ts +3 -3
  182. package/esm/stepper/context.d.ts +1 -1
  183. package/esm/table/Body.d.ts +2 -4
  184. package/esm/table/Body.js.map +1 -1
  185. package/esm/table/ColumnHeader.d.ts +1 -2
  186. package/esm/table/ColumnHeader.js.map +1 -1
  187. package/esm/table/ExpandableRow.d.ts +1 -2
  188. package/esm/table/ExpandableRow.js.map +1 -1
  189. package/esm/table/Header.d.ts +2 -4
  190. package/esm/table/Header.js.map +1 -1
  191. package/esm/table/HeaderCell.d.ts +1 -2
  192. package/esm/table/HeaderCell.js.map +1 -1
  193. package/esm/table/Row.d.ts +1 -2
  194. package/esm/table/Row.js.map +1 -1
  195. package/esm/tabs/Tabs.context.d.ts +1 -1
  196. package/esm/tabs/parts/tablist/useScrollButtons.js +1 -1
  197. package/esm/tabs/parts/tablist/useScrollButtons.js.map +1 -1
  198. package/esm/tabs/parts/tablist/useTabList.js +4 -4
  199. package/esm/tabs/parts/tablist/useTabList.js.map +1 -1
  200. package/esm/timeline/TimelineRow.js +9 -10
  201. package/esm/timeline/TimelineRow.js.map +1 -1
  202. package/esm/toggle-group/ToggleGroup.context.d.ts +1 -1
  203. package/esm/toggle-group/parts/useToggleItem.js +4 -4
  204. package/esm/toggle-group/parts/useToggleItem.js.map +1 -1
  205. package/esm/util/TextareaAutoSize.js +2 -2
  206. package/esm/util/TextareaAutoSize.js.map +1 -1
  207. package/esm/util/hooks/descendants/descendant.js +1 -1
  208. package/esm/util/hooks/descendants/descendant.js.map +1 -1
  209. package/esm/util/hooks/descendants/useDescendant.js +1 -1
  210. package/esm/util/hooks/descendants/useDescendant.js.map +1 -1
  211. package/esm/util/i18n/get.d.ts +2 -2
  212. package/esm/util/i18n/get.js.map +1 -1
  213. package/esm/util/i18n/i18n.context.d.ts +2 -3
  214. package/esm/util/i18n/i18n.context.js.map +1 -1
  215. package/esm/util/i18n/i18n.types.d.ts +5 -9
  216. package/esm/util/i18n/locales/en.d.ts +39 -0
  217. package/esm/util/i18n/locales/en.js +39 -0
  218. package/esm/util/i18n/locales/en.js.map +1 -0
  219. package/esm/util/i18n/locales/nb.d.ts +14 -0
  220. package/esm/util/i18n/locales/nb.js +14 -0
  221. package/esm/util/i18n/locales/nb.js.map +1 -1
  222. package/esm/util/i18n/locales/nn.d.ts +39 -0
  223. package/esm/util/i18n/locales/nn.js +39 -0
  224. package/esm/util/i18n/locales/nn.js.map +1 -0
  225. package/esm/util/requireReactElement.d.ts +2 -0
  226. package/esm/util/requireReactElement.js +15 -0
  227. package/esm/util/requireReactElement.js.map +1 -0
  228. package/esm/util/virtualfocus/Context.d.ts +1 -1
  229. package/esm/util/virtualfocus/parts/VirtualFocusContent.d.ts +1 -2
  230. package/esm/util/virtualfocus/parts/VirtualFocusContent.js.map +1 -1
  231. package/package.json +15 -7
  232. package/src/accordion/AccordionHeader.tsx +0 -1
  233. package/src/alert/Alert.tsx +11 -20
  234. package/src/chips/Removable.tsx +13 -9
  235. package/src/date/datepicker/DatePicker.tsx +2 -2
  236. package/src/date/monthpicker/MonthPicker.tsx +2 -2
  237. package/src/dropdown/Menu/index.tsx +1 -1
  238. package/src/form/checkbox/Checkbox.test.tsx +2 -3
  239. package/src/form/checkbox/useCheckbox.ts +2 -2
  240. package/src/form/combobox/ComboboxProvider.tsx +9 -1
  241. package/src/form/combobox/FilteredOptions/filteredOptionsContext.tsx +1 -1
  242. package/src/form/combobox/FilteredOptions/useVirtualFocus.ts +42 -11
  243. package/src/form/combobox/Input/Input.tsx +19 -10
  244. package/src/form/combobox/__tests__/combobox.test.tsx +36 -0
  245. package/src/form/confirmation-panel/ConfirmationPanel.test.tsx +1 -2
  246. package/src/form/radio/Radio.test.tsx +4 -5
  247. package/src/form/radio/useRadio.ts +2 -2
  248. package/src/form/search/Search.tsx +1 -1
  249. package/src/form/switch/Switch.tsx +1 -1
  250. package/src/index.ts +1 -0
  251. package/src/layout/base/BasePrimitive.tsx +3 -0
  252. package/src/layout/box/Box.tsx +35 -36
  253. package/src/layout/grid/HGrid.tsx +26 -27
  254. package/src/layout/stack/Stack.tsx +53 -54
  255. package/src/modal/ModalHeader.tsx +6 -0
  256. package/src/modal/dialog-polyfill.ts +2 -2
  257. package/src/overlays/action-menu/ActionMenu.tsx +971 -0
  258. package/src/overlays/action-menu/index.ts +29 -0
  259. package/src/overlays/floating/Floating.tsx +6 -12
  260. package/src/overlays/floating/Floating.utils.ts +2 -5
  261. package/src/overlays/floating-menu/Menu.tsx +183 -332
  262. package/src/overlays/floating-menu/parts/RovingFocus.tsx +7 -7
  263. package/src/pagination/Pagination.tsx +4 -1
  264. package/src/pagination/steps.test.ts +15 -16
  265. package/src/provider/i18n/LanguageProvider.tsx +3 -3
  266. package/src/table/Body.tsx +4 -6
  267. package/src/table/ColumnHeader.tsx +3 -4
  268. package/src/table/ExpandableRow.tsx +3 -4
  269. package/src/table/Header.tsx +4 -6
  270. package/src/table/HeaderCell.tsx +3 -4
  271. package/src/table/Row.tsx +3 -4
  272. package/src/tabs/parts/tablist/useScrollButtons.ts +1 -1
  273. package/src/tabs/parts/tablist/useTabList.ts +4 -4
  274. package/src/timeline/TimelineRow.tsx +20 -21
  275. package/src/toggle-group/parts/useToggleItem.ts +4 -4
  276. package/src/util/TextareaAutoSize.tsx +2 -2
  277. package/src/util/hooks/descendants/descendant.ts +1 -1
  278. package/src/util/hooks/descendants/useDescendant.tsx +1 -1
  279. package/src/util/i18n/get.ts +3 -3
  280. package/src/util/i18n/i18n.context.ts +2 -3
  281. package/src/util/i18n/i18n.types.ts +7 -11
  282. package/src/util/i18n/locales/en.ts +40 -0
  283. package/src/util/i18n/locales/nb.ts +23 -1
  284. package/src/util/i18n/locales/nn.ts +40 -0
  285. package/src/util/i18n/locales.test.tsx +23 -0
  286. package/src/util/requireReactElement.ts +25 -0
  287. package/src/util/virtualfocus/parts/VirtualFocusContent.tsx +4 -2
  288. package/cjs/util/i18n/merge.d.ts +0 -2
  289. package/cjs/util/i18n/merge.js +0 -28
  290. package/cjs/util/i18n/merge.js.map +0 -1
  291. package/esm/util/i18n/merge.d.ts +0 -2
  292. package/esm/util/i18n/merge.js +0 -25
  293. package/esm/util/i18n/merge.js.map +0 -1
  294. package/src/util/i18n/merge.ts +0 -35
@@ -0,0 +1,29 @@
1
+ "use client";
2
+ export {
3
+ ActionMenu,
4
+ ActionMenuCheckboxItem,
5
+ ActionMenuContent,
6
+ ActionMenuGroup,
7
+ ActionMenuItem,
8
+ ActionMenuLabel,
9
+ ActionMenuRadioGroup,
10
+ ActionMenuRadioItem,
11
+ ActionMenuDivider,
12
+ ActionMenuSub,
13
+ ActionMenuSubContent,
14
+ ActionMenuSubTrigger,
15
+ ActionMenuTrigger,
16
+ type ActionMenuItemProps,
17
+ type ActionMenuCheckboxItemProps,
18
+ type ActionMenuContentProps,
19
+ type ActionMenuGroupProps,
20
+ type ActionMenuLabelProps,
21
+ type ActionMenuProps,
22
+ type ActionMenuRadioGroupProps,
23
+ type ActionMenuRadioItemProps,
24
+ type ActionMenuDividerProps,
25
+ type ActionMenuSubContentProps,
26
+ type ActionMenuSubProps,
27
+ type ActionMenuSubTriggerProps,
28
+ type ActionMenuTriggerProps,
29
+ } from "./ActionMenu";
@@ -1,4 +1,5 @@
1
1
  import {
2
+ FlipOptions,
2
3
  Placement,
3
4
  autoUpdate,
4
5
  flip,
@@ -217,9 +218,6 @@ const FloatingContent = forwardRef<HTMLDivElement, FloatingContentProps>(
217
218
  ) => {
218
219
  const context = useFloatingContext();
219
220
 
220
- const [content, setContent] = useState<HTMLDivElement | null>(null);
221
- const mergeRefs = useMergeRefs(forwardedRef, setContent);
222
-
223
221
  const arrowDefaults = {
224
222
  padding: 5,
225
223
  width: 0,
@@ -251,11 +249,13 @@ const FloatingContent = forwardRef<HTMLDivElement, FloatingContentProps>(
251
249
  return value !== null;
252
250
  }
253
251
 
254
- const detectOverflowOptions = {
252
+ const detectOverflowOptions: FlipOptions = {
255
253
  padding: collisionPadding,
256
254
  boundary: boundary.filter(isNotNull),
257
255
  // with `strategy: 'fixed'`, this is the only way to get it to respect boundaries
258
256
  altBoundary: hasExplicitBoundaries,
257
+ /* https://floating-ui.com/docs/flip#fallbackaxissidedirection */
258
+ fallbackAxisSideDirection: "end",
259
259
  };
260
260
 
261
261
  const { refs, floatingStyles, placement, isPositioned, middlewareData } =
@@ -282,7 +282,6 @@ const FloatingContent = forwardRef<HTMLDivElement, FloatingContentProps>(
282
282
  mainAxis: true,
283
283
  crossAxis: false,
284
284
  limiter: limitShift(),
285
- ...detectOverflowOptions,
286
285
  }),
287
286
  avoidCollisions && flip({ ...detectOverflowOptions }),
288
287
  size({
@@ -332,11 +331,6 @@ const FloatingContent = forwardRef<HTMLDivElement, FloatingContentProps>(
332
331
  const arrowY = middlewareData.arrow?.y;
333
332
  const cannotCenterArrow = middlewareData.arrow?.centerOffset !== 0;
334
333
 
335
- const [contentZIndex, setContentZIndex] = useState<string>();
336
- useClientLayoutEffect(() => {
337
- if (content) setContentZIndex(window.getComputedStyle(content).zIndex);
338
- }, [content]);
339
-
340
334
  return (
341
335
  <div
342
336
  ref={refs.setFloating}
@@ -347,7 +341,7 @@ const FloatingContent = forwardRef<HTMLDivElement, FloatingContentProps>(
347
341
  ? floatingStyles.transform
348
342
  : "translate(0, -200%)", // keep off the page when measuring
349
343
  minWidth: "max-content",
350
- zIndex: contentZIndex,
344
+ zIndex: "9999999",
351
345
  ["--ac-floating-transform-origin" as any]: [
352
346
  middlewareData.transformOrigin?.x,
353
347
  middlewareData.transformOrigin?.y,
@@ -365,7 +359,7 @@ const FloatingContent = forwardRef<HTMLDivElement, FloatingContentProps>(
365
359
  hideArrow={cannotCenterArrow}
366
360
  >
367
361
  <div
368
- ref={mergeRefs}
362
+ ref={forwardedRef}
369
363
  data-side={placedSide}
370
364
  data-align={placedAlign}
371
365
  {...contentProps}
@@ -1,10 +1,7 @@
1
1
  import type { Middleware, Placement } from "@floating-ui/react-dom";
2
2
 
3
- const SIDE_OPTIONS = ["top", "right", "bottom", "left"] as const;
4
- const ALIGN_OPTIONS = ["start", "center", "end"] as const;
5
-
6
- type Side = (typeof SIDE_OPTIONS)[number];
7
- type Align = (typeof ALIGN_OPTIONS)[number];
3
+ type Side = "top" | "right" | "bottom" | "left";
4
+ type Align = "start" | "center" | "end";
8
5
  type Measurable = { getBoundingClientRect(): DOMRect };
9
6
 
10
7
  /**