@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,676 +0,0 @@
1
- 'use client';
2
- 'use strict';
3
-
4
- var utils = require('./utils.js');
5
-
6
- const defaultKeyExtractor = (index) => index;
7
- const defaultRangeExtractor = (range) => {
8
- const start = Math.max(range.startIndex - range.overscan, 0);
9
- const end = Math.min(range.endIndex + range.overscan, range.count - 1);
10
- const arr = [];
11
- for (let i = start; i <= end; i++) {
12
- arr.push(i);
13
- }
14
- return arr;
15
- };
16
- const observeElementRect = (instance, cb) => {
17
- const element = instance.scrollElement;
18
- if (!element) {
19
- return;
20
- }
21
- const targetWindow = instance.targetWindow;
22
- if (!targetWindow) {
23
- return;
24
- }
25
- const handler = (rect) => {
26
- const { width, height } = rect;
27
- cb({ width: Math.round(width), height: Math.round(height) });
28
- };
29
- handler(element.getBoundingClientRect());
30
- if (!targetWindow.ResizeObserver) {
31
- return () => {
32
- };
33
- }
34
- const observer = new targetWindow.ResizeObserver((entries) => {
35
- const entry = entries[0];
36
- if (entry == null ? void 0 : entry.borderBoxSize) {
37
- const box = entry.borderBoxSize[0];
38
- if (box) {
39
- handler({ width: box.inlineSize, height: box.blockSize });
40
- return;
41
- }
42
- }
43
- handler(element.getBoundingClientRect());
44
- });
45
- observer.observe(element, { box: "border-box" });
46
- return () => {
47
- observer.unobserve(element);
48
- };
49
- };
50
- const addEventListenerOptions = {
51
- passive: true
52
- };
53
- const supportsScrollend = typeof window == "undefined" ? true : "onscrollend" in window;
54
- const observeElementOffset = (instance, cb) => {
55
- const element = instance.scrollElement;
56
- if (!element) {
57
- return;
58
- }
59
- const targetWindow = instance.targetWindow;
60
- if (!targetWindow) {
61
- return;
62
- }
63
- let offset = 0;
64
- const fallback = supportsScrollend ? () => void 0 : utils.debounce(
65
- targetWindow,
66
- () => {
67
- cb(offset, false);
68
- },
69
- instance.options.isScrollingResetDelay
70
- );
71
- const createHandler = (isScrolling) => () => {
72
- const { horizontal, isRtl } = instance.options;
73
- offset = horizontal ? element["scrollLeft"] * (isRtl && -1 || 1) : element["scrollTop"];
74
- fallback();
75
- cb(offset, isScrolling);
76
- };
77
- const handler = createHandler(true);
78
- const endHandler = createHandler(false);
79
- endHandler();
80
- element.addEventListener("scroll", handler, addEventListenerOptions);
81
- element.addEventListener("scrollend", endHandler, addEventListenerOptions);
82
- return () => {
83
- element.removeEventListener("scroll", handler);
84
- element.removeEventListener("scrollend", endHandler);
85
- };
86
- };
87
- const measureElement = (element, entry, instance) => {
88
- if (entry == null ? void 0 : entry.borderBoxSize) {
89
- const box = entry.borderBoxSize[0];
90
- if (box) {
91
- const size = Math.round(
92
- box[instance.options.horizontal ? "inlineSize" : "blockSize"]
93
- );
94
- return size;
95
- }
96
- }
97
- return Math.round(
98
- element.getBoundingClientRect()[instance.options.horizontal ? "width" : "height"]
99
- );
100
- };
101
- const elementScroll = (offset, {
102
- adjustments = 0,
103
- behavior
104
- }, instance) => {
105
- var _a, _b;
106
- const toOffset = offset + adjustments;
107
- (_b = (_a = instance.scrollElement) == null ? void 0 : _a.scrollTo) == null ? void 0 : _b.call(_a, {
108
- [instance.options.horizontal ? "left" : "top"]: toOffset,
109
- behavior
110
- });
111
- };
112
- class Virtualizer {
113
- constructor(opts) {
114
- this.unsubs = [];
115
- this.scrollElement = null;
116
- this.targetWindow = null;
117
- this.isScrolling = false;
118
- this.scrollToIndexTimeoutId = null;
119
- this.measurementsCache = [];
120
- this.itemSizeCache = /* @__PURE__ */ new Map();
121
- this.pendingMeasuredCacheIndexes = [];
122
- this.scrollRect = null;
123
- this.scrollOffset = null;
124
- this.scrollDirection = null;
125
- this.scrollAdjustments = 0;
126
- this.elementsCache = /* @__PURE__ */ new Map();
127
- this.observer = /* @__PURE__ */ (() => {
128
- let _ro = null;
129
- const get = () => {
130
- if (_ro) {
131
- return _ro;
132
- }
133
- if (!this.targetWindow || !this.targetWindow.ResizeObserver) {
134
- return null;
135
- }
136
- return _ro = new this.targetWindow.ResizeObserver((entries) => {
137
- entries.forEach((entry) => {
138
- this._measureElement(entry.target, entry);
139
- });
140
- });
141
- };
142
- return {
143
- disconnect: () => {
144
- var _a;
145
- (_a = get()) == null ? void 0 : _a.disconnect();
146
- _ro = null;
147
- },
148
- observe: (target) => {
149
- var _a;
150
- return (_a = get()) == null ? void 0 : _a.observe(target, { box: "border-box" });
151
- },
152
- unobserve: (target) => {
153
- var _a;
154
- return (_a = get()) == null ? void 0 : _a.unobserve(target);
155
- }
156
- };
157
- })();
158
- this.range = null;
159
- this.setOptions = (opts2) => {
160
- Object.entries(opts2).forEach(([key, value]) => {
161
- if (typeof value === "undefined") delete opts2[key];
162
- });
163
- this.options = {
164
- debug: false,
165
- initialOffset: 0,
166
- overscan: 1,
167
- paddingStart: 0,
168
- paddingEnd: 0,
169
- scrollPaddingStart: 0,
170
- scrollPaddingEnd: 0,
171
- horizontal: false,
172
- getItemKey: defaultKeyExtractor,
173
- rangeExtractor: defaultRangeExtractor,
174
- onChange: () => {
175
- },
176
- measureElement,
177
- initialRect: { width: 0, height: 0 },
178
- scrollMargin: 0,
179
- gap: 0,
180
- indexAttribute: "data-index",
181
- initialMeasurementsCache: [],
182
- lanes: 1,
183
- isScrollingResetDelay: 150,
184
- enabled: true,
185
- isRtl: false,
186
- ...opts2
187
- };
188
- };
189
- this.notify = (sync) => {
190
- var _a, _b;
191
- (_b = (_a = this.options).onChange) == null ? void 0 : _b.call(_a, this, sync);
192
- };
193
- this.maybeNotify = utils.memo(
194
- () => {
195
- this.calculateRange();
196
- return [
197
- this.isScrolling,
198
- this.range ? this.range.startIndex : null,
199
- this.range ? this.range.endIndex : null
200
- ];
201
- },
202
- (isScrolling) => {
203
- this.notify(isScrolling);
204
- },
205
- {
206
- key: process.env.NODE_ENV !== "production" && "maybeNotify",
207
- debug: () => this.options.debug,
208
- initialDeps: [
209
- this.isScrolling,
210
- this.range ? this.range.startIndex : null,
211
- this.range ? this.range.endIndex : null
212
- ]
213
- }
214
- );
215
- this.cleanup = () => {
216
- this.unsubs.filter(Boolean).forEach((d) => d());
217
- this.unsubs = [];
218
- this.observer.disconnect();
219
- this.scrollElement = null;
220
- this.targetWindow = null;
221
- };
222
- this._didMount = () => {
223
- return () => {
224
- this.cleanup();
225
- };
226
- };
227
- this._willUpdate = () => {
228
- var _a;
229
- const scrollElement = this.options.enabled ? this.options.getScrollElement() : null;
230
- if (this.scrollElement !== scrollElement) {
231
- this.cleanup();
232
- if (!scrollElement) {
233
- this.maybeNotify();
234
- return;
235
- }
236
- this.scrollElement = scrollElement;
237
- if (this.scrollElement && "ownerDocument" in this.scrollElement) {
238
- this.targetWindow = this.scrollElement.ownerDocument.defaultView;
239
- } else {
240
- this.targetWindow = ((_a = this.scrollElement) == null ? void 0 : _a.window) ?? null;
241
- }
242
- this.elementsCache.forEach((cached) => {
243
- this.observer.observe(cached);
244
- });
245
- this._scrollToOffset(this.getScrollOffset(), {
246
- adjustments: void 0,
247
- behavior: void 0
248
- });
249
- this.unsubs.push(
250
- this.options.observeElementRect(this, (rect) => {
251
- this.scrollRect = rect;
252
- this.maybeNotify();
253
- })
254
- );
255
- this.unsubs.push(
256
- this.options.observeElementOffset(this, (offset, isScrolling) => {
257
- this.scrollAdjustments = 0;
258
- this.scrollDirection = isScrolling ? this.getScrollOffset() < offset ? "forward" : "backward" : null;
259
- this.scrollOffset = offset;
260
- this.isScrolling = isScrolling;
261
- this.maybeNotify();
262
- })
263
- );
264
- }
265
- };
266
- this.getSize = () => {
267
- if (!this.options.enabled) {
268
- this.scrollRect = null;
269
- return 0;
270
- }
271
- this.scrollRect = this.scrollRect ?? this.options.initialRect;
272
- return this.scrollRect[this.options.horizontal ? "width" : "height"];
273
- };
274
- this.getScrollOffset = () => {
275
- if (!this.options.enabled) {
276
- this.scrollOffset = null;
277
- return 0;
278
- }
279
- this.scrollOffset = this.scrollOffset ?? (typeof this.options.initialOffset === "function" ? this.options.initialOffset() : this.options.initialOffset);
280
- return this.scrollOffset;
281
- };
282
- this.getFurthestMeasurement = (measurements, index) => {
283
- const furthestMeasurementsFound = /* @__PURE__ */ new Map();
284
- const furthestMeasurements = /* @__PURE__ */ new Map();
285
- for (let m = index - 1; m >= 0; m--) {
286
- const measurement = measurements[m];
287
- if (furthestMeasurementsFound.has(measurement.lane)) {
288
- continue;
289
- }
290
- const previousFurthestMeasurement = furthestMeasurements.get(
291
- measurement.lane
292
- );
293
- if (previousFurthestMeasurement == null || measurement.end > previousFurthestMeasurement.end) {
294
- furthestMeasurements.set(measurement.lane, measurement);
295
- } else if (measurement.end < previousFurthestMeasurement.end) {
296
- furthestMeasurementsFound.set(measurement.lane, true);
297
- }
298
- if (furthestMeasurementsFound.size === this.options.lanes) {
299
- break;
300
- }
301
- }
302
- return furthestMeasurements.size === this.options.lanes ? Array.from(furthestMeasurements.values()).sort((a, b) => {
303
- if (a.end === b.end) {
304
- return a.index - b.index;
305
- }
306
- return a.end - b.end;
307
- })[0] : void 0;
308
- };
309
- this.getMeasurementOptions = utils.memo(
310
- () => [
311
- this.options.count,
312
- this.options.paddingStart,
313
- this.options.scrollMargin,
314
- this.options.getItemKey,
315
- this.options.enabled
316
- ],
317
- (count, paddingStart, scrollMargin, getItemKey, enabled) => {
318
- this.pendingMeasuredCacheIndexes = [];
319
- return {
320
- count,
321
- paddingStart,
322
- scrollMargin,
323
- getItemKey,
324
- enabled
325
- };
326
- },
327
- {
328
- key: false
329
- }
330
- );
331
- this.getMeasurements = utils.memo(
332
- () => [this.getMeasurementOptions(), this.itemSizeCache],
333
- ({ count, paddingStart, scrollMargin, getItemKey, enabled }, itemSizeCache) => {
334
- if (!enabled) {
335
- this.measurementsCache = [];
336
- this.itemSizeCache.clear();
337
- return [];
338
- }
339
- if (this.measurementsCache.length === 0) {
340
- this.measurementsCache = this.options.initialMeasurementsCache;
341
- this.measurementsCache.forEach((item) => {
342
- this.itemSizeCache.set(item.key, item.size);
343
- });
344
- }
345
- const min = this.pendingMeasuredCacheIndexes.length > 0 ? Math.min(...this.pendingMeasuredCacheIndexes) : 0;
346
- this.pendingMeasuredCacheIndexes = [];
347
- const measurements = this.measurementsCache.slice(0, min);
348
- for (let i = min; i < count; i++) {
349
- const key = getItemKey(i);
350
- const furthestMeasurement = this.options.lanes === 1 ? measurements[i - 1] : this.getFurthestMeasurement(measurements, i);
351
- const start = furthestMeasurement ? furthestMeasurement.end + this.options.gap : paddingStart + scrollMargin;
352
- const measuredSize = itemSizeCache.get(key);
353
- const size = typeof measuredSize === "number" ? measuredSize : this.options.estimateSize(i);
354
- const end = start + size;
355
- const lane = furthestMeasurement ? furthestMeasurement.lane : i % this.options.lanes;
356
- measurements[i] = {
357
- index: i,
358
- start,
359
- size,
360
- end,
361
- key,
362
- lane
363
- };
364
- }
365
- this.measurementsCache = measurements;
366
- return measurements;
367
- },
368
- {
369
- key: process.env.NODE_ENV !== "production" && "getMeasurements",
370
- debug: () => this.options.debug
371
- }
372
- );
373
- this.calculateRange = utils.memo(
374
- () => [this.getMeasurements(), this.getSize(), this.getScrollOffset()],
375
- (measurements, outerSize, scrollOffset) => {
376
- return this.range = measurements.length > 0 && outerSize > 0 ? calculateRange({
377
- measurements,
378
- outerSize,
379
- scrollOffset
380
- }) : null;
381
- },
382
- {
383
- key: process.env.NODE_ENV !== "production" && "calculateRange",
384
- debug: () => this.options.debug
385
- }
386
- );
387
- this.getIndexes = utils.memo(
388
- () => [
389
- this.options.rangeExtractor,
390
- this.calculateRange(),
391
- this.options.overscan,
392
- this.options.count
393
- ],
394
- (rangeExtractor, range, overscan, count) => {
395
- return range === null ? [] : rangeExtractor({
396
- startIndex: range.startIndex,
397
- endIndex: range.endIndex,
398
- overscan,
399
- count
400
- });
401
- },
402
- {
403
- key: process.env.NODE_ENV !== "production" && "getIndexes",
404
- debug: () => this.options.debug
405
- }
406
- );
407
- this.indexFromElement = (node) => {
408
- const attributeName = this.options.indexAttribute;
409
- const indexStr = node.getAttribute(attributeName);
410
- if (!indexStr) {
411
- console.warn(
412
- `Missing attribute name '${attributeName}={index}' on measured element.`
413
- );
414
- return -1;
415
- }
416
- return parseInt(indexStr, 10);
417
- };
418
- this._measureElement = (node, entry) => {
419
- const index = this.indexFromElement(node);
420
- const item = this.measurementsCache[index];
421
- if (!item) {
422
- return;
423
- }
424
- const key = item.key;
425
- const prevNode = this.elementsCache.get(key);
426
- if (prevNode !== node) {
427
- if (prevNode) {
428
- this.observer.unobserve(prevNode);
429
- }
430
- this.observer.observe(node);
431
- this.elementsCache.set(key, node);
432
- }
433
- if (node.isConnected) {
434
- this.resizeItem(index, this.options.measureElement(node, entry, this));
435
- }
436
- };
437
- this.resizeItem = (index, size) => {
438
- const item = this.measurementsCache[index];
439
- if (!item) {
440
- return;
441
- }
442
- const itemSize = this.itemSizeCache.get(item.key) ?? item.size;
443
- const delta = size - itemSize;
444
- if (delta !== 0) {
445
- if (this.shouldAdjustScrollPositionOnItemSizeChange !== void 0 ? this.shouldAdjustScrollPositionOnItemSizeChange(item, delta, this) : item.start < this.getScrollOffset() + this.scrollAdjustments) {
446
- if (process.env.NODE_ENV !== "production" && this.options.debug) {
447
- console.info("correction", delta);
448
- }
449
- this._scrollToOffset(this.getScrollOffset(), {
450
- adjustments: this.scrollAdjustments += delta,
451
- behavior: void 0
452
- });
453
- }
454
- this.pendingMeasuredCacheIndexes.push(item.index);
455
- this.itemSizeCache = new Map(this.itemSizeCache.set(item.key, size));
456
- this.notify(false);
457
- }
458
- };
459
- this.measureElement = (node) => {
460
- if (!node) {
461
- this.elementsCache.forEach((cached, key) => {
462
- if (!cached.isConnected) {
463
- this.observer.unobserve(cached);
464
- this.elementsCache.delete(key);
465
- }
466
- });
467
- return;
468
- }
469
- this._measureElement(node, void 0);
470
- };
471
- this.getVirtualItems = utils.memo(
472
- () => [this.getIndexes(), this.getMeasurements()],
473
- (indexes, measurements) => {
474
- const virtualItems = [];
475
- for (let k = 0, len = indexes.length; k < len; k++) {
476
- const i = indexes[k];
477
- const measurement = measurements[i];
478
- virtualItems.push(measurement);
479
- }
480
- return virtualItems;
481
- },
482
- {
483
- key: process.env.NODE_ENV !== "production" && "getVirtualItems",
484
- debug: () => this.options.debug
485
- }
486
- );
487
- this.getVirtualItemForOffset = (offset) => {
488
- const measurements = this.getMeasurements();
489
- if (measurements.length === 0) {
490
- return void 0;
491
- }
492
- return utils.notUndefined(
493
- measurements[findNearestBinarySearch(
494
- 0,
495
- measurements.length - 1,
496
- (index) => utils.notUndefined(measurements[index]).start,
497
- offset
498
- )]
499
- );
500
- };
501
- this.getOffsetForAlignment = (toOffset, align) => {
502
- const size = this.getSize();
503
- const scrollOffset = this.getScrollOffset();
504
- if (align === "auto") {
505
- if (toOffset <= scrollOffset) {
506
- align = "start";
507
- } else if (toOffset >= scrollOffset + size) {
508
- align = "end";
509
- } else {
510
- align = "start";
511
- }
512
- }
513
- if (align === "start") {
514
- toOffset = toOffset;
515
- } else if (align === "end") {
516
- toOffset = toOffset - size;
517
- } else if (align === "center") {
518
- toOffset = toOffset - size / 2;
519
- }
520
- const scrollSizeProp = this.options.horizontal ? "scrollWidth" : "scrollHeight";
521
- const scrollSize = this.scrollElement ? "document" in this.scrollElement ? this.scrollElement.document.documentElement[scrollSizeProp] : this.scrollElement[scrollSizeProp] : 0;
522
- const maxOffset = scrollSize - size;
523
- return Math.max(Math.min(maxOffset, toOffset), 0);
524
- };
525
- this.getOffsetForIndex = (index, align = "auto") => {
526
- index = Math.max(0, Math.min(index, this.options.count - 1));
527
- const item = this.measurementsCache[index];
528
- if (!item) {
529
- return void 0;
530
- }
531
- const size = this.getSize();
532
- const scrollOffset = this.getScrollOffset();
533
- if (align === "auto") {
534
- if (item.end >= scrollOffset + size - this.options.scrollPaddingEnd) {
535
- align = "end";
536
- } else if (item.start <= scrollOffset + this.options.scrollPaddingStart) {
537
- align = "start";
538
- } else {
539
- return [scrollOffset, align];
540
- }
541
- }
542
- const toOffset = align === "end" ? item.end + this.options.scrollPaddingEnd : item.start - this.options.scrollPaddingStart;
543
- return [this.getOffsetForAlignment(toOffset, align), align];
544
- };
545
- this.isDynamicMode = () => this.elementsCache.size > 0;
546
- this.cancelScrollToIndex = () => {
547
- if (this.scrollToIndexTimeoutId !== null && this.targetWindow) {
548
- this.targetWindow.clearTimeout(this.scrollToIndexTimeoutId);
549
- this.scrollToIndexTimeoutId = null;
550
- }
551
- };
552
- this.scrollToOffset = (toOffset, { align = "start", behavior } = {}) => {
553
- this.cancelScrollToIndex();
554
- if (behavior === "smooth" && this.isDynamicMode()) {
555
- console.warn(
556
- "The `smooth` scroll behavior is not fully supported with dynamic size."
557
- );
558
- }
559
- this._scrollToOffset(this.getOffsetForAlignment(toOffset, align), {
560
- adjustments: void 0,
561
- behavior
562
- });
563
- };
564
- this.scrollToIndex = (index, { align: initialAlign = "auto", behavior } = {}) => {
565
- index = Math.max(0, Math.min(index, this.options.count - 1));
566
- this.cancelScrollToIndex();
567
- if (behavior === "smooth" && this.isDynamicMode()) {
568
- console.warn(
569
- "The `smooth` scroll behavior is not fully supported with dynamic size."
570
- );
571
- }
572
- const offsetAndAlign = this.getOffsetForIndex(index, initialAlign);
573
- if (!offsetAndAlign) return;
574
- const [offset, align] = offsetAndAlign;
575
- this._scrollToOffset(offset, { adjustments: void 0, behavior });
576
- if (behavior !== "smooth" && this.isDynamicMode() && this.targetWindow) {
577
- this.scrollToIndexTimeoutId = this.targetWindow.setTimeout(() => {
578
- this.scrollToIndexTimeoutId = null;
579
- const elementInDOM = this.elementsCache.has(
580
- this.options.getItemKey(index)
581
- );
582
- if (elementInDOM) {
583
- const [latestOffset] = utils.notUndefined(
584
- this.getOffsetForIndex(index, align)
585
- );
586
- if (!utils.approxEqual(latestOffset, this.getScrollOffset())) {
587
- this.scrollToIndex(index, { align, behavior });
588
- }
589
- } else {
590
- this.scrollToIndex(index, { align, behavior });
591
- }
592
- });
593
- }
594
- };
595
- this.scrollBy = (delta, { behavior } = {}) => {
596
- this.cancelScrollToIndex();
597
- if (behavior === "smooth" && this.isDynamicMode()) {
598
- console.warn(
599
- "The `smooth` scroll behavior is not fully supported with dynamic size."
600
- );
601
- }
602
- this._scrollToOffset(this.getScrollOffset() + delta, {
603
- adjustments: void 0,
604
- behavior
605
- });
606
- };
607
- this.getTotalSize = () => {
608
- var _a;
609
- const measurements = this.getMeasurements();
610
- let end;
611
- if (measurements.length === 0) {
612
- end = this.options.paddingStart;
613
- } else {
614
- end = this.options.lanes === 1 ? ((_a = measurements[measurements.length - 1]) == null ? void 0 : _a.end) ?? 0 : Math.max(
615
- ...measurements.slice(-this.options.lanes).map((m) => m.end)
616
- );
617
- }
618
- return end - this.options.scrollMargin + this.options.paddingEnd;
619
- };
620
- this._scrollToOffset = (offset, {
621
- adjustments,
622
- behavior
623
- }) => {
624
- this.options.scrollToFn(offset, { behavior, adjustments }, this);
625
- };
626
- this.measure = () => {
627
- this.itemSizeCache = /* @__PURE__ */ new Map();
628
- this.notify(false);
629
- };
630
- this.setOptions(opts);
631
- }
632
- }
633
- const findNearestBinarySearch = (low, high, getCurrentValue, value) => {
634
- while (low <= high) {
635
- const middle = (low + high) / 2 | 0;
636
- const currentValue = getCurrentValue(middle);
637
- if (currentValue < value) {
638
- low = middle + 1;
639
- } else if (currentValue > value) {
640
- high = middle - 1;
641
- } else {
642
- return middle;
643
- }
644
- }
645
- if (low > 0) {
646
- return low - 1;
647
- } else {
648
- return 0;
649
- }
650
- };
651
- function calculateRange({
652
- measurements,
653
- outerSize,
654
- scrollOffset
655
- }) {
656
- const count = measurements.length - 1;
657
- const getOffset = (index) => measurements[index].start;
658
- const startIndex = findNearestBinarySearch(0, count, getOffset, scrollOffset);
659
- let endIndex = startIndex;
660
- while (endIndex < count && measurements[endIndex].end < scrollOffset + outerSize) {
661
- endIndex++;
662
- }
663
- return { startIndex, endIndex };
664
- }
665
-
666
- exports.approxEqual = utils.approxEqual;
667
- exports.debounce = utils.debounce;
668
- exports.memo = utils.memo;
669
- exports.notUndefined = utils.notUndefined;
670
- exports.Virtualizer = Virtualizer;
671
- exports.defaultKeyExtractor = defaultKeyExtractor;
672
- exports.defaultRangeExtractor = defaultRangeExtractor;
673
- exports.elementScroll = elementScroll;
674
- exports.measureElement = measureElement;
675
- exports.observeElementOffset = observeElementOffset;
676
- exports.observeElementRect = observeElementRect;