@payloadcms/ui 3.80.0-internal.21e9c47 → 3.80.0-internal.52ab774

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 (321) hide show
  1. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  2. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +53 -3
  3. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  4. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js +541 -0
  5. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js.map +1 -0
  6. package/dist/elements/Combobox/index.d.ts.map +1 -1
  7. package/dist/elements/Combobox/index.js +1 -0
  8. package/dist/elements/Combobox/index.js.map +1 -1
  9. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts.map +1 -0
  10. package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/Column/index.js +5 -5
  11. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -0
  12. package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/Column/index.scss +1 -1
  13. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -0
  14. package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/ColumnItem/index.js +3 -3
  15. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -0
  16. package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/ColumnItem/index.scss +1 -1
  17. package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/index.d.ts +1 -1
  18. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -0
  19. package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/index.js +13 -10
  20. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -0
  21. package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/types.d.ts +3 -0
  22. package/dist/elements/Hierarchy/ColumnBrowser/types.d.ts.map +1 -0
  23. package/dist/elements/Hierarchy/ColumnBrowser/types.js.map +1 -0
  24. package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -0
  25. package/dist/elements/{HierarchyButton → Hierarchy/DocHeaderButton}/index.js +6 -6
  26. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -0
  27. package/dist/elements/Hierarchy/DocHeaderButton/index.server.d.ts.map +1 -0
  28. package/dist/elements/{HierarchyButton → Hierarchy/DocHeaderButton}/index.server.js +3 -3
  29. package/dist/elements/Hierarchy/DocHeaderButton/index.server.js.map +1 -0
  30. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.d.ts.map +1 -0
  31. package/dist/elements/Hierarchy/Drawer/fetchAncestorPath.js.map +1 -0
  32. package/dist/elements/{HierarchyDrawer → Hierarchy}/Drawer/index.d.ts +3 -3
  33. package/dist/elements/Hierarchy/Drawer/index.d.ts.map +1 -0
  34. package/dist/elements/{HierarchyDrawer → Hierarchy}/Drawer/index.js +4 -2
  35. package/dist/elements/Hierarchy/Drawer/index.js.map +1 -0
  36. package/dist/elements/{HierarchyDrawer → Hierarchy/Drawer}/types.d.ts +4 -1
  37. package/dist/elements/Hierarchy/Drawer/types.d.ts.map +1 -0
  38. package/dist/elements/Hierarchy/Drawer/types.js.map +1 -0
  39. package/dist/elements/{HierarchyDrawer/index.d.ts → Hierarchy/Drawer/useHierarchyDrawer.d.ts} +1 -1
  40. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.d.ts.map +1 -0
  41. package/dist/elements/{HierarchyDrawer/index.js → Hierarchy/Drawer/useHierarchyDrawer.js} +10 -8
  42. package/dist/elements/Hierarchy/Drawer/useHierarchyDrawer.js.map +1 -0
  43. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -0
  44. package/dist/elements/{HierarchyField → Hierarchy/Field}/SelectedHierarchies.js +7 -16
  45. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -0
  46. package/dist/elements/{HierarchyField → Hierarchy/Field}/SelectedHierarchies.scss +1 -1
  47. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -0
  48. package/dist/elements/{HierarchyField → Hierarchy/Field}/index.client.js +17 -29
  49. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -0
  50. package/dist/elements/{HierarchyField → Hierarchy/Field}/index.scss +1 -1
  51. package/dist/elements/Hierarchy/Field/index.server.d.ts.map +1 -0
  52. package/dist/elements/{HierarchyField → Hierarchy/Field}/index.server.js +2 -2
  53. package/dist/elements/Hierarchy/Field/index.server.js.map +1 -0
  54. package/dist/elements/Hierarchy/HydrateProvider/index.d.ts +4 -0
  55. package/dist/elements/Hierarchy/HydrateProvider/index.d.ts.map +1 -0
  56. package/dist/elements/Hierarchy/HydrateProvider/index.js +70 -0
  57. package/dist/elements/Hierarchy/HydrateProvider/index.js.map +1 -0
  58. package/dist/elements/{MoveMany → Hierarchy/MoveMany}/index.d.ts +3 -3
  59. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -0
  60. package/dist/elements/{MoveMany → Hierarchy/MoveMany}/index.js +10 -10
  61. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -0
  62. package/dist/elements/{MoveMany → Hierarchy/MoveMany}/index.scss +1 -1
  63. package/dist/elements/Hierarchy/Search/HierarchySearchInput.d.ts.map +1 -0
  64. package/dist/elements/{HierarchySearch → Hierarchy/Search}/HierarchySearchInput.js +5 -5
  65. package/dist/elements/Hierarchy/Search/HierarchySearchInput.js.map +1 -0
  66. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.d.ts.map +1 -0
  67. package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js.map +1 -0
  68. package/dist/elements/Hierarchy/Search/HierarchySearchResults.d.ts.map +1 -0
  69. package/dist/elements/{HierarchySearch → Hierarchy/Search}/HierarchySearchResults.js +2 -2
  70. package/dist/elements/Hierarchy/Search/HierarchySearchResults.js.map +1 -0
  71. package/dist/elements/Hierarchy/Search/index.d.ts.map +1 -0
  72. package/dist/elements/{HierarchySearch → Hierarchy/Search}/index.js +2 -2
  73. package/dist/elements/Hierarchy/Search/index.js.map +1 -0
  74. package/dist/elements/{HierarchySearch → Hierarchy/Search}/index.scss +1 -1
  75. package/dist/elements/Hierarchy/Search/types.d.ts.map +1 -0
  76. package/dist/elements/Hierarchy/Search/types.js.map +1 -0
  77. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -0
  78. package/dist/elements/{HierarchySearch → Hierarchy/Search}/useHierarchySearch.js +2 -2
  79. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -0
  80. package/dist/elements/{HierarchyTree → Hierarchy/Tree}/HierarchySidebarTab.d.ts +1 -0
  81. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -0
  82. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +194 -0
  83. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -0
  84. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.d.ts.map +1 -0
  85. package/dist/elements/{HierarchyTree → Hierarchy/Tree}/HierarchySidebarTab.server.js +20 -10
  86. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.server.js.map +1 -0
  87. package/dist/elements/Hierarchy/Tree/LoadMore/LoadMoreButton.d.ts.map +1 -0
  88. package/dist/elements/{Tree → Hierarchy/Tree}/LoadMore/LoadMoreButton.js +1 -1
  89. package/dist/elements/Hierarchy/Tree/LoadMore/LoadMoreButton.js.map +1 -0
  90. package/dist/elements/Hierarchy/Tree/LoadMore/index.d.ts.map +1 -0
  91. package/dist/elements/{Tree → Hierarchy/Tree}/LoadMore/index.js +1 -1
  92. package/dist/elements/Hierarchy/Tree/LoadMore/index.js.map +1 -0
  93. package/dist/elements/Hierarchy/Tree/TreeConnector.d.ts.map +1 -0
  94. package/dist/elements/Hierarchy/Tree/TreeConnector.js.map +1 -0
  95. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -0
  96. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -0
  97. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts +5 -0
  98. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -0
  99. package/dist/elements/{Tree → Hierarchy/Tree}/TreeNode/index.js +11 -4
  100. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -0
  101. package/dist/elements/{Tree → Hierarchy/Tree}/TreeNode/index.scss +1 -1
  102. package/dist/elements/{HierarchyTree → Hierarchy/Tree}/index.d.ts +1 -0
  103. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -0
  104. package/dist/elements/Hierarchy/Tree/index.js +305 -0
  105. package/dist/elements/Hierarchy/Tree/index.js.map +1 -0
  106. package/dist/elements/{Tree → Hierarchy/Tree}/index.scss +2 -5
  107. package/dist/elements/{Tree → Hierarchy/Tree}/types.d.ts +31 -22
  108. package/dist/elements/Hierarchy/Tree/types.d.ts.map +1 -0
  109. package/dist/elements/Hierarchy/Tree/types.js.map +1 -0
  110. package/dist/elements/Hierarchy/Tree/useChildren.d.ts +32 -0
  111. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -0
  112. package/dist/elements/{Tree → Hierarchy/Tree}/useChildren.js +52 -32
  113. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -0
  114. package/dist/elements/Link/index.d.ts.map +1 -1
  115. package/dist/elements/LoadMoreRow/index.js +1 -1
  116. package/dist/elements/LoadMoreRow/index.js.map +1 -1
  117. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  118. package/dist/elements/PublishButton/index.js +3 -1
  119. package/dist/elements/PublishButton/index.js.map +1 -1
  120. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  121. package/dist/elements/RelationshipTable/index.js +14 -9
  122. package/dist/elements/RelationshipTable/index.js.map +1 -1
  123. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +1 -1
  124. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  125. package/dist/elements/Toasts/fieldErrors.d.ts +4 -0
  126. package/dist/elements/Toasts/fieldErrors.d.ts.map +1 -1
  127. package/dist/elements/Toasts/fieldErrors.js +4 -2
  128. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  129. package/dist/elements/Toasts/fieldErrors.spec.js +46 -0
  130. package/dist/elements/Toasts/fieldErrors.spec.js.map +1 -0
  131. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  132. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +8 -6
  133. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  134. package/dist/elements/WhereBuilder/field-types.d.ts.map +1 -1
  135. package/dist/elements/WhereBuilder/field-types.js +2 -5
  136. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  137. package/dist/exports/client/{DatePicker-CL2EGBVQ.js → DatePicker-T2DMDMM5.js} +2 -2
  138. package/dist/exports/client/chunk-WDZJLNNB.js +29 -0
  139. package/dist/exports/client/{chunk-SH42NW5R.js.map → chunk-WDZJLNNB.js.map} +4 -4
  140. package/dist/exports/client/index.d.ts +11 -15
  141. package/dist/exports/client/index.d.ts.map +1 -1
  142. package/dist/exports/client/index.js +26 -26
  143. package/dist/exports/client/index.js.map +4 -4
  144. package/dist/exports/rsc/index.d.ts +3 -3
  145. package/dist/exports/rsc/index.d.ts.map +1 -1
  146. package/dist/exports/rsc/index.js +3 -3
  147. package/dist/exports/rsc/index.js.map +1 -1
  148. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  149. package/dist/forms/Form/mergeServerFormState.js +101 -24
  150. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  151. package/dist/icons/TableView/index.d.ts +3 -0
  152. package/dist/icons/TableView/index.d.ts.map +1 -0
  153. package/dist/icons/TableView/index.js +16 -0
  154. package/dist/icons/TableView/index.js.map +1 -0
  155. package/dist/providers/Hierarchy/index.d.ts.map +1 -1
  156. package/dist/providers/Hierarchy/index.js +29 -8
  157. package/dist/providers/Hierarchy/index.js.map +1 -1
  158. package/dist/providers/Hierarchy/types.d.ts +10 -5
  159. package/dist/providers/Hierarchy/types.d.ts.map +1 -1
  160. package/dist/providers/Hierarchy/types.js.map +1 -1
  161. package/dist/providers/SidebarTabs/index.d.ts +19 -0
  162. package/dist/providers/SidebarTabs/index.d.ts.map +1 -0
  163. package/dist/providers/SidebarTabs/index.js +24 -0
  164. package/dist/providers/SidebarTabs/index.js.map +1 -0
  165. package/dist/styles.css +1 -1
  166. package/dist/views/Edit/index.d.ts.map +1 -1
  167. package/dist/views/Edit/index.js +12 -3
  168. package/dist/views/Edit/index.js.map +1 -1
  169. package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -1
  170. package/dist/views/HierarchyList/DocumentListSelection/index.js +147 -86
  171. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  172. package/dist/views/HierarchyList/HierarchyListHeader/index.js +7 -6
  173. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
  174. package/dist/views/HierarchyList/HierarchyTable/index.d.ts +7 -3
  175. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  176. package/dist/views/HierarchyList/HierarchyTable/index.js +19 -18
  177. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  178. package/dist/views/HierarchyList/index.d.ts.map +1 -1
  179. package/dist/views/HierarchyList/index.js +3 -1
  180. package/dist/views/HierarchyList/index.js.map +1 -1
  181. package/package.json +4 -4
  182. package/dist/elements/HierarchyButton/index.d.ts.map +0 -1
  183. package/dist/elements/HierarchyButton/index.js.map +0 -1
  184. package/dist/elements/HierarchyButton/index.server.d.ts.map +0 -1
  185. package/dist/elements/HierarchyButton/index.server.js.map +0 -1
  186. package/dist/elements/HierarchyColumnBrowser/Column/index.d.ts.map +0 -1
  187. package/dist/elements/HierarchyColumnBrowser/Column/index.js.map +0 -1
  188. package/dist/elements/HierarchyColumnBrowser/ColumnItem/index.d.ts.map +0 -1
  189. package/dist/elements/HierarchyColumnBrowser/ColumnItem/index.js.map +0 -1
  190. package/dist/elements/HierarchyColumnBrowser/index.d.ts.map +0 -1
  191. package/dist/elements/HierarchyColumnBrowser/index.js.map +0 -1
  192. package/dist/elements/HierarchyColumnBrowser/types.d.ts.map +0 -1
  193. package/dist/elements/HierarchyColumnBrowser/types.js.map +0 -1
  194. package/dist/elements/HierarchyDrawer/Drawer/index.d.ts.map +0 -1
  195. package/dist/elements/HierarchyDrawer/Drawer/index.js.map +0 -1
  196. package/dist/elements/HierarchyDrawer/fetchAncestorPath.d.ts.map +0 -1
  197. package/dist/elements/HierarchyDrawer/fetchAncestorPath.js.map +0 -1
  198. package/dist/elements/HierarchyDrawer/index.d.ts.map +0 -1
  199. package/dist/elements/HierarchyDrawer/index.js.map +0 -1
  200. package/dist/elements/HierarchyDrawer/types.d.ts.map +0 -1
  201. package/dist/elements/HierarchyDrawer/types.js.map +0 -1
  202. package/dist/elements/HierarchyField/SelectedHierarchies.d.ts.map +0 -1
  203. package/dist/elements/HierarchyField/SelectedHierarchies.js.map +0 -1
  204. package/dist/elements/HierarchyField/index.client.d.ts.map +0 -1
  205. package/dist/elements/HierarchyField/index.client.js.map +0 -1
  206. package/dist/elements/HierarchyField/index.server.d.ts.map +0 -1
  207. package/dist/elements/HierarchyField/index.server.js.map +0 -1
  208. package/dist/elements/HierarchySearch/HierarchySearchInput.d.ts.map +0 -1
  209. package/dist/elements/HierarchySearch/HierarchySearchInput.js.map +0 -1
  210. package/dist/elements/HierarchySearch/HierarchySearchResultItem.d.ts.map +0 -1
  211. package/dist/elements/HierarchySearch/HierarchySearchResultItem.js.map +0 -1
  212. package/dist/elements/HierarchySearch/HierarchySearchResults.d.ts.map +0 -1
  213. package/dist/elements/HierarchySearch/HierarchySearchResults.js.map +0 -1
  214. package/dist/elements/HierarchySearch/index.d.ts.map +0 -1
  215. package/dist/elements/HierarchySearch/index.js.map +0 -1
  216. package/dist/elements/HierarchySearch/types.d.ts.map +0 -1
  217. package/dist/elements/HierarchySearch/types.js.map +0 -1
  218. package/dist/elements/HierarchySearch/useHierarchySearch.d.ts.map +0 -1
  219. package/dist/elements/HierarchySearch/useHierarchySearch.js.map +0 -1
  220. package/dist/elements/HierarchyTree/HierarchySidebarTab.d.ts.map +0 -1
  221. package/dist/elements/HierarchyTree/HierarchySidebarTab.js +0 -156
  222. package/dist/elements/HierarchyTree/HierarchySidebarTab.js.map +0 -1
  223. package/dist/elements/HierarchyTree/HierarchySidebarTab.server.d.ts.map +0 -1
  224. package/dist/elements/HierarchyTree/HierarchySidebarTab.server.js.map +0 -1
  225. package/dist/elements/HierarchyTree/LoadMore/LoadMoreButton.d.ts.map +0 -1
  226. package/dist/elements/HierarchyTree/LoadMore/LoadMoreButton.js +0 -36
  227. package/dist/elements/HierarchyTree/LoadMore/LoadMoreButton.js.map +0 -1
  228. package/dist/elements/HierarchyTree/LoadMore/index.d.ts.map +0 -1
  229. package/dist/elements/HierarchyTree/LoadMore/index.js +0 -29
  230. package/dist/elements/HierarchyTree/LoadMore/index.js.map +0 -1
  231. package/dist/elements/HierarchyTree/LoadMore/index.scss +0 -26
  232. package/dist/elements/HierarchyTree/TreeConnector.d.ts.map +0 -1
  233. package/dist/elements/HierarchyTree/TreeConnector.js.map +0 -1
  234. package/dist/elements/HierarchyTree/TreeFocusContext.d.ts.map +0 -1
  235. package/dist/elements/HierarchyTree/TreeFocusContext.js.map +0 -1
  236. package/dist/elements/HierarchyTree/TreeNode/index.d.ts +0 -5
  237. package/dist/elements/HierarchyTree/TreeNode/index.d.ts.map +0 -1
  238. package/dist/elements/HierarchyTree/TreeNode/index.js +0 -201
  239. package/dist/elements/HierarchyTree/TreeNode/index.js.map +0 -1
  240. package/dist/elements/HierarchyTree/TreeNode/index.scss +0 -99
  241. package/dist/elements/HierarchyTree/index.d.ts.map +0 -1
  242. package/dist/elements/HierarchyTree/index.js +0 -64
  243. package/dist/elements/HierarchyTree/index.js.map +0 -1
  244. package/dist/elements/HierarchyTree/index.scss +0 -42
  245. package/dist/elements/HierarchyTree/types.d.ts +0 -55
  246. package/dist/elements/HierarchyTree/types.d.ts.map +0 -1
  247. package/dist/elements/HierarchyTree/types.js.map +0 -1
  248. package/dist/elements/HierarchyTree/useChildren.d.ts +0 -26
  249. package/dist/elements/HierarchyTree/useChildren.d.ts.map +0 -1
  250. package/dist/elements/HierarchyTree/useChildren.js +0 -150
  251. package/dist/elements/HierarchyTree/useChildren.js.map +0 -1
  252. package/dist/elements/HierarchyTree/useTreeState.d.ts +0 -9
  253. package/dist/elements/HierarchyTree/useTreeState.d.ts.map +0 -1
  254. package/dist/elements/HierarchyTree/useTreeState.js +0 -50
  255. package/dist/elements/HierarchyTree/useTreeState.js.map +0 -1
  256. package/dist/elements/HydrateHierarchyProvider/index.d.ts +0 -4
  257. package/dist/elements/HydrateHierarchyProvider/index.d.ts.map +0 -1
  258. package/dist/elements/HydrateHierarchyProvider/index.js +0 -67
  259. package/dist/elements/HydrateHierarchyProvider/index.js.map +0 -1
  260. package/dist/elements/MoveMany/index.d.ts.map +0 -1
  261. package/dist/elements/MoveMany/index.js.map +0 -1
  262. package/dist/elements/Tree/LoadMore/LoadMoreButton.d.ts +0 -8
  263. package/dist/elements/Tree/LoadMore/LoadMoreButton.d.ts.map +0 -1
  264. package/dist/elements/Tree/LoadMore/LoadMoreButton.js.map +0 -1
  265. package/dist/elements/Tree/LoadMore/index.d.ts +0 -12
  266. package/dist/elements/Tree/LoadMore/index.d.ts.map +0 -1
  267. package/dist/elements/Tree/LoadMore/index.js.map +0 -1
  268. package/dist/elements/Tree/TreeConnector.d.ts +0 -7
  269. package/dist/elements/Tree/TreeConnector.d.ts.map +0 -1
  270. package/dist/elements/Tree/TreeConnector.js +0 -23
  271. package/dist/elements/Tree/TreeConnector.js.map +0 -1
  272. package/dist/elements/Tree/TreeFocusContext.d.ts +0 -28
  273. package/dist/elements/Tree/TreeFocusContext.d.ts.map +0 -1
  274. package/dist/elements/Tree/TreeFocusContext.js +0 -140
  275. package/dist/elements/Tree/TreeFocusContext.js.map +0 -1
  276. package/dist/elements/Tree/TreeNode/index.d.ts +0 -5
  277. package/dist/elements/Tree/TreeNode/index.d.ts.map +0 -1
  278. package/dist/elements/Tree/TreeNode/index.js.map +0 -1
  279. package/dist/elements/Tree/index.d.ts +0 -5
  280. package/dist/elements/Tree/index.d.ts.map +0 -1
  281. package/dist/elements/Tree/index.js +0 -258
  282. package/dist/elements/Tree/index.js.map +0 -1
  283. package/dist/elements/Tree/types.d.ts.map +0 -1
  284. package/dist/elements/Tree/types.js +0 -2
  285. package/dist/elements/Tree/types.js.map +0 -1
  286. package/dist/elements/Tree/useChildren.d.ts +0 -25
  287. package/dist/elements/Tree/useChildren.d.ts.map +0 -1
  288. package/dist/elements/Tree/useChildren.js.map +0 -1
  289. package/dist/exports/client/chunk-SH42NW5R.js +0 -29
  290. /package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/Column/index.d.ts +0 -0
  291. /package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/ColumnItem/index.d.ts +0 -0
  292. /package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/index.scss +0 -0
  293. /package/dist/elements/{HierarchyColumnBrowser → Hierarchy/ColumnBrowser}/types.js +0 -0
  294. /package/dist/elements/{HierarchyButton → Hierarchy/DocHeaderButton}/index.d.ts +0 -0
  295. /package/dist/elements/{HierarchyButton → Hierarchy/DocHeaderButton}/index.scss +0 -0
  296. /package/dist/elements/{HierarchyButton → Hierarchy/DocHeaderButton}/index.server.d.ts +0 -0
  297. /package/dist/elements/{HierarchyDrawer → Hierarchy/Drawer}/fetchAncestorPath.d.ts +0 -0
  298. /package/dist/elements/{HierarchyDrawer → Hierarchy/Drawer}/fetchAncestorPath.js +0 -0
  299. /package/dist/elements/{HierarchyDrawer → Hierarchy}/Drawer/index.scss +0 -0
  300. /package/dist/elements/{HierarchyDrawer → Hierarchy/Drawer}/types.js +0 -0
  301. /package/dist/elements/{HierarchyField → Hierarchy/Field}/SelectedHierarchies.d.ts +0 -0
  302. /package/dist/elements/{HierarchyField → Hierarchy/Field}/index.client.d.ts +0 -0
  303. /package/dist/elements/{HierarchyField → Hierarchy/Field}/index.server.d.ts +0 -0
  304. /package/dist/elements/{HierarchySearch → Hierarchy/Search}/HierarchySearchInput.d.ts +0 -0
  305. /package/dist/elements/{HierarchySearch → Hierarchy/Search}/HierarchySearchResultItem.d.ts +0 -0
  306. /package/dist/elements/{HierarchySearch → Hierarchy/Search}/HierarchySearchResultItem.js +0 -0
  307. /package/dist/elements/{HierarchySearch → Hierarchy/Search}/HierarchySearchResults.d.ts +0 -0
  308. /package/dist/elements/{HierarchySearch → Hierarchy/Search}/index.d.ts +0 -0
  309. /package/dist/elements/{HierarchySearch → Hierarchy/Search}/types.d.ts +0 -0
  310. /package/dist/elements/{HierarchySearch → Hierarchy/Search}/types.js +0 -0
  311. /package/dist/elements/{HierarchySearch → Hierarchy/Search}/useHierarchySearch.d.ts +0 -0
  312. /package/dist/elements/{HierarchyTree → Hierarchy/Tree}/HierarchySidebarTab.server.d.ts +0 -0
  313. /package/dist/elements/{HierarchyTree → Hierarchy/Tree}/LoadMore/LoadMoreButton.d.ts +0 -0
  314. /package/dist/elements/{HierarchyTree → Hierarchy/Tree}/LoadMore/index.d.ts +0 -0
  315. /package/dist/elements/{Tree → Hierarchy/Tree}/LoadMore/index.scss +0 -0
  316. /package/dist/elements/{HierarchyTree → Hierarchy/Tree}/TreeConnector.d.ts +0 -0
  317. /package/dist/elements/{HierarchyTree → Hierarchy/Tree}/TreeConnector.js +0 -0
  318. /package/dist/elements/{HierarchyTree → Hierarchy/Tree}/TreeFocusContext.d.ts +0 -0
  319. /package/dist/elements/{HierarchyTree → Hierarchy/Tree}/TreeFocusContext.js +0 -0
  320. /package/dist/elements/{HierarchyTree → Hierarchy/Tree}/types.js +0 -0
  321. /package/dist/exports/client/{DatePicker-CL2EGBVQ.js.map → DatePicker-T2DMDMM5.js.map} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","names":["getTranslation","useRouter","React","useId","useMemo","useRef","CreateDocumentButton","DelayedSpinner","TagIcon","useConfig","useTranslation","LoadMore","TreeFocusProvider","useTreeFocus","TreeNode","useChildren","baseClass","DEFAULT_TREE_LIMIT","getDocumentTitle","doc","useAsTitle","docId","id","idStr","String","value","TreeInner","allPossibleTypeValues","collectionSlug","expandedNodes","filterByCollections","icon","initialData","onNodeClick","parentFieldName","selectedNodeId","showAllOption","toggleNode","treeLimit","typeFieldName","moveFocus","router","i18n","t","getEntityConfig","createDrawerSlug","childrenCache","cache","Map","docs","length","docsByParent","parentId","parentKey","has","set","parentDocs","get","push","filterKey","slice","sort","join","cacheKey","parentMeta","loadedParents","loadedCount","currentPage","Math","ceil","children","hasMore","page","totalDocs","treeRef","rootNodes","isLoading","loadMore","loadMoreFromHook","refresh","enabled","limit","handleLoadMore","useCallback","handleNodeClick","_jsx","className","collectionLabel","buttonStyle","collections","drawerSlug","label","labels","singular","onSave","handleTreeKeyDown","e","key","preventDefault","isAllSelected","handleAllClick","_jsxs","onKeyDown","ref","role","tabIndex","onClick","color","plural","map","node","nodeId","nodeIdStr","nodeTitle","isSelected","depth","hasChildren","title","onSelect","onToggle","selected","currentCount","onLoadMore","Tree","props"],"sources":["../../../src/elements/Tree/index.tsx"],"sourcesContent":["'use client'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useRouter } from 'next/navigation.js'\nimport React, { useId, useMemo, useRef } from 'react'\n\nimport type { TreeDocument, TreeProps } from './types.js'\n\nimport { CreateDocumentButton } from '../../elements/CreateDocumentButton/index.js'\nimport { DelayedSpinner } from '../../elements/DelayedSpinner/index.js'\nimport { TagIcon } from '../../icons/Tag/index.js'\nimport { useConfig } from '../../providers/Config/index.js'\nimport { useTranslation } from '../../providers/Translation/index.js'\nimport { LoadMore } from './LoadMore/index.js'\nimport { TreeFocusProvider, useTreeFocus } from './TreeFocusContext.js'\nimport './index.scss'\nimport { TreeNode } from './TreeNode/index.js'\nimport { useChildren } from './useChildren.js'\n\nconst baseClass = 'tree'\nconst DEFAULT_TREE_LIMIT = 10\n\nconst getDocumentTitle = (doc: TreeDocument, useAsTitle: string | undefined): string => {\n const docId: number | string = doc.id\n const idStr = typeof docId === 'number' ? String(docId) : docId\n\n if (!useAsTitle) {\n return idStr\n }\n\n const value = doc[useAsTitle]\n if (value && (typeof value === 'string' || typeof value === 'number')) {\n return String(value)\n }\n return idStr\n}\n\nconst TreeInner: React.FC<TreeProps> = ({\n allPossibleTypeValues,\n collectionSlug,\n expandedNodes,\n filterByCollections,\n icon,\n initialData,\n onNodeClick,\n parentFieldName,\n selectedNodeId,\n showAllOption = true,\n toggleNode,\n treeLimit = DEFAULT_TREE_LIMIT,\n typeFieldName,\n useAsTitle,\n}) => {\n const { moveFocus } = useTreeFocus()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { getEntityConfig } = useConfig()\n const createDrawerSlug = `tree-create-${useId()}`\n\n // Pre-populate cache with initialData SYNCHRONOUSLY (before first render)\n // This ensures expanded children find their data immediately without client-side fetch\n const childrenCache = useRef(\n useMemo(() => {\n const cache = new Map()\n\n if (initialData && initialData.docs.length > 0) {\n // Group docs by parent to populate cache\n const docsByParent = new Map<string, TreeDocument[]>()\n\n for (const doc of initialData.docs) {\n const parentId = doc[parentFieldName] || 'null'\n const parentKey = String(parentId)\n\n if (!docsByParent.has(parentKey)) {\n docsByParent.set(parentKey, [])\n }\n const parentDocs = docsByParent.get(parentKey)\n if (parentDocs) {\n parentDocs.push(doc)\n }\n }\n\n // Populate cache with grouped docs and metadata from server\n const filterKey = filterByCollections?.length\n ? filterByCollections.slice().sort().join(',')\n : ''\n for (const [parentKey, docs] of docsByParent) {\n const cacheKey = `${collectionSlug}-${parentKey}-${filterKey}`\n const parentMeta = initialData.loadedParents[parentKey]\n\n if (parentMeta) {\n // Calculate page number based on loaded count\n // If server loaded multiple pages to find a selected node, loadedCount > treeLimit\n const loadedCount = parentMeta.loadedCount ?? docs.length\n const currentPage = Math.ceil(loadedCount / treeLimit) || 1\n\n cache.set(cacheKey, {\n children: docs,\n hasMore: parentMeta.hasMore,\n page: currentPage,\n totalDocs: parentMeta.totalDocs,\n })\n } else {\n // Shouldn't happen, but fallback to conservative estimate\n cache.set(cacheKey, {\n children: docs,\n hasMore: false,\n page: 1,\n totalDocs: docs.length,\n })\n }\n }\n }\n\n return cache\n }, [initialData, filterByCollections, parentFieldName, collectionSlug, treeLimit]),\n )\n const treeRef = useRef<HTMLDivElement>(null)\n\n // Fetch root nodes (items with no parent)\n const {\n children: rootNodes,\n hasMore,\n isLoading,\n loadMore: loadMoreFromHook,\n refresh,\n totalDocs,\n } = useChildren({\n allPossibleTypeValues,\n cache: childrenCache,\n collectionSlug,\n enabled: true,\n filterByCollections,\n initialData,\n limit: treeLimit,\n parentFieldName,\n parentId: 'null', // Special value to query for null parent\n typeFieldName,\n useAsTitle,\n })\n\n // Wrap loadMore - focusedId stays the same, tabindex handles the rest\n const handleLoadMore = React.useCallback(async () => {\n await loadMoreFromHook()\n }, [loadMoreFromHook])\n\n const handleNodeClick = ({ id }: { id: number | string }) => {\n if (onNodeClick) {\n onNodeClick({ id })\n }\n }\n\n // Show loading state with delay to prevent flash\n if (isLoading && !rootNodes) {\n return (\n <div className={baseClass}>\n <DelayedSpinner baseClass={baseClass} isLoading={true} />\n </div>\n )\n }\n\n // Show empty state after loading completes\n if (!rootNodes || rootNodes.length === 0) {\n const collectionLabel = getEntityConfig({ collectionSlug })\n return (\n <div className={baseClass}>\n <CreateDocumentButton\n buttonStyle=\"primary\"\n collections={[{ collectionSlug }]}\n drawerSlug={createDrawerSlug}\n label={t('general:createNewLabel', {\n label: getTranslation(collectionLabel.labels.singular, i18n),\n })}\n onSave={async () => {\n await refresh()\n router.refresh()\n }}\n />\n </div>\n )\n }\n\n const handleTreeKeyDown = (e: React.KeyboardEvent) => {\n if (e.key === 'ArrowDown') {\n e.preventDefault()\n moveFocus('down')\n } else if (e.key === 'ArrowUp') {\n e.preventDefault()\n moveFocus('up')\n }\n }\n\n const isAllSelected = selectedNodeId === null\n\n const handleAllClick = () => {\n if (onNodeClick) {\n onNodeClick({ id: null })\n }\n }\n\n return (\n <div\n className={baseClass}\n onKeyDown={handleTreeKeyDown}\n ref={treeRef}\n role=\"tree\"\n tabIndex={-1}\n >\n {showAllOption && (\n <div\n aria-selected={isAllSelected}\n className={`${baseClass}__all-option${isAllSelected ? ` ${baseClass}__all-option--selected` : ''}`}\n onClick={handleAllClick}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n handleAllClick()\n }\n }}\n role=\"treeitem\"\n tabIndex={0}\n >\n {icon || <TagIcon color=\"muted\" />}\n <span>\n {t('general:all')}{' '}\n {getTranslation(getEntityConfig({ collectionSlug })?.labels?.plural, i18n)}\n </span>\n </div>\n )}\n {rootNodes.map((node) => {\n const nodeId: number | string = node.id\n const nodeIdStr = typeof nodeId === 'number' ? String(nodeId) : nodeId\n const nodeTitle = getDocumentTitle(node, useAsTitle)\n const isSelected = nodeIdStr === String(selectedNodeId)\n\n return (\n <TreeNode\n allPossibleTypeValues={allPossibleTypeValues}\n cache={childrenCache}\n collectionSlug={collectionSlug}\n depth={0}\n expandedNodes={expandedNodes}\n filterByCollections={filterByCollections}\n key={nodeIdStr}\n limit={treeLimit}\n node={{\n id: nodeId,\n hasChildren: true,\n title: nodeTitle,\n }}\n onSelect={handleNodeClick}\n onToggle={toggleNode}\n parentFieldName={parentFieldName}\n selected={isSelected}\n selectedNodeId={selectedNodeId}\n typeFieldName={typeFieldName}\n useAsTitle={useAsTitle}\n />\n )\n })}\n {hasMore && (\n <LoadMore\n currentCount={rootNodes.length}\n depth={0}\n id=\"load-more-root\"\n onLoadMore={handleLoadMore}\n totalDocs={totalDocs}\n />\n )}\n </div>\n )\n}\n\nexport const Tree: React.FC<TreeProps> = (props) => {\n return (\n <TreeFocusProvider>\n <TreeInner {...props} />\n </TreeFocusProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/elements/Tree/types.ts"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export {};
2
- //# sourceMappingURL=types.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"types.js","names":[],"sources":["../../../src/elements/Tree/types.ts"],"sourcesContent":["import type { MutableRefObject, ReactNode } from 'react'\n\nexport type TreeDocument = {\n [key: string]: unknown\n id: number | string\n}\n\nexport type TreeNodeData = {\n hasChildren: boolean\n id: number | string\n title: string\n}\n\nexport type CachedChildren = {\n children: TreeDocument[]\n hasMore: boolean\n page: number\n totalDocs: number\n}\n\nexport type TreeCache = MutableRefObject<Map<string, CachedChildren>>\n\nexport type TreeInitialData = {\n docs: TreeDocument[]\n loadedParents: Record<string, { hasMore: boolean; loadedCount?: number; totalDocs: number }>\n}\n\nexport type TreeProps = {\n allPossibleTypeValues?: string[]\n collectionSlug: string\n expandedNodes: Set<number | string>\n filterByCollections?: string[]\n icon?: ReactNode\n initialData?: null | TreeInitialData\n onNodeClick?: ({ id }: { id: null | number | string }) => void\n parentFieldName: string\n selectedNodeId?: null | number | string\n showAllOption?: boolean\n toggleNode: ({ id }: { id: number | string }) => void\n treeLimit?: number\n typeFieldName?: string\n useAsTitle?: string\n}\n\nexport type TreeNodeProps = {\n allPossibleTypeValues?: string[]\n cache: TreeCache\n collectionSlug: string\n depth: number\n expandedNodes: Set<number | string>\n filterByCollections?: string[]\n limit: number\n node: TreeNodeData\n onSelect?: ({ id }: { id: number | string }) => void\n onToggle: ({ id }: { id: number | string }) => void\n parentFieldName: string\n selected?: boolean\n selectedNodeId?: number | string\n typeFieldName?: null | string\n useAsTitle?: string\n}\n"],"mappings":"AA4CA","ignoreList":[]}
@@ -1,25 +0,0 @@
1
- import type { TreeCache, TreeDocument, TreeInitialData } from './types.js';
2
- type UseChildrenArgs = {
3
- allPossibleTypeValues?: string[];
4
- cache?: TreeCache;
5
- collectionSlug: string;
6
- enabled?: boolean;
7
- filterByCollections?: string[];
8
- initialData?: null | TreeInitialData;
9
- limit?: number;
10
- parentFieldName: string;
11
- parentId: number | string;
12
- typeFieldName?: null | string;
13
- useAsTitle?: string;
14
- };
15
- type UseChildrenReturn = {
16
- children: null | TreeDocument[];
17
- hasMore: boolean;
18
- isLoading: boolean;
19
- loadMore: () => Promise<TreeDocument[]>;
20
- refresh: () => Promise<TreeDocument[]>;
21
- totalDocs: number;
22
- };
23
- export declare const useChildren: ({ allPossibleTypeValues, cache, collectionSlug, enabled, filterByCollections, initialData, limit, parentFieldName, parentId, typeFieldName, useAsTitle, }: UseChildrenArgs) => UseChildrenReturn;
24
- export {};
25
- //# sourceMappingURL=useChildren.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"useChildren.d.ts","sourceRoot":"","sources":["../../../src/elements/Tree/useChildren.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAkB,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAK1F,KAAK,eAAe,GAAG;IACrB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAA;IAChC,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,cAAc,EAAE,MAAM,CAAA;IACtB,OAAO,CAAC,EAAE,OAAO,CAAA;IACjB,mBAAmB,CAAC,EAAE,MAAM,EAAE,CAAA;IAC9B,WAAW,CAAC,EAAE,IAAI,GAAG,eAAe,CAAA;IACpC,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,eAAe,EAAE,MAAM,CAAA;IACvB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;IACzB,aAAa,CAAC,EAAE,IAAI,GAAG,MAAM,CAAA;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAA;CACpB,CAAA;AAED,KAAK,iBAAiB,GAAG;IACvB,QAAQ,EAAE,IAAI,GAAG,YAAY,EAAE,CAAA;IAC/B,OAAO,EAAE,OAAO,CAAA;IAChB,SAAS,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IACvC,OAAO,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IACtC,SAAS,EAAE,MAAM,CAAA;CAClB,CAAA;AAED,eAAO,MAAM,WAAW,8JAYrB,eAAe,KAAG,iBAuOpB,CAAA"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"useChildren.js","names":["formatAdminURL","qs","useCallback","useEffect","useRef","useState","useConfig","isSuperset","useChildren","allPossibleTypeValues","cache","collectionSlug","enabled","filterByCollections","initialData","limit","parentFieldName","parentId","typeFieldName","useAsTitle","filterKey","length","slice","sort","join","cacheKey","cachedData","current","get","parentKey","String","parentMeta","loadedParents","hasInitialData","initialDocsForParent","docs","filter","doc","docParent","children","setChildren","isLoading","setIsLoading","page","setPage","totalDocs","setTotalDocs","hasMore","setHasMore","initializedRef","config","routes","api","serverURL","fetchPage","pageToFetch","currentChildren","parentCondition","or","exists","equals","filterCondition","in","not_in","where","and","queryParams","queryString","stringify","addQueryPrefix","url","apiRoute","path","response","fetch","credentials","ok","Error","data","json","allDocs","newDocs","newChildren","hasNextPage","set","emptyChildren","prevFilterKeyRef","loadMore","shouldRefetchPage1","refresh","delete"],"sources":["../../../src/elements/Tree/useChildren.tsx"],"sourcesContent":["import { formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport { useCallback, useEffect, useRef, useState } from 'react'\n\nimport type { CachedChildren, TreeCache, TreeDocument, TreeInitialData } from './types.js'\n\nimport { useConfig } from '../../providers/Config/index.js'\nimport { isSuperset } from '../../utilities/isSuperset.js'\n\ntype UseChildrenArgs = {\n allPossibleTypeValues?: string[]\n cache?: TreeCache\n collectionSlug: string\n enabled?: boolean\n filterByCollections?: string[]\n initialData?: null | TreeInitialData\n limit?: number\n parentFieldName: string\n parentId: number | string\n typeFieldName?: null | string\n useAsTitle?: string\n}\n\ntype UseChildrenReturn = {\n children: null | TreeDocument[]\n hasMore: boolean\n isLoading: boolean\n loadMore: () => Promise<TreeDocument[]>\n refresh: () => Promise<TreeDocument[]>\n totalDocs: number\n}\n\nexport const useChildren = ({\n allPossibleTypeValues,\n cache,\n collectionSlug,\n enabled = true,\n filterByCollections,\n initialData,\n limit = 2,\n parentFieldName,\n parentId,\n typeFieldName,\n useAsTitle,\n}: UseChildrenArgs): UseChildrenReturn => {\n const filterKey = filterByCollections?.length ? filterByCollections.slice().sort().join(',') : ''\n const cacheKey = `${collectionSlug}-${parentId}-${filterKey}`\n const cachedData = cache?.current.get(cacheKey)\n\n // Check if we have initial data for this specific parent\n const parentKey = parentId === 'null' ? 'null' : String(parentId)\n const parentMeta = initialData?.loadedParents?.[parentKey]\n const hasInitialData = !!parentMeta\n\n // Extract docs for this parent from initialData if available\n // Apply same superset filter as fetchPage for consistency\n const initialDocsForParent = hasInitialData\n ? initialData.docs.filter((doc) => {\n const docParent = doc[parentFieldName] || 'null'\n if (String(docParent) !== parentKey) {\n return false\n }\n if (filterByCollections?.length && typeFieldName) {\n return isSuperset(doc[typeFieldName] as string[] | undefined, filterByCollections)\n }\n return true\n })\n : null\n\n const [children, setChildren] = useState<null | TreeDocument[]>(\n initialDocsForParent || cachedData?.children || null,\n )\n const [isLoading, setIsLoading] = useState(!hasInitialData && !cachedData && enabled)\n const [page, setPage] = useState(cachedData?.page || 1)\n const [totalDocs, setTotalDocs] = useState(parentMeta?.totalDocs || cachedData?.totalDocs || 0)\n const [hasMore, setHasMore] = useState(parentMeta?.hasMore || cachedData?.hasMore || false)\n const initializedRef = useRef(!!hasInitialData)\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const fetchPage = useCallback(\n async (\n pageToFetch: number,\n currentChildren: null | TreeDocument[],\n ): Promise<TreeDocument[]> => {\n setIsLoading(true)\n\n try {\n const parentCondition =\n parentId === 'null' || parentId === null\n ? {\n or: [\n { [parentFieldName]: { exists: false } },\n { [parentFieldName]: { equals: null } },\n ],\n }\n : { [parentFieldName]: { equals: parentId } }\n\n // Build filter condition for collection type filtering\n // Matches items that:\n // - allow ANY of the selected collections, OR\n // - are unrestricted (type field doesn't exist), OR\n // - have empty allowedTypes array (unrestricted)\n const filterCondition =\n filterByCollections?.length && typeFieldName\n ? {\n or: [\n { [typeFieldName]: { in: filterByCollections } },\n { [typeFieldName]: { exists: false } },\n // Using not_in with all possible values matches empty arrays in both MongoDB and Postgres\n ...(allPossibleTypeValues?.length\n ? [{ [typeFieldName]: { not_in: allPossibleTypeValues } }]\n : []),\n ],\n }\n : null\n\n // Combine conditions with AND if filter is active\n const where = filterCondition\n ? { and: [parentCondition, filterCondition] }\n : parentCondition\n\n const queryParams: Record<string, unknown> = {\n limit,\n page: pageToFetch,\n sort: useAsTitle ?? 'id',\n where,\n }\n\n const queryString = qs.stringify(queryParams, { addQueryPrefix: true })\n const url = formatAdminURL({\n apiRoute: api,\n path: `/${collectionSlug}${queryString}`,\n serverURL,\n })\n const response = await fetch(url, {\n credentials: 'include',\n })\n\n if (!response.ok) {\n throw new Error('Failed to fetch children')\n }\n\n const data = await response.json()\n const allDocs: TreeDocument[] = data.docs || []\n\n // Client-side filter: only show items that are a superset of required collections\n // Server query uses ANY (due to PG limitations), but we want ALL (superset)\n const newDocs =\n filterByCollections?.length && typeFieldName\n ? allDocs.filter((doc) =>\n isSuperset(doc[typeFieldName] as string[] | undefined, filterByCollections),\n )\n : allDocs\n\n const newChildren = pageToFetch === 1 ? newDocs : [...(currentChildren || []), ...newDocs]\n\n setChildren(newChildren)\n setTotalDocs(data.totalDocs || 0)\n setHasMore(data.hasNextPage || false)\n setPage(pageToFetch)\n\n if (cache) {\n cache.current.set(cacheKey, {\n children: newChildren,\n hasMore: data.hasNextPage || false,\n page: pageToFetch,\n totalDocs: data.totalDocs || 0,\n })\n }\n\n return newDocs\n } catch {\n if (pageToFetch === 1) {\n const emptyChildren: TreeDocument[] = []\n setChildren(emptyChildren)\n setHasMore(false)\n\n if (cache) {\n cache.current.set(cacheKey, {\n children: emptyChildren,\n hasMore: false,\n page: 1,\n totalDocs: 0,\n })\n }\n }\n\n return []\n } finally {\n setIsLoading(false)\n }\n },\n [\n allPossibleTypeValues,\n parentId,\n filterKey,\n parentFieldName,\n filterByCollections,\n typeFieldName,\n limit,\n useAsTitle,\n api,\n collectionSlug,\n serverURL,\n cache,\n cacheKey,\n ],\n )\n\n // Reset state when filter changes\n const prevFilterKeyRef = useRef(filterKey)\n useEffect(() => {\n if (prevFilterKeyRef.current !== filterKey) {\n prevFilterKeyRef.current = filterKey\n setChildren(null)\n setPage(1)\n setTotalDocs(0)\n setHasMore(false)\n }\n }, [filterKey])\n\n useEffect(() => {\n if (!enabled) {\n return\n }\n\n // Skip initial fetch if we have initialData\n if (initializedRef.current && children !== null) {\n initializedRef.current = false\n return\n }\n\n // Restore from cache if children was reset (e.g., filter changed)\n if (cachedData && children === null) {\n setChildren(cachedData.children)\n setPage(cachedData.page)\n setTotalDocs(cachedData.totalDocs)\n setHasMore(cachedData.hasMore)\n return\n }\n\n if (cachedData && page === cachedData.page) {\n return\n }\n\n void fetchPage(page, children)\n }, [enabled, page, cachedData, fetchPage, children])\n\n const loadMore = useCallback(async (): Promise<TreeDocument[]> => {\n if (isLoading || !hasMore) {\n return []\n }\n\n // If we have fewer items than our limit, the cached data was fetched with a smaller limit\n // We need to re-fetch page 1 with our limit to get the full first page\n const shouldRefetchPage1 = children && children.length < limit\n\n return fetchPage(shouldRefetchPage1 ? 1 : page + 1, children)\n }, [isLoading, hasMore, page, children, fetchPage, limit])\n\n const refresh = useCallback(async (): Promise<TreeDocument[]> => {\n if (cache) {\n cache.current.delete(cacheKey)\n }\n setChildren(null)\n setPage(1)\n return fetchPage(1, null)\n }, [cache, cacheKey, fetchPage])\n\n return { children, hasMore, isLoading, loadMore, refresh, totalDocs }\n}\n"],"mappings":"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","ignoreList":[]}