@payloadcms/ui 3.68.0-internal-debug.591ab42 → 3.68.0-internal.2b8df4a

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 (1187) hide show
  1. package/dist/@types/assets.d.js.map +1 -1
  2. package/dist/assets/index.js +0 -1
  3. package/dist/assets/index.js.map +1 -1
  4. package/dist/elements/AddNewRelation/index.js +274 -219
  5. package/dist/elements/AddNewRelation/index.js.map +1 -1
  6. package/dist/elements/AddNewRelation/types.js +1 -2
  7. package/dist/elements/AddNewRelation/types.js.map +1 -1
  8. package/dist/elements/AnimateHeight/index.js +73 -84
  9. package/dist/elements/AnimateHeight/index.js.map +1 -1
  10. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js +68 -71
  11. package/dist/elements/AnimateHeight/usePatchAnimateHeight.js.map +1 -1
  12. package/dist/elements/AppHeader/index.js +100 -171
  13. package/dist/elements/AppHeader/index.js.map +1 -1
  14. package/dist/elements/ArrayAction/index.js +118 -186
  15. package/dist/elements/ArrayAction/index.js.map +1 -1
  16. package/dist/elements/Autosave/index.js +169 -149
  17. package/dist/elements/Autosave/index.js.map +1 -1
  18. package/dist/elements/Banner/index.js +32 -52
  19. package/dist/elements/Banner/index.js.map +1 -1
  20. package/dist/elements/BulkUpload/ActionsBar/index.js +173 -169
  21. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  22. package/dist/elements/BulkUpload/AddFilesView/index.js +51 -84
  23. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/AddingFilesView/index.js +94 -85
  25. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  26. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +56 -30
  27. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  28. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +27 -19
  29. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  30. package/dist/elements/BulkUpload/EditForm/index.js +169 -179
  31. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  32. package/dist/elements/BulkUpload/EditForm/types.js +1 -2
  33. package/dist/elements/BulkUpload/EditForm/types.js.map +1 -1
  34. package/dist/elements/BulkUpload/EditMany/DrawerContent.js +172 -221
  35. package/dist/elements/BulkUpload/EditMany/DrawerContent.js.map +1 -1
  36. package/dist/elements/BulkUpload/EditMany/index.js +57 -56
  37. package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
  38. package/dist/elements/BulkUpload/FileSidebar/index.js +316 -395
  39. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  40. package/dist/elements/BulkUpload/FormsManager/createFormData.js +32 -33
  41. package/dist/elements/BulkUpload/FormsManager/createFormData.js.map +1 -1
  42. package/dist/elements/BulkUpload/FormsManager/index.js +471 -501
  43. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  44. package/dist/elements/BulkUpload/FormsManager/reducer.js +90 -100
  45. package/dist/elements/BulkUpload/FormsManager/reducer.js.map +1 -1
  46. package/dist/elements/BulkUpload/Header/index.js +15 -27
  47. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  48. package/dist/elements/BulkUpload/index.js +271 -204
  49. package/dist/elements/BulkUpload/index.js.map +1 -1
  50. package/dist/elements/Button/index.js +160 -227
  51. package/dist/elements/Button/index.js.map +1 -1
  52. package/dist/elements/Button/types.js +1 -14
  53. package/dist/elements/Button/types.js.map +1 -1
  54. package/dist/elements/Card/index.js +33 -53
  55. package/dist/elements/Card/index.js.map +1 -1
  56. package/dist/elements/CheckboxPopup/index.js +36 -43
  57. package/dist/elements/CheckboxPopup/index.js.map +1 -1
  58. package/dist/elements/ClipboardAction/ClipboardActionLabel.js +35 -29
  59. package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
  60. package/dist/elements/ClipboardAction/clipboardUtilities.js +43 -33
  61. package/dist/elements/ClipboardAction/clipboardUtilities.js.map +1 -1
  62. package/dist/elements/ClipboardAction/index.js +83 -110
  63. package/dist/elements/ClipboardAction/index.js.map +1 -1
  64. package/dist/elements/ClipboardAction/isClipboardDataValid.js +71 -64
  65. package/dist/elements/ClipboardAction/isClipboardDataValid.js.map +1 -1
  66. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js +93 -75
  67. package/dist/elements/ClipboardAction/mergeFormStateFromClipboard.js.map +1 -1
  68. package/dist/elements/ClipboardAction/types.js +1 -2
  69. package/dist/elements/ClipboardAction/types.js.map +1 -1
  70. package/dist/elements/CloseModalButton/index.js +20 -25
  71. package/dist/elements/CloseModalButton/index.js.map +1 -1
  72. package/dist/elements/CloseModalOnRouteChange/index.js +43 -17
  73. package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
  74. package/dist/elements/CodeEditor/CodeEditor.js +97 -82
  75. package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
  76. package/dist/elements/CodeEditor/constants.js +14 -15
  77. package/dist/elements/CodeEditor/constants.js.map +1 -1
  78. package/dist/elements/CodeEditor/index.js +10 -22
  79. package/dist/elements/CodeEditor/index.js.map +1 -1
  80. package/dist/elements/CodeEditor/types.js +1 -4
  81. package/dist/elements/CodeEditor/types.js.map +1 -1
  82. package/dist/elements/Collapsible/index.js +141 -151
  83. package/dist/elements/Collapsible/index.js.map +1 -1
  84. package/dist/elements/Collapsible/provider.js +30 -32
  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 +84 -114
  89. package/dist/elements/Combobox/index.js.map +1 -1
  90. package/dist/elements/ConfirmationModal/index.js +129 -116
  91. package/dist/elements/ConfirmationModal/index.js.map +1 -1
  92. package/dist/elements/CopyLocaleData/index.js +275 -215
  93. package/dist/elements/CopyLocaleData/index.js.map +1 -1
  94. package/dist/elements/CopyToClipboard/index.js +70 -47
  95. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  96. package/dist/elements/DatePicker/DatePicker.js +136 -130
  97. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  98. package/dist/elements/DatePicker/getFormattedLocale.js +10 -11
  99. package/dist/elements/DatePicker/getFormattedLocale.js.map +1 -1
  100. package/dist/elements/DatePicker/index.js +11 -23
  101. package/dist/elements/DatePicker/index.js.map +1 -1
  102. package/dist/elements/DatePicker/types.js +1 -2
  103. package/dist/elements/DatePicker/types.js.map +1 -1
  104. package/dist/elements/DefaultListViewTabs/index.js +132 -98
  105. package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
  106. package/dist/elements/DeleteDocument/index.js +138 -167
  107. package/dist/elements/DeleteDocument/index.js.map +1 -1
  108. package/dist/elements/DeleteMany/index.js +329 -368
  109. package/dist/elements/DeleteMany/index.js.map +1 -1
  110. package/dist/elements/DocumentControls/index.js +274 -494
  111. package/dist/elements/DocumentControls/index.js.map +1 -1
  112. package/dist/elements/DocumentDrawer/DrawerContent.js +122 -141
  113. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  114. package/dist/elements/DocumentDrawer/DrawerHeader/index.js +103 -96
  115. package/dist/elements/DocumentDrawer/DrawerHeader/index.js.map +1 -1
  116. package/dist/elements/DocumentDrawer/Provider.js +18 -24
  117. package/dist/elements/DocumentDrawer/Provider.js.map +1 -1
  118. package/dist/elements/DocumentDrawer/index.js +210 -134
  119. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  120. package/dist/elements/DocumentDrawer/types.js +1 -12
  121. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  122. package/dist/elements/DocumentFields/index.js +69 -106
  123. package/dist/elements/DocumentFields/index.js.map +1 -1
  124. package/dist/elements/DocumentLocked/index.js +179 -154
  125. package/dist/elements/DocumentLocked/index.js.map +1 -1
  126. package/dist/elements/DocumentTakeOver/index.js +113 -97
  127. package/dist/elements/DocumentTakeOver/index.js.map +1 -1
  128. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +60 -26
  129. package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
  130. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js +1 -2
  131. package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
  132. package/dist/elements/DraggableSortable/index.js +124 -72
  133. package/dist/elements/DraggableSortable/index.js.map +1 -1
  134. package/dist/elements/DraggableSortable/types.js +1 -2
  135. package/dist/elements/DraggableSortable/types.js.map +1 -1
  136. package/dist/elements/DraggableSortable/useDraggableSortable/index.js +85 -25
  137. package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
  138. package/dist/elements/DraggableSortable/useDraggableSortable/types.js +1 -2
  139. package/dist/elements/DraggableSortable/useDraggableSortable/types.js.map +1 -1
  140. package/dist/elements/Drawer/index.js +192 -166
  141. package/dist/elements/Drawer/index.js.map +1 -1
  142. package/dist/elements/Drawer/types.js +1 -2
  143. package/dist/elements/Drawer/types.js.map +1 -1
  144. package/dist/elements/Drawer/useDrawerSlug.js +19 -7
  145. package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
  146. package/dist/elements/DrawerActionHeader/index.js +61 -59
  147. package/dist/elements/DrawerActionHeader/index.js.map +1 -1
  148. package/dist/elements/DrawerContentContainer/index.js +9 -14
  149. package/dist/elements/DrawerContentContainer/index.js.map +1 -1
  150. package/dist/elements/Dropzone/index.js +75 -90
  151. package/dist/elements/Dropzone/index.js.map +1 -1
  152. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +87 -145
  153. package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
  154. package/dist/elements/DuplicateDocument/index.js +142 -152
  155. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  156. package/dist/elements/EditMany/DrawerContent.js +384 -389
  157. package/dist/elements/EditMany/DrawerContent.js.map +1 -1
  158. package/dist/elements/EditMany/index.js +131 -79
  159. package/dist/elements/EditMany/index.js.map +1 -1
  160. package/dist/elements/EditUpload/index.js +401 -578
  161. package/dist/elements/EditUpload/index.js.map +1 -1
  162. package/dist/elements/EmailAndUsername/index.js +77 -96
  163. package/dist/elements/EmailAndUsername/index.js.map +1 -1
  164. package/dist/elements/ErrorPill/index.js +24 -38
  165. package/dist/elements/ErrorPill/index.js.map +1 -1
  166. package/dist/elements/FieldDiffContainer/index.js +34 -50
  167. package/dist/elements/FieldDiffContainer/index.js.map +1 -1
  168. package/dist/elements/FieldDiffLabel/index.js +7 -10
  169. package/dist/elements/FieldDiffLabel/index.js.map +1 -1
  170. package/dist/elements/FieldSelect/index.js +75 -45
  171. package/dist/elements/FieldSelect/index.js.map +1 -1
  172. package/dist/elements/FieldSelect/reduceFieldOptions.js +67 -69
  173. package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
  174. package/dist/elements/FileDetails/DraggableFileDetails/index.js +105 -113
  175. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  176. package/dist/elements/FileDetails/FileMeta/index.js +33 -72
  177. package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
  178. package/dist/elements/FileDetails/StaticFileDetails/index.js +58 -76
  179. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  180. package/dist/elements/FileDetails/index.js +14 -20
  181. package/dist/elements/FileDetails/index.js.map +1 -1
  182. package/dist/elements/FolderView/Breadcrumbs/index.js +86 -59
  183. package/dist/elements/FolderView/Breadcrumbs/index.js.map +1 -1
  184. package/dist/elements/FolderView/BrowseByFolderButton/index.js +30 -30
  185. package/dist/elements/FolderView/BrowseByFolderButton/index.js.map +1 -1
  186. package/dist/elements/FolderView/Cell/index.client.js +81 -82
  187. package/dist/elements/FolderView/Cell/index.client.js.map +1 -1
  188. package/dist/elements/FolderView/Cell/index.server.js +14 -19
  189. package/dist/elements/FolderView/Cell/index.server.js.map +1 -1
  190. package/dist/elements/FolderView/ColoredFolderIcon/index.js +4 -9
  191. package/dist/elements/FolderView/ColoredFolderIcon/index.js.map +1 -1
  192. package/dist/elements/FolderView/CurrentFolderActions/index.js +136 -172
  193. package/dist/elements/FolderView/CurrentFolderActions/index.js.map +1 -1
  194. package/dist/elements/FolderView/DragOverlaySelection/index.js +51 -70
  195. package/dist/elements/FolderView/DragOverlaySelection/index.js.map +1 -1
  196. package/dist/elements/FolderView/DraggableTableRow/index.js +54 -71
  197. package/dist/elements/FolderView/DraggableTableRow/index.js.map +1 -1
  198. package/dist/elements/FolderView/DraggableWithClick/index.js +79 -75
  199. package/dist/elements/FolderView/DraggableWithClick/index.js.map +1 -1
  200. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js +33 -35
  201. package/dist/elements/FolderView/Drawers/EditFolderAction/index.js.map +1 -1
  202. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js +565 -497
  203. package/dist/elements/FolderView/Drawers/MoveToFolder/index.js.map +1 -1
  204. package/dist/elements/FolderView/FilterFolderTypePill/index.js +89 -61
  205. package/dist/elements/FolderView/FilterFolderTypePill/index.js.map +1 -1
  206. package/dist/elements/FolderView/FolderField/index.server.js +10 -15
  207. package/dist/elements/FolderView/FolderField/index.server.js.map +1 -1
  208. package/dist/elements/FolderView/FolderFileCard/index.js +188 -218
  209. package/dist/elements/FolderView/FolderFileCard/index.js.map +1 -1
  210. package/dist/elements/FolderView/FolderFileTable/index.js +264 -203
  211. package/dist/elements/FolderView/FolderFileTable/index.js.map +1 -1
  212. package/dist/elements/FolderView/FolderTypeField/index.js +114 -93
  213. package/dist/elements/FolderView/FolderTypeField/index.js.map +1 -1
  214. package/dist/elements/FolderView/ItemCardGrid/index.js +27 -35
  215. package/dist/elements/FolderView/ItemCardGrid/index.js.map +1 -1
  216. package/dist/elements/FolderView/MoveDocToFolder/index.js +261 -139
  217. package/dist/elements/FolderView/MoveDocToFolder/index.js.map +1 -1
  218. package/dist/elements/FolderView/SimpleTable/index.js +83 -105
  219. package/dist/elements/FolderView/SimpleTable/index.js.map +1 -1
  220. package/dist/elements/FolderView/SortByPill/index.js +100 -162
  221. package/dist/elements/FolderView/SortByPill/index.js.map +1 -1
  222. package/dist/elements/FolderView/ToggleViewButtons/index.js +24 -47
  223. package/dist/elements/FolderView/ToggleViewButtons/index.js.map +1 -1
  224. package/dist/elements/FullscreenModal/index.js +22 -16
  225. package/dist/elements/FullscreenModal/index.js.map +1 -1
  226. package/dist/elements/GenerateConfirmation/index.js +83 -63
  227. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  228. package/dist/elements/GroupByBuilder/index.js +100 -142
  229. package/dist/elements/GroupByBuilder/index.js.map +1 -1
  230. package/dist/elements/Gutter/index.js +19 -22
  231. package/dist/elements/Gutter/index.js.map +1 -1
  232. package/dist/elements/HTMLDiff/diff/index.js +500 -522
  233. package/dist/elements/HTMLDiff/diff/index.js.map +1 -1
  234. package/dist/elements/HTMLDiff/index.js +26 -31
  235. package/dist/elements/HTMLDiff/index.js.map +1 -1
  236. package/dist/elements/Hamburger/index.js +40 -51
  237. package/dist/elements/Hamburger/index.js.map +1 -1
  238. package/dist/elements/HydrateAuthProvider/index.js +27 -15
  239. package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
  240. package/dist/elements/IDLabel/index.js +57 -31
  241. package/dist/elements/IDLabel/index.js.map +1 -1
  242. package/dist/elements/LeaveWithoutSaving/index.js +142 -73
  243. package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
  244. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +129 -113
  245. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
  246. package/dist/elements/Link/formatUrl.js +56 -53
  247. package/dist/elements/Link/formatUrl.js.map +1 -1
  248. package/dist/elements/Link/index.js +52 -48
  249. package/dist/elements/Link/index.js.map +1 -1
  250. package/dist/elements/ListControls/getTextFieldsToBeSearched.js +17 -17
  251. package/dist/elements/ListControls/getTextFieldsToBeSearched.js.map +1 -1
  252. package/dist/elements/ListControls/index.js +166 -247
  253. package/dist/elements/ListControls/index.js.map +1 -1
  254. package/dist/elements/ListControls/types.js +1 -8
  255. package/dist/elements/ListControls/types.js.map +1 -1
  256. package/dist/elements/ListDrawer/DrawerContent.js +168 -183
  257. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  258. package/dist/elements/ListDrawer/Provider.js +19 -28
  259. package/dist/elements/ListDrawer/Provider.js.map +1 -1
  260. package/dist/elements/ListDrawer/index.js +229 -149
  261. package/dist/elements/ListDrawer/index.js.map +1 -1
  262. package/dist/elements/ListDrawer/types.js +1 -6
  263. package/dist/elements/ListDrawer/types.js.map +1 -1
  264. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js +84 -43
  265. package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
  266. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js +33 -23
  267. package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
  268. package/dist/elements/ListHeader/DrawerTitleActions/index.js +0 -1
  269. package/dist/elements/ListHeader/DrawerTitleActions/index.js.map +1 -1
  270. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js +73 -49
  271. package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
  272. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +40 -22
  273. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
  274. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js +162 -130
  275. package/dist/elements/ListHeader/TitleActions/ListCreateNewDocInFolderButton.js.map +1 -1
  276. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +142 -163
  277. package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
  278. package/dist/elements/ListHeader/TitleActions/index.js +0 -1
  279. package/dist/elements/ListHeader/TitleActions/index.js.map +1 -1
  280. package/dist/elements/ListHeader/index.js +24 -65
  281. package/dist/elements/ListHeader/index.js.map +1 -1
  282. package/dist/elements/ListSelection/index.js +58 -93
  283. package/dist/elements/ListSelection/index.js.map +1 -1
  284. package/dist/elements/LivePreview/Device/index.js +83 -83
  285. package/dist/elements/LivePreview/Device/index.js.map +1 -1
  286. package/dist/elements/LivePreview/DeviceContainer/index.js +49 -29
  287. package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
  288. package/dist/elements/LivePreview/IFrame/index.js +44 -20
  289. package/dist/elements/LivePreview/IFrame/index.js.map +1 -1
  290. package/dist/elements/LivePreview/Toggler/index.js +26 -32
  291. package/dist/elements/LivePreview/Toggler/index.js.map +1 -1
  292. package/dist/elements/LivePreview/Toolbar/Controls/index.js +141 -210
  293. package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
  294. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js +92 -62
  295. package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
  296. package/dist/elements/LivePreview/Toolbar/index.js +84 -84
  297. package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
  298. package/dist/elements/LivePreview/ToolbarArea/index.js +33 -15
  299. package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
  300. package/dist/elements/LivePreview/Window/index.js +166 -132
  301. package/dist/elements/LivePreview/Window/index.js.map +1 -1
  302. package/dist/elements/Loading/index.js +144 -112
  303. package/dist/elements/Loading/index.js.map +1 -1
  304. package/dist/elements/LoadingOverlay/index.js +67 -68
  305. package/dist/elements/LoadingOverlay/index.js.map +1 -1
  306. package/dist/elements/LoadingOverlay/reducer.js +29 -27
  307. package/dist/elements/LoadingOverlay/reducer.js.map +1 -1
  308. package/dist/elements/LoadingOverlay/types.js +1 -2
  309. package/dist/elements/LoadingOverlay/types.js.map +1 -1
  310. package/dist/elements/Localizer/LocalizerLabel/index.js +51 -55
  311. package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
  312. package/dist/elements/Localizer/index.js +117 -99
  313. package/dist/elements/Localizer/index.js.map +1 -1
  314. package/dist/elements/Locked/index.js +59 -38
  315. package/dist/elements/Locked/index.js.map +1 -1
  316. package/dist/elements/Logout/index.js +51 -30
  317. package/dist/elements/Logout/index.js.map +1 -1
  318. package/dist/elements/Modal/index.js +1 -1
  319. package/dist/elements/Modal/index.js.map +1 -1
  320. package/dist/elements/Nav/NavToggler/index.js +80 -34
  321. package/dist/elements/Nav/NavToggler/index.js.map +1 -1
  322. package/dist/elements/Nav/context.js +103 -107
  323. package/dist/elements/Nav/context.js.map +1 -1
  324. package/dist/elements/NavGroup/index.js +122 -98
  325. package/dist/elements/NavGroup/index.js.map +1 -1
  326. package/dist/elements/NoListResults/index.js +14 -27
  327. package/dist/elements/NoListResults/index.js.map +1 -1
  328. package/dist/elements/PageControls/GroupByPageControls.js +71 -40
  329. package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
  330. package/dist/elements/PageControls/index.js +107 -77
  331. package/dist/elements/PageControls/index.js.map +1 -1
  332. package/dist/elements/Pagination/ClickableArrow/index.js +16 -24
  333. package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
  334. package/dist/elements/Pagination/Page/index.js +16 -19
  335. package/dist/elements/Pagination/Page/index.js.map +1 -1
  336. package/dist/elements/Pagination/Separator/index.js +6 -10
  337. package/dist/elements/Pagination/Separator/index.js.map +1 -1
  338. package/dist/elements/Pagination/index.js +99 -102
  339. package/dist/elements/Pagination/index.js.map +1 -1
  340. package/dist/elements/PerPage/index.js +80 -93
  341. package/dist/elements/PerPage/index.js.map +1 -1
  342. package/dist/elements/PermanentlyDeleteButton/index.js +125 -142
  343. package/dist/elements/PermanentlyDeleteButton/index.js.map +1 -1
  344. package/dist/elements/Pill/index.js +121 -103
  345. package/dist/elements/Pill/index.js.map +1 -1
  346. package/dist/elements/PillSelector/index.js +56 -79
  347. package/dist/elements/PillSelector/index.js.map +1 -1
  348. package/dist/elements/Popup/PopupButtonList/index.js +52 -65
  349. package/dist/elements/Popup/PopupButtonList/index.js.map +1 -1
  350. package/dist/elements/Popup/PopupDivider/index.js +5 -10
  351. package/dist/elements/Popup/PopupDivider/index.js.map +1 -1
  352. package/dist/elements/Popup/PopupGroupLabel/index.js +8 -11
  353. package/dist/elements/Popup/PopupGroupLabel/index.js.map +1 -1
  354. package/dist/elements/Popup/PopupTrigger/index.js +108 -51
  355. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  356. package/dist/elements/Popup/PopupTrigger/types.js.map +1 -1
  357. package/dist/elements/Popup/index.js +169 -212
  358. package/dist/elements/Popup/index.js.map +1 -1
  359. package/dist/elements/PreviewButton/index.js +31 -24
  360. package/dist/elements/PreviewButton/index.js.map +1 -1
  361. package/dist/elements/PreviewSizes/index.js +128 -203
  362. package/dist/elements/PreviewSizes/index.js.map +1 -1
  363. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js +110 -154
  364. package/dist/elements/PublishButton/ScheduleDrawer/buildUpcomingColumns.js.map +1 -1
  365. package/dist/elements/PublishButton/ScheduleDrawer/index.js +306 -458
  366. package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
  367. package/dist/elements/PublishButton/ScheduleDrawer/types.js +1 -2
  368. package/dist/elements/PublishButton/ScheduleDrawer/types.js.map +1 -1
  369. package/dist/elements/PublishButton/index.js +184 -224
  370. package/dist/elements/PublishButton/index.js.map +1 -1
  371. package/dist/elements/PublishMany/DrawerContent.js +131 -134
  372. package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
  373. package/dist/elements/PublishMany/index.js +109 -58
  374. package/dist/elements/PublishMany/index.js.map +1 -1
  375. package/dist/elements/QueryPresets/QueryPresetBar/index.js +261 -339
  376. package/dist/elements/QueryPresets/QueryPresetBar/index.js.map +1 -1
  377. package/dist/elements/QueryPresets/QueryPresetToggler/index.js +87 -80
  378. package/dist/elements/QueryPresets/QueryPresetToggler/index.js.map +1 -1
  379. package/dist/elements/QueryPresets/cells/AccessCell/index.js +21 -47
  380. package/dist/elements/QueryPresets/cells/AccessCell/index.js.map +1 -1
  381. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js +19 -26
  382. package/dist/elements/QueryPresets/cells/ColumnsCell/index.js.map +1 -1
  383. package/dist/elements/QueryPresets/cells/GroupByCell/index.js +48 -61
  384. package/dist/elements/QueryPresets/cells/GroupByCell/index.js.map +1 -1
  385. package/dist/elements/QueryPresets/cells/WhereCell/index.js +27 -29
  386. package/dist/elements/QueryPresets/cells/WhereCell/index.js.map +1 -1
  387. package/dist/elements/QueryPresets/fields/ColumnsField/index.js +47 -42
  388. package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
  389. package/dist/elements/QueryPresets/fields/GroupByField/index.js +74 -96
  390. package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
  391. package/dist/elements/QueryPresets/fields/WhereField/index.js +98 -149
  392. package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
  393. package/dist/elements/ReactSelect/ClearIndicator/index.js +27 -29
  394. package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
  395. package/dist/elements/ReactSelect/Control/index.js +41 -40
  396. package/dist/elements/ReactSelect/Control/index.js.map +1 -1
  397. package/dist/elements/ReactSelect/DropdownIndicator/index.js +23 -26
  398. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  399. package/dist/elements/ReactSelect/Input/index.js +13 -20
  400. package/dist/elements/ReactSelect/Input/index.js.map +1 -1
  401. package/dist/elements/ReactSelect/MultiValue/index.js +126 -48
  402. package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
  403. package/dist/elements/ReactSelect/MultiValueLabel/index.js +32 -29
  404. package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
  405. package/dist/elements/ReactSelect/MultiValueRemove/index.js +86 -49
  406. package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
  407. package/dist/elements/ReactSelect/SingleValue/index.js +14 -22
  408. package/dist/elements/ReactSelect/SingleValue/index.js.map +1 -1
  409. package/dist/elements/ReactSelect/ValueContainer/index.js +29 -38
  410. package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
  411. package/dist/elements/ReactSelect/index.js +198 -211
  412. package/dist/elements/ReactSelect/index.js.map +1 -1
  413. package/dist/elements/ReactSelect/types.js +1 -9
  414. package/dist/elements/ReactSelect/types.js.map +1 -1
  415. package/dist/elements/RelationshipTable/AddNewButton.js +58 -68
  416. package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
  417. package/dist/elements/RelationshipTable/Pagination.js +48 -21
  418. package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
  419. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +34 -39
  420. package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
  421. package/dist/elements/RelationshipTable/index.js +258 -374
  422. package/dist/elements/RelationshipTable/index.js.map +1 -1
  423. package/dist/elements/RenderComponent/index.js +20 -29
  424. package/dist/elements/RenderComponent/index.js.map +1 -1
  425. package/dist/elements/RenderCustomComponent/index.js +5 -3
  426. package/dist/elements/RenderCustomComponent/index.js.map +1 -1
  427. package/dist/elements/RenderIfInViewport/index.js +58 -27
  428. package/dist/elements/RenderIfInViewport/index.js.map +1 -1
  429. package/dist/elements/RenderServerComponent/index.js +56 -57
  430. package/dist/elements/RenderServerComponent/index.js.map +1 -1
  431. package/dist/elements/RenderTitle/index.js +59 -44
  432. package/dist/elements/RenderTitle/index.js.map +1 -1
  433. package/dist/elements/RestoreButton/index.js +146 -179
  434. package/dist/elements/RestoreButton/index.js.map +1 -1
  435. package/dist/elements/RestoreMany/index.js +167 -174
  436. package/dist/elements/RestoreMany/index.js.map +1 -1
  437. package/dist/elements/SaveButton/index.js +49 -46
  438. package/dist/elements/SaveButton/index.js.map +1 -1
  439. package/dist/elements/SaveDraftButton/index.js +83 -79
  440. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  441. package/dist/elements/SearchBar/index.js +19 -37
  442. package/dist/elements/SearchBar/index.js.map +1 -1
  443. package/dist/elements/SearchFilter/index.js +54 -60
  444. package/dist/elements/SearchFilter/index.js.map +1 -1
  445. package/dist/elements/SearchFilter/types.js +1 -20
  446. package/dist/elements/SearchFilter/types.js.map +1 -1
  447. package/dist/elements/SelectAll/index.js +46 -21
  448. package/dist/elements/SelectAll/index.js.map +1 -1
  449. package/dist/elements/SelectMany/index.js +25 -27
  450. package/dist/elements/SelectMany/index.js.map +1 -1
  451. package/dist/elements/SelectRow/index.js +79 -27
  452. package/dist/elements/SelectRow/index.js.map +1 -1
  453. package/dist/elements/ShimmerEffect/index.js +73 -58
  454. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  455. package/dist/elements/SortColumn/index.js +106 -98
  456. package/dist/elements/SortColumn/index.js.map +1 -1
  457. package/dist/elements/SortComplex/index.js +163 -142
  458. package/dist/elements/SortComplex/index.js.map +1 -1
  459. package/dist/elements/SortHeader/index.js +87 -54
  460. package/dist/elements/SortHeader/index.js.map +1 -1
  461. package/dist/elements/SortRow/index.js +27 -21
  462. package/dist/elements/SortRow/index.js.map +1 -1
  463. package/dist/elements/Status/index.js +156 -198
  464. package/dist/elements/Status/index.js.map +1 -1
  465. package/dist/elements/StayLoggedIn/index.js +76 -38
  466. package/dist/elements/StayLoggedIn/index.js.map +1 -1
  467. package/dist/elements/StepNav/SetStepNav.js +27 -10
  468. package/dist/elements/StepNav/SetStepNav.js.map +1 -1
  469. package/dist/elements/StepNav/context.js +34 -17
  470. package/dist/elements/StepNav/context.js.map +1 -1
  471. package/dist/elements/StepNav/index.js +92 -148
  472. package/dist/elements/StepNav/index.js.map +1 -1
  473. package/dist/elements/StepNav/types.js +1 -2
  474. package/dist/elements/StepNav/types.js.map +1 -1
  475. package/dist/elements/StickyToolbar/index.js +8 -10
  476. package/dist/elements/StickyToolbar/index.js.map +1 -1
  477. package/dist/elements/Table/DefaultCell/fields/Array/index.js +28 -13
  478. package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
  479. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +60 -34
  480. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  481. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +27 -18
  482. package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
  483. package/dist/elements/Table/DefaultCell/fields/Code/index.js +17 -22
  484. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  485. package/dist/elements/Table/DefaultCell/fields/Date/index.js +41 -22
  486. package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
  487. package/dist/elements/Table/DefaultCell/fields/File/index.js +42 -52
  488. package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
  489. package/dist/elements/Table/DefaultCell/fields/JSON/index.js +12 -18
  490. package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
  491. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +185 -116
  492. package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
  493. package/dist/elements/Table/DefaultCell/fields/Select/index.js +44 -22
  494. package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
  495. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js +9 -11
  496. package/dist/elements/Table/DefaultCell/fields/Textarea/index.js.map +1 -1
  497. package/dist/elements/Table/DefaultCell/fields/index.js +14 -14
  498. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  499. package/dist/elements/Table/DefaultCell/index.js +151 -124
  500. package/dist/elements/Table/DefaultCell/index.js.map +1 -1
  501. package/dist/elements/Table/OrderableRow.js +32 -40
  502. package/dist/elements/Table/OrderableRow.js.map +1 -1
  503. package/dist/elements/Table/OrderableRowDragPreview.js +15 -24
  504. package/dist/elements/Table/OrderableRowDragPreview.js.map +1 -1
  505. package/dist/elements/Table/OrderableTable.js +164 -221
  506. package/dist/elements/Table/OrderableTable.js.map +1 -1
  507. package/dist/elements/Table/RelationshipProvider/index.js +161 -104
  508. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  509. package/dist/elements/Table/RelationshipProvider/reducer.js +42 -42
  510. package/dist/elements/Table/RelationshipProvider/reducer.js.map +1 -1
  511. package/dist/elements/Table/index.js +45 -83
  512. package/dist/elements/Table/index.js.map +1 -1
  513. package/dist/elements/Thumbnail/createThumbnail.js +48 -53
  514. package/dist/elements/Thumbnail/createThumbnail.js.map +1 -1
  515. package/dist/elements/Thumbnail/index.js +148 -127
  516. package/dist/elements/Thumbnail/index.js.map +1 -1
  517. package/dist/elements/ThumbnailCard/index.js +68 -47
  518. package/dist/elements/ThumbnailCard/index.js.map +1 -1
  519. package/dist/elements/TimezonePicker/index.js +44 -53
  520. package/dist/elements/TimezonePicker/index.js.map +1 -1
  521. package/dist/elements/TimezonePicker/types.js +1 -2
  522. package/dist/elements/TimezonePicker/types.js.map +1 -1
  523. package/dist/elements/Toasts/fieldErrors.js +77 -69
  524. package/dist/elements/Toasts/fieldErrors.js.map +1 -1
  525. package/dist/elements/Tooltip/index.js +65 -98
  526. package/dist/elements/Tooltip/index.js.map +1 -1
  527. package/dist/elements/Translation/index.js +39 -48
  528. package/dist/elements/Translation/index.js.map +1 -1
  529. package/dist/elements/TrashBanner/index.js +26 -33
  530. package/dist/elements/TrashBanner/index.js.map +1 -1
  531. package/dist/elements/UnpublishMany/DrawerContent.js +124 -127
  532. package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
  533. package/dist/elements/UnpublishMany/index.js +109 -58
  534. package/dist/elements/UnpublishMany/index.js.map +1 -1
  535. package/dist/elements/Upload/index.js +479 -631
  536. package/dist/elements/Upload/index.js.map +1 -1
  537. package/dist/elements/ViewDescription/index.js +26 -15
  538. package/dist/elements/ViewDescription/index.js.map +1 -1
  539. package/dist/elements/ViewDescription/types.js.map +1 -1
  540. package/dist/elements/WhereBuilder/Condition/Date/index.js +29 -23
  541. package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
  542. package/dist/elements/WhereBuilder/Condition/Date/types.js +1 -2
  543. package/dist/elements/WhereBuilder/Condition/Date/types.js.map +1 -1
  544. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js +76 -95
  545. package/dist/elements/WhereBuilder/Condition/DefaultFilter/index.js.map +1 -1
  546. package/dist/elements/WhereBuilder/Condition/Number/index.js +129 -74
  547. package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
  548. package/dist/elements/WhereBuilder/Condition/Number/types.js +1 -2
  549. package/dist/elements/WhereBuilder/Condition/Number/types.js.map +1 -1
  550. package/dist/elements/WhereBuilder/Condition/Relationship/index.js +308 -348
  551. package/dist/elements/WhereBuilder/Condition/Relationship/index.js.map +1 -1
  552. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js +67 -83
  553. package/dist/elements/WhereBuilder/Condition/Relationship/optionsReducer.js.map +1 -1
  554. package/dist/elements/WhereBuilder/Condition/Relationship/types.js +1 -2
  555. package/dist/elements/WhereBuilder/Condition/Relationship/types.js.map +1 -1
  556. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js +9 -10
  557. package/dist/elements/WhereBuilder/Condition/Select/formatOptions.js.map +1 -1
  558. package/dist/elements/WhereBuilder/Condition/Select/index.js +154 -69
  559. package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
  560. package/dist/elements/WhereBuilder/Condition/Select/types.js +1 -2
  561. package/dist/elements/WhereBuilder/Condition/Select/types.js.map +1 -1
  562. package/dist/elements/WhereBuilder/Condition/Text/index.js +123 -72
  563. package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
  564. package/dist/elements/WhereBuilder/Condition/Text/types.js +1 -2
  565. package/dist/elements/WhereBuilder/Condition/Text/types.js.map +1 -1
  566. package/dist/elements/WhereBuilder/Condition/index.js +143 -206
  567. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  568. package/dist/elements/WhereBuilder/Condition/types.js +1 -2
  569. package/dist/elements/WhereBuilder/Condition/types.js.map +1 -1
  570. package/dist/elements/WhereBuilder/Condition/validOperators.js +33 -32
  571. package/dist/elements/WhereBuilder/Condition/validOperators.js.map +1 -1
  572. package/dist/elements/WhereBuilder/field-types.js +119 -192
  573. package/dist/elements/WhereBuilder/field-types.js.map +1 -1
  574. package/dist/elements/WhereBuilder/index.js +193 -258
  575. package/dist/elements/WhereBuilder/index.js.map +1 -1
  576. package/dist/elements/WhereBuilder/types.js +1 -2
  577. package/dist/elements/WhereBuilder/types.js.map +1 -1
  578. package/dist/elements/WindowInfo/index.js +1 -1
  579. package/dist/elements/WindowInfo/index.js.map +1 -1
  580. package/dist/elements/WithServerSideProps/index.js +19 -20
  581. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  582. package/dist/elements/withMergedProps/index.js +26 -26
  583. package/dist/elements/withMergedProps/index.js.map +1 -1
  584. package/dist/exports/client/CodeEditor-QOURTFMT.js +14 -0
  585. package/dist/exports/client/CodeEditor-QOURTFMT.js.map +7 -0
  586. package/dist/exports/client/DatePicker-VMLA35FO.js +14 -0
  587. package/dist/exports/client/DatePicker-VMLA35FO.js.map +7 -0
  588. package/dist/exports/client/chunk-53XJ3K67.js +27 -0
  589. package/dist/exports/client/chunk-53XJ3K67.js.map +7 -0
  590. package/dist/exports/client/chunk-5LKBKI4T.js +14 -0
  591. package/dist/exports/client/chunk-5LKBKI4T.js.map +7 -0
  592. package/dist/exports/client/chunk-7V3NHDV6.js +29 -0
  593. package/dist/exports/client/chunk-7V3NHDV6.js.map +7 -0
  594. package/dist/exports/client/index.js +96 -296
  595. package/dist/exports/client/index.js.map +7 -1
  596. package/dist/exports/rsc/index.js +0 -1
  597. package/dist/exports/rsc/index.js.map +1 -1
  598. package/dist/exports/shared/index.js +6 -32
  599. package/dist/exports/shared/index.js.map +7 -1
  600. package/dist/fields/Array/ArrayRow.js +165 -110
  601. package/dist/fields/Array/ArrayRow.js.map +1 -1
  602. package/dist/fields/Array/index.js +395 -525
  603. package/dist/fields/Array/index.js.map +1 -1
  604. package/dist/fields/Blocks/BlockRow.js +198 -163
  605. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  606. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js +38 -30
  607. package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
  608. package/dist/fields/Blocks/BlockSelector/index.js +103 -159
  609. package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
  610. package/dist/fields/Blocks/BlocksDrawer/index.js +80 -37
  611. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  612. package/dist/fields/Blocks/RowActions.js +106 -50
  613. package/dist/fields/Blocks/RowActions.js.map +1 -1
  614. package/dist/fields/Blocks/SectionTitle/index.js +78 -36
  615. package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
  616. package/dist/fields/Blocks/index.js +425 -566
  617. package/dist/fields/Blocks/index.js.map +1 -1
  618. package/dist/fields/Checkbox/Input.js +99 -86
  619. package/dist/fields/Checkbox/Input.js.map +1 -1
  620. package/dist/fields/Checkbox/index.js +99 -107
  621. package/dist/fields/Checkbox/index.js.map +1 -1
  622. package/dist/fields/Code/index.js +114 -146
  623. package/dist/fields/Code/index.js.map +1 -1
  624. package/dist/fields/Collapsible/index.js +134 -172
  625. package/dist/fields/Collapsible/index.js.map +1 -1
  626. package/dist/fields/ConfirmPassword/index.js +83 -67
  627. package/dist/fields/ConfirmPassword/index.js.map +1 -1
  628. package/dist/fields/DateTime/index.js +171 -217
  629. package/dist/fields/DateTime/index.js.map +1 -1
  630. package/dist/fields/Email/index.js +86 -111
  631. package/dist/fields/Email/index.js.map +1 -1
  632. package/dist/fields/FieldDescription/index.js +43 -20
  633. package/dist/fields/FieldDescription/index.js.map +1 -1
  634. package/dist/fields/FieldError/index.js +58 -22
  635. package/dist/fields/FieldError/index.js.map +1 -1
  636. package/dist/fields/FieldLabel/index.js +45 -43
  637. package/dist/fields/FieldLabel/index.js.map +1 -1
  638. package/dist/fields/Group/index.js +102 -150
  639. package/dist/fields/Group/index.js.map +1 -1
  640. package/dist/fields/Group/provider.js +12 -13
  641. package/dist/fields/Group/provider.js.map +1 -1
  642. package/dist/fields/Hidden/index.js +67 -27
  643. package/dist/fields/Hidden/index.js.map +1 -1
  644. package/dist/fields/JSON/index.js +143 -185
  645. package/dist/fields/JSON/index.js.map +1 -1
  646. package/dist/fields/Join/index.js +189 -214
  647. package/dist/fields/Join/index.js.map +1 -1
  648. package/dist/fields/Number/index.js +169 -213
  649. package/dist/fields/Number/index.js.map +1 -1
  650. package/dist/fields/Password/index.js +101 -80
  651. package/dist/fields/Password/index.js.map +1 -1
  652. package/dist/fields/Password/input.js +122 -108
  653. package/dist/fields/Password/input.js.map +1 -1
  654. package/dist/fields/Password/types.js +1 -12
  655. package/dist/fields/Password/types.js.map +1 -1
  656. package/dist/fields/Point/index.js +127 -199
  657. package/dist/fields/Point/index.js.map +1 -1
  658. package/dist/fields/RadioGroup/Radio/index.js +81 -56
  659. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  660. package/dist/fields/RadioGroup/index.js +114 -146
  661. package/dist/fields/RadioGroup/index.js.map +1 -1
  662. package/dist/fields/Relationship/Input.js +726 -804
  663. package/dist/fields/Relationship/Input.js.map +1 -1
  664. package/dist/fields/Relationship/createRelationMap.js +33 -31
  665. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  666. package/dist/fields/Relationship/findOptionsByValue.js +32 -28
  667. package/dist/fields/Relationship/findOptionsByValue.js.map +1 -1
  668. package/dist/fields/Relationship/index.js +160 -152
  669. package/dist/fields/Relationship/index.js.map +1 -1
  670. package/dist/fields/Relationship/optionsReducer.js +139 -144
  671. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  672. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +82 -92
  673. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  674. package/dist/fields/Relationship/select-components/SingleValue/index.js +118 -95
  675. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  676. package/dist/fields/Relationship/types.js +1 -2
  677. package/dist/fields/Relationship/types.js.map +1 -1
  678. package/dist/fields/RichText/index.js +3 -3
  679. package/dist/fields/RichText/index.js.map +1 -1
  680. package/dist/fields/Row/index.js +35 -37
  681. package/dist/fields/Row/index.js.map +1 -1
  682. package/dist/fields/Row/provider.js +12 -13
  683. package/dist/fields/Row/provider.js.map +1 -1
  684. package/dist/fields/Select/Input.js +165 -114
  685. package/dist/fields/Select/Input.js.map +1 -1
  686. package/dist/fields/Select/index.js +108 -89
  687. package/dist/fields/Select/index.js.map +1 -1
  688. package/dist/fields/Slug/index.js +134 -103
  689. package/dist/fields/Slug/index.js.map +1 -1
  690. package/dist/fields/Tabs/Tab/index.js +60 -54
  691. package/dist/fields/Tabs/Tab/index.js.map +1 -1
  692. package/dist/fields/Tabs/index.js +445 -245
  693. package/dist/fields/Tabs/index.js.map +1 -1
  694. package/dist/fields/Tabs/provider.js +12 -13
  695. package/dist/fields/Tabs/provider.js.map +1 -1
  696. package/dist/fields/Text/Input.js +191 -169
  697. package/dist/fields/Text/Input.js.map +1 -1
  698. package/dist/fields/Text/index.js +126 -107
  699. package/dist/fields/Text/index.js.map +1 -1
  700. package/dist/fields/Text/types.js +1 -2
  701. package/dist/fields/Text/types.js.map +1 -1
  702. package/dist/fields/Textarea/Input.js +115 -104
  703. package/dist/fields/Textarea/Input.js.map +1 -1
  704. package/dist/fields/Textarea/index.js +88 -61
  705. package/dist/fields/Textarea/index.js.map +1 -1
  706. package/dist/fields/Textarea/types.js +1 -2
  707. package/dist/fields/Textarea/types.js.map +1 -1
  708. package/dist/fields/UI/index.js +3 -3
  709. package/dist/fields/UI/index.js.map +1 -1
  710. package/dist/fields/Upload/HasMany/index.js +186 -141
  711. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  712. package/dist/fields/Upload/HasOne/index.js +60 -59
  713. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  714. package/dist/fields/Upload/Input.js +563 -753
  715. package/dist/fields/Upload/Input.js.map +1 -1
  716. package/dist/fields/Upload/RelationshipContent/index.js +143 -140
  717. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
  718. package/dist/fields/Upload/UploadCard/index.js +10 -15
  719. package/dist/fields/Upload/UploadCard/index.js.map +1 -1
  720. package/dist/fields/Upload/index.js +96 -79
  721. package/dist/fields/Upload/index.js.map +1 -1
  722. package/dist/fields/Upload/types.js +1 -3
  723. package/dist/fields/Upload/types.js.map +1 -1
  724. package/dist/fields/index.js +31 -31
  725. package/dist/fields/index.js.map +1 -1
  726. package/dist/fields/mergeFieldStyles.js +12 -13
  727. package/dist/fields/mergeFieldStyles.js.map +1 -1
  728. package/dist/fields/shared/index.js +17 -8
  729. package/dist/fields/shared/index.js.map +1 -1
  730. package/dist/forms/Form/context.js +24 -17
  731. package/dist/forms/Form/context.js.map +1 -1
  732. package/dist/forms/Form/createNestedClientFieldPath.js +11 -11
  733. package/dist/forms/Form/createNestedClientFieldPath.js.map +1 -1
  734. package/dist/forms/Form/errorMessages.js +2 -2
  735. package/dist/forms/Form/errorMessages.js.map +1 -1
  736. package/dist/forms/Form/fieldReducer.js +412 -378
  737. package/dist/forms/Form/fieldReducer.js.map +1 -1
  738. package/dist/forms/Form/index.js +684 -745
  739. package/dist/forms/Form/index.js.map +1 -1
  740. package/dist/forms/Form/initContextState.js +38 -38
  741. package/dist/forms/Form/initContextState.js.map +1 -1
  742. package/dist/forms/Form/mergeServerFormState.js +97 -93
  743. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  744. package/dist/forms/Form/reduceToSerializableFields.js +17 -20
  745. package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
  746. package/dist/forms/Form/rowHelpers.js +34 -27
  747. package/dist/forms/Form/rowHelpers.js.map +1 -1
  748. package/dist/forms/Form/rows.js +34 -34
  749. package/dist/forms/Form/rows.js.map +1 -1
  750. package/dist/forms/Form/types.js +1 -53
  751. package/dist/forms/Form/types.js.map +1 -1
  752. package/dist/forms/NullifyField/index.js +96 -61
  753. package/dist/forms/NullifyField/index.js.map +1 -1
  754. package/dist/forms/RenderFields/RenderField.js +259 -237
  755. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  756. package/dist/forms/RenderFields/context.js +9 -9
  757. package/dist/forms/RenderFields/context.js.map +1 -1
  758. package/dist/forms/RenderFields/index.js +115 -76
  759. package/dist/forms/RenderFields/index.js.map +1 -1
  760. package/dist/forms/RenderFields/types.js +1 -2
  761. package/dist/forms/RenderFields/types.js.map +1 -1
  762. package/dist/forms/RowLabel/Context/index.js +29 -30
  763. package/dist/forms/RowLabel/Context/index.js.map +1 -1
  764. package/dist/forms/RowLabel/index.js +24 -33
  765. package/dist/forms/RowLabel/index.js.map +1 -1
  766. package/dist/forms/RowLabel/types.js +1 -2
  767. package/dist/forms/RowLabel/types.js.map +1 -1
  768. package/dist/forms/Submit/index.js +35 -32
  769. package/dist/forms/Submit/index.js.map +1 -1
  770. package/dist/forms/WatchChildErrors/buildPathSegments.js +29 -29
  771. package/dist/forms/WatchChildErrors/buildPathSegments.js.map +1 -1
  772. package/dist/forms/WatchChildErrors/index.js +66 -41
  773. package/dist/forms/WatchChildErrors/index.js.map +1 -1
  774. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js +683 -654
  775. package/dist/forms/fieldSchemasToFormState/addFieldStatePromise.js.map +1 -1
  776. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js +22 -14
  777. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/index.js.map +1 -1
  778. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js +26 -17
  779. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/iterateFields.js.map +1 -1
  780. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js +198 -186
  781. package/dist/forms/fieldSchemasToFormState/calculateDefaultValues/promise.js.map +1 -1
  782. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js +54 -61
  783. package/dist/forms/fieldSchemasToFormState/fieldSchemasToFormState.spec.js.map +1 -1
  784. package/dist/forms/fieldSchemasToFormState/index.js +79 -90
  785. package/dist/forms/fieldSchemasToFormState/index.js.map +1 -1
  786. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js +16 -12
  787. package/dist/forms/fieldSchemasToFormState/isRowCollapsed.js.map +1 -1
  788. package/dist/forms/fieldSchemasToFormState/iterateFields.js +116 -95
  789. package/dist/forms/fieldSchemasToFormState/iterateFields.js.map +1 -1
  790. package/dist/forms/fieldSchemasToFormState/renderField.js +274 -273
  791. package/dist/forms/fieldSchemasToFormState/renderField.js.map +1 -1
  792. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js +75 -90
  793. package/dist/forms/fieldSchemasToFormState/serverFunctions/renderFieldServerFn.js.map +1 -1
  794. package/dist/forms/fieldSchemasToFormState/types.js +1 -6
  795. package/dist/forms/fieldSchemasToFormState/types.js.map +1 -1
  796. package/dist/forms/useField/index.js +292 -180
  797. package/dist/forms/useField/index.js.map +1 -1
  798. package/dist/forms/useField/types.js +1 -20
  799. package/dist/forms/useField/types.js.map +1 -1
  800. package/dist/forms/withCondition/WatchCondition.js +27 -9
  801. package/dist/forms/withCondition/WatchCondition.js.map +1 -1
  802. package/dist/forms/withCondition/index.js +15 -21
  803. package/dist/forms/withCondition/index.js.map +1 -1
  804. package/dist/graphics/Account/Default/index.js +22 -46
  805. package/dist/graphics/Account/Default/index.js.map +1 -1
  806. package/dist/graphics/Account/Gravatar/index.js +34 -25
  807. package/dist/graphics/Account/Gravatar/index.js.map +1 -1
  808. package/dist/graphics/Account/index.js +51 -24
  809. package/dist/graphics/Account/index.js.map +1 -1
  810. package/dist/graphics/DefaultBlockImage/index.js +62 -117
  811. package/dist/graphics/DefaultBlockImage/index.js.map +1 -1
  812. package/dist/graphics/File/index.js +17 -33
  813. package/dist/graphics/File/index.js.map +1 -1
  814. package/dist/graphics/Icon/index.js +19 -33
  815. package/dist/graphics/Icon/index.js.map +1 -1
  816. package/dist/graphics/Logo/index.js +39 -112
  817. package/dist/graphics/Logo/index.js.map +1 -1
  818. package/dist/hooks/useClickOutside.js +15 -19
  819. package/dist/hooks/useClickOutside.js.map +1 -1
  820. package/dist/hooks/useControllableState.js +35 -25
  821. package/dist/hooks/useControllableState.js.map +1 -1
  822. package/dist/hooks/useDebounce.js +26 -15
  823. package/dist/hooks/useDebounce.js.map +1 -1
  824. package/dist/hooks/useDebouncedCallback.js +23 -15
  825. package/dist/hooks/useDebouncedCallback.js.map +1 -1
  826. package/dist/hooks/useDebouncedEffect.js +53 -18
  827. package/dist/hooks/useDebouncedEffect.js.map +1 -1
  828. package/dist/hooks/useDelay.js +52 -27
  829. package/dist/hooks/useDelay.js.map +1 -1
  830. package/dist/hooks/useDelayedRender.js +76 -42
  831. package/dist/hooks/useDelayedRender.js.map +1 -1
  832. package/dist/hooks/useEffectEvent.js +33 -12
  833. package/dist/hooks/useEffectEvent.js.map +1 -1
  834. package/dist/hooks/useHotkey.js +110 -96
  835. package/dist/hooks/useHotkey.js.map +1 -1
  836. package/dist/hooks/useIntersect.js +59 -28
  837. package/dist/hooks/useIntersect.js.map +1 -1
  838. package/dist/hooks/usePayloadAPI.js +172 -78
  839. package/dist/hooks/usePayloadAPI.js.map +1 -1
  840. package/dist/hooks/usePopupWindow.js +133 -91
  841. package/dist/hooks/usePopupWindow.js.map +1 -1
  842. package/dist/hooks/useQueue.js +38 -48
  843. package/dist/hooks/useQueue.js.map +1 -1
  844. package/dist/hooks/useRelatedCollections.js +27 -15
  845. package/dist/hooks/useRelatedCollections.js.map +1 -1
  846. package/dist/hooks/useResize.js +70 -42
  847. package/dist/hooks/useResize.js.map +1 -1
  848. package/dist/hooks/useThrottledEffect.js +51 -17
  849. package/dist/hooks/useThrottledEffect.js.map +1 -1
  850. package/dist/hooks/useThrottledValue.js +13 -16
  851. package/dist/hooks/useThrottledValue.js.map +1 -1
  852. package/dist/hooks/useUseAsTitle.js +27 -7
  853. package/dist/hooks/useUseAsTitle.js.map +1 -1
  854. package/dist/icons/Calendar/index.js +11 -20
  855. package/dist/icons/Calendar/index.js.map +1 -1
  856. package/dist/icons/Check/index.js +11 -20
  857. package/dist/icons/Check/index.js.map +1 -1
  858. package/dist/icons/Chevron/index.js +22 -30
  859. package/dist/icons/Chevron/index.js.map +1 -1
  860. package/dist/icons/CloseMenu/index.js +11 -20
  861. package/dist/icons/CloseMenu/index.js.map +1 -1
  862. package/dist/icons/CodeBlock/index.js +13 -22
  863. package/dist/icons/CodeBlock/index.js.map +1 -1
  864. package/dist/icons/Copy/index.js +17 -24
  865. package/dist/icons/Copy/index.js.map +1 -1
  866. package/dist/icons/Document/index.js +16 -25
  867. package/dist/icons/Document/index.js.map +1 -1
  868. package/dist/icons/Dots/index.js +11 -32
  869. package/dist/icons/Dots/index.js.map +1 -1
  870. package/dist/icons/DragHandle/index.js +33 -70
  871. package/dist/icons/DragHandle/index.js.map +1 -1
  872. package/dist/icons/Edit/index.js +13 -23
  873. package/dist/icons/Edit/index.js.map +1 -1
  874. package/dist/icons/ExternalLink/index.js +15 -25
  875. package/dist/icons/ExternalLink/index.js.map +1 -1
  876. package/dist/icons/Eye/index.js +25 -53
  877. package/dist/icons/Eye/index.js.map +1 -1
  878. package/dist/icons/Folder/index.js +16 -26
  879. package/dist/icons/Folder/index.js.map +1 -1
  880. package/dist/icons/Gear/index.js +21 -34
  881. package/dist/icons/Gear/index.js.map +1 -1
  882. package/dist/icons/GridView/index.js +31 -57
  883. package/dist/icons/GridView/index.js.map +1 -1
  884. package/dist/icons/Line/index.js +14 -23
  885. package/dist/icons/Line/index.js.map +1 -1
  886. package/dist/icons/Link/index.js +16 -25
  887. package/dist/icons/Link/index.js.map +1 -1
  888. package/dist/icons/ListView/index.js +16 -25
  889. package/dist/icons/ListView/index.js.map +1 -1
  890. package/dist/icons/Lock/index.js +24 -41
  891. package/dist/icons/Lock/index.js.map +1 -1
  892. package/dist/icons/LogOut/index.js +14 -23
  893. package/dist/icons/LogOut/index.js.map +1 -1
  894. package/dist/icons/Menu/index.js +14 -23
  895. package/dist/icons/Menu/index.js.map +1 -1
  896. package/dist/icons/MinimizeMaximize/index.js +19 -33
  897. package/dist/icons/MinimizeMaximize/index.js.map +1 -1
  898. package/dist/icons/More/index.js +21 -43
  899. package/dist/icons/More/index.js.map +1 -1
  900. package/dist/icons/MoveFolder/index.js +34 -62
  901. package/dist/icons/MoveFolder/index.js.map +1 -1
  902. package/dist/icons/People/index.js +17 -28
  903. package/dist/icons/People/index.js.map +1 -1
  904. package/dist/icons/Plus/index.js +13 -22
  905. package/dist/icons/Plus/index.js.map +1 -1
  906. package/dist/icons/Search/index.js +12 -21
  907. package/dist/icons/Search/index.js.map +1 -1
  908. package/dist/icons/Sort/index.js +35 -48
  909. package/dist/icons/Sort/index.js.map +1 -1
  910. package/dist/icons/Swap/index.js +11 -20
  911. package/dist/icons/Swap/index.js.map +1 -1
  912. package/dist/icons/ThreeDots/index.js +8 -27
  913. package/dist/icons/ThreeDots/index.js.map +1 -1
  914. package/dist/icons/Trash/index.js +18 -28
  915. package/dist/icons/Trash/index.js.map +1 -1
  916. package/dist/icons/X/index.js +15 -25
  917. package/dist/icons/X/index.js.map +1 -1
  918. package/dist/providers/Actions/index.js +33 -21
  919. package/dist/providers/Actions/index.js.map +1 -1
  920. package/dist/providers/Auth/index.js +228 -282
  921. package/dist/providers/Auth/index.js.map +1 -1
  922. package/dist/providers/ClickOutside/index.js +35 -35
  923. package/dist/providers/ClickOutside/index.js.map +1 -1
  924. package/dist/providers/ClientFunction/index.js +104 -63
  925. package/dist/providers/ClientFunction/index.js.map +1 -1
  926. package/dist/providers/Config/index.js +91 -91
  927. package/dist/providers/Config/index.js.map +1 -1
  928. package/dist/providers/DocumentEvents/index.js +30 -19
  929. package/dist/providers/DocumentEvents/index.js.map +1 -1
  930. package/dist/providers/DocumentInfo/index.js +325 -332
  931. package/dist/providers/DocumentInfo/index.js.map +1 -1
  932. package/dist/providers/DocumentInfo/types.js +1 -26
  933. package/dist/providers/DocumentInfo/types.js.map +1 -1
  934. package/dist/providers/DocumentInfo/useGetDocPermissions.js +70 -72
  935. package/dist/providers/DocumentInfo/useGetDocPermissions.js.map +1 -1
  936. package/dist/providers/DocumentTitle/context.js.map +1 -1
  937. package/dist/providers/DocumentTitle/index.js +55 -51
  938. package/dist/providers/DocumentTitle/index.js.map +1 -1
  939. package/dist/providers/EditDepth/index.js +25 -15
  940. package/dist/providers/EditDepth/index.js.map +1 -1
  941. package/dist/providers/EntityVisibility/index.js +48 -26
  942. package/dist/providers/EntityVisibility/index.js.map +1 -1
  943. package/dist/providers/Folders/groupItemIDsByRelation.js +7 -8
  944. package/dist/providers/Folders/groupItemIDsByRelation.js.map +1 -1
  945. package/dist/providers/Folders/index.js +596 -695
  946. package/dist/providers/Folders/index.js.map +1 -1
  947. package/dist/providers/ListQuery/context.js +2 -3
  948. package/dist/providers/ListQuery/context.js.map +1 -1
  949. package/dist/providers/ListQuery/index.js +139 -155
  950. package/dist/providers/ListQuery/index.js.map +1 -1
  951. package/dist/providers/ListQuery/mergeQuery.js +31 -49
  952. package/dist/providers/ListQuery/mergeQuery.js.map +1 -1
  953. package/dist/providers/ListQuery/sanitizeQuery.js +23 -24
  954. package/dist/providers/ListQuery/sanitizeQuery.js.map +1 -1
  955. package/dist/providers/ListQuery/types.js +1 -6
  956. package/dist/providers/ListQuery/types.js.map +1 -1
  957. package/dist/providers/LivePreview/collisionDetection.js +24 -21
  958. package/dist/providers/LivePreview/collisionDetection.js.map +1 -1
  959. package/dist/providers/LivePreview/context.js +55 -60
  960. package/dist/providers/LivePreview/context.js.map +1 -1
  961. package/dist/providers/LivePreview/index.js +205 -225
  962. package/dist/providers/LivePreview/index.js.map +1 -1
  963. package/dist/providers/LivePreview/sizeReducer.js +18 -19
  964. package/dist/providers/LivePreview/sizeReducer.js.map +1 -1
  965. package/dist/providers/Locale/index.js +145 -85
  966. package/dist/providers/Locale/index.js.map +1 -1
  967. package/dist/providers/Operation/index.js +11 -12
  968. package/dist/providers/Operation/index.js.map +1 -1
  969. package/dist/providers/Params/index.js +26 -14
  970. package/dist/providers/Params/index.js.map +1 -1
  971. package/dist/providers/Preferences/index.js +114 -123
  972. package/dist/providers/Preferences/index.js.map +1 -1
  973. package/dist/providers/Root/index.js +116 -190
  974. package/dist/providers/Root/index.js.map +1 -1
  975. package/dist/providers/RouteCache/index.js +103 -53
  976. package/dist/providers/RouteCache/index.js.map +1 -1
  977. package/dist/providers/RouteTransition/ProgressBar/index.js +80 -61
  978. package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
  979. package/dist/providers/RouteTransition/index.js +89 -64
  980. package/dist/providers/RouteTransition/index.js.map +1 -1
  981. package/dist/providers/ScrollInfo/index.js +1 -1
  982. package/dist/providers/ScrollInfo/index.js.map +1 -1
  983. package/dist/providers/SearchParams/index.js +35 -36
  984. package/dist/providers/SearchParams/index.js.map +1 -1
  985. package/dist/providers/Selection/index.js +183 -203
  986. package/dist/providers/Selection/index.js.map +1 -1
  987. package/dist/providers/ServerFunctions/index.js +189 -199
  988. package/dist/providers/ServerFunctions/index.js.map +1 -1
  989. package/dist/providers/TableColumns/RenderDefaultCell/index.js +62 -33
  990. package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
  991. package/dist/providers/TableColumns/buildColumnState/filterFields.js +32 -32
  992. package/dist/providers/TableColumns/buildColumnState/filterFields.js.map +1 -1
  993. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js +52 -50
  994. package/dist/providers/TableColumns/buildColumnState/filterFieldsWithPermissions.js.map +1 -1
  995. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js +2 -3
  996. package/dist/providers/TableColumns/buildColumnState/findValueFromPath.js.map +1 -1
  997. package/dist/providers/TableColumns/buildColumnState/index.js +143 -132
  998. package/dist/providers/TableColumns/buildColumnState/index.js.map +1 -1
  999. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js +14 -10
  1000. package/dist/providers/TableColumns/buildColumnState/isColumnActive.js.map +1 -1
  1001. package/dist/providers/TableColumns/buildColumnState/renderCell.js +151 -150
  1002. package/dist/providers/TableColumns/buildColumnState/renderCell.js.map +1 -1
  1003. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js +15 -16
  1004. package/dist/providers/TableColumns/buildColumnState/sortFieldMap.js.map +1 -1
  1005. package/dist/providers/TableColumns/context.js +1 -2
  1006. package/dist/providers/TableColumns/context.js.map +1 -1
  1007. package/dist/providers/TableColumns/getInitialColumns.js +28 -42
  1008. package/dist/providers/TableColumns/getInitialColumns.js.map +1 -1
  1009. package/dist/providers/TableColumns/index.js +85 -88
  1010. package/dist/providers/TableColumns/index.js.map +1 -1
  1011. package/dist/providers/TableColumns/types.js +1 -18
  1012. package/dist/providers/TableColumns/types.js.map +1 -1
  1013. package/dist/providers/Theme/index.js +104 -69
  1014. package/dist/providers/Theme/index.js.map +1 -1
  1015. package/dist/providers/ToastContainer/icons/Error.js +19 -34
  1016. package/dist/providers/ToastContainer/icons/Error.js.map +1 -1
  1017. package/dist/providers/ToastContainer/icons/Info.js +19 -34
  1018. package/dist/providers/ToastContainer/icons/Info.js.map +1 -1
  1019. package/dist/providers/ToastContainer/icons/Success.js +19 -34
  1020. package/dist/providers/ToastContainer/icons/Success.js.map +1 -1
  1021. package/dist/providers/ToastContainer/icons/Warning.js +19 -34
  1022. package/dist/providers/ToastContainer/icons/Warning.js.map +1 -1
  1023. package/dist/providers/ToastContainer/index.js +47 -56
  1024. package/dist/providers/ToastContainer/index.js.map +1 -1
  1025. package/dist/providers/Translation/index.js +112 -66
  1026. package/dist/providers/Translation/index.js.map +1 -1
  1027. package/dist/providers/UploadControls/index.js +40 -28
  1028. package/dist/providers/UploadControls/index.js.map +1 -1
  1029. package/dist/providers/UploadEdits/index.js +73 -31
  1030. package/dist/providers/UploadEdits/index.js.map +1 -1
  1031. package/dist/providers/UploadHandlers/index.js +65 -30
  1032. package/dist/providers/UploadHandlers/index.js.map +1 -1
  1033. package/dist/providers/WindowInfo/index.js +9 -5
  1034. package/dist/providers/WindowInfo/index.js.map +1 -1
  1035. package/dist/styles.css +1 -0
  1036. package/dist/utilities/abortAndIgnore.js +17 -15
  1037. package/dist/utilities/abortAndIgnore.js.map +1 -1
  1038. package/dist/utilities/api.js +77 -78
  1039. package/dist/utilities/api.js.map +1 -1
  1040. package/dist/utilities/buildClientFieldSchemaMap/index.js +65 -61
  1041. package/dist/utilities/buildClientFieldSchemaMap/index.js.map +1 -1
  1042. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +154 -142
  1043. package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
  1044. package/dist/utilities/buildFieldSchemaMap/index.js +61 -59
  1045. package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
  1046. package/dist/utilities/buildFieldSchemaMap/traverseFields.js +122 -110
  1047. package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
  1048. package/dist/utilities/buildFormState.js +186 -151
  1049. package/dist/utilities/buildFormState.js.map +1 -1
  1050. package/dist/utilities/buildTableState.js +168 -145
  1051. package/dist/utilities/buildTableState.js.map +1 -1
  1052. package/dist/utilities/canUseDOM.js +0 -1
  1053. package/dist/utilities/canUseDOM.js.map +1 -1
  1054. package/dist/utilities/combineFieldLabel.js +26 -53
  1055. package/dist/utilities/combineFieldLabel.js.map +1 -1
  1056. package/dist/utilities/copyDataFromLocale.js +210 -202
  1057. package/dist/utilities/copyDataFromLocale.js.map +1 -1
  1058. package/dist/utilities/dateLocales.js +27 -28
  1059. package/dist/utilities/dateLocales.js.map +1 -1
  1060. package/dist/utilities/deepMerge.js +13 -14
  1061. package/dist/utilities/deepMerge.js.map +1 -1
  1062. package/dist/utilities/fetchPreferences.js.map +1 -1
  1063. package/dist/utilities/filterOutUploadFields.js +4 -17
  1064. package/dist/utilities/filterOutUploadFields.js.map +1 -1
  1065. package/dist/utilities/findLocaleFromCode.js +5 -6
  1066. package/dist/utilities/findLocaleFromCode.js.map +1 -1
  1067. package/dist/utilities/formatAbsoluteURL.js +8 -8
  1068. package/dist/utilities/formatAbsoluteURL.js.map +1 -1
  1069. package/dist/utilities/formatAdminURL.js +1 -2
  1070. package/dist/utilities/formatAdminURL.js.map +1 -1
  1071. package/dist/utilities/formatDocTitle/formatDateTitle.js +27 -20
  1072. package/dist/utilities/formatDocTitle/formatDateTitle.js.map +1 -1
  1073. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js +13 -14
  1074. package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js.map +1 -1
  1075. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js +13 -14
  1076. package/dist/utilities/formatDocTitle/formatRelationshipTitle.js.map +1 -1
  1077. package/dist/utilities/formatDocTitle/index.js +44 -38
  1078. package/dist/utilities/formatDocTitle/index.js.map +1 -1
  1079. package/dist/utilities/formatFields.js +1 -2
  1080. package/dist/utilities/formatFields.js.map +1 -1
  1081. package/dist/utilities/generateFieldID.js +5 -6
  1082. package/dist/utilities/generateFieldID.js.map +1 -1
  1083. package/dist/utilities/getClientConfig.js +29 -25
  1084. package/dist/utilities/getClientConfig.js.map +1 -1
  1085. package/dist/utilities/getClientSchemaMap.js +32 -24
  1086. package/dist/utilities/getClientSchemaMap.js.map +1 -1
  1087. package/dist/utilities/getColumns.js +35 -29
  1088. package/dist/utilities/getColumns.js.map +1 -1
  1089. package/dist/utilities/getDisplayedFieldValue.js +16 -16
  1090. package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
  1091. package/dist/utilities/getFolderResultsComponentAndData.js +121 -134
  1092. package/dist/utilities/getFolderResultsComponentAndData.js.map +1 -1
  1093. package/dist/utilities/getOffsetTop.js +13 -14
  1094. package/dist/utilities/getOffsetTop.js.map +1 -1
  1095. package/dist/utilities/getRequestLanguage.js +8 -5
  1096. package/dist/utilities/getRequestLanguage.js.map +1 -1
  1097. package/dist/utilities/getSchemaMap.js +28 -22
  1098. package/dist/utilities/getSchemaMap.js.map +1 -1
  1099. package/dist/utilities/getSupportedMonacoLocale.js +13 -14
  1100. package/dist/utilities/getSupportedMonacoLocale.js.map +1 -1
  1101. package/dist/utilities/groupNavItems.js +49 -53
  1102. package/dist/utilities/groupNavItems.js.map +1 -1
  1103. package/dist/utilities/handleBackToDashboard.js +9 -7
  1104. package/dist/utilities/handleBackToDashboard.js.map +1 -1
  1105. package/dist/utilities/handleFormStateLocking.js +121 -127
  1106. package/dist/utilities/handleFormStateLocking.js.map +1 -1
  1107. package/dist/utilities/handleGoBack.js +10 -7
  1108. package/dist/utilities/handleGoBack.js.map +1 -1
  1109. package/dist/utilities/handleLivePreview.js +76 -59
  1110. package/dist/utilities/handleLivePreview.js.map +1 -1
  1111. package/dist/utilities/handlePreview.js +52 -41
  1112. package/dist/utilities/handlePreview.js.map +1 -1
  1113. package/dist/utilities/handleTakeOver.js +39 -28
  1114. package/dist/utilities/handleTakeOver.js.map +1 -1
  1115. package/dist/utilities/hasOptionLabelJSXElement.js +11 -9
  1116. package/dist/utilities/hasOptionLabelJSXElement.js.map +1 -1
  1117. package/dist/utilities/hasSavePermission.js +14 -14
  1118. package/dist/utilities/hasSavePermission.js.map +1 -1
  1119. package/dist/utilities/isClientUserObject.js +2 -3
  1120. package/dist/utilities/isClientUserObject.js.map +1 -1
  1121. package/dist/utilities/isEditing.js +5 -2
  1122. package/dist/utilities/isEditing.js.map +1 -1
  1123. package/dist/utilities/isURLAllowed.js +30 -31
  1124. package/dist/utilities/isURLAllowed.js.map +1 -1
  1125. package/dist/utilities/isValidReactElement.js +3 -3
  1126. package/dist/utilities/isValidReactElement.js.map +1 -1
  1127. package/dist/utilities/normalizeRelationshipValue.js +28 -29
  1128. package/dist/utilities/normalizeRelationshipValue.js.map +1 -1
  1129. package/dist/utilities/normalizeRelationshipValue.spec.js +368 -407
  1130. package/dist/utilities/normalizeRelationshipValue.spec.js.map +1 -1
  1131. package/dist/utilities/parseSearchParams.js +7 -7
  1132. package/dist/utilities/parseSearchParams.js.map +1 -1
  1133. package/dist/utilities/reduceFieldsToOptions.js +154 -145
  1134. package/dist/utilities/reduceFieldsToOptions.js.map +1 -1
  1135. package/dist/utilities/reduceFieldsToValuesWithValidation.js +20 -20
  1136. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  1137. package/dist/utilities/removeUndefined.js +1 -2
  1138. package/dist/utilities/removeUndefined.js.map +1 -1
  1139. package/dist/utilities/renderTable.js +195 -239
  1140. package/dist/utilities/renderTable.js.map +1 -1
  1141. package/dist/utilities/resolveFilterOptions.js +26 -27
  1142. package/dist/utilities/resolveFilterOptions.js.map +1 -1
  1143. package/dist/utilities/sanitizeFilterOptionsQuery.js +15 -16
  1144. package/dist/utilities/sanitizeFilterOptionsQuery.js.map +1 -1
  1145. package/dist/utilities/sanitizeID.js +7 -8
  1146. package/dist/utilities/sanitizeID.js.map +1 -1
  1147. package/dist/utilities/schedulePublishHandler.js +57 -47
  1148. package/dist/utilities/schedulePublishHandler.js.map +1 -1
  1149. package/dist/utilities/scrollToID.js +9 -10
  1150. package/dist/utilities/scrollToID.js.map +1 -1
  1151. package/dist/utilities/setsAreEqual.js +2 -3
  1152. package/dist/utilities/setsAreEqual.js.map +1 -1
  1153. package/dist/utilities/traverseForLocalizedFields.js +35 -36
  1154. package/dist/utilities/traverseForLocalizedFields.js.map +1 -1
  1155. package/dist/utilities/upsertPreferences.js +75 -75
  1156. package/dist/utilities/upsertPreferences.js.map +1 -1
  1157. package/dist/views/BrowseByFolder/index.js +324 -365
  1158. package/dist/views/BrowseByFolder/index.js.map +1 -1
  1159. package/dist/views/CollectionFolder/ListSelection/index.js +158 -161
  1160. package/dist/views/CollectionFolder/ListSelection/index.js.map +1 -1
  1161. package/dist/views/CollectionFolder/index.js +282 -359
  1162. package/dist/views/CollectionFolder/index.js.map +1 -1
  1163. package/dist/views/Edit/Auth/APIKey.js +124 -185
  1164. package/dist/views/Edit/Auth/APIKey.js.map +1 -1
  1165. package/dist/views/Edit/Auth/index.js +321 -308
  1166. package/dist/views/Edit/Auth/index.js.map +1 -1
  1167. package/dist/views/Edit/Auth/types.js +1 -2
  1168. package/dist/views/Edit/Auth/types.js.map +1 -1
  1169. package/dist/views/Edit/SetDocumentStepNav/index.js +130 -83
  1170. package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
  1171. package/dist/views/Edit/SetDocumentTitle/index.js +77 -30
  1172. package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
  1173. package/dist/views/Edit/index.js +494 -572
  1174. package/dist/views/Edit/index.js.map +1 -1
  1175. package/dist/views/Edit/types.js +1 -2
  1176. package/dist/views/Edit/types.js.map +1 -1
  1177. package/dist/views/List/GroupByHeader/index.js +24 -35
  1178. package/dist/views/List/GroupByHeader/index.js.map +1 -1
  1179. package/dist/views/List/ListHeader/index.js +80 -115
  1180. package/dist/views/List/ListHeader/index.js.map +1 -1
  1181. package/dist/views/List/ListSelection/index.js +111 -103
  1182. package/dist/views/List/ListSelection/index.js.map +1 -1
  1183. package/dist/views/List/index.js +212 -320
  1184. package/dist/views/List/index.js.map +1 -1
  1185. package/dist/views/List/types.js +1 -2
  1186. package/dist/views/List/types.js.map +1 -1
  1187. package/package.json +6 -7
@@ -1,5 +1,6 @@
1
1
  'use client';
2
- import { jsxDEV as _jsxDEV } from "react/jsx-dev-runtime";
2
+
3
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
3
4
  import { dequal } from 'dequal/lite';
4
5
  import { formatAdminURL, wordBoundariesRegex } from 'payload/shared';
5
6
  import * as qs from 'qs-esm';
@@ -29,837 +30,758 @@ import './index.scss';
29
30
  import { MultiValueLabel } from './select-components/MultiValueLabel/index.js';
30
31
  import { SingleValue } from './select-components/SingleValue/index.js';
31
32
  const baseClass = 'relationship';
32
- export const RelationshipInput = (props)=>{
33
- const { AfterInput, allowCreate = true, allowEdit = true, appearance = 'select', BeforeInput, className, description, Description, Error, filterOptions, formatDisplayedOptions, hasMany, initialValue, isSortable = true, label, Label, localized, maxResultsPerRequest = 10, onChange, path, placeholder, readOnly, relationTo, required, showError, sortOptions, style, value } = props;
34
- const { config, getEntityConfig } = useConfig();
35
- const { routes: { api }, serverURL } = config;
36
- const { i18n, t } = useTranslation();
37
- const { permissions } = useAuth();
38
- const { code: locale } = useLocale();
39
- const [currentlyOpenRelationship, setCurrentlyOpenRelationship] = useState({
40
- id: undefined,
41
- collectionSlug: undefined,
42
- hasReadPermission: false
43
- });
44
- const [lastFullyLoadedRelation, setLastFullyLoadedRelation] = useState(-1);
45
- const [lastLoadedPage, setLastLoadedPage] = useState({});
46
- const [errorLoading, setErrorLoading] = useState('');
47
- const [search, setSearch] = useState('');
48
- const [isLoading, setIsLoading] = useState(false);
49
- const [enableWordBoundarySearch, setEnableWordBoundarySearch] = useState(false);
50
- const [menuIsOpen, setMenuIsOpen] = useState(false);
51
- const hasLoadedFirstPageRef = useRef(false);
52
- const { queueTask } = useQueue();
53
- const [options, dispatchOptions] = useReducer(optionsReducer, []);
54
- const valueRef = useRef(value);
55
- const [DocumentDrawer, , { drawerSlug, isDrawerOpen, openDrawer }] = useDocumentDrawer({
56
- id: currentlyOpenRelationship.id,
57
- collectionSlug: currentlyOpenRelationship.collectionSlug
58
- });
59
- // Filter selected values from displaying in the list drawer
60
- const listDrawerFilterOptions = useMemo(()=>{
61
- let newFilterOptions = filterOptions;
62
- if (value) {
63
- const valuesByRelation = (hasMany === false ? [
64
- value
65
- ] : value).reduce((acc, val)=>{
66
- if (!acc[val.relationTo]) {
67
- acc[val.relationTo] = [];
68
- }
69
- acc[val.relationTo].push(val.value);
70
- return acc;
71
- }, {});
72
- (Array.isArray(relationTo) ? relationTo : [
73
- relationTo
74
- ]).forEach((relation)=>{
75
- newFilterOptions = {
76
- ...newFilterOptions || {},
77
- [relation]: {
78
- ...typeof filterOptions?.[relation] === 'object' ? filterOptions[relation] : {},
79
- ...valuesByRelation[relation] ? {
80
- id: {
81
- not_in: valuesByRelation[relation]
82
- }
83
- } : {}
84
- }
85
- };
86
- });
87
- }
88
- return newFilterOptions;
89
- }, [
90
- filterOptions,
91
- value,
92
- hasMany,
93
- relationTo
94
- ]);
95
- const [ListDrawer, , { closeDrawer: closeListDrawer, isDrawerOpen: isListDrawerOpen, openDrawer: openListDrawer }] = useListDrawer({
96
- collectionSlugs: relationTo,
97
- filterOptions: listDrawerFilterOptions
98
- });
99
- const onListSelect = useCallback(({ collectionSlug, doc })=>{
100
- if (hasMany) {
101
- onChange([
102
- ...Array.isArray(value) ? value : [],
103
- {
104
- relationTo: collectionSlug,
105
- value: doc.id
106
- }
107
- ]);
108
- } else if (hasMany === false) {
109
- onChange({
110
- relationTo: collectionSlug,
111
- value: doc.id
112
- });
33
+ export const RelationshipInput = props => {
34
+ const {
35
+ AfterInput,
36
+ allowCreate = true,
37
+ allowEdit = true,
38
+ appearance = 'select',
39
+ BeforeInput,
40
+ className,
41
+ description,
42
+ Description,
43
+ Error,
44
+ filterOptions,
45
+ formatDisplayedOptions,
46
+ hasMany,
47
+ initialValue,
48
+ isSortable = true,
49
+ label,
50
+ Label,
51
+ localized,
52
+ maxResultsPerRequest = 10,
53
+ onChange,
54
+ path,
55
+ placeholder,
56
+ readOnly,
57
+ relationTo,
58
+ required,
59
+ showError,
60
+ sortOptions,
61
+ style,
62
+ value
63
+ } = props;
64
+ const {
65
+ config,
66
+ getEntityConfig
67
+ } = useConfig();
68
+ const {
69
+ routes: {
70
+ api
71
+ },
72
+ serverURL
73
+ } = config;
74
+ const {
75
+ i18n,
76
+ t
77
+ } = useTranslation();
78
+ const {
79
+ permissions
80
+ } = useAuth();
81
+ const {
82
+ code: locale
83
+ } = useLocale();
84
+ const [currentlyOpenRelationship, setCurrentlyOpenRelationship] = useState({
85
+ id: undefined,
86
+ collectionSlug: undefined,
87
+ hasReadPermission: false
88
+ });
89
+ const [lastFullyLoadedRelation, setLastFullyLoadedRelation] = useState(-1);
90
+ const [lastLoadedPage, setLastLoadedPage] = useState({});
91
+ const [errorLoading, setErrorLoading] = useState('');
92
+ const [search, setSearch] = useState('');
93
+ const [isLoading, setIsLoading] = useState(false);
94
+ const [enableWordBoundarySearch, setEnableWordBoundarySearch] = useState(false);
95
+ const [menuIsOpen, setMenuIsOpen] = useState(false);
96
+ const hasLoadedFirstPageRef = useRef(false);
97
+ const {
98
+ queueTask
99
+ } = useQueue();
100
+ const [options, dispatchOptions] = useReducer(optionsReducer, []);
101
+ const valueRef = useRef(value);
102
+ const [DocumentDrawer,, {
103
+ drawerSlug,
104
+ isDrawerOpen,
105
+ openDrawer
106
+ }] = useDocumentDrawer({
107
+ id: currentlyOpenRelationship.id,
108
+ collectionSlug: currentlyOpenRelationship.collectionSlug
109
+ });
110
+ // Filter selected values from displaying in the list drawer
111
+ const listDrawerFilterOptions = useMemo(() => {
112
+ let newFilterOptions = filterOptions;
113
+ if (value) {
114
+ const valuesByRelation = (hasMany === false ? [value] : value).reduce((acc, val) => {
115
+ if (!acc[val.relationTo]) {
116
+ acc[val.relationTo] = [];
113
117
  }
114
- closeListDrawer();
115
- }, [
116
- hasMany,
117
- onChange,
118
- closeListDrawer,
119
- value
120
- ]);
121
- const openDrawerWhenRelationChanges = useRef(false);
122
- const updateResults = useCallback(({ filterOptions, hasMany: hasManyArg, lastFullyLoadedRelation: lastFullyLoadedRelationArg, lastLoadedPage: lastLoadedPageArg, onSuccess, search: searchArg, sort, value: valueArg })=>{
123
- if (!permissions) {
124
- return;
125
- }
126
- queueTask(async ()=>{
127
- const lastFullyLoadedRelationToUse = typeof lastFullyLoadedRelationArg !== 'undefined' ? lastFullyLoadedRelationArg : -1;
128
- const relations = Array.isArray(relationTo) ? relationTo : [
129
- relationTo
130
- ];
131
- const relationsToFetch = lastFullyLoadedRelationToUse === -1 ? relations : relations.slice(lastFullyLoadedRelationToUse + 1);
132
- let resultsFetched = 0;
133
- const relationMap = createRelationMap(hasManyArg === true ? {
134
- hasMany: true,
135
- relationTo,
136
- value: valueArg
137
- } : {
138
- hasMany: false,
139
- relationTo,
140
- value: valueArg
118
+ acc[val.relationTo].push(val.value);
119
+ return acc;
120
+ }, {});
121
+ (Array.isArray(relationTo) ? relationTo : [relationTo]).forEach(relation => {
122
+ newFilterOptions = {
123
+ ...(newFilterOptions || {}),
124
+ [relation]: {
125
+ ...(typeof filterOptions?.[relation] === 'object' ? filterOptions[relation] : {}),
126
+ ...(valuesByRelation[relation] ? {
127
+ id: {
128
+ not_in: valuesByRelation[relation]
129
+ }
130
+ } : {})
131
+ }
132
+ };
133
+ });
134
+ }
135
+ return newFilterOptions;
136
+ }, [filterOptions, value, hasMany, relationTo]);
137
+ const [ListDrawer,, {
138
+ closeDrawer: closeListDrawer,
139
+ isDrawerOpen: isListDrawerOpen,
140
+ openDrawer: openListDrawer
141
+ }] = useListDrawer({
142
+ collectionSlugs: relationTo,
143
+ filterOptions: listDrawerFilterOptions
144
+ });
145
+ const onListSelect = useCallback(({
146
+ collectionSlug,
147
+ doc
148
+ }) => {
149
+ if (hasMany) {
150
+ onChange([...(Array.isArray(value) ? value : []), {
151
+ relationTo: collectionSlug,
152
+ value: doc.id
153
+ }]);
154
+ } else if (hasMany === false) {
155
+ onChange({
156
+ relationTo: collectionSlug,
157
+ value: doc.id
158
+ });
159
+ }
160
+ closeListDrawer();
161
+ }, [hasMany, onChange, closeListDrawer, value]);
162
+ const openDrawerWhenRelationChanges = useRef(false);
163
+ const updateResults = useCallback(({
164
+ filterOptions: filterOptions_0,
165
+ hasMany: hasManyArg,
166
+ lastFullyLoadedRelation: lastFullyLoadedRelationArg,
167
+ lastLoadedPage: lastLoadedPageArg,
168
+ onSuccess,
169
+ search: searchArg,
170
+ sort,
171
+ value: valueArg
172
+ }) => {
173
+ if (!permissions) {
174
+ return;
175
+ }
176
+ queueTask(async () => {
177
+ const lastFullyLoadedRelationToUse = typeof lastFullyLoadedRelationArg !== 'undefined' ? lastFullyLoadedRelationArg : -1;
178
+ const relations = Array.isArray(relationTo) ? relationTo : [relationTo];
179
+ const relationsToFetch = lastFullyLoadedRelationToUse === -1 ? relations : relations.slice(lastFullyLoadedRelationToUse + 1);
180
+ let resultsFetched = 0;
181
+ const relationMap = createRelationMap(hasManyArg === true ? {
182
+ hasMany: true,
183
+ relationTo,
184
+ value: valueArg
185
+ } : {
186
+ hasMany: false,
187
+ relationTo,
188
+ value: valueArg
189
+ });
190
+ if (!errorLoading) {
191
+ await relationsToFetch.reduce(async (priorRelation, relation_0) => {
192
+ const relationFilterOption = filterOptions_0?.[relation_0];
193
+ let lastLoadedPageToUse;
194
+ if (search !== searchArg) {
195
+ lastLoadedPageToUse = 1;
196
+ } else {
197
+ lastLoadedPageToUse = (lastLoadedPageArg[relation_0] || 0) + 1;
198
+ }
199
+ await priorRelation;
200
+ if (relationFilterOption === false) {
201
+ setLastFullyLoadedRelation(relations.indexOf(relation_0));
202
+ return Promise.resolve();
203
+ }
204
+ if (resultsFetched < 10) {
205
+ const collection = getEntityConfig({
206
+ collectionSlug: relation_0
141
207
  });
142
- if (!errorLoading) {
143
- await relationsToFetch.reduce(async (priorRelation, relation)=>{
144
- const relationFilterOption = filterOptions?.[relation];
145
- let lastLoadedPageToUse;
146
- if (search !== searchArg) {
147
- lastLoadedPageToUse = 1;
148
- } else {
149
- lastLoadedPageToUse = (lastLoadedPageArg[relation] || 0) + 1;
150
- }
151
- await priorRelation;
152
- if (relationFilterOption === false) {
153
- setLastFullyLoadedRelation(relations.indexOf(relation));
154
- return Promise.resolve();
155
- }
156
- if (resultsFetched < 10) {
157
- const collection = getEntityConfig({
158
- collectionSlug: relation
159
- });
160
- const fieldToSearch = collection?.admin?.useAsTitle || 'id';
161
- let fieldToSort = collection?.defaultSort || 'id';
162
- if (typeof sortOptions === 'string') {
163
- fieldToSort = sortOptions;
164
- } else if (sortOptions?.[relation]) {
165
- fieldToSort = sortOptions[relation];
166
- }
167
- const query = {
168
- depth: 0,
169
- draft: true,
170
- limit: maxResultsPerRequest,
171
- locale,
172
- page: lastLoadedPageToUse,
173
- select: {
174
- [fieldToSearch]: true
175
- },
176
- sort: fieldToSort,
177
- where: {
178
- and: [
179
- {
180
- id: {
181
- not_in: relationMap[relation]
182
- }
183
- }
184
- ]
185
- }
186
- };
187
- if (searchArg) {
188
- query.where.and.push({
189
- [fieldToSearch]: {
190
- like: searchArg
191
- }
192
- });
193
- }
194
- if (relationFilterOption && typeof relationFilterOption !== 'boolean') {
195
- query.where.and.push(relationFilterOption);
196
- }
197
- sanitizeFilterOptionsQuery(query.where);
198
- const response = await fetch(`${serverURL}${api}/${relation}`, {
199
- body: qs.stringify(query),
200
- credentials: 'include',
201
- headers: {
202
- 'Accept-Language': i18n.language,
203
- 'Content-Type': 'application/x-www-form-urlencoded',
204
- 'X-Payload-HTTP-Method-Override': 'GET'
205
- },
206
- method: 'POST'
207
- });
208
- if (response.ok) {
209
- const data = await response.json();
210
- setLastLoadedPage((prevState)=>{
211
- return {
212
- ...prevState,
213
- [relation]: lastLoadedPageToUse
214
- };
215
- });
216
- if (!data.nextPage) {
217
- setLastFullyLoadedRelation(relations.indexOf(relation));
218
- }
219
- if (data.docs.length > 0) {
220
- resultsFetched += data.docs.length;
221
- dispatchOptions({
222
- type: 'ADD',
223
- collection,
224
- config,
225
- docs: data.docs,
226
- i18n,
227
- sort
228
- });
229
- }
230
- } else if (response.status === 403) {
231
- setLastFullyLoadedRelation(relations.indexOf(relation));
232
- dispatchOptions({
233
- type: 'ADD',
234
- collection,
235
- config,
236
- docs: [],
237
- i18n,
238
- ids: relationMap[relation],
239
- sort
240
- });
241
- } else {
242
- setErrorLoading(t('error:unspecific'));
243
- }
244
- }
245
- }, Promise.resolve());
246
- if (typeof onSuccess === 'function') {
247
- onSuccess();
208
+ const fieldToSearch = collection?.admin?.useAsTitle || 'id';
209
+ let fieldToSort = collection?.defaultSort || 'id';
210
+ if (typeof sortOptions === 'string') {
211
+ fieldToSort = sortOptions;
212
+ } else if (sortOptions?.[relation_0]) {
213
+ fieldToSort = sortOptions[relation_0];
214
+ }
215
+ const query = {
216
+ depth: 0,
217
+ draft: true,
218
+ limit: maxResultsPerRequest,
219
+ locale,
220
+ page: lastLoadedPageToUse,
221
+ select: {
222
+ [fieldToSearch]: true
223
+ },
224
+ sort: fieldToSort,
225
+ where: {
226
+ and: [{
227
+ id: {
228
+ not_in: relationMap[relation_0]
229
+ }
230
+ }]
231
+ }
232
+ };
233
+ if (searchArg) {
234
+ query.where.and.push({
235
+ [fieldToSearch]: {
236
+ like: searchArg
248
237
  }
238
+ });
249
239
  }
250
- });
251
- }, [
252
- permissions,
253
- queueTask,
254
- relationTo,
255
- errorLoading,
256
- search,
257
- getEntityConfig,
258
- sortOptions,
259
- maxResultsPerRequest,
260
- locale,
261
- serverURL,
262
- api,
263
- i18n,
264
- config,
265
- t
266
- ]);
267
- const updateSearch = useDebouncedCallback(({ hasMany: hasManyArg, search: searchArg, value })=>{
268
- updateResultsEffectEvent({
269
- filterOptions,
270
- lastLoadedPage: {},
271
- onSuccess: ()=>{
272
- setIsLoading(false);
273
- },
274
- search: searchArg,
275
- sort: true,
276
- ...hasManyArg === true ? {
277
- hasMany: hasManyArg,
278
- value
279
- } : {
280
- hasMany: hasManyArg,
281
- value
240
+ if (relationFilterOption && typeof relationFilterOption !== 'boolean') {
241
+ query.where.and.push(relationFilterOption);
282
242
  }
283
- });
284
- setSearch(searchArg);
285
- }, 300);
286
- const handleInputChange = useCallback((options)=>{
287
- if (search !== options.search) {
288
- setIsLoading(true);
289
- setLastLoadedPage({});
290
- updateSearch(options);
291
- }
292
- }, [
293
- search,
294
- updateSearch
295
- ]);
296
- const handleValueChange = useEffectEvent(({ hasMany: hasManyArg, value })=>{
297
- const relationMap = createRelationMap(hasManyArg === true ? {
298
- hasMany: hasManyArg,
299
- relationTo,
300
- value
301
- } : {
302
- hasMany: hasManyArg,
303
- relationTo,
304
- value
305
- });
306
- void Object.entries(relationMap).reduce(async (priorRelation, [relation, ids])=>{
307
- await priorRelation;
308
- const idsToLoad = ids.filter((id)=>{
309
- return !options.find((optionGroup)=>optionGroup?.options?.find((option)=>option.value === id && option.relationTo === relation));
243
+ sanitizeFilterOptionsQuery(query.where);
244
+ const response = await fetch(`${serverURL}${api}/${relation_0}`, {
245
+ body: qs.stringify(query),
246
+ credentials: 'include',
247
+ headers: {
248
+ 'Accept-Language': i18n.language,
249
+ 'Content-Type': 'application/x-www-form-urlencoded',
250
+ 'X-Payload-HTTP-Method-Override': 'GET'
251
+ },
252
+ method: 'POST'
310
253
  });
311
- if (idsToLoad.length > 0) {
312
- const collection = getEntityConfig({
313
- collectionSlug: relation
314
- });
315
- const fieldToSelect = collection?.admin?.useAsTitle || 'id';
316
- const query = {
317
- depth: 0,
318
- draft: true,
319
- limit: idsToLoad.length,
320
- locale,
321
- select: {
322
- [fieldToSelect]: true
323
- },
324
- where: {
325
- id: {
326
- in: idsToLoad
327
- }
328
- }
254
+ if (response.ok) {
255
+ const data = await response.json();
256
+ setLastLoadedPage(prevState => {
257
+ return {
258
+ ...prevState,
259
+ [relation_0]: lastLoadedPageToUse
329
260
  };
330
- if (!errorLoading) {
331
- const response = await fetch(`${serverURL}${api}/${relation}`, {
332
- body: qs.stringify(query),
333
- credentials: 'include',
334
- headers: {
335
- 'Accept-Language': i18n.language,
336
- 'Content-Type': 'application/x-www-form-urlencoded',
337
- 'X-Payload-HTTP-Method-Override': 'GET'
338
- },
339
- method: 'POST'
340
- });
341
- let docs = [];
342
- if (response.ok) {
343
- const data = await response.json();
344
- docs = data.docs;
345
- }
346
- dispatchOptions({
347
- type: 'ADD',
348
- collection,
349
- config,
350
- docs,
351
- i18n,
352
- ids: idsToLoad,
353
- sort: true
354
- });
355
- }
356
- }
357
- }, Promise.resolve());
358
- });
359
- const { mostRecentUpdate } = useDocumentEvents();
360
- const handleDocumentUpdateEvent = useEffectEvent((mostRecentUpdate)=>{
361
- if (!value) {
362
- return false;
363
- }
364
- const docID = mostRecentUpdate.doc.id;
365
- let isMatchingUpdate = false;
366
- if (mostRecentUpdate.operation === 'update') {
367
- if (hasMany === true) {
368
- const currentValue = Array.isArray(value) ? value : [
369
- value
370
- ];
371
- isMatchingUpdate = currentValue.some((option)=>{
372
- return option.value === docID && option.relationTo === mostRecentUpdate.entitySlug;
261
+ });
262
+ if (!data.nextPage) {
263
+ setLastFullyLoadedRelation(relations.indexOf(relation_0));
264
+ }
265
+ if (data.docs.length > 0) {
266
+ resultsFetched += data.docs.length;
267
+ dispatchOptions({
268
+ type: 'ADD',
269
+ collection,
270
+ config,
271
+ docs: data.docs,
272
+ i18n,
273
+ sort
373
274
  });
374
- } else if (hasMany === false) {
375
- isMatchingUpdate = value?.value === docID && value?.relationTo === mostRecentUpdate.entitySlug;
275
+ }
276
+ } else if (response.status === 403) {
277
+ setLastFullyLoadedRelation(relations.indexOf(relation_0));
278
+ dispatchOptions({
279
+ type: 'ADD',
280
+ collection,
281
+ config,
282
+ docs: [],
283
+ i18n,
284
+ ids: relationMap[relation_0],
285
+ sort
286
+ });
287
+ } else {
288
+ setErrorLoading(t('error:unspecific'));
376
289
  }
377
- } else if (mostRecentUpdate.operation === 'create') {
378
- // "Create New" drawer operations on the same level as this drawer should
379
- // set the value to the newly created document.
380
- // See test "should create document within document drawer > has one"
381
- isMatchingUpdate = mostRecentUpdate.drawerSlug === drawerSlug;
382
- }
383
- if (!isMatchingUpdate) {
384
- return;
385
- }
386
- const collectionConfig = getEntityConfig({
387
- collectionSlug: mostRecentUpdate.entitySlug
388
- });
389
- dispatchOptions({
390
- type: 'UPDATE',
391
- collection: collectionConfig,
392
- config,
393
- doc: mostRecentUpdate.doc,
394
- i18n
395
- });
396
- if (hasMany) {
397
- const currentValue = value ? Array.isArray(value) ? value : [
398
- value
399
- ] : [];
400
- const valuesToSet = currentValue.map((option)=>{
401
- return {
402
- relationTo: option.value === docID ? mostRecentUpdate.entitySlug : option.relationTo,
403
- value: option.value
404
- };
405
- });
406
- onChange(valuesToSet);
407
- } else if (hasMany === false) {
408
- onChange({
409
- relationTo: mostRecentUpdate.entitySlug,
410
- value: docID
411
- });
290
+ }
291
+ }, Promise.resolve());
292
+ if (typeof onSuccess === 'function') {
293
+ onSuccess();
412
294
  }
295
+ }
413
296
  });
414
- /**
415
- * Listen to document update events. If you edit a related document from a drawer and save it, this event
416
- * will be triggered. We then need up update the label of this relationship input, as the useAsLabel field could have changed.
417
- *
418
- * We listen to this event instead of using the onSave callback on the document drawer, as the onSave callback is not triggered
419
- * when you save a document from a drawer opened by a *different* relationship (or any other) field.
420
- */ useEffect(()=>{
421
- if (mostRecentUpdate) {
422
- handleDocumentUpdateEvent(mostRecentUpdate);
423
- }
424
- }, [
425
- mostRecentUpdate
426
- ]);
427
- const onDuplicate = useCallback((args)=>{
428
- dispatchOptions({
297
+ }, [permissions, queueTask, relationTo, errorLoading, search, getEntityConfig, sortOptions, maxResultsPerRequest, locale, serverURL, api, i18n, config, t]);
298
+ const updateSearch = useDebouncedCallback(({
299
+ hasMany: hasManyArg_0,
300
+ search: searchArg_0,
301
+ value: value_0
302
+ }) => {
303
+ updateResultsEffectEvent({
304
+ filterOptions,
305
+ lastLoadedPage: {},
306
+ onSuccess: () => {
307
+ setIsLoading(false);
308
+ },
309
+ search: searchArg_0,
310
+ sort: true,
311
+ ...(hasManyArg_0 === true ? {
312
+ hasMany: hasManyArg_0,
313
+ value: value_0
314
+ } : {
315
+ hasMany: hasManyArg_0,
316
+ value: value_0
317
+ })
318
+ });
319
+ setSearch(searchArg_0);
320
+ }, 300);
321
+ const handleInputChange = useCallback(options_0 => {
322
+ if (search !== options_0.search) {
323
+ setIsLoading(true);
324
+ setLastLoadedPage({});
325
+ updateSearch(options_0);
326
+ }
327
+ }, [search, updateSearch]);
328
+ const handleValueChange = useEffectEvent(({
329
+ hasMany: hasManyArg_1,
330
+ value: value_1
331
+ }) => {
332
+ const relationMap_0 = createRelationMap(hasManyArg_1 === true ? {
333
+ hasMany: hasManyArg_1,
334
+ relationTo,
335
+ value: value_1
336
+ } : {
337
+ hasMany: hasManyArg_1,
338
+ relationTo,
339
+ value: value_1
340
+ });
341
+ void Object.entries(relationMap_0).reduce(async (priorRelation_0, [relation_1, ids]) => {
342
+ await priorRelation_0;
343
+ const idsToLoad = ids.filter(id => {
344
+ return !options.find(optionGroup => optionGroup?.options?.find(option => option.value === id && option.relationTo === relation_1));
345
+ });
346
+ if (idsToLoad.length > 0) {
347
+ const collection_0 = getEntityConfig({
348
+ collectionSlug: relation_1
349
+ });
350
+ const fieldToSelect = collection_0?.admin?.useAsTitle || 'id';
351
+ const query_0 = {
352
+ depth: 0,
353
+ draft: true,
354
+ limit: idsToLoad.length,
355
+ locale,
356
+ select: {
357
+ [fieldToSelect]: true
358
+ },
359
+ where: {
360
+ id: {
361
+ in: idsToLoad
362
+ }
363
+ }
364
+ };
365
+ if (!errorLoading) {
366
+ const response_0 = await fetch(`${serverURL}${api}/${relation_1}`, {
367
+ body: qs.stringify(query_0),
368
+ credentials: 'include',
369
+ headers: {
370
+ 'Accept-Language': i18n.language,
371
+ 'Content-Type': 'application/x-www-form-urlencoded',
372
+ 'X-Payload-HTTP-Method-Override': 'GET'
373
+ },
374
+ method: 'POST'
375
+ });
376
+ let docs = [];
377
+ if (response_0.ok) {
378
+ const data_0 = await response_0.json();
379
+ docs = data_0.docs;
380
+ }
381
+ dispatchOptions({
429
382
  type: 'ADD',
430
- collection: args.collectionConfig,
383
+ collection: collection_0,
431
384
  config,
432
- docs: [
433
- args.doc
434
- ],
385
+ docs,
435
386
  i18n,
387
+ ids: idsToLoad,
436
388
  sort: true
437
- });
438
- if (hasMany) {
439
- onChange(value ? value.concat({
440
- relationTo: args.collectionConfig.slug,
441
- value: args.doc.id
442
- }) : null);
443
- } else if (hasMany === false) {
444
- onChange({
445
- relationTo: args.collectionConfig.slug,
446
- value: args.doc.id
447
- });
389
+ });
448
390
  }
449
- }, [
450
- i18n,
451
- config,
391
+ }
392
+ }, Promise.resolve());
393
+ });
394
+ const {
395
+ mostRecentUpdate
396
+ } = useDocumentEvents();
397
+ const handleDocumentUpdateEvent = useEffectEvent(mostRecentUpdate_0 => {
398
+ if (!value) {
399
+ return false;
400
+ }
401
+ const docID = mostRecentUpdate_0.doc.id;
402
+ let isMatchingUpdate = false;
403
+ if (mostRecentUpdate_0.operation === 'update') {
404
+ if (hasMany === true) {
405
+ const currentValue = Array.isArray(value) ? value : [value];
406
+ isMatchingUpdate = currentValue.some(option_0 => {
407
+ return option_0.value === docID && option_0.relationTo === mostRecentUpdate_0.entitySlug;
408
+ });
409
+ } else if (hasMany === false) {
410
+ isMatchingUpdate = value?.value === docID && value?.relationTo === mostRecentUpdate_0.entitySlug;
411
+ }
412
+ } else if (mostRecentUpdate_0.operation === 'create') {
413
+ // "Create New" drawer operations on the same level as this drawer should
414
+ // set the value to the newly created document.
415
+ // See test "should create document within document drawer > has one"
416
+ isMatchingUpdate = mostRecentUpdate_0.drawerSlug === drawerSlug;
417
+ }
418
+ if (!isMatchingUpdate) {
419
+ return;
420
+ }
421
+ const collectionConfig = getEntityConfig({
422
+ collectionSlug: mostRecentUpdate_0.entitySlug
423
+ });
424
+ dispatchOptions({
425
+ type: 'UPDATE',
426
+ collection: collectionConfig,
427
+ config,
428
+ doc: mostRecentUpdate_0.doc,
429
+ i18n
430
+ });
431
+ if (hasMany) {
432
+ const currentValue_0 = value ? Array.isArray(value) ? value : [value] : [];
433
+ const valuesToSet = currentValue_0.map(option_1 => {
434
+ return {
435
+ relationTo: option_1.value === docID ? mostRecentUpdate_0.entitySlug : option_1.relationTo,
436
+ value: option_1.value
437
+ };
438
+ });
439
+ onChange(valuesToSet);
440
+ } else if (hasMany === false) {
441
+ onChange({
442
+ relationTo: mostRecentUpdate_0.entitySlug,
443
+ value: docID
444
+ });
445
+ }
446
+ });
447
+ /**
448
+ * Listen to document update events. If you edit a related document from a drawer and save it, this event
449
+ * will be triggered. We then need up update the label of this relationship input, as the useAsLabel field could have changed.
450
+ *
451
+ * We listen to this event instead of using the onSave callback on the document drawer, as the onSave callback is not triggered
452
+ * when you save a document from a drawer opened by a *different* relationship (or any other) field.
453
+ */
454
+ useEffect(() => {
455
+ if (mostRecentUpdate) {
456
+ handleDocumentUpdateEvent(mostRecentUpdate);
457
+ }
458
+ }, [mostRecentUpdate]);
459
+ const onDuplicate = useCallback(args => {
460
+ dispatchOptions({
461
+ type: 'ADD',
462
+ collection: args.collectionConfig,
463
+ config,
464
+ docs: [args.doc],
465
+ i18n,
466
+ sort: true
467
+ });
468
+ if (hasMany) {
469
+ onChange(value ? value.concat({
470
+ relationTo: args.collectionConfig.slug,
471
+ value: args.doc.id
472
+ }) : null);
473
+ } else if (hasMany === false) {
474
+ onChange({
475
+ relationTo: args.collectionConfig.slug,
476
+ value: args.doc.id
477
+ });
478
+ }
479
+ }, [i18n, config, hasMany, onChange, value]);
480
+ const onDelete = useCallback(args_0 => {
481
+ dispatchOptions({
482
+ id: args_0.id,
483
+ type: 'REMOVE',
484
+ collection: args_0.collectionConfig,
485
+ config,
486
+ i18n
487
+ });
488
+ if (hasMany) {
489
+ onChange(value ? value.filter(option_2 => {
490
+ return option_2.value !== args_0.id;
491
+ }) : null);
492
+ } else {
493
+ onChange(null);
494
+ }
495
+ return;
496
+ }, [i18n, config, hasMany, onChange, value]);
497
+ const filterOption = useCallback((item, searchFilter) => {
498
+ if (!searchFilter) {
499
+ return true;
500
+ }
501
+ const r = wordBoundariesRegex(searchFilter || '');
502
+ // breaking the labels to search into smaller parts increases performance
503
+ const breakApartThreshold = 250;
504
+ let labelString = String(item.label);
505
+ // strings less than breakApartThreshold length won't be chunked
506
+ while (labelString.length > breakApartThreshold) {
507
+ // slicing by the next space after the length of the search input prevents slicing the string up by partial words
508
+ const indexOfSpace = labelString.indexOf(' ', searchFilter.length);
509
+ if (r.test(labelString.slice(0, indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1))) {
510
+ return true;
511
+ }
512
+ labelString = labelString.slice(indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1);
513
+ }
514
+ return r.test(labelString.slice(-breakApartThreshold));
515
+ }, []);
516
+ const onDocumentOpen = useCallback(({
517
+ id: id_0,
518
+ collectionSlug: collectionSlug_0,
519
+ hasReadPermission,
520
+ openInNewTab
521
+ }) => {
522
+ if (openInNewTab) {
523
+ if (hasReadPermission && id_0 && collectionSlug_0) {
524
+ const docUrl = formatAdminURL({
525
+ adminRoute: config.routes.admin,
526
+ path: `/collections/${collectionSlug_0}/${id_0}`
527
+ });
528
+ window.open(docUrl, '_blank');
529
+ }
530
+ } else {
531
+ openDrawerWhenRelationChanges.current = true;
532
+ setCurrentlyOpenRelationship({
533
+ id: id_0,
534
+ collectionSlug: collectionSlug_0,
535
+ hasReadPermission
536
+ });
537
+ }
538
+ }, [config.routes.admin]);
539
+ const updateResultsEffectEvent = useEffectEvent(args_1 => {
540
+ return updateResults(args_1);
541
+ });
542
+ // When (`relationTo` || `filterOptions` || `locale`) changes, reset component
543
+ // Note - effect should not run on first run
544
+ useEffect(() => {
545
+ // If the menu is open while filterOptions changes
546
+ // due to latency of form state and fast clicking into this field,
547
+ // re-fetch options
548
+ if (hasLoadedFirstPageRef.current && menuIsOpen) {
549
+ setIsLoading(true);
550
+ void updateResultsEffectEvent({
551
+ filterOptions,
552
+ lastLoadedPage: {},
553
+ onSuccess: () => {
554
+ hasLoadedFirstPageRef.current = true;
555
+ setIsLoading(false);
556
+ },
557
+ ...(hasMany === true ? {
558
+ hasMany,
559
+ value: valueRef.current
560
+ } : {
561
+ hasMany,
562
+ value: valueRef.current
563
+ })
564
+ });
565
+ }
566
+ // If the menu is not open, still reset the field state
567
+ // because we need to get new options next time the menu opens
568
+ dispatchOptions({
569
+ type: 'CLEAR',
570
+ exemptValues: valueRef.current
571
+ });
572
+ setLastFullyLoadedRelation(-1);
573
+ setLastLoadedPage({});
574
+ }, [relationTo, filterOptions, locale, path, menuIsOpen, hasMany]);
575
+ const prevValue = useRef(value);
576
+ const isFirstRenderRef = useRef(true);
577
+ // ///////////////////////////////////
578
+ // Ensure we have an option for each value
579
+ // ///////////////////////////////////
580
+ useEffect(() => {
581
+ if (isFirstRenderRef.current || !dequal(value, prevValue.current)) {
582
+ handleValueChange(hasMany === true ? {
452
583
  hasMany,
453
- onChange,
454
584
  value
455
- ]);
456
- const onDelete = useCallback((args)=>{
457
- dispatchOptions({
458
- id: args.id,
459
- type: 'REMOVE',
460
- collection: args.collectionConfig,
461
- config,
462
- i18n
463
- });
464
- if (hasMany) {
465
- onChange(value ? value.filter((option)=>{
466
- return option.value !== args.id;
467
- }) : null);
468
- } else {
469
- onChange(null);
470
- }
471
- return;
472
- }, [
473
- i18n,
474
- config,
585
+ } : {
475
586
  hasMany,
476
- onChange,
477
587
  value
478
- ]);
479
- const filterOption = useCallback((item, searchFilter)=>{
480
- if (!searchFilter) {
481
- return true;
482
- }
483
- const r = wordBoundariesRegex(searchFilter || '');
484
- // breaking the labels to search into smaller parts increases performance
485
- const breakApartThreshold = 250;
486
- let labelString = String(item.label);
487
- // strings less than breakApartThreshold length won't be chunked
488
- while(labelString.length > breakApartThreshold){
489
- // slicing by the next space after the length of the search input prevents slicing the string up by partial words
490
- const indexOfSpace = labelString.indexOf(' ', searchFilter.length);
491
- if (r.test(labelString.slice(0, indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1))) {
492
- return true;
588
+ });
589
+ }
590
+ isFirstRenderRef.current = false;
591
+ prevValue.current = value;
592
+ }, [value, hasMany]);
593
+ // Determine if we should switch to word boundary search
594
+ useEffect(() => {
595
+ const relations_0 = Array.isArray(relationTo) ? relationTo : [relationTo];
596
+ const isIdOnly = relations_0.reduce((idOnly, relation_2) => {
597
+ const collection_1 = getEntityConfig({
598
+ collectionSlug: relation_2
599
+ });
600
+ const fieldToSearch_0 = collection_1?.admin?.useAsTitle || 'id';
601
+ return fieldToSearch_0 === 'id' && idOnly;
602
+ }, true);
603
+ setEnableWordBoundarySearch(!isIdOnly);
604
+ }, [relationTo, getEntityConfig]);
605
+ useEffect(() => {
606
+ if (openDrawerWhenRelationChanges.current) {
607
+ openDrawer();
608
+ openDrawerWhenRelationChanges.current = false;
609
+ }
610
+ }, [openDrawer, currentlyOpenRelationship]);
611
+ useEffect(() => {
612
+ // needed to sync the ref value when other fields influence the value
613
+ // i.e. when a drawer is opened and the value is set
614
+ valueRef.current = value;
615
+ }, [value]);
616
+ const valueToRender = findOptionsByValue({
617
+ allowEdit,
618
+ options,
619
+ value
620
+ });
621
+ if (!Array.isArray(valueToRender) && valueToRender?.value === 'null') {
622
+ valueToRender.value = null;
623
+ }
624
+ return /*#__PURE__*/_jsxs("div", {
625
+ className: [fieldBaseClass, baseClass, className, showError && 'error', errorLoading && 'error-loading', readOnly && `${baseClass}--read-only`, !readOnly && allowCreate && `${baseClass}--allow-create`].filter(Boolean).join(' '),
626
+ id: `field-${path.replace(/\./g, '__')}`,
627
+ style: style,
628
+ children: [/*#__PURE__*/_jsx(RenderCustomComponent, {
629
+ CustomComponent: Label,
630
+ Fallback: /*#__PURE__*/_jsx(FieldLabel, {
631
+ label: label,
632
+ localized: localized,
633
+ path: path,
634
+ required: required
635
+ })
636
+ }), /*#__PURE__*/_jsxs("div", {
637
+ className: `${fieldBaseClass}__wrap`,
638
+ children: [/*#__PURE__*/_jsx(RenderCustomComponent, {
639
+ CustomComponent: Error,
640
+ Fallback: /*#__PURE__*/_jsx(FieldError, {
641
+ path: path,
642
+ showError: showError
643
+ })
644
+ }), BeforeInput, errorLoading ? /*#__PURE__*/_jsx("div", {
645
+ className: `${baseClass}__error-loading`,
646
+ children: errorLoading
647
+ }) : /*#__PURE__*/_jsxs("div", {
648
+ className: `${baseClass}__wrap`,
649
+ children: [/*#__PURE__*/_jsx(ReactSelect, {
650
+ backspaceRemovesValue: !(isDrawerOpen || isListDrawerOpen),
651
+ components: {
652
+ MultiValueLabel,
653
+ SingleValue,
654
+ ...(appearance !== 'select' && {
655
+ DropdownIndicator: null
656
+ })
657
+ },
658
+ customProps: {
659
+ disableKeyDown: isDrawerOpen || isListDrawerOpen,
660
+ disableMouseDown: isDrawerOpen || isListDrawerOpen,
661
+ onDocumentOpen
662
+ },
663
+ disabled: readOnly || isDrawerOpen || isListDrawerOpen,
664
+ filterOption: enableWordBoundarySearch ? filterOption : undefined,
665
+ getOptionValue: option_3 => {
666
+ if (!option_3) {
667
+ return undefined;
493
668
  }
494
- labelString = labelString.slice(indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1);
495
- }
496
- return r.test(labelString.slice(-breakApartThreshold));
497
- }, []);
498
- const onDocumentOpen = useCallback(({ id, collectionSlug, hasReadPermission, openInNewTab })=>{
499
- if (openInNewTab) {
500
- if (hasReadPermission && id && collectionSlug) {
501
- const docUrl = formatAdminURL({
502
- adminRoute: config.routes.admin,
503
- path: `/collections/${collectionSlug}/${id}`
504
- });
505
- window.open(docUrl, '_blank');
669
+ return hasMany && Array.isArray(relationTo) ? `${option_3.relationTo}_${option_3.value}` : option_3.value;
670
+ },
671
+ isLoading: appearance === 'select' && isLoading,
672
+ isMulti: hasMany,
673
+ isSearchable: appearance === 'select',
674
+ isSortable: isSortable,
675
+ menuIsOpen: appearance === 'select' ? menuIsOpen : false,
676
+ onChange: !readOnly ? selected => {
677
+ if (hasMany) {
678
+ if (selected === null) {
679
+ valueRef.current = [];
680
+ onChange([]);
681
+ } else {
682
+ valueRef.current = selected;
683
+ onChange(selected);
684
+ }
685
+ } else if (hasMany === false) {
686
+ if (selected === null) {
687
+ valueRef.current = null;
688
+ onChange(null);
689
+ } else {
690
+ valueRef.current = selected;
691
+ onChange(selected);
692
+ }
506
693
  }
507
- } else {
508
- openDrawerWhenRelationChanges.current = true;
509
- setCurrentlyOpenRelationship({
510
- id,
511
- collectionSlug,
512
- hasReadPermission
513
- });
514
- }
515
- }, [
516
- config.routes.admin
517
- ]);
518
- const updateResultsEffectEvent = useEffectEvent((args)=>{
519
- return updateResults(args);
520
- });
521
- // When (`relationTo` || `filterOptions` || `locale`) changes, reset component
522
- // Note - effect should not run on first run
523
- useEffect(()=>{
524
- // If the menu is open while filterOptions changes
525
- // due to latency of form state and fast clicking into this field,
526
- // re-fetch options
527
- if (hasLoadedFirstPageRef.current && menuIsOpen) {
528
- setIsLoading(true);
529
- void updateResultsEffectEvent({
530
- filterOptions,
531
- lastLoadedPage: {},
532
- onSuccess: ()=>{
694
+ } : undefined,
695
+ onInputChange: newSearch => handleInputChange({
696
+ search: newSearch,
697
+ ...(hasMany === true ? {
698
+ hasMany,
699
+ value
700
+ } : {
701
+ hasMany,
702
+ value
703
+ })
704
+ }),
705
+ onMenuClose: () => {
706
+ setMenuIsOpen(false);
707
+ },
708
+ onMenuOpen: () => {
709
+ if (appearance === 'drawer') {
710
+ openListDrawer();
711
+ } else if (appearance === 'select') {
712
+ setMenuIsOpen(true);
713
+ if (!hasLoadedFirstPageRef.current) {
714
+ setIsLoading(true);
715
+ updateResultsEffectEvent({
716
+ filterOptions,
717
+ lastLoadedPage: {},
718
+ onSuccess: () => {
533
719
  hasLoadedFirstPageRef.current = true;
534
720
  setIsLoading(false);
535
- },
536
- ...hasMany === true ? {
721
+ },
722
+ ...(hasMany === true ? {
537
723
  hasMany,
538
- value: valueRef.current
539
- } : {
724
+ value
725
+ } : {
540
726
  hasMany,
541
- value: valueRef.current
542
- }
543
- });
544
- }
545
- // If the menu is not open, still reset the field state
546
- // because we need to get new options next time the menu opens
547
- dispatchOptions({
548
- type: 'CLEAR',
549
- exemptValues: valueRef.current
550
- });
551
- setLastFullyLoadedRelation(-1);
552
- setLastLoadedPage({});
553
- }, [
554
- relationTo,
555
- filterOptions,
556
- locale,
557
- path,
558
- menuIsOpen,
559
- hasMany
560
- ]);
561
- const prevValue = useRef(value);
562
- const isFirstRenderRef = useRef(true);
563
- // ///////////////////////////////////
564
- // Ensure we have an option for each value
565
- // ///////////////////////////////////
566
- useEffect(()=>{
567
- if (isFirstRenderRef.current || !dequal(value, prevValue.current)) {
568
- handleValueChange(hasMany === true ? {
727
+ value
728
+ })
729
+ });
730
+ }
731
+ }
732
+ },
733
+ onMenuScrollToBottom: () => {
734
+ setIsLoading(true);
735
+ updateResultsEffectEvent({
736
+ filterOptions,
737
+ lastFullyLoadedRelation,
738
+ lastLoadedPage,
739
+ onSuccess: () => {
740
+ setIsLoading(false);
741
+ },
742
+ search,
743
+ sort: false,
744
+ ...(hasMany === true ? {
569
745
  hasMany,
570
- value
571
- } : {
746
+ value: initialValue
747
+ } : {
572
748
  hasMany,
573
- value
574
- });
575
- }
576
- isFirstRenderRef.current = false;
577
- prevValue.current = value;
578
- }, [
579
- value,
580
- hasMany
581
- ]);
582
- // Determine if we should switch to word boundary search
583
- useEffect(()=>{
584
- const relations = Array.isArray(relationTo) ? relationTo : [
585
- relationTo
586
- ];
587
- const isIdOnly = relations.reduce((idOnly, relation)=>{
588
- const collection = getEntityConfig({
589
- collectionSlug: relation
749
+ value: initialValue
750
+ })
590
751
  });
591
- const fieldToSearch = collection?.admin?.useAsTitle || 'id';
592
- return fieldToSearch === 'id' && idOnly;
593
- }, true);
594
- setEnableWordBoundarySearch(!isIdOnly);
595
- }, [
596
- relationTo,
597
- getEntityConfig
598
- ]);
599
- useEffect(()=>{
600
- if (openDrawerWhenRelationChanges.current) {
601
- openDrawer();
602
- openDrawerWhenRelationChanges.current = false;
603
- }
604
- }, [
605
- openDrawer,
606
- currentlyOpenRelationship
607
- ]);
608
- useEffect(()=>{
609
- // needed to sync the ref value when other fields influence the value
610
- // i.e. when a drawer is opened and the value is set
611
- valueRef.current = value;
612
- }, [
613
- value
614
- ]);
615
- const valueToRender = findOptionsByValue({
616
- allowEdit,
617
- options,
618
- value
619
- });
620
- if (!Array.isArray(valueToRender) && valueToRender?.value === 'null') {
621
- valueToRender.value = null;
622
- }
623
- return /*#__PURE__*/ _jsxDEV("div", {
624
- className: [
625
- fieldBaseClass,
626
- baseClass,
627
- className,
628
- showError && 'error',
629
- errorLoading && 'error-loading',
630
- readOnly && `${baseClass}--read-only`,
631
- !readOnly && allowCreate && `${baseClass}--allow-create`
632
- ].filter(Boolean).join(' '),
633
- id: `field-${path.replace(/\./g, '__')}`,
634
- style: style,
635
- children: [
636
- /*#__PURE__*/ _jsxDEV(RenderCustomComponent, {
637
- CustomComponent: Label,
638
- Fallback: /*#__PURE__*/ _jsxDEV(FieldLabel, {
639
- label: label,
640
- localized: localized,
641
- path: path,
642
- required: required
643
- }, void 0, false, {
644
- fileName: "src/fields/Relationship/Input.tsx",
645
- lineNumber: 755,
646
- columnNumber: 11
647
- }, void 0)
648
- }, void 0, false, {
649
- fileName: "src/fields/Relationship/Input.tsx",
650
- lineNumber: 752,
651
- columnNumber: 7
652
- }, this),
653
- /*#__PURE__*/ _jsxDEV("div", {
654
- className: `${fieldBaseClass}__wrap`,
655
- children: [
656
- /*#__PURE__*/ _jsxDEV(RenderCustomComponent, {
657
- CustomComponent: Error,
658
- Fallback: /*#__PURE__*/ _jsxDEV(FieldError, {
659
- path: path,
660
- showError: showError
661
- }, void 0, false, {
662
- fileName: "src/fields/Relationship/Input.tsx",
663
- lineNumber: 761,
664
- columnNumber: 21
665
- }, void 0)
666
- }, void 0, false, {
667
- fileName: "src/fields/Relationship/Input.tsx",
668
- lineNumber: 759,
669
- columnNumber: 9
670
- }, this),
671
- BeforeInput,
672
- errorLoading ? /*#__PURE__*/ _jsxDEV("div", {
673
- className: `${baseClass}__error-loading`,
674
- children: errorLoading
675
- }, void 0, false, {
676
- fileName: "src/fields/Relationship/Input.tsx",
677
- lineNumber: 765,
678
- columnNumber: 11
679
- }, this) : /*#__PURE__*/ _jsxDEV("div", {
680
- className: `${baseClass}__wrap`,
681
- children: [
682
- /*#__PURE__*/ _jsxDEV(ReactSelect, {
683
- backspaceRemovesValue: !(isDrawerOpen || isListDrawerOpen),
684
- components: {
685
- MultiValueLabel,
686
- SingleValue,
687
- ...appearance !== 'select' && {
688
- DropdownIndicator: null
689
- }
690
- },
691
- customProps: {
692
- disableKeyDown: isDrawerOpen || isListDrawerOpen,
693
- disableMouseDown: isDrawerOpen || isListDrawerOpen,
694
- onDocumentOpen
695
- },
696
- disabled: readOnly || isDrawerOpen || isListDrawerOpen,
697
- filterOption: enableWordBoundarySearch ? filterOption : undefined,
698
- getOptionValue: (option)=>{
699
- if (!option) {
700
- return undefined;
701
- }
702
- return hasMany && Array.isArray(relationTo) ? `${option.relationTo}_${option.value}` : option.value;
703
- },
704
- isLoading: appearance === 'select' && isLoading,
705
- isMulti: hasMany,
706
- isSearchable: appearance === 'select',
707
- isSortable: isSortable,
708
- menuIsOpen: appearance === 'select' ? menuIsOpen : false,
709
- onChange: !readOnly ? (selected)=>{
710
- if (hasMany) {
711
- if (selected === null) {
712
- valueRef.current = [];
713
- onChange([]);
714
- } else {
715
- valueRef.current = selected;
716
- onChange(selected);
717
- }
718
- } else if (hasMany === false) {
719
- if (selected === null) {
720
- valueRef.current = null;
721
- onChange(null);
722
- } else {
723
- valueRef.current = selected;
724
- onChange(selected);
725
- }
726
- }
727
- } : undefined,
728
- onInputChange: (newSearch)=>handleInputChange({
729
- search: newSearch,
730
- ...hasMany === true ? {
731
- hasMany,
732
- value
733
- } : {
734
- hasMany,
735
- value
736
- }
737
- }),
738
- onMenuClose: ()=>{
739
- setMenuIsOpen(false);
740
- },
741
- onMenuOpen: ()=>{
742
- if (appearance === 'drawer') {
743
- openListDrawer();
744
- } else if (appearance === 'select') {
745
- setMenuIsOpen(true);
746
- if (!hasLoadedFirstPageRef.current) {
747
- setIsLoading(true);
748
- updateResultsEffectEvent({
749
- filterOptions,
750
- lastLoadedPage: {},
751
- onSuccess: ()=>{
752
- hasLoadedFirstPageRef.current = true;
753
- setIsLoading(false);
754
- },
755
- ...hasMany === true ? {
756
- hasMany,
757
- value
758
- } : {
759
- hasMany,
760
- value
761
- }
762
- });
763
- }
764
- }
765
- },
766
- onMenuScrollToBottom: ()=>{
767
- setIsLoading(true);
768
- updateResultsEffectEvent({
769
- filterOptions,
770
- lastFullyLoadedRelation,
771
- lastLoadedPage,
772
- onSuccess: ()=>{
773
- setIsLoading(false);
774
- },
775
- search,
776
- sort: false,
777
- ...hasMany === true ? {
778
- hasMany,
779
- value: initialValue
780
- } : {
781
- hasMany,
782
- value: initialValue
783
- }
784
- });
785
- },
786
- options: typeof formatDisplayedOptions === 'function' ? formatDisplayedOptions(options) : options,
787
- placeholder: placeholder,
788
- showError: showError,
789
- value: valueToRender ?? null
790
- }, void 0, false, {
791
- fileName: "src/fields/Relationship/Input.tsx",
792
- lineNumber: 768,
793
- columnNumber: 13
794
- }, this),
795
- !readOnly && allowCreate && /*#__PURE__*/ _jsxDEV(AddNewRelation, {
796
- path: path,
797
- relationTo: relationTo,
798
- ...hasMany === true ? {
799
- hasMany,
800
- onChange,
801
- value
802
- } : {
803
- hasMany,
804
- onChange,
805
- value
806
- }
807
- }, void 0, false, {
808
- fileName: "src/fields/Relationship/Input.tsx",
809
- lineNumber: 894,
810
- columnNumber: 15
811
- }, this)
812
- ]
813
- }, void 0, true, {
814
- fileName: "src/fields/Relationship/Input.tsx",
815
- lineNumber: 767,
816
- columnNumber: 11
817
- }, this),
818
- AfterInput,
819
- /*#__PURE__*/ _jsxDEV(RenderCustomComponent, {
820
- CustomComponent: Description,
821
- Fallback: /*#__PURE__*/ _jsxDEV(FieldDescription, {
822
- description: description,
823
- path: path
824
- }, void 0, false, {
825
- fileName: "src/fields/Relationship/Input.tsx",
826
- lineNumber: 915,
827
- columnNumber: 21
828
- }, void 0)
829
- }, void 0, false, {
830
- fileName: "src/fields/Relationship/Input.tsx",
831
- lineNumber: 913,
832
- columnNumber: 9
833
- }, this)
834
- ]
835
- }, void 0, true, {
836
- fileName: "src/fields/Relationship/Input.tsx",
837
- lineNumber: 758,
838
- columnNumber: 7
839
- }, this),
840
- currentlyOpenRelationship.collectionSlug && currentlyOpenRelationship.hasReadPermission && /*#__PURE__*/ _jsxDEV(DocumentDrawer, {
841
- onDelete: onDelete,
842
- onDuplicate: onDuplicate
843
- }, void 0, false, {
844
- fileName: "src/fields/Relationship/Input.tsx",
845
- lineNumber: 919,
846
- columnNumber: 9
847
- }, this),
848
- appearance === 'drawer' && !readOnly && /*#__PURE__*/ _jsxDEV(ListDrawer, {
849
- allowCreate: allowCreate,
850
- enableRowSelections: false,
851
- onSelect: onListSelect
852
- }, void 0, false, {
853
- fileName: "src/fields/Relationship/Input.tsx",
854
- lineNumber: 922,
855
- columnNumber: 9
856
- }, this)
857
- ]
858
- }, void 0, true, {
859
- fileName: "src/fields/Relationship/Input.tsx",
860
- lineNumber: 737,
861
- columnNumber: 5
862
- }, this);
752
+ },
753
+ options: typeof formatDisplayedOptions === 'function' ? formatDisplayedOptions(options) : options,
754
+ placeholder: placeholder,
755
+ showError: showError,
756
+ value: valueToRender ?? null
757
+ }), !readOnly && allowCreate && /*#__PURE__*/_jsx(AddNewRelation, {
758
+ path: path,
759
+ relationTo: relationTo,
760
+ ...(hasMany === true ? {
761
+ hasMany,
762
+ onChange,
763
+ value
764
+ } : {
765
+ hasMany,
766
+ onChange,
767
+ value
768
+ })
769
+ })]
770
+ }), AfterInput, /*#__PURE__*/_jsx(RenderCustomComponent, {
771
+ CustomComponent: Description,
772
+ Fallback: /*#__PURE__*/_jsx(FieldDescription, {
773
+ description: description,
774
+ path: path
775
+ })
776
+ })]
777
+ }), currentlyOpenRelationship.collectionSlug && currentlyOpenRelationship.hasReadPermission && /*#__PURE__*/_jsx(DocumentDrawer, {
778
+ onDelete: onDelete,
779
+ onDuplicate: onDuplicate
780
+ }), appearance === 'drawer' && !readOnly && /*#__PURE__*/_jsx(ListDrawer, {
781
+ allowCreate: allowCreate,
782
+ enableRowSelections: false,
783
+ onSelect: onListSelect
784
+ })]
785
+ });
863
786
  };
864
-
865
787
  //# sourceMappingURL=Input.js.map