@payloadcms/ui 3.70.0-canary.9 → 3.71.0-internal-debug.80dab4c

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 (1208) hide show
  1. package/dist/@types/assets.d.js.map +1 -1
  2. package/dist/assets/index.js +1 -0
  3. package/dist/assets/index.js.map +1 -1
  4. package/dist/elements/AddNewRelation/index.js +218 -273
  5. package/dist/elements/AddNewRelation/index.js.map +1 -1
  6. package/dist/elements/AddNewRelation/types.js +2 -1
  7. package/dist/elements/AddNewRelation/types.js.map +1 -1
  8. package/dist/elements/AnimateHeight/index.js +84 -73
  9. package/dist/elements/AnimateHeight/index.js.map +1 -1
  10. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +71 -68
  11. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
  12. package/dist/elements/AppHeader/index.js +171 -101
  13. package/dist/elements/AppHeader/index.js.map +1 -1
  14. package/dist/elements/ArrayAction/index.js +186 -118
  15. package/dist/elements/ArrayAction/index.js.map +1 -1
  16. package/dist/elements/Autosave/index.js +162 -181
  17. package/dist/elements/Autosave/index.js.map +1 -1
  18. package/dist/elements/Banner/index.js +52 -32
  19. package/dist/elements/Banner/index.js.map +1 -1
  20. package/dist/elements/BulkUpload/ActionsBar/index.js +169 -173
  21. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/AddFilesView/index.js +84 -51
  23. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/AddingFilesView/index.js +85 -94
  25. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +30 -56
  27. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  28. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +19 -27
  29. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  30. package/dist/elements/BulkUpload/EditForm/index.js +179 -169
  31. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  32. package/dist/elements/BulkUpload/EditForm/types.js +2 -1
  33. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  34. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +221 -172
  35. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  36. package/dist/elements/BulkUpload/EditMany/index.js +56 -57
  37. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  38. package/dist/elements/BulkUpload/FileSidebar/index.js +395 -316
  39. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  40. package/dist/elements/BulkUpload/FormsManager/createFormData.js +33 -32
  41. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  42. package/dist/elements/BulkUpload/FormsManager/index.js +503 -473
  43. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  44. package/dist/elements/BulkUpload/FormsManager/reducer.js +100 -90
  45. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -1
  46. package/dist/elements/BulkUpload/Header/index.js +27 -15
  47. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/index.js +204 -271
  49. package/dist/elements/BulkUpload/index.js.map +1 -1
  50. package/dist/elements/Button/index.js +227 -160
  51. package/dist/elements/Button/index.js.map +1 -1
  52. package/dist/elements/Button/types.js +14 -1
  53. package/dist/elements/Button/types.js.map +1 -1
  54. package/dist/elements/Card/index.js +53 -33
  55. package/dist/elements/Card/index.js.map +1 -1
  56. package/dist/elements/CheckboxPopup/index.js +43 -36
  57. package/dist/elements/CheckboxPopup/index.js.map +1 -1
  58. package/dist/elements/ClipboardAction/ClipboardActionLabel.js +29 -35
  59. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  60. package/dist/elements/ClipboardAction/clipboardUtilities.js +33 -43
  61. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  62. package/dist/elements/ClipboardAction/index.js +110 -83
  63. package/dist/elements/ClipboardAction/index.js.map +1 -1
  64. package/dist/elements/ClipboardAction/isClipboardDataValid.js +64 -71
  65. package/dist/elements/ClipboardAction/isClipboardDataValid.js.map +1 -1
  66. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +75 -93
  67. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  68. package/dist/elements/ClipboardAction/types.js +2 -1
  69. package/dist/elements/ClipboardAction/types.js.map +1 -1
  70. package/dist/elements/CloseModalButton/index.js +25 -20
  71. package/dist/elements/CloseModalButton/index.js.map +1 -1
  72. package/dist/elements/CloseModalOnRouteChange/index.js +17 -43
  73. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  74. package/dist/elements/CodeEditor/CodeEditor.js +82 -97
  75. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  76. package/dist/elements/CodeEditor/constants.js +15 -14
  77. package/dist/elements/CodeEditor/constants.js.map +1 -1
  78. package/dist/elements/CodeEditor/index.js +22 -10
  79. package/dist/elements/CodeEditor/index.js.map +1 -1
  80. package/dist/elements/CodeEditor/types.js +4 -1
  81. package/dist/elements/CodeEditor/types.js.map +1 -1
  82. package/dist/elements/Collapsible/index.js +151 -141
  83. package/dist/elements/Collapsible/index.js.map +1 -1
  84. package/dist/elements/Collapsible/provider.js +32 -30
  85. package/dist/elements/Collapsible/provider.js.map +1 -1
  86. package/dist/elements/ColumnSelector/index.js +54 -54
  87. package/dist/elements/ColumnSelector/index.js.map +1 -1
  88. package/dist/elements/Combobox/index.js +114 -84
  89. package/dist/elements/Combobox/index.js.map +1 -1
  90. package/dist/elements/ConfirmationModal/index.js +116 -129
  91. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  92. package/dist/elements/CopyLocaleData/index.js +213 -272
  93. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  94. package/dist/elements/CopyToClipboard/index.js +47 -70
  95. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  96. package/dist/elements/DatePicker/DatePicker.js +130 -136
  97. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  98. package/dist/elements/DatePicker/getFormattedLocale.js +11 -10
  99. package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
  100. package/dist/elements/DatePicker/index.js +23 -11
  101. package/dist/elements/DatePicker/index.js.map +1 -1
  102. package/dist/elements/DatePicker/types.js +2 -1
  103. package/dist/elements/DatePicker/types.js.map +1 -1
  104. package/dist/elements/DefaultListViewTabs/index.js +97 -131
  105. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  106. package/dist/elements/DeleteDocument/index.js +170 -141
  107. package/dist/elements/DeleteDocument/index.js.map +1 -1
  108. package/dist/elements/DeleteMany/index.js +371 -332
  109. package/dist/elements/DeleteMany/index.js.map +1 -1
  110. package/dist/elements/DocumentControls/index.js +494 -274
  111. package/dist/elements/DocumentControls/index.js.map +1 -1
  112. package/dist/elements/DocumentDrawer/DrawerContent.js +141 -122
  113. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  114. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +96 -103
  115. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  116. package/dist/elements/DocumentDrawer/Provider.js +24 -18
  117. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  118. package/dist/elements/DocumentDrawer/index.js +134 -210
  119. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  120. package/dist/elements/DocumentDrawer/types.js +12 -1
  121. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  122. package/dist/elements/DocumentFields/index.js +106 -69
  123. package/dist/elements/DocumentFields/index.js.map +1 -1
  124. package/dist/elements/DocumentLocked/index.js +154 -179
  125. package/dist/elements/DocumentLocked/index.js.map +1 -1
  126. package/dist/elements/DocumentTakeOver/index.js +97 -113
  127. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  128. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +26 -60
  129. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  130. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js +2 -1
  131. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  132. package/dist/elements/DraggableSortable/index.js +72 -124
  133. package/dist/elements/DraggableSortable/index.js.map +1 -1
  134. package/dist/elements/DraggableSortable/types.js +2 -1
  135. package/dist/elements/DraggableSortable/types.js.map +1 -1
  136. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +25 -85
  137. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  138. package/dist/elements/DraggableSortable/useDraggableSortable/types.js +2 -1
  139. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  140. package/dist/elements/Drawer/index.js +166 -192
  141. package/dist/elements/Drawer/index.js.map +1 -1
  142. package/dist/elements/Drawer/types.js +2 -1
  143. package/dist/elements/Drawer/types.js.map +1 -1
  144. package/dist/elements/Drawer/useDrawerSlug.js +7 -19
  145. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  146. package/dist/elements/DrawerActionHeader/index.js +59 -61
  147. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  148. package/dist/elements/DrawerContentContainer/index.js +14 -9
  149. package/dist/elements/DrawerContentContainer/index.js.map +1 -1
  150. package/dist/elements/Dropzone/index.js +90 -75
  151. package/dist/elements/Dropzone/index.js.map +1 -1
  152. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +145 -87
  153. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  154. package/dist/elements/DuplicateDocument/index.js +155 -145
  155. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  156. package/dist/elements/EditMany/DrawerContent.js +398 -392
  157. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  158. package/dist/elements/EditMany/index.js +79 -131
  159. package/dist/elements/EditMany/index.js.map +1 -1
  160. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  161. package/dist/elements/EditUpload/index.js +572 -401
  162. package/dist/elements/EditUpload/index.js.map +1 -1
  163. package/dist/elements/EmailAndUsername/index.js +96 -77
  164. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  165. package/dist/elements/ErrorPill/index.js +38 -24
  166. package/dist/elements/ErrorPill/index.js.map +1 -1
  167. package/dist/elements/FieldDiffContainer/index.js +50 -34
  168. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  169. package/dist/elements/FieldDiffLabel/index.js +10 -7
  170. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  171. package/dist/elements/FieldSelect/index.js +45 -75
  172. package/dist/elements/FieldSelect/index.js.map +1 -1
  173. package/dist/elements/FieldSelect/reduceFieldOptions.js +69 -67
  174. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  175. package/dist/elements/FileDetails/DraggableFileDetails/index.js +113 -105
  176. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  177. package/dist/elements/FileDetails/FileMeta/index.js +72 -33
  178. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  179. package/dist/elements/FileDetails/StaticFileDetails/index.js +76 -58
  180. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  181. package/dist/elements/FileDetails/index.js +20 -14
  182. package/dist/elements/FileDetails/index.js.map +1 -1
  183. package/dist/elements/FolderView/Breadcrumbs/index.js +59 -86
  184. package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
  185. package/dist/elements/FolderView/BrowseByFolderButton/index.js +30 -30
  186. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  187. package/dist/elements/FolderView/Cell/index.client.js +88 -87
  188. package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
  189. package/dist/elements/FolderView/Cell/index.server.js +19 -14
  190. package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
  191. package/dist/elements/FolderView/ColoredFolderIcon/index.js +9 -4
  192. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
  193. package/dist/elements/FolderView/CurrentFolderActions/index.js +174 -138
  194. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
  195. package/dist/elements/FolderView/DragOverlaySelection/index.js +70 -51
  196. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
  197. package/dist/elements/FolderView/DraggableTableRow/index.js +71 -54
  198. package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
  199. package/dist/elements/FolderView/DraggableWithClick/index.js +75 -79
  200. package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
  201. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +35 -33
  202. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
  203. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +497 -565
  204. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  205. package/dist/elements/FolderView/FilterFolderTypePill/index.js +61 -89
  206. package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
  207. package/dist/elements/FolderView/FolderField/index.server.js +15 -10
  208. package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
  209. package/dist/elements/FolderView/FolderFileCard/index.js +218 -188
  210. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  211. package/dist/elements/FolderView/FolderFileTable/index.js +203 -264
  212. package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
  213. package/dist/elements/FolderView/FolderTypeField/index.js +93 -114
  214. package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
  215. package/dist/elements/FolderView/ItemCardGrid/index.js +35 -27
  216. package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
  217. package/dist/elements/FolderView/MoveDocToFolder/index.js +142 -264
  218. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  219. package/dist/elements/FolderView/SimpleTable/index.js +105 -83
  220. package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
  221. package/dist/elements/FolderView/SortByPill/index.js +162 -100
  222. package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
  223. package/dist/elements/FolderView/ToggleViewButtons/index.js +47 -24
  224. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
  225. package/dist/elements/FullscreenModal/index.js +16 -22
  226. package/dist/elements/FullscreenModal/index.js.map +1 -1
  227. package/dist/elements/GenerateConfirmation/index.js +63 -83
  228. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  229. package/dist/elements/GroupByBuilder/index.js +142 -100
  230. package/dist/elements/GroupByBuilder/index.js.map +1 -1
  231. package/dist/elements/Gutter/index.js +22 -19
  232. package/dist/elements/Gutter/index.js.map +1 -1
  233. package/dist/elements/HTMLDiff/diff/index.js +522 -500
  234. package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
  235. package/dist/elements/HTMLDiff/index.js +31 -26
  236. package/dist/elements/HTMLDiff/index.js.map +1 -1
  237. package/dist/elements/Hamburger/index.js +51 -40
  238. package/dist/elements/Hamburger/index.js.map +1 -1
  239. package/dist/elements/HydrateAuthProvider/index.js +15 -27
  240. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  241. package/dist/elements/IDLabel/index.js +31 -57
  242. package/dist/elements/IDLabel/index.js.map +1 -1
  243. package/dist/elements/ItemsDrawer/ItemSearch/index.js +43 -48
  244. package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -1
  245. package/dist/elements/ItemsDrawer/index.js +219 -168
  246. package/dist/elements/ItemsDrawer/index.js.map +1 -1
  247. package/dist/elements/LeaveWithoutSaving/index.js +73 -142
  248. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  249. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +113 -129
  250. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  251. package/dist/elements/Link/formatUrl.js +53 -56
  252. package/dist/elements/Link/formatUrl.js.map +1 -1
  253. package/dist/elements/Link/index.js +50 -54
  254. package/dist/elements/Link/index.js.map +1 -1
  255. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +17 -17
  256. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  257. package/dist/elements/ListControls/index.js +253 -168
  258. package/dist/elements/ListControls/index.js.map +1 -1
  259. package/dist/elements/ListControls/types.js +8 -1
  260. package/dist/elements/ListControls/types.js.map +1 -1
  261. package/dist/elements/ListDrawer/DrawerContent.js +183 -168
  262. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  263. package/dist/elements/ListDrawer/Provider.js +28 -19
  264. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  265. package/dist/elements/ListDrawer/index.js +149 -229
  266. package/dist/elements/ListDrawer/index.js.map +1 -1
  267. package/dist/elements/ListDrawer/types.js +6 -1
  268. package/dist/elements/ListDrawer/types.js.map +1 -1
  269. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +43 -84
  270. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  271. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +23 -33
  272. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  273. package/dist/elements/ListHeader/DrawerTitleActions/index.js +1 -0
  274. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -1
  275. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +49 -73
  276. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  277. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +22 -40
  278. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  279. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +130 -162
  280. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  281. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +169 -148
  282. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  283. package/dist/elements/ListHeader/TitleActions/index.js +1 -0
  284. package/dist/elements/ListHeader/TitleActions/index.js.map +1 -1
  285. package/dist/elements/ListHeader/index.js +65 -24
  286. package/dist/elements/ListHeader/index.js.map +1 -1
  287. package/dist/elements/ListSelection/index.js +93 -58
  288. package/dist/elements/ListSelection/index.js.map +1 -1
  289. package/dist/elements/LivePreview/Device/index.js +83 -83
  290. package/dist/elements/LivePreview/Device/index.js.map +1 -1
  291. package/dist/elements/LivePreview/DeviceContainer/index.js +29 -49
  292. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  293. package/dist/elements/LivePreview/IFrame/index.js +20 -44
  294. package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
  295. package/dist/elements/LivePreview/Toggler/index.js +32 -26
  296. package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
  297. package/dist/elements/LivePreview/Toolbar/Controls/index.js +210 -141
  298. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  299. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +62 -92
  300. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  301. package/dist/elements/LivePreview/Toolbar/index.js +84 -84
  302. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  303. package/dist/elements/LivePreview/ToolbarArea/index.js +15 -33
  304. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  305. package/dist/elements/LivePreview/Window/index.js +132 -166
  306. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  307. package/dist/elements/Loading/index.js +112 -144
  308. package/dist/elements/Loading/index.js.map +1 -1
  309. package/dist/elements/LoadingOverlay/index.js +68 -67
  310. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  311. package/dist/elements/LoadingOverlay/reducer.js +27 -29
  312. package/dist/elements/LoadingOverlay/reducer.js.map +1 -1
  313. package/dist/elements/LoadingOverlay/types.js +2 -1
  314. package/dist/elements/LoadingOverlay/types.js.map +1 -1
  315. package/dist/elements/Localizer/LocalizerLabel/index.js +55 -51
  316. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  317. package/dist/elements/Localizer/index.js +99 -117
  318. package/dist/elements/Localizer/index.js.map +1 -1
  319. package/dist/elements/Locked/index.js +38 -59
  320. package/dist/elements/Locked/index.js.map +1 -1
  321. package/dist/elements/Logout/index.js +30 -51
  322. package/dist/elements/Logout/index.js.map +1 -1
  323. package/dist/elements/Modal/index.js +1 -1
  324. package/dist/elements/Modal/index.js.map +1 -1
  325. package/dist/elements/Nav/NavToggler/index.js +34 -80
  326. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  327. package/dist/elements/Nav/context.js +107 -103
  328. package/dist/elements/Nav/context.js.map +1 -1
  329. package/dist/elements/NavGroup/index.js +98 -122
  330. package/dist/elements/NavGroup/index.js.map +1 -1
  331. package/dist/elements/NoListResults/index.js +27 -14
  332. package/dist/elements/NoListResults/index.js.map +1 -1
  333. package/dist/elements/PageControls/GroupByPageControls.js +40 -71
  334. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  335. package/dist/elements/PageControls/index.js +77 -107
  336. package/dist/elements/PageControls/index.js.map +1 -1
  337. package/dist/elements/Pagination/ClickableArrow/index.js +24 -16
  338. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  339. package/dist/elements/Pagination/Page/index.js +19 -16
  340. package/dist/elements/Pagination/Page/index.js.map +1 -1
  341. package/dist/elements/Pagination/Separator/index.js +10 -6
  342. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  343. package/dist/elements/Pagination/index.js +102 -99
  344. package/dist/elements/Pagination/index.js.map +1 -1
  345. package/dist/elements/PerPage/index.js +93 -80
  346. package/dist/elements/PerPage/index.js.map +1 -1
  347. package/dist/elements/PermanentlyDeleteButton/index.js +150 -133
  348. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  349. package/dist/elements/Pill/index.js +103 -121
  350. package/dist/elements/Pill/index.js.map +1 -1
  351. package/dist/elements/PillSelector/index.js +79 -56
  352. package/dist/elements/PillSelector/index.js.map +1 -1
  353. package/dist/elements/Popup/PopupButtonList/index.js +65 -52
  354. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  355. package/dist/elements/Popup/PopupDivider/index.js +10 -5
  356. package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
  357. package/dist/elements/Popup/PopupGroupLabel/index.js +11 -8
  358. package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
  359. package/dist/elements/Popup/PopupTrigger/index.js +50 -44
  360. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  361. package/dist/elements/Popup/PopupTrigger/types.js.map +1 -1
  362. package/dist/elements/Popup/index.js +339 -282
  363. package/dist/elements/Popup/index.js.map +1 -1
  364. package/dist/elements/PreviewButton/index.js +24 -31
  365. package/dist/elements/PreviewButton/index.js.map +1 -1
  366. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  367. package/dist/elements/PreviewSizes/index.js +206 -128
  368. package/dist/elements/PreviewSizes/index.js.map +1 -1
  369. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +154 -110
  370. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  371. package/dist/elements/PublishButton/ScheduleDrawer/index.js +461 -309
  372. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  373. package/dist/elements/PublishButton/ScheduleDrawer/types.js +2 -1
  374. package/dist/elements/PublishButton/ScheduleDrawer/types.js.map +1 -1
  375. package/dist/elements/PublishButton/index.js +234 -195
  376. package/dist/elements/PublishButton/index.js.map +1 -1
  377. package/dist/elements/PublishMany/DrawerContent.js +137 -134
  378. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  379. package/dist/elements/PublishMany/index.js +58 -109
  380. package/dist/elements/PublishMany/index.js.map +1 -1
  381. package/dist/elements/QueryPresets/QueryPresetBar/index.js +344 -267
  382. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  383. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +80 -87
  384. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  385. package/dist/elements/QueryPresets/cells/AccessCell/index.js +47 -21
  386. package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
  387. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +26 -19
  388. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  389. package/dist/elements/QueryPresets/cells/GroupByCell/index.js +61 -48
  390. package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
  391. package/dist/elements/QueryPresets/cells/WhereCell/index.js +29 -27
  392. package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
  393. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +42 -47
  394. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  395. package/dist/elements/QueryPresets/fields/GroupByField/index.js +96 -74
  396. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  397. package/dist/elements/QueryPresets/fields/WhereField/index.js +149 -98
  398. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  399. package/dist/elements/ReactSelect/ClearIndicator/index.js +29 -27
  400. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  401. package/dist/elements/ReactSelect/Control/index.js +40 -41
  402. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  403. package/dist/elements/ReactSelect/DropdownIndicator/index.js +26 -23
  404. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  405. package/dist/elements/ReactSelect/Input/index.js +20 -13
  406. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  407. package/dist/elements/ReactSelect/MultiValue/index.js +48 -126
  408. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  409. package/dist/elements/ReactSelect/MultiValueLabel/index.js +29 -32
  410. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  411. package/dist/elements/ReactSelect/MultiValueRemove/index.js +49 -86
  412. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  413. package/dist/elements/ReactSelect/SingleValue/index.js +22 -14
  414. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  415. package/dist/elements/ReactSelect/ValueContainer/index.js +38 -29
  416. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  417. package/dist/elements/ReactSelect/index.js +211 -198
  418. package/dist/elements/ReactSelect/index.js.map +1 -1
  419. package/dist/elements/ReactSelect/types.js +9 -1
  420. package/dist/elements/ReactSelect/types.js.map +1 -1
  421. package/dist/elements/RelationshipTable/AddNewButton.js +68 -58
  422. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  423. package/dist/elements/RelationshipTable/Pagination.js +21 -48
  424. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  425. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +39 -34
  426. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  427. package/dist/elements/RelationshipTable/index.js +374 -258
  428. package/dist/elements/RelationshipTable/index.js.map +1 -1
  429. package/dist/elements/RenderComponent/index.js +29 -20
  430. package/dist/elements/RenderComponent/index.js.map +1 -1
  431. package/dist/elements/RenderCustomComponent/index.js +3 -5
  432. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  433. package/dist/elements/RenderIfInViewport/index.js +27 -58
  434. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  435. package/dist/elements/RenderServerComponent/index.js +57 -56
  436. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  437. package/dist/elements/RenderTitle/index.js +44 -59
  438. package/dist/elements/RenderTitle/index.js.map +1 -1
  439. package/dist/elements/RestoreButton/index.js +187 -154
  440. package/dist/elements/RestoreButton/index.js.map +1 -1
  441. package/dist/elements/RestoreMany/index.js +177 -170
  442. package/dist/elements/RestoreMany/index.js.map +1 -1
  443. package/dist/elements/SaveButton/index.js +46 -49
  444. package/dist/elements/SaveButton/index.js.map +1 -1
  445. package/dist/elements/SaveDraftButton/index.js +84 -88
  446. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  447. package/dist/elements/SearchBar/index.js +37 -19
  448. package/dist/elements/SearchBar/index.js.map +1 -1
  449. package/dist/elements/SearchFilter/index.js +60 -54
  450. package/dist/elements/SearchFilter/index.js.map +1 -1
  451. package/dist/elements/SearchFilter/types.js +20 -1
  452. package/dist/elements/SearchFilter/types.js.map +1 -1
  453. package/dist/elements/SelectAll/index.js +21 -46
  454. package/dist/elements/SelectAll/index.js.map +1 -1
  455. package/dist/elements/SelectMany/index.js +27 -25
  456. package/dist/elements/SelectMany/index.js.map +1 -1
  457. package/dist/elements/SelectRow/index.js +27 -79
  458. package/dist/elements/SelectRow/index.js.map +1 -1
  459. package/dist/elements/ShimmerEffect/index.js +58 -73
  460. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  461. package/dist/elements/SortColumn/index.js +98 -106
  462. package/dist/elements/SortColumn/index.js.map +1 -1
  463. package/dist/elements/SortComplex/index.js +142 -163
  464. package/dist/elements/SortComplex/index.js.map +1 -1
  465. package/dist/elements/SortHeader/index.js +54 -87
  466. package/dist/elements/SortHeader/index.js.map +1 -1
  467. package/dist/elements/SortRow/index.js +21 -27
  468. package/dist/elements/SortRow/index.js.map +1 -1
  469. package/dist/elements/Status/index.js +203 -161
  470. package/dist/elements/Status/index.js.map +1 -1
  471. package/dist/elements/StayLoggedIn/index.js +38 -76
  472. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  473. package/dist/elements/StepNav/SetStepNav.js +10 -27
  474. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  475. package/dist/elements/StepNav/context.js +24 -41
  476. package/dist/elements/StepNav/context.js.map +1 -1
  477. package/dist/elements/StepNav/index.js +148 -92
  478. package/dist/elements/StepNav/index.js.map +1 -1
  479. package/dist/elements/StepNav/types.js +2 -1
  480. package/dist/elements/StepNav/types.js.map +1 -1
  481. package/dist/elements/StickyToolbar/index.js +10 -8
  482. package/dist/elements/StickyToolbar/index.js.map +1 -1
  483. package/dist/elements/Table/DefaultCell/fields/Array/index.js +13 -28
  484. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  485. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +34 -60
  486. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  487. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +18 -27
  488. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  489. package/dist/elements/Table/DefaultCell/fields/Code/index.js +22 -17
  490. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  491. package/dist/elements/Table/DefaultCell/fields/Date/index.js +22 -41
  492. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  493. package/dist/elements/Table/DefaultCell/fields/File/index.js +52 -42
  494. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  495. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +18 -12
  496. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  497. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +115 -183
  498. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  499. package/dist/elements/Table/DefaultCell/fields/Select/index.js +22 -44
  500. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  501. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +11 -9
  502. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  503. package/dist/elements/Table/DefaultCell/fields/index.d.ts +5 -1
  504. package/dist/elements/Table/DefaultCell/fields/index.d.ts.map +1 -1
  505. package/dist/elements/Table/DefaultCell/fields/index.js +14 -14
  506. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  507. package/dist/elements/Table/DefaultCell/index.js +124 -151
  508. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  509. package/dist/elements/Table/OrderableRow.js +40 -32
  510. package/dist/elements/Table/OrderableRow.js.map +1 -1
  511. package/dist/elements/Table/OrderableRowDragPreview.js +24 -15
  512. package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
  513. package/dist/elements/Table/OrderableTable.js +224 -167
  514. package/dist/elements/Table/OrderableTable.js.map +1 -1
  515. package/dist/elements/Table/RelationshipProvider/index.js +106 -162
  516. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  517. package/dist/elements/Table/RelationshipProvider/reducer.js +42 -42
  518. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  519. package/dist/elements/Table/index.js +83 -45
  520. package/dist/elements/Table/index.js.map +1 -1
  521. package/dist/elements/Thumbnail/createThumbnail.js +53 -48
  522. package/dist/elements/Thumbnail/createThumbnail.js.map +1 -1
  523. package/dist/elements/Thumbnail/index.js +127 -148
  524. package/dist/elements/Thumbnail/index.js.map +1 -1
  525. package/dist/elements/ThumbnailCard/index.js +47 -68
  526. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  527. package/dist/elements/TimezonePicker/index.js +53 -44
  528. package/dist/elements/TimezonePicker/index.js.map +1 -1
  529. package/dist/elements/TimezonePicker/types.js +2 -1
  530. package/dist/elements/TimezonePicker/types.js.map +1 -1
  531. package/dist/elements/Toasts/fieldErrors.js +69 -77
  532. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  533. package/dist/elements/Tooltip/index.js +98 -65
  534. package/dist/elements/Tooltip/index.js.map +1 -1
  535. package/dist/elements/Translation/index.js +48 -39
  536. package/dist/elements/Translation/index.js.map +1 -1
  537. package/dist/elements/TrashBanner/index.js +33 -26
  538. package/dist/elements/TrashBanner/index.js.map +1 -1
  539. package/dist/elements/UnpublishMany/DrawerContent.js +130 -127
  540. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  541. package/dist/elements/UnpublishMany/index.js +58 -109
  542. package/dist/elements/UnpublishMany/index.js.map +1 -1
  543. package/dist/elements/Upload/index.js +633 -481
  544. package/dist/elements/Upload/index.js.map +1 -1
  545. package/dist/elements/ViewDescription/index.js +15 -26
  546. package/dist/elements/ViewDescription/index.js.map +1 -1
  547. package/dist/elements/ViewDescription/types.js.map +1 -1
  548. package/dist/elements/WhereBuilder/Condition/Date/index.js +23 -29
  549. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  550. package/dist/elements/WhereBuilder/Condition/Date/types.js +2 -1
  551. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  552. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +95 -76
  553. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  554. package/dist/elements/WhereBuilder/Condition/Number/index.js +74 -129
  555. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  556. package/dist/elements/WhereBuilder/Condition/Number/types.js +2 -1
  557. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  558. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +353 -313
  559. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  560. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +83 -67
  561. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  562. package/dist/elements/WhereBuilder/Condition/Relationship/types.js +2 -1
  563. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  564. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js +10 -9
  565. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js.map +1 -1
  566. package/dist/elements/WhereBuilder/Condition/Select/index.js +69 -154
  567. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  568. package/dist/elements/WhereBuilder/Condition/Select/types.js +2 -1
  569. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  570. package/dist/elements/WhereBuilder/Condition/Text/index.js +72 -123
  571. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  572. package/dist/elements/WhereBuilder/Condition/Text/types.js +2 -1
  573. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  574. package/dist/elements/WhereBuilder/Condition/index.js +206 -143
  575. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  576. package/dist/elements/WhereBuilder/Condition/types.js +2 -1
  577. package/dist/elements/WhereBuilder/Condition/types.js.map +1 -1
  578. package/dist/elements/WhereBuilder/Condition/validOperators.js +32 -33
  579. package/dist/elements/WhereBuilder/Condition/validOperators.js.map +1 -1
  580. package/dist/elements/WhereBuilder/field-types.js +192 -119
  581. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  582. package/dist/elements/WhereBuilder/index.js +258 -193
  583. package/dist/elements/WhereBuilder/index.js.map +1 -1
  584. package/dist/elements/WhereBuilder/types.js +2 -1
  585. package/dist/elements/WhereBuilder/types.js.map +1 -1
  586. package/dist/elements/WindowInfo/index.js +1 -1
  587. package/dist/elements/WindowInfo/index.js.map +1 -1
  588. package/dist/elements/WithServerSideProps/index.js +20 -19
  589. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  590. package/dist/elements/withMergedProps/index.js +26 -26
  591. package/dist/elements/withMergedProps/index.js.map +1 -1
  592. package/dist/exports/client/index.js +297 -96
  593. package/dist/exports/client/index.js.map +1 -7
  594. package/dist/exports/rsc/index.js +1 -0
  595. package/dist/exports/rsc/index.js.map +1 -1
  596. package/dist/exports/shared/index.js +35 -6
  597. package/dist/exports/shared/index.js.map +1 -7
  598. package/dist/fields/Array/ArrayRow.d.ts +1 -0
  599. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  600. package/dist/fields/Array/ArrayRow.js +111 -165
  601. package/dist/fields/Array/ArrayRow.js.map +1 -1
  602. package/dist/fields/Array/index.d.ts.map +1 -1
  603. package/dist/fields/Array/index.js +533 -396
  604. package/dist/fields/Array/index.js.map +1 -1
  605. package/dist/fields/Blocks/BlockRow.js +163 -198
  606. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  607. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +30 -38
  608. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  609. package/dist/fields/Blocks/BlockSelector/index.js +159 -103
  610. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  611. package/dist/fields/Blocks/BlocksDrawer/index.js +37 -80
  612. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  613. package/dist/fields/Blocks/RowActions.js +50 -106
  614. package/dist/fields/Blocks/RowActions.js.map +1 -1
  615. package/dist/fields/Blocks/SectionTitle/index.js +36 -78
  616. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  617. package/dist/fields/Blocks/index.js +566 -425
  618. package/dist/fields/Blocks/index.js.map +1 -1
  619. package/dist/fields/Checkbox/Input.js +86 -99
  620. package/dist/fields/Checkbox/Input.js.map +1 -1
  621. package/dist/fields/Checkbox/index.js +107 -99
  622. package/dist/fields/Checkbox/index.js.map +1 -1
  623. package/dist/fields/Code/index.js +146 -114
  624. package/dist/fields/Code/index.js.map +1 -1
  625. package/dist/fields/Collapsible/index.js +172 -134
  626. package/dist/fields/Collapsible/index.js.map +1 -1
  627. package/dist/fields/ConfirmPassword/index.js +67 -83
  628. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  629. package/dist/fields/DateTime/index.js +217 -171
  630. package/dist/fields/DateTime/index.js.map +1 -1
  631. package/dist/fields/Email/index.js +111 -86
  632. package/dist/fields/Email/index.js.map +1 -1
  633. package/dist/fields/FieldDescription/index.js +20 -43
  634. package/dist/fields/FieldDescription/index.js.map +1 -1
  635. package/dist/fields/FieldError/index.js +22 -58
  636. package/dist/fields/FieldError/index.js.map +1 -1
  637. package/dist/fields/FieldLabel/index.js +43 -45
  638. package/dist/fields/FieldLabel/index.js.map +1 -1
  639. package/dist/fields/Group/index.js +150 -102
  640. package/dist/fields/Group/index.js.map +1 -1
  641. package/dist/fields/Group/provider.js +13 -12
  642. package/dist/fields/Group/provider.js.map +1 -1
  643. package/dist/fields/Hidden/index.js +27 -67
  644. package/dist/fields/Hidden/index.js.map +1 -1
  645. package/dist/fields/JSON/index.js +185 -143
  646. package/dist/fields/JSON/index.js.map +1 -1
  647. package/dist/fields/Join/index.js +214 -189
  648. package/dist/fields/Join/index.js.map +1 -1
  649. package/dist/fields/Number/index.js +213 -169
  650. package/dist/fields/Number/index.js.map +1 -1
  651. package/dist/fields/Password/index.js +80 -101
  652. package/dist/fields/Password/index.js.map +1 -1
  653. package/dist/fields/Password/input.js +108 -122
  654. package/dist/fields/Password/input.js.map +1 -1
  655. package/dist/fields/Password/types.js +12 -1
  656. package/dist/fields/Password/types.js.map +1 -1
  657. package/dist/fields/Point/index.js +199 -127
  658. package/dist/fields/Point/index.js.map +1 -1
  659. package/dist/fields/RadioGroup/Radio/index.js +56 -81
  660. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  661. package/dist/fields/RadioGroup/index.js +146 -114
  662. package/dist/fields/RadioGroup/index.js.map +1 -1
  663. package/dist/fields/Relationship/Input.js +811 -733
  664. package/dist/fields/Relationship/Input.js.map +1 -1
  665. package/dist/fields/Relationship/createRelationMap.js +31 -33
  666. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  667. package/dist/fields/Relationship/findOptionsByValue.js +28 -32
  668. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  669. package/dist/fields/Relationship/index.js +152 -160
  670. package/dist/fields/Relationship/index.js.map +1 -1
  671. package/dist/fields/Relationship/optionsReducer.js +144 -139
  672. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  673. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +92 -82
  674. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  675. package/dist/fields/Relationship/select-components/SingleValue/index.js +95 -118
  676. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  677. package/dist/fields/Relationship/types.js +2 -1
  678. package/dist/fields/Relationship/types.js.map +1 -1
  679. package/dist/fields/RichText/index.js +3 -3
  680. package/dist/fields/RichText/index.js.map +1 -1
  681. package/dist/fields/Row/index.js +37 -35
  682. package/dist/fields/Row/index.js.map +1 -1
  683. package/dist/fields/Row/provider.js +13 -12
  684. package/dist/fields/Row/provider.js.map +1 -1
  685. package/dist/fields/Select/Input.js +114 -165
  686. package/dist/fields/Select/Input.js.map +1 -1
  687. package/dist/fields/Select/index.js +89 -108
  688. package/dist/fields/Select/index.js.map +1 -1
  689. package/dist/fields/Slug/index.js +103 -134
  690. package/dist/fields/Slug/index.js.map +1 -1
  691. package/dist/fields/Tabs/Tab/index.js +54 -60
  692. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  693. package/dist/fields/Tabs/index.js +245 -445
  694. package/dist/fields/Tabs/index.js.map +1 -1
  695. package/dist/fields/Tabs/provider.js +13 -12
  696. package/dist/fields/Tabs/provider.js.map +1 -1
  697. package/dist/fields/Text/Input.js +169 -191
  698. package/dist/fields/Text/Input.js.map +1 -1
  699. package/dist/fields/Text/index.js +107 -126
  700. package/dist/fields/Text/index.js.map +1 -1
  701. package/dist/fields/Text/types.js +2 -1
  702. package/dist/fields/Text/types.js.map +1 -1
  703. package/dist/fields/Textarea/Input.js +104 -115
  704. package/dist/fields/Textarea/Input.js.map +1 -1
  705. package/dist/fields/Textarea/index.js +61 -88
  706. package/dist/fields/Textarea/index.js.map +1 -1
  707. package/dist/fields/Textarea/types.js +2 -1
  708. package/dist/fields/Textarea/types.js.map +1 -1
  709. package/dist/fields/UI/index.js +3 -3
  710. package/dist/fields/UI/index.js.map +1 -1
  711. package/dist/fields/Upload/HasMany/index.js +141 -186
  712. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  713. package/dist/fields/Upload/HasOne/index.js +59 -60
  714. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  715. package/dist/fields/Upload/Input.js +755 -566
  716. package/dist/fields/Upload/Input.js.map +1 -1
  717. package/dist/fields/Upload/RelationshipContent/index.js +140 -143
  718. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  719. package/dist/fields/Upload/UploadCard/index.js +15 -10
  720. package/dist/fields/Upload/UploadCard/index.js.map +1 -1
  721. package/dist/fields/Upload/index.js +79 -96
  722. package/dist/fields/Upload/index.js.map +1 -1
  723. package/dist/fields/Upload/types.js +3 -1
  724. package/dist/fields/Upload/types.js.map +1 -1
  725. package/dist/fields/index.js +31 -31
  726. package/dist/fields/index.js.map +1 -1
  727. package/dist/fields/mergeFieldStyles.js +13 -12
  728. package/dist/fields/mergeFieldStyles.js.map +1 -1
  729. package/dist/fields/shared/index.js +8 -17
  730. package/dist/fields/shared/index.js.map +1 -1
  731. package/dist/forms/Form/context.js +17 -24
  732. package/dist/forms/Form/context.js.map +1 -1
  733. package/dist/forms/Form/createNestedClientFieldPath.js +11 -11
  734. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -1
  735. package/dist/forms/Form/errorMessages.js +2 -2
  736. package/dist/forms/Form/errorMessages.js.map +1 -1
  737. package/dist/forms/Form/fieldReducer.js +378 -412
  738. package/dist/forms/Form/fieldReducer.js.map +1 -1
  739. package/dist/forms/Form/index.js +745 -684
  740. package/dist/forms/Form/index.js.map +1 -1
  741. package/dist/forms/Form/initContextState.js +38 -38
  742. package/dist/forms/Form/initContextState.js.map +1 -1
  743. package/dist/forms/Form/mergeServerFormState.js +93 -97
  744. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  745. package/dist/forms/Form/reduceToSerializableFields.js +20 -17
  746. package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
  747. package/dist/forms/Form/rowHelpers.js +27 -34
  748. package/dist/forms/Form/rowHelpers.js.map +1 -1
  749. package/dist/forms/Form/rows.js +34 -34
  750. package/dist/forms/Form/rows.js.map +1 -1
  751. package/dist/forms/Form/types.js +53 -1
  752. package/dist/forms/Form/types.js.map +1 -1
  753. package/dist/forms/NullifyField/index.js +61 -96
  754. package/dist/forms/NullifyField/index.js.map +1 -1
  755. package/dist/forms/RenderFields/RenderField.js +237 -259
  756. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  757. package/dist/forms/RenderFields/context.js +9 -9
  758. package/dist/forms/RenderFields/context.js.map +1 -1
  759. package/dist/forms/RenderFields/index.js +76 -115
  760. package/dist/forms/RenderFields/index.js.map +1 -1
  761. package/dist/forms/RenderFields/types.js +2 -1
  762. package/dist/forms/RenderFields/types.js.map +1 -1
  763. package/dist/forms/RowLabel/Context/index.js +30 -29
  764. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  765. package/dist/forms/RowLabel/index.js +33 -24
  766. package/dist/forms/RowLabel/index.js.map +1 -1
  767. package/dist/forms/RowLabel/types.js +2 -1
  768. package/dist/forms/RowLabel/types.js.map +1 -1
  769. package/dist/forms/Submit/index.js +32 -35
  770. package/dist/forms/Submit/index.js.map +1 -1
  771. package/dist/forms/WatchChildErrors/buildPathSegments.js +29 -29
  772. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  773. package/dist/forms/WatchChildErrors/index.js +41 -66
  774. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  775. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +654 -683
  776. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  777. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js +14 -22
  778. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  779. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js +17 -26
  780. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  781. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +186 -198
  782. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  783. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +67 -60
  784. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +1 -1
  785. package/dist/forms/fieldSchemasToFormState/index.js +90 -79
  786. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  787. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js +12 -16
  788. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js.map +1 -1
  789. package/dist/forms/fieldSchemasToFormState/iterateFields.js +95 -116
  790. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  791. package/dist/forms/fieldSchemasToFormState/renderField.js +273 -274
  792. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  793. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +90 -75
  794. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  795. package/dist/forms/fieldSchemasToFormState/types.js +6 -1
  796. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  797. package/dist/forms/useField/index.js +180 -292
  798. package/dist/forms/useField/index.js.map +1 -1
  799. package/dist/forms/useField/types.js +20 -1
  800. package/dist/forms/useField/types.js.map +1 -1
  801. package/dist/forms/withCondition/WatchCondition.js +9 -27
  802. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  803. package/dist/forms/withCondition/index.js +21 -15
  804. package/dist/forms/withCondition/index.js.map +1 -1
  805. package/dist/graphics/Account/Default/index.js +46 -22
  806. package/dist/graphics/Account/Default/index.js.map +1 -1
  807. package/dist/graphics/Account/Gravatar/index.js +25 -34
  808. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  809. package/dist/graphics/Account/index.js +24 -51
  810. package/dist/graphics/Account/index.js.map +1 -1
  811. package/dist/graphics/DefaultBlockImage/index.js +117 -62
  812. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  813. package/dist/graphics/File/index.js +33 -17
  814. package/dist/graphics/File/index.js.map +1 -1
  815. package/dist/graphics/Icon/index.js +33 -19
  816. package/dist/graphics/Icon/index.js.map +1 -1
  817. package/dist/graphics/Logo/index.js +112 -39
  818. package/dist/graphics/Logo/index.js.map +1 -1
  819. package/dist/hooks/useClickOutside.js +19 -15
  820. package/dist/hooks/useClickOutside.js.map +1 -1
  821. package/dist/hooks/useControllableState.js +25 -35
  822. package/dist/hooks/useControllableState.js.map +1 -1
  823. package/dist/hooks/useDebounce.js +15 -26
  824. package/dist/hooks/useDebounce.js.map +1 -1
  825. package/dist/hooks/useDebouncedCallback.js +15 -23
  826. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  827. package/dist/hooks/useDebouncedEffect.js +18 -53
  828. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  829. package/dist/hooks/useDelay.js +27 -52
  830. package/dist/hooks/useDelay.js.map +1 -1
  831. package/dist/hooks/useDelayedRender.js +42 -76
  832. package/dist/hooks/useDelayedRender.js.map +1 -1
  833. package/dist/hooks/useEffectEvent.js +12 -33
  834. package/dist/hooks/useEffectEvent.js.map +1 -1
  835. package/dist/hooks/useHotkey.js +96 -110
  836. package/dist/hooks/useHotkey.js.map +1 -1
  837. package/dist/hooks/useIntersect.js +28 -59
  838. package/dist/hooks/useIntersect.js.map +1 -1
  839. package/dist/hooks/usePayloadAPI.js +78 -172
  840. package/dist/hooks/usePayloadAPI.js.map +1 -1
  841. package/dist/hooks/usePopupWindow.js +91 -133
  842. package/dist/hooks/usePopupWindow.js.map +1 -1
  843. package/dist/hooks/useQueue.js +48 -38
  844. package/dist/hooks/useQueue.js.map +1 -1
  845. package/dist/hooks/useRelatedCollections.js +15 -27
  846. package/dist/hooks/useRelatedCollections.js.map +1 -1
  847. package/dist/hooks/useResize.js +42 -70
  848. package/dist/hooks/useResize.js.map +1 -1
  849. package/dist/hooks/useThrottledEffect.js +17 -51
  850. package/dist/hooks/useThrottledEffect.js.map +1 -1
  851. package/dist/hooks/useThrottledValue.js +16 -13
  852. package/dist/hooks/useThrottledValue.js.map +1 -1
  853. package/dist/hooks/useUseAsTitle.js +7 -27
  854. package/dist/hooks/useUseAsTitle.js.map +1 -1
  855. package/dist/icons/Calendar/index.js +20 -11
  856. package/dist/icons/Calendar/index.js.map +1 -1
  857. package/dist/icons/Check/index.js +20 -11
  858. package/dist/icons/Check/index.js.map +1 -1
  859. package/dist/icons/Chevron/index.js +30 -22
  860. package/dist/icons/Chevron/index.js.map +1 -1
  861. package/dist/icons/CloseMenu/index.js +20 -11
  862. package/dist/icons/CloseMenu/index.js.map +1 -1
  863. package/dist/icons/CodeBlock/index.js +22 -13
  864. package/dist/icons/CodeBlock/index.js.map +1 -1
  865. package/dist/icons/Copy/index.js +24 -17
  866. package/dist/icons/Copy/index.js.map +1 -1
  867. package/dist/icons/Document/index.js +25 -16
  868. package/dist/icons/Document/index.js.map +1 -1
  869. package/dist/icons/Dots/index.js +32 -11
  870. package/dist/icons/Dots/index.js.map +1 -1
  871. package/dist/icons/DragHandle/index.js +70 -33
  872. package/dist/icons/DragHandle/index.js.map +1 -1
  873. package/dist/icons/Edit/index.js +23 -13
  874. package/dist/icons/Edit/index.js.map +1 -1
  875. package/dist/icons/ExternalLink/index.js +25 -15
  876. package/dist/icons/ExternalLink/index.js.map +1 -1
  877. package/dist/icons/Eye/index.js +53 -25
  878. package/dist/icons/Eye/index.js.map +1 -1
  879. package/dist/icons/Folder/index.js +26 -16
  880. package/dist/icons/Folder/index.js.map +1 -1
  881. package/dist/icons/Gear/index.js +34 -21
  882. package/dist/icons/Gear/index.js.map +1 -1
  883. package/dist/icons/GridView/index.js +57 -31
  884. package/dist/icons/GridView/index.js.map +1 -1
  885. package/dist/icons/Line/index.js +23 -14
  886. package/dist/icons/Line/index.js.map +1 -1
  887. package/dist/icons/Link/index.js +25 -16
  888. package/dist/icons/Link/index.js.map +1 -1
  889. package/dist/icons/ListView/index.js +25 -16
  890. package/dist/icons/ListView/index.js.map +1 -1
  891. package/dist/icons/Lock/index.js +41 -24
  892. package/dist/icons/Lock/index.js.map +1 -1
  893. package/dist/icons/LogOut/index.js +23 -14
  894. package/dist/icons/LogOut/index.js.map +1 -1
  895. package/dist/icons/Menu/index.js +23 -14
  896. package/dist/icons/Menu/index.js.map +1 -1
  897. package/dist/icons/MinimizeMaximize/index.js +33 -19
  898. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  899. package/dist/icons/More/index.js +43 -21
  900. package/dist/icons/More/index.js.map +1 -1
  901. package/dist/icons/MoveFolder/index.js +62 -34
  902. package/dist/icons/MoveFolder/index.js.map +1 -1
  903. package/dist/icons/People/index.js +28 -17
  904. package/dist/icons/People/index.js.map +1 -1
  905. package/dist/icons/Plus/index.js +22 -13
  906. package/dist/icons/Plus/index.js.map +1 -1
  907. package/dist/icons/Search/index.js +21 -12
  908. package/dist/icons/Search/index.js.map +1 -1
  909. package/dist/icons/Sort/index.js +48 -35
  910. package/dist/icons/Sort/index.js.map +1 -1
  911. package/dist/icons/Swap/index.js +20 -11
  912. package/dist/icons/Swap/index.js.map +1 -1
  913. package/dist/icons/ThreeDots/index.js +27 -8
  914. package/dist/icons/ThreeDots/index.js.map +1 -1
  915. package/dist/icons/Trash/index.js +28 -18
  916. package/dist/icons/Trash/index.js.map +1 -1
  917. package/dist/icons/X/index.js +25 -15
  918. package/dist/icons/X/index.js.map +1 -1
  919. package/dist/providers/Actions/index.js +21 -33
  920. package/dist/providers/Actions/index.js.map +1 -1
  921. package/dist/providers/Auth/index.js +293 -243
  922. package/dist/providers/Auth/index.js.map +1 -1
  923. package/dist/providers/ClickOutside/index.js +35 -35
  924. package/dist/providers/ClickOutside/index.js.map +1 -1
  925. package/dist/providers/ClientFunction/index.js +63 -104
  926. package/dist/providers/ClientFunction/index.js.map +1 -1
  927. package/dist/providers/Config/index.js +91 -91
  928. package/dist/providers/Config/index.js.map +1 -1
  929. package/dist/providers/DocumentEvents/index.js +19 -30
  930. package/dist/providers/DocumentEvents/index.js.map +1 -1
  931. package/dist/providers/DocumentInfo/index.js +331 -325
  932. package/dist/providers/DocumentInfo/index.js.map +1 -1
  933. package/dist/providers/DocumentInfo/types.js +26 -1
  934. package/dist/providers/DocumentInfo/types.js.map +1 -1
  935. package/dist/providers/DocumentInfo/useGetDocPermissions.js +81 -79
  936. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  937. package/dist/providers/DocumentTitle/context.js.map +1 -1
  938. package/dist/providers/DocumentTitle/index.js +51 -55
  939. package/dist/providers/DocumentTitle/index.js.map +1 -1
  940. package/dist/providers/EditDepth/index.js +15 -25
  941. package/dist/providers/EditDepth/index.js.map +1 -1
  942. package/dist/providers/EntityVisibility/index.js +26 -48
  943. package/dist/providers/EntityVisibility/index.js.map +1 -1
  944. package/dist/providers/Folders/groupItemIDsByRelation.js +8 -7
  945. package/dist/providers/Folders/groupItemIDsByRelation.js.map +1 -1
  946. package/dist/providers/Folders/index.js +698 -600
  947. package/dist/providers/Folders/index.js.map +1 -1
  948. package/dist/providers/ListQuery/context.js +3 -2
  949. package/dist/providers/ListQuery/context.js.map +1 -1
  950. package/dist/providers/ListQuery/index.js +156 -140
  951. package/dist/providers/ListQuery/index.js.map +1 -1
  952. package/dist/providers/ListQuery/mergeQuery.js +49 -31
  953. package/dist/providers/ListQuery/mergeQuery.js.map +1 -1
  954. package/dist/providers/ListQuery/sanitizeQuery.js +24 -23
  955. package/dist/providers/ListQuery/sanitizeQuery.js.map +1 -1
  956. package/dist/providers/ListQuery/types.js +6 -1
  957. package/dist/providers/ListQuery/types.js.map +1 -1
  958. package/dist/providers/LivePreview/collisionDetection.js +21 -24
  959. package/dist/providers/LivePreview/collisionDetection.js.map +1 -1
  960. package/dist/providers/LivePreview/context.js +60 -55
  961. package/dist/providers/LivePreview/context.js.map +1 -1
  962. package/dist/providers/LivePreview/index.js +225 -205
  963. package/dist/providers/LivePreview/index.js.map +1 -1
  964. package/dist/providers/LivePreview/index.scss +1 -1
  965. package/dist/providers/LivePreview/sizeReducer.js +19 -18
  966. package/dist/providers/LivePreview/sizeReducer.js.map +1 -1
  967. package/dist/providers/Locale/index.js +87 -154
  968. package/dist/providers/Locale/index.js.map +1 -1
  969. package/dist/providers/Operation/index.js +12 -11
  970. package/dist/providers/Operation/index.js.map +1 -1
  971. package/dist/providers/Params/index.js +14 -26
  972. package/dist/providers/Params/index.js.map +1 -1
  973. package/dist/providers/Preferences/index.js +130 -122
  974. package/dist/providers/Preferences/index.js.map +1 -1
  975. package/dist/providers/Root/index.js +190 -116
  976. package/dist/providers/Root/index.js.map +1 -1
  977. package/dist/providers/RouteCache/index.js +53 -103
  978. package/dist/providers/RouteCache/index.js.map +1 -1
  979. package/dist/providers/RouteTransition/ProgressBar/index.js +61 -80
  980. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  981. package/dist/providers/RouteTransition/index.js +69 -94
  982. package/dist/providers/RouteTransition/index.js.map +1 -1
  983. package/dist/providers/ScrollInfo/index.js +1 -1
  984. package/dist/providers/ScrollInfo/index.js.map +1 -1
  985. package/dist/providers/SearchParams/index.js +36 -35
  986. package/dist/providers/SearchParams/index.js.map +1 -1
  987. package/dist/providers/Selection/index.js +203 -183
  988. package/dist/providers/Selection/index.js.map +1 -1
  989. package/dist/providers/ServerFunctions/index.js +199 -189
  990. package/dist/providers/ServerFunctions/index.js.map +1 -1
  991. package/dist/providers/TableColumns/RenderDefaultCell/index.js +33 -62
  992. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  993. package/dist/providers/TableColumns/buildColumnState/filterFields.js +32 -32
  994. package/dist/providers/TableColumns/buildColumnState/filterFields.js.map +1 -1
  995. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js +50 -52
  996. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js.map +1 -1
  997. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js +3 -2
  998. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js.map +1 -1
  999. package/dist/providers/TableColumns/buildColumnState/index.js +132 -143
  1000. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  1001. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js +10 -14
  1002. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js.map +1 -1
  1003. package/dist/providers/TableColumns/buildColumnState/renderCell.js +150 -151
  1004. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  1005. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js +16 -15
  1006. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js.map +1 -1
  1007. package/dist/providers/TableColumns/context.js +2 -1
  1008. package/dist/providers/TableColumns/context.js.map +1 -1
  1009. package/dist/providers/TableColumns/getInitialColumns.js +42 -28
  1010. package/dist/providers/TableColumns/getInitialColumns.js.map +1 -1
  1011. package/dist/providers/TableColumns/index.js +88 -85
  1012. package/dist/providers/TableColumns/index.js.map +1 -1
  1013. package/dist/providers/TableColumns/types.js +18 -1
  1014. package/dist/providers/TableColumns/types.js.map +1 -1
  1015. package/dist/providers/Theme/index.js +69 -104
  1016. package/dist/providers/Theme/index.js.map +1 -1
  1017. package/dist/providers/ToastContainer/icons/Error.js +34 -19
  1018. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  1019. package/dist/providers/ToastContainer/icons/Info.js +34 -19
  1020. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  1021. package/dist/providers/ToastContainer/icons/Success.js +34 -19
  1022. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  1023. package/dist/providers/ToastContainer/icons/Warning.js +34 -19
  1024. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  1025. package/dist/providers/ToastContainer/index.js +56 -47
  1026. package/dist/providers/ToastContainer/index.js.map +1 -1
  1027. package/dist/providers/Translation/index.js +66 -112
  1028. package/dist/providers/Translation/index.js.map +1 -1
  1029. package/dist/providers/UploadControls/index.js +28 -40
  1030. package/dist/providers/UploadControls/index.js.map +1 -1
  1031. package/dist/providers/UploadEdits/index.js +31 -73
  1032. package/dist/providers/UploadEdits/index.js.map +1 -1
  1033. package/dist/providers/UploadHandlers/index.js +30 -65
  1034. package/dist/providers/UploadHandlers/index.js.map +1 -1
  1035. package/dist/providers/WindowInfo/index.js +5 -9
  1036. package/dist/providers/WindowInfo/index.js.map +1 -1
  1037. package/dist/styles.css +0 -1
  1038. package/dist/utilities/abortAndIgnore.js +15 -17
  1039. package/dist/utilities/abortAndIgnore.js.map +1 -1
  1040. package/dist/utilities/api.js +78 -77
  1041. package/dist/utilities/api.js.map +1 -1
  1042. package/dist/utilities/buildClientFieldSchemaMap/index.js +61 -65
  1043. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  1044. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +142 -154
  1045. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  1046. package/dist/utilities/buildFieldSchemaMap/index.js +59 -61
  1047. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  1048. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +110 -122
  1049. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  1050. package/dist/utilities/buildFormState.js +151 -186
  1051. package/dist/utilities/buildFormState.js.map +1 -1
  1052. package/dist/utilities/buildTableState.js +145 -168
  1053. package/dist/utilities/buildTableState.js.map +1 -1
  1054. package/dist/utilities/canUseDOM.js +1 -0
  1055. package/dist/utilities/canUseDOM.js.map +1 -1
  1056. package/dist/utilities/combineFieldLabel.js +53 -26
  1057. package/dist/utilities/combineFieldLabel.js.map +1 -1
  1058. package/dist/utilities/copyDataFromLocale.js +202 -210
  1059. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  1060. package/dist/utilities/dateLocales.js +28 -27
  1061. package/dist/utilities/dateLocales.js.map +1 -1
  1062. package/dist/utilities/deepMerge.js +14 -13
  1063. package/dist/utilities/deepMerge.js.map +1 -1
  1064. package/dist/utilities/fetchPreferences.js.map +1 -1
  1065. package/dist/utilities/filterOutUploadFields.js +17 -4
  1066. package/dist/utilities/filterOutUploadFields.js.map +1 -1
  1067. package/dist/utilities/findLocaleFromCode.js +6 -5
  1068. package/dist/utilities/findLocaleFromCode.js.map +1 -1
  1069. package/dist/utilities/formatAbsoluteURL.js +8 -8
  1070. package/dist/utilities/formatAbsoluteURL.js.map +1 -1
  1071. package/dist/utilities/formatAdminURL.js +2 -1
  1072. package/dist/utilities/formatAdminURL.js.map +1 -1
  1073. package/dist/utilities/formatDocTitle/formatDateTitle.js +20 -27
  1074. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  1075. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js +14 -13
  1076. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js.map +1 -1
  1077. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js +14 -13
  1078. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js.map +1 -1
  1079. package/dist/utilities/formatDocTitle/index.js +38 -44
  1080. package/dist/utilities/formatDocTitle/index.js.map +1 -1
  1081. package/dist/utilities/formatFields.js +2 -1
  1082. package/dist/utilities/formatFields.js.map +1 -1
  1083. package/dist/utilities/generateFieldID.js +6 -5
  1084. package/dist/utilities/generateFieldID.js.map +1 -1
  1085. package/dist/utilities/getClientConfig.js +25 -29
  1086. package/dist/utilities/getClientConfig.js.map +1 -1
  1087. package/dist/utilities/getClientSchemaMap.js +24 -32
  1088. package/dist/utilities/getClientSchemaMap.js.map +1 -1
  1089. package/dist/utilities/getColumns.js +29 -35
  1090. package/dist/utilities/getColumns.js.map +1 -1
  1091. package/dist/utilities/getDisplayedFieldValue.js +16 -16
  1092. package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
  1093. package/dist/utilities/getFolderResultsComponentAndData.js +134 -121
  1094. package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
  1095. package/dist/utilities/getGlobalData.js +41 -45
  1096. package/dist/utilities/getGlobalData.js.map +1 -1
  1097. package/dist/utilities/getNavGroups.js +21 -18
  1098. package/dist/utilities/getNavGroups.js.map +1 -1
  1099. package/dist/utilities/getOffsetTop.js +14 -13
  1100. package/dist/utilities/getOffsetTop.js.map +1 -1
  1101. package/dist/utilities/getRequestLanguage.js +5 -8
  1102. package/dist/utilities/getRequestLanguage.js.map +1 -1
  1103. package/dist/utilities/getSchemaMap.js +22 -28
  1104. package/dist/utilities/getSchemaMap.js.map +1 -1
  1105. package/dist/utilities/getSupportedMonacoLocale.js +14 -13
  1106. package/dist/utilities/getSupportedMonacoLocale.js.map +1 -1
  1107. package/dist/utilities/getVisibleEntities.js +15 -26
  1108. package/dist/utilities/getVisibleEntities.js.map +1 -1
  1109. package/dist/utilities/groupNavItems.js +53 -50
  1110. package/dist/utilities/groupNavItems.js.map +1 -1
  1111. package/dist/utilities/handleBackToDashboard.js +8 -11
  1112. package/dist/utilities/handleBackToDashboard.js.map +1 -1
  1113. package/dist/utilities/handleFormStateLocking.js +127 -121
  1114. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  1115. package/dist/utilities/handleGoBack.js +7 -11
  1116. package/dist/utilities/handleGoBack.js.map +1 -1
  1117. package/dist/utilities/handleLivePreview.js +59 -76
  1118. package/dist/utilities/handleLivePreview.js.map +1 -1
  1119. package/dist/utilities/handlePreview.js +41 -52
  1120. package/dist/utilities/handlePreview.js.map +1 -1
  1121. package/dist/utilities/handleTakeOver.js +28 -39
  1122. package/dist/utilities/handleTakeOver.js.map +1 -1
  1123. package/dist/utilities/hasOptionLabelJSXElement.js +9 -11
  1124. package/dist/utilities/hasOptionLabelJSXElement.js.map +1 -1
  1125. package/dist/utilities/hasSavePermission.js +14 -14
  1126. package/dist/utilities/hasSavePermission.js.map +1 -1
  1127. package/dist/utilities/isClientUserObject.js +3 -2
  1128. package/dist/utilities/isClientUserObject.js.map +1 -1
  1129. package/dist/utilities/isEditing.js +2 -5
  1130. package/dist/utilities/isEditing.js.map +1 -1
  1131. package/dist/utilities/isURLAllowed.js +31 -30
  1132. package/dist/utilities/isURLAllowed.js.map +1 -1
  1133. package/dist/utilities/isValidReactElement.js +3 -3
  1134. package/dist/utilities/isValidReactElement.js.map +1 -1
  1135. package/dist/utilities/normalizeRelationshipValue.js +29 -28
  1136. package/dist/utilities/normalizeRelationshipValue.js.map +1 -1
  1137. package/dist/utilities/normalizeRelationshipValue.spec.js +407 -368
  1138. package/dist/utilities/normalizeRelationshipValue.spec.js.map +1 -1
  1139. package/dist/utilities/parseSearchParams.js +7 -7
  1140. package/dist/utilities/parseSearchParams.js.map +1 -1
  1141. package/dist/utilities/reduceFieldsToOptions.js +145 -154
  1142. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  1143. package/dist/utilities/reduceFieldsToValuesWithValidation.js +20 -20
  1144. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  1145. package/dist/utilities/removeUndefined.js +2 -1
  1146. package/dist/utilities/removeUndefined.js.map +1 -1
  1147. package/dist/utilities/renderTable.js +239 -195
  1148. package/dist/utilities/renderTable.js.map +1 -1
  1149. package/dist/utilities/resolveFilterOptions.js +27 -26
  1150. package/dist/utilities/resolveFilterOptions.js.map +1 -1
  1151. package/dist/utilities/sanitizeFilterOptionsQuery.js +16 -15
  1152. package/dist/utilities/sanitizeFilterOptionsQuery.js.map +1 -1
  1153. package/dist/utilities/sanitizeID.js +8 -7
  1154. package/dist/utilities/sanitizeID.js.map +1 -1
  1155. package/dist/utilities/schedulePublishHandler.js +47 -57
  1156. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  1157. package/dist/utilities/scrollToID.js +10 -9
  1158. package/dist/utilities/scrollToID.js.map +1 -1
  1159. package/dist/utilities/setsAreEqual.js +3 -2
  1160. package/dist/utilities/setsAreEqual.js.map +1 -1
  1161. package/dist/utilities/traverseForLocalizedFields.js +36 -35
  1162. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  1163. package/dist/utilities/upsertPreferences.js +75 -75
  1164. package/dist/utilities/upsertPreferences.js.map +1 -1
  1165. package/dist/views/BrowseByFolder/index.js +365 -324
  1166. package/dist/views/BrowseByFolder/index.js.map +1 -1
  1167. package/dist/views/CollectionFolder/ListSelection/index.js +161 -158
  1168. package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
  1169. package/dist/views/CollectionFolder/index.js +360 -282
  1170. package/dist/views/CollectionFolder/index.js.map +1 -1
  1171. package/dist/views/Edit/Auth/APIKey.js +185 -124
  1172. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  1173. package/dist/views/Edit/Auth/index.js +309 -321
  1174. package/dist/views/Edit/Auth/index.js.map +1 -1
  1175. package/dist/views/Edit/Auth/types.js +2 -1
  1176. package/dist/views/Edit/Auth/types.js.map +1 -1
  1177. package/dist/views/Edit/SetDocumentStepNav/index.js +84 -150
  1178. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  1179. package/dist/views/Edit/SetDocumentTitle/index.js +30 -77
  1180. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  1181. package/dist/views/Edit/index.js +579 -501
  1182. package/dist/views/Edit/index.js.map +1 -1
  1183. package/dist/views/Edit/types.js +2 -1
  1184. package/dist/views/Edit/types.js.map +1 -1
  1185. package/dist/views/List/GroupByHeader/index.js +35 -24
  1186. package/dist/views/List/GroupByHeader/index.js.map +1 -1
  1187. package/dist/views/List/ListHeader/index.js +115 -80
  1188. package/dist/views/List/ListHeader/index.js.map +1 -1
  1189. package/dist/views/List/ListSelection/index.js +103 -111
  1190. package/dist/views/List/ListSelection/index.js.map +1 -1
  1191. package/dist/views/List/index.js +321 -213
  1192. package/dist/views/List/index.js.map +1 -1
  1193. package/dist/views/List/types.js +2 -1
  1194. package/dist/views/List/types.js.map +1 -1
  1195. package/dist/widgets/CollectionCards/index.js +149 -119
  1196. package/dist/widgets/CollectionCards/index.js.map +1 -1
  1197. package/dist/widgets/CollectionCards/index.scss +1 -1
  1198. package/package.json +7 -7
  1199. package/dist/exports/client/CodeEditor-QOURTFMT.js +0 -14
  1200. package/dist/exports/client/CodeEditor-QOURTFMT.js.map +0 -7
  1201. package/dist/exports/client/DatePicker-VMLA35FO.js +0 -14
  1202. package/dist/exports/client/DatePicker-VMLA35FO.js.map +0 -7
  1203. package/dist/exports/client/chunk-53XJ3K67.js +0 -27
  1204. package/dist/exports/client/chunk-53XJ3K67.js.map +0 -7
  1205. package/dist/exports/client/chunk-5LKBKI4T.js +0 -14
  1206. package/dist/exports/client/chunk-5LKBKI4T.js.map +0 -7
  1207. package/dist/exports/client/chunk-7V3NHDV6.js +0 -29
  1208. package/dist/exports/client/chunk-7V3NHDV6.js.map +0 -7
@@ -1,6 +1,5 @@
1
1
  'use client';
2
-
3
- import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
4
3
  import { useRouter, useSearchParams } from 'next/navigation.js';
5
4
  import { extractID, formatAdminURL, formatFolderOrDocumentItem } from 'payload/shared';
6
5
  import * as qs from 'qs-esm';
@@ -13,629 +12,728 @@ import { useLocale } from '../Locale/index.js';
13
12
  import { useRouteTransition } from '../RouteTransition/index.js';
14
13
  import { useTranslation } from '../Translation/index.js';
15
14
  import { groupItemIDsByRelation } from './groupItemIDsByRelation.js';
16
- const Context = /*#__PURE__*/React.createContext({
17
- activeCollectionFolderSlugs: [],
18
- allCollectionFolderSlugs: [],
19
- allowCreateCollectionSlugs: [],
20
- breadcrumbs: [],
21
- checkIfItemIsDisabled: () => false,
22
- clearSelections: () => {},
23
- currentFolder: null,
24
- documents: [],
25
- dragOverlayItem: undefined,
26
- focusedRowIndex: -1,
27
- folderCollectionConfig: null,
28
- folderCollectionSlug: '',
29
- folderFieldName: 'folder',
30
- folderID: undefined,
31
- FolderResultsComponent: null,
32
- folderType: undefined,
33
- getFolderRoute: () => '',
34
- getSelectedItems: () => [],
35
- isDragging: false,
36
- itemKeysToMove: undefined,
37
- moveToFolder: () => Promise.resolve(undefined),
38
- onItemClick: () => undefined,
39
- onItemKeyPress: () => undefined,
40
- refineFolderData: () => undefined,
41
- search: '',
42
- selectedFolderCollections: undefined,
43
- selectedItemKeys: new Set(),
44
- setBreadcrumbs: () => {},
45
- setFocusedRowIndex: () => -1,
46
- setIsDragging: () => false,
47
- sort: 'name',
48
- subfolders: []
15
+ /**
16
+ * The collection slugs that a view can be filtered by
17
+ * Used in the browse-by-folder view
18
+ */ /**
19
+ * Folder enabled collection slugs that can be populated within the provider
20
+ */ const Context = /*#__PURE__*/ React.createContext({
21
+ activeCollectionFolderSlugs: [],
22
+ allCollectionFolderSlugs: [],
23
+ allowCreateCollectionSlugs: [],
24
+ breadcrumbs: [],
25
+ checkIfItemIsDisabled: ()=>false,
26
+ clearSelections: ()=>{},
27
+ currentFolder: null,
28
+ documents: [],
29
+ dragOverlayItem: undefined,
30
+ focusedRowIndex: -1,
31
+ folderCollectionConfig: null,
32
+ folderCollectionSlug: '',
33
+ folderFieldName: 'folder',
34
+ folderID: undefined,
35
+ FolderResultsComponent: null,
36
+ folderType: undefined,
37
+ getFolderRoute: ()=>'',
38
+ getSelectedItems: ()=>[],
39
+ isDragging: false,
40
+ itemKeysToMove: undefined,
41
+ moveToFolder: ()=>Promise.resolve(undefined),
42
+ onItemClick: ()=>undefined,
43
+ onItemKeyPress: ()=>undefined,
44
+ refineFolderData: ()=>undefined,
45
+ search: '',
46
+ selectedFolderCollections: undefined,
47
+ selectedItemKeys: new Set(),
48
+ setBreadcrumbs: ()=>{},
49
+ setFocusedRowIndex: ()=>-1,
50
+ setIsDragging: ()=>false,
51
+ sort: 'name',
52
+ subfolders: []
49
53
  });
50
- export function FolderProvider({
51
- activeCollectionFolderSlugs: activeCollectionSlugs,
52
- allCollectionFolderSlugs = [],
53
- allowCreateCollectionSlugs,
54
- allowMultiSelection = true,
55
- baseFolderPath,
56
- breadcrumbs: _breadcrumbsFromProps = [],
57
- children,
58
- documents,
59
- folderFieldName,
60
- folderID,
61
- FolderResultsComponent: InitialFolderResultsComponent,
62
- onItemClick: onItemClickFromProps,
63
- search,
64
- sort = 'name',
65
- subfolders
66
- }) {
67
- const parentFolderContext = useFolder();
68
- const {
69
- config
70
- } = useConfig();
71
- const {
72
- routes
73
- } = config;
74
- const drawerDepth = useDrawerDepth();
75
- const {
76
- t
77
- } = useTranslation();
78
- const router = useRouter();
79
- const {
80
- startRouteTransition
81
- } = useRouteTransition();
82
- const locale = useLocale();
83
- const localeCode = locale ? locale.code : undefined;
84
- const currentlySelectedIndexes = React.useRef(new Set());
85
- const [selectedFolderCollections, setSelectedFolderCollections] = React.useState([]);
86
- const [FolderResultsComponent, setFolderResultsComponent] = React.useState(InitialFolderResultsComponent || (() => null));
87
- const [folderCollectionConfig] = React.useState(() => config.collections.find(collection => config.folders && collection.slug === config.folders.slug));
88
- const folderCollectionSlug = folderCollectionConfig.slug;
89
- const rawSearchParams = useSearchParams();
90
- const searchParams = React.useMemo(() => parseSearchParams(rawSearchParams), [rawSearchParams]);
91
- const [currentQuery, setCurrentQuery] = React.useState(searchParams);
92
- const [isDragging, setIsDragging] = React.useState(false);
93
- const [selectedItemKeys, setSelectedItemKeys] = React.useState(() => new Set());
94
- const [focusedRowIndex, setFocusedRowIndex] = React.useState(-1);
95
- // This is used to determine what data to display on the drag overlay
96
- const [dragOverlayItem, setDragOverlayItem] = React.useState();
97
- const [breadcrumbs, setBreadcrumbs] = React.useState(_breadcrumbsFromProps);
98
- const lastClickTime = React.useRef(null);
99
- const totalCount = subfolders.length + documents.length;
100
- const clearSelections = React.useCallback(() => {
101
- setFocusedRowIndex(-1);
102
- setSelectedItemKeys(new Set());
103
- setDragOverlayItem(undefined);
104
- currentlySelectedIndexes.current = new Set();
105
- }, []);
106
- const mergeQuery = React.useCallback((newQuery = {}) => {
107
- let page = 'page' in newQuery ? newQuery.page : currentQuery?.page;
108
- if ('search' in newQuery) {
109
- page = '1';
110
- }
111
- const mergedQuery = {
112
- ...currentQuery,
113
- ...newQuery,
114
- locale: localeCode,
115
- page,
116
- relationTo: 'relationTo' in newQuery ? newQuery.relationTo : currentQuery?.relationTo,
117
- search: 'search' in newQuery ? newQuery.search : currentQuery?.search,
118
- sort: 'sort' in newQuery ? newQuery.sort : currentQuery?.sort ?? undefined
119
- };
120
- return mergedQuery;
121
- }, [currentQuery, localeCode]);
122
- const refineFolderData = React.useCallback(({
123
- query,
124
- updateURL
125
- }) => {
126
- if (updateURL) {
127
- const queryParams = mergeQuery(query);
128
- startRouteTransition(() => router.replace(`${qs.stringify({
129
- ...queryParams,
130
- relationTo: JSON.stringify(queryParams.relationTo)
131
- }, {
132
- addQueryPrefix: true
133
- })}`));
134
- setCurrentQuery(queryParams);
135
- }
136
- }, [mergeQuery, router, startRouteTransition]);
137
- const getFolderRoute = React.useCallback(toFolderID => {
138
- const queryParams_0 = qs.stringify(mergeQuery({
139
- page: '1',
140
- search: ''
141
- }), {
142
- addQueryPrefix: true
143
- });
144
- return formatAdminURL({
145
- adminRoute: config.routes.admin,
146
- path: `${baseFolderPath}${toFolderID ? `/${toFolderID}` : ''}${queryParams_0}`
147
- });
148
- }, [baseFolderPath, config.routes.admin, mergeQuery]);
149
- const getItem = React.useCallback(itemKey => {
150
- return [...subfolders, ...documents].find(doc => doc.itemKey === itemKey);
151
- }, [documents, subfolders]);
152
- const getSelectedItems = React.useCallback(() => {
153
- return Array.from(selectedItemKeys).reduce((acc, itemKey_0) => {
154
- const item = getItem(itemKey_0);
155
- if (item) {
156
- acc.push(item);
157
- }
158
- return acc;
54
+ /**
55
+ * The collection slugs that are being viewed
56
+ */ /**
57
+ * Folder enabled collection slugs that can be populated within the provider
58
+ */ /**
59
+ * Array of slugs that can be created in the folder view
60
+ */ /**
61
+ * The base folder route path
62
+ *
63
+ * @example
64
+ * `/collections/:collectionSlug/:folderCollectionSlug`
65
+ * or
66
+ * `/browse-by-folder`
67
+ */ /**
68
+ * Breadcrumbs for the current folder
69
+ */ /**
70
+ * Children to render inside the provider
71
+ */ /**
72
+ * All documents in the current folder
73
+ */ /**
74
+ * The name of the field that contains the folder relation
75
+ */ /**
76
+ * The ID of the current folder
77
+ */ /**
78
+ * The component to render the folder results
79
+ */ /**
80
+ * Optional function to call when an item is clicked
81
+ */ /**
82
+ * The intial search query
83
+ */ /**
84
+ * The sort order of the documents
85
+ *
86
+ * @example
87
+ * `name` for descending
88
+ * `-name` for ascending
89
+ */ /**
90
+ * All subfolders in the current folder
91
+ */ export function FolderProvider({ activeCollectionFolderSlugs: activeCollectionSlugs, allCollectionFolderSlugs = [], allowCreateCollectionSlugs, allowMultiSelection = true, baseFolderPath, breadcrumbs: _breadcrumbsFromProps = [], children, documents, folderFieldName, folderID, FolderResultsComponent: InitialFolderResultsComponent, onItemClick: onItemClickFromProps, search, sort = 'name', subfolders }) {
92
+ const parentFolderContext = useFolder();
93
+ const { config } = useConfig();
94
+ const { routes } = config;
95
+ const drawerDepth = useDrawerDepth();
96
+ const { t } = useTranslation();
97
+ const router = useRouter();
98
+ const { startRouteTransition } = useRouteTransition();
99
+ const locale = useLocale();
100
+ const localeCode = locale ? locale.code : undefined;
101
+ const currentlySelectedIndexes = React.useRef(new Set());
102
+ const [selectedFolderCollections, setSelectedFolderCollections] = React.useState([]);
103
+ const [FolderResultsComponent, setFolderResultsComponent] = React.useState(InitialFolderResultsComponent || (()=>null));
104
+ const [folderCollectionConfig] = React.useState(()=>config.collections.find((collection)=>config.folders && collection.slug === config.folders.slug));
105
+ const folderCollectionSlug = folderCollectionConfig.slug;
106
+ const rawSearchParams = useSearchParams();
107
+ const searchParams = React.useMemo(()=>parseSearchParams(rawSearchParams), [
108
+ rawSearchParams
109
+ ]);
110
+ const [currentQuery, setCurrentQuery] = React.useState(searchParams);
111
+ const [isDragging, setIsDragging] = React.useState(false);
112
+ const [selectedItemKeys, setSelectedItemKeys] = React.useState(()=>new Set());
113
+ const [focusedRowIndex, setFocusedRowIndex] = React.useState(-1);
114
+ // This is used to determine what data to display on the drag overlay
115
+ const [dragOverlayItem, setDragOverlayItem] = React.useState();
116
+ const [breadcrumbs, setBreadcrumbs] = React.useState(_breadcrumbsFromProps);
117
+ const lastClickTime = React.useRef(null);
118
+ const totalCount = subfolders.length + documents.length;
119
+ const clearSelections = React.useCallback(()=>{
120
+ setFocusedRowIndex(-1);
121
+ setSelectedItemKeys(new Set());
122
+ setDragOverlayItem(undefined);
123
+ currentlySelectedIndexes.current = new Set();
159
124
  }, []);
160
- }, [selectedItemKeys, getItem]);
161
- const navigateAfterSelection = React.useCallback(({
162
- collectionSlug,
163
- docID
164
- }) => {
165
- if (drawerDepth === 1) {
166
- // not in a drawer (default is 1)
167
- if (collectionSlug === folderCollectionSlug) {
168
- // clicked on folder, take the user to the folder view
169
- startRouteTransition(() => {
170
- router.push(getFolderRoute(docID));
171
- clearSelections();
125
+ const mergeQuery = React.useCallback((newQuery = {})=>{
126
+ let page = 'page' in newQuery ? newQuery.page : currentQuery?.page;
127
+ if ('search' in newQuery) {
128
+ page = '1';
129
+ }
130
+ const mergedQuery = {
131
+ ...currentQuery,
132
+ ...newQuery,
133
+ locale: localeCode,
134
+ page,
135
+ relationTo: 'relationTo' in newQuery ? newQuery.relationTo : currentQuery?.relationTo,
136
+ search: 'search' in newQuery ? newQuery.search : currentQuery?.search,
137
+ sort: 'sort' in newQuery ? newQuery.sort : currentQuery?.sort ?? undefined
138
+ };
139
+ return mergedQuery;
140
+ }, [
141
+ currentQuery,
142
+ localeCode
143
+ ]);
144
+ const refineFolderData = React.useCallback(({ query, updateURL })=>{
145
+ if (updateURL) {
146
+ const queryParams = mergeQuery(query);
147
+ startRouteTransition(()=>router.replace(`${qs.stringify({
148
+ ...queryParams,
149
+ relationTo: JSON.stringify(queryParams.relationTo)
150
+ }, {
151
+ addQueryPrefix: true
152
+ })}`));
153
+ setCurrentQuery(queryParams);
154
+ }
155
+ }, [
156
+ mergeQuery,
157
+ router,
158
+ startRouteTransition
159
+ ]);
160
+ const getFolderRoute = React.useCallback((toFolderID)=>{
161
+ const queryParams = qs.stringify(mergeQuery({
162
+ page: '1',
163
+ search: ''
164
+ }), {
165
+ addQueryPrefix: true
172
166
  });
173
- } else if (collectionSlug) {
174
- // clicked on document, take the user to the documet view
175
- startRouteTransition(() => {
176
- router.push(formatAdminURL({
167
+ return formatAdminURL({
177
168
  adminRoute: config.routes.admin,
178
- path: `/collections/${collectionSlug}/${docID}`
179
- }));
180
- clearSelections();
169
+ path: `${baseFolderPath}${toFolderID ? `/${toFolderID}` : ''}${queryParams}`
181
170
  });
182
- }
183
- } else {
184
- clearSelections();
185
- }
186
- if (typeof onItemClickFromProps === 'function') {
187
- onItemClickFromProps(getItem(`${collectionSlug}-${docID}`));
188
- }
189
- }, [clearSelections, config.routes.admin, drawerDepth, folderCollectionSlug, getFolderRoute, getItem, onItemClickFromProps, router, startRouteTransition]);
190
- const handleShiftSelection = React.useCallback(targetIndex => {
191
- const allItems = [...subfolders, ...documents];
192
- // Find existing selection boundaries
193
- const existingIndexes = allItems.reduce((acc_0, item_0, idx) => {
194
- if (selectedItemKeys.has(item_0.itemKey)) {
195
- acc_0.push(idx);
196
- }
197
- return acc_0;
198
- }, []);
199
- if (existingIndexes.length === 0) {
200
- // No existing selection, just select target
201
- return [targetIndex];
202
- }
203
- const firstSelectedIndex = Math.min(...existingIndexes);
204
- const lastSelectedIndex = Math.max(...existingIndexes);
205
- const isWithinBounds = targetIndex >= firstSelectedIndex && targetIndex <= lastSelectedIndex;
206
- // Choose anchor based on whether we're contracting or extending
207
- let anchorIndex = targetIndex;
208
- if (isWithinBounds) {
209
- // Contracting: if target is at a boundary, use target as anchor
210
- // Otherwise, use furthest boundary to maintain opposite edge
211
- if (targetIndex === firstSelectedIndex || targetIndex === lastSelectedIndex) {
212
- anchorIndex = targetIndex;
213
- } else {
214
- const distanceToFirst = Math.abs(targetIndex - firstSelectedIndex);
215
- const distanceToLast = Math.abs(targetIndex - lastSelectedIndex);
216
- anchorIndex = distanceToFirst >= distanceToLast ? firstSelectedIndex : lastSelectedIndex;
217
- }
218
- } else {
219
- // Extending: use closest boundary
220
- const distanceToFirst_0 = Math.abs(targetIndex - firstSelectedIndex);
221
- const distanceToLast_0 = Math.abs(targetIndex - lastSelectedIndex);
222
- anchorIndex = distanceToFirst_0 <= distanceToLast_0 ? firstSelectedIndex : lastSelectedIndex;
223
- }
224
- // Create range from anchor to target
225
- const startIndex = Math.min(anchorIndex, targetIndex);
226
- const endIndex = Math.max(anchorIndex, targetIndex);
227
- const newRangeIndexes = Array.from({
228
- length: endIndex - startIndex + 1
229
- }, (_, i) => startIndex + i);
230
- if (isWithinBounds) {
231
- // Contracting: replace with new range
232
- return newRangeIndexes;
233
- } else {
234
- // Extending: union with existing
235
- return [...new Set([...existingIndexes, ...newRangeIndexes])];
236
- }
237
- }, [subfolders, documents, selectedItemKeys]);
238
- const updateSelections = React.useCallback(({
239
- indexes
240
- }) => {
241
- const allItems_0 = [...subfolders, ...documents];
242
- const {
243
- newSelectedFolderCollections,
244
- newSelectedItemKeys
245
- } = allItems_0.reduce((acc_1, item_1, index) => {
246
- if (indexes.includes(index)) {
247
- acc_1.newSelectedItemKeys.add(item_1.itemKey);
248
- if (item_1.relationTo === folderCollectionSlug) {
249
- item_1.value.folderType?.forEach(collectionSlug_0 => {
250
- if (!acc_1.newSelectedFolderCollections.includes(collectionSlug_0)) {
251
- acc_1.newSelectedFolderCollections.push(collectionSlug_0);
171
+ }, [
172
+ baseFolderPath,
173
+ config.routes.admin,
174
+ mergeQuery
175
+ ]);
176
+ const getItem = React.useCallback((itemKey)=>{
177
+ return [
178
+ ...subfolders,
179
+ ...documents
180
+ ].find((doc)=>doc.itemKey === itemKey);
181
+ }, [
182
+ documents,
183
+ subfolders
184
+ ]);
185
+ const getSelectedItems = React.useCallback(()=>{
186
+ return Array.from(selectedItemKeys).reduce((acc, itemKey)=>{
187
+ const item = getItem(itemKey);
188
+ if (item) {
189
+ acc.push(item);
190
+ }
191
+ return acc;
192
+ }, []);
193
+ }, [
194
+ selectedItemKeys,
195
+ getItem
196
+ ]);
197
+ const navigateAfterSelection = React.useCallback(({ collectionSlug, docID })=>{
198
+ if (drawerDepth === 1) {
199
+ // not in a drawer (default is 1)
200
+ if (collectionSlug === folderCollectionSlug) {
201
+ // clicked on folder, take the user to the folder view
202
+ startRouteTransition(()=>{
203
+ router.push(getFolderRoute(docID));
204
+ clearSelections();
205
+ });
206
+ } else if (collectionSlug) {
207
+ // clicked on document, take the user to the documet view
208
+ startRouteTransition(()=>{
209
+ router.push(formatAdminURL({
210
+ adminRoute: config.routes.admin,
211
+ path: `/collections/${collectionSlug}/${docID}`
212
+ }));
213
+ clearSelections();
214
+ });
252
215
  }
253
- });
254
216
  } else {
255
- if (!acc_1.newSelectedFolderCollections.includes(item_1.relationTo)) {
256
- acc_1.newSelectedFolderCollections.push(item_1.relationTo);
257
- }
217
+ clearSelections();
258
218
  }
259
- }
260
- return acc_1;
261
- }, {
262
- newSelectedFolderCollections: [],
263
- newSelectedItemKeys: new Set()
264
- });
265
- setSelectedFolderCollections(newSelectedFolderCollections);
266
- setSelectedItemKeys(newSelectedItemKeys);
267
- }, [documents, folderCollectionSlug, subfolders]);
268
- const onItemKeyPress = React.useCallback(({
269
- event,
270
- item: currentItem
271
- }) => {
272
- const {
273
- code,
274
- ctrlKey,
275
- metaKey,
276
- shiftKey
277
- } = event;
278
- const isShiftPressed = shiftKey;
279
- const isCtrlPressed = ctrlKey || metaKey;
280
- const isCurrentlySelected = selectedItemKeys.has(currentItem.itemKey);
281
- const allItems_1 = [...subfolders, ...documents];
282
- const currentItemIndex = allItems_1.findIndex(item_2 => item_2.itemKey === currentItem.itemKey);
283
- switch (code) {
284
- case 'ArrowDown':
285
- case 'ArrowLeft':
286
- case 'ArrowRight':
287
- case 'ArrowUp':
288
- {
289
- event.preventDefault();
290
- if (currentItemIndex === -1) {
291
- break;
292
- }
293
- const isBackward = code === 'ArrowLeft' || code === 'ArrowUp';
294
- const newItemIndex = isBackward ? currentItemIndex - 1 : currentItemIndex + 1;
295
- if (newItemIndex < 0 || newItemIndex > totalCount - 1) {
296
- // out of bounds, keep current selection
297
- return;
298
- }
299
- setFocusedRowIndex(newItemIndex);
300
- if (isCtrlPressed) {
301
- break;
302
- }
303
- if (isShiftPressed && allowMultiSelection) {
304
- const selectedIndexes = handleShiftSelection(newItemIndex);
305
- updateSelections({
306
- indexes: selectedIndexes
307
- });
308
- return;
309
- }
310
- // Single selection without shift
311
- if (!isShiftPressed) {
312
- const newItem = allItems_1[newItemIndex];
313
- setSelectedItemKeys(new Set([newItem.itemKey]));
314
- }
315
- break;
219
+ if (typeof onItemClickFromProps === 'function') {
220
+ onItemClickFromProps(getItem(`${collectionSlug}-${docID}`));
316
221
  }
317
- case 'Enter':
318
- {
319
- if (selectedItemKeys.size === 1) {
320
- setFocusedRowIndex(undefined);
321
- navigateAfterSelection({
322
- collectionSlug: currentItem.relationTo,
323
- docID: extractID(currentItem.value)
324
- });
325
- return;
326
- }
327
- break;
222
+ }, [
223
+ clearSelections,
224
+ config.routes.admin,
225
+ drawerDepth,
226
+ folderCollectionSlug,
227
+ getFolderRoute,
228
+ getItem,
229
+ onItemClickFromProps,
230
+ router,
231
+ startRouteTransition
232
+ ]);
233
+ const handleShiftSelection = React.useCallback((targetIndex)=>{
234
+ const allItems = [
235
+ ...subfolders,
236
+ ...documents
237
+ ];
238
+ // Find existing selection boundaries
239
+ const existingIndexes = allItems.reduce((acc, item, idx)=>{
240
+ if (selectedItemKeys.has(item.itemKey)) {
241
+ acc.push(idx);
242
+ }
243
+ return acc;
244
+ }, []);
245
+ if (existingIndexes.length === 0) {
246
+ // No existing selection, just select target
247
+ return [
248
+ targetIndex
249
+ ];
328
250
  }
329
- case 'Escape':
330
- {
331
- clearSelections();
332
- break;
251
+ const firstSelectedIndex = Math.min(...existingIndexes);
252
+ const lastSelectedIndex = Math.max(...existingIndexes);
253
+ const isWithinBounds = targetIndex >= firstSelectedIndex && targetIndex <= lastSelectedIndex;
254
+ // Choose anchor based on whether we're contracting or extending
255
+ let anchorIndex = targetIndex;
256
+ if (isWithinBounds) {
257
+ // Contracting: if target is at a boundary, use target as anchor
258
+ // Otherwise, use furthest boundary to maintain opposite edge
259
+ if (targetIndex === firstSelectedIndex || targetIndex === lastSelectedIndex) {
260
+ anchorIndex = targetIndex;
261
+ } else {
262
+ const distanceToFirst = Math.abs(targetIndex - firstSelectedIndex);
263
+ const distanceToLast = Math.abs(targetIndex - lastSelectedIndex);
264
+ anchorIndex = distanceToFirst >= distanceToLast ? firstSelectedIndex : lastSelectedIndex;
265
+ }
266
+ } else {
267
+ // Extending: use closest boundary
268
+ const distanceToFirst = Math.abs(targetIndex - firstSelectedIndex);
269
+ const distanceToLast = Math.abs(targetIndex - lastSelectedIndex);
270
+ anchorIndex = distanceToFirst <= distanceToLast ? firstSelectedIndex : lastSelectedIndex;
333
271
  }
334
- case 'KeyA':
335
- {
336
- if (allowMultiSelection && isCtrlPressed) {
337
- event.preventDefault();
338
- setFocusedRowIndex(totalCount - 1);
339
- updateSelections({
340
- indexes: Array.from({
341
- length: totalCount
342
- }, (__0, i_0) => i_0)
343
- });
344
- }
345
- break;
272
+ // Create range from anchor to target
273
+ const startIndex = Math.min(anchorIndex, targetIndex);
274
+ const endIndex = Math.max(anchorIndex, targetIndex);
275
+ const newRangeIndexes = Array.from({
276
+ length: endIndex - startIndex + 1
277
+ }, (_, i)=>startIndex + i);
278
+ if (isWithinBounds) {
279
+ // Contracting: replace with new range
280
+ return newRangeIndexes;
281
+ } else {
282
+ // Extending: union with existing
283
+ return [
284
+ ...new Set([
285
+ ...existingIndexes,
286
+ ...newRangeIndexes
287
+ ])
288
+ ];
346
289
  }
347
- case 'Space':
348
- {
349
- if (allowMultiSelection && isShiftPressed) {
350
- event.preventDefault();
351
- const allItems_2 = [...subfolders, ...documents];
352
- updateSelections({
353
- indexes: allItems_2.reduce((acc_2, item_3, idx_0) => {
354
- if (item_3.itemKey === currentItem.itemKey) {
355
- if (isCurrentlySelected) {
356
- return acc_2;
357
- } else {
358
- acc_2.push(idx_0);
359
- }
360
- } else if (selectedItemKeys.has(item_3.itemKey)) {
361
- acc_2.push(idx_0);
290
+ }, [
291
+ subfolders,
292
+ documents,
293
+ selectedItemKeys
294
+ ]);
295
+ const updateSelections = React.useCallback(({ indexes })=>{
296
+ const allItems = [
297
+ ...subfolders,
298
+ ...documents
299
+ ];
300
+ const { newSelectedFolderCollections, newSelectedItemKeys } = allItems.reduce((acc, item, index)=>{
301
+ if (indexes.includes(index)) {
302
+ acc.newSelectedItemKeys.add(item.itemKey);
303
+ if (item.relationTo === folderCollectionSlug) {
304
+ item.value.folderType?.forEach((collectionSlug)=>{
305
+ if (!acc.newSelectedFolderCollections.includes(collectionSlug)) {
306
+ acc.newSelectedFolderCollections.push(collectionSlug);
307
+ }
308
+ });
309
+ } else {
310
+ if (!acc.newSelectedFolderCollections.includes(item.relationTo)) {
311
+ acc.newSelectedFolderCollections.push(item.relationTo);
312
+ }
362
313
  }
363
- return acc_2;
364
- }, [])
365
- });
366
- } else {
314
+ }
315
+ return acc;
316
+ }, {
317
+ newSelectedFolderCollections: [],
318
+ newSelectedItemKeys: new Set()
319
+ });
320
+ setSelectedFolderCollections(newSelectedFolderCollections);
321
+ setSelectedItemKeys(newSelectedItemKeys);
322
+ }, [
323
+ documents,
324
+ folderCollectionSlug,
325
+ subfolders
326
+ ]);
327
+ const onItemKeyPress = React.useCallback(({ event, item: currentItem })=>{
328
+ const { code, ctrlKey, metaKey, shiftKey } = event;
329
+ const isShiftPressed = shiftKey;
330
+ const isCtrlPressed = ctrlKey || metaKey;
331
+ const isCurrentlySelected = selectedItemKeys.has(currentItem.itemKey);
332
+ const allItems = [
333
+ ...subfolders,
334
+ ...documents
335
+ ];
336
+ const currentItemIndex = allItems.findIndex((item)=>item.itemKey === currentItem.itemKey);
337
+ switch(code){
338
+ case 'ArrowDown':
339
+ case 'ArrowLeft':
340
+ case 'ArrowRight':
341
+ case 'ArrowUp':
342
+ {
343
+ event.preventDefault();
344
+ if (currentItemIndex === -1) {
345
+ break;
346
+ }
347
+ const isBackward = code === 'ArrowLeft' || code === 'ArrowUp';
348
+ const newItemIndex = isBackward ? currentItemIndex - 1 : currentItemIndex + 1;
349
+ if (newItemIndex < 0 || newItemIndex > totalCount - 1) {
350
+ // out of bounds, keep current selection
351
+ return;
352
+ }
353
+ setFocusedRowIndex(newItemIndex);
354
+ if (isCtrlPressed) {
355
+ break;
356
+ }
357
+ if (isShiftPressed && allowMultiSelection) {
358
+ const selectedIndexes = handleShiftSelection(newItemIndex);
359
+ updateSelections({
360
+ indexes: selectedIndexes
361
+ });
362
+ return;
363
+ }
364
+ // Single selection without shift
365
+ if (!isShiftPressed) {
366
+ const newItem = allItems[newItemIndex];
367
+ setSelectedItemKeys(new Set([
368
+ newItem.itemKey
369
+ ]));
370
+ }
371
+ break;
372
+ }
373
+ case 'Enter':
374
+ {
375
+ if (selectedItemKeys.size === 1) {
376
+ setFocusedRowIndex(undefined);
377
+ navigateAfterSelection({
378
+ collectionSlug: currentItem.relationTo,
379
+ docID: extractID(currentItem.value)
380
+ });
381
+ return;
382
+ }
383
+ break;
384
+ }
385
+ case 'Escape':
386
+ {
387
+ clearSelections();
388
+ break;
389
+ }
390
+ case 'KeyA':
391
+ {
392
+ if (allowMultiSelection && isCtrlPressed) {
393
+ event.preventDefault();
394
+ setFocusedRowIndex(totalCount - 1);
395
+ updateSelections({
396
+ indexes: Array.from({
397
+ length: totalCount
398
+ }, (_, i)=>i)
399
+ });
400
+ }
401
+ break;
402
+ }
403
+ case 'Space':
404
+ {
405
+ if (allowMultiSelection && isShiftPressed) {
406
+ event.preventDefault();
407
+ const allItems = [
408
+ ...subfolders,
409
+ ...documents
410
+ ];
411
+ updateSelections({
412
+ indexes: allItems.reduce((acc, item, idx)=>{
413
+ if (item.itemKey === currentItem.itemKey) {
414
+ if (isCurrentlySelected) {
415
+ return acc;
416
+ } else {
417
+ acc.push(idx);
418
+ }
419
+ } else if (selectedItemKeys.has(item.itemKey)) {
420
+ acc.push(idx);
421
+ }
422
+ return acc;
423
+ }, [])
424
+ });
425
+ } else {
426
+ event.preventDefault();
427
+ updateSelections({
428
+ indexes: isCurrentlySelected ? [] : [
429
+ currentItemIndex
430
+ ]
431
+ });
432
+ }
433
+ break;
434
+ }
435
+ case 'Tab':
436
+ {
437
+ if (allowMultiSelection && isShiftPressed) {
438
+ const prevIndex = currentItemIndex - 1;
439
+ if (prevIndex < 0 && selectedItemKeys?.size > 0) {
440
+ setFocusedRowIndex(prevIndex);
441
+ }
442
+ } else {
443
+ const nextIndex = currentItemIndex + 1;
444
+ if (nextIndex === totalCount && selectedItemKeys.size > 0) {
445
+ setFocusedRowIndex(totalCount - 1);
446
+ }
447
+ }
448
+ break;
449
+ }
450
+ }
451
+ }, [
452
+ selectedItemKeys,
453
+ subfolders,
454
+ documents,
455
+ allowMultiSelection,
456
+ handleShiftSelection,
457
+ updateSelections,
458
+ navigateAfterSelection,
459
+ clearSelections,
460
+ totalCount
461
+ ]);
462
+ const onItemClick = React.useCallback(({ event, item: clickedItem })=>{
463
+ let doubleClicked = false;
464
+ const isCtrlPressed = event.ctrlKey || event.metaKey;
465
+ const isShiftPressed = event.shiftKey;
466
+ const isCurrentlySelected = selectedItemKeys.has(clickedItem.itemKey);
467
+ const allItems = [
468
+ ...subfolders,
469
+ ...documents
470
+ ];
471
+ const currentItemIndex = allItems.findIndex((item)=>item.itemKey === clickedItem.itemKey);
472
+ if (allowMultiSelection && isCtrlPressed) {
367
473
  event.preventDefault();
474
+ let overlayItemKey;
475
+ const indexes = allItems.reduce((acc, item, idx)=>{
476
+ if (item.itemKey === clickedItem.itemKey) {
477
+ if (isCurrentlySelected && event.type !== 'pointermove') {
478
+ return acc;
479
+ } else {
480
+ acc.push(idx);
481
+ overlayItemKey = item.itemKey;
482
+ }
483
+ } else if (selectedItemKeys.has(item.itemKey)) {
484
+ acc.push(idx);
485
+ }
486
+ return acc;
487
+ }, []);
368
488
  updateSelections({
369
- indexes: isCurrentlySelected ? [] : [currentItemIndex]
489
+ indexes
370
490
  });
371
- }
372
- break;
373
- }
374
- case 'Tab':
375
- {
376
- if (allowMultiSelection && isShiftPressed) {
377
- const prevIndex = currentItemIndex - 1;
378
- if (prevIndex < 0 && selectedItemKeys?.size > 0) {
379
- setFocusedRowIndex(prevIndex);
491
+ if (overlayItemKey) {
492
+ setDragOverlayItem(getItem(overlayItemKey));
493
+ }
494
+ } else if (allowMultiSelection && isShiftPressed) {
495
+ if (currentItemIndex !== -1) {
496
+ const selectedIndexes = handleShiftSelection(currentItemIndex);
497
+ updateSelections({
498
+ indexes: selectedIndexes
499
+ });
380
500
  }
381
- } else {
382
- const nextIndex = currentItemIndex + 1;
383
- if (nextIndex === totalCount && selectedItemKeys.size > 0) {
384
- setFocusedRowIndex(totalCount - 1);
501
+ } else if (allowMultiSelection && event.type === 'pointermove') {
502
+ // on drag start of an unselected item
503
+ if (!isCurrentlySelected) {
504
+ updateSelections({
505
+ indexes: allItems.reduce((acc, item, idx)=>{
506
+ if (item.itemKey === clickedItem.itemKey) {
507
+ acc.push(idx);
508
+ }
509
+ return acc;
510
+ }, [])
511
+ });
385
512
  }
386
- }
387
- break;
513
+ setDragOverlayItem(getItem(clickedItem.itemKey));
514
+ } else {
515
+ // Normal click - select single item
516
+ const now = Date.now();
517
+ doubleClicked = now - lastClickTime.current < 400 && dragOverlayItem?.itemKey === clickedItem.itemKey;
518
+ lastClickTime.current = now;
519
+ if (!doubleClicked) {
520
+ updateSelections({
521
+ indexes: isCurrentlySelected && selectedItemKeys.size === 1 ? [] : [
522
+ currentItemIndex
523
+ ]
524
+ });
525
+ }
526
+ setDragOverlayItem(getItem(clickedItem.itemKey));
388
527
  }
389
- }
390
- }, [selectedItemKeys, subfolders, documents, allowMultiSelection, handleShiftSelection, updateSelections, navigateAfterSelection, clearSelections, totalCount]);
391
- const onItemClick = React.useCallback(({
392
- event: event_0,
393
- item: clickedItem
394
- }) => {
395
- let doubleClicked = false;
396
- const isCtrlPressed_0 = event_0.ctrlKey || event_0.metaKey;
397
- const isShiftPressed_0 = event_0.shiftKey;
398
- const isCurrentlySelected_0 = selectedItemKeys.has(clickedItem.itemKey);
399
- const allItems_3 = [...subfolders, ...documents];
400
- const currentItemIndex_0 = allItems_3.findIndex(item_4 => item_4.itemKey === clickedItem.itemKey);
401
- if (allowMultiSelection && isCtrlPressed_0) {
402
- event_0.preventDefault();
403
- let overlayItemKey;
404
- const indexes_0 = allItems_3.reduce((acc_3, item_5, idx_1) => {
405
- if (item_5.itemKey === clickedItem.itemKey) {
406
- if (isCurrentlySelected_0 && event_0.type !== 'pointermove') {
407
- return acc_3;
408
- } else {
409
- acc_3.push(idx_1);
410
- overlayItemKey = item_5.itemKey;
411
- }
412
- } else if (selectedItemKeys.has(item_5.itemKey)) {
413
- acc_3.push(idx_1);
528
+ if (doubleClicked) {
529
+ navigateAfterSelection({
530
+ collectionSlug: clickedItem.relationTo,
531
+ docID: extractID(clickedItem.value)
532
+ });
414
533
  }
415
- return acc_3;
416
- }, []);
417
- updateSelections({
418
- indexes: indexes_0
419
- });
420
- if (overlayItemKey) {
421
- setDragOverlayItem(getItem(overlayItemKey));
422
- }
423
- } else if (allowMultiSelection && isShiftPressed_0) {
424
- if (currentItemIndex_0 !== -1) {
425
- const selectedIndexes_0 = handleShiftSelection(currentItemIndex_0);
426
- updateSelections({
427
- indexes: selectedIndexes_0
428
- });
429
- }
430
- } else if (allowMultiSelection && event_0.type === 'pointermove') {
431
- // on drag start of an unselected item
432
- if (!isCurrentlySelected_0) {
433
- updateSelections({
434
- indexes: allItems_3.reduce((acc_4, item_6, idx_2) => {
435
- if (item_6.itemKey === clickedItem.itemKey) {
436
- acc_4.push(idx_2);
534
+ }, [
535
+ selectedItemKeys,
536
+ subfolders,
537
+ documents,
538
+ allowMultiSelection,
539
+ dragOverlayItem,
540
+ getItem,
541
+ updateSelections,
542
+ navigateAfterSelection,
543
+ handleShiftSelection
544
+ ]);
545
+ /**
546
+ * Makes requests to the server to update the folder field on passed in documents
547
+ *
548
+ * Might rewrite this in the future to return the promises so errors can be handled contextually
549
+ */ const moveToFolder = React.useCallback(async (args)=>{
550
+ const { itemsToMove: items, toFolderID } = args;
551
+ if (!items.length) {
552
+ return;
553
+ }
554
+ const movingCurrentFolder = items.length === 1 && items[0].relationTo === folderCollectionSlug && items[0].value.id === folderID;
555
+ if (movingCurrentFolder) {
556
+ const queryParams = qs.stringify({
557
+ depth: 0,
558
+ locale: localeCode
559
+ }, {
560
+ addQueryPrefix: true
561
+ });
562
+ const req = await fetch(formatAdminURL({
563
+ apiRoute: routes.api,
564
+ path: `/${folderCollectionSlug}/${folderID}${queryParams}`
565
+ }), {
566
+ body: JSON.stringify({
567
+ [folderFieldName]: toFolderID || null
568
+ }),
569
+ credentials: 'include',
570
+ headers: {
571
+ 'content-type': 'application/json'
572
+ },
573
+ method: 'PATCH'
574
+ });
575
+ if (req.status !== 200) {
576
+ toast.error(t('general:error'));
437
577
  }
438
- return acc_4;
439
- }, [])
440
- });
441
- }
442
- setDragOverlayItem(getItem(clickedItem.itemKey));
443
- } else {
444
- // Normal click - select single item
445
- const now = Date.now();
446
- doubleClicked = now - lastClickTime.current < 400 && dragOverlayItem?.itemKey === clickedItem.itemKey;
447
- lastClickTime.current = now;
448
- if (!doubleClicked) {
449
- updateSelections({
450
- indexes: isCurrentlySelected_0 && selectedItemKeys.size === 1 ? [] : [currentItemIndex_0]
451
- });
452
- }
453
- setDragOverlayItem(getItem(clickedItem.itemKey));
454
- }
455
- if (doubleClicked) {
456
- navigateAfterSelection({
457
- collectionSlug: clickedItem.relationTo,
458
- docID: extractID(clickedItem.value)
459
- });
460
- }
461
- }, [selectedItemKeys, subfolders, documents, allowMultiSelection, dragOverlayItem, getItem, updateSelections, navigateAfterSelection, handleShiftSelection]);
462
- /**
463
- * Makes requests to the server to update the folder field on passed in documents
464
- *
465
- * Might rewrite this in the future to return the promises so errors can be handled contextually
466
- */
467
- const moveToFolder = React.useCallback(async args => {
468
- const {
469
- itemsToMove: items,
470
- toFolderID: toFolderID_0
471
- } = args;
472
- if (!items.length) {
473
- return;
474
- }
475
- const movingCurrentFolder = items.length === 1 && items[0].relationTo === folderCollectionSlug && items[0].value.id === folderID;
476
- if (movingCurrentFolder) {
477
- const queryParams_1 = qs.stringify({
478
- depth: 0,
479
- locale: localeCode
480
- }, {
481
- addQueryPrefix: true
482
- });
483
- const req = await fetch(formatAdminURL({
484
- apiRoute: routes.api,
485
- path: `/${folderCollectionSlug}/${folderID}${queryParams_1}`
486
- }), {
487
- body: JSON.stringify({
488
- [folderFieldName]: toFolderID_0 || null
489
- }),
490
- credentials: 'include',
491
- headers: {
492
- 'content-type': 'application/json'
493
- },
494
- method: 'PATCH'
495
- });
496
- if (req.status !== 200) {
497
- toast.error(t('general:error'));
498
- }
499
- } else {
500
- for (const [collectionSlug_1, ids] of Object.entries(groupItemIDsByRelation(items))) {
501
- const queryParams_2 = qs.stringify({
502
- depth: 0,
503
- limit: 0,
504
- locale: localeCode,
505
- where: {
506
- id: {
507
- in: ids
578
+ } else {
579
+ for (const [collectionSlug, ids] of Object.entries(groupItemIDsByRelation(items))){
580
+ const queryParams = qs.stringify({
581
+ depth: 0,
582
+ limit: 0,
583
+ locale: localeCode,
584
+ where: {
585
+ id: {
586
+ in: ids
587
+ }
588
+ }
589
+ }, {
590
+ addQueryPrefix: true
591
+ });
592
+ try {
593
+ await fetch(formatAdminURL({
594
+ apiRoute: routes.api,
595
+ path: `/${collectionSlug}${queryParams}`
596
+ }), {
597
+ body: JSON.stringify({
598
+ [folderFieldName]: toFolderID || null
599
+ }),
600
+ credentials: 'include',
601
+ headers: {
602
+ 'content-type': 'application/json'
603
+ },
604
+ method: 'PATCH'
605
+ });
606
+ } catch (error) {
607
+ toast.error(t('general:error'));
608
+ // eslint-disable-next-line no-console
609
+ console.error(error);
610
+ continue;
611
+ }
508
612
  }
509
- }
510
- }, {
511
- addQueryPrefix: true
512
- });
513
- try {
514
- await fetch(formatAdminURL({
515
- apiRoute: routes.api,
516
- path: `/${collectionSlug_1}${queryParams_2}`
517
- }), {
518
- body: JSON.stringify({
519
- [folderFieldName]: toFolderID_0 || null
520
- }),
521
- credentials: 'include',
522
- headers: {
523
- 'content-type': 'application/json'
524
- },
525
- method: 'PATCH'
526
- });
527
- } catch (error) {
528
- toast.error(t('general:error'));
529
- // eslint-disable-next-line no-console
530
- console.error(error);
531
- continue;
532
613
  }
533
- }
534
- }
535
- clearSelections();
536
- }, [folderID, clearSelections, folderCollectionSlug, folderFieldName, routes.api, t, localeCode]);
537
- const checkIfItemIsDisabled = React.useCallback(item_7 => {
538
- function folderAcceptsItem({
539
- item: item_8,
540
- selectedFolderCollections: selectedFolderCollections_0
541
- }) {
542
- if (!item_8.value.folderType || Array.isArray(item_8.value.folderType) && item_8.value.folderType.length === 0) {
543
- // Enable folder that accept all collections
544
- return false;
545
- }
546
- if (selectedFolderCollections_0.length === 0) {
547
- // If no collections are selected, enable folders that accept all collections
548
- return Boolean(item_8.value.folderType || item_8.value.folderType.length > 0);
549
- }
550
- // Disable folders that do not accept all of the selected collections
551
- return selectedFolderCollections_0.some(slug => {
552
- return !item_8.value.folderType.includes(slug);
553
- });
554
- }
555
- if (isDragging) {
556
- const isSelected = selectedItemKeys.has(item_7.itemKey);
557
- if (isSelected) {
558
- return true;
559
- } else if (item_7.relationTo === folderCollectionSlug) {
560
- return folderAcceptsItem({
561
- item: item_7,
562
- selectedFolderCollections
563
- });
564
- } else {
565
- // Non folder items are disabled on drag
566
- return true;
567
- }
568
- } else if (parentFolderContext?.selectedItemKeys?.size) {
569
- // Disable selected items from being navigated to in move to drawer
570
- if (parentFolderContext.selectedItemKeys.has(item_7.itemKey)) {
571
- return true;
572
- }
573
- // Moving items to folder
574
- if (item_7.relationTo === folderCollectionSlug) {
575
- return folderAcceptsItem({
576
- item: item_7,
577
- selectedFolderCollections: parentFolderContext.selectedFolderCollections
578
- });
579
- }
580
- // If the item is not a folder, it is disabled on move
581
- return true;
582
- }
583
- }, [selectedFolderCollections, isDragging, selectedItemKeys, folderCollectionSlug, parentFolderContext?.selectedFolderCollections, parentFolderContext?.selectedItemKeys]);
584
- // If a new component is provided, update the state so children can re-render with the new component
585
- React.useEffect(() => {
586
- if (InitialFolderResultsComponent) {
587
- setFolderResultsComponent(InitialFolderResultsComponent);
588
- }
589
- }, [InitialFolderResultsComponent]);
590
- return /*#__PURE__*/_jsx(Context, {
591
- value: {
592
- activeCollectionFolderSlugs: activeCollectionSlugs || allCollectionFolderSlugs,
593
- allCollectionFolderSlugs,
594
- allowCreateCollectionSlugs,
595
- breadcrumbs,
596
- checkIfItemIsDisabled,
597
- clearSelections,
598
- currentFolder: breadcrumbs?.[breadcrumbs.length - 1]?.id !== undefined ? formatFolderOrDocumentItem({
614
+ clearSelections();
615
+ }, [
616
+ folderID,
617
+ clearSelections,
618
+ folderCollectionSlug,
599
619
  folderFieldName,
600
- isUpload: false,
601
- relationTo: folderCollectionSlug,
602
- useAsTitle: folderCollectionConfig.admin.useAsTitle,
603
- value: breadcrumbs[breadcrumbs.length - 1]
604
- }) : null,
605
- documents,
606
- dragOverlayItem,
607
- focusedRowIndex,
608
- folderCollectionConfig,
609
- folderCollectionSlug,
610
- folderFieldName,
611
- folderID,
612
- FolderResultsComponent,
613
- folderType: breadcrumbs?.[breadcrumbs.length - 1]?.folderType,
614
- getFolderRoute,
615
- getSelectedItems,
616
- isDragging,
617
- itemKeysToMove: parentFolderContext.selectedItemKeys,
618
- moveToFolder,
619
- onItemClick,
620
- onItemKeyPress,
621
- refineFolderData,
622
- search,
623
- selectedFolderCollections,
624
- selectedItemKeys,
625
- setBreadcrumbs,
626
- setFocusedRowIndex,
627
- setIsDragging,
628
- sort,
629
- subfolders
630
- },
631
- children: children
632
- });
620
+ routes.api,
621
+ t,
622
+ localeCode
623
+ ]);
624
+ const checkIfItemIsDisabled = React.useCallback((item)=>{
625
+ function folderAcceptsItem({ item, selectedFolderCollections }) {
626
+ if (!item.value.folderType || Array.isArray(item.value.folderType) && item.value.folderType.length === 0) {
627
+ // Enable folder that accept all collections
628
+ return false;
629
+ }
630
+ if (selectedFolderCollections.length === 0) {
631
+ // If no collections are selected, enable folders that accept all collections
632
+ return Boolean(item.value.folderType || item.value.folderType.length > 0);
633
+ }
634
+ // Disable folders that do not accept all of the selected collections
635
+ return selectedFolderCollections.some((slug)=>{
636
+ return !item.value.folderType.includes(slug);
637
+ });
638
+ }
639
+ if (isDragging) {
640
+ const isSelected = selectedItemKeys.has(item.itemKey);
641
+ if (isSelected) {
642
+ return true;
643
+ } else if (item.relationTo === folderCollectionSlug) {
644
+ return folderAcceptsItem({
645
+ item,
646
+ selectedFolderCollections
647
+ });
648
+ } else {
649
+ // Non folder items are disabled on drag
650
+ return true;
651
+ }
652
+ } else if (parentFolderContext?.selectedItemKeys?.size) {
653
+ // Disable selected items from being navigated to in move to drawer
654
+ if (parentFolderContext.selectedItemKeys.has(item.itemKey)) {
655
+ return true;
656
+ }
657
+ // Moving items to folder
658
+ if (item.relationTo === folderCollectionSlug) {
659
+ return folderAcceptsItem({
660
+ item,
661
+ selectedFolderCollections: parentFolderContext.selectedFolderCollections
662
+ });
663
+ }
664
+ // If the item is not a folder, it is disabled on move
665
+ return true;
666
+ }
667
+ }, [
668
+ selectedFolderCollections,
669
+ isDragging,
670
+ selectedItemKeys,
671
+ folderCollectionSlug,
672
+ parentFolderContext?.selectedFolderCollections,
673
+ parentFolderContext?.selectedItemKeys
674
+ ]);
675
+ // If a new component is provided, update the state so children can re-render with the new component
676
+ React.useEffect(()=>{
677
+ if (InitialFolderResultsComponent) {
678
+ setFolderResultsComponent(InitialFolderResultsComponent);
679
+ }
680
+ }, [
681
+ InitialFolderResultsComponent
682
+ ]);
683
+ return /*#__PURE__*/ _jsxDEV(Context, {
684
+ value: {
685
+ activeCollectionFolderSlugs: activeCollectionSlugs || allCollectionFolderSlugs,
686
+ allCollectionFolderSlugs,
687
+ allowCreateCollectionSlugs,
688
+ breadcrumbs,
689
+ checkIfItemIsDisabled,
690
+ clearSelections,
691
+ currentFolder: breadcrumbs?.[breadcrumbs.length - 1]?.id !== undefined ? formatFolderOrDocumentItem({
692
+ folderFieldName,
693
+ isUpload: false,
694
+ relationTo: folderCollectionSlug,
695
+ useAsTitle: folderCollectionConfig.admin.useAsTitle,
696
+ value: breadcrumbs[breadcrumbs.length - 1]
697
+ }) : null,
698
+ documents,
699
+ dragOverlayItem,
700
+ focusedRowIndex,
701
+ folderCollectionConfig,
702
+ folderCollectionSlug,
703
+ folderFieldName,
704
+ folderID,
705
+ FolderResultsComponent,
706
+ folderType: breadcrumbs?.[breadcrumbs.length - 1]?.folderType,
707
+ getFolderRoute,
708
+ getSelectedItems,
709
+ isDragging,
710
+ itemKeysToMove: parentFolderContext.selectedItemKeys,
711
+ moveToFolder,
712
+ onItemClick,
713
+ onItemKeyPress,
714
+ refineFolderData,
715
+ search,
716
+ selectedFolderCollections,
717
+ selectedItemKeys,
718
+ setBreadcrumbs,
719
+ setFocusedRowIndex,
720
+ setIsDragging,
721
+ sort,
722
+ subfolders
723
+ },
724
+ children: children
725
+ }, void 0, false, {
726
+ fileName: "src/providers/Folders/index.tsx",
727
+ lineNumber: 830,
728
+ columnNumber: 5
729
+ }, this);
633
730
  }
634
731
  export function useFolder() {
635
- const context = React.use(Context);
636
- if (context === undefined) {
637
- throw new Error('useFolder must be used within a FolderProvider');
638
- }
639
- return context;
732
+ const context = React.use(Context);
733
+ if (context === undefined) {
734
+ throw new Error('useFolder must be used within a FolderProvider');
735
+ }
736
+ return context;
640
737
  }
738
+
641
739
  //# sourceMappingURL=index.js.map