@digdir/designsystemet-react 1.0.0-next.33 → 1.0.0-next.34

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 (427) hide show
  1. package/dist/cjs/components/Accordion/Accordion.js +4 -4
  2. package/dist/cjs/components/Accordion/AccordionContent.js +2 -2
  3. package/dist/cjs/components/Accordion/AccordionHeading.js +4 -4
  4. package/dist/cjs/components/Accordion/AccordionItem.js +13 -13
  5. package/dist/cjs/components/Alert/Alert.js +4 -4
  6. package/dist/cjs/components/Avatar/Avatar.js +6 -6
  7. package/dist/cjs/components/Badge/Badge.js +4 -10
  8. package/dist/cjs/components/Breadcrumbs/Breadcrumbs.js +11 -0
  9. package/dist/cjs/components/Breadcrumbs/BreadcrumbsItem.js +4 -4
  10. package/dist/cjs/components/Breadcrumbs/BreadcrumbsLink.js +4 -4
  11. package/dist/cjs/components/Breadcrumbs/BreadcrumbsList.js +8 -10
  12. package/dist/cjs/components/Breadcrumbs/index.js +11 -20
  13. package/dist/cjs/components/Button/Button.js +7 -7
  14. package/dist/cjs/components/Card/Card.js +6 -6
  15. package/dist/cjs/components/Card/CardContent.js +6 -6
  16. package/dist/cjs/components/Card/CardFooter.js +6 -6
  17. package/dist/cjs/components/Card/CardHeader.js +6 -6
  18. package/dist/cjs/components/Card/CardMedia.js +6 -6
  19. package/dist/cjs/components/Chip/Group/Group.js +5 -5
  20. package/dist/cjs/components/Chip/Removable/Removable.js +5 -5
  21. package/dist/cjs/components/Chip/Toggle/Toggle.js +5 -5
  22. package/dist/cjs/components/Divider/Divider.js +4 -4
  23. package/dist/cjs/components/Dropdown/Dropdown.js +23 -0
  24. package/dist/cjs/components/Dropdown/DropdownContext.js +26 -0
  25. package/dist/cjs/components/Dropdown/DropdownHeading.js +15 -0
  26. package/dist/cjs/components/Dropdown/DropdownItem.js +14 -0
  27. package/dist/cjs/components/Dropdown/DropdownList.js +12 -0
  28. package/dist/cjs/components/Dropdown/DropdownTrigger.js +13 -0
  29. package/dist/cjs/components/Dropdown/index.js +41 -0
  30. package/dist/cjs/components/ErrorSummary/ErrorSummary.js +20 -0
  31. package/dist/cjs/components/ErrorSummary/ErrorSummaryHeading.js +6 -7
  32. package/dist/cjs/components/ErrorSummary/ErrorSummaryItem.js +2 -2
  33. package/dist/cjs/components/ErrorSummary/ErrorSummaryList.js +4 -4
  34. package/dist/cjs/components/ErrorSummary/index.js +8 -10
  35. package/dist/cjs/components/HelpText/HelpText.js +4 -10
  36. package/dist/cjs/components/Link/Link.js +6 -6
  37. package/dist/cjs/components/List/ListItem.js +4 -4
  38. package/dist/cjs/components/List/Lists.js +7 -7
  39. package/dist/cjs/components/Modal/ModaContent.js +6 -6
  40. package/dist/cjs/components/Modal/ModalDialog.js +14 -14
  41. package/dist/cjs/components/Modal/ModalFooter.js +6 -6
  42. package/dist/cjs/components/Modal/ModalHeader.js +8 -9
  43. package/dist/cjs/components/Modal/ModalRoot.js +6 -6
  44. package/dist/cjs/components/Modal/ModalTrigger.js +6 -6
  45. package/dist/cjs/components/Modal/useModalState.js +3 -3
  46. package/dist/cjs/components/Modal/useScrollLock.js +2 -2
  47. package/dist/cjs/components/Pagination/Pagination.js +2 -2
  48. package/dist/cjs/components/Pagination/PaginationButton.js +4 -4
  49. package/dist/cjs/components/Pagination/PaginationEllipsis.js +5 -5
  50. package/dist/cjs/components/Pagination/PaginationItem.js +7 -7
  51. package/dist/cjs/components/Pagination/PaginationList.js +7 -7
  52. package/dist/cjs/components/Pagination/PaginationNextPrev.js +3 -3
  53. package/dist/cjs/components/Pagination/PaginationRoot.js +5 -5
  54. package/dist/cjs/components/Pagination/usePagination.js +3 -3
  55. package/dist/cjs/components/Popover/Popover.js +20 -18
  56. package/dist/cjs/components/Popover/PopoverContext.js +4 -4
  57. package/dist/cjs/components/Popover/PopoverTrigger.js +6 -6
  58. package/dist/cjs/components/SkipLink/SkipLink.js +2 -2
  59. package/dist/cjs/components/Table/Table.js +4 -4
  60. package/dist/cjs/components/Table/TableBody.js +2 -2
  61. package/dist/cjs/components/Table/TableCell.js +2 -2
  62. package/dist/cjs/components/Table/TableHead.js +2 -2
  63. package/dist/cjs/components/Table/TableHeaderCell.js +2 -2
  64. package/dist/cjs/components/Table/TableRow.js +2 -2
  65. package/dist/cjs/components/Tabs/Tabs.js +45 -0
  66. package/dist/cjs/components/Tabs/TabsList.js +25 -0
  67. package/dist/cjs/components/Tabs/TabsPanel.js +23 -0
  68. package/dist/cjs/components/Tabs/TabsTab.js +22 -0
  69. package/dist/cjs/components/Tabs/index.js +18 -20
  70. package/dist/cjs/components/Tag/Tag.js +4 -4
  71. package/dist/cjs/components/ToggleGroup/ToggleGroup.js +41 -0
  72. package/dist/cjs/components/ToggleGroup/{ToggleGroupItem/ToggleGroupItem.js → ToggleGroupItem.js} +5 -6
  73. package/dist/cjs/components/ToggleGroup/index.js +5 -8
  74. package/dist/cjs/components/ToggleGroup/{ToggleGroupItem/useToggleGroupitem.js → useToggleGroupitem.js} +5 -5
  75. package/dist/cjs/components/Tooltip/Tooltip.js +26 -28
  76. package/dist/cjs/components/Typography/Heading/Heading.js +6 -6
  77. package/dist/cjs/components/Typography/Ingress/Ingress.js +6 -6
  78. package/dist/cjs/components/Typography/Label/Label.js +6 -6
  79. package/dist/cjs/components/Typography/Paragraph/Paragraph.js +6 -6
  80. package/dist/cjs/components/Typography/ValidationMessage/ValidationMessage.js +15 -0
  81. package/dist/cjs/components/form/CharacterCounter.js +2 -2
  82. package/dist/cjs/components/form/Checkbox/Checkbox.js +6 -6
  83. package/dist/cjs/components/form/Checkbox/CheckboxGroup.js +6 -6
  84. package/dist/cjs/components/form/Checkbox/useCheckbox.js +2 -2
  85. package/dist/cjs/components/form/Combobox/Combobox.js +17 -17
  86. package/dist/cjs/components/form/Combobox/ComboboxContext.js +2 -2
  87. package/dist/cjs/components/form/Combobox/ComboboxIdContext.js +6 -6
  88. package/dist/cjs/components/form/Combobox/Custom.js +12 -12
  89. package/dist/cjs/components/form/Combobox/Empty.js +5 -5
  90. package/dist/cjs/components/form/Combobox/Option/Description.js +4 -4
  91. package/dist/cjs/components/form/Combobox/Option/Option.js +11 -7
  92. package/dist/cjs/components/form/Combobox/Option/SelectedIcon.js +2 -2
  93. package/dist/cjs/components/form/Combobox/Option/useComboboxOption.js +8 -8
  94. package/dist/cjs/components/form/Combobox/internal/ComboboxChips.js +2 -2
  95. package/dist/cjs/components/form/Combobox/internal/ComboboxClearButton.js +5 -5
  96. package/dist/cjs/components/form/Combobox/internal/ComboboxError.js +2 -2
  97. package/dist/cjs/components/form/Combobox/internal/ComboboxInput.js +7 -7
  98. package/dist/cjs/components/form/Combobox/internal/ComboboxLabel.js +2 -2
  99. package/dist/cjs/components/form/Combobox/useCombobox.js +11 -10
  100. package/dist/cjs/components/form/Combobox/useFloatingCombobox.js +14 -16
  101. package/dist/cjs/components/form/Combobox/utilities.js +2 -7
  102. package/dist/cjs/components/form/Fieldset/Fieldset.js +10 -12
  103. package/dist/cjs/components/form/Fieldset/FieldsetContext.js +2 -2
  104. package/dist/cjs/components/form/Radio/Radio.js +4 -4
  105. package/dist/cjs/components/form/Radio/RadioGroup.js +6 -6
  106. package/dist/cjs/components/form/Radio/useRadio.js +2 -2
  107. package/dist/cjs/components/form/Search/Search.js +11 -11
  108. package/dist/cjs/components/form/Search/useSearch.js +2 -2
  109. package/dist/cjs/components/form/Select/Select.js +5 -5
  110. package/dist/cjs/components/form/Select/SelectOptgroup.js +4 -4
  111. package/dist/cjs/components/form/Select/SelectOption.js +4 -4
  112. package/dist/cjs/components/form/Select/useSelect.js +2 -2
  113. package/dist/cjs/components/form/Switch/Switch.js +4 -4
  114. package/dist/cjs/components/form/Switch/useSwitch.js +2 -2
  115. package/dist/cjs/components/form/Textarea/Textarea.js +8 -8
  116. package/dist/cjs/components/form/Textarea/useTextarea.js +2 -2
  117. package/dist/cjs/components/form/Textfield/Textfield.js +9 -9
  118. package/dist/cjs/components/form/Textfield/useTextfield.js +2 -2
  119. package/dist/cjs/components/form/useFormField.js +5 -5
  120. package/dist/cjs/components/loaders/Skeleton/Skeleton.js +18 -0
  121. package/dist/cjs/components/loaders/Spinner/Spinner.js +2 -2
  122. package/dist/cjs/index.js +53 -69
  123. package/dist/cjs/utilities/RovingFocus/RovingFocusItem.js +6 -6
  124. package/dist/cjs/utilities/RovingFocus/RovingFocusRoot.js +12 -12
  125. package/dist/cjs/utilities/RovingFocus/useRovingFocus.js +2 -2
  126. package/dist/cjs/utilities/hooks/useDebounceCallback/useDebounceCallback.js +3 -3
  127. package/dist/cjs/utilities/hooks/useIsomorphicLayoutEffect/useIsomorphicLayoutEffect.js +2 -2
  128. package/dist/cjs/utilities/hooks/useSynchronizedAnimation/useSynchronizedAnimation.js +2 -2
  129. package/dist/esm/components/Accordion/Accordion.js +2 -2
  130. package/dist/esm/components/Accordion/AccordionHeading.js +2 -2
  131. package/dist/esm/components/Accordion/AccordionItem.js +4 -4
  132. package/dist/esm/components/Alert/Alert.js +2 -2
  133. package/dist/esm/components/Avatar/Avatar.js +3 -3
  134. package/dist/esm/components/Badge/Badge.js +4 -10
  135. package/dist/esm/components/Breadcrumbs/Breadcrumbs.js +9 -0
  136. package/dist/esm/components/Breadcrumbs/BreadcrumbsItem.js +3 -3
  137. package/dist/esm/components/Breadcrumbs/BreadcrumbsLink.js +3 -3
  138. package/dist/esm/components/Breadcrumbs/BreadcrumbsList.js +4 -6
  139. package/dist/esm/components/Breadcrumbs/index.js +12 -19
  140. package/dist/esm/components/Button/Button.js +4 -4
  141. package/dist/esm/components/Card/Card.js +3 -3
  142. package/dist/esm/components/Card/CardContent.js +3 -3
  143. package/dist/esm/components/Card/CardFooter.js +3 -3
  144. package/dist/esm/components/Card/CardHeader.js +3 -3
  145. package/dist/esm/components/Card/CardMedia.js +3 -3
  146. package/dist/esm/components/Chip/Group/Group.js +2 -2
  147. package/dist/esm/components/Chip/Removable/Removable.js +2 -2
  148. package/dist/esm/components/Chip/Toggle/Toggle.js +2 -2
  149. package/dist/esm/components/Divider/Divider.js +2 -2
  150. package/dist/esm/components/Dropdown/Dropdown.js +20 -0
  151. package/dist/esm/components/Dropdown/DropdownContext.js +24 -0
  152. package/dist/esm/components/Dropdown/DropdownHeading.js +13 -0
  153. package/dist/esm/components/Dropdown/DropdownItem.js +12 -0
  154. package/dist/esm/components/Dropdown/DropdownList.js +10 -0
  155. package/dist/esm/components/Dropdown/DropdownTrigger.js +11 -0
  156. package/dist/esm/components/Dropdown/index.js +34 -0
  157. package/dist/esm/components/ErrorSummary/ErrorSummary.js +17 -0
  158. package/dist/esm/components/ErrorSummary/ErrorSummaryHeading.js +2 -3
  159. package/dist/esm/components/ErrorSummary/ErrorSummaryList.js +1 -1
  160. package/dist/esm/components/ErrorSummary/index.js +9 -10
  161. package/dist/esm/components/HelpText/HelpText.js +5 -11
  162. package/dist/esm/components/Link/Link.js +3 -3
  163. package/dist/esm/components/List/ListItem.js +1 -1
  164. package/dist/esm/components/List/Lists.js +3 -3
  165. package/dist/esm/components/Modal/ModaContent.js +3 -3
  166. package/dist/esm/components/Modal/ModalDialog.js +4 -4
  167. package/dist/esm/components/Modal/ModalFooter.js +3 -3
  168. package/dist/esm/components/Modal/ModalHeader.js +4 -5
  169. package/dist/esm/components/Modal/ModalTrigger.js +2 -2
  170. package/dist/esm/components/Pagination/PaginationButton.js +1 -1
  171. package/dist/esm/components/Pagination/PaginationEllipsis.js +2 -2
  172. package/dist/esm/components/Pagination/PaginationItem.js +3 -3
  173. package/dist/esm/components/Pagination/PaginationList.js +3 -3
  174. package/dist/esm/components/Pagination/PaginationRoot.js +1 -1
  175. package/dist/esm/components/Popover/Popover.js +7 -5
  176. package/dist/esm/components/Popover/PopoverTrigger.js +2 -2
  177. package/dist/esm/components/SkipLink/SkipLink.js +2 -2
  178. package/dist/esm/components/Table/Table.js +2 -2
  179. package/dist/esm/components/Tabs/{TabsRoot.js → Tabs.js} +11 -12
  180. package/dist/esm/components/Tabs/{TabList.js → TabsList.js} +6 -7
  181. package/dist/esm/components/Tabs/TabsPanel.js +21 -0
  182. package/dist/esm/components/Tabs/TabsTab.js +20 -0
  183. package/dist/esm/components/Tabs/index.js +16 -17
  184. package/dist/esm/components/Tag/Tag.js +2 -2
  185. package/dist/esm/components/ToggleGroup/ToggleGroup.js +38 -0
  186. package/dist/esm/components/ToggleGroup/ToggleGroupItem.js +18 -0
  187. package/dist/esm/components/ToggleGroup/index.js +6 -8
  188. package/dist/esm/components/ToggleGroup/{ToggleGroupItem/useToggleGroupitem.js → useToggleGroupitem.js} +1 -1
  189. package/dist/esm/components/Tooltip/Tooltip.js +3 -5
  190. package/dist/esm/components/Typography/Heading/Heading.js +3 -3
  191. package/dist/esm/components/Typography/Ingress/Ingress.js +3 -3
  192. package/dist/esm/components/Typography/Label/Label.js +3 -3
  193. package/dist/esm/components/Typography/Paragraph/Paragraph.js +3 -3
  194. package/dist/esm/components/Typography/ValidationMessage/ValidationMessage.js +13 -0
  195. package/dist/esm/components/form/CharacterCounter.js +2 -2
  196. package/dist/esm/components/form/Checkbox/Checkbox.js +3 -3
  197. package/dist/esm/components/form/Checkbox/CheckboxGroup.js +2 -2
  198. package/dist/esm/components/form/Combobox/Combobox.js +5 -5
  199. package/dist/esm/components/form/Combobox/Custom.js +4 -4
  200. package/dist/esm/components/form/Combobox/Empty.js +2 -2
  201. package/dist/esm/components/form/Combobox/Option/Description.js +2 -2
  202. package/dist/esm/components/form/Combobox/Option/Option.js +8 -5
  203. package/dist/esm/components/form/Combobox/Option/SelectedIcon.js +2 -2
  204. package/dist/esm/components/form/Combobox/Option/useComboboxOption.js +2 -2
  205. package/dist/esm/components/form/Combobox/internal/ComboboxClearButton.js +2 -2
  206. package/dist/esm/components/form/Combobox/internal/ComboboxError.js +2 -2
  207. package/dist/esm/components/form/Combobox/internal/ComboboxInput.js +3 -3
  208. package/dist/esm/components/form/Combobox/internal/ComboboxLabel.js +2 -2
  209. package/dist/esm/components/form/Combobox/useCombobox.js +2 -1
  210. package/dist/esm/components/form/Combobox/useFloatingCombobox.js +1 -3
  211. package/dist/esm/components/form/Combobox/utilities.js +1 -5
  212. package/dist/esm/components/form/Fieldset/Fieldset.js +8 -10
  213. package/dist/esm/components/form/Radio/Radio.js +2 -2
  214. package/dist/esm/components/form/Radio/RadioGroup.js +2 -2
  215. package/dist/esm/components/form/Search/Search.js +5 -5
  216. package/dist/esm/components/form/Select/Select.js +3 -3
  217. package/dist/esm/components/form/Select/SelectOptgroup.js +1 -1
  218. package/dist/esm/components/form/Select/SelectOption.js +1 -1
  219. package/dist/esm/components/form/Switch/Switch.js +2 -2
  220. package/dist/esm/components/form/Textarea/Textarea.js +5 -5
  221. package/dist/esm/components/form/Textfield/Textfield.js +5 -5
  222. package/dist/esm/components/form/useFormField.js +2 -2
  223. package/dist/esm/components/loaders/Skeleton/Skeleton.js +16 -0
  224. package/dist/esm/components/loaders/Spinner/Spinner.js +2 -2
  225. package/dist/esm/index.js +12 -20
  226. package/dist/esm/utilities/RovingFocus/RovingFocusItem.js +2 -2
  227. package/dist/esm/utilities/RovingFocus/RovingFocusRoot.js +2 -2
  228. package/dist/types/components/Badge/Badge.d.ts.map +1 -1
  229. package/dist/types/components/Breadcrumbs/{BreadcrumbsNav.d.ts → Breadcrumbs.d.ts} +13 -3
  230. package/dist/types/components/Breadcrumbs/Breadcrumbs.d.ts.map +1 -0
  231. package/dist/types/components/Breadcrumbs/BreadcrumbsItem.d.ts.map +1 -1
  232. package/dist/types/components/Breadcrumbs/BreadcrumbsLink.d.ts.map +1 -1
  233. package/dist/types/components/Breadcrumbs/BreadcrumbsList.d.ts.map +1 -1
  234. package/dist/types/components/Breadcrumbs/index.d.ts +17 -25
  235. package/dist/types/components/Breadcrumbs/index.d.ts.map +1 -1
  236. package/dist/types/components/Button/Button.d.ts +12 -2
  237. package/dist/types/components/Button/Button.d.ts.map +1 -1
  238. package/dist/types/components/Dropdown/Dropdown.d.ts +23 -0
  239. package/dist/types/components/Dropdown/Dropdown.d.ts.map +1 -0
  240. package/dist/types/components/Dropdown/DropdownContext.d.ts +22 -0
  241. package/dist/types/components/Dropdown/DropdownContext.d.ts.map +1 -0
  242. package/dist/types/components/Dropdown/DropdownHeading.d.ts +4 -0
  243. package/dist/types/components/Dropdown/DropdownHeading.d.ts.map +1 -0
  244. package/dist/types/components/Dropdown/DropdownItem.d.ts +4 -0
  245. package/dist/types/components/Dropdown/DropdownItem.d.ts.map +1 -0
  246. package/dist/types/components/Dropdown/DropdownList.d.ts +4 -0
  247. package/dist/types/components/Dropdown/DropdownList.d.ts.map +1 -0
  248. package/dist/types/components/Dropdown/DropdownTrigger.d.ts +17 -0
  249. package/dist/types/components/Dropdown/DropdownTrigger.d.ts.map +1 -0
  250. package/dist/types/components/Dropdown/index.d.ts +49 -0
  251. package/dist/types/components/Dropdown/index.d.ts.map +1 -0
  252. package/dist/types/components/ErrorSummary/{ErrorSummaryRoot.d.ts → ErrorSummary.d.ts} +2 -2
  253. package/dist/types/components/ErrorSummary/ErrorSummary.d.ts.map +1 -0
  254. package/dist/types/components/ErrorSummary/ErrorSummaryHeading.d.ts.map +1 -1
  255. package/dist/types/components/ErrorSummary/index.d.ts +19 -12
  256. package/dist/types/components/ErrorSummary/index.d.ts.map +1 -1
  257. package/dist/types/components/HelpText/HelpText.d.ts +6 -6
  258. package/dist/types/components/HelpText/HelpText.d.ts.map +1 -1
  259. package/dist/types/components/Modal/ModalHeader.d.ts.map +1 -1
  260. package/dist/types/components/Modal/ModalTrigger.d.ts +3 -2
  261. package/dist/types/components/Modal/ModalTrigger.d.ts.map +1 -1
  262. package/dist/types/components/Popover/Popover.d.ts +2 -0
  263. package/dist/types/components/Popover/Popover.d.ts.map +1 -1
  264. package/dist/types/components/Popover/PopoverTrigger.d.ts +3 -2
  265. package/dist/types/components/Popover/PopoverTrigger.d.ts.map +1 -1
  266. package/dist/types/components/Tabs/{TabsRoot.d.ts → Tabs.d.ts} +9 -9
  267. package/dist/types/components/Tabs/Tabs.d.ts.map +1 -0
  268. package/dist/types/components/Tabs/{TabList.d.ts → TabsList.d.ts} +3 -2
  269. package/dist/types/components/Tabs/TabsList.d.ts.map +1 -0
  270. package/dist/types/components/Tabs/{TabContent.d.ts → TabsPanel.d.ts} +6 -6
  271. package/dist/types/components/Tabs/TabsPanel.d.ts.map +1 -0
  272. package/dist/types/components/Tabs/{Tab.d.ts → TabsTab.d.ts} +3 -3
  273. package/dist/types/components/Tabs/TabsTab.d.ts.map +1 -0
  274. package/dist/types/components/Tabs/index.d.ts +27 -20
  275. package/dist/types/components/Tabs/index.d.ts.map +1 -1
  276. package/dist/types/components/ToggleGroup/{ToggleGroupRoot.d.ts → ToggleGroup.d.ts} +4 -4
  277. package/dist/types/components/ToggleGroup/ToggleGroup.d.ts.map +1 -0
  278. package/dist/types/components/ToggleGroup/{ToggleGroupItem/ToggleGroupItem.d.ts → ToggleGroupItem.d.ts} +2 -2
  279. package/dist/types/components/ToggleGroup/ToggleGroupItem.d.ts.map +1 -0
  280. package/dist/types/components/ToggleGroup/index.d.ts +8 -9
  281. package/dist/types/components/ToggleGroup/index.d.ts.map +1 -1
  282. package/dist/types/components/ToggleGroup/{ToggleGroupItem/useToggleGroupitem.d.ts → useToggleGroupitem.d.ts} +2 -2
  283. package/dist/types/components/ToggleGroup/useToggleGroupitem.d.ts.map +1 -0
  284. package/dist/types/components/Typography/{ErrorMessage/ErrorMessage.d.ts → ValidationMessage/ValidationMessage.d.ts} +4 -4
  285. package/dist/types/components/Typography/ValidationMessage/ValidationMessage.d.ts.map +1 -0
  286. package/dist/types/components/Typography/ValidationMessage/index.d.ts +2 -0
  287. package/dist/types/components/Typography/ValidationMessage/index.d.ts.map +1 -0
  288. package/dist/types/components/Typography/index.d.ts +1 -1
  289. package/dist/types/components/Typography/index.d.ts.map +1 -1
  290. package/dist/types/components/form/Combobox/Option/Option.d.ts +2 -1
  291. package/dist/types/components/form/Combobox/Option/Option.d.ts.map +1 -1
  292. package/dist/types/components/form/Combobox/useCombobox.d.ts +1 -1
  293. package/dist/types/components/form/Combobox/useCombobox.d.ts.map +1 -1
  294. package/dist/types/components/form/Combobox/utilities.d.ts +0 -2
  295. package/dist/types/components/form/Combobox/utilities.d.ts.map +1 -1
  296. package/dist/types/components/form/Fieldset/Fieldset.d.ts +1 -1
  297. package/dist/types/components/form/Fieldset/Fieldset.d.ts.map +1 -1
  298. package/dist/types/components/form/Textarea/Textarea.d.ts.map +1 -1
  299. package/dist/types/components/form/Textfield/Textfield.d.ts.map +1 -1
  300. package/dist/types/components/index.d.ts +1 -1
  301. package/dist/types/components/index.d.ts.map +1 -1
  302. package/dist/types/components/loaders/Skeleton/Skeleton.d.ts +34 -0
  303. package/dist/types/components/loaders/Skeleton/Skeleton.d.ts.map +1 -0
  304. package/dist/types/components/loaders/Skeleton/index.d.ts +7 -19
  305. package/dist/types/components/loaders/Skeleton/index.d.ts.map +1 -1
  306. package/package.json +3 -3
  307. package/dist/cjs/components/Breadcrumbs/BreadcrumbsNav.js +0 -11
  308. package/dist/cjs/components/Breadcrumbs/BreadcrumbsRoot.js +0 -11
  309. package/dist/cjs/components/DropdownMenu/DropdownMenuContent.js +0 -55
  310. package/dist/cjs/components/DropdownMenu/DropdownMenuGroup.js +0 -16
  311. package/dist/cjs/components/DropdownMenu/DropdownMenuItem.js +0 -15
  312. package/dist/cjs/components/DropdownMenu/DropdownMenuRoot.js +0 -49
  313. package/dist/cjs/components/DropdownMenu/DropdownMenuTrigger.js +0 -22
  314. package/dist/cjs/components/DropdownMenu/index.js +0 -38
  315. package/dist/cjs/components/ErrorSummary/ErrorSummaryRoot.js +0 -21
  316. package/dist/cjs/components/HelpText/HelpTextIcon.js +0 -14
  317. package/dist/cjs/components/Tabs/Tab.js +0 -23
  318. package/dist/cjs/components/Tabs/TabContent.js +0 -24
  319. package/dist/cjs/components/Tabs/TabList.js +0 -26
  320. package/dist/cjs/components/Tabs/TabsRoot.js +0 -46
  321. package/dist/cjs/components/Tabs/useTab.js +0 -24
  322. package/dist/cjs/components/ToggleGroup/ToggleGroupRoot.js +0 -42
  323. package/dist/cjs/components/Typography/ErrorMessage/ErrorMessage.js +0 -16
  324. package/dist/cjs/components/form/Fieldset/useFieldset.js +0 -19
  325. package/dist/cjs/components/loaders/Skeleton/Circle/Circle.js +0 -15
  326. package/dist/cjs/components/loaders/Skeleton/Rectangle/Rectangle.js +0 -15
  327. package/dist/cjs/components/loaders/Skeleton/Text/Text.js +0 -15
  328. package/dist/cjs/components/loaders/Skeleton/index.js +0 -20
  329. package/dist/cjs/node_modules/@floating-ui/core/dist/floating-ui.core.js +0 -674
  330. package/dist/cjs/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +0 -661
  331. package/dist/cjs/node_modules/@floating-ui/dom/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +0 -164
  332. package/dist/cjs/node_modules/@floating-ui/dom/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +0 -22
  333. package/dist/cjs/node_modules/@floating-ui/react/dist/floating-ui.react.js +0 -3302
  334. package/dist/cjs/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +0 -165
  335. package/dist/cjs/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +0 -68
  336. package/dist/cjs/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +0 -11
  337. package/dist/cjs/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +0 -353
  338. package/dist/cjs/node_modules/@floating-ui/react-dom/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +0 -677
  339. package/dist/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +0 -159
  340. package/dist/cjs/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +0 -158
  341. package/dist/cjs/node_modules/@radix-ui/react-compose-refs/dist/index.js +0 -18
  342. package/dist/cjs/node_modules/@radix-ui/react-slot/dist/index.js +0 -104
  343. package/dist/cjs/node_modules/@tanstack/react-virtual/dist/esm/index.js +0 -70
  344. package/dist/cjs/node_modules/@tanstack/virtual-core/dist/esm/index.js +0 -676
  345. package/dist/cjs/node_modules/@tanstack/virtual-core/dist/esm/utils.js +0 -66
  346. package/dist/cjs/node_modules/@u-elements/u-details/dist/u-details.js +0 -117
  347. package/dist/cjs/node_modules/clsx/dist/lite.js +0 -9
  348. package/dist/cjs/node_modules/tabbable/dist/index.esm.js +0 -550
  349. package/dist/esm/components/Breadcrumbs/BreadcrumbsNav.js +0 -9
  350. package/dist/esm/components/Breadcrumbs/BreadcrumbsRoot.js +0 -9
  351. package/dist/esm/components/DropdownMenu/DropdownMenuContent.js +0 -53
  352. package/dist/esm/components/DropdownMenu/DropdownMenuGroup.js +0 -14
  353. package/dist/esm/components/DropdownMenu/DropdownMenuItem.js +0 -13
  354. package/dist/esm/components/DropdownMenu/DropdownMenuRoot.js +0 -46
  355. package/dist/esm/components/DropdownMenu/DropdownMenuTrigger.js +0 -20
  356. package/dist/esm/components/DropdownMenu/index.js +0 -31
  357. package/dist/esm/components/ErrorSummary/ErrorSummaryRoot.js +0 -18
  358. package/dist/esm/components/HelpText/HelpTextIcon.js +0 -12
  359. package/dist/esm/components/Tabs/Tab.js +0 -21
  360. package/dist/esm/components/Tabs/TabContent.js +0 -22
  361. package/dist/esm/components/Tabs/useTab.js +0 -22
  362. package/dist/esm/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.js +0 -19
  363. package/dist/esm/components/ToggleGroup/ToggleGroupRoot.js +0 -39
  364. package/dist/esm/components/Typography/ErrorMessage/ErrorMessage.js +0 -14
  365. package/dist/esm/components/form/Fieldset/useFieldset.js +0 -17
  366. package/dist/esm/components/loaders/Skeleton/Circle/Circle.js +0 -13
  367. package/dist/esm/components/loaders/Skeleton/Rectangle/Rectangle.js +0 -13
  368. package/dist/esm/components/loaders/Skeleton/Text/Text.js +0 -13
  369. package/dist/esm/components/loaders/Skeleton/index.js +0 -15
  370. package/dist/esm/node_modules/@floating-ui/core/dist/floating-ui.core.js +0 -665
  371. package/dist/esm/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +0 -653
  372. package/dist/esm/node_modules/@floating-ui/dom/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +0 -143
  373. package/dist/esm/node_modules/@floating-ui/dom/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +0 -16
  374. package/dist/esm/node_modules/@floating-ui/react/dist/floating-ui.react.js +0 -3258
  375. package/dist/esm/node_modules/@floating-ui/react/dist/floating-ui.react.utils.js +0 -144
  376. package/dist/esm/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +0 -57
  377. package/dist/esm/node_modules/@floating-ui/react/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +0 -9
  378. package/dist/esm/node_modules/@floating-ui/react-dom/dist/floating-ui.react-dom.js +0 -325
  379. package/dist/esm/node_modules/@floating-ui/react-dom/node_modules/@floating-ui/dom/dist/floating-ui.dom.js +0 -667
  380. package/dist/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.dom.js +0 -139
  381. package/dist/esm/node_modules/@floating-ui/utils/dist/floating-ui.utils.js +0 -136
  382. package/dist/esm/node_modules/@radix-ui/react-compose-refs/dist/index.js +0 -16
  383. package/dist/esm/node_modules/@radix-ui/react-slot/dist/index.js +0 -82
  384. package/dist/esm/node_modules/@tanstack/react-virtual/dist/esm/index.js +0 -43
  385. package/dist/esm/node_modules/@tanstack/virtual-core/dist/esm/index.js +0 -664
  386. package/dist/esm/node_modules/@tanstack/virtual-core/dist/esm/utils.js +0 -61
  387. package/dist/esm/node_modules/@u-elements/u-details/dist/u-details.js +0 -114
  388. package/dist/esm/node_modules/clsx/dist/lite.js +0 -4
  389. package/dist/esm/node_modules/tabbable/dist/index.esm.js +0 -546
  390. package/dist/types/components/Breadcrumbs/BreadcrumbsNav.d.ts.map +0 -1
  391. package/dist/types/components/Breadcrumbs/BreadcrumbsRoot.d.ts +0 -16
  392. package/dist/types/components/Breadcrumbs/BreadcrumbsRoot.d.ts.map +0 -1
  393. package/dist/types/components/DropdownMenu/DropdownMenuContent.d.ts +0 -8
  394. package/dist/types/components/DropdownMenu/DropdownMenuContent.d.ts.map +0 -1
  395. package/dist/types/components/DropdownMenu/DropdownMenuGroup.d.ts +0 -14
  396. package/dist/types/components/DropdownMenu/DropdownMenuGroup.d.ts.map +0 -1
  397. package/dist/types/components/DropdownMenu/DropdownMenuItem.d.ts +0 -4
  398. package/dist/types/components/DropdownMenu/DropdownMenuItem.d.ts.map +0 -1
  399. package/dist/types/components/DropdownMenu/DropdownMenuRoot.d.ts +0 -51
  400. package/dist/types/components/DropdownMenu/DropdownMenuRoot.d.ts.map +0 -1
  401. package/dist/types/components/DropdownMenu/DropdownMenuTrigger.d.ts +0 -14
  402. package/dist/types/components/DropdownMenu/DropdownMenuTrigger.d.ts.map +0 -1
  403. package/dist/types/components/DropdownMenu/index.d.ts +0 -30
  404. package/dist/types/components/DropdownMenu/index.d.ts.map +0 -1
  405. package/dist/types/components/ErrorSummary/ErrorSummaryRoot.d.ts.map +0 -1
  406. package/dist/types/components/HelpText/HelpTextIcon.d.ts +0 -10
  407. package/dist/types/components/HelpText/HelpTextIcon.d.ts.map +0 -1
  408. package/dist/types/components/Tabs/Tab.d.ts.map +0 -1
  409. package/dist/types/components/Tabs/TabContent.d.ts.map +0 -1
  410. package/dist/types/components/Tabs/TabList.d.ts.map +0 -1
  411. package/dist/types/components/Tabs/TabsRoot.d.ts.map +0 -1
  412. package/dist/types/components/Tabs/useTab.d.ts +0 -10
  413. package/dist/types/components/Tabs/useTab.d.ts.map +0 -1
  414. package/dist/types/components/ToggleGroup/ToggleGroupItem/ToggleGroupItem.d.ts.map +0 -1
  415. package/dist/types/components/ToggleGroup/ToggleGroupItem/useToggleGroupitem.d.ts.map +0 -1
  416. package/dist/types/components/ToggleGroup/ToggleGroupRoot.d.ts.map +0 -1
  417. package/dist/types/components/Typography/ErrorMessage/ErrorMessage.d.ts.map +0 -1
  418. package/dist/types/components/Typography/ErrorMessage/index.d.ts +0 -2
  419. package/dist/types/components/Typography/ErrorMessage/index.d.ts.map +0 -1
  420. package/dist/types/components/form/Fieldset/useFieldset.d.ts +0 -17
  421. package/dist/types/components/form/Fieldset/useFieldset.d.ts.map +0 -1
  422. package/dist/types/components/loaders/Skeleton/Circle/Circle.d.ts +0 -13
  423. package/dist/types/components/loaders/Skeleton/Circle/Circle.d.ts.map +0 -1
  424. package/dist/types/components/loaders/Skeleton/Rectangle/Rectangle.d.ts +0 -13
  425. package/dist/types/components/loaders/Skeleton/Rectangle/Rectangle.d.ts.map +0 -1
  426. package/dist/types/components/loaders/Skeleton/Text/Text.d.ts +0 -13
  427. package/dist/types/components/loaders/Skeleton/Text/Text.d.ts.map +0 -1
@@ -1,667 +0,0 @@
1
- 'use client';
2
- import { offset as offset$1, shift as shift$1, flip as flip$1, computePosition as computePosition$1, size as size$1, arrow as arrow$1 } from '../../../../../core/dist/floating-ui.core.js';
3
- import { createCoords, rectToClientRect, round, floor, max, min } from '../../../../../utils/dist/floating-ui.utils.js';
4
- import { getOverflowAncestors, isElement, getWindow, getComputedStyle, getDocumentElement, isHTMLElement, isWebKit, isTopLayer, getNodeName, isOverflowElement, getNodeScroll, getParentNode, isLastTraversableNode, isTableElement, isContainingBlock, getContainingBlock } from '../../../../../utils/dist/floating-ui.utils.dom.js';
5
-
6
- function getCssDimensions(element) {
7
- const css = getComputedStyle(element);
8
- // In testing environments, the `width` and `height` properties are empty
9
- // strings for SVG elements, returning NaN. Fallback to `0` in this case.
10
- let width = parseFloat(css.width) || 0;
11
- let height = parseFloat(css.height) || 0;
12
- const hasOffset = isHTMLElement(element);
13
- const offsetWidth = hasOffset ? element.offsetWidth : width;
14
- const offsetHeight = hasOffset ? element.offsetHeight : height;
15
- const shouldFallback = round(width) !== offsetWidth || round(height) !== offsetHeight;
16
- if (shouldFallback) {
17
- width = offsetWidth;
18
- height = offsetHeight;
19
- }
20
- return {
21
- width,
22
- height,
23
- $: shouldFallback
24
- };
25
- }
26
-
27
- function unwrapElement(element) {
28
- return !isElement(element) ? element.contextElement : element;
29
- }
30
-
31
- function getScale(element) {
32
- const domElement = unwrapElement(element);
33
- if (!isHTMLElement(domElement)) {
34
- return createCoords(1);
35
- }
36
- const rect = domElement.getBoundingClientRect();
37
- const {
38
- width,
39
- height,
40
- $
41
- } = getCssDimensions(domElement);
42
- let x = ($ ? round(rect.width) : rect.width) / width;
43
- let y = ($ ? round(rect.height) : rect.height) / height;
44
-
45
- // 0, NaN, or Infinity should always fallback to 1.
46
-
47
- if (!x || !Number.isFinite(x)) {
48
- x = 1;
49
- }
50
- if (!y || !Number.isFinite(y)) {
51
- y = 1;
52
- }
53
- return {
54
- x,
55
- y
56
- };
57
- }
58
-
59
- const noOffsets = /*#__PURE__*/createCoords(0);
60
- function getVisualOffsets(element) {
61
- const win = getWindow(element);
62
- if (!isWebKit() || !win.visualViewport) {
63
- return noOffsets;
64
- }
65
- return {
66
- x: win.visualViewport.offsetLeft,
67
- y: win.visualViewport.offsetTop
68
- };
69
- }
70
- function shouldAddVisualOffsets(element, isFixed, floatingOffsetParent) {
71
- if (isFixed === void 0) {
72
- isFixed = false;
73
- }
74
- if (!floatingOffsetParent || isFixed && floatingOffsetParent !== getWindow(element)) {
75
- return false;
76
- }
77
- return isFixed;
78
- }
79
-
80
- function getBoundingClientRect(element, includeScale, isFixedStrategy, offsetParent) {
81
- if (includeScale === void 0) {
82
- includeScale = false;
83
- }
84
- if (isFixedStrategy === void 0) {
85
- isFixedStrategy = false;
86
- }
87
- const clientRect = element.getBoundingClientRect();
88
- const domElement = unwrapElement(element);
89
- let scale = createCoords(1);
90
- if (includeScale) {
91
- if (offsetParent) {
92
- if (isElement(offsetParent)) {
93
- scale = getScale(offsetParent);
94
- }
95
- } else {
96
- scale = getScale(element);
97
- }
98
- }
99
- const visualOffsets = shouldAddVisualOffsets(domElement, isFixedStrategy, offsetParent) ? getVisualOffsets(domElement) : createCoords(0);
100
- let x = (clientRect.left + visualOffsets.x) / scale.x;
101
- let y = (clientRect.top + visualOffsets.y) / scale.y;
102
- let width = clientRect.width / scale.x;
103
- let height = clientRect.height / scale.y;
104
- if (domElement) {
105
- const win = getWindow(domElement);
106
- const offsetWin = offsetParent && isElement(offsetParent) ? getWindow(offsetParent) : offsetParent;
107
- let currentWin = win;
108
- let currentIFrame = currentWin.frameElement;
109
- while (currentIFrame && offsetParent && offsetWin !== currentWin) {
110
- const iframeScale = getScale(currentIFrame);
111
- const iframeRect = currentIFrame.getBoundingClientRect();
112
- const css = getComputedStyle(currentIFrame);
113
- const left = iframeRect.left + (currentIFrame.clientLeft + parseFloat(css.paddingLeft)) * iframeScale.x;
114
- const top = iframeRect.top + (currentIFrame.clientTop + parseFloat(css.paddingTop)) * iframeScale.y;
115
- x *= iframeScale.x;
116
- y *= iframeScale.y;
117
- width *= iframeScale.x;
118
- height *= iframeScale.y;
119
- x += left;
120
- y += top;
121
- currentWin = getWindow(currentIFrame);
122
- currentIFrame = currentWin.frameElement;
123
- }
124
- }
125
- return rectToClientRect({
126
- width,
127
- height,
128
- x,
129
- y
130
- });
131
- }
132
-
133
- function convertOffsetParentRelativeRectToViewportRelativeRect(_ref) {
134
- let {
135
- elements,
136
- rect,
137
- offsetParent,
138
- strategy
139
- } = _ref;
140
- const isFixed = strategy === 'fixed';
141
- const documentElement = getDocumentElement(offsetParent);
142
- const topLayer = elements ? isTopLayer(elements.floating) : false;
143
- if (offsetParent === documentElement || topLayer && isFixed) {
144
- return rect;
145
- }
146
- let scroll = {
147
- scrollLeft: 0,
148
- scrollTop: 0
149
- };
150
- let scale = createCoords(1);
151
- const offsets = createCoords(0);
152
- const isOffsetParentAnElement = isHTMLElement(offsetParent);
153
- if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
154
- if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
155
- scroll = getNodeScroll(offsetParent);
156
- }
157
- if (isHTMLElement(offsetParent)) {
158
- const offsetRect = getBoundingClientRect(offsetParent);
159
- scale = getScale(offsetParent);
160
- offsets.x = offsetRect.x + offsetParent.clientLeft;
161
- offsets.y = offsetRect.y + offsetParent.clientTop;
162
- }
163
- }
164
- return {
165
- width: rect.width * scale.x,
166
- height: rect.height * scale.y,
167
- x: rect.x * scale.x - scroll.scrollLeft * scale.x + offsets.x,
168
- y: rect.y * scale.y - scroll.scrollTop * scale.y + offsets.y
169
- };
170
- }
171
-
172
- function getClientRects(element) {
173
- return Array.from(element.getClientRects());
174
- }
175
-
176
- function getWindowScrollBarX(element) {
177
- // If <html> has a CSS width greater than the viewport, then this will be
178
- // incorrect for RTL.
179
- return getBoundingClientRect(getDocumentElement(element)).left + getNodeScroll(element).scrollLeft;
180
- }
181
-
182
- // Gets the entire size of the scrollable document area, even extending outside
183
- // of the `<html>` and `<body>` rect bounds if horizontally scrollable.
184
- function getDocumentRect(element) {
185
- const html = getDocumentElement(element);
186
- const scroll = getNodeScroll(element);
187
- const body = element.ownerDocument.body;
188
- const width = max(html.scrollWidth, html.clientWidth, body.scrollWidth, body.clientWidth);
189
- const height = max(html.scrollHeight, html.clientHeight, body.scrollHeight, body.clientHeight);
190
- let x = -scroll.scrollLeft + getWindowScrollBarX(element);
191
- const y = -scroll.scrollTop;
192
- if (getComputedStyle(body).direction === 'rtl') {
193
- x += max(html.clientWidth, body.clientWidth) - width;
194
- }
195
- return {
196
- width,
197
- height,
198
- x,
199
- y
200
- };
201
- }
202
-
203
- function getViewportRect(element, strategy) {
204
- const win = getWindow(element);
205
- const html = getDocumentElement(element);
206
- const visualViewport = win.visualViewport;
207
- let width = html.clientWidth;
208
- let height = html.clientHeight;
209
- let x = 0;
210
- let y = 0;
211
- if (visualViewport) {
212
- width = visualViewport.width;
213
- height = visualViewport.height;
214
- const visualViewportBased = isWebKit();
215
- if (!visualViewportBased || visualViewportBased && strategy === 'fixed') {
216
- x = visualViewport.offsetLeft;
217
- y = visualViewport.offsetTop;
218
- }
219
- }
220
- return {
221
- width,
222
- height,
223
- x,
224
- y
225
- };
226
- }
227
-
228
- // Returns the inner client rect, subtracting scrollbars if present.
229
- function getInnerBoundingClientRect(element, strategy) {
230
- const clientRect = getBoundingClientRect(element, true, strategy === 'fixed');
231
- const top = clientRect.top + element.clientTop;
232
- const left = clientRect.left + element.clientLeft;
233
- const scale = isHTMLElement(element) ? getScale(element) : createCoords(1);
234
- const width = element.clientWidth * scale.x;
235
- const height = element.clientHeight * scale.y;
236
- const x = left * scale.x;
237
- const y = top * scale.y;
238
- return {
239
- width,
240
- height,
241
- x,
242
- y
243
- };
244
- }
245
- function getClientRectFromClippingAncestor(element, clippingAncestor, strategy) {
246
- let rect;
247
- if (clippingAncestor === 'viewport') {
248
- rect = getViewportRect(element, strategy);
249
- } else if (clippingAncestor === 'document') {
250
- rect = getDocumentRect(getDocumentElement(element));
251
- } else if (isElement(clippingAncestor)) {
252
- rect = getInnerBoundingClientRect(clippingAncestor, strategy);
253
- } else {
254
- const visualOffsets = getVisualOffsets(element);
255
- rect = {
256
- ...clippingAncestor,
257
- x: clippingAncestor.x - visualOffsets.x,
258
- y: clippingAncestor.y - visualOffsets.y
259
- };
260
- }
261
- return rectToClientRect(rect);
262
- }
263
- function hasFixedPositionAncestor(element, stopNode) {
264
- const parentNode = getParentNode(element);
265
- if (parentNode === stopNode || !isElement(parentNode) || isLastTraversableNode(parentNode)) {
266
- return false;
267
- }
268
- return getComputedStyle(parentNode).position === 'fixed' || hasFixedPositionAncestor(parentNode, stopNode);
269
- }
270
-
271
- // A "clipping ancestor" is an `overflow` element with the characteristic of
272
- // clipping (or hiding) child elements. This returns all clipping ancestors
273
- // of the given element up the tree.
274
- function getClippingElementAncestors(element, cache) {
275
- const cachedResult = cache.get(element);
276
- if (cachedResult) {
277
- return cachedResult;
278
- }
279
- let result = getOverflowAncestors(element, [], false).filter(el => isElement(el) && getNodeName(el) !== 'body');
280
- let currentContainingBlockComputedStyle = null;
281
- const elementIsFixed = getComputedStyle(element).position === 'fixed';
282
- let currentNode = elementIsFixed ? getParentNode(element) : element;
283
-
284
- // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
285
- while (isElement(currentNode) && !isLastTraversableNode(currentNode)) {
286
- const computedStyle = getComputedStyle(currentNode);
287
- const currentNodeIsContaining = isContainingBlock(currentNode);
288
- if (!currentNodeIsContaining && computedStyle.position === 'fixed') {
289
- currentContainingBlockComputedStyle = null;
290
- }
291
- const shouldDropCurrentNode = elementIsFixed ? !currentNodeIsContaining && !currentContainingBlockComputedStyle : !currentNodeIsContaining && computedStyle.position === 'static' && !!currentContainingBlockComputedStyle && ['absolute', 'fixed'].includes(currentContainingBlockComputedStyle.position) || isOverflowElement(currentNode) && !currentNodeIsContaining && hasFixedPositionAncestor(element, currentNode);
292
- if (shouldDropCurrentNode) {
293
- // Drop non-containing blocks.
294
- result = result.filter(ancestor => ancestor !== currentNode);
295
- } else {
296
- // Record last containing block for next iteration.
297
- currentContainingBlockComputedStyle = computedStyle;
298
- }
299
- currentNode = getParentNode(currentNode);
300
- }
301
- cache.set(element, result);
302
- return result;
303
- }
304
-
305
- // Gets the maximum area that the element is visible in due to any number of
306
- // clipping ancestors.
307
- function getClippingRect(_ref) {
308
- let {
309
- element,
310
- boundary,
311
- rootBoundary,
312
- strategy
313
- } = _ref;
314
- const elementClippingAncestors = boundary === 'clippingAncestors' ? isTopLayer(element) ? [] : getClippingElementAncestors(element, this._c) : [].concat(boundary);
315
- const clippingAncestors = [...elementClippingAncestors, rootBoundary];
316
- const firstClippingAncestor = clippingAncestors[0];
317
- const clippingRect = clippingAncestors.reduce((accRect, clippingAncestor) => {
318
- const rect = getClientRectFromClippingAncestor(element, clippingAncestor, strategy);
319
- accRect.top = max(rect.top, accRect.top);
320
- accRect.right = min(rect.right, accRect.right);
321
- accRect.bottom = min(rect.bottom, accRect.bottom);
322
- accRect.left = max(rect.left, accRect.left);
323
- return accRect;
324
- }, getClientRectFromClippingAncestor(element, firstClippingAncestor, strategy));
325
- return {
326
- width: clippingRect.right - clippingRect.left,
327
- height: clippingRect.bottom - clippingRect.top,
328
- x: clippingRect.left,
329
- y: clippingRect.top
330
- };
331
- }
332
-
333
- function getDimensions(element) {
334
- const {
335
- width,
336
- height
337
- } = getCssDimensions(element);
338
- return {
339
- width,
340
- height
341
- };
342
- }
343
-
344
- function getRectRelativeToOffsetParent(element, offsetParent, strategy) {
345
- const isOffsetParentAnElement = isHTMLElement(offsetParent);
346
- const documentElement = getDocumentElement(offsetParent);
347
- const isFixed = strategy === 'fixed';
348
- const rect = getBoundingClientRect(element, true, isFixed, offsetParent);
349
- let scroll = {
350
- scrollLeft: 0,
351
- scrollTop: 0
352
- };
353
- const offsets = createCoords(0);
354
- if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
355
- if (getNodeName(offsetParent) !== 'body' || isOverflowElement(documentElement)) {
356
- scroll = getNodeScroll(offsetParent);
357
- }
358
- if (isOffsetParentAnElement) {
359
- const offsetRect = getBoundingClientRect(offsetParent, true, isFixed, offsetParent);
360
- offsets.x = offsetRect.x + offsetParent.clientLeft;
361
- offsets.y = offsetRect.y + offsetParent.clientTop;
362
- } else if (documentElement) {
363
- offsets.x = getWindowScrollBarX(documentElement);
364
- }
365
- }
366
- const x = rect.left + scroll.scrollLeft - offsets.x;
367
- const y = rect.top + scroll.scrollTop - offsets.y;
368
- return {
369
- x,
370
- y,
371
- width: rect.width,
372
- height: rect.height
373
- };
374
- }
375
-
376
- function isStaticPositioned(element) {
377
- return getComputedStyle(element).position === 'static';
378
- }
379
-
380
- function getTrueOffsetParent(element, polyfill) {
381
- if (!isHTMLElement(element) || getComputedStyle(element).position === 'fixed') {
382
- return null;
383
- }
384
- if (polyfill) {
385
- return polyfill(element);
386
- }
387
- return element.offsetParent;
388
- }
389
-
390
- // Gets the closest ancestor positioned element. Handles some edge cases,
391
- // such as table ancestors and cross browser bugs.
392
- function getOffsetParent(element, polyfill) {
393
- const win = getWindow(element);
394
- if (isTopLayer(element)) {
395
- return win;
396
- }
397
- if (!isHTMLElement(element)) {
398
- let svgOffsetParent = getParentNode(element);
399
- while (svgOffsetParent && !isLastTraversableNode(svgOffsetParent)) {
400
- if (isElement(svgOffsetParent) && !isStaticPositioned(svgOffsetParent)) {
401
- return svgOffsetParent;
402
- }
403
- svgOffsetParent = getParentNode(svgOffsetParent);
404
- }
405
- return win;
406
- }
407
- let offsetParent = getTrueOffsetParent(element, polyfill);
408
- while (offsetParent && isTableElement(offsetParent) && isStaticPositioned(offsetParent)) {
409
- offsetParent = getTrueOffsetParent(offsetParent, polyfill);
410
- }
411
- if (offsetParent && isLastTraversableNode(offsetParent) && isStaticPositioned(offsetParent) && !isContainingBlock(offsetParent)) {
412
- return win;
413
- }
414
- return offsetParent || getContainingBlock(element) || win;
415
- }
416
-
417
- const getElementRects = async function (data) {
418
- const getOffsetParentFn = this.getOffsetParent || getOffsetParent;
419
- const getDimensionsFn = this.getDimensions;
420
- const floatingDimensions = await getDimensionsFn(data.floating);
421
- return {
422
- reference: getRectRelativeToOffsetParent(data.reference, await getOffsetParentFn(data.floating), data.strategy),
423
- floating: {
424
- x: 0,
425
- y: 0,
426
- width: floatingDimensions.width,
427
- height: floatingDimensions.height
428
- }
429
- };
430
- };
431
-
432
- function isRTL(element) {
433
- return getComputedStyle(element).direction === 'rtl';
434
- }
435
-
436
- const platform = {
437
- convertOffsetParentRelativeRectToViewportRelativeRect,
438
- getDocumentElement,
439
- getClippingRect,
440
- getOffsetParent,
441
- getElementRects,
442
- getClientRects,
443
- getDimensions,
444
- getScale,
445
- isElement,
446
- isRTL
447
- };
448
-
449
- // https://samthor.au/2021/observing-dom/
450
- function observeMove(element, onMove) {
451
- let io = null;
452
- let timeoutId;
453
- const root = getDocumentElement(element);
454
- function cleanup() {
455
- var _io;
456
- clearTimeout(timeoutId);
457
- (_io = io) == null || _io.disconnect();
458
- io = null;
459
- }
460
- function refresh(skip, threshold) {
461
- if (skip === void 0) {
462
- skip = false;
463
- }
464
- if (threshold === void 0) {
465
- threshold = 1;
466
- }
467
- cleanup();
468
- const {
469
- left,
470
- top,
471
- width,
472
- height
473
- } = element.getBoundingClientRect();
474
- if (!skip) {
475
- onMove();
476
- }
477
- if (!width || !height) {
478
- return;
479
- }
480
- const insetTop = floor(top);
481
- const insetRight = floor(root.clientWidth - (left + width));
482
- const insetBottom = floor(root.clientHeight - (top + height));
483
- const insetLeft = floor(left);
484
- const rootMargin = -insetTop + "px " + -insetRight + "px " + -insetBottom + "px " + -insetLeft + "px";
485
- const options = {
486
- rootMargin,
487
- threshold: max(0, min(1, threshold)) || 1
488
- };
489
- let isFirstUpdate = true;
490
- function handleObserve(entries) {
491
- const ratio = entries[0].intersectionRatio;
492
- if (ratio !== threshold) {
493
- if (!isFirstUpdate) {
494
- return refresh();
495
- }
496
- if (!ratio) {
497
- // If the reference is clipped, the ratio is 0. Throttle the refresh
498
- // to prevent an infinite loop of updates.
499
- timeoutId = setTimeout(() => {
500
- refresh(false, 1e-7);
501
- }, 1000);
502
- } else {
503
- refresh(false, ratio);
504
- }
505
- }
506
- isFirstUpdate = false;
507
- }
508
-
509
- // Older browsers don't support a `document` as the root and will throw an
510
- // error.
511
- try {
512
- io = new IntersectionObserver(handleObserve, {
513
- ...options,
514
- // Handle <iframe>s
515
- root: root.ownerDocument
516
- });
517
- } catch (e) {
518
- io = new IntersectionObserver(handleObserve, options);
519
- }
520
- io.observe(element);
521
- }
522
- refresh(true);
523
- return cleanup;
524
- }
525
-
526
- /**
527
- * Automatically updates the position of the floating element when necessary.
528
- * Should only be called when the floating element is mounted on the DOM or
529
- * visible on the screen.
530
- * @returns cleanup function that should be invoked when the floating element is
531
- * removed from the DOM or hidden from the screen.
532
- * @see https://floating-ui.com/docs/autoUpdate
533
- */
534
- function autoUpdate(reference, floating, update, options) {
535
- if (options === void 0) {
536
- options = {};
537
- }
538
- const {
539
- ancestorScroll = true,
540
- ancestorResize = true,
541
- elementResize = typeof ResizeObserver === 'function',
542
- layoutShift = typeof IntersectionObserver === 'function',
543
- animationFrame = false
544
- } = options;
545
- const referenceEl = unwrapElement(reference);
546
- const ancestors = ancestorScroll || ancestorResize ? [...(referenceEl ? getOverflowAncestors(referenceEl) : []), ...getOverflowAncestors(floating)] : [];
547
- ancestors.forEach(ancestor => {
548
- ancestorScroll && ancestor.addEventListener('scroll', update, {
549
- passive: true
550
- });
551
- ancestorResize && ancestor.addEventListener('resize', update);
552
- });
553
- const cleanupIo = referenceEl && layoutShift ? observeMove(referenceEl, update) : null;
554
- let reobserveFrame = -1;
555
- let resizeObserver = null;
556
- if (elementResize) {
557
- resizeObserver = new ResizeObserver(_ref => {
558
- let [firstEntry] = _ref;
559
- if (firstEntry && firstEntry.target === referenceEl && resizeObserver) {
560
- // Prevent update loops when using the `size` middleware.
561
- // https://github.com/floating-ui/floating-ui/issues/1740
562
- resizeObserver.unobserve(floating);
563
- cancelAnimationFrame(reobserveFrame);
564
- reobserveFrame = requestAnimationFrame(() => {
565
- var _resizeObserver;
566
- (_resizeObserver = resizeObserver) == null || _resizeObserver.observe(floating);
567
- });
568
- }
569
- update();
570
- });
571
- if (referenceEl && !animationFrame) {
572
- resizeObserver.observe(referenceEl);
573
- }
574
- resizeObserver.observe(floating);
575
- }
576
- let frameId;
577
- let prevRefRect = animationFrame ? getBoundingClientRect(reference) : null;
578
- if (animationFrame) {
579
- frameLoop();
580
- }
581
- function frameLoop() {
582
- const nextRefRect = getBoundingClientRect(reference);
583
- if (prevRefRect && (nextRefRect.x !== prevRefRect.x || nextRefRect.y !== prevRefRect.y || nextRefRect.width !== prevRefRect.width || nextRefRect.height !== prevRefRect.height)) {
584
- update();
585
- }
586
- prevRefRect = nextRefRect;
587
- frameId = requestAnimationFrame(frameLoop);
588
- }
589
- update();
590
- return () => {
591
- var _resizeObserver2;
592
- ancestors.forEach(ancestor => {
593
- ancestorScroll && ancestor.removeEventListener('scroll', update);
594
- ancestorResize && ancestor.removeEventListener('resize', update);
595
- });
596
- cleanupIo == null || cleanupIo();
597
- (_resizeObserver2 = resizeObserver) == null || _resizeObserver2.disconnect();
598
- resizeObserver = null;
599
- if (animationFrame) {
600
- cancelAnimationFrame(frameId);
601
- }
602
- };
603
- }
604
-
605
- /**
606
- * Modifies the placement by translating the floating element along the
607
- * specified axes.
608
- * A number (shorthand for `mainAxis` or distance), or an axes configuration
609
- * object may be passed.
610
- * @see https://floating-ui.com/docs/offset
611
- */
612
- const offset = offset$1;
613
-
614
- /**
615
- * Optimizes the visibility of the floating element by shifting it in order to
616
- * keep it in view when it will overflow the clipping boundary.
617
- * @see https://floating-ui.com/docs/shift
618
- */
619
- const shift = shift$1;
620
-
621
- /**
622
- * Optimizes the visibility of the floating element by flipping the `placement`
623
- * in order to keep it in view when the preferred placement(s) will overflow the
624
- * clipping boundary. Alternative to `autoPlacement`.
625
- * @see https://floating-ui.com/docs/flip
626
- */
627
- const flip = flip$1;
628
-
629
- /**
630
- * Provides data that allows you to change the size of the floating element —
631
- * for instance, prevent it from overflowing the clipping boundary or match the
632
- * width of the reference element.
633
- * @see https://floating-ui.com/docs/size
634
- */
635
- const size = size$1;
636
-
637
- /**
638
- * Provides data to position an inner element of the floating element so that it
639
- * appears centered to the reference element.
640
- * @see https://floating-ui.com/docs/arrow
641
- */
642
- const arrow = arrow$1;
643
-
644
- /**
645
- * Computes the `x` and `y` coordinates that will place the floating element
646
- * next to a given reference element.
647
- */
648
- const computePosition = (reference, floating, options) => {
649
- // This caches the expensive `getClippingElementAncestors` function so that
650
- // multiple lifecycle resets re-use the same result. It only lives for a
651
- // single call. If other functions become expensive, we can add them as well.
652
- const cache = new Map();
653
- const mergedOptions = {
654
- platform,
655
- ...options
656
- };
657
- const platformWithCache = {
658
- ...mergedOptions.platform,
659
- _c: cache
660
- };
661
- return computePosition$1(reference, floating, {
662
- ...mergedOptions,
663
- platform: platformWithCache
664
- });
665
- };
666
-
667
- export { arrow, autoUpdate, computePosition, flip, getOverflowAncestors, offset, platform, shift, size };