@payloadcms/ui 3.0.0-canary.78bbed6 → 3.0.0-canary.79ab53e

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 (591) hide show
  1. package/dist/elements/AddNewRelation/index.js +1 -1
  2. package/dist/elements/AddNewRelation/index.js.map +1 -1
  3. package/dist/elements/AppHeader/index.js +45 -84
  4. package/dist/elements/AppHeader/index.js.map +1 -1
  5. package/dist/elements/Autosave/index.d.ts.map +1 -1
  6. package/dist/elements/Autosave/index.js +149 -228
  7. package/dist/elements/Autosave/index.js.map +1 -1
  8. package/dist/elements/Banner/index.d.ts.map +1 -1
  9. package/dist/elements/Banner/index.js +6 -2
  10. package/dist/elements/Banner/index.js.map +1 -1
  11. package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
  12. package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
  13. package/dist/elements/BulkUpload/ActionsBar/index.scss +4 -4
  14. package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
  15. package/dist/elements/BulkUpload/AddFilesView/index.js +45 -30
  16. package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
  17. package/dist/elements/BulkUpload/AddFilesView/index.scss +13 -0
  18. package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
  19. package/dist/elements/BulkUpload/AddingFilesView/index.js +7 -7
  20. package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
  21. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts.map +1 -1
  22. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +14 -17
  23. package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
  24. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts +1 -2
  25. package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts.map +1 -1
  26. package/dist/elements/BulkUpload/DrawerCloseButton/index.js +5 -8
  27. package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
  28. package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
  29. package/dist/elements/BulkUpload/EditForm/index.js +39 -32
  30. package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
  31. package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
  32. package/dist/elements/BulkUpload/FileSidebar/index.js +71 -59
  33. package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
  34. package/dist/elements/BulkUpload/FileSidebar/index.scss +16 -14
  35. package/dist/elements/BulkUpload/FormsManager/index.d.ts +4 -7
  36. package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
  37. package/dist/elements/BulkUpload/FormsManager/index.js +64 -36
  38. package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
  39. package/dist/elements/BulkUpload/Header/index.d.ts.map +1 -1
  40. package/dist/elements/BulkUpload/Header/index.js +1 -3
  41. package/dist/elements/BulkUpload/Header/index.js.map +1 -1
  42. package/dist/elements/BulkUpload/index.d.ts +21 -5
  43. package/dist/elements/BulkUpload/index.d.ts.map +1 -1
  44. package/dist/elements/BulkUpload/index.js +149 -52
  45. package/dist/elements/BulkUpload/index.js.map +1 -1
  46. package/dist/elements/Button/index.d.ts.map +1 -1
  47. package/dist/elements/Button/index.js +95 -219
  48. package/dist/elements/Button/index.js.map +1 -1
  49. package/dist/elements/Button/types.d.ts +2 -2
  50. package/dist/elements/Button/types.d.ts.map +1 -1
  51. package/dist/elements/Button/types.js.map +1 -1
  52. package/dist/elements/Card/index.d.ts +1 -1
  53. package/dist/elements/Card/index.d.ts.map +1 -1
  54. package/dist/elements/Card/index.js +2 -2
  55. package/dist/elements/Card/index.js.map +1 -1
  56. package/dist/elements/CodeEditor/index.js +1 -1
  57. package/dist/elements/CodeEditor/index.js.map +1 -1
  58. package/dist/elements/Collapsible/index.d.ts.map +1 -1
  59. package/dist/elements/Collapsible/index.js +44 -62
  60. package/dist/elements/Collapsible/index.js.map +1 -1
  61. package/dist/elements/Collapsible/index.scss +15 -28
  62. package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
  63. package/dist/elements/ColumnSelector/index.js +2 -2
  64. package/dist/elements/ColumnSelector/index.js.map +1 -1
  65. package/dist/elements/CopyToClipboard/index.js +20 -54
  66. package/dist/elements/CopyToClipboard/index.js.map +1 -1
  67. package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
  68. package/dist/elements/DatePicker/DatePicker.js.map +1 -1
  69. package/dist/elements/DatePicker/index.js +1 -1
  70. package/dist/elements/DatePicker/index.js.map +1 -1
  71. package/dist/elements/DeleteDocument/index.d.ts +9 -6
  72. package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
  73. package/dist/elements/DeleteDocument/index.js +65 -28
  74. package/dist/elements/DeleteDocument/index.js.map +1 -1
  75. package/dist/elements/DeleteDocument/index.scss +24 -11
  76. package/dist/elements/DeleteMany/index.d.ts.map +1 -1
  77. package/dist/elements/DeleteMany/index.js +26 -18
  78. package/dist/elements/DeleteMany/index.js.map +1 -1
  79. package/dist/elements/DeleteMany/index.scss +24 -5
  80. package/dist/elements/DocumentControls/index.d.ts +9 -1
  81. package/dist/elements/DocumentControls/index.d.ts.map +1 -1
  82. package/dist/elements/DocumentControls/index.js +26 -8
  83. package/dist/elements/DocumentControls/index.js.map +1 -1
  84. package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
  85. package/dist/elements/DocumentDrawer/DrawerContent.js +102 -37
  86. package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
  87. package/dist/elements/DocumentDrawer/index.js +1 -1
  88. package/dist/elements/DocumentDrawer/index.js.map +1 -1
  89. package/dist/elements/DocumentDrawer/types.d.ts +6 -0
  90. package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
  91. package/dist/elements/DocumentDrawer/types.js.map +1 -1
  92. package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
  93. package/dist/elements/DraggableSortable/index.js +2 -1
  94. package/dist/elements/DraggableSortable/index.js.map +1 -1
  95. package/dist/elements/Drawer/index.d.ts +1 -0
  96. package/dist/elements/Drawer/index.d.ts.map +1 -1
  97. package/dist/elements/Drawer/index.js +3 -3
  98. package/dist/elements/Drawer/index.js.map +1 -1
  99. package/dist/elements/Drawer/types.d.ts +1 -1
  100. package/dist/elements/Drawer/types.d.ts.map +1 -1
  101. package/dist/elements/Drawer/types.js.map +1 -1
  102. package/dist/elements/Dropzone/index.d.ts +3 -3
  103. package/dist/elements/Dropzone/index.d.ts.map +1 -1
  104. package/dist/elements/Dropzone/index.js +58 -145
  105. package/dist/elements/Dropzone/index.js.map +1 -1
  106. package/dist/elements/Dropzone/index.scss +6 -23
  107. package/dist/elements/DuplicateDocument/index.d.ts +6 -3
  108. package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
  109. package/dist/elements/DuplicateDocument/index.js +95 -137
  110. package/dist/elements/DuplicateDocument/index.js.map +1 -1
  111. package/dist/elements/DuplicateDocument/index.scss +25 -5
  112. package/dist/elements/EditMany/index.js +124 -230
  113. package/dist/elements/EditMany/index.js.map +1 -1
  114. package/dist/elements/EditUpload/index.d.ts.map +1 -1
  115. package/dist/elements/EditUpload/index.js +140 -201
  116. package/dist/elements/EditUpload/index.js.map +1 -1
  117. package/dist/elements/ErrorPill/index.d.ts.map +1 -1
  118. package/dist/elements/ErrorPill/index.js +3 -1
  119. package/dist/elements/ErrorPill/index.js.map +1 -1
  120. package/dist/elements/FieldSelect/index.d.ts.map +1 -1
  121. package/dist/elements/FieldSelect/index.js +3 -1
  122. package/dist/elements/FieldSelect/index.js.map +1 -1
  123. package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
  124. package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
  125. package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
  126. package/dist/elements/FileDetails/StaticFileDetails/index.js +0 -1
  127. package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
  128. package/dist/elements/FileDetails/StaticFileDetails/index.scss +1 -0
  129. package/dist/elements/GenerateConfirmation/index.d.ts.map +1 -1
  130. package/dist/elements/GenerateConfirmation/index.js +31 -24
  131. package/dist/elements/GenerateConfirmation/index.js.map +1 -1
  132. package/dist/elements/GenerateConfirmation/index.scss +24 -5
  133. package/dist/elements/ListControls/index.d.ts.map +1 -1
  134. package/dist/elements/ListControls/index.js +89 -200
  135. package/dist/elements/ListControls/index.js.map +1 -1
  136. package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
  137. package/dist/elements/ListDrawer/DrawerContent.js +311 -233
  138. package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
  139. package/dist/elements/ListDrawer/index.js +1 -1
  140. package/dist/elements/ListDrawer/index.js.map +1 -1
  141. package/dist/elements/ListDrawer/index.scss +7 -0
  142. package/dist/elements/Localizer/index.d.ts.map +1 -1
  143. package/dist/elements/Localizer/index.js +1 -1
  144. package/dist/elements/Localizer/index.js.map +1 -1
  145. package/dist/elements/Logout/index.js +1 -1
  146. package/dist/elements/Logout/index.js.map +1 -1
  147. package/dist/elements/Nav/context.js +47 -83
  148. package/dist/elements/Nav/context.js.map +1 -1
  149. package/dist/elements/Pagination/index.d.ts.map +1 -1
  150. package/dist/elements/Pagination/index.js +20 -10
  151. package/dist/elements/Pagination/index.js.map +1 -1
  152. package/dist/elements/PerPage/index.d.ts.map +1 -1
  153. package/dist/elements/PerPage/index.js.map +1 -1
  154. package/dist/elements/Pill/index.d.ts.map +1 -1
  155. package/dist/elements/Pill/index.js +11 -5
  156. package/dist/elements/Pill/index.js.map +1 -1
  157. package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
  158. package/dist/elements/Popup/PopupTrigger/index.js +3 -1
  159. package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
  160. package/dist/elements/Popup/index.d.ts.map +1 -1
  161. package/dist/elements/Popup/index.js +4 -2
  162. package/dist/elements/Popup/index.js.map +1 -1
  163. package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
  164. package/dist/elements/PreviewButton/usePreviewURL.js +18 -6
  165. package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
  166. package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
  167. package/dist/elements/PreviewSizes/index.js +15 -5
  168. package/dist/elements/PreviewSizes/index.js.map +1 -1
  169. package/dist/elements/PublishButton/index.d.ts.map +1 -1
  170. package/dist/elements/PublishButton/index.js +113 -48
  171. package/dist/elements/PublishButton/index.js.map +1 -1
  172. package/dist/elements/PublishMany/index.d.ts.map +1 -1
  173. package/dist/elements/PublishMany/index.js +25 -17
  174. package/dist/elements/PublishMany/index.js.map +1 -1
  175. package/dist/elements/PublishMany/index.scss +23 -4
  176. package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
  177. package/dist/elements/ReactSelect/DropdownIndicator/index.js +3 -1
  178. package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
  179. package/dist/elements/ReactSelect/index.d.ts.map +1 -1
  180. package/dist/elements/ReactSelect/index.js +5 -3
  181. package/dist/elements/ReactSelect/index.js.map +1 -1
  182. package/dist/elements/ReactSelect/types.d.ts +9 -2
  183. package/dist/elements/ReactSelect/types.d.ts.map +1 -1
  184. package/dist/elements/ReactSelect/types.js.map +1 -1
  185. package/dist/elements/SaveButton/index.d.ts.map +1 -1
  186. package/dist/elements/SaveButton/index.js +35 -84
  187. package/dist/elements/SaveButton/index.js.map +1 -1
  188. package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
  189. package/dist/elements/SaveDraftButton/index.js +63 -119
  190. package/dist/elements/SaveDraftButton/index.js.map +1 -1
  191. package/dist/elements/SearchFilter/index.d.ts.map +1 -1
  192. package/dist/elements/SearchFilter/index.js +45 -81
  193. package/dist/elements/SearchFilter/index.js.map +1 -1
  194. package/dist/elements/SelectRow/index.js +29 -20
  195. package/dist/elements/SelectRow/index.js.map +1 -1
  196. package/dist/elements/ShimmerEffect/index.d.ts +3 -3
  197. package/dist/elements/ShimmerEffect/index.d.ts.map +1 -1
  198. package/dist/elements/ShimmerEffect/index.js.map +1 -1
  199. package/dist/elements/SortColumn/index.d.ts +4 -4
  200. package/dist/elements/SortColumn/index.d.ts.map +1 -1
  201. package/dist/elements/SortColumn/index.js +22 -39
  202. package/dist/elements/SortColumn/index.js.map +1 -1
  203. package/dist/elements/SortComplex/index.d.ts.map +1 -1
  204. package/dist/elements/SortComplex/index.js.map +1 -1
  205. package/dist/elements/Status/index.d.ts.map +1 -1
  206. package/dist/elements/Status/index.js +43 -27
  207. package/dist/elements/Status/index.js.map +1 -1
  208. package/dist/elements/Status/index.scss +26 -7
  209. package/dist/elements/StepNav/index.d.ts +1 -1
  210. package/dist/elements/StepNav/index.d.ts.map +1 -1
  211. package/dist/elements/StepNav/index.js +2 -2
  212. package/dist/elements/StepNav/index.js.map +1 -1
  213. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -2
  214. package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
  215. package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
  216. package/dist/elements/Table/DefaultCell/fields/Code/index.js +1 -1
  217. package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
  218. package/dist/elements/Table/DefaultCell/fields/File/index.scss +5 -5
  219. package/dist/elements/Table/DefaultCell/fields/index.d.ts +1 -1
  220. package/dist/elements/Table/DefaultCell/fields/index.js +1 -1
  221. package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
  222. package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
  223. package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
  224. package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
  225. package/dist/elements/Table/index.d.ts +2 -2
  226. package/dist/elements/Table/index.d.ts.map +1 -1
  227. package/dist/elements/Table/index.js +21 -16
  228. package/dist/elements/Table/index.js.map +1 -1
  229. package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
  230. package/dist/elements/TableColumns/buildColumnState.js +16 -13
  231. package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
  232. package/dist/elements/TableColumns/index.d.ts.map +1 -1
  233. package/dist/elements/TableColumns/index.js +11 -33
  234. package/dist/elements/TableColumns/index.js.map +1 -1
  235. package/dist/elements/Thumbnail/index.d.ts +10 -6
  236. package/dist/elements/Thumbnail/index.d.ts.map +1 -1
  237. package/dist/elements/Thumbnail/index.js +84 -9
  238. package/dist/elements/Thumbnail/index.js.map +1 -1
  239. package/dist/elements/Tooltip/index.d.ts.map +1 -1
  240. package/dist/elements/Tooltip/index.js.map +1 -1
  241. package/dist/elements/Translation/index.d.ts.map +1 -1
  242. package/dist/elements/Translation/index.js +0 -2
  243. package/dist/elements/Translation/index.js.map +1 -1
  244. package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
  245. package/dist/elements/UnpublishMany/index.js +26 -18
  246. package/dist/elements/UnpublishMany/index.js.map +1 -1
  247. package/dist/elements/UnpublishMany/index.scss +23 -4
  248. package/dist/elements/Upload/index.d.ts.map +1 -1
  249. package/dist/elements/Upload/index.js +183 -302
  250. package/dist/elements/Upload/index.js.map +1 -1
  251. package/dist/elements/Upload/index.scss +38 -0
  252. package/dist/elements/ViewDescription/index.d.ts +1 -1
  253. package/dist/elements/ViewDescription/index.d.ts.map +1 -1
  254. package/dist/elements/ViewDescription/index.js.map +1 -1
  255. package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
  256. package/dist/elements/WhereBuilder/Condition/index.js +2 -1
  257. package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
  258. package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
  259. package/dist/elements/WhereBuilder/index.js +5 -8
  260. package/dist/elements/WhereBuilder/index.js.map +1 -1
  261. package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -1
  262. package/dist/elements/WhereBuilder/reduceClientFields.js +3 -1
  263. package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -1
  264. package/dist/elements/WhereBuilder/types.d.ts +1 -1
  265. package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
  266. package/dist/elements/WhereBuilder/types.js.map +1 -1
  267. package/dist/elements/WindowInfo/index.d.ts +2 -2
  268. package/dist/elements/WindowInfo/index.d.ts.map +1 -1
  269. package/dist/elements/WindowInfo/index.js +2 -2
  270. package/dist/elements/WindowInfo/index.js.map +1 -1
  271. package/dist/elements/WithServerSideProps/index.js.map +1 -1
  272. package/dist/exports/client/{CodeEditor-C4FLUUO7.js → CodeEditor-CHKRX3U2.js} +4 -4
  273. package/dist/exports/client/{CodeEditor-C4FLUUO7.js.map → CodeEditor-CHKRX3U2.js.map} +4 -4
  274. package/dist/exports/client/{DatePicker-E6IJFDN2.js → DatePicker-OLRZVTAD.js} +2 -2
  275. package/dist/exports/client/chunk-BGA6EPOL.js +14 -0
  276. package/dist/exports/client/chunk-BGA6EPOL.js.map +8 -0
  277. package/dist/exports/client/{chunk-OBXEO4WP.js → chunk-JINNHJP7.js} +1 -1
  278. package/dist/exports/client/{chunk-OBXEO4WP.js.map → chunk-JINNHJP7.js.map} +2 -2
  279. package/dist/exports/client/index.d.ts +5 -4
  280. package/dist/exports/client/index.d.ts.map +1 -1
  281. package/dist/exports/client/index.js +19 -19
  282. package/dist/exports/client/index.js.map +4 -4
  283. package/dist/exports/shared/index.d.ts +3 -2
  284. package/dist/exports/shared/index.d.ts.map +1 -1
  285. package/dist/exports/shared/index.js +2 -2
  286. package/dist/exports/shared/index.js.map +4 -4
  287. package/dist/fields/Array/ArrayRow.d.ts +1 -1
  288. package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
  289. package/dist/fields/Array/ArrayRow.js +6 -6
  290. package/dist/fields/Array/ArrayRow.js.map +1 -1
  291. package/dist/fields/Array/index.d.ts +11 -3
  292. package/dist/fields/Array/index.d.ts.map +1 -1
  293. package/dist/fields/Array/index.js +8 -5
  294. package/dist/fields/Array/index.js.map +1 -1
  295. package/dist/fields/Blocks/BlockRow.d.ts +2 -2
  296. package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
  297. package/dist/fields/Blocks/BlockRow.js +4 -4
  298. package/dist/fields/Blocks/BlockRow.js.map +1 -1
  299. package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
  300. package/dist/fields/Blocks/BlocksDrawer/index.js +3 -1
  301. package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
  302. package/dist/fields/Blocks/RowActions.d.ts +1 -1
  303. package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
  304. package/dist/fields/Blocks/RowActions.js +1 -1
  305. package/dist/fields/Blocks/RowActions.js.map +1 -1
  306. package/dist/fields/Blocks/index.d.ts +8 -2
  307. package/dist/fields/Blocks/index.d.ts.map +1 -1
  308. package/dist/fields/Blocks/index.js +2 -5
  309. package/dist/fields/Blocks/index.js.map +1 -1
  310. package/dist/fields/Checkbox/Input.d.ts +1 -1
  311. package/dist/fields/Checkbox/Input.d.ts.map +1 -1
  312. package/dist/fields/Checkbox/Input.js +3 -3
  313. package/dist/fields/Checkbox/Input.js.map +1 -1
  314. package/dist/fields/Checkbox/index.d.ts +16 -4
  315. package/dist/fields/Checkbox/index.d.ts.map +1 -1
  316. package/dist/fields/Checkbox/index.js +2 -2
  317. package/dist/fields/Checkbox/index.js.map +1 -1
  318. package/dist/fields/Checkbox/index.scss +13 -0
  319. package/dist/fields/Code/index.d.ts +9 -2
  320. package/dist/fields/Code/index.d.ts.map +1 -1
  321. package/dist/fields/Code/index.js +32 -37
  322. package/dist/fields/Code/index.js.map +1 -1
  323. package/dist/fields/Collapsible/index.d.ts +143 -2
  324. package/dist/fields/Collapsible/index.d.ts.map +1 -1
  325. package/dist/fields/Collapsible/index.js +49 -42
  326. package/dist/fields/Collapsible/index.js.map +1 -1
  327. package/dist/fields/DateTime/index.d.ts +9 -2
  328. package/dist/fields/DateTime/index.d.ts.map +1 -1
  329. package/dist/fields/DateTime/index.js +33 -38
  330. package/dist/fields/DateTime/index.js.map +1 -1
  331. package/dist/fields/Email/index.d.ts +10 -2
  332. package/dist/fields/Email/index.d.ts.map +1 -1
  333. package/dist/fields/Email/index.js +29 -33
  334. package/dist/fields/Email/index.js.map +1 -1
  335. package/dist/fields/FieldLabel/index.d.ts.map +1 -1
  336. package/dist/fields/FieldLabel/index.js +7 -1
  337. package/dist/fields/FieldLabel/index.js.map +1 -1
  338. package/dist/fields/Group/index.d.ts +8 -3
  339. package/dist/fields/Group/index.d.ts.map +1 -1
  340. package/dist/fields/Group/index.js +1 -1
  341. package/dist/fields/Group/index.js.map +1 -1
  342. package/dist/fields/JSON/index.d.ts +8 -2
  343. package/dist/fields/JSON/index.d.ts.map +1 -1
  344. package/dist/fields/JSON/index.js +17 -11
  345. package/dist/fields/JSON/index.js.map +1 -1
  346. package/dist/fields/Number/index.d.ts +9 -2
  347. package/dist/fields/Number/index.d.ts.map +1 -1
  348. package/dist/fields/Number/index.js +36 -41
  349. package/dist/fields/Number/index.js.map +1 -1
  350. package/dist/fields/Password/index.js +3 -3
  351. package/dist/fields/Password/index.js.map +1 -1
  352. package/dist/fields/Password/input.js +7 -7
  353. package/dist/fields/Password/input.js.map +1 -1
  354. package/dist/fields/Password/types.d.ts +5 -5
  355. package/dist/fields/Password/types.d.ts.map +1 -1
  356. package/dist/fields/Password/types.js.map +1 -1
  357. package/dist/fields/Point/index.d.ts +10 -3
  358. package/dist/fields/Point/index.d.ts.map +1 -1
  359. package/dist/fields/Point/index.js +2 -1
  360. package/dist/fields/Point/index.js.map +1 -1
  361. package/dist/fields/RadioGroup/Radio/index.d.ts +2 -2
  362. package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
  363. package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
  364. package/dist/fields/RadioGroup/index.d.ts +10 -2
  365. package/dist/fields/RadioGroup/index.d.ts.map +1 -1
  366. package/dist/fields/RadioGroup/index.js +36 -41
  367. package/dist/fields/RadioGroup/index.js.map +1 -1
  368. package/dist/fields/Relationship/createRelationMap.d.ts +1 -1
  369. package/dist/fields/Relationship/createRelationMap.d.ts.map +1 -1
  370. package/dist/fields/Relationship/createRelationMap.js.map +1 -1
  371. package/dist/fields/Relationship/index.d.ts +8 -2
  372. package/dist/fields/Relationship/index.d.ts.map +1 -1
  373. package/dist/fields/Relationship/index.js +418 -515
  374. package/dist/fields/Relationship/index.js.map +1 -1
  375. package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
  376. package/dist/fields/Relationship/optionsReducer.js +31 -1
  377. package/dist/fields/Relationship/optionsReducer.js.map +1 -1
  378. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts +6 -1
  379. package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
  380. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +45 -82
  381. package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
  382. package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +4 -0
  383. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts +6 -1
  384. package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
  385. package/dist/fields/Relationship/select-components/SingleValue/index.js +43 -92
  386. package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
  387. package/dist/fields/Relationship/select-components/SingleValue/index.scss +4 -0
  388. package/dist/fields/Relationship/types.d.ts +14 -5
  389. package/dist/fields/Relationship/types.d.ts.map +1 -1
  390. package/dist/fields/Relationship/types.js.map +1 -1
  391. package/dist/fields/RichText/index.d.ts +2 -2
  392. package/dist/fields/RichText/index.d.ts.map +1 -1
  393. package/dist/fields/RichText/index.js.map +1 -1
  394. package/dist/fields/Row/index.d.ts +9 -2
  395. package/dist/fields/Row/index.d.ts.map +1 -1
  396. package/dist/fields/Row/index.js.map +1 -1
  397. package/dist/fields/Row/index.scss +12 -2
  398. package/dist/fields/Select/Input.d.ts +5 -5
  399. package/dist/fields/Select/Input.d.ts.map +1 -1
  400. package/dist/fields/Select/Input.js +7 -7
  401. package/dist/fields/Select/Input.js.map +1 -1
  402. package/dist/fields/Select/index.d.ts +10 -2
  403. package/dist/fields/Select/index.d.ts.map +1 -1
  404. package/dist/fields/Select/index.js +11 -11
  405. package/dist/fields/Select/index.js.map +1 -1
  406. package/dist/fields/Tabs/index.d.ts +6 -2
  407. package/dist/fields/Tabs/index.d.ts.map +1 -1
  408. package/dist/fields/Tabs/index.js +1 -1
  409. package/dist/fields/Tabs/index.js.map +1 -1
  410. package/dist/fields/Text/Input.js +7 -7
  411. package/dist/fields/Text/Input.js.map +1 -1
  412. package/dist/fields/Text/index.d.ts +11 -3
  413. package/dist/fields/Text/index.d.ts.map +1 -1
  414. package/dist/fields/Text/index.js +4 -6
  415. package/dist/fields/Text/index.js.map +1 -1
  416. package/dist/fields/Text/types.d.ts +5 -5
  417. package/dist/fields/Text/types.d.ts.map +1 -1
  418. package/dist/fields/Text/types.js.map +1 -1
  419. package/dist/fields/Textarea/Input.js +7 -7
  420. package/dist/fields/Textarea/Input.js.map +1 -1
  421. package/dist/fields/Textarea/index.d.ts +13 -4
  422. package/dist/fields/Textarea/index.d.ts.map +1 -1
  423. package/dist/fields/Textarea/index.js +4 -6
  424. package/dist/fields/Textarea/index.js.map +1 -1
  425. package/dist/fields/Textarea/types.d.ts +5 -5
  426. package/dist/fields/Textarea/types.d.ts.map +1 -1
  427. package/dist/fields/Textarea/types.js.map +1 -1
  428. package/dist/fields/Upload/HasMany/index.d.ts +16 -2
  429. package/dist/fields/Upload/HasMany/index.d.ts.map +1 -1
  430. package/dist/fields/Upload/HasMany/index.js +154 -223
  431. package/dist/fields/Upload/HasMany/index.js.map +1 -1
  432. package/dist/fields/Upload/HasMany/index.scss +12 -56
  433. package/dist/fields/Upload/HasOne/index.d.ts +13 -9
  434. package/dist/fields/Upload/HasOne/index.d.ts.map +1 -1
  435. package/dist/fields/Upload/HasOne/index.js +36 -120
  436. package/dist/fields/Upload/HasOne/index.js.map +1 -1
  437. package/dist/fields/Upload/HasOne/index.scss +0 -69
  438. package/dist/fields/Upload/{HasOne/Input.d.ts → Input.d.ts} +14 -9
  439. package/dist/fields/Upload/Input.d.ts.map +1 -0
  440. package/dist/fields/Upload/Input.js +672 -0
  441. package/dist/fields/Upload/Input.js.map +1 -0
  442. package/dist/fields/Upload/RelationshipContent/index.d.ts +21 -0
  443. package/dist/fields/Upload/RelationshipContent/index.d.ts.map +1 -0
  444. package/dist/fields/Upload/RelationshipContent/index.js +140 -0
  445. package/dist/fields/Upload/RelationshipContent/index.js.map +1 -0
  446. package/dist/fields/Upload/RelationshipContent/index.scss +54 -0
  447. package/dist/fields/Upload/UploadCard/index.d.ts +10 -0
  448. package/dist/fields/Upload/UploadCard/index.d.ts.map +1 -0
  449. package/dist/fields/Upload/UploadCard/index.js +15 -0
  450. package/dist/fields/Upload/UploadCard/index.js.map +1 -0
  451. package/dist/fields/Upload/UploadCard/index.scss +27 -0
  452. package/dist/fields/Upload/index.d.ts +6 -6
  453. package/dist/fields/Upload/index.d.ts.map +1 -1
  454. package/dist/fields/Upload/index.js +85 -90
  455. package/dist/fields/Upload/index.js.map +1 -1
  456. package/dist/fields/Upload/index.scss +62 -0
  457. package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
  458. package/dist/forms/Form/fieldReducer.js +6 -2
  459. package/dist/forms/Form/fieldReducer.js.map +1 -1
  460. package/dist/forms/Form/index.d.ts.map +1 -1
  461. package/dist/forms/Form/index.js +20 -8
  462. package/dist/forms/Form/index.js.map +1 -1
  463. package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
  464. package/dist/forms/Form/mergeServerFormState.js +3 -1
  465. package/dist/forms/Form/mergeServerFormState.js.map +1 -1
  466. package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
  467. package/dist/forms/Form/rowHelpers.js +9 -3
  468. package/dist/forms/Form/rowHelpers.js.map +1 -1
  469. package/dist/forms/Form/rows.d.ts.map +1 -1
  470. package/dist/forms/Form/rows.js +3 -1
  471. package/dist/forms/Form/rows.js.map +1 -1
  472. package/dist/forms/Form/types.d.ts +1 -1
  473. package/dist/forms/Form/types.d.ts.map +1 -1
  474. package/dist/forms/Form/types.js.map +1 -1
  475. package/dist/forms/NullifyField/index.d.ts.map +1 -1
  476. package/dist/forms/NullifyField/index.js.map +1 -1
  477. package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
  478. package/dist/forms/RenderFields/RenderField.js +4 -2
  479. package/dist/forms/RenderFields/RenderField.js.map +1 -1
  480. package/dist/forms/RenderFields/index.d.ts.map +1 -1
  481. package/dist/forms/RenderFields/index.js +1 -1
  482. package/dist/forms/RenderFields/index.js.map +1 -1
  483. package/dist/forms/RowLabel/index.js +1 -1
  484. package/dist/forms/RowLabel/index.js.map +1 -1
  485. package/dist/forms/RowLabel/types.d.ts +1 -1
  486. package/dist/forms/RowLabel/types.d.ts.map +1 -1
  487. package/dist/forms/RowLabel/types.js.map +1 -1
  488. package/dist/forms/Submit/index.js +12 -28
  489. package/dist/forms/Submit/index.js.map +1 -1
  490. package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
  491. package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
  492. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -1
  493. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +6 -2
  494. package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
  495. package/dist/graphics/Account/index.d.ts.map +1 -1
  496. package/dist/graphics/Account/index.js +1 -1
  497. package/dist/graphics/Account/index.js.map +1 -1
  498. package/dist/hooks/useDelay.js +15 -48
  499. package/dist/hooks/useDelay.js.map +1 -1
  500. package/dist/hooks/useDelayedRender.js +32 -71
  501. package/dist/hooks/useDelayedRender.js.map +1 -1
  502. package/dist/hooks/useHotkey.d.ts.map +1 -1
  503. package/dist/hooks/useHotkey.js.map +1 -1
  504. package/dist/hooks/useIgnoredEffect.d.ts +17 -0
  505. package/dist/hooks/useIgnoredEffect.d.ts.map +1 -0
  506. package/dist/hooks/useIgnoredEffect.js +28 -0
  507. package/dist/hooks/useIgnoredEffect.js.map +1 -0
  508. package/dist/hooks/useIntersect.d.ts.map +1 -1
  509. package/dist/hooks/useIntersect.js +14 -20
  510. package/dist/hooks/useIntersect.js.map +1 -1
  511. package/dist/hooks/useThrottledEffect.d.ts +7 -0
  512. package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
  513. package/dist/hooks/useThrottledEffect.js +7 -0
  514. package/dist/hooks/useThrottledEffect.js.map +1 -1
  515. package/dist/providers/Auth/index.d.ts +1 -1
  516. package/dist/providers/Auth/index.d.ts.map +1 -1
  517. package/dist/providers/Auth/index.js +6 -2
  518. package/dist/providers/Auth/index.js.map +1 -1
  519. package/dist/providers/Config/RenderComponent.d.ts +1 -1
  520. package/dist/providers/Config/RenderComponent.d.ts.map +1 -1
  521. package/dist/providers/Config/RenderComponent.js +2 -2
  522. package/dist/providers/Config/RenderComponent.js.map +1 -1
  523. package/dist/providers/Config/createClientConfig/collections.d.ts +6 -6
  524. package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
  525. package/dist/providers/Config/createClientConfig/collections.js +17 -13
  526. package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
  527. package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
  528. package/dist/providers/Config/createClientConfig/fields.js +31 -11
  529. package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
  530. package/dist/providers/Config/createClientConfig/getComponent.d.ts +1 -1
  531. package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -1
  532. package/dist/providers/Config/createClientConfig/getComponent.js +2 -2
  533. package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -1
  534. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -1
  535. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +3 -1
  536. package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -1
  537. package/dist/providers/Config/createClientConfig/globals.d.ts +4 -4
  538. package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -1
  539. package/dist/providers/Config/createClientConfig/globals.js +3 -3
  540. package/dist/providers/Config/createClientConfig/globals.js.map +1 -1
  541. package/dist/providers/Config/createClientConfig/index.d.ts +3 -3
  542. package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -1
  543. package/dist/providers/Config/createClientConfig/index.js +20 -5
  544. package/dist/providers/Config/createClientConfig/index.js.map +1 -1
  545. package/dist/providers/DocumentEvents/index.js.map +1 -1
  546. package/dist/providers/DocumentInfo/index.d.ts +1 -1
  547. package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
  548. package/dist/providers/DocumentInfo/index.js +12 -4
  549. package/dist/providers/DocumentInfo/index.js.map +1 -1
  550. package/dist/providers/DocumentInfo/types.d.ts +20 -3
  551. package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
  552. package/dist/providers/DocumentInfo/types.js.map +1 -1
  553. package/dist/providers/ListInfo/index.d.ts +2 -2
  554. package/dist/providers/ListInfo/index.d.ts.map +1 -1
  555. package/dist/providers/ListInfo/index.js.map +1 -1
  556. package/dist/providers/ListQuery/index.d.ts +12 -6
  557. package/dist/providers/ListQuery/index.d.ts.map +1 -1
  558. package/dist/providers/ListQuery/index.js +32 -20
  559. package/dist/providers/ListQuery/index.js.map +1 -1
  560. package/dist/providers/Locale/index.d.ts.map +1 -1
  561. package/dist/providers/Locale/index.js.map +1 -1
  562. package/dist/providers/Preferences/index.d.ts.map +1 -1
  563. package/dist/providers/Preferences/index.js +4 -4
  564. package/dist/providers/Preferences/index.js.map +1 -1
  565. package/dist/providers/Root/index.d.ts +12 -12
  566. package/dist/providers/Root/index.d.ts.map +1 -1
  567. package/dist/providers/Root/index.js.map +1 -1
  568. package/dist/providers/Selection/index.d.ts +1 -1
  569. package/dist/providers/Selection/index.d.ts.map +1 -1
  570. package/dist/providers/Selection/index.js +118 -187
  571. package/dist/providers/Selection/index.js.map +1 -1
  572. package/dist/providers/WindowInfo/index.d.ts +1 -1
  573. package/dist/providers/WindowInfo/index.d.ts.map +1 -1
  574. package/dist/providers/WindowInfo/index.js +1 -1
  575. package/dist/providers/WindowInfo/index.js.map +1 -1
  576. package/dist/scss/app.scss +6 -6
  577. package/dist/scss/type.scss +4 -4
  578. package/dist/styles.css +1 -1
  579. package/dist/utilities/buildFormState.d.ts.map +1 -1
  580. package/dist/utilities/buildFormState.js +6 -2
  581. package/dist/utilities/buildFormState.js.map +1 -1
  582. package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
  583. package/dist/utilities/reduceFieldsToValuesWithValidation.js +6 -2
  584. package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
  585. package/package.json +13 -13
  586. package/dist/exports/client/chunk-UGBVRIVY.js +0 -14
  587. package/dist/exports/client/chunk-UGBVRIVY.js.map +0 -8
  588. package/dist/fields/Upload/HasOne/Input.d.ts.map +0 -1
  589. package/dist/fields/Upload/HasOne/Input.js +0 -324
  590. package/dist/fields/Upload/HasOne/Input.js.map +0 -1
  591. /package/dist/exports/client/{DatePicker-E6IJFDN2.js.map → DatePicker-OLRZVTAD.js.map} +0 -0
@@ -1,16 +1,17 @@
1
1
  'use client';
2
2
 
3
- import { c as _c } from "react/compiler-runtime";
4
3
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
5
4
  import { wordBoundariesRegex } from 'payload/shared';
6
5
  import * as qs from 'qs-esm';
7
6
  import React, { useCallback, useEffect, useReducer, useRef, useState } from 'react';
8
7
  import { AddNewRelation } from '../../elements/AddNewRelation/index.js';
8
+ import { useDocumentDrawer } from '../../elements/DocumentDrawer/index.js';
9
9
  import { ReactSelect } from '../../elements/ReactSelect/index.js';
10
10
  import { useFieldProps } from '../../forms/FieldPropsProvider/index.js';
11
11
  import { useField } from '../../forms/useField/index.js';
12
12
  import { withCondition } from '../../forms/withCondition/index.js';
13
13
  import { useDebouncedCallback } from '../../hooks/useDebouncedCallback.js';
14
+ import { useIgnoredEffect } from '../../hooks/useIgnoredEffect.js';
14
15
  import { useAuth } from '../../providers/Auth/index.js';
15
16
  import { useConfig } from '../../providers/Config/index.js';
16
17
  import { useLocale } from '../../providers/Locale/index.js';
@@ -28,57 +29,42 @@ import { SingleValue } from './select-components/SingleValue/index.js';
28
29
  const maxResultsPerRequest = 10;
29
30
  const baseClass = 'relationship';
30
31
  const RelationshipFieldComponent = props => {
31
- const $ = _c(76);
32
32
  const {
33
33
  descriptionProps,
34
34
  errorProps,
35
35
  field,
36
- field: t0,
36
+ field: {
37
+ name,
38
+ _path: pathFromProps,
39
+ admin: {
40
+ allowCreate = true,
41
+ className,
42
+ description,
43
+ isSortable = true,
44
+ readOnly: readOnlyFromAdmin,
45
+ sortOptions,
46
+ style,
47
+ width
48
+ } = {},
49
+ hasMany,
50
+ relationTo,
51
+ required
52
+ },
37
53
  labelProps,
38
54
  readOnly: readOnlyFromTopLevelProps,
39
55
  validate
40
56
  } = props;
41
- const {
42
- name,
43
- _path: pathFromProps,
44
- admin: t1,
45
- hasMany,
46
- label,
47
- relationTo,
48
- required
49
- } = t0;
50
- let t2;
51
- if ($[0] !== t1) {
52
- t2 = t1 === undefined ? {} : t1;
53
- $[0] = t1;
54
- $[1] = t2;
55
- } else {
56
- t2 = $[1];
57
- }
58
- const {
59
- allowCreate: t3,
60
- className,
61
- description,
62
- isSortable: t4,
63
- readOnly: readOnlyFromAdmin,
64
- sortOptions,
65
- style,
66
- width
67
- } = t2;
68
- const allowCreate = t3 === undefined ? true : t3;
69
- const isSortable = t4 === undefined ? true : t4;
70
57
  const readOnlyFromProps = readOnlyFromTopLevelProps || readOnlyFromAdmin;
71
58
  const {
72
59
  config
73
60
  } = useConfig();
74
61
  const {
75
62
  collections,
76
- routes: t5,
63
+ routes: {
64
+ api
65
+ },
77
66
  serverURL
78
67
  } = config;
79
- const {
80
- api
81
- } = t5;
82
68
  const {
83
69
  i18n,
84
70
  t
@@ -90,63 +76,31 @@ const RelationshipFieldComponent = props => {
90
76
  code: locale
91
77
  } = useLocale();
92
78
  const hasMultipleRelations = Array.isArray(relationTo);
93
- let t6;
94
- if ($[2] === Symbol.for("react.memo_cache_sentinel")) {
95
- t6 = [];
96
- $[2] = t6;
97
- } else {
98
- t6 = $[2];
99
- }
100
- const [options, dispatchOptions] = useReducer(optionsReducer, t6);
79
+ const [currentlyOpenRelationship, setCurrentlyOpenRelationship] = useState({
80
+ id: undefined,
81
+ collectionSlug: undefined,
82
+ hasReadPermission: false
83
+ });
101
84
  const [lastFullyLoadedRelation, setLastFullyLoadedRelation] = useState(-1);
102
- let t7;
103
- if ($[3] === Symbol.for("react.memo_cache_sentinel")) {
104
- t7 = {};
105
- $[3] = t7;
106
- } else {
107
- t7 = $[3];
108
- }
109
- const [lastLoadedPage, setLastLoadedPage] = useState(t7);
110
- const [errorLoading, setErrorLoading] = useState("");
111
- const [search, setSearch] = useState("");
85
+ const [lastLoadedPage, setLastLoadedPage] = useState({});
86
+ const [errorLoading, setErrorLoading] = useState('');
87
+ const [search, setSearch] = useState('');
112
88
  const [isLoading, setIsLoading] = useState(false);
113
89
  const [enableWordBoundarySearch, setEnableWordBoundarySearch] = useState(false);
114
- const menuIsOpen = useRef(false);
90
+ const [menuIsOpen, setMenuIsOpen] = useState(false);
115
91
  const hasLoadedFirstPageRef = useRef(false);
116
- let t8;
117
- if ($[4] !== validate || $[5] !== required) {
118
- t8 = (value, validationOptions) => {
119
- if (typeof validate === "function") {
120
- return validate(value, {
121
- ...validationOptions,
122
- required
123
- });
124
- }
125
- };
126
- $[4] = validate;
127
- $[5] = required;
128
- $[6] = t8;
129
- } else {
130
- t8 = $[6];
131
- }
132
- const memoizedValidate = t8;
92
+ const memoizedValidate = useCallback((value, validationOptions) => {
93
+ if (typeof validate === 'function') {
94
+ return validate(value, {
95
+ ...validationOptions,
96
+ required
97
+ });
98
+ }
99
+ }, [validate, required]);
133
100
  const {
134
101
  path: pathFromContext,
135
102
  readOnly: readOnlyFromContext
136
103
  } = useFieldProps();
137
- const t9 = pathFromContext ?? pathFromProps ?? name;
138
- let t10;
139
- if ($[7] !== t9 || $[8] !== memoizedValidate) {
140
- t10 = {
141
- path: t9,
142
- validate: memoizedValidate
143
- };
144
- $[7] = t9;
145
- $[8] = memoizedValidate;
146
- $[9] = t10;
147
- } else {
148
- t10 = $[9];
149
- }
150
104
  const {
151
105
  filterOptions,
152
106
  formInitializing,
@@ -156,305 +110,236 @@ const RelationshipFieldComponent = props => {
156
110
  setValue,
157
111
  showError,
158
112
  value: value_0
159
- } = useField(t10);
113
+ } = useField({
114
+ path: pathFromContext ?? pathFromProps ?? name,
115
+ validate: memoizedValidate
116
+ });
117
+ const [options, dispatchOptions] = useReducer(optionsReducer, []);
160
118
  const readOnly = readOnlyFromProps || readOnlyFromContext || formInitializing;
161
119
  const valueRef = useRef(value_0);
162
120
  valueRef.current = value_0;
163
- const [drawerIsOpen, setDrawerIsOpen] = useState(false);
164
- let t11;
165
- if ($[10] !== permissions || $[11] !== relationTo || $[12] !== hasMany || $[13] !== errorLoading || $[14] !== filterOptions || $[15] !== search || $[16] !== collections || $[17] !== sortOptions || $[18] !== locale || $[19] !== serverURL || $[20] !== api || $[21] !== i18n || $[22] !== config || $[23] !== t) {
166
- t11 = async t12 => {
167
- const {
168
- lastFullyLoadedRelation: lastFullyLoadedRelationArg,
169
- lastLoadedPage: lastLoadedPageArg,
170
- onSuccess,
171
- search: searchArg,
172
- sort,
173
- value: valueArg
174
- } = t12;
175
- if (!permissions) {
176
- return;
177
- }
178
- const lastFullyLoadedRelationToUse = typeof lastFullyLoadedRelationArg !== "undefined" ? lastFullyLoadedRelationArg : -1;
179
- const relations = Array.isArray(relationTo) ? relationTo : [relationTo];
180
- const relationsToFetch = lastFullyLoadedRelationToUse === -1 ? relations : relations.slice(lastFullyLoadedRelationToUse + 1);
181
- let resultsFetched;
182
- resultsFetched = 0;
183
- const relationMap = createRelationMap({
184
- hasMany,
185
- relationTo,
186
- value: valueArg
187
- });
188
- if (!errorLoading) {
189
- await relationsToFetch.reduce(async (priorRelation, relation) => {
190
- const relationFilterOption = filterOptions?.[relation];
191
- let lastLoadedPageToUse;
192
- if (search !== searchArg) {
193
- lastLoadedPageToUse = 1;
194
- } else {
195
- lastLoadedPageToUse = lastLoadedPageArg[relation] + 1;
196
- }
197
- await priorRelation;
198
- if (relationFilterOption === false) {
199
- setLastFullyLoadedRelation(relations.indexOf(relation));
200
- return Promise.resolve();
201
- }
202
- if (resultsFetched < 10) {
203
- const collection = collections.find(coll => coll.slug === relation);
204
- const fieldToSearch = collection?.admin?.useAsTitle || "id";
205
- let fieldToSort = collection?.defaultSort || "id";
206
- if (typeof sortOptions === "string") {
207
- fieldToSort = sortOptions;
208
- } else {
209
- if (sortOptions?.[relation]) {
210
- fieldToSort = sortOptions[relation];
211
- }
212
- }
213
- const query = {
214
- depth: 0,
215
- draft: true,
216
- limit: maxResultsPerRequest,
217
- locale,
218
- page: lastLoadedPageToUse,
219
- sort: fieldToSort,
220
- where: {
221
- and: [{
222
- id: {
223
- not_in: relationMap[relation]
224
- }
225
- }]
226
- }
227
- };
228
- if (searchArg) {
229
- query.where.and.push({
230
- [fieldToSearch]: {
231
- like: searchArg
232
- }
233
- });
234
- }
235
- if (relationFilterOption && typeof relationFilterOption !== "boolean") {
236
- query.where.and.push(relationFilterOption);
237
- }
238
- const response = await fetch(`${serverURL}${api}/${relation}`, {
239
- body: qs.stringify(query),
240
- credentials: "include",
241
- headers: {
242
- "Accept-Language": i18n.language,
243
- "Content-Type": "application/x-www-form-urlencoded",
244
- "X-HTTP-Method-Override": "GET"
245
- },
246
- method: "POST"
247
- });
248
- if (response.ok) {
249
- const data = await response.json();
250
- setLastLoadedPage(prevState => ({
251
- ...prevState,
252
- [relation]: lastLoadedPageToUse
253
- }));
254
- if (!data.nextPage) {
255
- setLastFullyLoadedRelation(relations.indexOf(relation));
256
- }
257
- if (data.docs.length > 0) {
258
- resultsFetched = resultsFetched + data.docs.length;
259
- resultsFetched;
260
- dispatchOptions({
261
- type: "ADD",
262
- collection,
263
- config,
264
- docs: data.docs,
265
- i18n,
266
- sort
267
- });
268
- }
269
- } else {
270
- if (response.status === 403) {
271
- setLastFullyLoadedRelation(relations.indexOf(relation));
272
- dispatchOptions({
273
- type: "ADD",
274
- collection,
275
- config,
276
- docs: [],
277
- i18n,
278
- ids: relationMap[relation],
279
- sort
280
- });
281
- } else {
282
- setErrorLoading(t("error:unspecific"));
283
- }
284
- }
285
- }
286
- }, Promise.resolve());
287
- if (typeof onSuccess === "function") {
288
- onSuccess();
121
+ const [DocumentDrawer,, {
122
+ isDrawerOpen,
123
+ openDrawer
124
+ }] = useDocumentDrawer({
125
+ id: currentlyOpenRelationship.id,
126
+ collectionSlug: currentlyOpenRelationship.collectionSlug
127
+ });
128
+ const openDrawerWhenRelationChanges = useRef(false);
129
+ const getResults = useCallback(async ({
130
+ filterOptions: filterOptions_0,
131
+ lastFullyLoadedRelation: lastFullyLoadedRelationArg,
132
+ lastLoadedPage: lastLoadedPageArg,
133
+ onSuccess,
134
+ search: searchArg,
135
+ sort,
136
+ value: valueArg
137
+ }) => {
138
+ if (!permissions) {
139
+ return;
140
+ }
141
+ const lastFullyLoadedRelationToUse = typeof lastFullyLoadedRelationArg !== 'undefined' ? lastFullyLoadedRelationArg : -1;
142
+ const relations = Array.isArray(relationTo) ? relationTo : [relationTo];
143
+ const relationsToFetch = lastFullyLoadedRelationToUse === -1 ? relations : relations.slice(lastFullyLoadedRelationToUse + 1);
144
+ let resultsFetched = 0;
145
+ const relationMap = createRelationMap({
146
+ hasMany,
147
+ relationTo,
148
+ value: valueArg
149
+ });
150
+ if (!errorLoading) {
151
+ await relationsToFetch.reduce(async (priorRelation, relation) => {
152
+ const relationFilterOption = filterOptions_0?.[relation];
153
+ let lastLoadedPageToUse;
154
+ if (search !== searchArg) {
155
+ lastLoadedPageToUse = 1;
156
+ } else {
157
+ lastLoadedPageToUse = lastLoadedPageArg[relation] + 1;
289
158
  }
290
- }
291
- };
292
- $[10] = permissions;
293
- $[11] = relationTo;
294
- $[12] = hasMany;
295
- $[13] = errorLoading;
296
- $[14] = filterOptions;
297
- $[15] = search;
298
- $[16] = collections;
299
- $[17] = sortOptions;
300
- $[18] = locale;
301
- $[19] = serverURL;
302
- $[20] = api;
303
- $[21] = i18n;
304
- $[22] = config;
305
- $[23] = t;
306
- $[24] = t11;
307
- } else {
308
- t11 = $[24];
309
- }
310
- const getResults = t11;
311
- let t12;
312
- if ($[25] !== getResults) {
313
- t12 = (searchArg_0, valueArg_0) => {
314
- getResults({
315
- lastLoadedPage: {},
316
- search: searchArg_0,
317
- sort: true,
318
- value: valueArg_0
319
- });
320
- setSearch(searchArg_0);
321
- };
322
- $[25] = getResults;
323
- $[26] = t12;
324
- } else {
325
- t12 = $[26];
326
- }
327
- const updateSearch = useDebouncedCallback(t12, 300);
328
- let t13;
329
- if ($[27] !== search || $[28] !== updateSearch) {
330
- t13 = (searchArg_1, valueArg_1) => {
331
- if (search !== searchArg_1) {
332
- setLastLoadedPage({});
333
- updateSearch(searchArg_1, valueArg_1, searchArg_1 !== "");
334
- }
335
- };
336
- $[27] = search;
337
- $[28] = updateSearch;
338
- $[29] = t13;
339
- } else {
340
- t13 = $[29];
341
- }
342
- const handleInputChange = t13;
343
- let t14;
344
- if ($[30] !== hasMany || $[31] !== relationTo || $[32] !== value_0 || $[33] !== options || $[34] !== locale || $[35] !== errorLoading || $[36] !== serverURL || $[37] !== api || $[38] !== i18n || $[39] !== collections || $[40] !== config) {
345
- t14 = () => {
346
- const relationMap_0 = createRelationMap({
347
- hasMany,
348
- relationTo,
349
- value: value_0
350
- });
351
- Object.entries(relationMap_0).reduce(async (priorRelation_0, t15) => {
352
- const [relation_0, ids] = t15;
353
- await priorRelation_0;
354
- const idsToLoad = ids.filter(id => !options.find(optionGroup => optionGroup?.options?.find(option => option.value === id && option.relationTo === relation_0)));
355
- if (idsToLoad.length > 0) {
356
- const query_0 = {
159
+ await priorRelation;
160
+ if (relationFilterOption === false) {
161
+ setLastFullyLoadedRelation(relations.indexOf(relation));
162
+ return Promise.resolve();
163
+ }
164
+ if (resultsFetched < 10) {
165
+ const collection = collections.find(coll => coll.slug === relation);
166
+ const fieldToSearch = collection?.admin?.useAsTitle || 'id';
167
+ let fieldToSort = collection?.defaultSort || 'id';
168
+ if (typeof sortOptions === 'string') {
169
+ fieldToSort = sortOptions;
170
+ } else if (sortOptions?.[relation]) {
171
+ fieldToSort = sortOptions[relation];
172
+ }
173
+ const query = {
357
174
  depth: 0,
358
175
  draft: true,
359
- limit: idsToLoad.length,
176
+ limit: maxResultsPerRequest,
360
177
  locale,
178
+ page: lastLoadedPageToUse,
179
+ sort: fieldToSort,
361
180
  where: {
362
- id: {
363
- in: idsToLoad
364
- }
181
+ and: [{
182
+ id: {
183
+ not_in: relationMap[relation]
184
+ }
185
+ }]
365
186
  }
366
187
  };
367
- if (!errorLoading) {
368
- const response_0 = await fetch(`${serverURL}${api}/${relation_0}`, {
369
- body: qs.stringify(query_0),
370
- credentials: "include",
371
- headers: {
372
- "Accept-Language": i18n.language,
373
- "Content-Type": "application/x-www-form-urlencoded",
374
- "X-HTTP-Method-Override": "GET"
375
- },
376
- method: "POST"
188
+ if (searchArg) {
189
+ query.where.and.push({
190
+ [fieldToSearch]: {
191
+ like: searchArg
192
+ }
377
193
  });
378
- const collection_0 = collections.find(coll_0 => coll_0.slug === relation_0);
379
- let docs = [];
380
- if (response_0.ok) {
381
- const data_0 = await response_0.json();
382
- docs = data_0.docs;
194
+ }
195
+ if (relationFilterOption && typeof relationFilterOption !== 'boolean') {
196
+ query.where.and.push(relationFilterOption);
197
+ }
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-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));
383
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));
384
232
  dispatchOptions({
385
- type: "ADD",
386
- collection: collection_0,
233
+ type: 'ADD',
234
+ collection,
387
235
  config,
388
- docs,
236
+ docs: [],
389
237
  i18n,
390
- ids: idsToLoad,
391
- sort: true
238
+ ids: relationMap[relation],
239
+ sort
392
240
  });
241
+ } else {
242
+ setErrorLoading(t('error:unspecific'));
393
243
  }
394
244
  }
395
245
  }, Promise.resolve());
396
- };
397
- $[30] = hasMany;
398
- $[31] = relationTo;
399
- $[32] = value_0;
400
- $[33] = options;
401
- $[34] = locale;
402
- $[35] = errorLoading;
403
- $[36] = serverURL;
404
- $[37] = api;
405
- $[38] = i18n;
406
- $[39] = collections;
407
- $[40] = config;
408
- $[41] = t14;
409
- } else {
410
- t14 = $[41];
411
- }
412
- let t15;
413
- if ($[42] !== options || $[43] !== value_0 || $[44] !== hasMany || $[45] !== errorLoading || $[46] !== collections || $[47] !== hasMultipleRelations || $[48] !== serverURL || $[49] !== api || $[50] !== i18n || $[51] !== relationTo || $[52] !== locale || $[53] !== config) {
414
- t15 = [options, value_0, hasMany, errorLoading, collections, hasMultipleRelations, serverURL, api, i18n, relationTo, locale, config];
415
- $[42] = options;
416
- $[43] = value_0;
417
- $[44] = hasMany;
418
- $[45] = errorLoading;
419
- $[46] = collections;
420
- $[47] = hasMultipleRelations;
421
- $[48] = serverURL;
422
- $[49] = api;
423
- $[50] = i18n;
424
- $[51] = relationTo;
425
- $[52] = locale;
426
- $[53] = config;
427
- $[54] = t15;
428
- } else {
429
- t15 = $[54];
430
- }
431
- useEffect(t14, t15);
432
- let t16;
433
- let t17;
434
- if ($[55] !== relationTo || $[56] !== collections) {
435
- t16 = () => {
436
- const relations_0 = Array.isArray(relationTo) ? relationTo : [relationTo];
437
- const isIdOnly = relations_0.reduce((idOnly, relation_1) => {
438
- const collection_1 = collections.find(coll_1 => coll_1.slug === relation_1);
439
- const fieldToSearch_0 = collection_1?.admin?.useAsTitle || "id";
440
- return fieldToSearch_0 === "id" && idOnly;
441
- }, true);
442
- setEnableWordBoundarySearch(!isIdOnly);
443
- };
444
- t17 = [relationTo, collections];
445
- $[55] = relationTo;
446
- $[56] = collections;
447
- $[57] = t16;
448
- $[58] = t17;
449
- } else {
450
- t16 = $[57];
451
- t17 = $[58];
452
- }
453
- useEffect(t16, t17);
246
+ if (typeof onSuccess === 'function') {
247
+ onSuccess();
248
+ }
249
+ }
250
+ }, [permissions, relationTo, hasMany, errorLoading, search, collections, locale, serverURL, sortOptions, api, i18n, config, t]);
251
+ const updateSearch = useDebouncedCallback((searchArg_0, valueArg_0) => {
252
+ void getResults({
253
+ filterOptions,
254
+ lastLoadedPage: {},
255
+ search: searchArg_0,
256
+ sort: true,
257
+ value: valueArg_0
258
+ });
259
+ setSearch(searchArg_0);
260
+ }, 300);
261
+ const handleInputChange = useCallback((searchArg_1, valueArg_1) => {
262
+ if (search !== searchArg_1) {
263
+ setLastLoadedPage({});
264
+ updateSearch(searchArg_1, valueArg_1, searchArg_1 !== '');
265
+ }
266
+ }, [search, updateSearch]);
267
+ // ///////////////////////////////////
268
+ // Ensure we have an option for each value
269
+ // ///////////////////////////////////
270
+ useIgnoredEffect(() => {
271
+ const relationMap_0 = createRelationMap({
272
+ hasMany,
273
+ relationTo,
274
+ value: value_0
275
+ });
276
+ void Object.entries(relationMap_0).reduce(async (priorRelation_0, [relation_0, ids]) => {
277
+ await priorRelation_0;
278
+ const idsToLoad = ids.filter(id => {
279
+ return !options.find(optionGroup => optionGroup?.options?.find(option => option.value === id && option.relationTo === relation_0));
280
+ });
281
+ if (idsToLoad.length > 0) {
282
+ const query_0 = {
283
+ depth: 0,
284
+ draft: true,
285
+ limit: idsToLoad.length,
286
+ locale,
287
+ where: {
288
+ id: {
289
+ in: idsToLoad
290
+ }
291
+ }
292
+ };
293
+ if (!errorLoading) {
294
+ const response_0 = await fetch(`${serverURL}${api}/${relation_0}`, {
295
+ body: qs.stringify(query_0),
296
+ credentials: 'include',
297
+ headers: {
298
+ 'Accept-Language': i18n.language,
299
+ 'Content-Type': 'application/x-www-form-urlencoded',
300
+ 'X-HTTP-Method-Override': 'GET'
301
+ },
302
+ method: 'POST'
303
+ });
304
+ const collection_0 = collections.find(coll_0 => coll_0.slug === relation_0);
305
+ let docs = [];
306
+ if (response_0.ok) {
307
+ const data_0 = await response_0.json();
308
+ docs = data_0.docs;
309
+ }
310
+ dispatchOptions({
311
+ type: 'ADD',
312
+ collection: collection_0,
313
+ config,
314
+ docs,
315
+ i18n,
316
+ ids: idsToLoad,
317
+ sort: true
318
+ });
319
+ }
320
+ }
321
+ }, Promise.resolve());
322
+ }, [value_0], [options, hasMany, errorLoading, collections, hasMultipleRelations, serverURL, api, i18n, relationTo, locale, config]);
323
+ // Determine if we should switch to word boundary search
454
324
  useEffect(() => {
455
- if (hasLoadedFirstPageRef.current && menuIsOpen.current) {
325
+ const relations_0 = Array.isArray(relationTo) ? relationTo : [relationTo];
326
+ const isIdOnly = relations_0.reduce((idOnly, relation_1) => {
327
+ const collection_1 = collections.find(coll_1 => coll_1.slug === relation_1);
328
+ const fieldToSearch_0 = collection_1?.admin?.useAsTitle || 'id';
329
+ return fieldToSearch_0 === 'id' && idOnly;
330
+ }, true);
331
+ setEnableWordBoundarySearch(!isIdOnly);
332
+ }, [relationTo, collections]);
333
+ // When (`relationTo` || `filterOptions` || `locale`) changes, reset component
334
+ // Note - effect should not run on first run
335
+ useIgnoredEffect(() => {
336
+ // If the menu is open while filterOptions changes
337
+ // due to latency of getFormState and fast clicking into this field,
338
+ // re-fetch options
339
+ if (hasLoadedFirstPageRef.current && menuIsOpen) {
456
340
  setIsLoading(true);
457
- getResults({
341
+ void getResults({
342
+ filterOptions,
458
343
  lastLoadedPage: {},
459
344
  onSuccess: () => {
460
345
  hasLoadedFirstPageRef.current = true;
@@ -463,172 +348,197 @@ const RelationshipFieldComponent = props => {
463
348
  value: valueRef.current
464
349
  });
465
350
  }
351
+ // If the menu is not open, still reset the field state
352
+ // because we need to get new options next time the menu opens
466
353
  dispatchOptions({
467
- type: "CLEAR"
354
+ type: 'CLEAR',
355
+ exemptValues: valueRef.current
468
356
  });
469
357
  setLastFullyLoadedRelation(-1);
470
358
  setLastLoadedPage({});
471
- hasLoadedFirstPageRef.current = false;
472
- }, [relationTo, filterOptions, locale, menuIsOpen, getResults, valueRef, hasLoadedFirstPageRef, path]);
473
- let t18;
474
- if ($[59] !== config || $[60] !== i18n) {
475
- t18 = args => {
476
- dispatchOptions({
477
- type: "UPDATE",
478
- collection: args.collectionConfig,
479
- config,
480
- doc: args.doc,
481
- i18n
359
+ }, [relationTo, filterOptions, locale, path, menuIsOpen], [getResults]);
360
+ const onSave = useCallback(args => {
361
+ dispatchOptions({
362
+ type: 'UPDATE',
363
+ collection: args.collectionConfig,
364
+ config,
365
+ doc: args.doc,
366
+ i18n
367
+ });
368
+ if (hasMany) {
369
+ setValue(valueRef.current ? valueRef.current.map(option_0 => {
370
+ if (option_0.value === args.doc.id) {
371
+ return {
372
+ relationTo: args.collectionConfig.slug,
373
+ value: args.doc.id
374
+ };
375
+ }
376
+ return option_0;
377
+ }) : null);
378
+ } else {
379
+ setValue({
380
+ relationTo: args.collectionConfig.slug,
381
+ value: args.doc.id
482
382
  });
483
- };
484
- $[59] = config;
485
- $[60] = i18n;
486
- $[61] = t18;
487
- } else {
488
- t18 = $[61];
489
- }
490
- const onSave = t18;
491
- const filterOption = _temp;
383
+ }
384
+ }, [i18n, config, hasMany, setValue]);
385
+ const onDuplicate = useCallback(args_0 => {
386
+ dispatchOptions({
387
+ type: 'ADD',
388
+ collection: args_0.collectionConfig,
389
+ config,
390
+ docs: [args_0.doc],
391
+ i18n,
392
+ sort: true
393
+ });
394
+ if (hasMany) {
395
+ setValue(valueRef.current ? valueRef.current.concat({
396
+ relationTo: args_0.collectionConfig.slug,
397
+ value: args_0.doc.id
398
+ }) : null);
399
+ } else {
400
+ setValue({
401
+ relationTo: args_0.collectionConfig.slug,
402
+ value: args_0.doc.id
403
+ });
404
+ }
405
+ }, [i18n, config, hasMany, setValue]);
406
+ const onDelete = useCallback(args_1 => {
407
+ dispatchOptions({
408
+ id: args_1.id,
409
+ type: 'REMOVE',
410
+ collection: args_1.collectionConfig,
411
+ config,
412
+ i18n
413
+ });
414
+ if (hasMany) {
415
+ setValue(valueRef.current ? valueRef.current.filter(option_1 => {
416
+ return option_1.value !== args_1.id;
417
+ }) : null);
418
+ } else {
419
+ setValue(null);
420
+ }
421
+ return;
422
+ }, [i18n, config, hasMany, setValue]);
423
+ const filterOption = useCallback((item, searchFilter) => {
424
+ if (!searchFilter) {
425
+ return true;
426
+ }
427
+ const r = wordBoundariesRegex(searchFilter || '');
428
+ // breaking the labels to search into smaller parts increases performance
429
+ const breakApartThreshold = 250;
430
+ let string = item.label;
431
+ // strings less than breakApartThreshold length won't be chunked
432
+ while (string.length > breakApartThreshold) {
433
+ // slicing by the next space after the length of the search input prevents slicing the string up by partial words
434
+ const indexOfSpace = string.indexOf(' ', searchFilter.length);
435
+ if (r.test(string.slice(0, indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1))) {
436
+ return true;
437
+ }
438
+ string = string.slice(indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1);
439
+ }
440
+ return r.test(string.slice(-breakApartThreshold));
441
+ }, []);
442
+ const onDocumentDrawerOpen = useCallback(({
443
+ id: id_0,
444
+ collectionSlug,
445
+ hasReadPermission
446
+ }) => {
447
+ openDrawerWhenRelationChanges.current = true;
448
+ setCurrentlyOpenRelationship({
449
+ id: id_0,
450
+ collectionSlug,
451
+ hasReadPermission
452
+ });
453
+ }, []);
454
+ useEffect(() => {
455
+ if (openDrawerWhenRelationChanges.current) {
456
+ openDrawer();
457
+ openDrawerWhenRelationChanges.current = false;
458
+ }
459
+ }, [openDrawer, currentlyOpenRelationship]);
492
460
  const valueToRender = findOptionsByValue({
493
461
  options,
494
462
  value: value_0
495
463
  });
496
- if (!Array.isArray(valueToRender) && valueToRender?.value === "null") {
464
+ if (!Array.isArray(valueToRender) && valueToRender?.value === 'null') {
497
465
  valueToRender.value = null;
498
466
  }
499
- const t19 = showError && "error";
500
- const t20 = errorLoading && "error-loading";
501
- const t21 = readOnly && `${baseClass}--read-only`;
502
- const t22 = !readOnly && allowCreate && `${baseClass}--allow-create`;
503
- let t23;
504
- if ($[62] !== className || $[63] !== t19 || $[64] !== t20 || $[65] !== t21 || $[66] !== t22) {
505
- t23 = [fieldBaseClass, baseClass, className, t19, t20, t21, t22].filter(Boolean);
506
- $[62] = className;
507
- $[63] = t19;
508
- $[64] = t20;
509
- $[65] = t21;
510
- $[66] = t22;
511
- $[67] = t23;
512
- } else {
513
- t23 = $[67];
514
- }
515
- let t24;
516
- if ($[68] !== labelProps) {
517
- t24 = labelProps || {};
518
- $[68] = labelProps;
519
- $[69] = t24;
520
- } else {
521
- t24 = $[69];
522
- }
523
- let t25;
524
- if ($[70] !== errorProps) {
525
- t25 = errorProps || {};
526
- $[70] = errorProps;
527
- $[71] = t25;
528
- } else {
529
- t25 = $[71];
530
- }
531
- let t26;
532
- if ($[72] !== errorLoading) {
533
- t26 = errorLoading && _jsx("div", {
534
- className: `${baseClass}__error-loading`,
535
- children: errorLoading
536
- });
537
- $[72] = errorLoading;
538
- $[73] = t26;
539
- } else {
540
- t26 = $[73];
541
- }
542
- let t27;
543
- if ($[74] !== descriptionProps) {
544
- t27 = descriptionProps || {};
545
- $[74] = descriptionProps;
546
- $[75] = t27;
547
- } else {
548
- t27 = $[75];
549
- }
550
- return _jsxs("div", {
551
- className: t23.join(" "),
552
- id: `field-${path.replace(/\./g, "__")}`,
467
+ return /*#__PURE__*/_jsxs("div", {
468
+ className: [fieldBaseClass, baseClass, className, showError && 'error', errorLoading && 'error-loading', readOnly && `${baseClass}--read-only`, !readOnly && allowCreate && `${baseClass}--allow-create`].filter(Boolean).join(' '),
469
+ id: `field-${path.replace(/\./g, '__')}`,
553
470
  style: {
554
471
  ...style,
555
472
  width
556
473
  },
557
- children: [_jsx(FieldLabel, {
474
+ children: [/*#__PURE__*/_jsx(FieldLabel, {
475
+ field: field,
558
476
  Label: field?.admin?.components?.Label,
559
- field,
560
- label,
561
- required,
562
- ...t24
563
- }), _jsxs("div", {
477
+ ...(labelProps || {})
478
+ }), /*#__PURE__*/_jsxs("div", {
564
479
  className: `${fieldBaseClass}__wrap`,
565
- children: [_jsx(FieldError, {
480
+ children: [/*#__PURE__*/_jsx(FieldError, {
566
481
  CustomError: field?.admin?.components?.Error,
567
- field,
568
- path,
569
- ...t25
570
- }), !errorLoading && _jsxs("div", {
482
+ field: field,
483
+ path: path,
484
+ ...(errorProps || {})
485
+ }), !errorLoading && /*#__PURE__*/_jsxs("div", {
571
486
  className: `${baseClass}__wrap`,
572
- children: [_jsx(ReactSelect, {
573
- backspaceRemovesValue: !drawerIsOpen,
487
+ children: [/*#__PURE__*/_jsx(ReactSelect, {
488
+ backspaceRemovesValue: !isDrawerOpen,
574
489
  components: {
575
490
  MultiValueLabel,
576
491
  SingleValue
577
492
  },
578
493
  customProps: {
579
- disableKeyDown: drawerIsOpen,
580
- disableMouseDown: drawerIsOpen,
581
- onSave,
582
- setDrawerIsOpen
494
+ disableKeyDown: isDrawerOpen,
495
+ disableMouseDown: isDrawerOpen,
496
+ onDocumentDrawerOpen,
497
+ onSave
583
498
  },
584
- disabled: readOnly || formProcessing || drawerIsOpen,
499
+ disabled: readOnly || formProcessing || isDrawerOpen,
585
500
  filterOption: enableWordBoundarySearch ? filterOption : undefined,
586
- getOptionValue: option_0 => {
587
- if (!option_0) {
588
- return;
501
+ getOptionValue: option_2 => {
502
+ if (!option_2) {
503
+ return undefined;
589
504
  }
590
- return hasMany && Array.isArray(relationTo) ? `${option_0.relationTo}_${option_0.value}` : option_0.value;
505
+ return hasMany && Array.isArray(relationTo) ? `${option_2.relationTo}_${option_2.value}` : option_2.value;
591
506
  },
592
- isLoading,
507
+ isLoading: isLoading,
593
508
  isMulti: hasMany,
594
- isSortable,
509
+ isSortable: isSortable,
595
510
  onChange: !readOnly ? selected => {
596
511
  if (selected === null) {
597
512
  setValue(hasMany ? [] : null);
598
- } else {
599
- if (hasMany && Array.isArray(selected)) {
600
- setValue(selected ? selected.map(option_1 => {
601
- if (hasMultipleRelations) {
602
- return {
603
- relationTo: option_1.relationTo,
604
- value: option_1.value
605
- };
606
- }
607
- return option_1.value;
608
- }) : null);
609
- } else {
610
- if (hasMultipleRelations && !Array.isArray(selected)) {
611
- setValue({
612
- relationTo: selected.relationTo,
613
- value: selected.value
614
- });
615
- } else {
616
- if (!Array.isArray(selected)) {
617
- setValue(selected.value);
618
- }
513
+ } else if (hasMany && Array.isArray(selected)) {
514
+ setValue(selected ? selected.map(option_3 => {
515
+ if (hasMultipleRelations) {
516
+ return {
517
+ relationTo: option_3.relationTo,
518
+ value: option_3.value
519
+ };
619
520
  }
620
- }
521
+ return option_3.value;
522
+ }) : null);
523
+ } else if (hasMultipleRelations && !Array.isArray(selected)) {
524
+ setValue({
525
+ relationTo: selected.relationTo,
526
+ value: selected.value
527
+ });
528
+ } else if (!Array.isArray(selected)) {
529
+ setValue(selected.value);
621
530
  }
622
531
  } : undefined,
623
532
  onInputChange: newSearch => handleInputChange(newSearch, value_0),
624
533
  onMenuClose: () => {
625
- menuIsOpen.current = false;
534
+ setMenuIsOpen(false);
626
535
  },
627
536
  onMenuOpen: () => {
628
- menuIsOpen.current = true;
537
+ setMenuIsOpen(true);
629
538
  if (!hasLoadedFirstPageRef.current) {
630
539
  setIsLoading(true);
631
- getResults({
540
+ void getResults({
541
+ filterOptions,
632
542
  lastLoadedPage: {},
633
543
  onSuccess: () => {
634
544
  hasLoadedFirstPageRef.current = true;
@@ -639,7 +549,8 @@ const RelationshipFieldComponent = props => {
639
549
  }
640
550
  },
641
551
  onMenuScrollToBottom: () => {
642
- getResults({
552
+ void getResults({
553
+ filterOptions,
643
554
  lastFullyLoadedRelation,
644
555
  lastLoadedPage,
645
556
  search,
@@ -647,39 +558,31 @@ const RelationshipFieldComponent = props => {
647
558
  value: initialValue
648
559
  });
649
560
  },
650
- options,
651
- showError,
561
+ options: options,
562
+ showError: showError,
652
563
  value: valueToRender ?? null
653
- }), !readOnly && allowCreate && _jsx(AddNewRelation, {
654
- hasMany,
655
- path,
656
- relationTo,
657
- setValue,
564
+ }), !readOnly && allowCreate && /*#__PURE__*/_jsx(AddNewRelation, {
565
+ hasMany: hasMany,
566
+ path: path,
567
+ relationTo: relationTo,
568
+ setValue: setValue,
658
569
  value: value_0
659
570
  })]
660
- }), t26, _jsx(FieldDescription, {
571
+ }), errorLoading && /*#__PURE__*/_jsx("div", {
572
+ className: `${baseClass}__error-loading`,
573
+ children: errorLoading
574
+ }), /*#__PURE__*/_jsx(FieldDescription, {
661
575
  Description: field?.admin?.components?.Description,
662
- description,
663
- field,
664
- ...t27
576
+ description: description,
577
+ field: field,
578
+ ...(descriptionProps || {})
665
579
  })]
580
+ }), currentlyOpenRelationship.collectionSlug && currentlyOpenRelationship.hasReadPermission && /*#__PURE__*/_jsx(DocumentDrawer, {
581
+ onDelete: onDelete,
582
+ onDuplicate: onDuplicate,
583
+ onSave: onSave
666
584
  })]
667
585
  });
668
586
  };
669
587
  export const RelationshipField = withCondition(RelationshipFieldComponent);
670
- function _temp(item, searchFilter) {
671
- if (!searchFilter) {
672
- return true;
673
- }
674
- const r = wordBoundariesRegex(searchFilter || "");
675
- let string = item.label;
676
- while (string.length > 250) {
677
- const indexOfSpace = string.indexOf(" ", searchFilter.length);
678
- if (r.test(string.slice(0, indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1))) {
679
- return true;
680
- }
681
- string = string.slice(indexOfSpace === -1 ? searchFilter.length : indexOfSpace + 1);
682
- }
683
- return r.test(string.slice(-250));
684
- }
685
588
  //# sourceMappingURL=index.js.map