@payloadcms/ui 4.0.0-internal.f05c47f → 4.0.0-internal.f15737c

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 (1575) hide show
  1. package/dist/css/app.css +2 -1
  2. package/dist/css/forms.css +0 -1
  3. package/dist/css/preflight.css +1 -0
  4. package/dist/css/spacing.css +4 -1
  5. package/dist/css/typography.css +161 -55
  6. package/dist/elements/APIKeyInput/index.css +2 -2
  7. package/dist/elements/APIKeyInput/index.d.ts +2 -0
  8. package/dist/elements/APIKeyInput/index.d.ts.map +1 -1
  9. package/dist/elements/APIKeyInput/index.js +27 -29
  10. package/dist/elements/APIKeyInput/index.js.map +1 -1
  11. package/dist/elements/AddNewRelation/index.css +0 -4
  12. package/dist/elements/AddNewRelation/index.d.ts.map +1 -1
  13. package/dist/elements/AddNewRelation/index.js +3 -2
  14. package/dist/elements/AddNewRelation/index.js.map +1 -1
  15. package/dist/elements/AppHeader/index.css +7 -0
  16. package/dist/elements/AppHeader/index.d.ts +1 -8
  17. package/dist/elements/AppHeader/index.d.ts.map +1 -1
  18. package/dist/elements/AppHeader/index.js +10 -19
  19. package/dist/elements/AppHeader/index.js.map +1 -1
  20. package/dist/elements/ArrayAction/index.d.ts +1 -0
  21. package/dist/elements/ArrayAction/index.d.ts.map +1 -1
  22. package/dist/elements/ArrayAction/index.js +35 -32
  23. package/dist/elements/ArrayAction/index.js.map +1 -1
  24. package/dist/elements/Autosave/index.d.ts.map +1 -1
  25. package/dist/elements/Autosave/index.js +2 -6
  26. package/dist/elements/Autosave/index.js.map +1 -1
  27. package/dist/elements/Banner/index.css +7 -4
  28. package/dist/elements/Banner/index.d.ts.map +1 -1
  29. package/dist/elements/Banner/index.js +1 -0
  30. package/dist/elements/Banner/index.js.map +1 -1
  31. package/dist/elements/BulkUpload/ActionsBar/index.css +1 -0
  32. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  33. package/dist/elements/BulkUpload/ActionsBar/index.js +12 -10
  34. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  35. package/dist/elements/BulkUpload/AddFilesView/index.css +15 -4
  36. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  37. package/dist/elements/BulkUpload/AddFilesView/index.js +111 -50
  38. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  39. package/dist/elements/BulkUpload/AddingFilesView/index.css +2 -4
  40. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  41. package/dist/elements/BulkUpload/AddingFilesView/index.js +25 -20
  42. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  43. package/dist/elements/BulkUpload/EditMany/index.css +4 -5
  44. package/dist/elements/BulkUpload/FileSidebar/index.css +1 -1
  45. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  46. package/dist/elements/BulkUpload/FileSidebar/index.js +29 -36
  47. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts +1 -1
  49. package/dist/elements/BulkUpload/FormsManager/createFormData.d.ts.map +1 -1
  50. package/dist/elements/BulkUpload/FormsManager/createFormData.js +7 -3
  51. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  52. package/dist/elements/BulkUpload/FormsManager/index.d.ts +2 -1
  53. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  54. package/dist/elements/BulkUpload/FormsManager/index.js +191 -74
  55. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  56. package/dist/elements/BulkUpload/index.css +2 -0
  57. package/dist/elements/BulkUpload/useUploadCollectionOptions.d.ts +6 -0
  58. package/dist/elements/BulkUpload/useUploadCollectionOptions.d.ts.map +1 -0
  59. package/dist/elements/BulkUpload/useUploadCollectionOptions.js +74 -0
  60. package/dist/elements/BulkUpload/useUploadCollectionOptions.js.map +1 -0
  61. package/dist/elements/Button/index.css +7 -1
  62. package/dist/elements/Button/index.d.ts.map +1 -1
  63. package/dist/elements/Button/index.js +13 -0
  64. package/dist/elements/Button/index.js.map +1 -1
  65. package/dist/elements/Button/types.d.ts +8 -3
  66. package/dist/elements/Button/types.d.ts.map +1 -1
  67. package/dist/elements/Button/types.js.map +1 -1
  68. package/dist/elements/Card/index.css +7 -8
  69. package/dist/elements/CardGrid/index.css +20 -0
  70. package/dist/elements/CardGrid/index.d.ts +13 -0
  71. package/dist/elements/CardGrid/index.d.ts.map +1 -0
  72. package/dist/elements/CardGrid/index.js +23 -0
  73. package/dist/elements/CardGrid/index.js.map +1 -0
  74. package/dist/elements/Chip/index.css +0 -1
  75. package/dist/elements/ClipboardAction/index.d.ts.map +1 -1
  76. package/dist/elements/ClipboardAction/index.js +1 -0
  77. package/dist/elements/ClipboardAction/index.js.map +1 -1
  78. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.d.ts.map +1 -1
  79. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +10 -3
  80. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  81. package/dist/elements/CollapseAllToggle/index.d.ts +3 -0
  82. package/dist/elements/CollapseAllToggle/index.d.ts.map +1 -1
  83. package/dist/elements/CollapseAllToggle/index.js +36 -22
  84. package/dist/elements/CollapseAllToggle/index.js.map +1 -1
  85. package/dist/elements/Collapsible/index.css +5 -1
  86. package/dist/elements/Collapsible/index.d.ts +2 -0
  87. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  88. package/dist/elements/Collapsible/index.js +67 -46
  89. package/dist/elements/Collapsible/index.js.map +1 -1
  90. package/dist/elements/ColumnSelection/Popup.css +14 -11
  91. package/dist/elements/ColumnSelection/Popup.d.ts.map +1 -1
  92. package/dist/elements/ColumnSelection/Popup.js +25 -17
  93. package/dist/elements/ColumnSelection/Popup.js.map +1 -1
  94. package/dist/elements/ColumnSelection/index.d.ts.map +1 -1
  95. package/dist/elements/ColumnSelection/index.js +59 -55
  96. package/dist/elements/ColumnSelection/index.js.map +1 -1
  97. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts +10 -0
  98. package/dist/elements/ColumnSelection/matchesColumnSearch.d.ts.map +1 -0
  99. package/dist/elements/ColumnSelection/matchesColumnSearch.js +21 -0
  100. package/dist/elements/ColumnSelection/matchesColumnSearch.js.map +1 -0
  101. package/dist/elements/Combobox/index.css +23 -76
  102. package/dist/elements/Combobox/index.d.ts +0 -7
  103. package/dist/elements/Combobox/index.d.ts.map +1 -1
  104. package/dist/elements/Combobox/index.js +22 -58
  105. package/dist/elements/Combobox/index.js.map +1 -1
  106. package/dist/elements/CommandPalette/index.css +3 -8
  107. package/dist/elements/CopyLocaleData/index.d.ts.map +1 -1
  108. package/dist/elements/CopyLocaleData/index.js +9 -9
  109. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  110. package/dist/elements/CopyToClipboard/index.d.ts.map +1 -1
  111. package/dist/elements/CopyToClipboard/index.js +62 -54
  112. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  113. package/dist/elements/CreateDocumentButton/index.d.ts.map +1 -1
  114. package/dist/elements/CreateDocumentButton/index.js +57 -33
  115. package/dist/elements/CreateDocumentButton/index.js.map +1 -1
  116. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  117. package/dist/elements/DatePicker/DatePicker.js +188 -85
  118. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  119. package/dist/elements/DatePicker/hasAmbiguousYearInput.d.ts +8 -0
  120. package/dist/elements/DatePicker/hasAmbiguousYearInput.d.ts.map +1 -0
  121. package/dist/elements/DatePicker/hasAmbiguousYearInput.js +37 -0
  122. package/dist/elements/DatePicker/hasAmbiguousYearInput.js.map +1 -0
  123. package/dist/elements/DatePicker/index.css +34 -17
  124. package/dist/elements/DatePicker/useDatePickerKeyboard.d.ts +18 -0
  125. package/dist/elements/DatePicker/useDatePickerKeyboard.d.ts.map +1 -0
  126. package/dist/elements/DatePicker/useDatePickerKeyboard.js +212 -0
  127. package/dist/elements/DatePicker/useDatePickerKeyboard.js.map +1 -0
  128. package/dist/elements/DefaultListViewTabs/index.d.ts.map +1 -1
  129. package/dist/elements/DefaultListViewTabs/index.js +9 -7
  130. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  131. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  132. package/dist/elements/DeleteDocument/index.js +2 -9
  133. package/dist/elements/DeleteDocument/index.js.map +1 -1
  134. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  135. package/dist/elements/DeleteMany/index.js +3 -7
  136. package/dist/elements/DeleteMany/index.js.map +1 -1
  137. package/dist/elements/Dialog/DialogModal/index.d.ts +1 -1
  138. package/dist/elements/Dialog/DialogModal/index.d.ts.map +1 -1
  139. package/dist/elements/Dialog/DialogModal/index.js +40 -28
  140. package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
  141. package/dist/elements/Dialog/DialogTitle/index.css +1 -1
  142. package/dist/elements/Dialog/index.css +2 -2
  143. package/dist/elements/DocumentCard/index.css +73 -0
  144. package/dist/elements/DocumentCard/index.d.ts +18 -0
  145. package/dist/elements/DocumentCard/index.d.ts.map +1 -0
  146. package/dist/elements/DocumentCard/index.js +182 -0
  147. package/dist/elements/DocumentCard/index.js.map +1 -0
  148. package/dist/elements/DocumentControls/index.css +2 -5
  149. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  150. package/dist/elements/DocumentControls/index.js +1 -0
  151. package/dist/elements/DocumentControls/index.js.map +1 -1
  152. package/dist/elements/DocumentDrawer/DrawerHeader/index.css +4 -7
  153. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +2 -2
  154. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  155. package/dist/elements/DocumentDrawer/types.d.ts +1 -1
  156. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  157. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  158. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.css +40 -0
  159. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.d.ts +4 -0
  160. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.d.ts.map +1 -0
  161. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.js +88 -0
  162. package/dist/elements/DocumentFields/RequiredFieldsInfo/index.js.map +1 -0
  163. package/dist/elements/DocumentFields/index.css +2 -0
  164. package/dist/elements/DocumentFields/index.d.ts.map +1 -1
  165. package/dist/elements/DocumentFields/index.js +2 -1
  166. package/dist/elements/DocumentFields/index.js.map +1 -1
  167. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +1 -0
  168. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  169. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +3 -3
  170. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  171. package/dist/elements/DocumentHeader/Tabs/index.css +1 -0
  172. package/dist/elements/DocumentHeader/Tabs/index.d.ts +1 -0
  173. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  174. package/dist/elements/DocumentHeader/Tabs/index.js +5 -3
  175. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  176. package/dist/elements/DocumentHeader/index.css +2 -1
  177. package/dist/elements/DocumentHeader/index.d.ts +1 -0
  178. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  179. package/dist/elements/DocumentHeader/index.js +4 -2
  180. package/dist/elements/DocumentHeader/index.js.map +1 -1
  181. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts +1 -1
  182. package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts.map +1 -1
  183. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  184. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  185. package/dist/elements/DraggableSortable/index.js +13 -10
  186. package/dist/elements/DraggableSortable/index.js.map +1 -1
  187. package/dist/elements/DraggableSortable/types.d.ts +1 -0
  188. package/dist/elements/DraggableSortable/types.d.ts.map +1 -1
  189. package/dist/elements/DraggableSortable/types.js.map +1 -1
  190. package/dist/elements/DraggableSortable/useDraggableSortable/index.d.ts.map +1 -1
  191. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +11 -8
  192. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  193. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts +1 -0
  194. package/dist/elements/DraggableSortable/useDraggableSortable/types.d.ts.map +1 -1
  195. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  196. package/dist/elements/Drawer/index.css +4 -5
  197. package/dist/elements/Drawer/index.d.ts.map +1 -1
  198. package/dist/elements/Drawer/index.js +3 -1
  199. package/dist/elements/Drawer/index.js.map +1 -1
  200. package/dist/elements/Drawer/types.d.ts +2 -2
  201. package/dist/elements/Drawer/types.d.ts.map +1 -1
  202. package/dist/elements/Drawer/types.js.map +1 -1
  203. package/dist/elements/Dropzone/index.css +10 -4
  204. package/dist/elements/Dropzone/index.d.ts +2 -1
  205. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  206. package/dist/elements/Dropzone/index.js +9 -10
  207. package/dist/elements/Dropzone/index.js.map +1 -1
  208. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  209. package/dist/elements/DuplicateDocument/index.js +3 -9
  210. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  211. package/dist/elements/EditMany/DrawerContent.d.ts.map +1 -1
  212. package/dist/elements/EditMany/DrawerContent.js +3 -7
  213. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  214. package/dist/elements/EditMany/index.css +4 -5
  215. package/dist/elements/EditUpload/index.css +5 -5
  216. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  217. package/dist/elements/EditUpload/index.js +66 -14
  218. package/dist/elements/EditUpload/index.js.map +1 -1
  219. package/dist/elements/ErrorPill/index.css +0 -1
  220. package/dist/elements/FieldDiffContainer/index.css +1 -1
  221. package/dist/elements/FieldDiffContainer/index.js +1 -1
  222. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  223. package/dist/elements/FieldDiffLabel/index.css +5 -5
  224. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  225. package/dist/elements/FieldSelect/index.js +41 -24
  226. package/dist/elements/FieldSelect/index.js.map +1 -1
  227. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts +5 -1
  228. package/dist/elements/FieldSelect/reduceFieldOptions.d.ts.map +1 -1
  229. package/dist/elements/FieldSelect/reduceFieldOptions.js +24 -4
  230. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  231. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts +1 -1
  232. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  233. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  234. package/dist/elements/FileDetails/FileMeta/index.d.ts +1 -1
  235. package/dist/elements/FileDetails/FileMeta/index.d.ts.map +1 -1
  236. package/dist/elements/FileDetails/FileMeta/index.js +41 -21
  237. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  238. package/dist/elements/FileDetails/StaticFileDetails/index.css +2 -0
  239. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts +1 -1
  240. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  241. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  242. package/dist/elements/FileDetails/index.d.ts +1 -1
  243. package/dist/elements/FileDetails/index.d.ts.map +1 -1
  244. package/dist/elements/FileDetails/index.js.map +1 -1
  245. package/dist/elements/FileManager/FilePreview/index.css +2 -3
  246. package/dist/elements/FileManager/FilePreview/index.js +4 -4
  247. package/dist/elements/FileManager/FilePreview/index.js.map +1 -1
  248. package/dist/elements/FileManager/FileToolbar/index.css +2 -3
  249. package/dist/elements/FileManager/FileToolbar/index.d.ts.map +1 -1
  250. package/dist/elements/FileManager/FileToolbar/index.js +1 -0
  251. package/dist/elements/FileManager/FileToolbar/index.js.map +1 -1
  252. package/dist/elements/FileManager/index.css +0 -31
  253. package/dist/elements/FileManager/index.d.ts.map +1 -1
  254. package/dist/elements/FileManager/index.js +412 -298
  255. package/dist/elements/FileManager/index.js.map +1 -1
  256. package/dist/elements/FilterTrigger/index.d.ts +5 -1
  257. package/dist/elements/FilterTrigger/index.d.ts.map +1 -1
  258. package/dist/elements/FilterTrigger/index.js +6 -0
  259. package/dist/elements/FilterTrigger/index.js.map +1 -1
  260. package/dist/elements/FormHeader/index.css +0 -2
  261. package/dist/elements/FullscreenModal/index.d.ts.map +1 -1
  262. package/dist/elements/FullscreenModal/index.js +1 -1
  263. package/dist/elements/FullscreenModal/index.js.map +1 -1
  264. package/dist/elements/GroupBy/Popup.css +3 -6
  265. package/dist/elements/GroupBy/Popup.d.ts.map +1 -1
  266. package/dist/elements/GroupBy/Popup.js +74 -45
  267. package/dist/elements/GroupBy/Popup.js.map +1 -1
  268. package/dist/elements/GroupBy/index.d.ts.map +1 -1
  269. package/dist/elements/GroupBy/index.js +2 -0
  270. package/dist/elements/GroupBy/index.js.map +1 -1
  271. package/dist/elements/HTMLDiff/index.css +1 -1
  272. package/dist/elements/HTMLDiff/index.d.ts +3 -1
  273. package/dist/elements/HTMLDiff/index.d.ts.map +1 -1
  274. package/dist/elements/HTMLDiff/index.js +9 -3
  275. package/dist/elements/HTMLDiff/index.js.map +1 -1
  276. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.css +3 -0
  277. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.d.ts.map +1 -1
  278. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js +60 -47
  279. package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
  280. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.d.ts.map +1 -1
  281. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +47 -36
  282. package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
  283. package/dist/elements/Hierarchy/ColumnBrowser/index.d.ts.map +1 -1
  284. package/dist/elements/Hierarchy/ColumnBrowser/index.js +15 -61
  285. package/dist/elements/Hierarchy/ColumnBrowser/index.js.map +1 -1
  286. package/dist/elements/Hierarchy/DocHeaderButton/index.d.ts.map +1 -1
  287. package/dist/elements/Hierarchy/DocHeaderButton/index.js +29 -1
  288. package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
  289. package/dist/elements/Hierarchy/EditButton/index.d.ts +8 -0
  290. package/dist/elements/Hierarchy/EditButton/index.d.ts.map +1 -0
  291. package/dist/elements/Hierarchy/EditButton/index.js +93 -0
  292. package/dist/elements/Hierarchy/EditButton/index.js.map +1 -0
  293. package/dist/elements/Hierarchy/Field/SelectedHierarchies.d.ts.map +1 -1
  294. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js +1 -4
  295. package/dist/elements/Hierarchy/Field/SelectedHierarchies.js.map +1 -1
  296. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.d.ts +9 -0
  297. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.d.ts.map +1 -0
  298. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.js +41 -0
  299. package/dist/elements/Hierarchy/Field/getHierarchyFilterOptions.js.map +1 -0
  300. package/dist/elements/Hierarchy/Field/index.client.d.ts.map +1 -1
  301. package/dist/elements/Hierarchy/Field/index.client.js +120 -105
  302. package/dist/elements/Hierarchy/Field/index.client.js.map +1 -1
  303. package/dist/elements/Hierarchy/Field/index.css +0 -1
  304. package/dist/elements/Hierarchy/Field/index.server.d.ts +3 -2
  305. package/dist/elements/Hierarchy/Field/index.server.d.ts.map +1 -1
  306. package/dist/elements/Hierarchy/Field/index.server.js.map +1 -1
  307. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts +1 -2
  308. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.d.ts.map +1 -1
  309. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js +0 -2
  310. package/dist/elements/Hierarchy/Modal/fetchAncestorPath.js.map +1 -1
  311. package/dist/elements/Hierarchy/Modal/index.d.ts +1 -1
  312. package/dist/elements/Hierarchy/Modal/index.d.ts.map +1 -1
  313. package/dist/elements/Hierarchy/Modal/index.js +28 -42
  314. package/dist/elements/Hierarchy/Modal/index.js.map +1 -1
  315. package/dist/elements/Hierarchy/Modal/selection.d.ts +12 -0
  316. package/dist/elements/Hierarchy/Modal/selection.d.ts.map +1 -0
  317. package/dist/elements/Hierarchy/Modal/selection.js +40 -0
  318. package/dist/elements/Hierarchy/Modal/selection.js.map +1 -0
  319. package/dist/elements/Hierarchy/Modal/types.d.ts +2 -0
  320. package/dist/elements/Hierarchy/Modal/types.d.ts.map +1 -1
  321. package/dist/elements/Hierarchy/Modal/types.js.map +1 -1
  322. package/dist/elements/Hierarchy/Modal/useHierarchyModal.d.ts.map +1 -1
  323. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js +1 -1
  324. package/dist/elements/Hierarchy/Modal/useHierarchyModal.js.map +1 -1
  325. package/dist/elements/Hierarchy/MoveMany/index.d.ts +3 -1
  326. package/dist/elements/Hierarchy/MoveMany/index.d.ts.map +1 -1
  327. package/dist/elements/Hierarchy/MoveMany/index.js +20 -15
  328. package/dist/elements/Hierarchy/MoveMany/index.js.map +1 -1
  329. package/dist/elements/Hierarchy/Search/index.d.ts.map +1 -1
  330. package/dist/elements/Hierarchy/Search/index.js +17 -7
  331. package/dist/elements/Hierarchy/Search/index.js.map +1 -1
  332. package/dist/elements/Hierarchy/Search/useHierarchySearch.d.ts.map +1 -1
  333. package/dist/elements/Hierarchy/Search/useHierarchySearch.js +2 -6
  334. package/dist/elements/Hierarchy/Search/useHierarchySearch.js.map +1 -1
  335. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.d.ts.map +1 -1
  336. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js +7 -1
  337. package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
  338. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts +2 -1
  339. package/dist/elements/Hierarchy/Tree/TreeFocusContext.d.ts.map +1 -1
  340. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js +30 -28
  341. package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
  342. package/dist/elements/Hierarchy/Tree/TreeNode/index.d.ts.map +1 -1
  343. package/dist/elements/Hierarchy/Tree/TreeNode/index.js +6 -2
  344. package/dist/elements/Hierarchy/Tree/TreeNode/index.js.map +1 -1
  345. package/dist/elements/Hierarchy/Tree/index.css +3 -1
  346. package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
  347. package/dist/elements/Hierarchy/Tree/index.js +25 -26
  348. package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
  349. package/dist/elements/Hierarchy/Tree/useChildren.d.ts.map +1 -1
  350. package/dist/elements/Hierarchy/Tree/useChildren.js +1 -4
  351. package/dist/elements/Hierarchy/Tree/useChildren.js.map +1 -1
  352. package/dist/elements/HydratePreferences/index.d.ts +8 -0
  353. package/dist/elements/HydratePreferences/index.d.ts.map +1 -0
  354. package/dist/elements/HydratePreferences/index.js +34 -0
  355. package/dist/elements/HydratePreferences/index.js.map +1 -0
  356. package/dist/elements/IDLabel/index.css +5 -7
  357. package/dist/elements/IframeLoader/index.d.ts.map +1 -1
  358. package/dist/elements/IframeLoader/index.js +34 -6
  359. package/dist/elements/IframeLoader/index.js.map +1 -1
  360. package/dist/elements/ItemsDrawer/ItemSearch/index.css +0 -1
  361. package/dist/elements/ItemsDrawer/index.css +3 -0
  362. package/dist/elements/ItemsDrawer/index.d.ts.map +1 -1
  363. package/dist/elements/ItemsDrawer/index.js +23 -1
  364. package/dist/elements/ItemsDrawer/index.js.map +1 -1
  365. package/dist/elements/LLMInstructionsCell/index.css +11 -0
  366. package/dist/elements/LLMInstructionsCell/index.d.ts +5 -0
  367. package/dist/elements/LLMInstructionsCell/index.d.ts.map +1 -0
  368. package/dist/elements/LLMInstructionsCell/index.js +24 -0
  369. package/dist/elements/LLMInstructionsCell/index.js.map +1 -0
  370. package/dist/elements/LLMInstructionsDescription/index.css +79 -0
  371. package/dist/elements/LLMInstructionsDescription/index.d.ts +6 -0
  372. package/dist/elements/LLMInstructionsDescription/index.d.ts.map +1 -0
  373. package/dist/elements/LLMInstructionsDescription/index.js +40 -0
  374. package/dist/elements/LLMInstructionsDescription/index.js.map +1 -0
  375. package/dist/elements/LLMInstructionsMenuItem/index.d.ts +5 -0
  376. package/dist/elements/LLMInstructionsMenuItem/index.d.ts.map +1 -0
  377. package/dist/elements/LLMInstructionsMenuItem/index.js +46 -0
  378. package/dist/elements/LLMInstructionsMenuItem/index.js.map +1 -0
  379. package/dist/elements/LayoutToggle/index.d.ts +8 -0
  380. package/dist/elements/LayoutToggle/index.d.ts.map +1 -0
  381. package/dist/elements/LayoutToggle/index.js +56 -0
  382. package/dist/elements/LayoutToggle/index.js.map +1 -0
  383. package/dist/elements/Link/index.d.ts.map +1 -1
  384. package/dist/elements/Link/index.js +3 -0
  385. package/dist/elements/Link/index.js.map +1 -1
  386. package/dist/elements/ListControls/index.css +1 -0
  387. package/dist/elements/ListControls/index.d.ts.map +1 -1
  388. package/dist/elements/ListControls/index.js +13 -3
  389. package/dist/elements/ListControls/index.js.map +1 -1
  390. package/dist/elements/ListControls/types.d.ts +4 -1
  391. package/dist/elements/ListControls/types.d.ts.map +1 -1
  392. package/dist/elements/ListControls/types.js.map +1 -1
  393. package/dist/elements/ListControlsBar/index.css +1 -0
  394. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  395. package/dist/elements/ListDrawer/DrawerContent.js +1 -1
  396. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  397. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.d.ts +6 -0
  398. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.d.ts.map +1 -0
  399. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js +61 -0
  400. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js.map +1 -0
  401. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +1 -1
  402. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  403. package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts +1 -0
  404. package/dist/elements/ListHeader/DrawerTitleActions/index.d.ts.map +1 -1
  405. package/dist/elements/ListHeader/DrawerTitleActions/index.js +1 -0
  406. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -1
  407. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.d.ts.map +1 -1
  408. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +5 -10
  409. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  410. package/dist/elements/ListHeader/index.css +4 -5
  411. package/dist/elements/LivePreview/Toolbar/Controls/index.d.ts.map +1 -1
  412. package/dist/elements/LivePreview/Toolbar/Controls/index.js +3 -0
  413. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  414. package/dist/elements/LivePreview/Window/index.css +1 -0
  415. package/dist/elements/LivePreview/Window/index.js +1 -1
  416. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  417. package/dist/elements/Loading/index.d.ts.map +1 -1
  418. package/dist/elements/Loading/index.js +1 -0
  419. package/dist/elements/Loading/index.js.map +1 -1
  420. package/dist/elements/Localizer/index.d.ts +3 -6
  421. package/dist/elements/Localizer/index.d.ts.map +1 -1
  422. package/dist/elements/Localizer/index.js +20 -12
  423. package/dist/elements/Localizer/index.js.map +1 -1
  424. package/dist/elements/MiniCarousel/index.d.ts +1 -1
  425. package/dist/elements/MiniCarousel/index.d.ts.map +1 -1
  426. package/dist/elements/MiniCarousel/index.js +6 -6
  427. package/dist/elements/MiniCarousel/index.js.map +1 -1
  428. package/dist/elements/Modal/index.d.ts +5 -1
  429. package/dist/elements/Modal/index.d.ts.map +1 -1
  430. package/dist/elements/Modal/index.js +69 -1
  431. package/dist/elements/Modal/index.js.map +1 -1
  432. package/dist/elements/Nav/NavSidebarToggle/index.d.ts.map +1 -1
  433. package/dist/elements/Nav/NavSidebarToggle/index.js +29 -24
  434. package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
  435. package/dist/elements/Nav/NavWrapper/index.d.ts +1 -0
  436. package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
  437. package/dist/elements/Nav/NavWrapper/index.js +15 -13
  438. package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
  439. package/dist/elements/Nav/SettingsMenuButton/index.d.ts.map +1 -1
  440. package/dist/elements/Nav/SettingsMenuButton/index.js +1 -0
  441. package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
  442. package/dist/elements/Nav/SidebarTabs/index.client.js +1 -1
  443. package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
  444. package/dist/elements/Nav/SidebarTabs/index.css +3 -3
  445. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +3 -2
  446. package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -1
  447. package/dist/elements/Nav/context.d.ts +1 -1
  448. package/dist/elements/Nav/context.d.ts.map +1 -1
  449. package/dist/elements/Nav/context.js +32 -11
  450. package/dist/elements/Nav/context.js.map +1 -1
  451. package/dist/elements/Nav/getNavPrefs.d.ts.map +1 -1
  452. package/dist/elements/Nav/getNavPrefs.js +2 -0
  453. package/dist/elements/Nav/getNavPrefs.js.map +1 -1
  454. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  455. package/dist/elements/Nav/index.client.js +1 -10
  456. package/dist/elements/Nav/index.client.js.map +1 -1
  457. package/dist/elements/Nav/index.css +47 -34
  458. package/dist/elements/Nav/index.d.ts +4 -0
  459. package/dist/elements/Nav/index.d.ts.map +1 -1
  460. package/dist/elements/Nav/index.js +15 -1
  461. package/dist/elements/Nav/index.js.map +1 -1
  462. package/dist/elements/NavGroup/index.css +32 -19
  463. package/dist/elements/NavGroup/index.d.ts.map +1 -1
  464. package/dist/elements/NavGroup/index.js +31 -28
  465. package/dist/elements/NavGroup/index.js.map +1 -1
  466. package/dist/elements/NoListResults/index.css +2 -3
  467. package/dist/elements/PageControls/GroupByPageControls.d.ts +1 -0
  468. package/dist/elements/PageControls/GroupByPageControls.d.ts.map +1 -1
  469. package/dist/elements/PageControls/GroupByPageControls.js +9 -6
  470. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  471. package/dist/elements/PageControls/index.css +5 -1
  472. package/dist/elements/PageControls/index.d.ts +3 -0
  473. package/dist/elements/PageControls/index.d.ts.map +1 -1
  474. package/dist/elements/PageControls/index.js +57 -28
  475. package/dist/elements/PageControls/index.js.map +1 -1
  476. package/dist/elements/Pagination/ClickableArrow/index.d.ts +1 -0
  477. package/dist/elements/Pagination/ClickableArrow/index.d.ts.map +1 -1
  478. package/dist/elements/Pagination/ClickableArrow/index.js +46 -10
  479. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  480. package/dist/elements/Pagination/SimplePagination/index.css +0 -1
  481. package/dist/elements/Pagination/SimplePagination/index.d.ts +1 -0
  482. package/dist/elements/Pagination/SimplePagination/index.d.ts.map +1 -1
  483. package/dist/elements/Pagination/SimplePagination/index.js +14 -8
  484. package/dist/elements/Pagination/SimplePagination/index.js.map +1 -1
  485. package/dist/elements/Pagination/index.css +0 -2
  486. package/dist/elements/Pagination/index.d.ts +1 -0
  487. package/dist/elements/Pagination/index.d.ts.map +1 -1
  488. package/dist/elements/Pagination/index.js +36 -17
  489. package/dist/elements/Pagination/index.js.map +1 -1
  490. package/dist/elements/PerPage/index.css +0 -1
  491. package/dist/elements/PerPage/index.d.ts +1 -0
  492. package/dist/elements/PerPage/index.d.ts.map +1 -1
  493. package/dist/elements/PerPage/index.js +24 -15
  494. package/dist/elements/PerPage/index.js.map +1 -1
  495. package/dist/elements/PermanentlyDeleteButton/index.d.ts.map +1 -1
  496. package/dist/elements/PermanentlyDeleteButton/index.js +1 -4
  497. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  498. package/dist/elements/Pill/index.css +0 -1
  499. package/dist/elements/PillSelector/index.css +1 -0
  500. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.css +53 -0
  501. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.d.ts +13 -0
  502. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.d.ts.map +1 -0
  503. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.js +44 -0
  504. package/dist/elements/Popup/PopupButtonList/SubmenuTrigger/index.js.map +1 -0
  505. package/dist/elements/Popup/PopupButtonList/index.css +30 -8
  506. package/dist/elements/Popup/PopupButtonList/index.d.ts +10 -0
  507. package/dist/elements/Popup/PopupButtonList/index.d.ts.map +1 -1
  508. package/dist/elements/Popup/PopupButtonList/index.js +55 -6
  509. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  510. package/dist/elements/Popup/PopupGroupLabel/index.css +0 -1
  511. package/dist/elements/Popup/PopupTrigger/index.d.ts +9 -2
  512. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  513. package/dist/elements/Popup/PopupTrigger/index.js +58 -6
  514. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  515. package/dist/elements/Popup/SubmenuScope.d.ts +21 -0
  516. package/dist/elements/Popup/SubmenuScope.d.ts.map +1 -0
  517. package/dist/elements/Popup/SubmenuScope.js +89 -0
  518. package/dist/elements/Popup/SubmenuScope.js.map +1 -0
  519. package/dist/elements/Popup/index.css +9 -2
  520. package/dist/elements/Popup/index.d.ts +9 -27
  521. package/dist/elements/Popup/index.d.ts.map +1 -1
  522. package/dist/elements/Popup/index.js +187 -83
  523. package/dist/elements/Popup/index.js.map +1 -1
  524. package/dist/elements/Popup/useSubmenuPointerIntent.d.ts +13 -0
  525. package/dist/elements/Popup/useSubmenuPointerIntent.d.ts.map +1 -0
  526. package/dist/elements/Popup/useSubmenuPointerIntent.js +42 -0
  527. package/dist/elements/Popup/useSubmenuPointerIntent.js.map +1 -0
  528. package/dist/elements/PreviewSizes/index.css +2 -0
  529. package/dist/elements/PreviewSizes/index.d.ts +1 -1
  530. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  531. package/dist/elements/PreviewSizes/index.js +9 -9
  532. package/dist/elements/PreviewSizes/index.js.map +1 -1
  533. package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
  534. package/dist/elements/PublishButton/ScheduleDrawer/index.js +8 -30
  535. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  536. package/dist/elements/PublishButton/ScheduleDrawer/types.d.ts +1 -1
  537. package/dist/elements/PublishButton/ScheduleDrawer/types.d.ts.map +1 -1
  538. package/dist/elements/PublishButton/ScheduleDrawer/types.js.map +1 -1
  539. package/dist/elements/PublishButton/index.css +1 -0
  540. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  541. package/dist/elements/PublishButton/index.js +18 -37
  542. package/dist/elements/PublishButton/index.js.map +1 -1
  543. package/dist/elements/PublishMany/DrawerContent.d.ts.map +1 -1
  544. package/dist/elements/PublishMany/DrawerContent.js +3 -7
  545. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  546. package/dist/elements/QueryPresets/QueryPresetBar/index.d.ts.map +1 -1
  547. package/dist/elements/QueryPresets/QueryPresetBar/index.js +18 -2
  548. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  549. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts +3 -2
  550. package/dist/elements/QueryPresets/fields/ColumnsField/index.d.ts.map +1 -1
  551. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  552. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts +3 -2
  553. package/dist/elements/QueryPresets/fields/GroupByField/index.d.ts.map +1 -1
  554. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  555. package/dist/elements/QueryPresets/fields/Heading/index.css +1 -1
  556. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts +3 -2
  557. package/dist/elements/QueryPresets/fields/WhereField/index.d.ts.map +1 -1
  558. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  559. package/dist/elements/ReactSelect/ClearIndicator/index.css +5 -0
  560. package/dist/elements/ReactSelect/ClearIndicator/index.d.ts.map +1 -1
  561. package/dist/elements/ReactSelect/ClearIndicator/index.js +51 -20
  562. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  563. package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts.map +1 -1
  564. package/dist/elements/ReactSelect/DefaultMenuPortal.js +2 -1
  565. package/dist/elements/ReactSelect/DefaultMenuPortal.js.map +1 -1
  566. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts +2 -4
  567. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  568. package/dist/elements/ReactSelect/DropdownIndicator/index.js +16 -21
  569. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  570. package/dist/elements/ReactSelect/MultiValue/context.d.ts +6 -0
  571. package/dist/elements/ReactSelect/MultiValue/context.d.ts.map +1 -0
  572. package/dist/elements/ReactSelect/MultiValue/context.js +5 -0
  573. package/dist/elements/ReactSelect/MultiValue/context.js.map +1 -0
  574. package/dist/elements/ReactSelect/MultiValue/index.css +5 -0
  575. package/dist/elements/ReactSelect/MultiValue/index.d.ts.map +1 -1
  576. package/dist/elements/ReactSelect/MultiValue/index.js +89 -35
  577. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  578. package/dist/elements/ReactSelect/MultiValueLabel/index.css +41 -2
  579. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts +5 -1
  580. package/dist/elements/ReactSelect/MultiValueLabel/index.d.ts.map +1 -1
  581. package/dist/elements/ReactSelect/MultiValueLabel/index.js +49 -4
  582. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  583. package/dist/elements/ReactSelect/MultiValueRemove/index.css +30 -4
  584. package/dist/elements/ReactSelect/MultiValueRemove/index.d.ts.map +1 -1
  585. package/dist/elements/ReactSelect/MultiValueRemove/index.js +92 -66
  586. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  587. package/dist/elements/ReactSelect/Option/index.d.ts +6 -0
  588. package/dist/elements/ReactSelect/Option/index.d.ts.map +1 -0
  589. package/dist/elements/ReactSelect/Option/index.js +30 -0
  590. package/dist/elements/ReactSelect/Option/index.js.map +1 -0
  591. package/dist/elements/ReactSelect/ValueContainer/index.d.ts.map +1 -1
  592. package/dist/elements/ReactSelect/ValueContainer/index.js +23 -1
  593. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  594. package/dist/elements/ReactSelect/index.css +5 -3
  595. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  596. package/dist/elements/ReactSelect/index.js +4 -1
  597. package/dist/elements/ReactSelect/index.js.map +1 -1
  598. package/dist/elements/ReactSelect/types.d.ts +10 -1
  599. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  600. package/dist/elements/ReactSelect/types.js.map +1 -1
  601. package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
  602. package/dist/elements/RelationshipTable/AddNewButton.js +1 -0
  603. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  604. package/dist/elements/RelationshipTable/index.d.ts.map +1 -1
  605. package/dist/elements/RelationshipTable/index.js +61 -57
  606. package/dist/elements/RelationshipTable/index.js.map +1 -1
  607. package/dist/elements/RenderTitle/index.css +10 -7
  608. package/dist/elements/RestoreButton/index.d.ts.map +1 -1
  609. package/dist/elements/RestoreButton/index.js +1 -4
  610. package/dist/elements/RestoreButton/index.js.map +1 -1
  611. package/dist/elements/RestoreMany/index.d.ts.map +1 -1
  612. package/dist/elements/RestoreMany/index.js +2 -6
  613. package/dist/elements/RestoreMany/index.js.map +1 -1
  614. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  615. package/dist/elements/SaveDraftButton/index.js +2 -3
  616. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  617. package/dist/elements/Search/ListSearchFilter/index.d.ts +2 -1
  618. package/dist/elements/Search/ListSearchFilter/index.d.ts.map +1 -1
  619. package/dist/elements/Search/ListSearchFilter/index.js +33 -17
  620. package/dist/elements/Search/ListSearchFilter/index.js.map +1 -1
  621. package/dist/elements/Search/SearchInput/index.css +0 -1
  622. package/dist/elements/Search/SearchInput/index.d.ts +1 -0
  623. package/dist/elements/Search/SearchInput/index.d.ts.map +1 -1
  624. package/dist/elements/Search/SearchInput/index.js +24 -21
  625. package/dist/elements/Search/SearchInput/index.js.map +1 -1
  626. package/dist/elements/SegmentedControl/index.css +9 -0
  627. package/dist/elements/SegmentedControl/index.d.ts +20 -0
  628. package/dist/elements/SegmentedControl/index.d.ts.map +1 -0
  629. package/dist/elements/SegmentedControl/index.js +162 -0
  630. package/dist/elements/SegmentedControl/index.js.map +1 -0
  631. package/dist/elements/SelectRow/index.d.ts +1 -0
  632. package/dist/elements/SelectRow/index.d.ts.map +1 -1
  633. package/dist/elements/SelectRow/index.js +35 -27
  634. package/dist/elements/SelectRow/index.js.map +1 -1
  635. package/dist/elements/SidebarRow/index.css +43 -2
  636. package/dist/elements/SidebarToggle/index.css +3 -1
  637. package/dist/elements/SkipToContent/index.css +21 -0
  638. package/dist/elements/SkipToContent/index.d.ts +4 -0
  639. package/dist/elements/SkipToContent/index.d.ts.map +1 -0
  640. package/dist/elements/SkipToContent/index.js +63 -0
  641. package/dist/elements/SkipToContent/index.js.map +1 -0
  642. package/dist/elements/SortColumn/index.css +1 -2
  643. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  644. package/dist/elements/SortColumn/index.js +63 -95
  645. package/dist/elements/SortColumn/index.js.map +1 -1
  646. package/dist/elements/SortHeader/index.d.ts.map +1 -1
  647. package/dist/elements/SortHeader/index.js +18 -36
  648. package/dist/elements/SortHeader/index.js.map +1 -1
  649. package/dist/elements/Spinner/index.css +0 -2
  650. package/dist/elements/Status/index.css +3 -4
  651. package/dist/elements/Status/index.d.ts.map +1 -1
  652. package/dist/elements/Status/index.js +2 -3
  653. package/dist/elements/Status/index.js.map +1 -1
  654. package/dist/elements/StepNav/index.css +15 -9
  655. package/dist/elements/StepNav/index.d.ts.map +1 -1
  656. package/dist/elements/StepNav/index.js +33 -27
  657. package/dist/elements/StepNav/index.js.map +1 -1
  658. package/dist/elements/StepNav/types.d.ts +2 -0
  659. package/dist/elements/StepNav/types.d.ts.map +1 -1
  660. package/dist/elements/StepNav/types.js.map +1 -1
  661. package/dist/elements/Switch/index.css +0 -1
  662. package/dist/elements/Switch/index.d.ts +1 -0
  663. package/dist/elements/Switch/index.d.ts.map +1 -1
  664. package/dist/elements/Switch/index.js +18 -16
  665. package/dist/elements/Switch/index.js.map +1 -1
  666. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.css +0 -1
  667. package/dist/elements/Table/DefaultCell/fields/Code/index.css +0 -1
  668. package/dist/elements/Table/DefaultCell/fields/File/index.css +18 -13
  669. package/dist/elements/Table/DefaultCell/fields/File/index.js +1 -1
  670. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  671. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.css +26 -7
  672. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.d.ts.map +1 -1
  673. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js +42 -8
  674. package/dist/elements/Table/DefaultCell/fields/Hierarchy/index.js.map +1 -1
  675. package/dist/elements/Table/DefaultCell/fields/JSON/index.css +0 -1
  676. package/dist/elements/Table/DefaultCell/fields/Status/index.css +0 -1
  677. package/dist/elements/Table/GridNavigation/useGridNavigation.d.ts +8 -0
  678. package/dist/elements/Table/GridNavigation/useGridNavigation.d.ts.map +1 -0
  679. package/dist/elements/Table/GridNavigation/useGridNavigation.js +397 -0
  680. package/dist/elements/Table/GridNavigation/useGridNavigation.js.map +1 -0
  681. package/dist/elements/Table/OrderableTable.d.ts +1 -0
  682. package/dist/elements/Table/OrderableTable.d.ts.map +1 -1
  683. package/dist/elements/Table/OrderableTable.js +9 -8
  684. package/dist/elements/Table/OrderableTable.js.map +1 -1
  685. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  686. package/dist/elements/Table/RelationshipProvider/index.js +25 -32
  687. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  688. package/dist/elements/Table/TableIdentity.d.ts +10 -0
  689. package/dist/elements/Table/TableIdentity.d.ts.map +1 -0
  690. package/dist/elements/Table/TableIdentity.js +52 -0
  691. package/dist/elements/Table/TableIdentity.js.map +1 -0
  692. package/dist/elements/Table/index.css +24 -3
  693. package/dist/elements/Table/index.d.ts +3 -0
  694. package/dist/elements/Table/index.d.ts.map +1 -1
  695. package/dist/elements/Table/index.js +72 -29
  696. package/dist/elements/Table/index.js.map +1 -1
  697. package/dist/elements/Table/useAriaSort.d.ts +7 -0
  698. package/dist/elements/Table/useAriaSort.d.ts.map +1 -0
  699. package/dist/elements/Table/useAriaSort.js +53 -0
  700. package/dist/elements/Table/useAriaSort.js.map +1 -0
  701. package/dist/elements/TableSection/index.css +5 -5
  702. package/dist/elements/Tabs/index.css +2 -2
  703. package/dist/elements/Tabs/index.d.ts +4 -0
  704. package/dist/elements/Tabs/index.d.ts.map +1 -1
  705. package/dist/elements/Tabs/index.js +30 -1
  706. package/dist/elements/Tabs/index.js.map +1 -1
  707. package/dist/elements/Thumbnail/index.css +1 -0
  708. package/dist/elements/ThumbnailCard/index.css +0 -1
  709. package/dist/elements/ThumbnailCard/index.d.ts.map +1 -1
  710. package/dist/elements/ThumbnailCard/index.js +10 -8
  711. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  712. package/dist/elements/TimezonePicker/index.css +1 -3
  713. package/dist/elements/Tooltip/index.css +9 -2
  714. package/dist/elements/Tooltip/index.d.ts +5 -5
  715. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  716. package/dist/elements/Tooltip/index.js +21 -13
  717. package/dist/elements/Tooltip/index.js.map +1 -1
  718. package/dist/elements/UnpublishButton/index.d.ts.map +1 -1
  719. package/dist/elements/UnpublishButton/index.js +4 -8
  720. package/dist/elements/UnpublishButton/index.js.map +1 -1
  721. package/dist/elements/UnpublishMany/DrawerContent.d.ts.map +1 -1
  722. package/dist/elements/UnpublishMany/DrawerContent.js +3 -7
  723. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  724. package/dist/elements/Upload/UploadFromURLModal/index.d.ts +1 -1
  725. package/dist/elements/Upload/UploadFromURLModal/index.d.ts.map +1 -1
  726. package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
  727. package/dist/elements/Upload/index.css +41 -35
  728. package/dist/elements/Upload/index.d.ts +1 -1
  729. package/dist/elements/Upload/index.d.ts.map +1 -1
  730. package/dist/elements/Upload/index.js +43 -105
  731. package/dist/elements/Upload/index.js.map +1 -1
  732. package/dist/elements/Upload/usePasteFromClipboard.d.ts +14 -0
  733. package/dist/elements/Upload/usePasteFromClipboard.d.ts.map +1 -0
  734. package/dist/elements/Upload/usePasteFromClipboard.js +93 -0
  735. package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -0
  736. package/dist/elements/Upload/useUploadFromUrl.d.ts +20 -0
  737. package/dist/elements/Upload/useUploadFromUrl.d.ts.map +1 -0
  738. package/dist/elements/Upload/useUploadFromUrl.js +201 -0
  739. package/dist/elements/Upload/useUploadFromUrl.js.map +1 -0
  740. package/dist/elements/UploadDropzoneContent/index.css +31 -0
  741. package/dist/elements/UploadDropzoneContent/index.d.ts +17 -0
  742. package/dist/elements/UploadDropzoneContent/index.d.ts.map +1 -0
  743. package/dist/elements/UploadDropzoneContent/index.js +62 -0
  744. package/dist/elements/UploadDropzoneContent/index.js.map +1 -0
  745. package/dist/elements/UserMenu/LanguageMenu/index.d.ts.map +1 -1
  746. package/dist/elements/UserMenu/LanguageMenu/index.js +15 -30
  747. package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
  748. package/dist/elements/UserMenu/SettingsMenu/index.d.ts.map +1 -1
  749. package/dist/elements/UserMenu/SettingsMenu/index.js +15 -30
  750. package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
  751. package/dist/elements/UserMenu/SubMenuHeader/index.d.ts.map +1 -1
  752. package/dist/elements/UserMenu/SubMenuHeader/index.js +2 -0
  753. package/dist/elements/UserMenu/SubMenuHeader/index.js.map +1 -1
  754. package/dist/elements/UserMenu/ThemeMenu/index.d.ts.map +1 -1
  755. package/dist/elements/UserMenu/ThemeMenu/index.js +15 -30
  756. package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
  757. package/dist/elements/UserMenu/index.css +29 -15
  758. package/dist/elements/UserMenu/index.d.ts +1 -0
  759. package/dist/elements/UserMenu/index.d.ts.map +1 -1
  760. package/dist/elements/UserMenu/index.js +81 -50
  761. package/dist/elements/UserMenu/index.js.map +1 -1
  762. package/dist/elements/WhereBuilder/Condition/Relationship/index.d.ts.map +1 -1
  763. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +1 -4
  764. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  765. package/dist/elements/WhereBuilder/Condition/index.css +1 -0
  766. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  767. package/dist/elements/WhereBuilder/Condition/index.js +7 -1
  768. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  769. package/dist/elements/WhereBuilder/conditionValue.d.ts +32 -0
  770. package/dist/elements/WhereBuilder/conditionValue.d.ts.map +1 -0
  771. package/dist/elements/WhereBuilder/conditionValue.js +32 -0
  772. package/dist/elements/WhereBuilder/conditionValue.js.map +1 -0
  773. package/dist/elements/WhereBuilder/index.css +2 -0
  774. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  775. package/dist/elements/WhereBuilder/index.js +15 -4
  776. package/dist/elements/WhereBuilder/index.js.map +1 -1
  777. package/dist/exports/client/CodeEditor-UKD3EPUY.js +14 -0
  778. package/dist/exports/client/CodeEditor-UKD3EPUY.js.map +7 -0
  779. package/dist/exports/client/DatePicker-POZJVQP4.js +14 -0
  780. package/dist/exports/client/DatePicker-POZJVQP4.js.map +7 -0
  781. package/dist/exports/client/chunk-2AY67NFV.js +29 -0
  782. package/dist/exports/client/chunk-2AY67NFV.js.map +7 -0
  783. package/dist/exports/client/chunk-6XCSN54Q.js +27 -0
  784. package/dist/exports/client/chunk-6XCSN54Q.js.map +7 -0
  785. package/dist/exports/client/chunk-AVJIZPR3.js +14 -0
  786. package/dist/exports/client/chunk-AVJIZPR3.js.map +7 -0
  787. package/dist/exports/client/index.d.ts +22 -5
  788. package/dist/exports/client/index.d.ts.map +1 -1
  789. package/dist/exports/client/index.js +100 -1
  790. package/dist/exports/client/index.js.map +4 -4
  791. package/dist/exports/rsc/index.d.ts +3 -0
  792. package/dist/exports/rsc/index.d.ts.map +1 -1
  793. package/dist/exports/rsc/index.js +3 -0
  794. package/dist/exports/rsc/index.js.map +1 -1
  795. package/dist/exports/shared/index.js +1 -1
  796. package/dist/exports/shared/index.js.map +3 -3
  797. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  798. package/dist/fields/Array/ArrayRow.js +1 -0
  799. package/dist/fields/Array/ArrayRow.js.map +1 -1
  800. package/dist/fields/Array/index.css +5 -0
  801. package/dist/fields/Array/index.d.ts +3 -7
  802. package/dist/fields/Array/index.d.ts.map +1 -1
  803. package/dist/fields/Array/index.js +16 -8
  804. package/dist/fields/Array/index.js.map +1 -1
  805. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  806. package/dist/fields/Blocks/RowActions.js +25 -16
  807. package/dist/fields/Blocks/RowActions.js.map +1 -1
  808. package/dist/fields/Blocks/SectionTitle/index.css +3 -5
  809. package/dist/fields/Blocks/index.css +3 -2
  810. package/dist/fields/Blocks/index.d.ts +2 -5
  811. package/dist/fields/Blocks/index.d.ts.map +1 -1
  812. package/dist/fields/Blocks/index.js +22 -14
  813. package/dist/fields/Blocks/index.js.map +1 -1
  814. package/dist/fields/Checkbox/Input.d.ts +2 -2
  815. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  816. package/dist/fields/Checkbox/Input.js +135 -153
  817. package/dist/fields/Checkbox/Input.js.map +1 -1
  818. package/dist/fields/Checkbox/index.css +189 -155
  819. package/dist/fields/Checkbox/index.d.ts +2 -12
  820. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  821. package/dist/fields/Checkbox/index.js.map +1 -1
  822. package/dist/fields/Code/index.d.ts +2 -8
  823. package/dist/fields/Code/index.d.ts.map +1 -1
  824. package/dist/fields/Code/index.js +20 -3
  825. package/dist/fields/Code/index.js.map +1 -1
  826. package/dist/fields/Collapsible/index.d.ts +2 -3
  827. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  828. package/dist/fields/Collapsible/index.js +1 -0
  829. package/dist/fields/Collapsible/index.js.map +1 -1
  830. package/dist/fields/ConfirmPassword/index.d.ts.map +1 -1
  831. package/dist/fields/ConfirmPassword/index.js +45 -31
  832. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  833. package/dist/fields/DateTime/index.d.ts +3 -7
  834. package/dist/fields/DateTime/index.d.ts.map +1 -1
  835. package/dist/fields/DateTime/index.js +10 -3
  836. package/dist/fields/DateTime/index.js.map +1 -1
  837. package/dist/fields/Email/index.d.ts +2 -7
  838. package/dist/fields/Email/index.d.ts.map +1 -1
  839. package/dist/fields/Email/index.js +11 -0
  840. package/dist/fields/Email/index.js.map +1 -1
  841. package/dist/fields/FieldError/index.css +12 -0
  842. package/dist/fields/FieldError/index.d.ts.map +1 -1
  843. package/dist/fields/FieldError/index.js +4 -1
  844. package/dist/fields/FieldError/index.js.map +1 -1
  845. package/dist/fields/FieldLabel/index.css +5 -4
  846. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  847. package/dist/fields/FieldLabel/index.js +32 -15
  848. package/dist/fields/FieldLabel/index.js.map +1 -1
  849. package/dist/fields/Group/index.css +3 -3
  850. package/dist/fields/Group/index.d.ts +3 -5
  851. package/dist/fields/Group/index.d.ts.map +1 -1
  852. package/dist/fields/Group/index.js.map +1 -1
  853. package/dist/fields/JSON/index.d.ts +2 -6
  854. package/dist/fields/JSON/index.d.ts.map +1 -1
  855. package/dist/fields/JSON/index.js +15 -1
  856. package/dist/fields/JSON/index.js.map +1 -1
  857. package/dist/fields/Join/index.css +3 -4
  858. package/dist/fields/Join/index.d.ts +2 -6
  859. package/dist/fields/Join/index.d.ts.map +1 -1
  860. package/dist/fields/Join/index.js.map +1 -1
  861. package/dist/fields/Number/index.d.ts +2 -7
  862. package/dist/fields/Number/index.d.ts.map +1 -1
  863. package/dist/fields/Number/index.js.map +1 -1
  864. package/dist/fields/Password/input.d.ts.map +1 -1
  865. package/dist/fields/Password/input.js +73 -95
  866. package/dist/fields/Password/input.js.map +1 -1
  867. package/dist/fields/Point/index.d.ts +3 -8
  868. package/dist/fields/Point/index.d.ts.map +1 -1
  869. package/dist/fields/Point/index.js +15 -2
  870. package/dist/fields/Point/index.js.map +1 -1
  871. package/dist/fields/RadioGroup/Radio/index.css +0 -1
  872. package/dist/fields/RadioGroup/index.js.map +1 -1
  873. package/dist/fields/Relationship/Input.d.ts.map +1 -1
  874. package/dist/fields/Relationship/Input.js +27 -24
  875. package/dist/fields/Relationship/Input.js.map +1 -1
  876. package/dist/fields/Relationship/index.d.ts +2 -6
  877. package/dist/fields/Relationship/index.d.ts.map +1 -1
  878. package/dist/fields/Relationship/index.js.map +1 -1
  879. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  880. package/dist/fields/Relationship/optionsReducer.js +2 -0
  881. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  882. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  883. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +24 -2
  884. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  885. package/dist/fields/Relationship/types.d.ts +8 -0
  886. package/dist/fields/Relationship/types.d.ts.map +1 -1
  887. package/dist/fields/Relationship/types.js.map +1 -1
  888. package/dist/fields/Row/index.css +2 -0
  889. package/dist/fields/Row/index.d.ts +2 -3
  890. package/dist/fields/Row/index.d.ts.map +1 -1
  891. package/dist/fields/Row/index.js.map +1 -1
  892. package/dist/fields/Select/Input.d.ts.map +1 -1
  893. package/dist/fields/Select/Input.js +70 -51
  894. package/dist/fields/Select/Input.js.map +1 -1
  895. package/dist/fields/Select/index.css +7 -0
  896. package/dist/fields/Select/index.d.ts +2 -9
  897. package/dist/fields/Select/index.d.ts.map +1 -1
  898. package/dist/fields/Select/index.js.map +1 -1
  899. package/dist/fields/Slug/index.d.ts.map +1 -1
  900. package/dist/fields/Slug/index.js +2 -3
  901. package/dist/fields/Slug/index.js.map +1 -1
  902. package/dist/fields/Tabs/Tab/index.d.ts +2 -0
  903. package/dist/fields/Tabs/Tab/index.d.ts.map +1 -1
  904. package/dist/fields/Tabs/Tab/index.js +15 -9
  905. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  906. package/dist/fields/Tabs/index.css +1 -0
  907. package/dist/fields/Tabs/index.d.ts +2 -4
  908. package/dist/fields/Tabs/index.d.ts.map +1 -1
  909. package/dist/fields/Tabs/index.js +179 -116
  910. package/dist/fields/Tabs/index.js.map +1 -1
  911. package/dist/fields/Text/Input.d.ts.map +1 -1
  912. package/dist/fields/Text/Input.js +53 -34
  913. package/dist/fields/Text/Input.js.map +1 -1
  914. package/dist/fields/Text/index.d.ts +2 -8
  915. package/dist/fields/Text/index.d.ts.map +1 -1
  916. package/dist/fields/Text/index.js.map +1 -1
  917. package/dist/fields/Textarea/index.d.ts +2 -9
  918. package/dist/fields/Textarea/index.d.ts.map +1 -1
  919. package/dist/fields/Textarea/index.js.map +1 -1
  920. package/dist/fields/Upload/HasMany/index.js +1 -1
  921. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  922. package/dist/fields/Upload/HasOne/index.js +1 -1
  923. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  924. package/dist/fields/Upload/Input.d.ts.map +1 -1
  925. package/dist/fields/Upload/Input.js +60 -27
  926. package/dist/fields/Upload/Input.js.map +1 -1
  927. package/dist/fields/shared/index.d.ts +1 -1
  928. package/dist/fields/shared/index.d.ts.map +1 -1
  929. package/dist/fields/shared/index.js.map +1 -1
  930. package/dist/fields/shared/useRowFocus.d.ts +5 -0
  931. package/dist/fields/shared/useRowFocus.d.ts.map +1 -0
  932. package/dist/fields/shared/useRowFocus.js +50 -0
  933. package/dist/fields/shared/useRowFocus.js.map +1 -0
  934. package/dist/forms/Form/context.d.ts +3 -1
  935. package/dist/forms/Form/context.d.ts.map +1 -1
  936. package/dist/forms/Form/context.js +3 -1
  937. package/dist/forms/Form/context.js.map +1 -1
  938. package/dist/forms/Form/index.d.ts.map +1 -1
  939. package/dist/forms/Form/index.js +15 -7
  940. package/dist/forms/Form/index.js.map +1 -1
  941. package/dist/forms/NullifyField/index.d.ts +10 -0
  942. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  943. package/dist/forms/NullifyField/index.js +16 -7
  944. package/dist/forms/NullifyField/index.js.map +1 -1
  945. package/dist/forms/RenderFields/context.d.ts +2 -2
  946. package/dist/forms/RenderFields/context.js +2 -2
  947. package/dist/forms/RenderFields/context.js.map +1 -1
  948. package/dist/forms/RenderFields/index.css +4 -6
  949. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.d.ts.map +1 -1
  950. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +13 -4
  951. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  952. package/dist/forms/fieldSchemasToFormState/renderField.d.ts.map +1 -1
  953. package/dist/forms/fieldSchemasToFormState/renderField.js +5 -4
  954. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  955. package/dist/forms/fieldSchemasToFormState/serverFunctions/mergeAllowedFieldOverrides.d.ts +12 -0
  956. package/dist/forms/fieldSchemasToFormState/serverFunctions/mergeAllowedFieldOverrides.d.ts.map +1 -0
  957. package/dist/forms/fieldSchemasToFormState/serverFunctions/mergeAllowedFieldOverrides.js +42 -0
  958. package/dist/forms/fieldSchemasToFormState/serverFunctions/mergeAllowedFieldOverrides.js.map +1 -0
  959. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts +8 -6
  960. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.d.ts.map +1 -1
  961. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +22 -9
  962. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  963. package/dist/forms/fieldSchemasToFormState/types.d.ts +1 -0
  964. package/dist/forms/fieldSchemasToFormState/types.d.ts.map +1 -1
  965. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  966. package/dist/graphics/Logo/index.d.ts.map +1 -1
  967. package/dist/graphics/Logo/index.js +2 -0
  968. package/dist/graphics/Logo/index.js.map +1 -1
  969. package/dist/hooks/useControllableState.js +3 -3
  970. package/dist/hooks/useControllableState.js.map +1 -1
  971. package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
  972. package/dist/hooks/usePayloadAPI.js +42 -47
  973. package/dist/hooks/usePayloadAPI.js.map +1 -1
  974. package/dist/icons/ImageStack/index.d.ts +3 -0
  975. package/dist/icons/ImageStack/index.d.ts.map +1 -0
  976. package/dist/icons/ImageStack/index.js +17 -0
  977. package/dist/icons/ImageStack/index.js.map +1 -0
  978. package/dist/icons/Table/index.css +1 -0
  979. package/dist/icons/Table/index.d.ts +7 -0
  980. package/dist/icons/Table/index.d.ts.map +1 -0
  981. package/dist/icons/Table/index.js +25 -0
  982. package/dist/icons/Table/index.js.map +1 -0
  983. package/dist/layouts/Root/DocumentRoot.d.ts +24 -0
  984. package/dist/layouts/Root/DocumentRoot.d.ts.map +1 -0
  985. package/dist/layouts/Root/DocumentRoot.js +40 -0
  986. package/dist/layouts/Root/DocumentRoot.js.map +1 -0
  987. package/dist/layouts/Root/ResolveThemeOnClient.d.ts +12 -0
  988. package/dist/layouts/Root/ResolveThemeOnClient.d.ts.map +1 -0
  989. package/dist/layouts/Root/ResolveThemeOnClient.js +35 -0
  990. package/dist/layouts/Root/ResolveThemeOnClient.js.map +1 -0
  991. package/dist/layouts/Root/RootProviders.d.ts +11 -0
  992. package/dist/layouts/Root/RootProviders.d.ts.map +1 -0
  993. package/dist/layouts/Root/RootProviders.js +164 -0
  994. package/dist/layouts/Root/RootProviders.js.map +1 -0
  995. package/dist/layouts/Root/getRootLayoutData.d.ts +29 -0
  996. package/dist/layouts/Root/getRootLayoutData.d.ts.map +1 -0
  997. package/dist/layouts/Root/getRootLayoutData.js +72 -0
  998. package/dist/layouts/Root/getRootLayoutData.js.map +1 -0
  999. package/dist/layouts/Root/index.d.ts +3 -6
  1000. package/dist/layouts/Root/index.d.ts.map +1 -1
  1001. package/dist/layouts/Root/index.js +51 -107
  1002. package/dist/layouts/Root/index.js.map +1 -1
  1003. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  1004. package/dist/providers/DocumentInfo/index.js +32 -28
  1005. package/dist/providers/DocumentInfo/index.js.map +1 -1
  1006. package/dist/providers/DocumentInfo/types.d.ts +0 -10
  1007. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  1008. package/dist/providers/DocumentInfo/types.js.map +1 -1
  1009. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts +1 -2
  1010. package/dist/providers/DocumentInfo/useGetDocPermissions.d.ts.map +1 -1
  1011. package/dist/providers/DocumentInfo/useGetDocPermissions.js +1 -3
  1012. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  1013. package/dist/providers/Hierarchy/index.d.ts.map +1 -1
  1014. package/dist/providers/Hierarchy/index.js +1 -4
  1015. package/dist/providers/Hierarchy/index.js.map +1 -1
  1016. package/dist/providers/ListQuery/getSearchWithListQuery.d.ts +7 -0
  1017. package/dist/providers/ListQuery/getSearchWithListQuery.d.ts.map +1 -0
  1018. package/dist/providers/ListQuery/getSearchWithListQuery.js +22 -0
  1019. package/dist/providers/ListQuery/getSearchWithListQuery.js.map +1 -0
  1020. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  1021. package/dist/providers/ListQuery/index.js +16 -12
  1022. package/dist/providers/ListQuery/index.js.map +1 -1
  1023. package/dist/providers/ListQuery/types.d.ts +4 -0
  1024. package/dist/providers/ListQuery/types.d.ts.map +1 -1
  1025. package/dist/providers/ListQuery/types.js.map +1 -1
  1026. package/dist/providers/LivePreview/index.d.ts.map +1 -1
  1027. package/dist/providers/LivePreview/index.js +13 -6
  1028. package/dist/providers/LivePreview/index.js.map +1 -1
  1029. package/dist/providers/Locale/index.d.ts +1 -5
  1030. package/dist/providers/Locale/index.d.ts.map +1 -1
  1031. package/dist/providers/Locale/index.js +61 -140
  1032. package/dist/providers/Locale/index.js.map +1 -1
  1033. package/dist/providers/ModalAccessibility/index.d.ts +3 -0
  1034. package/dist/providers/ModalAccessibility/index.d.ts.map +1 -0
  1035. package/dist/providers/ModalAccessibility/index.js +102 -0
  1036. package/dist/providers/ModalAccessibility/index.js.map +1 -0
  1037. package/dist/providers/Preferences/index.d.ts +7 -1
  1038. package/dist/providers/Preferences/index.d.ts.map +1 -1
  1039. package/dist/providers/Preferences/index.js +62 -20
  1040. package/dist/providers/Preferences/index.js.map +1 -1
  1041. package/dist/providers/Selection/index.d.ts.map +1 -1
  1042. package/dist/providers/Selection/index.js +2 -3
  1043. package/dist/providers/Selection/index.js.map +1 -1
  1044. package/dist/providers/ServerFunctions/index.d.ts +5 -1
  1045. package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
  1046. package/dist/providers/ServerFunctions/index.js +15 -0
  1047. package/dist/providers/ServerFunctions/index.js.map +1 -1
  1048. package/dist/providers/TableColumns/buildColumnState/index.d.ts +1 -0
  1049. package/dist/providers/TableColumns/buildColumnState/index.d.ts.map +1 -1
  1050. package/dist/providers/TableColumns/buildColumnState/index.js +2 -1
  1051. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  1052. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts +2 -1
  1053. package/dist/providers/TableColumns/buildColumnState/renderCell.d.ts.map +1 -1
  1054. package/dist/providers/TableColumns/buildColumnState/renderCell.js +12 -28
  1055. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  1056. package/dist/providers/ToastContainer/index.css +6 -7
  1057. package/dist/providers/ToastContainer/index.d.ts.map +1 -1
  1058. package/dist/providers/ToastContainer/index.js +113 -35
  1059. package/dist/providers/ToastContainer/index.js.map +1 -1
  1060. package/dist/providers/Translation/index.d.ts.map +1 -1
  1061. package/dist/providers/Translation/index.js +11 -1
  1062. package/dist/providers/Translation/index.js.map +1 -1
  1063. package/dist/styles.css +167 -58
  1064. package/dist/templates/Default/Wrapper/index.css +22 -5
  1065. package/dist/templates/Default/Wrapper/index.d.ts.map +1 -1
  1066. package/dist/templates/Default/Wrapper/index.js +4 -3
  1067. package/dist/templates/Default/Wrapper/index.js.map +1 -1
  1068. package/dist/templates/Default/index.css +1 -0
  1069. package/dist/templates/Default/index.d.ts.map +1 -1
  1070. package/dist/templates/Default/index.js +46 -45
  1071. package/dist/templates/Default/index.js.map +1 -1
  1072. package/dist/utilities/buildClientFieldSchemaMap/index.d.ts.map +1 -1
  1073. package/dist/utilities/buildClientFieldSchemaMap/index.js +9 -4
  1074. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  1075. package/dist/utilities/buildFormState.d.ts.map +1 -1
  1076. package/dist/utilities/buildFormState.js +6 -2
  1077. package/dist/utilities/buildFormState.js.map +1 -1
  1078. package/dist/utilities/filterLLMInstructionsMenuItems.d.ts +9 -0
  1079. package/dist/utilities/filterLLMInstructionsMenuItems.d.ts.map +1 -0
  1080. package/dist/utilities/filterLLMInstructionsMenuItems.js +37 -0
  1081. package/dist/utilities/filterLLMInstructionsMenuItems.js.map +1 -0
  1082. package/dist/utilities/filterOutUploadFields.js +1 -1
  1083. package/dist/utilities/filterOutUploadFields.js.map +1 -1
  1084. package/dist/utilities/formatAbsoluteURL.d.ts +1 -1
  1085. package/dist/utilities/formatAbsoluteURL.d.ts.map +1 -1
  1086. package/dist/utilities/formatAbsoluteURL.js +18 -8
  1087. package/dist/utilities/formatAbsoluteURL.js.map +1 -1
  1088. package/dist/utilities/formatMetadata.d.ts.map +1 -1
  1089. package/dist/utilities/formatMetadata.js +0 -5
  1090. package/dist/utilities/formatMetadata.js.map +1 -1
  1091. package/dist/utilities/generateFieldID.d.ts +1 -1
  1092. package/dist/utilities/generateFieldID.d.ts.map +1 -1
  1093. package/dist/utilities/generateFieldID.js.map +1 -1
  1094. package/dist/utilities/getActiveModal.d.ts +6 -0
  1095. package/dist/utilities/getActiveModal.d.ts.map +1 -0
  1096. package/dist/utilities/getActiveModal.js +8 -0
  1097. package/dist/utilities/getActiveModal.js.map +1 -0
  1098. package/dist/utilities/getClientConfig.d.ts +5 -1
  1099. package/dist/utilities/getClientConfig.d.ts.map +1 -1
  1100. package/dist/utilities/getClientConfig.js +2 -1
  1101. package/dist/utilities/getClientConfig.js.map +1 -1
  1102. package/dist/utilities/getClientSchemaMap.d.ts.map +1 -1
  1103. package/dist/utilities/getClientSchemaMap.js +2 -1
  1104. package/dist/utilities/getClientSchemaMap.js.map +1 -1
  1105. package/dist/utilities/getDocPreferences.d.ts.map +1 -1
  1106. package/dist/utilities/getDocPreferences.js +1 -0
  1107. package/dist/utilities/getDocPreferences.js.map +1 -1
  1108. package/dist/utilities/getFilesFromClipboard.d.ts +10 -0
  1109. package/dist/utilities/getFilesFromClipboard.d.ts.map +1 -0
  1110. package/dist/utilities/getFilesFromClipboard.js +49 -0
  1111. package/dist/utilities/getFilesFromClipboard.js.map +1 -0
  1112. package/dist/utilities/getHasScheduledPublish.d.ts +2 -3
  1113. package/dist/utilities/getHasScheduledPublish.d.ts.map +1 -1
  1114. package/dist/utilities/getHasScheduledPublish.js +2 -5
  1115. package/dist/utilities/getHasScheduledPublish.js.map +1 -1
  1116. package/dist/utilities/getPreferences.d.ts.map +1 -1
  1117. package/dist/utilities/getPreferences.js +1 -0
  1118. package/dist/utilities/getPreferences.js.map +1 -1
  1119. package/dist/utilities/getRequestTheme.d.ts +8 -1
  1120. package/dist/utilities/getRequestTheme.d.ts.map +1 -1
  1121. package/dist/utilities/getRequestTheme.js +16 -4
  1122. package/dist/utilities/getRequestTheme.js.map +1 -1
  1123. package/dist/utilities/getVersions.d.ts.map +1 -1
  1124. package/dist/utilities/getVersions.js +8 -0
  1125. package/dist/utilities/getVersions.js.map +1 -1
  1126. package/dist/utilities/handleAuthRedirect.d.ts.map +1 -1
  1127. package/dist/utilities/handleAuthRedirect.js +4 -1
  1128. package/dist/utilities/handleAuthRedirect.js.map +1 -1
  1129. package/dist/utilities/handleServerFunctions.d.ts +9 -9
  1130. package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
  1131. package/dist/utilities/handleServerFunctions.js +7 -5
  1132. package/dist/utilities/handleServerFunctions.js.map +1 -1
  1133. package/dist/utilities/hierarchyCollectionRestrictions.d.ts +15 -0
  1134. package/dist/utilities/hierarchyCollectionRestrictions.d.ts.map +1 -0
  1135. package/dist/utilities/hierarchyCollectionRestrictions.js +17 -0
  1136. package/dist/utilities/hierarchyCollectionRestrictions.js.map +1 -0
  1137. package/dist/utilities/isAbsoluteURL.d.ts +3 -0
  1138. package/dist/utilities/isAbsoluteURL.d.ts.map +1 -0
  1139. package/dist/utilities/isAbsoluteURL.js +15 -0
  1140. package/dist/utilities/isAbsoluteURL.js.map +1 -0
  1141. package/dist/utilities/isHttpURL.d.ts +3 -0
  1142. package/dist/utilities/isHttpURL.d.ts.map +1 -0
  1143. package/dist/utilities/isHttpURL.js +12 -0
  1144. package/dist/utilities/isHttpURL.js.map +1 -0
  1145. package/dist/utilities/isPathMatchingRoute.d.ts.map +1 -1
  1146. package/dist/utilities/isPathMatchingRoute.js +7 -5
  1147. package/dist/utilities/isPathMatchingRoute.js.map +1 -1
  1148. package/dist/utilities/isPublicAdminRoute.d.ts.map +1 -1
  1149. package/dist/utilities/isPublicAdminRoute.js +9 -6
  1150. package/dist/utilities/isPublicAdminRoute.js.map +1 -1
  1151. package/dist/utilities/renderTable.d.ts +2 -1
  1152. package/dist/utilities/renderTable.d.ts.map +1 -1
  1153. package/dist/utilities/renderTable.js +13 -4
  1154. package/dist/utilities/renderTable.js.map +1 -1
  1155. package/dist/utilities/schedulePublishHandler.d.ts +8 -1
  1156. package/dist/utilities/schedulePublishHandler.d.ts.map +1 -1
  1157. package/dist/utilities/schedulePublishHandler.js +77 -5
  1158. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  1159. package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
  1160. package/dist/utilities/serverFunctionRegistry.js +2 -1
  1161. package/dist/utilities/serverFunctionRegistry.js.map +1 -1
  1162. package/dist/utilities/slugify.d.ts.map +1 -1
  1163. package/dist/utilities/slugify.js +3 -0
  1164. package/dist/utilities/slugify.js.map +1 -1
  1165. package/dist/utilities/upsertPreferences.d.ts.map +1 -1
  1166. package/dist/utilities/upsertPreferences.js +3 -0
  1167. package/dist/utilities/upsertPreferences.js.map +1 -1
  1168. package/dist/views/API/index.client.d.ts.map +1 -1
  1169. package/dist/views/API/index.client.js +21 -4
  1170. package/dist/views/API/index.client.js.map +1 -1
  1171. package/dist/views/API/index.css +2 -2
  1172. package/dist/views/Account/index.d.ts +1 -1
  1173. package/dist/views/Account/index.d.ts.map +1 -1
  1174. package/dist/views/Account/index.js +8 -5
  1175. package/dist/views/Account/index.js.map +1 -1
  1176. package/dist/views/CreateFirstUser/index.css +0 -2
  1177. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
  1178. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +76 -115
  1179. package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
  1180. package/dist/views/Dashboard/Default/ModularDashboard/WidgetContent/index.d.ts +7 -0
  1181. package/dist/views/Dashboard/Default/ModularDashboard/WidgetContent/index.d.ts.map +1 -0
  1182. package/dist/views/Dashboard/Default/ModularDashboard/WidgetContent/index.js +65 -0
  1183. package/dist/views/Dashboard/Default/ModularDashboard/WidgetContent/index.js.map +1 -0
  1184. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts +2 -1
  1185. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.d.ts.map +1 -1
  1186. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js +8 -2
  1187. package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
  1188. package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
  1189. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +128 -91
  1190. package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
  1191. package/dist/views/Dashboard/Default/ModularDashboard/index.css +11 -6
  1192. package/dist/views/Dashboard/Default/ModularDashboard/index.d.ts.map +1 -1
  1193. package/dist/views/Dashboard/Default/ModularDashboard/index.js +1 -0
  1194. package/dist/views/Dashboard/Default/ModularDashboard/index.js.map +1 -1
  1195. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.d.ts.map +1 -1
  1196. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js +3 -1
  1197. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/getDefaultLayoutServerFn.js.map +1 -1
  1198. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.d.ts.map +1 -1
  1199. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js +2 -0
  1200. package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/renderWidgetServerFn.js.map +1 -1
  1201. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts.map +1 -1
  1202. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +3 -0
  1203. package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
  1204. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.d.ts.map +1 -1
  1205. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js +2 -38
  1206. package/dist/views/Dashboard/Default/ModularDashboard/utils/sensors.js.map +1 -1
  1207. package/dist/views/Dashboard/index.d.ts.map +1 -1
  1208. package/dist/views/Dashboard/index.js +2 -3
  1209. package/dist/views/Dashboard/index.js.map +1 -1
  1210. package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
  1211. package/dist/views/Document/handleServerFunction.js +3 -0
  1212. package/dist/views/Document/handleServerFunction.js.map +1 -1
  1213. package/dist/views/Document/index.d.ts +1 -1
  1214. package/dist/views/Document/index.d.ts.map +1 -1
  1215. package/dist/views/Document/index.js +11 -7
  1216. package/dist/views/Document/index.js.map +1 -1
  1217. package/dist/views/Document/renderDocumentSlots.d.ts +2 -1
  1218. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
  1219. package/dist/views/Document/renderDocumentSlots.js +17 -7
  1220. package/dist/views/Document/renderDocumentSlots.js.map +1 -1
  1221. package/dist/views/Edit/Auth/APIKey.d.ts +1 -1
  1222. package/dist/views/Edit/Auth/APIKey.d.ts.map +1 -1
  1223. package/dist/views/Edit/Auth/APIKey.js +234 -59
  1224. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  1225. package/dist/views/Edit/Auth/APIKeyGenerationModal.d.ts +12 -0
  1226. package/dist/views/Edit/Auth/APIKeyGenerationModal.d.ts.map +1 -0
  1227. package/dist/views/Edit/Auth/APIKeyGenerationModal.js +117 -0
  1228. package/dist/views/Edit/Auth/APIKeyGenerationModal.js.map +1 -0
  1229. package/dist/views/Edit/Auth/index.css +95 -5
  1230. package/dist/views/Edit/Auth/index.d.ts.map +1 -1
  1231. package/dist/views/Edit/Auth/index.js +10 -28
  1232. package/dist/views/Edit/Auth/index.js.map +1 -1
  1233. package/dist/views/Edit/Auth/types.d.ts +3 -1
  1234. package/dist/views/Edit/Auth/types.d.ts.map +1 -1
  1235. package/dist/views/Edit/Auth/types.js.map +1 -1
  1236. package/dist/views/Edit/SetDocumentTitle/index.d.ts.map +1 -1
  1237. package/dist/views/Edit/SetDocumentTitle/index.js +4 -1
  1238. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  1239. package/dist/views/Edit/index.css +1 -0
  1240. package/dist/views/Edit/index.d.ts.map +1 -1
  1241. package/dist/views/Edit/index.js +3 -2
  1242. package/dist/views/Edit/index.js.map +1 -1
  1243. package/dist/views/ForgotPassword/ForgotPasswordForm/index.css +14 -0
  1244. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  1245. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +209 -161
  1246. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  1247. package/dist/views/ForgotPassword/index.d.ts.map +1 -1
  1248. package/dist/views/ForgotPassword/index.js +3 -14
  1249. package/dist/views/ForgotPassword/index.js.map +1 -1
  1250. package/dist/views/HierarchyList/DocumentListSelection/index.d.ts.map +1 -1
  1251. package/dist/views/HierarchyList/DocumentListSelection/index.js +104 -105
  1252. package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
  1253. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts +4 -1
  1254. package/dist/views/HierarchyList/HierarchyListHeader/index.d.ts.map +1 -1
  1255. package/dist/views/HierarchyList/HierarchyListHeader/index.js +26 -14
  1256. package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
  1257. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.d.ts.map +1 -1
  1258. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js +20 -48
  1259. package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
  1260. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.d.ts.map +1 -1
  1261. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js +35 -87
  1262. package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js.map +1 -1
  1263. package/dist/views/HierarchyList/HierarchyTable/SlotTable.css +1 -101
  1264. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts +2 -0
  1265. package/dist/views/HierarchyList/HierarchyTable/SlotTable.d.ts.map +1 -1
  1266. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js +45 -32
  1267. package/dist/views/HierarchyList/HierarchyTable/SlotTable.js.map +1 -1
  1268. package/dist/views/HierarchyList/HierarchyTable/index.css +50 -61
  1269. package/dist/views/HierarchyList/HierarchyTable/index.d.ts +3 -1
  1270. package/dist/views/HierarchyList/HierarchyTable/index.d.ts.map +1 -1
  1271. package/dist/views/HierarchyList/HierarchyTable/index.js +82 -12
  1272. package/dist/views/HierarchyList/HierarchyTable/index.js.map +1 -1
  1273. package/dist/views/HierarchyList/TypeFilter/index.d.ts.map +1 -1
  1274. package/dist/views/HierarchyList/TypeFilter/index.js +6 -7
  1275. package/dist/views/HierarchyList/TypeFilter/index.js.map +1 -1
  1276. package/dist/views/HierarchyList/getHierarchyListURL.d.ts +7 -0
  1277. package/dist/views/HierarchyList/getHierarchyListURL.d.ts.map +1 -0
  1278. package/dist/views/HierarchyList/getHierarchyListURL.js +22 -0
  1279. package/dist/views/HierarchyList/getHierarchyListURL.js.map +1 -0
  1280. package/dist/views/HierarchyList/index.css +1 -0
  1281. package/dist/views/HierarchyList/index.d.ts.map +1 -1
  1282. package/dist/views/HierarchyList/index.js +35 -11
  1283. package/dist/views/HierarchyList/index.js.map +1 -1
  1284. package/dist/views/List/DocumentGrid/index.d.ts +17 -0
  1285. package/dist/views/List/DocumentGrid/index.d.ts.map +1 -0
  1286. package/dist/views/List/DocumentGrid/index.js +152 -0
  1287. package/dist/views/List/DocumentGrid/index.js.map +1 -0
  1288. package/dist/views/List/GroupedDocumentGrid/index.css +17 -0
  1289. package/dist/views/List/GroupedDocumentGrid/index.d.ts +14 -0
  1290. package/dist/views/List/GroupedDocumentGrid/index.d.ts.map +1 -0
  1291. package/dist/views/List/GroupedDocumentGrid/index.js +99 -0
  1292. package/dist/views/List/GroupedDocumentGrid/index.js.map +1 -0
  1293. package/dist/views/List/ListHeader/index.css +5 -5
  1294. package/dist/views/List/ListHeader/index.d.ts +3 -2
  1295. package/dist/views/List/ListHeader/index.d.ts.map +1 -1
  1296. package/dist/views/List/ListHeader/index.js +17 -10
  1297. package/dist/views/List/ListHeader/index.js.map +1 -1
  1298. package/dist/views/List/enrichDocsWithVersionStatus.d.ts.map +1 -1
  1299. package/dist/views/List/enrichDocsWithVersionStatus.js +1 -0
  1300. package/dist/views/List/enrichDocsWithVersionStatus.js.map +1 -1
  1301. package/dist/views/List/getDocumentListItemURL.d.ts +9 -0
  1302. package/dist/views/List/getDocumentListItemURL.d.ts.map +1 -0
  1303. package/dist/views/List/getDocumentListItemURL.js +23 -0
  1304. package/dist/views/List/getDocumentListItemURL.js.map +1 -0
  1305. package/dist/views/List/handleGroupBy.d.ts +6 -2
  1306. package/dist/views/List/handleGroupBy.d.ts.map +1 -1
  1307. package/dist/views/List/handleGroupBy.js +13 -3
  1308. package/dist/views/List/handleGroupBy.js.map +1 -1
  1309. package/dist/views/List/handleServerFunction.d.ts.map +1 -1
  1310. package/dist/views/List/handleServerFunction.js +4 -1
  1311. package/dist/views/List/handleServerFunction.js.map +1 -1
  1312. package/dist/views/List/index.client.d.ts.map +1 -1
  1313. package/dist/views/List/index.client.js +119 -33
  1314. package/dist/views/List/index.client.js.map +1 -1
  1315. package/dist/views/List/index.css +3 -2
  1316. package/dist/views/List/index.d.ts.map +1 -1
  1317. package/dist/views/List/index.js +100 -6
  1318. package/dist/views/List/index.js.map +1 -1
  1319. package/dist/views/List/renderListViewSlots.d.ts +3 -2
  1320. package/dist/views/List/renderListViewSlots.d.ts.map +1 -1
  1321. package/dist/views/List/renderListViewSlots.js +12 -4
  1322. package/dist/views/List/renderListViewSlots.js.map +1 -1
  1323. package/dist/views/List/resolveDocumentListItemURL.d.ts +11 -0
  1324. package/dist/views/List/resolveDocumentListItemURL.d.ts.map +1 -0
  1325. package/dist/views/List/resolveDocumentListItemURL.js +30 -0
  1326. package/dist/views/List/resolveDocumentListItemURL.js.map +1 -0
  1327. package/dist/views/NotFound/client.d.ts +2 -0
  1328. package/dist/views/NotFound/client.d.ts.map +1 -0
  1329. package/dist/views/NotFound/client.js +4 -0
  1330. package/dist/views/NotFound/client.js.map +1 -0
  1331. package/dist/views/NotFound/index.css +0 -2
  1332. package/dist/views/NotFound/page.d.ts +4 -11
  1333. package/dist/views/NotFound/page.d.ts.map +1 -1
  1334. package/dist/views/NotFound/page.js +6 -5
  1335. package/dist/views/NotFound/page.js.map +1 -1
  1336. package/dist/views/ResetPassword/index.d.ts.map +1 -1
  1337. package/dist/views/ResetPassword/index.js +1 -3
  1338. package/dist/views/ResetPassword/index.js.map +1 -1
  1339. package/dist/views/Root/getRouteData.d.ts +1 -8
  1340. package/dist/views/Root/getRouteData.d.ts.map +1 -1
  1341. package/dist/views/Root/getRouteData.js +3 -12
  1342. package/dist/views/Root/getRouteData.js.map +1 -1
  1343. package/dist/views/Root/index.d.ts +6 -7
  1344. package/dist/views/Root/index.d.ts.map +1 -1
  1345. package/dist/views/Root/index.js +33 -24
  1346. package/dist/views/Root/index.js.map +1 -1
  1347. package/dist/views/Unauthorized/index.css +0 -2
  1348. package/dist/views/Unauthorized/index.d.ts.map +1 -1
  1349. package/dist/views/Unauthorized/index.js +2 -1
  1350. package/dist/views/Unauthorized/index.js.map +1 -1
  1351. package/dist/views/Verify/index.d.ts +1 -1
  1352. package/dist/views/Verify/index.d.ts.map +1 -1
  1353. package/dist/views/Verify/index.js +4 -4
  1354. package/dist/views/Verify/index.js.map +1 -1
  1355. package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
  1356. package/dist/views/Version/Default/SetStepNav.js +10 -13
  1357. package/dist/views/Version/Default/SetStepNav.js.map +1 -1
  1358. package/dist/views/Version/Default/index.css +9 -11
  1359. package/dist/views/Version/Default/index.d.ts.map +1 -1
  1360. package/dist/views/Version/Default/index.js +12 -13
  1361. package/dist/views/Version/Default/index.js.map +1 -1
  1362. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.css +0 -1
  1363. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts +1 -0
  1364. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.d.ts.map +1 -1
  1365. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js +56 -50
  1366. package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
  1367. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.d.ts.map +1 -1
  1368. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +41 -27
  1369. package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
  1370. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.css +0 -1
  1371. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.d.ts +3 -2
  1372. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.d.ts.map +1 -1
  1373. package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
  1374. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts +3 -2
  1375. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.d.ts.map +1 -1
  1376. package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
  1377. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.css +8 -0
  1378. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts +3 -2
  1379. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.d.ts.map +1 -1
  1380. package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
  1381. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts +3 -2
  1382. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.d.ts.map +1 -1
  1383. package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
  1384. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.css +3 -4
  1385. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.d.ts.map +1 -1
  1386. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +10 -0
  1387. package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
  1388. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.d.ts.map +1 -1
  1389. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js +1 -0
  1390. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/generateLabelFromValue.js.map +1 -1
  1391. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.css +1 -1
  1392. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts +2 -2
  1393. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
  1394. package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
  1395. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts +3 -2
  1396. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.d.ts.map +1 -1
  1397. package/dist/views/Version/RenderFieldsToDiff/fields/Row/index.js.map +1 -1
  1398. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +3 -2
  1399. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
  1400. package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
  1401. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +3 -2
  1402. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
  1403. package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
  1404. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts +3 -2
  1405. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.d.ts.map +1 -1
  1406. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +3 -1
  1407. package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
  1408. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.css +1 -1
  1409. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts +2 -2
  1410. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.d.ts.map +1 -1
  1411. package/dist/views/Version/RenderFieldsToDiff/fields/Upload/index.js.map +1 -1
  1412. package/dist/views/Version/RenderFieldsToDiff/index.css +2 -0
  1413. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.d.ts.map +1 -1
  1414. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js +33 -1
  1415. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.js.map +1 -1
  1416. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts +8 -2
  1417. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.d.ts.map +1 -1
  1418. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js +17 -19
  1419. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.js.map +1 -1
  1420. package/dist/views/Version/Restore/index.d.ts.map +1 -1
  1421. package/dist/views/Version/Restore/index.js +10 -10
  1422. package/dist/views/Version/Restore/index.js.map +1 -1
  1423. package/dist/views/Version/SelectLocales/index.d.ts.map +1 -1
  1424. package/dist/views/Version/SelectLocales/index.js +1 -0
  1425. package/dist/views/Version/SelectLocales/index.js.map +1 -1
  1426. package/dist/views/Version/generateVersionViewMetadata.js.map +1 -1
  1427. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.d.ts.map +1 -1
  1428. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js +2 -3
  1429. package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js.map +1 -1
  1430. package/dist/views/Versions/VersionPillLabel/index.css +2 -2
  1431. package/dist/views/Versions/generateVersionsViewMetadata.js.map +1 -1
  1432. package/dist/views/Versions/index.client.d.ts.map +1 -1
  1433. package/dist/views/Versions/index.client.js +3 -1
  1434. package/dist/views/Versions/index.client.js.map +1 -1
  1435. package/dist/views/Versions/index.css +2 -1
  1436. package/dist/widgets/CollectionCards/index.client.d.ts.map +1 -1
  1437. package/dist/widgets/CollectionCards/index.client.js +8 -6
  1438. package/dist/widgets/CollectionCards/index.client.js.map +1 -1
  1439. package/dist/widgets/CollectionCards/index.css +30 -34
  1440. package/dist/widgets/CollectionCards/index.d.ts.map +1 -1
  1441. package/dist/widgets/CollectionCards/index.js +7 -5
  1442. package/dist/widgets/CollectionCards/index.js.map +1 -1
  1443. package/dist/widgets/CollectionQuery/SortField/index.d.ts +3 -2
  1444. package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -1
  1445. package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -1
  1446. package/dist/widgets/CollectionQuery/index.css +4 -6
  1447. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts +4 -3
  1448. package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +1 -1
  1449. package/dist/widgets/RecentlyViewed/CollectionsField/index.js +1 -1
  1450. package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +1 -1
  1451. package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts +4 -0
  1452. package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts.map +1 -0
  1453. package/dist/widgets/UploadDropzone/CollectionsField/index.js +29 -0
  1454. package/dist/widgets/UploadDropzone/CollectionsField/index.js.map +1 -0
  1455. package/dist/widgets/UploadDropzone/index.client.d.ts +10 -0
  1456. package/dist/widgets/UploadDropzone/index.client.d.ts.map +1 -0
  1457. package/dist/widgets/UploadDropzone/index.client.js +78 -0
  1458. package/dist/widgets/UploadDropzone/index.client.js.map +1 -0
  1459. package/dist/widgets/UploadDropzone/index.css +80 -0
  1460. package/dist/widgets/UploadDropzone/index.d.ts +12 -0
  1461. package/dist/widgets/UploadDropzone/index.d.ts.map +1 -0
  1462. package/dist/widgets/UploadDropzone/index.js +58 -0
  1463. package/dist/widgets/UploadDropzone/index.js.map +1 -0
  1464. package/dist/widgets/Welcome/getWelcomeDisplay.d.ts +7 -0
  1465. package/dist/widgets/Welcome/getWelcomeDisplay.d.ts.map +1 -0
  1466. package/dist/widgets/Welcome/getWelcomeDisplay.js +21 -0
  1467. package/dist/widgets/Welcome/getWelcomeDisplay.js.map +1 -0
  1468. package/dist/widgets/Welcome/index.css +25 -0
  1469. package/dist/widgets/Welcome/index.d.ts +5 -0
  1470. package/dist/widgets/Welcome/index.d.ts.map +1 -0
  1471. package/dist/widgets/Welcome/index.js +25 -0
  1472. package/dist/widgets/Welcome/index.js.map +1 -0
  1473. package/dist/widgets/WidgetCard/index.css +4 -8
  1474. package/package.json +42 -11
  1475. package/dist/elements/BranchSelector/index.css +0 -83
  1476. package/dist/elements/BranchSelector/index.d.ts +0 -12
  1477. package/dist/elements/BranchSelector/index.d.ts.map +0 -1
  1478. package/dist/elements/BranchSelector/index.js +0 -160
  1479. package/dist/elements/BranchSelector/index.js.map +0 -1
  1480. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js +0 -120
  1481. package/dist/elements/ClipboardAction/clipboardUtilities.spec.js.map +0 -1
  1482. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js +0 -144
  1483. package/dist/elements/ClipboardAction/isClipboardDataValid.spec.js.map +0 -1
  1484. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js +0 -541
  1485. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.spec.js.map +0 -1
  1486. package/dist/elements/CommandPalette/buildActions.spec.js +0 -158
  1487. package/dist/elements/CommandPalette/buildActions.spec.js.map +0 -1
  1488. package/dist/elements/CommandPalette/highlightLabel.spec.js +0 -78
  1489. package/dist/elements/CommandPalette/highlightLabel.spec.js.map +0 -1
  1490. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js +0 -143
  1491. package/dist/elements/FieldSelect/reduceFieldOptions.spec.js.map +0 -1
  1492. package/dist/elements/Toasts/fieldErrors.spec.js +0 -46
  1493. package/dist/elements/Toasts/fieldErrors.spec.js.map +0 -1
  1494. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.spec.js +0 -152
  1495. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.spec.js.map +0 -1
  1496. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.d.ts +0 -2
  1497. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.d.ts.map +0 -1
  1498. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +0 -67
  1499. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +0 -1
  1500. package/dist/layouts/Root/index.spec.js +0 -20
  1501. package/dist/layouts/Root/index.spec.js.map +0 -1
  1502. package/dist/providers/Auth/authSessionRequests.spec.js +0 -121
  1503. package/dist/providers/Auth/authSessionRequests.spec.js.map +0 -1
  1504. package/dist/providers/Auth/sessionActivity.spec.js +0 -44
  1505. package/dist/providers/Auth/sessionActivity.spec.js.map +0 -1
  1506. package/dist/providers/Auth/tabSessionSync/index.spec.js +0 -463
  1507. package/dist/providers/Auth/tabSessionSync/index.spec.js.map +0 -1
  1508. package/dist/providers/Auth/useAuthSessionTimers.spec.js +0 -311
  1509. package/dist/providers/Auth/useAuthSessionTimers.spec.js.map +0 -1
  1510. package/dist/providers/Branch/index.d.ts +0 -62
  1511. package/dist/providers/Branch/index.d.ts.map +0 -1
  1512. package/dist/providers/Branch/index.js +0 -192
  1513. package/dist/providers/Branch/index.js.map +0 -1
  1514. package/dist/providers/Branch/index.server.d.ts +0 -14
  1515. package/dist/providers/Branch/index.server.d.ts.map +0 -1
  1516. package/dist/providers/Branch/index.server.js +0 -80
  1517. package/dist/providers/Branch/index.server.js.map +0 -1
  1518. package/dist/providers/Root/index.d.ts +0 -25
  1519. package/dist/providers/Root/index.d.ts.map +0 -1
  1520. package/dist/providers/Root/index.js +0 -155
  1521. package/dist/providers/Root/index.js.map +0 -1
  1522. package/dist/providers/RouteTransition/ProgressBar/index.spec.js +0 -44
  1523. package/dist/providers/RouteTransition/ProgressBar/index.spec.js.map +0 -1
  1524. package/dist/providers/TableColumns/buildColumnState/index.spec.js +0 -40
  1525. package/dist/providers/TableColumns/buildColumnState/index.spec.js.map +0 -1
  1526. package/dist/utilities/appendCacheTag.spec.js +0 -34
  1527. package/dist/utilities/appendCacheTag.spec.js.map +0 -1
  1528. package/dist/utilities/dateLocales.d.ts +0 -30
  1529. package/dist/utilities/dateLocales.d.ts.map +0 -1
  1530. package/dist/utilities/dateLocales.js +0 -57
  1531. package/dist/utilities/dateLocales.js.map +0 -1
  1532. package/dist/utilities/formatMetadata.spec.js +0 -83
  1533. package/dist/utilities/formatMetadata.spec.js.map +0 -1
  1534. package/dist/utilities/fuzzyMatch.spec.js +0 -38
  1535. package/dist/utilities/fuzzyMatch.spec.js.map +0 -1
  1536. package/dist/utilities/getRequestBranch.d.ts +0 -18
  1537. package/dist/utilities/getRequestBranch.d.ts.map +0 -1
  1538. package/dist/utilities/getRequestBranch.js +0 -32
  1539. package/dist/utilities/getRequestBranch.js.map +0 -1
  1540. package/dist/utilities/getRequestLocale.d.ts +0 -7
  1541. package/dist/utilities/getRequestLocale.d.ts.map +0 -1
  1542. package/dist/utilities/getRequestLocale.js +0 -20
  1543. package/dist/utilities/getRequestLocale.js.map +0 -1
  1544. package/dist/utilities/initReq.d.ts +0 -16
  1545. package/dist/utilities/initReq.d.ts.map +0 -1
  1546. package/dist/utilities/initReq.js +0 -119
  1547. package/dist/utilities/initReq.js.map +0 -1
  1548. package/dist/utilities/isCustomAdminView.spec.js +0 -90
  1549. package/dist/utilities/isCustomAdminView.spec.js.map +0 -1
  1550. package/dist/utilities/isPathMatchingRoute.spec.js +0 -178
  1551. package/dist/utilities/isPathMatchingRoute.spec.js.map +0 -1
  1552. package/dist/utilities/matchesSearchQuery.d.ts +0 -12
  1553. package/dist/utilities/matchesSearchQuery.d.ts.map +0 -1
  1554. package/dist/utilities/matchesSearchQuery.js +0 -23
  1555. package/dist/utilities/matchesSearchQuery.js.map +0 -1
  1556. package/dist/utilities/matchesSearchQuery.spec.js +0 -87
  1557. package/dist/utilities/matchesSearchQuery.spec.js.map +0 -1
  1558. package/dist/utilities/normalizeRelationshipValue.spec.js +0 -373
  1559. package/dist/utilities/normalizeRelationshipValue.spec.js.map +0 -1
  1560. package/dist/utilities/recentlyViewed.spec.js +0 -92
  1561. package/dist/utilities/recentlyViewed.spec.js.map +0 -1
  1562. package/dist/utilities/selectiveCache.d.ts +0 -12
  1563. package/dist/utilities/selectiveCache.d.ts.map +0 -1
  1564. package/dist/utilities/selectiveCache.js +0 -37
  1565. package/dist/utilities/selectiveCache.js.map +0 -1
  1566. package/dist/views/Root/getCustomCollectionViewByRoute.spec.js +0 -168
  1567. package/dist/views/Root/getCustomCollectionViewByRoute.spec.js.map +0 -1
  1568. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js +0 -861
  1569. package/dist/views/Version/RenderFieldsToDiff/utilities/countChangedFields.spec.js.map +0 -1
  1570. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js +0 -47
  1571. package/dist/views/Version/RenderFieldsToDiff/utilities/fieldHasChanges.spec.js.map +0 -1
  1572. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js +0 -135
  1573. package/dist/views/Version/RenderFieldsToDiff/utilities/getFieldsForRowComparison.spec.js.map +0 -1
  1574. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js +0 -100
  1575. package/dist/widgets/CollectionQuery/getCollectionFieldPaths.spec.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"TreeFocusContext.js","names":["c","_c","createContext","use","useCallback","useEffect","useLayoutEffect","useRef","useState","TreeFocusContext","undefined","TreeFocusProvider","children","focusedId","setFocusedIdState","itemsRef","Map","setFocusedId","id","item","current","get","ref","document","activeElement","focus","registerItem","set","unregisterItem","delete","moveFocus","direction","items","Array","from","values","length","sortedItems","filter","sort","a","b","aElement","bElement","position","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","DOCUMENT_POSITION_PRECEDING","currentIndex","findIndex","nextIndex","Math","min","max","nextItem","_jsx","value","useTreeFocus","context","Error","useFocusableItem","t0","$","type","isFocused","isFirstItemEver","wasFocusedRef","t1","t2","t3","t4","t5","handleFocus","tabIndex","t6"],"sources":["../../../../src/elements/Hierarchy/Tree/TreeFocusContext.tsx"],"sourcesContent":["'use client'\n\nimport type React from 'react'\n\nimport {\n createContext,\n use,\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react'\n\ntype FocusableItem = {\n id: string\n ref: React.RefObject<HTMLElement>\n type: 'load-more' | 'node'\n}\n\ntype TreeFocusContextType = {\n focusedId: null | string\n moveFocus: (direction: 'down' | 'up') => void\n registerItem: (item: FocusableItem) => void\n setFocusedId: (id: null | string) => void\n unregisterItem: (id: string) => void\n}\n\nconst TreeFocusContext = createContext<TreeFocusContextType | undefined>(undefined)\n\nexport const TreeFocusProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const [focusedId, setFocusedIdState] = useState<null | string>(null)\n const itemsRef = useRef<Map<string, FocusableItem>>(new Map())\n\n const setFocusedId = useCallback((id: null | string) => {\n setFocusedIdState(id)\n if (id) {\n const item = itemsRef.current.get(id)\n if (item?.ref.current && document.activeElement !== item.ref.current) {\n item.ref.current.focus()\n }\n }\n }, [])\n\n const registerItem = useCallback((item: FocusableItem) => {\n itemsRef.current.set(item.id, item)\n }, [])\n\n const unregisterItem = useCallback((id: string) => {\n itemsRef.current.delete(id)\n }, [])\n\n const moveFocus = useCallback(\n (direction: 'down' | 'up') => {\n const items = Array.from(itemsRef.current.values())\n if (items.length === 0) {\n return\n }\n\n // Sort items by their DOM position to ensure correct navigation order\n const sortedItems = items\n .filter((item) => item.ref.current)\n .sort((a, b) => {\n const aElement = a.ref.current\n const bElement = b.ref.current\n if (!aElement || !bElement) {\n return 0\n }\n\n const position = aElement.compareDocumentPosition(bElement)\n if (position & Node.DOCUMENT_POSITION_FOLLOWING) {\n return -1\n }\n if (position & Node.DOCUMENT_POSITION_PRECEDING) {\n return 1\n }\n return 0\n })\n\n const currentIndex = focusedId ? sortedItems.findIndex((item) => item.id === focusedId) : -1\n\n let nextIndex: number\n if (direction === 'down') {\n nextIndex = currentIndex === -1 ? 0 : Math.min(currentIndex + 1, sortedItems.length - 1)\n } else {\n nextIndex = Math.max(currentIndex - 1, 0)\n }\n\n const nextItem = sortedItems[nextIndex]\n if (nextItem && nextItem.ref.current) {\n nextItem.ref.current.focus()\n setFocusedId(nextItem.id)\n }\n },\n [focusedId, setFocusedId],\n )\n\n return (\n <TreeFocusContext\n value={{\n focusedId,\n moveFocus,\n registerItem,\n setFocusedId,\n unregisterItem,\n }}\n >\n {children}\n </TreeFocusContext>\n )\n}\n\nexport const useTreeFocus = () => {\n const context = use(TreeFocusContext)\n if (!context) {\n throw new Error('useTreeFocus must be used within TreeFocusProvider')\n }\n return context\n}\n\nexport const useFocusableItem = ({\n id,\n type,\n ref,\n}: {\n id: string\n ref: React.RefObject<HTMLElement>\n type: 'load-more' | 'node'\n}) => {\n const { focusedId, registerItem, setFocusedId, unregisterItem } = useTreeFocus()\n const isFocused = focusedId === id\n const isFirstItemEver = focusedId === null\n const wasFocusedRef = useRef(false)\n\n useEffect(() => {\n registerItem({ id, type, ref })\n return () => {\n unregisterItem(id)\n }\n }, [id, ref, type, registerItem, unregisterItem])\n\n useLayoutEffect(() => {\n if (\n isFocused &&\n !wasFocusedRef.current &&\n ref.current &&\n document.activeElement !== ref.current\n ) {\n ref.current.focus()\n }\n\n wasFocusedRef.current = isFocused\n }, [isFocused, ref])\n\n const handleFocus = useCallback(() => {\n setFocusedId(id)\n }, [id, setFocusedId])\n\n // Roving tabindex: focused item gets 0, first item (when nothing focused) gets 0, all others get -1\n const tabIndex = isFocused ? 0 : isFirstItemEver ? 0 : -1\n\n return {\n handleFocus,\n isFocused,\n tabIndex,\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TreeFocusContext.js","names":["c","_c","createContext","use","useCallback","useEffect","useLayoutEffect","useRef","useState","TreeFocusContext","undefined","TreeFocusProvider","children","focusedId","setFocusedIdState","itemsRef","Map","setFocusedId","id","item","current","get","ref","document","activeElement","focus","registerItem","set","unregisterItem","delete","moveFocus","direction","items","Array","from","values","length","sortedItems","filter","sort","a","b","aElement","bElement","position","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","DOCUMENT_POSITION_PRECEDING","currentIndex","findIndex","nextIndex","Math","min","max","nextItem","_jsx","value","useTreeFocus","context","Error","useFocusableItem","t0","$","type","isInitialTabStop","t1","isFocused","wasFocusedRef","t2","t3","t4","t5","t6","handleFocus","tabIndex","t7"],"sources":["../../../../src/elements/Hierarchy/Tree/TreeFocusContext.tsx"],"sourcesContent":["'use client'\n\nimport type React from 'react'\n\nimport {\n createContext,\n use,\n useCallback,\n useEffect,\n useLayoutEffect,\n useRef,\n useState,\n} from 'react'\n\ntype FocusableItem = {\n id: string\n ref: React.RefObject<HTMLElement>\n type: 'load-more' | 'node'\n}\n\ntype TreeFocusContextType = {\n focusedId: null | string\n moveFocus: (direction: 'down' | 'up') => void\n registerItem: (item: FocusableItem) => void\n setFocusedId: (id: null | string) => void\n unregisterItem: (id: string) => void\n}\n\nconst TreeFocusContext = createContext<TreeFocusContextType | undefined>(undefined)\n\nexport const TreeFocusProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const [focusedId, setFocusedIdState] = useState<null | string>(null)\n const itemsRef = useRef<Map<string, FocusableItem>>(new Map())\n\n const setFocusedId = useCallback((id: null | string) => {\n setFocusedIdState(id)\n if (id) {\n const item = itemsRef.current.get(id)\n if (item?.ref.current && document.activeElement !== item.ref.current) {\n item.ref.current.focus()\n }\n }\n }, [])\n\n const registerItem = useCallback((item: FocusableItem) => {\n itemsRef.current.set(item.id, item)\n }, [])\n\n const unregisterItem = useCallback((id: string) => {\n itemsRef.current.delete(id)\n setFocusedIdState((focusedId) => (focusedId === id ? null : focusedId))\n }, [])\n\n const moveFocus = useCallback(\n (direction: 'down' | 'up') => {\n const items = Array.from(itemsRef.current.values())\n if (items.length === 0) {\n return\n }\n\n // Sort items by their DOM position to ensure correct navigation order\n const sortedItems = items\n .filter((item) => item.ref.current)\n .sort((a, b) => {\n const aElement = a.ref.current\n const bElement = b.ref.current\n if (!aElement || !bElement) {\n return 0\n }\n\n const position = aElement.compareDocumentPosition(bElement)\n if (position & Node.DOCUMENT_POSITION_FOLLOWING) {\n return -1\n }\n if (position & Node.DOCUMENT_POSITION_PRECEDING) {\n return 1\n }\n return 0\n })\n\n const currentIndex = focusedId ? sortedItems.findIndex((item) => item.id === focusedId) : -1\n\n let nextIndex: number\n if (direction === 'down') {\n nextIndex = currentIndex === -1 ? 0 : Math.min(currentIndex + 1, sortedItems.length - 1)\n } else {\n nextIndex = Math.max(currentIndex - 1, 0)\n }\n\n const nextItem = sortedItems[nextIndex]\n if (nextItem && nextItem.ref.current) {\n nextItem.ref.current.focus()\n setFocusedId(nextItem.id)\n }\n },\n [focusedId, setFocusedId],\n )\n\n return (\n <TreeFocusContext\n value={{\n focusedId,\n moveFocus,\n registerItem,\n setFocusedId,\n unregisterItem,\n }}\n >\n {children}\n </TreeFocusContext>\n )\n}\n\nexport const useTreeFocus = () => {\n const context = use(TreeFocusContext)\n if (!context) {\n throw new Error('useTreeFocus must be used within TreeFocusProvider')\n }\n return context\n}\n\nexport const useFocusableItem = ({\n id,\n type,\n isInitialTabStop = false,\n ref,\n}: {\n id: string\n isInitialTabStop?: boolean\n ref: React.RefObject<HTMLElement>\n type: 'load-more' | 'node'\n}) => {\n const { focusedId, registerItem, setFocusedId, unregisterItem } = useTreeFocus()\n const isFocused = focusedId === id\n const wasFocusedRef = useRef(false)\n\n useEffect(() => {\n registerItem({ id, type, ref })\n return () => {\n unregisterItem(id)\n }\n }, [id, ref, type, registerItem, unregisterItem])\n\n useLayoutEffect(() => {\n if (\n isFocused &&\n !wasFocusedRef.current &&\n ref.current &&\n document.activeElement !== ref.current\n ) {\n ref.current.focus()\n }\n\n wasFocusedRef.current = isFocused\n }, [isFocused, ref])\n\n const handleFocus = useCallback(() => {\n setFocusedId(id)\n }, [id, setFocusedId])\n\n const tabIndex = isFocused || (focusedId === null && isInitialTabStop) ? 0 : -1\n\n return {\n handleFocus,\n isFocused,\n tabIndex,\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/Hierarchy/Tree/TreeNode/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA8B,MAAM,OAAO,CAAA;AAElD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAQhD,OAAO,aAAa,CAAA;AAqBpB,eAAO,MAAM,QAAQ,0NAkBlB,aAAa,sBAgNf,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/elements/Hierarchy/Tree/TreeNode/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAqC,MAAM,OAAO,CAAA;AAEzD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,aAAa,CAAA;AAQhD,OAAO,aAAa,CAAA;AAqBpB,eAAO,MAAM,QAAQ,0NAkBlB,aAAa,sBAqNf,CAAA"}
@@ -1,7 +1,7 @@
1
1
  'use client';
2
2
 
3
3
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
4
- import React, { useCallback, useRef } from 'react';
4
+ import React, { useCallback, useId, useRef } from 'react';
5
5
  import { Spinner } from '../../../../elements/Spinner/index.js';
6
6
  import { ChevronIcon } from '../../../../icons/Chevron/index.js';
7
7
  import { useTranslation } from '../../../../providers/Translation/index.js';
@@ -45,6 +45,7 @@ export const TreeNode = ({
45
45
  const {
46
46
  t
47
47
  } = useTranslation();
48
+ const titleID = useId();
48
49
  const expanded = expandedNodes.has(node.id);
49
50
  const nodeRef = useRef(null);
50
51
  const {
@@ -136,6 +137,7 @@ export const TreeNode = ({
136
137
  }, [expanded, handleSelectClick, handleToggle, hasChildren, node.id, onToggle]);
137
138
  return /*#__PURE__*/_jsxs("div", {
138
139
  "aria-expanded": hasChildren ? expanded : undefined,
140
+ "aria-labelledby": titleID,
139
141
  "aria-level": depth + 1,
140
142
  "aria-selected": selected,
141
143
  className: baseClass,
@@ -156,7 +158,8 @@ export const TreeNode = ({
156
158
  children: /*#__PURE__*/_jsxs("div", {
157
159
  className: [`${baseClass}__content`, 'sidebar-row', selected && `${baseClass}__content--selected`, selected && 'sidebar-row--selected'].filter(Boolean).join(' '),
158
160
  children: [hasChildren && /*#__PURE__*/_jsx("button", {
159
- "aria-label": expanded ? t('general:collapse') : t('general:open'),
161
+ "aria-expanded": expanded,
162
+ "aria-label": `${expanded ? t('general:collapse') : t('general:open')} ${node.title}`,
160
163
  className: `${baseClass}__toggle`,
161
164
  onClick: handleToggle,
162
165
  onMouseDown: e_2 => e_2.preventDefault(),
@@ -178,6 +181,7 @@ export const TreeNode = ({
178
181
  children: icon
179
182
  }), /*#__PURE__*/_jsx("span", {
180
183
  className: `${baseClass}__title sidebar-row__title`,
184
+ id: titleID,
181
185
  children: node.title
182
186
  })]
183
187
  }), isLoading && expanded && /*#__PURE__*/_jsx("span", {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","useCallback","useRef","Spinner","ChevronIcon","useTranslation","LoadMore","useFocusableItem","useTreeFocus","useChildren","DEFAULT_TREE_LIMIT","baseClass","getDocumentTitle","doc","useAsTitle","docId","id","idStr","String","value","TreeNode","allPossibleTypeValues","baseFilter","cache","collectionSlug","depth","expandedNodes","filterByCollections","icon","limit","node","onSelect","onToggle","parentFieldName","selected","selectedNodeId","typeFieldName","t","expanded","has","nodeRef","setFocusedId","children","hasMore","isLoading","load","loadMore","loadMoreFromHook","totalDocs","enabled","parentId","handleLoadMore","newDocs","length","firstNewDoc","window","requestAnimationFrame","handleFocus","tabIndex","type","ref","hasChildren","handleToggle","e","stopPropagation","handleSelectClick","handleKeyDown","target","currentTarget","key","preventDefault","_jsxs","undefined","className","onFocus","onKeyDown","role","style","_jsx","filter","Boolean","join","onClick","onMouseDown","direction","size","title","loadingText","_Fragment","map","child","childData","childId","childTitle","currentCount","onLoadMore"],"sources":["../../../../../src/elements/Hierarchy/Tree/TreeNode/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useRef } from 'react'\n\nimport type { TreeNodeProps } from '../types.js'\n\nimport { Spinner } from '../../../../elements/Spinner/index.js'\nimport { ChevronIcon } from '../../../../icons/Chevron/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { LoadMore } from '../LoadMore/index.js'\nimport { useFocusableItem, useTreeFocus } from '../TreeFocusContext.js'\nimport { useChildren } from '../useChildren.js'\nimport './index.css'\n\nconst DEFAULT_TREE_LIMIT = 10\n\nconst baseClass = 'tree-node'\n\nconst getDocumentTitle = (doc: Record<string, unknown>, useAsTitle: string | undefined): string => {\n const docId: number | string = doc.id as number | string\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\nexport const TreeNode = ({\n allPossibleTypeValues,\n baseFilter,\n cache,\n collectionSlug,\n depth = 0,\n expandedNodes,\n filterByCollections,\n icon,\n limit = DEFAULT_TREE_LIMIT,\n node,\n onSelect,\n onToggle,\n parentFieldName,\n selected,\n selectedNodeId,\n typeFieldName,\n useAsTitle,\n}: TreeNodeProps) => {\n const { t } = useTranslation()\n const expanded = expandedNodes.has(node.id)\n const nodeRef = useRef<HTMLDivElement>(null)\n const { setFocusedId } = useTreeFocus()\n\n const {\n children,\n hasMore,\n isLoading,\n load,\n loadMore: loadMoreFromHook,\n totalDocs,\n } = useChildren({\n allPossibleTypeValues,\n baseFilter,\n cache,\n collectionSlug,\n enabled: expanded,\n filterByCollections,\n limit,\n parentFieldName,\n parentId: node.id,\n typeFieldName,\n useAsTitle,\n })\n\n const handleLoadMore = React.useCallback(async () => {\n const newDocs = await loadMoreFromHook()\n\n if (newDocs && newDocs.length > 0) {\n const firstNewDoc = newDocs[0]\n const docId: number | string = (firstNewDoc as { id: number | string }).id\n window.requestAnimationFrame(() => {\n setFocusedId(`node-${docId}`)\n })\n }\n }, [loadMoreFromHook, setFocusedId])\n\n const { handleFocus, tabIndex } = useFocusableItem({\n id: `node-${node.id}`,\n type: 'node',\n ref: nodeRef,\n })\n\n // Determine if node has children:\n // - If explicitly set in data, use that\n // - If expanded and loaded, check the actual children\n // - Otherwise, assume it might have children (show chevron until proven otherwise)\n const hasChildren =\n node.hasChildren === true || (expanded && children !== null ? children.length > 0 : true)\n\n const handleToggle = useCallback(\n (e?: React.SyntheticEvent) => {\n e?.stopPropagation()\n void load()\n onToggle({ id: node.id })\n },\n [load, node.id, onToggle],\n )\n\n const handleSelectClick = useCallback(() => {\n onSelect?.({ id: node.id })\n }, [node.id, onSelect])\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (e.target !== e.currentTarget) {\n return\n }\n switch (e.key) {\n case ' ':\n case 'Enter':\n e.preventDefault()\n e.stopPropagation()\n handleSelectClick()\n break\n case 'ArrowLeft':\n e.preventDefault()\n e.stopPropagation()\n if (hasChildren && expanded) {\n onToggle({ id: node.id })\n }\n break\n case 'ArrowRight':\n e.preventDefault()\n e.stopPropagation()\n if (hasChildren && !expanded) {\n handleToggle()\n }\n break\n }\n },\n [expanded, handleSelectClick, handleToggle, hasChildren, node.id, onToggle],\n )\n\n return (\n <div\n aria-expanded={hasChildren ? expanded : undefined}\n aria-level={depth + 1}\n aria-selected={selected}\n className={baseClass}\n onFocus={(e) => {\n if (e.target === e.currentTarget) {\n handleFocus()\n }\n }}\n onKeyDown={handleKeyDown}\n ref={nodeRef}\n role=\"treeitem\"\n style={{ '--tree-depth': depth } as React.CSSProperties}\n tabIndex={tabIndex}\n >\n <div className={`${baseClass}__content-wrapper`}>\n <div\n className={[\n `${baseClass}__content`,\n 'sidebar-row',\n selected && `${baseClass}__content--selected`,\n selected && 'sidebar-row--selected',\n ]\n .filter(Boolean)\n .join(' ')}\n >\n {hasChildren && (\n <button\n aria-label={expanded ? t('general:collapse') : t('general:open')}\n className={`${baseClass}__toggle`}\n onClick={handleToggle}\n onMouseDown={(e) => e.preventDefault()}\n tabIndex={-1}\n type=\"button\"\n >\n <ChevronIcon direction={expanded ? 'down' : 'right'} size={16} />\n </button>\n )}\n <button\n className={[\n `${baseClass}__node-trigger`,\n selected && `${baseClass}__node-trigger--selected`,\n ]\n .filter(Boolean)\n .join(' ')}\n onClick={handleSelectClick}\n onMouseDown={(e) => e.preventDefault()}\n tabIndex={-1}\n title={node.title}\n type=\"button\"\n >\n {Boolean(icon) && <span className=\"sidebar-row__icon\">{icon}</span>}\n <span className={`${baseClass}__title sidebar-row__title`}>{node.title}</span>\n </button>\n {isLoading && expanded && (\n <span className={`${baseClass}__loading`}>\n <Spinner loadingText={null} size=\"sm\" />\n </span>\n )}\n </div>\n </div>\n\n {expanded && children && children.length > 0 && (\n <>\n <div className={`${baseClass}__children`} role=\"group\">\n {children.map((child) => {\n const childData = child as { id: number | string }\n const childId = childData.id\n const childTitle = getDocumentTitle(child, useAsTitle)\n return (\n <TreeNode\n allPossibleTypeValues={allPossibleTypeValues}\n baseFilter={baseFilter}\n cache={cache}\n collectionSlug={collectionSlug}\n depth={depth + 1}\n expandedNodes={expandedNodes}\n filterByCollections={filterByCollections}\n icon={icon}\n key={String(childId)}\n limit={limit}\n node={{\n id: childId,\n hasChildren: true,\n title: childTitle,\n }}\n onSelect={onSelect}\n onToggle={onToggle}\n parentFieldName={parentFieldName}\n selected={String(childId) === String(selectedNodeId)}\n selectedNodeId={selectedNodeId}\n typeFieldName={typeFieldName}\n useAsTitle={useAsTitle}\n />\n )\n })}\n </div>\n {hasMore && (\n <LoadMore\n currentCount={children.length}\n depth={depth + 1}\n id={`load-more-${node.id}`}\n onLoadMore={handleLoadMore}\n totalDocs={totalDocs}\n />\n )}\n </>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["React","useCallback","useId","useRef","Spinner","ChevronIcon","useTranslation","LoadMore","useFocusableItem","useTreeFocus","useChildren","DEFAULT_TREE_LIMIT","baseClass","getDocumentTitle","doc","useAsTitle","docId","id","idStr","String","value","TreeNode","allPossibleTypeValues","baseFilter","cache","collectionSlug","depth","expandedNodes","filterByCollections","icon","limit","node","onSelect","onToggle","parentFieldName","selected","selectedNodeId","typeFieldName","t","titleID","expanded","has","nodeRef","setFocusedId","children","hasMore","isLoading","load","loadMore","loadMoreFromHook","totalDocs","enabled","parentId","handleLoadMore","newDocs","length","firstNewDoc","window","requestAnimationFrame","handleFocus","tabIndex","type","ref","hasChildren","handleToggle","e","stopPropagation","handleSelectClick","handleKeyDown","target","currentTarget","key","preventDefault","_jsxs","undefined","className","onFocus","onKeyDown","role","style","_jsx","filter","Boolean","join","title","onClick","onMouseDown","direction","size","loadingText","_Fragment","map","child","childData","childId","childTitle","currentCount","onLoadMore"],"sources":["../../../../../src/elements/Hierarchy/Tree/TreeNode/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useId, useRef } from 'react'\n\nimport type { TreeNodeProps } from '../types.js'\n\nimport { Spinner } from '../../../../elements/Spinner/index.js'\nimport { ChevronIcon } from '../../../../icons/Chevron/index.js'\nimport { useTranslation } from '../../../../providers/Translation/index.js'\nimport { LoadMore } from '../LoadMore/index.js'\nimport { useFocusableItem, useTreeFocus } from '../TreeFocusContext.js'\nimport { useChildren } from '../useChildren.js'\nimport './index.css'\n\nconst DEFAULT_TREE_LIMIT = 10\n\nconst baseClass = 'tree-node'\n\nconst getDocumentTitle = (doc: Record<string, unknown>, useAsTitle: string | undefined): string => {\n const docId: number | string = doc.id as number | string\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\nexport const TreeNode = ({\n allPossibleTypeValues,\n baseFilter,\n cache,\n collectionSlug,\n depth = 0,\n expandedNodes,\n filterByCollections,\n icon,\n limit = DEFAULT_TREE_LIMIT,\n node,\n onSelect,\n onToggle,\n parentFieldName,\n selected,\n selectedNodeId,\n typeFieldName,\n useAsTitle,\n}: TreeNodeProps) => {\n const { t } = useTranslation()\n const titleID = useId()\n const expanded = expandedNodes.has(node.id)\n const nodeRef = useRef<HTMLDivElement>(null)\n const { setFocusedId } = useTreeFocus()\n\n const {\n children,\n hasMore,\n isLoading,\n load,\n loadMore: loadMoreFromHook,\n totalDocs,\n } = useChildren({\n allPossibleTypeValues,\n baseFilter,\n cache,\n collectionSlug,\n enabled: expanded,\n filterByCollections,\n limit,\n parentFieldName,\n parentId: node.id,\n typeFieldName,\n useAsTitle,\n })\n\n const handleLoadMore = React.useCallback(async () => {\n const newDocs = await loadMoreFromHook()\n\n if (newDocs && newDocs.length > 0) {\n const firstNewDoc = newDocs[0]\n const docId: number | string = (firstNewDoc as { id: number | string }).id\n window.requestAnimationFrame(() => {\n setFocusedId(`node-${docId}`)\n })\n }\n }, [loadMoreFromHook, setFocusedId])\n\n const { handleFocus, tabIndex } = useFocusableItem({\n id: `node-${node.id}`,\n type: 'node',\n ref: nodeRef,\n })\n\n // Determine if node has children:\n // - If explicitly set in data, use that\n // - If expanded and loaded, check the actual children\n // - Otherwise, assume it might have children (show chevron until proven otherwise)\n const hasChildren =\n node.hasChildren === true || (expanded && children !== null ? children.length > 0 : true)\n\n const handleToggle = useCallback(\n (e?: React.SyntheticEvent) => {\n e?.stopPropagation()\n void load()\n onToggle({ id: node.id })\n },\n [load, node.id, onToggle],\n )\n\n const handleSelectClick = useCallback(() => {\n onSelect?.({ id: node.id })\n }, [node.id, onSelect])\n\n const handleKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (e.target !== e.currentTarget) {\n return\n }\n switch (e.key) {\n case ' ':\n case 'Enter':\n e.preventDefault()\n e.stopPropagation()\n handleSelectClick()\n break\n case 'ArrowLeft':\n e.preventDefault()\n e.stopPropagation()\n if (hasChildren && expanded) {\n onToggle({ id: node.id })\n }\n break\n case 'ArrowRight':\n e.preventDefault()\n e.stopPropagation()\n if (hasChildren && !expanded) {\n handleToggle()\n }\n break\n }\n },\n [expanded, handleSelectClick, handleToggle, hasChildren, node.id, onToggle],\n )\n\n return (\n <div\n aria-expanded={hasChildren ? expanded : undefined}\n aria-labelledby={titleID}\n aria-level={depth + 1}\n aria-selected={selected}\n className={baseClass}\n onFocus={(e) => {\n if (e.target === e.currentTarget) {\n handleFocus()\n }\n }}\n onKeyDown={handleKeyDown}\n ref={nodeRef}\n role=\"treeitem\"\n style={{ '--tree-depth': depth } as React.CSSProperties}\n tabIndex={tabIndex}\n >\n <div className={`${baseClass}__content-wrapper`}>\n <div\n className={[\n `${baseClass}__content`,\n 'sidebar-row',\n selected && `${baseClass}__content--selected`,\n selected && 'sidebar-row--selected',\n ]\n .filter(Boolean)\n .join(' ')}\n >\n {hasChildren && (\n <button\n aria-expanded={expanded}\n aria-label={`${expanded ? t('general:collapse') : t('general:open')} ${node.title}`}\n className={`${baseClass}__toggle`}\n onClick={handleToggle}\n onMouseDown={(e) => e.preventDefault()}\n tabIndex={-1}\n type=\"button\"\n >\n <ChevronIcon direction={expanded ? 'down' : 'right'} size={16} />\n </button>\n )}\n <button\n className={[\n `${baseClass}__node-trigger`,\n selected && `${baseClass}__node-trigger--selected`,\n ]\n .filter(Boolean)\n .join(' ')}\n onClick={handleSelectClick}\n onMouseDown={(e) => e.preventDefault()}\n tabIndex={-1}\n title={node.title}\n type=\"button\"\n >\n {Boolean(icon) && <span className=\"sidebar-row__icon\">{icon}</span>}\n <span className={`${baseClass}__title sidebar-row__title`} id={titleID}>\n {node.title}\n </span>\n </button>\n {isLoading && expanded && (\n <span className={`${baseClass}__loading`}>\n <Spinner loadingText={null} size=\"sm\" />\n </span>\n )}\n </div>\n </div>\n\n {expanded && children && children.length > 0 && (\n <>\n <div className={`${baseClass}__children`} role=\"group\">\n {children.map((child) => {\n const childData = child as { id: number | string }\n const childId = childData.id\n const childTitle = getDocumentTitle(child, useAsTitle)\n return (\n <TreeNode\n allPossibleTypeValues={allPossibleTypeValues}\n baseFilter={baseFilter}\n cache={cache}\n collectionSlug={collectionSlug}\n depth={depth + 1}\n expandedNodes={expandedNodes}\n filterByCollections={filterByCollections}\n icon={icon}\n key={String(childId)}\n limit={limit}\n node={{\n id: childId,\n hasChildren: true,\n title: childTitle,\n }}\n onSelect={onSelect}\n onToggle={onToggle}\n parentFieldName={parentFieldName}\n selected={String(childId) === String(selectedNodeId)}\n selectedNodeId={selectedNodeId}\n typeFieldName={typeFieldName}\n useAsTitle={useAsTitle}\n />\n )\n })}\n </div>\n {hasMore && (\n <LoadMore\n currentCount={children.length}\n depth={depth + 1}\n id={`load-more-${node.id}`}\n onLoadMore={handleLoadMore}\n totalDocs={totalDocs}\n />\n )}\n </>\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -4,6 +4,8 @@
4
4
  display: flex;
5
5
  flex-direction: column;
6
6
  gap: var(--spacer-2);
7
+ padding-block: var(--spacer-2-5);
8
+ padding-inline: var(--spacer-2-5);
7
9
  }
8
10
 
9
11
  .tree {
@@ -40,7 +42,7 @@
40
42
  padding-block: var(--spacer-1);
41
43
 
42
44
  .sidebar-row__title {
43
- font-weight: var(--text-body-medium-strong-font-weight);
45
+ font-weight: var(--text-body-medium-bold-font-weight);
44
46
  }
45
47
  }
46
48
 
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Tree/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAwD,MAAM,OAAO,CAAA;AAE5E,OAAO,KAAK,EAAkB,kBAAkB,EAAgB,MAAM,YAAY,CAAA;AAgBlF,OAAO,aAAa,CAAA;AAsYpB,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAMtD,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Tree/index.tsx"],"names":[],"mappings":"AAKA,OAAO,KAAwD,MAAM,OAAO,CAAA;AAE5E,OAAO,KAAK,EAAkB,kBAAkB,EAAgB,MAAM,YAAY,CAAA;AAgBlF,OAAO,aAAa,CAAA;AAiXpB,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAMtD,CAAA"}
@@ -16,7 +16,7 @@ import { CreateDocumentButton } from '../../CreateDocumentButton/index.js';
16
16
  import { DelayedSpinner } from '../../DelayedSpinner/index.js';
17
17
  import { DocumentDrawer } from '../../DocumentDrawer/index.js';
18
18
  import { LoadMore } from './LoadMore/index.js';
19
- import { TreeFocusProvider, useTreeFocus } from './TreeFocusContext.js';
19
+ import { TreeFocusProvider, useFocusableItem, useTreeFocus } from './TreeFocusContext.js';
20
20
  import { TreeNode } from './TreeNode/index.js';
21
21
  import { useChildren } from './useChildren.js';
22
22
  import './index.css';
@@ -45,9 +45,7 @@ const HierarchyTreeInner = ({
45
45
  useAsTitle: useAsTitleProp
46
46
  }) => {
47
47
  const {
48
- focusedId,
49
- moveFocus,
50
- setFocusedId
48
+ moveFocus
51
49
  } = useTreeFocus();
52
50
  const router = useRouter();
53
51
  const {
@@ -175,6 +173,17 @@ const HierarchyTreeInner = ({
175
173
  }
176
174
  }, [initialData, filterByCollections, parentFieldName, collectionSlug, treeLimit, baseFilterKey]);
177
175
  const treeRef = useRef(null);
176
+ const allOptionRef = useRef(null);
177
+ const allOptionID = useId();
178
+ const {
179
+ handleFocus: handleAllFocus,
180
+ tabIndex: allTabIndex
181
+ } = useFocusableItem({
182
+ id: allOptionID,
183
+ type: 'node',
184
+ isInitialTabStop: true,
185
+ ref: allOptionRef
186
+ });
178
187
  const {
179
188
  children: rootNodes,
180
189
  hasMore,
@@ -206,26 +215,12 @@ const HierarchyTreeInner = ({
206
215
  id: id_0
207
216
  });
208
217
  }, [onNodeClick]);
209
- const rootFocusableIds = useMemo(() => rootNodes ? rootNodes.map(node => `node-${String(node.id)}`) : [], [rootNodes]);
210
- const firstRootFocusableId = rootFocusableIds[0];
211
- const lastRootFocusableId = rootFocusableIds[rootFocusableIds.length - 1];
212
218
  const handleTreeKeyDown = useCallback(e => {
213
- if (e.key === 'ArrowDown') {
219
+ if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {
214
220
  e.preventDefault();
215
- if (focusedId && firstRootFocusableId && lastRootFocusableId && focusedId === lastRootFocusableId) {
216
- setFocusedId(firstRootFocusableId);
217
- return;
218
- }
219
- moveFocus('down');
220
- } else if (e.key === 'ArrowUp') {
221
- e.preventDefault();
222
- if (focusedId && firstRootFocusableId && lastRootFocusableId && focusedId === firstRootFocusableId) {
223
- setFocusedId(lastRootFocusableId);
224
- return;
225
- }
226
- moveFocus('up');
221
+ moveFocus(e.key === 'ArrowDown' ? 'down' : 'up');
227
222
  }
228
- }, [firstRootFocusableId, focusedId, lastRootFocusableId, moveFocus, setFocusedId]);
223
+ }, [moveFocus]);
229
224
  if (isLoading && !rootNodes) {
230
225
  return /*#__PURE__*/_jsx("div", {
231
226
  className: baseClass,
@@ -273,14 +268,16 @@ const HierarchyTreeInner = ({
273
268
  "aria-selected": isAllSelected,
274
269
  className: [`${baseClass}__all-option`, 'sidebar-row', isAllSelected && `${baseClass}__all-option--selected`, isAllSelected && 'sidebar-row--selected'].filter(Boolean).join(' '),
275
270
  onClick: handleAllClick,
271
+ onFocus: handleAllFocus,
276
272
  onKeyDown: e_0 => {
277
273
  if (e_0.key === 'Enter' || e_0.key === ' ') {
278
274
  e_0.preventDefault();
279
275
  handleAllClick();
280
276
  }
281
277
  },
278
+ ref: allOptionRef,
282
279
  role: "treeitem",
283
- tabIndex: 0,
280
+ tabIndex: allTabIndex,
284
281
  children: /*#__PURE__*/_jsxs("span", {
285
282
  className: "sidebar-row__title",
286
283
  children: [t('general:all'), ' ', getTranslation(getEntityConfig({
@@ -289,7 +286,9 @@ const HierarchyTreeInner = ({
289
286
  })
290
287
  }), canCreate && /*#__PURE__*/_jsxs(_Fragment, {
291
288
  children: [/*#__PURE__*/_jsx(Button, {
292
- "aria-label": t('general:createNew'),
289
+ "aria-label": t('general:createNewLabel', {
290
+ label: getTranslation(collectionConfig.labels.singular, i18n)
291
+ }),
293
292
  buttonStyle: "ghost",
294
293
  className: `${baseClass}__create-button`,
295
294
  margin: false,
@@ -315,10 +314,10 @@ const HierarchyTreeInner = ({
315
314
  redirectAfterCreate: false
316
315
  })]
317
316
  })]
318
- }), rootNodes.map(node_0 => {
319
- const nodeId_0 = node_0.id;
317
+ }), rootNodes.map(node => {
318
+ const nodeId_0 = node.id;
320
319
  const nodeIdStr = typeof nodeId_0 === 'number' ? String(nodeId_0) : nodeId_0;
321
- const nodeTitle = getDocumentTitle(node_0, useAsTitle);
320
+ const nodeTitle = getDocumentTitle(node, useAsTitle);
322
321
  return /*#__PURE__*/_jsx(TreeNode, {
323
322
  allPossibleTypeValues: allPossibleTypeValues,
324
323
  baseFilter: baseFilter,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["useModal","getTranslation","DEFAULT_HIERARCHY_TREE_LIMIT","React","useCallback","useId","useMemo","useRef","useState","PlusIcon","useAuth","useConfig","useHierarchy","useRouter","useTranslation","Button","CreateDocumentButton","DelayedSpinner","DocumentDrawer","LoadMore","TreeFocusProvider","useTreeFocus","TreeNode","useChildren","baseClass","getDocumentTitle","doc","useAsTitle","docId","id","idStr","String","value","HierarchyTreeInner","baseFilter","collectionSlug","filterByCollections","icon","initialData","initialDataProp","initialExpandedNodes","initialExpandedNodesProp","onNodeClick","selectedNodeId","useAsTitleProp","focusedId","moveFocus","setFocusedId","router","i18n","t","permissions","getEntityConfig","closeModal","openModal","createDrawerSlug","isCreateDrawerOpen","setIsCreateDrawerOpen","getExpandedNodesForCollection","getTreeDataForCollection","toggleNodeForCollection","typeFieldName","collectionConfig","hierarchyConfig","hierarchy","undefined","parentFieldName","treeLimit","admin","canCreate","Boolean","collections","create","allPossibleTypeValues","relatedCollections","Object","keys","contextData","baseFilterKey","JSON","stringify","contextBaseFilterKey","contextSeededRef","lastInitialExpandedRef","current","expandedNodes","contextExpanded","size","Set","handleToggleNode","wasSeeded","length","initialSet","map","isCurrentlyExpanded","has","nodeId","childrenCache","Map","prevBaseFilterKeyRef","clear","docs","docsByParent","parentId","parentKey","set","get","push","filterKey","slice","sort","join","cacheKey","parentMeta","loadedParents","loadedCount","children","hasMore","page","Math","ceil","totalDocs","treeRef","rootNodes","isLoading","loadMore","loadMoreFromHook","refresh","cache","enabled","limit","handleLoadMore","handleNodeClick","rootFocusableIds","node","firstRootFocusableId","lastRootFocusableId","handleTreeKeyDown","e","key","preventDefault","_jsx","className","collectionLabel","buttonStyle","drawerSlug","label","labels","singular","onSave","isAllSelected","handleAllClick","_jsxs","onKeyDown","ref","role","tabIndex","filter","onClick","plural","_Fragment","margin","redirectAfterCreate","nodeIdStr","nodeTitle","depth","hasChildren","title","onSelect","onToggle","selected","currentCount","onLoadMore","HierarchyTree","props"],"sources":["../../../../src/elements/Hierarchy/Tree/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { DEFAULT_HIERARCHY_TREE_LIMIT } from 'payload/shared'\nimport React, { useCallback, useId, useMemo, useRef, useState } from 'react'\n\nimport type { CachedChildren, HierarchyTreeProps, TreeDocument } from './types.js'\n\nimport { PlusIcon } from '../../../icons/Plus/index.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useHierarchy } from '../../../providers/Hierarchy/index.js'\nimport { useRouter } from '../../../providers/RouterAdapter/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { CreateDocumentButton } from '../../CreateDocumentButton/index.js'\nimport { DelayedSpinner } from '../../DelayedSpinner/index.js'\nimport { DocumentDrawer } from '../../DocumentDrawer/index.js'\nimport { LoadMore } from './LoadMore/index.js'\nimport { TreeFocusProvider, useTreeFocus } from './TreeFocusContext.js'\nimport { TreeNode } from './TreeNode/index.js'\nimport { useChildren } from './useChildren.js'\nimport './index.css'\n\nconst baseClass = 'tree'\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 HierarchyTreeInner: React.FC<HierarchyTreeProps> = ({\n baseFilter,\n collectionSlug,\n filterByCollections,\n icon,\n initialData: initialDataProp,\n initialExpandedNodes: initialExpandedNodesProp,\n onNodeClick,\n selectedNodeId,\n useAsTitle: useAsTitleProp,\n}) => {\n const { focusedId, moveFocus, setFocusedId } = useTreeFocus()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { getEntityConfig } = useConfig()\n const { closeModal, openModal } = useModal()\n const createDrawerSlug = `tree-create-${useId()}`\n const [isCreateDrawerOpen, setIsCreateDrawerOpen] = useState(false)\n\n const {\n getExpandedNodesForCollection,\n getTreeDataForCollection,\n toggleNodeForCollection,\n typeFieldName,\n } = useHierarchy()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n const hierarchyConfig =\n collectionConfig.hierarchy && typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy\n : undefined\n const parentFieldName = hierarchyConfig?.parentFieldName\n const treeLimit = hierarchyConfig?.admin?.treeLimit ?? DEFAULT_HIERARCHY_TREE_LIMIT\n const useAsTitle = useAsTitleProp ?? collectionConfig.admin?.useAsTitle\n const canCreate = Boolean(permissions?.collections?.[collectionSlug]?.create)\n\n const allPossibleTypeValues = useMemo(\n () =>\n hierarchyConfig?.relatedCollections\n ? Object.keys(hierarchyConfig.relatedCollections)\n : undefined,\n [hierarchyConfig?.relatedCollections],\n )\n\n const contextData = getTreeDataForCollection(collectionSlug)\n const baseFilterKey = baseFilter ? JSON.stringify(baseFilter) : ''\n const contextBaseFilterKey = contextData?.baseFilter ? JSON.stringify(contextData.baseFilter) : ''\n const initialData =\n baseFilterKey === contextBaseFilterKey ? (contextData ?? initialDataProp) : initialDataProp\n // Tracks whether context has been seeded at least once since the last navigation.\n // Resets when initialExpandedNodesProp changes (new array reference = navigation).\n // Allows the memo to distinguish \"not yet seeded\" (fall back to prop) from\n // \"user collapsed all nodes\" (trust empty context).\n const contextSeededRef = useRef(false)\n const lastInitialExpandedRef = useRef(initialExpandedNodesProp)\n if (lastInitialExpandedRef.current !== initialExpandedNodesProp) {\n lastInitialExpandedRef.current = initialExpandedNodesProp\n contextSeededRef.current = false\n }\n\n const expandedNodes = useMemo(() => {\n const contextExpanded = getExpandedNodesForCollection(collectionSlug)\n if (contextExpanded.size > 0) {\n contextSeededRef.current = true\n return contextExpanded\n }\n if (contextSeededRef.current) {\n // Context was seeded (had nodes since last navigation) — trust empty set as \"all collapsed\"\n return contextExpanded\n }\n return initialExpandedNodesProp ? new Set(initialExpandedNodesProp) : contextExpanded\n }, [collectionSlug, getExpandedNodesForCollection, initialExpandedNodesProp])\n\n const handleToggleNode = useCallback(\n ({ id }: { id: number | string }) => {\n // Mark context as seeded so the memo never falls back to the prop after this interaction.\n // Capture the previous value first — seeding is only needed on the very first interaction.\n const wasSeeded = contextSeededRef.current\n contextSeededRef.current = true\n const contextExpanded = getExpandedNodesForCollection(collectionSlug)\n if (!wasSeeded && contextExpanded.size === 0 && initialExpandedNodesProp?.length) {\n // Context not yet seeded. Seed it with all initial nodes, applying the toggle correctly:\n // exclude the target if collapsing, include it if expanding.\n const initialSet = new Set(initialExpandedNodesProp.map(String))\n const isCurrentlyExpanded = initialSet.has(String(id))\n for (const nodeId of initialExpandedNodesProp) {\n if (!isCurrentlyExpanded || String(nodeId) !== String(id)) {\n toggleNodeForCollection(collectionSlug, nodeId)\n }\n }\n if (!isCurrentlyExpanded) {\n toggleNodeForCollection(collectionSlug, id)\n }\n return\n }\n toggleNodeForCollection(collectionSlug, id)\n },\n [\n collectionSlug,\n getExpandedNodesForCollection,\n initialExpandedNodesProp,\n toggleNodeForCollection,\n ],\n )\n\n // Pre-populate cache with initialData synchronously before first render\n const childrenCache = useRef<Map<string, CachedChildren>>(new Map())\n\n const prevBaseFilterKeyRef = useRef(baseFilterKey)\n if (prevBaseFilterKeyRef.current !== baseFilterKey) {\n prevBaseFilterKeyRef.current = baseFilterKey\n childrenCache.current.clear()\n }\n\n useMemo(() => {\n if (!initialData || initialData.docs.length === 0) {\n return\n }\n\n const docsByParent = new Map<string, TreeDocument[]>()\n for (const doc of initialData.docs) {\n const parentId = doc[parentFieldName] || 'null'\n const parentKey = String(parentId)\n if (!docsByParent.has(parentKey)) {\n docsByParent.set(parentKey, [])\n }\n docsByParent.get(parentKey).push(doc)\n }\n\n const filterKey = filterByCollections?.length\n ? filterByCollections.slice().sort().join(',')\n : ''\n for (const [parentKey, docs] of docsByParent) {\n const cacheKey = `${collectionSlug}-${parentKey}-${filterKey}-${baseFilterKey}`\n const parentMeta = initialData.loadedParents[parentKey]\n\n if (parentMeta) {\n const loadedCount = parentMeta.loadedCount ?? docs.length\n childrenCache.current.set(cacheKey, {\n children: docs,\n hasMore: parentMeta.hasMore,\n page: Math.ceil(loadedCount / treeLimit) || 1,\n totalDocs: parentMeta.totalDocs,\n })\n } else {\n childrenCache.current.set(cacheKey, {\n children: docs,\n hasMore: false,\n page: 1,\n totalDocs: docs.length,\n })\n }\n }\n }, [initialData, filterByCollections, parentFieldName, collectionSlug, treeLimit, baseFilterKey])\n\n const treeRef = useRef<HTMLDivElement>(null)\n\n const {\n children: rootNodes,\n hasMore,\n isLoading,\n loadMore: loadMoreFromHook,\n refresh,\n totalDocs,\n } = useChildren({\n allPossibleTypeValues,\n baseFilter,\n cache: childrenCache,\n collectionSlug,\n enabled: true,\n filterByCollections,\n initialData,\n limit: treeLimit,\n parentFieldName,\n parentId: 'null',\n typeFieldName,\n useAsTitle,\n })\n\n const handleLoadMore = useCallback(async () => {\n await loadMoreFromHook()\n }, [loadMoreFromHook])\n\n const handleNodeClick = useCallback(\n ({ id }: { id: number | string }) => {\n onNodeClick?.({ id })\n },\n [onNodeClick],\n )\n\n const rootFocusableIds = useMemo(\n () => (rootNodes ? rootNodes.map((node) => `node-${String(node.id)}`) : []),\n [rootNodes],\n )\n\n const firstRootFocusableId = rootFocusableIds[0]\n const lastRootFocusableId = rootFocusableIds[rootFocusableIds.length - 1]\n\n const handleTreeKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (e.key === 'ArrowDown') {\n e.preventDefault()\n\n if (\n focusedId &&\n firstRootFocusableId &&\n lastRootFocusableId &&\n focusedId === lastRootFocusableId\n ) {\n setFocusedId(firstRootFocusableId)\n return\n }\n\n moveFocus('down')\n } else if (e.key === 'ArrowUp') {\n e.preventDefault()\n\n if (\n focusedId &&\n firstRootFocusableId &&\n lastRootFocusableId &&\n focusedId === firstRootFocusableId\n ) {\n setFocusedId(lastRootFocusableId)\n return\n }\n\n moveFocus('up')\n }\n },\n [firstRootFocusableId, focusedId, lastRootFocusableId, moveFocus, setFocusedId],\n )\n\n if (isLoading && !rootNodes) {\n return (\n <div className={baseClass}>\n <DelayedSpinner baseClass={baseClass} isLoading={true} />\n </div>\n )\n }\n\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 isAllSelected = selectedNodeId === null\n const handleAllClick = () => onNodeClick?.({ id: null })\n\n return (\n <div\n className={baseClass}\n onKeyDown={handleTreeKeyDown}\n ref={treeRef}\n role=\"tree\"\n tabIndex={-1}\n >\n <div className={`${baseClass}__all-option-wrapper`}>\n <div\n aria-selected={isAllSelected}\n className={[\n `${baseClass}__all-option`,\n 'sidebar-row',\n isAllSelected && `${baseClass}__all-option--selected`,\n isAllSelected && 'sidebar-row--selected',\n ]\n .filter(Boolean)\n .join(' ')}\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 <span className=\"sidebar-row__title\">\n {t('general:all')}{' '}\n {getTranslation(getEntityConfig({ collectionSlug })?.labels?.plural, i18n)}\n </span>\n </div>\n {canCreate && (\n <>\n <Button\n aria-label={t('general:createNew')}\n buttonStyle=\"ghost\"\n className={`${baseClass}__create-button`}\n margin={false}\n onClick={() => {\n setIsCreateDrawerOpen(true)\n openModal(createDrawerSlug)\n }}\n >\n <PlusIcon size={24} />\n </Button>\n {isCreateDrawerOpen && (\n <DocumentDrawer\n collectionSlug={collectionSlug}\n drawerSlug={createDrawerSlug}\n initialData={parentFieldName ? { [parentFieldName]: null } : undefined}\n onSave={async () => {\n closeModal(createDrawerSlug)\n setIsCreateDrawerOpen(false)\n await refresh()\n router.refresh()\n }}\n redirectAfterCreate={false}\n />\n )}\n </>\n )}\n </div>\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\n return (\n <TreeNode\n allPossibleTypeValues={allPossibleTypeValues}\n baseFilter={baseFilter}\n cache={childrenCache}\n collectionSlug={collectionSlug}\n depth={0}\n expandedNodes={expandedNodes}\n filterByCollections={filterByCollections}\n icon={icon}\n key={nodeIdStr}\n limit={treeLimit}\n node={{ id: nodeId, hasChildren: true, title: nodeTitle }}\n onSelect={handleNodeClick}\n onToggle={handleToggleNode}\n parentFieldName={parentFieldName}\n selected={nodeIdStr === String(selectedNodeId)}\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 HierarchyTree: React.FC<HierarchyTreeProps> = (props) => {\n return (\n <TreeFocusProvider>\n <HierarchyTreeInner {...props} />\n </TreeFocusProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["useModal","getTranslation","DEFAULT_HIERARCHY_TREE_LIMIT","React","useCallback","useId","useMemo","useRef","useState","PlusIcon","useAuth","useConfig","useHierarchy","useRouter","useTranslation","Button","CreateDocumentButton","DelayedSpinner","DocumentDrawer","LoadMore","TreeFocusProvider","useFocusableItem","useTreeFocus","TreeNode","useChildren","baseClass","getDocumentTitle","doc","useAsTitle","docId","id","idStr","String","value","HierarchyTreeInner","baseFilter","collectionSlug","filterByCollections","icon","initialData","initialDataProp","initialExpandedNodes","initialExpandedNodesProp","onNodeClick","selectedNodeId","useAsTitleProp","moveFocus","router","i18n","t","permissions","getEntityConfig","closeModal","openModal","createDrawerSlug","isCreateDrawerOpen","setIsCreateDrawerOpen","getExpandedNodesForCollection","getTreeDataForCollection","toggleNodeForCollection","typeFieldName","collectionConfig","hierarchyConfig","hierarchy","undefined","parentFieldName","treeLimit","admin","canCreate","Boolean","collections","create","allPossibleTypeValues","relatedCollections","Object","keys","contextData","baseFilterKey","JSON","stringify","contextBaseFilterKey","contextSeededRef","lastInitialExpandedRef","current","expandedNodes","contextExpanded","size","Set","handleToggleNode","wasSeeded","length","initialSet","map","isCurrentlyExpanded","has","nodeId","childrenCache","Map","prevBaseFilterKeyRef","clear","docs","docsByParent","parentId","parentKey","set","get","push","filterKey","slice","sort","join","cacheKey","parentMeta","loadedParents","loadedCount","children","hasMore","page","Math","ceil","totalDocs","treeRef","allOptionRef","allOptionID","handleFocus","handleAllFocus","tabIndex","allTabIndex","type","isInitialTabStop","ref","rootNodes","isLoading","loadMore","loadMoreFromHook","refresh","cache","enabled","limit","handleLoadMore","handleNodeClick","handleTreeKeyDown","e","key","preventDefault","_jsx","className","collectionLabel","buttonStyle","drawerSlug","label","labels","singular","onSave","isAllSelected","handleAllClick","_jsxs","onKeyDown","role","filter","onClick","onFocus","plural","_Fragment","margin","redirectAfterCreate","node","nodeIdStr","nodeTitle","depth","hasChildren","title","onSelect","onToggle","selected","currentCount","onLoadMore","HierarchyTree","props"],"sources":["../../../../src/elements/Hierarchy/Tree/index.tsx"],"sourcesContent":["'use client'\n\nimport { useModal } from '@faceless-ui/modal'\nimport { getTranslation } from '@payloadcms/translations'\nimport { DEFAULT_HIERARCHY_TREE_LIMIT } from 'payload/shared'\nimport React, { useCallback, useId, useMemo, useRef, useState } from 'react'\n\nimport type { CachedChildren, HierarchyTreeProps, TreeDocument } from './types.js'\n\nimport { PlusIcon } from '../../../icons/Plus/index.js'\nimport { useAuth } from '../../../providers/Auth/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useHierarchy } from '../../../providers/Hierarchy/index.js'\nimport { useRouter } from '../../../providers/RouterAdapter/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { Button } from '../../Button/index.js'\nimport { CreateDocumentButton } from '../../CreateDocumentButton/index.js'\nimport { DelayedSpinner } from '../../DelayedSpinner/index.js'\nimport { DocumentDrawer } from '../../DocumentDrawer/index.js'\nimport { LoadMore } from './LoadMore/index.js'\nimport { TreeFocusProvider, useFocusableItem, useTreeFocus } from './TreeFocusContext.js'\nimport { TreeNode } from './TreeNode/index.js'\nimport { useChildren } from './useChildren.js'\nimport './index.css'\n\nconst baseClass = 'tree'\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 HierarchyTreeInner: React.FC<HierarchyTreeProps> = ({\n baseFilter,\n collectionSlug,\n filterByCollections,\n icon,\n initialData: initialDataProp,\n initialExpandedNodes: initialExpandedNodesProp,\n onNodeClick,\n selectedNodeId,\n useAsTitle: useAsTitleProp,\n}) => {\n const { moveFocus } = useTreeFocus()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const { permissions } = useAuth()\n const { getEntityConfig } = useConfig()\n const { closeModal, openModal } = useModal()\n const createDrawerSlug = `tree-create-${useId()}`\n const [isCreateDrawerOpen, setIsCreateDrawerOpen] = useState(false)\n\n const {\n getExpandedNodesForCollection,\n getTreeDataForCollection,\n toggleNodeForCollection,\n typeFieldName,\n } = useHierarchy()\n\n const collectionConfig = getEntityConfig({ collectionSlug })\n const hierarchyConfig =\n collectionConfig.hierarchy && typeof collectionConfig.hierarchy === 'object'\n ? collectionConfig.hierarchy\n : undefined\n const parentFieldName = hierarchyConfig?.parentFieldName\n const treeLimit = hierarchyConfig?.admin?.treeLimit ?? DEFAULT_HIERARCHY_TREE_LIMIT\n const useAsTitle = useAsTitleProp ?? collectionConfig.admin?.useAsTitle\n const canCreate = Boolean(permissions?.collections?.[collectionSlug]?.create)\n\n const allPossibleTypeValues = useMemo(\n () =>\n hierarchyConfig?.relatedCollections\n ? Object.keys(hierarchyConfig.relatedCollections)\n : undefined,\n [hierarchyConfig?.relatedCollections],\n )\n\n const contextData = getTreeDataForCollection(collectionSlug)\n const baseFilterKey = baseFilter ? JSON.stringify(baseFilter) : ''\n const contextBaseFilterKey = contextData?.baseFilter ? JSON.stringify(contextData.baseFilter) : ''\n const initialData =\n baseFilterKey === contextBaseFilterKey ? (contextData ?? initialDataProp) : initialDataProp\n // Tracks whether context has been seeded at least once since the last navigation.\n // Resets when initialExpandedNodesProp changes (new array reference = navigation).\n // Allows the memo to distinguish \"not yet seeded\" (fall back to prop) from\n // \"user collapsed all nodes\" (trust empty context).\n const contextSeededRef = useRef(false)\n const lastInitialExpandedRef = useRef(initialExpandedNodesProp)\n if (lastInitialExpandedRef.current !== initialExpandedNodesProp) {\n lastInitialExpandedRef.current = initialExpandedNodesProp\n contextSeededRef.current = false\n }\n\n const expandedNodes = useMemo(() => {\n const contextExpanded = getExpandedNodesForCollection(collectionSlug)\n if (contextExpanded.size > 0) {\n contextSeededRef.current = true\n return contextExpanded\n }\n if (contextSeededRef.current) {\n // Context was seeded (had nodes since last navigation) — trust empty set as \"all collapsed\"\n return contextExpanded\n }\n return initialExpandedNodesProp ? new Set(initialExpandedNodesProp) : contextExpanded\n }, [collectionSlug, getExpandedNodesForCollection, initialExpandedNodesProp])\n\n const handleToggleNode = useCallback(\n ({ id }: { id: number | string }) => {\n // Mark context as seeded so the memo never falls back to the prop after this interaction.\n // Capture the previous value first — seeding is only needed on the very first interaction.\n const wasSeeded = contextSeededRef.current\n contextSeededRef.current = true\n const contextExpanded = getExpandedNodesForCollection(collectionSlug)\n if (!wasSeeded && contextExpanded.size === 0 && initialExpandedNodesProp?.length) {\n // Context not yet seeded. Seed it with all initial nodes, applying the toggle correctly:\n // exclude the target if collapsing, include it if expanding.\n const initialSet = new Set(initialExpandedNodesProp.map(String))\n const isCurrentlyExpanded = initialSet.has(String(id))\n for (const nodeId of initialExpandedNodesProp) {\n if (!isCurrentlyExpanded || String(nodeId) !== String(id)) {\n toggleNodeForCollection(collectionSlug, nodeId)\n }\n }\n if (!isCurrentlyExpanded) {\n toggleNodeForCollection(collectionSlug, id)\n }\n return\n }\n toggleNodeForCollection(collectionSlug, id)\n },\n [\n collectionSlug,\n getExpandedNodesForCollection,\n initialExpandedNodesProp,\n toggleNodeForCollection,\n ],\n )\n\n // Pre-populate cache with initialData synchronously before first render\n const childrenCache = useRef<Map<string, CachedChildren>>(new Map())\n\n const prevBaseFilterKeyRef = useRef(baseFilterKey)\n if (prevBaseFilterKeyRef.current !== baseFilterKey) {\n prevBaseFilterKeyRef.current = baseFilterKey\n childrenCache.current.clear()\n }\n\n useMemo(() => {\n if (!initialData || initialData.docs.length === 0) {\n return\n }\n\n const docsByParent = new Map<string, TreeDocument[]>()\n for (const doc of initialData.docs) {\n const parentId = doc[parentFieldName] || 'null'\n const parentKey = String(parentId)\n if (!docsByParent.has(parentKey)) {\n docsByParent.set(parentKey, [])\n }\n docsByParent.get(parentKey).push(doc)\n }\n\n const filterKey = filterByCollections?.length\n ? filterByCollections.slice().sort().join(',')\n : ''\n for (const [parentKey, docs] of docsByParent) {\n const cacheKey = `${collectionSlug}-${parentKey}-${filterKey}-${baseFilterKey}`\n const parentMeta = initialData.loadedParents[parentKey]\n\n if (parentMeta) {\n const loadedCount = parentMeta.loadedCount ?? docs.length\n childrenCache.current.set(cacheKey, {\n children: docs,\n hasMore: parentMeta.hasMore,\n page: Math.ceil(loadedCount / treeLimit) || 1,\n totalDocs: parentMeta.totalDocs,\n })\n } else {\n childrenCache.current.set(cacheKey, {\n children: docs,\n hasMore: false,\n page: 1,\n totalDocs: docs.length,\n })\n }\n }\n }, [initialData, filterByCollections, parentFieldName, collectionSlug, treeLimit, baseFilterKey])\n\n const treeRef = useRef<HTMLDivElement>(null)\n const allOptionRef = useRef<HTMLDivElement>(null)\n const allOptionID = useId()\n const { handleFocus: handleAllFocus, tabIndex: allTabIndex } = useFocusableItem({\n id: allOptionID,\n type: 'node',\n isInitialTabStop: true,\n ref: allOptionRef,\n })\n\n const {\n children: rootNodes,\n hasMore,\n isLoading,\n loadMore: loadMoreFromHook,\n refresh,\n totalDocs,\n } = useChildren({\n allPossibleTypeValues,\n baseFilter,\n cache: childrenCache,\n collectionSlug,\n enabled: true,\n filterByCollections,\n initialData,\n limit: treeLimit,\n parentFieldName,\n parentId: 'null',\n typeFieldName,\n useAsTitle,\n })\n\n const handleLoadMore = useCallback(async () => {\n await loadMoreFromHook()\n }, [loadMoreFromHook])\n\n const handleNodeClick = useCallback(\n ({ id }: { id: number | string }) => {\n onNodeClick?.({ id })\n },\n [onNodeClick],\n )\n\n const handleTreeKeyDown = useCallback(\n (e: React.KeyboardEvent) => {\n if (e.key === 'ArrowDown' || e.key === 'ArrowUp') {\n e.preventDefault()\n moveFocus(e.key === 'ArrowDown' ? 'down' : 'up')\n }\n },\n [moveFocus],\n )\n\n if (isLoading && !rootNodes) {\n return (\n <div className={baseClass}>\n <DelayedSpinner baseClass={baseClass} isLoading={true} />\n </div>\n )\n }\n\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 isAllSelected = selectedNodeId === null\n const handleAllClick = () => onNodeClick?.({ id: null })\n\n return (\n <div\n className={baseClass}\n onKeyDown={handleTreeKeyDown}\n ref={treeRef}\n role=\"tree\"\n tabIndex={-1}\n >\n <div className={`${baseClass}__all-option-wrapper`}>\n <div\n aria-selected={isAllSelected}\n className={[\n `${baseClass}__all-option`,\n 'sidebar-row',\n isAllSelected && `${baseClass}__all-option--selected`,\n isAllSelected && 'sidebar-row--selected',\n ]\n .filter(Boolean)\n .join(' ')}\n onClick={handleAllClick}\n onFocus={handleAllFocus}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n e.preventDefault()\n handleAllClick()\n }\n }}\n ref={allOptionRef}\n role=\"treeitem\"\n tabIndex={allTabIndex}\n >\n <span className=\"sidebar-row__title\">\n {t('general:all')}{' '}\n {getTranslation(getEntityConfig({ collectionSlug })?.labels?.plural, i18n)}\n </span>\n </div>\n {canCreate && (\n <>\n <Button\n aria-label={t('general:createNewLabel', {\n label: getTranslation(collectionConfig.labels.singular, i18n),\n })}\n buttonStyle=\"ghost\"\n className={`${baseClass}__create-button`}\n margin={false}\n onClick={() => {\n setIsCreateDrawerOpen(true)\n openModal(createDrawerSlug)\n }}\n >\n <PlusIcon size={24} />\n </Button>\n {isCreateDrawerOpen && (\n <DocumentDrawer\n collectionSlug={collectionSlug}\n drawerSlug={createDrawerSlug}\n initialData={parentFieldName ? { [parentFieldName]: null } : undefined}\n onSave={async () => {\n closeModal(createDrawerSlug)\n setIsCreateDrawerOpen(false)\n await refresh()\n router.refresh()\n }}\n redirectAfterCreate={false}\n />\n )}\n </>\n )}\n </div>\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\n return (\n <TreeNode\n allPossibleTypeValues={allPossibleTypeValues}\n baseFilter={baseFilter}\n cache={childrenCache}\n collectionSlug={collectionSlug}\n depth={0}\n expandedNodes={expandedNodes}\n filterByCollections={filterByCollections}\n icon={icon}\n key={nodeIdStr}\n limit={treeLimit}\n node={{ id: nodeId, hasChildren: true, title: nodeTitle }}\n onSelect={handleNodeClick}\n onToggle={handleToggleNode}\n parentFieldName={parentFieldName}\n selected={nodeIdStr === String(selectedNodeId)}\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 HierarchyTree: React.FC<HierarchyTreeProps> = (props) => {\n return (\n <TreeFocusProvider>\n <HierarchyTreeInner {...props} />\n </TreeFocusProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"useChildren.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Tree/useChildren.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAMpC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAM1E,KAAK,eAAe,GAAG;IACrB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAA;IAChC,gEAAgE;IAChE,UAAU,CAAC,EAAE,IAAI,GAAG,KAAK,CAAA;IACzB,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,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,wFAAwF;IACxF,IAAI,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IACnC,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,kMAcrB,eAAe,KAAG,iBA6PpB,CAAA"}
1
+ {"version":3,"file":"useChildren.d.ts","sourceRoot":"","sources":["../../../../src/elements/Hierarchy/Tree/useChildren.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAMpC,OAAO,KAAK,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,YAAY,CAAA;AAK1E,KAAK,eAAe,GAAG;IACrB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAA;IAChC,gEAAgE;IAChE,UAAU,CAAC,EAAE,IAAI,GAAG,KAAK,CAAA;IACzB,KAAK,CAAC,EAAE,SAAS,CAAA;IACjB,yEAAyE;IACzE,QAAQ,CAAC,EAAE,MAAM,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,wFAAwF;IACxF,IAAI,EAAE,MAAM,OAAO,CAAC,YAAY,EAAE,CAAC,CAAA;IACnC,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,kMAcrB,eAAe,KAAG,iBAyPpB,CAAA"}
@@ -1,7 +1,6 @@
1
1
  import { combineWhereConstraints, formatAdminURL } from 'payload/shared';
2
2
  import * as qs from 'qs-esm';
3
3
  import { useCallback, useEffect, useRef, useState } from 'react';
4
- import { useBranchParam } from '../../../providers/Branch/index.js';
5
4
  import { useConfig } from '../../../providers/Config/index.js';
6
5
  import { isSuperset } from '../../../utilities/isSuperset.js';
7
6
  export const useChildren = ({
@@ -59,7 +58,6 @@ export const useChildren = ({
59
58
  serverURL
60
59
  }
61
60
  } = useConfig();
62
- const branch = useBranchParam();
63
61
  const fetchPage = useCallback(async (pageToFetch, currentChildren) => {
64
62
  setIsLoading(true);
65
63
  try {
@@ -103,7 +101,6 @@ export const useChildren = ({
103
101
  // Combine conditions: parent + filter + baseFilter
104
102
  const where = combineWhereConstraints([parentCondition, filterCondition, baseFilter]);
105
103
  const queryParams = {
106
- branch,
107
104
  limit,
108
105
  page: pageToFetch,
109
106
  sort: useAsTitle ?? 'id',
@@ -160,7 +157,7 @@ export const useChildren = ({
160
157
  } finally {
161
158
  setIsLoading(false);
162
159
  }
163
- }, [branch, allPossibleTypeValues, baseFilter, parentId, parentFieldName, filterByCollections, typeFieldName, limit, useAsTitle, api, collectionSlug, serverURL, cache, cacheKey]);
160
+ }, [allPossibleTypeValues, baseFilter, parentId, parentFieldName, filterByCollections, typeFieldName, limit, useAsTitle, api, collectionSlug, serverURL, cache, cacheKey]);
164
161
  // Reset state and reload when filter changes
165
162
  const prevFilterKeyRef = useRef(filterKey);
166
163
  useEffect(() => {
@@ -1 +1 @@
1
- {"version":3,"file":"useChildren.js","names":["combineWhereConstraints","formatAdminURL","qs","useCallback","useEffect","useRef","useState","useBranchParam","useConfig","isSuperset","useChildren","allPossibleTypeValues","baseFilter","cache","cacheKey","cacheKeyProp","collectionSlug","enabled","filterByCollections","initialData","limit","parentFieldName","parentId","typeFieldName","useAsTitle","filterKey","length","slice","sort","join","baseFilterKey","JSON","stringify","String","cachedData","current","get","parentKey","parentMeta","loadedParents","hasInitialData","initialDocsForParent","docs","filter","doc","docParent","children","setChildren","isLoading","setIsLoading","page","setPage","totalDocs","setTotalDocs","hasMore","setHasMore","initializedRef","childrenRef","isLoadingRef","config","routes","api","serverURL","branch","fetchPage","pageToFetch","currentChildren","parentCondition","or","exists","equals","filterCondition","in","not_in","undefined","where","queryParams","queryString","addQueryPrefix","url","apiRoute","path","response","fetch","credentials","ok","Error","data","json","allDocs","newDocs","newChildren","hasNextPage","set","emptyChildren","prevFilterKeyRef","load","currentCachedData","loadMore","shouldRefetchPage1","refresh","delete","effectiveChildren"],"sources":["../../../../src/elements/Hierarchy/Tree/useChildren.tsx"],"sourcesContent":["import type { Where } from 'payload'\n\nimport { combineWhereConstraints, formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport { useCallback, useEffect, useRef, useState } from 'react'\n\nimport type { TreeCache, TreeDocument, TreeInitialData } from './types.js'\n\nimport { useBranchParam } from '../../../providers/Branch/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { isSuperset } from '../../../utilities/isSuperset.js'\n\ntype UseChildrenArgs = {\n allPossibleTypeValues?: string[]\n /** Base filter to apply to all queries (e.g., tenant filter) */\n baseFilter?: null | Where\n cache?: TreeCache\n /** Pre-computed cache key to ensure consistency with cache population */\n cacheKey?: string\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 /** Explicitly load children. Safe to call multiple times — no-ops if already loaded. */\n load: () => Promise<TreeDocument[]>\n loadMore: () => Promise<TreeDocument[]>\n refresh: () => Promise<TreeDocument[]>\n totalDocs: number\n}\n\nexport const useChildren = ({\n allPossibleTypeValues,\n baseFilter,\n cache,\n cacheKey: cacheKeyProp,\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 baseFilterKey = baseFilter ? JSON.stringify(baseFilter) : ''\n // Use provided cacheKey for consistency with cache population, or compute if not provided\n const cacheKey =\n cacheKeyProp ?? `${collectionSlug}-${String(parentId)}-${filterKey}-${baseFilterKey}`\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(false)\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 // Refs for stable access inside load() without adding state to its dep array\n const childrenRef = useRef(children)\n childrenRef.current = children\n const isLoadingRef = useRef(isLoading)\n isLoadingRef.current = isLoading\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const branch = useBranchParam()\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: undefined | Where =\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 : undefined\n\n // Combine conditions: parent + filter + baseFilter\n const where = combineWhereConstraints([parentCondition, filterCondition, baseFilter])\n\n const queryParams: Record<string, unknown> = {\n branch,\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 branch,\n allPossibleTypeValues,\n baseFilter,\n parentId,\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 and reload 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 // If the node is currently expanded, immediately reload with the new filter\n if (enabled) {\n void fetchPage(1, null)\n }\n }\n }, [filterKey, enabled, fetchPage])\n\n // Load children explicitly. Safe to call multiple times — no-ops if already loaded or loading.\n const load = useCallback(async (): Promise<TreeDocument[]> => {\n // Consume initialData on first call without re-fetching\n if (initializedRef.current && childrenRef.current !== null) {\n initializedRef.current = false\n return childrenRef.current\n }\n\n // Already loaded\n if (childrenRef.current !== null) {\n return childrenRef.current\n }\n\n // Guard against concurrent calls\n if (isLoadingRef.current) {\n return []\n }\n\n // Restore from cache when available (e.g., after a filter reset)\n const currentCachedData = cache?.current.get(cacheKey)\n if (currentCachedData) {\n setChildren(currentCachedData.children)\n setPage(currentCachedData.page)\n setTotalDocs(currentCachedData.totalDocs)\n setHasMore(currentCachedData.hasMore)\n return currentCachedData.children\n }\n\n return fetchPage(1, null)\n }, [cache, cacheKey, fetchPage])\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 // If state hasn't been loaded yet, read directly from cache as a synchronous fallback.\n // Tree's useMemo pre-populates the cache before child TreeNodes render, so this eliminates\n // the brief null-children flash that occurs when a node becomes expanded after context updates.\n const effectiveChildren = children ?? cache?.current.get(cacheKey)?.children ?? null\n\n return { children: effectiveChildren, hasMore, isLoading, load, loadMore, refresh, totalDocs }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"useChildren.js","names":["combineWhereConstraints","formatAdminURL","qs","useCallback","useEffect","useRef","useState","useConfig","isSuperset","useChildren","allPossibleTypeValues","baseFilter","cache","cacheKey","cacheKeyProp","collectionSlug","enabled","filterByCollections","initialData","limit","parentFieldName","parentId","typeFieldName","useAsTitle","filterKey","length","slice","sort","join","baseFilterKey","JSON","stringify","String","cachedData","current","get","parentKey","parentMeta","loadedParents","hasInitialData","initialDocsForParent","docs","filter","doc","docParent","children","setChildren","isLoading","setIsLoading","page","setPage","totalDocs","setTotalDocs","hasMore","setHasMore","initializedRef","childrenRef","isLoadingRef","config","routes","api","serverURL","fetchPage","pageToFetch","currentChildren","parentCondition","or","exists","equals","filterCondition","in","not_in","undefined","where","queryParams","queryString","addQueryPrefix","url","apiRoute","path","response","fetch","credentials","ok","Error","data","json","allDocs","newDocs","newChildren","hasNextPage","set","emptyChildren","prevFilterKeyRef","load","currentCachedData","loadMore","shouldRefetchPage1","refresh","delete","effectiveChildren"],"sources":["../../../../src/elements/Hierarchy/Tree/useChildren.tsx"],"sourcesContent":["import type { Where } from 'payload'\n\nimport { combineWhereConstraints, formatAdminURL } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport { useCallback, useEffect, useRef, useState } from 'react'\n\nimport type { 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 /** Base filter to apply to all queries (e.g., tenant filter) */\n baseFilter?: null | Where\n cache?: TreeCache\n /** Pre-computed cache key to ensure consistency with cache population */\n cacheKey?: string\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 /** Explicitly load children. Safe to call multiple times — no-ops if already loaded. */\n load: () => Promise<TreeDocument[]>\n loadMore: () => Promise<TreeDocument[]>\n refresh: () => Promise<TreeDocument[]>\n totalDocs: number\n}\n\nexport const useChildren = ({\n allPossibleTypeValues,\n baseFilter,\n cache,\n cacheKey: cacheKeyProp,\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 baseFilterKey = baseFilter ? JSON.stringify(baseFilter) : ''\n // Use provided cacheKey for consistency with cache population, or compute if not provided\n const cacheKey =\n cacheKeyProp ?? `${collectionSlug}-${String(parentId)}-${filterKey}-${baseFilterKey}`\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(false)\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 // Refs for stable access inside load() without adding state to its dep array\n const childrenRef = useRef(children)\n childrenRef.current = children\n const isLoadingRef = useRef(isLoading)\n isLoadingRef.current = isLoading\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: undefined | Where =\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 : undefined\n\n // Combine conditions: parent + filter + baseFilter\n const where = combineWhereConstraints([parentCondition, filterCondition, baseFilter])\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 baseFilter,\n parentId,\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 and reload 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 // If the node is currently expanded, immediately reload with the new filter\n if (enabled) {\n void fetchPage(1, null)\n }\n }\n }, [filterKey, enabled, fetchPage])\n\n // Load children explicitly. Safe to call multiple times — no-ops if already loaded or loading.\n const load = useCallback(async (): Promise<TreeDocument[]> => {\n // Consume initialData on first call without re-fetching\n if (initializedRef.current && childrenRef.current !== null) {\n initializedRef.current = false\n return childrenRef.current\n }\n\n // Already loaded\n if (childrenRef.current !== null) {\n return childrenRef.current\n }\n\n // Guard against concurrent calls\n if (isLoadingRef.current) {\n return []\n }\n\n // Restore from cache when available (e.g., after a filter reset)\n const currentCachedData = cache?.current.get(cacheKey)\n if (currentCachedData) {\n setChildren(currentCachedData.children)\n setPage(currentCachedData.page)\n setTotalDocs(currentCachedData.totalDocs)\n setHasMore(currentCachedData.hasMore)\n return currentCachedData.children\n }\n\n return fetchPage(1, null)\n }, [cache, cacheKey, fetchPage])\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 // If state hasn't been loaded yet, read directly from cache as a synchronous fallback.\n // Tree's useMemo pre-populates the cache before child TreeNodes render, so this eliminates\n // the brief null-children flash that occurs when a node becomes expanded after context updates.\n const effectiveChildren = children ?? cache?.current.get(cacheKey)?.children ?? null\n\n return { children: effectiveChildren, hasMore, isLoading, load, loadMore, refresh, totalDocs }\n}\n"],"mappings":"AAEA,SAASA,uBAAuB,EAAEC,cAAc,QAAQ;AACxD,YAAYC,EAAA,MAAQ;AACpB,SAASC,WAAW,EAAEC,SAAS,EAAEC,MAAM,EAAEC,QAAQ,QAAQ;AAIzD,SAASC,SAAS,QAAQ;AAC1B,SAASC,UAAU,QAAQ;AA+B3B,OAAO,MAAMC,WAAA,GAAcA,CAAC;EAC1BC,qBAAqB;EACrBC,UAAU;EACVC,KAAK;EACLC,QAAA,EAAUC,YAAY;EACtBC,cAAc;EACdC,OAAA,GAAU,IAAI;EACdC,mBAAmB;EACnBC,WAAW;EACXC,KAAA,GAAQ,CAAC;EACTC,eAAe;EACfC,QAAQ;EACRC,aAAa;EACbC;AAAU,CACM;EAChB,MAAMC,SAAA,GAAYP,mBAAA,EAAqBQ,MAAA,GAASR,mBAAA,CAAoBS,KAAK,GAAGC,IAAI,GAAGC,IAAI,CAAC,OAAO;EAC/F,MAAMC,aAAA,GAAgBlB,UAAA,GAAamB,IAAA,CAAKC,SAAS,CAACpB,UAAA,IAAc;EAChE;EACA,MAAME,QAAA,GACJC,YAAA,IAAgB,GAAGC,cAAA,IAAkBiB,MAAA,CAAOX,QAAA,KAAaG,SAAA,IAAaK,aAAA,EAAe;EACvF,MAAMI,UAAA,GAAarB,KAAA,EAAOsB,OAAA,CAAQC,GAAA,CAAItB,QAAA;EAEtC;EACA,MAAMuB,SAAA,GAAYf,QAAA,KAAa,SAAS,SAASW,MAAA,CAAOX,QAAA;EACxD,MAAMgB,UAAA,GAAanB,WAAA,EAAaoB,aAAA,GAAgBF,SAAA,CAAU;EAC1D,MAAMG,cAAA,GAAiB,CAAC,CAACF,UAAA;EAEzB;EACA;EACA,MAAMG,oBAAA,GAAuBD,cAAA,GACzBrB,WAAA,CAAYuB,IAAI,CAACC,MAAM,CAAEC,GAAA;IACvB,MAAMC,SAAA,GAAYD,GAAG,CAACvB,eAAA,CAAgB,IAAI;IAC1C,IAAIY,MAAA,CAAOY,SAAA,MAAeR,SAAA,EAAW;MACnC,OAAO;IACT;IACA,IAAInB,mBAAA,EAAqBQ,MAAA,IAAUH,aAAA,EAAe;MAChD,OAAOd,UAAA,CAAWmC,GAAG,CAACrB,aAAA,CAAc,EAA0BL,mBAAA;IAChE;IACA,OAAO;EACT,KACA;EAEJ,MAAM,CAAC4B,QAAA,EAAUC,WAAA,CAAY,GAAGxC,QAAA,CAC9BkC,oBAAA,IAAwBP,UAAA,EAAYY,QAAA,IAAY;EAElD,MAAM,CAACE,SAAA,EAAWC,YAAA,CAAa,GAAG1C,QAAA,CAAS;EAC3C,MAAM,CAAC2C,IAAA,EAAMC,OAAA,CAAQ,GAAG5C,QAAA,CAAS2B,UAAA,EAAYgB,IAAA,IAAQ;EACrD,MAAM,CAACE,SAAA,EAAWC,YAAA,CAAa,GAAG9C,QAAA,CAAS+B,UAAA,EAAYc,SAAA,IAAalB,UAAA,EAAYkB,SAAA,IAAa;EAC7F,MAAM,CAACE,OAAA,EAASC,UAAA,CAAW,GAAGhD,QAAA,CAAS+B,UAAA,EAAYgB,OAAA,IAAWpB,UAAA,EAAYoB,OAAA,IAAW;EACrF,MAAME,cAAA,GAAiBlD,MAAA,CAAO,CAAC,CAACkC,cAAA;EAChC;EACA,MAAMiB,WAAA,GAAcnD,MAAA,CAAOwC,QAAA;EAC3BW,WAAA,CAAYtB,OAAO,GAAGW,QAAA;EACtB,MAAMY,YAAA,GAAepD,MAAA,CAAO0C,SAAA;EAC5BU,YAAA,CAAavB,OAAO,GAAGa,SAAA;EACvB,MAAM;IACJW,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC;MAAG,CAAE;MACfC;IAAS;EACV,CACF,GAAGtD,SAAA;EAEJ,MAAMuD,SAAA,GAAY3D,WAAA,CAChB,OACE4D,WAAA,EACAC,eAAA;IAEAhB,YAAA,CAAa;IAEb,IAAI;MACF,MAAMiB,eAAA,GACJ5C,QAAA,KAAa,UAAUA,QAAA,KAAa,OAChC;QACE6C,EAAA,EAAI,CACF;UAAE,CAAC9C,eAAA,GAAkB;YAAE+C,MAAA,EAAQ;UAAM;QAAE,GACvC;UAAE,CAAC/C,eAAA,GAAkB;YAAEgD,MAAA,EAAQ;UAAK;QAAE;MAE1C,IACA;QAAE,CAAChD,eAAA,GAAkB;UAAEgD,MAAA,EAAQ/C;QAAS;MAAE;MAEhD;MACA;MACA;MACA;MACA;MACA,MAAMgD,eAAA,GACJpD,mBAAA,EAAqBQ,MAAA,IAAUH,aAAA,GAC3B;QACE4C,EAAA,EAAI,CACF;UAAE,CAAC5C,aAAA,GAAgB;YAAEgD,EAAA,EAAIrD;UAAoB;QAAE,GAC/C;UAAE,CAACK,aAAA,GAAgB;YAAE6C,MAAA,EAAQ;UAAM;QAAE;QACrC;YACIzD,qBAAA,EAAuBe,MAAA,GACvB,CAAC;UAAE,CAACH,aAAA,GAAgB;YAAEiD,MAAA,EAAQ7D;UAAsB;QAAE,EAAE,GACxD,EAAE;MAEV,IACA8D,SAAA;MAEN;MACA,MAAMC,KAAA,GAAQzE,uBAAA,CAAwB,CAACiE,eAAA,EAAiBI,eAAA,EAAiB1D,UAAA,CAAW;MAEpF,MAAM+D,WAAA,GAAuC;QAC3CvD,KAAA;QACA8B,IAAA,EAAMc,WAAA;QACNpC,IAAA,EAAMJ,UAAA,IAAc;QACpBkD;MACF;MAEA,MAAME,WAAA,GAAczE,EAAA,CAAG6B,SAAS,CAAC2C,WAAA,EAAa;QAAEE,cAAA,EAAgB;MAAK;MACrE,MAAMC,GAAA,GAAM5E,cAAA,CAAe;QACzB6E,QAAA,EAAUlB,GAAA;QACVmB,IAAA,EAAM,IAAIhE,cAAA,GAAiB4D,WAAA,EAAa;QACxCd;MACF;MACA,MAAMmB,QAAA,GAAW,MAAMC,KAAA,CAAMJ,GAAA,EAAK;QAChCK,WAAA,EAAa;MACf;MAEA,IAAI,CAACF,QAAA,CAASG,EAAE,EAAE;QAChB,MAAM,IAAIC,KAAA,CAAM;MAClB;MAEA,MAAMC,IAAA,GAAO,MAAML,QAAA,CAASM,IAAI;MAChC,MAAMC,OAAA,GAA0BF,IAAA,CAAK5C,IAAI,IAAI,EAAE;MAE/C;MACA;MACA,MAAM+C,OAAA,GACJvE,mBAAA,EAAqBQ,MAAA,IAAUH,aAAA,GAC3BiE,OAAA,CAAQ7C,MAAM,CAAEC,GAAA,IACdnC,UAAA,CAAWmC,GAAG,CAACrB,aAAA,CAAc,EAA0BL,mBAAA,KAEzDsE,OAAA;MAEN,MAAME,WAAA,GAAc1B,WAAA,KAAgB,IAAIyB,OAAA,GAAU,C,IAAKxB,eAAA,IAAmB,EAAE,G,GAAMwB,OAAA,CAAQ;MAE1F1C,WAAA,CAAY2C,WAAA;MACZrC,YAAA,CAAaiC,IAAA,CAAKlC,SAAS,IAAI;MAC/BG,UAAA,CAAW+B,IAAA,CAAKK,WAAW,IAAI;MAC/BxC,OAAA,CAAQa,WAAA;MAER,IAAInD,KAAA,EAAO;QACTA,KAAA,CAAMsB,OAAO,CAACyD,GAAG,CAAC9E,QAAA,EAAU;UAC1BgC,QAAA,EAAU4C,WAAA;UACVpC,OAAA,EAASgC,IAAA,CAAKK,WAAW,IAAI;UAC7BzC,IAAA,EAAMc,WAAA;UACNZ,SAAA,EAAWkC,IAAA,CAAKlC,SAAS,IAAI;QAC/B;MACF;MAEA,OAAOqC,OAAA;IACT,EAAE,MAAM;MACN,IAAIzB,WAAA,KAAgB,GAAG;QACrB,MAAM6B,aAAA,GAAgC,EAAE;QACxC9C,WAAA,CAAY8C,aAAA;QACZtC,UAAA,CAAW;QAEX,IAAI1C,KAAA,EAAO;UACTA,KAAA,CAAMsB,OAAO,CAACyD,GAAG,CAAC9E,QAAA,EAAU;YAC1BgC,QAAA,EAAU+C,aAAA;YACVvC,OAAA,EAAS;YACTJ,IAAA,EAAM;YACNE,SAAA,EAAW;UACb;QACF;MACF;MAEA,OAAO,EAAE;IACX,UAAU;MACRH,YAAA,CAAa;IACf;EACF,GACA,CACEtC,qBAAA,EACAC,UAAA,EACAU,QAAA,EACAD,eAAA,EACAH,mBAAA,EACAK,aAAA,EACAH,KAAA,EACAI,UAAA,EACAqC,GAAA,EACA7C,cAAA,EACA8C,SAAA,EACAjD,KAAA,EACAC,QAAA,CACD;EAGH;EACA,MAAMgF,gBAAA,GAAmBxF,MAAA,CAAOmB,SAAA;EAChCpB,SAAA,CAAU;IACR,IAAIyF,gBAAA,CAAiB3D,OAAO,KAAKV,SAAA,EAAW;MAC1CqE,gBAAA,CAAiB3D,OAAO,GAAGV,SAAA;MAC3BsB,WAAA,CAAY;MACZI,OAAA,CAAQ;MACRE,YAAA,CAAa;MACbE,UAAA,CAAW;MACX;MACA,IAAItC,OAAA,EAAS;QACX,KAAK8C,SAAA,CAAU,GAAG;MACpB;IACF;EACF,GAAG,CAACtC,SAAA,EAAWR,OAAA,EAAS8C,SAAA,CAAU;EAElC;EACA,MAAMgC,IAAA,GAAO3F,WAAA,CAAY;IACvB;IACA,IAAIoD,cAAA,CAAerB,OAAO,IAAIsB,WAAA,CAAYtB,OAAO,KAAK,MAAM;MAC1DqB,cAAA,CAAerB,OAAO,GAAG;MACzB,OAAOsB,WAAA,CAAYtB,OAAO;IAC5B;IAEA;IACA,IAAIsB,WAAA,CAAYtB,OAAO,KAAK,MAAM;MAChC,OAAOsB,WAAA,CAAYtB,OAAO;IAC5B;IAEA;IACA,IAAIuB,YAAA,CAAavB,OAAO,EAAE;MACxB,OAAO,EAAE;IACX;IAEA;IACA,MAAM6D,iBAAA,GAAoBnF,KAAA,EAAOsB,OAAA,CAAQC,GAAA,CAAItB,QAAA;IAC7C,IAAIkF,iBAAA,EAAmB;MACrBjD,WAAA,CAAYiD,iBAAA,CAAkBlD,QAAQ;MACtCK,OAAA,CAAQ6C,iBAAA,CAAkB9C,IAAI;MAC9BG,YAAA,CAAa2C,iBAAA,CAAkB5C,SAAS;MACxCG,UAAA,CAAWyC,iBAAA,CAAkB1C,OAAO;MACpC,OAAO0C,iBAAA,CAAkBlD,QAAQ;IACnC;IAEA,OAAOiB,SAAA,CAAU,GAAG;EACtB,GAAG,CAAClD,KAAA,EAAOC,QAAA,EAAUiD,SAAA,CAAU;EAE/B,MAAMkC,QAAA,GAAW7F,WAAA,CAAY;IAC3B,IAAI4C,SAAA,IAAa,CAACM,OAAA,EAAS;MACzB,OAAO,EAAE;IACX;IAEA;IACA;IACA,MAAM4C,kBAAA,GAAqBpD,QAAA,IAAYA,QAAA,CAASpB,MAAM,GAAGN,KAAA;IAEzD,OAAO2C,SAAA,CAAUmC,kBAAA,GAAqB,IAAIhD,IAAA,GAAO,GAAGJ,QAAA;EACtD,GAAG,CAACE,SAAA,EAAWM,OAAA,EAASJ,IAAA,EAAMJ,QAAA,EAAUiB,SAAA,EAAW3C,KAAA,CAAM;EAEzD,MAAM+E,OAAA,GAAU/F,WAAA,CAAY;IAC1B,IAAIS,KAAA,EAAO;MACTA,KAAA,CAAMsB,OAAO,CAACiE,MAAM,CAACtF,QAAA;IACvB;IACAiC,WAAA,CAAY;IACZI,OAAA,CAAQ;IACR,OAAOY,SAAA,CAAU,GAAG;EACtB,GAAG,CAAClD,KAAA,EAAOC,QAAA,EAAUiD,SAAA,CAAU;EAC/B;EACA;EACA;EACA,MAAMsC,iBAAA,GAAoBvD,QAAA,IAAYjC,KAAA,EAAOsB,OAAA,CAAQC,GAAA,CAAItB,QAAA,GAAWgC,QAAA,IAAY;EAEhF,OAAO;IAAEA,QAAA,EAAUuD,iBAAA;IAAmB/C,OAAA;IAASN,SAAA;IAAW+C,IAAA;IAAME,QAAA;IAAUE,OAAA;IAAS/C;EAAU;AAC/F","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import type { CollectionPreferences } from 'payload';
2
+ type Props = {
3
+ collectionSlug: string;
4
+ preferences: CollectionPreferences;
5
+ };
6
+ export declare function HydratePreferences({ collectionSlug, preferences }: Props): any;
7
+ export {};
8
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/elements/HydratePreferences/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAMpD,KAAK,KAAK,GAAG;IACX,cAAc,EAAE,MAAM,CAAA;IACtB,WAAW,EAAE,qBAAqB,CAAA;CACnC,CAAA;AAED,wBAAgB,kBAAkB,CAAC,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,KAAK,OAQxE"}