@payloadcms/next 3.0.0-beta.126 → 3.0.0-beta.128

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 (290) hide show
  1. package/dist/cjs/withPayload.cjs +10 -0
  2. package/dist/cjs/withPayload.cjs.map +1 -1
  3. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +1 -1
  4. package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
  5. package/dist/elements/DocumentHeader/Tabs/Tab/index.js +13 -15
  6. package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
  7. package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
  8. package/dist/elements/DocumentHeader/Tabs/index.js +9 -14
  9. package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
  10. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
  11. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +13 -28
  12. package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
  13. package/dist/elements/DocumentHeader/index.d.ts +0 -1
  14. package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
  15. package/dist/elements/DocumentHeader/index.js +9 -12
  16. package/dist/elements/DocumentHeader/index.js.map +1 -1
  17. package/dist/elements/Logo/index.d.ts.map +1 -1
  18. package/dist/elements/Logo/index.js +5 -6
  19. package/dist/elements/Logo/index.js.map +1 -1
  20. package/dist/elements/Nav/index.client.d.ts +4 -1
  21. package/dist/elements/Nav/index.client.d.ts.map +1 -1
  22. package/dist/elements/Nav/index.client.js +40 -95
  23. package/dist/elements/Nav/index.client.js.map +1 -1
  24. package/dist/elements/Nav/index.d.ts.map +1 -1
  25. package/dist/elements/Nav/index.js +60 -23
  26. package/dist/elements/Nav/index.js.map +1 -1
  27. package/dist/exports/layouts.d.ts +1 -0
  28. package/dist/exports/layouts.d.ts.map +1 -1
  29. package/dist/exports/layouts.js +1 -0
  30. package/dist/exports/layouts.js.map +1 -1
  31. package/dist/exports/utilities.d.ts.map +1 -1
  32. package/dist/exports/utilities.js +1 -0
  33. package/dist/exports/utilities.js.map +1 -1
  34. package/dist/exports/views.d.ts +0 -2
  35. package/dist/exports/views.d.ts.map +1 -1
  36. package/dist/exports/views.js +0 -2
  37. package/dist/exports/views.js.map +1 -1
  38. package/dist/fetchAPI-multipart/isEligibleRequest.js +1 -1
  39. package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
  40. package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
  41. package/dist/fetchAPI-multipart/processMultipart.js +9 -11
  42. package/dist/fetchAPI-multipart/processMultipart.js.map +1 -1
  43. package/dist/layouts/Root/NestProviders.d.ts +11 -0
  44. package/dist/layouts/Root/NestProviders.d.ts.map +1 -0
  45. package/dist/layouts/Root/NestProviders.js +21 -0
  46. package/dist/layouts/Root/NestProviders.js.map +1 -0
  47. package/dist/layouts/Root/index.d.ts +3 -2
  48. package/dist/layouts/Root/index.d.ts.map +1 -1
  49. package/dist/layouts/Root/index.js +14 -18
  50. package/dist/layouts/Root/index.js.map +1 -1
  51. package/dist/prod/styles.css +1 -1
  52. package/dist/routes/rest/index.d.ts.map +1 -1
  53. package/dist/routes/rest/index.js +0 -10
  54. package/dist/routes/rest/index.js.map +1 -1
  55. package/dist/routes/rest/og/image.d.ts +4 -2
  56. package/dist/routes/rest/og/image.d.ts.map +1 -1
  57. package/dist/routes/rest/og/image.js +7 -3
  58. package/dist/routes/rest/og/image.js.map +1 -1
  59. package/dist/routes/rest/og/index.d.ts.map +1 -1
  60. package/dist/routes/rest/og/index.js +5 -8
  61. package/dist/routes/rest/og/index.js.map +1 -1
  62. package/dist/routes/rest/routeError.d.ts.map +1 -1
  63. package/dist/routes/rest/routeError.js +1 -47
  64. package/dist/routes/rest/routeError.js.map +1 -1
  65. package/dist/templates/Default/index.d.ts +2 -1
  66. package/dist/templates/Default/index.d.ts.map +1 -1
  67. package/dist/templates/Default/index.js +97 -41
  68. package/dist/templates/Default/index.js.map +1 -1
  69. package/dist/utilities/getClientConfig.d.ts +7 -0
  70. package/dist/utilities/getClientConfig.d.ts.map +1 -0
  71. package/dist/utilities/getClientConfig.js +14 -0
  72. package/dist/utilities/getClientConfig.js.map +1 -0
  73. package/dist/utilities/handleServerFunctions.d.ts +3 -0
  74. package/dist/utilities/handleServerFunctions.d.ts.map +1 -0
  75. package/dist/utilities/handleServerFunctions.js +35 -0
  76. package/dist/utilities/handleServerFunctions.js.map +1 -0
  77. package/dist/utilities/initPage/handleAdminPage.d.ts +2 -1
  78. package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
  79. package/dist/utilities/initPage/handleAdminPage.js +9 -1
  80. package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
  81. package/dist/utilities/initPage/handleAuthRedirect.js +2 -2
  82. package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
  83. package/dist/utilities/initPage/index.d.ts.map +1 -1
  84. package/dist/utilities/initPage/index.js +2 -1
  85. package/dist/utilities/initPage/index.js.map +1 -1
  86. package/dist/utilities/initReq.d.ts +1 -1
  87. package/dist/utilities/initReq.d.ts.map +1 -1
  88. package/dist/utilities/initReq.js +3 -2
  89. package/dist/utilities/initReq.js.map +1 -1
  90. package/dist/views/API/LocaleSelector/index.d.ts.map +1 -1
  91. package/dist/views/API/LocaleSelector/index.js +0 -1
  92. package/dist/views/API/LocaleSelector/index.js.map +1 -1
  93. package/dist/views/API/index.client.d.ts.map +1 -1
  94. package/dist/views/API/index.client.js +10 -13
  95. package/dist/views/API/index.client.js.map +1 -1
  96. package/dist/views/Account/Settings/index.js +0 -1
  97. package/dist/views/Account/Settings/index.js.map +1 -1
  98. package/dist/views/Account/index.d.ts.map +1 -1
  99. package/dist/views/Account/index.js +81 -24
  100. package/dist/views/Account/index.js.map +1 -1
  101. package/dist/views/CreateFirstUser/index.client.d.ts +3 -1
  102. package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
  103. package/dist/views/CreateFirstUser/index.client.js +83 -109
  104. package/dist/views/CreateFirstUser/index.client.js.map +1 -1
  105. package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
  106. package/dist/views/CreateFirstUser/index.js +36 -4
  107. package/dist/views/CreateFirstUser/index.js.map +1 -1
  108. package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
  109. package/dist/views/Dashboard/Default/index.js +46 -44
  110. package/dist/views/Dashboard/Default/index.js.map +1 -1
  111. package/dist/views/Dashboard/index.d.ts.map +1 -1
  112. package/dist/views/Dashboard/index.js +22 -21
  113. package/dist/views/Dashboard/index.js.map +1 -1
  114. package/dist/views/Document/getDocPreferences.d.ts +11 -0
  115. package/dist/views/Document/getDocPreferences.d.ts.map +1 -0
  116. package/dist/views/Document/getDocPreferences.js +44 -0
  117. package/dist/views/Document/getDocPreferences.js.map +1 -0
  118. package/dist/views/Document/getDocumentData.d.ts +10 -11
  119. package/dist/views/Document/getDocumentData.d.ts.map +1 -1
  120. package/dist/views/Document/getDocumentData.js +35 -47
  121. package/dist/views/Document/getDocumentData.js.map +1 -1
  122. package/dist/views/Document/getIsLocked.d.ts +16 -0
  123. package/dist/views/Document/getIsLocked.d.ts.map +1 -0
  124. package/dist/views/Document/getIsLocked.js +55 -0
  125. package/dist/views/Document/getIsLocked.js.map +1 -0
  126. package/dist/views/Document/getVersions.d.ts +19 -0
  127. package/dist/views/Document/getVersions.d.ts.map +1 -0
  128. package/dist/views/Document/getVersions.js +181 -0
  129. package/dist/views/Document/getVersions.js.map +1 -0
  130. package/dist/views/Document/getViewsFromConfig.d.ts +1 -1
  131. package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
  132. package/dist/views/Document/getViewsFromConfig.js +18 -19
  133. package/dist/views/Document/getViewsFromConfig.js.map +1 -1
  134. package/dist/views/Document/handleServerFunction.d.ts +24 -0
  135. package/dist/views/Document/handleServerFunction.d.ts.map +1 -0
  136. package/dist/views/Document/handleServerFunction.js +156 -0
  137. package/dist/views/Document/handleServerFunction.js.map +1 -0
  138. package/dist/views/Document/index.d.ts +5 -1
  139. package/dist/views/Document/index.d.ts.map +1 -1
  140. package/dist/views/Document/index.js +181 -72
  141. package/dist/views/Document/index.js.map +1 -1
  142. package/dist/views/Document/renderDocumentSlots.d.ts +12 -0
  143. package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -0
  144. package/dist/views/Document/renderDocumentSlots.js +92 -0
  145. package/dist/views/Document/renderDocumentSlots.js.map +1 -0
  146. package/dist/views/Edit/index.d.ts +3 -2
  147. package/dist/views/Edit/index.d.ts.map +1 -1
  148. package/dist/views/Edit/index.js +7 -3
  149. package/dist/views/Edit/index.js.map +1 -1
  150. package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
  151. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +3 -1
  152. package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
  153. package/dist/views/List/handleServerFunction.d.ts +26 -0
  154. package/dist/views/List/handleServerFunction.d.ts.map +1 -0
  155. package/dist/views/List/handleServerFunction.js +155 -0
  156. package/dist/views/List/handleServerFunction.js.map +1 -0
  157. package/dist/views/List/index.d.ts +12 -2
  158. package/dist/views/List/index.d.ts.map +1 -1
  159. package/dist/views/List/index.js +121 -81
  160. package/dist/views/List/index.js.map +1 -1
  161. package/dist/views/List/renderListViewSlots.d.ts +8 -0
  162. package/dist/views/List/renderListViewSlots.d.ts.map +1 -0
  163. package/dist/views/List/renderListViewSlots.js +44 -0
  164. package/dist/views/List/renderListViewSlots.js.map +1 -0
  165. package/dist/views/LivePreview/Context/sizeReducer.d.ts +1 -1
  166. package/dist/views/LivePreview/Context/sizeReducer.d.ts.map +1 -1
  167. package/dist/views/LivePreview/Context/sizeReducer.js +4 -4
  168. package/dist/views/LivePreview/Context/sizeReducer.js.map +1 -1
  169. package/dist/views/LivePreview/index.client.d.ts.map +1 -1
  170. package/dist/views/LivePreview/index.client.js +38 -35
  171. package/dist/views/LivePreview/index.client.js.map +1 -1
  172. package/dist/views/Login/LoginField/index.d.ts.map +1 -1
  173. package/dist/views/Login/LoginField/index.js +3 -1
  174. package/dist/views/Login/LoginField/index.js.map +1 -1
  175. package/dist/views/Login/index.d.ts.map +1 -1
  176. package/dist/views/Login/index.js +26 -20
  177. package/dist/views/Login/index.js.map +1 -1
  178. package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
  179. package/dist/views/Logout/LogoutClient.js +5 -4
  180. package/dist/views/Logout/LogoutClient.js.map +1 -1
  181. package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -1
  182. package/dist/views/ResetPassword/ResetPasswordForm/index.js +24 -10
  183. package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
  184. package/dist/views/Root/getViewFromConfig.d.ts +3 -1
  185. package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
  186. package/dist/views/Root/getViewFromConfig.js +128 -7
  187. package/dist/views/Root/getViewFromConfig.js.map +1 -1
  188. package/dist/views/Root/index.d.ts.map +1 -1
  189. package/dist/views/Root/index.js +22 -11
  190. package/dist/views/Root/index.js.map +1 -1
  191. package/dist/views/Version/Default/index.d.ts.map +1 -1
  192. package/dist/views/Version/Default/index.js +2 -4
  193. package/dist/views/Version/Default/index.js.map +1 -1
  194. package/dist/views/Versions/buildColumns.d.ts +3 -2
  195. package/dist/views/Versions/buildColumns.d.ts.map +1 -1
  196. package/dist/views/Versions/buildColumns.js +33 -61
  197. package/dist/views/Versions/buildColumns.js.map +1 -1
  198. package/dist/views/Versions/cells/AutosaveCell/index.d.ts +7 -0
  199. package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
  200. package/dist/views/Versions/cells/AutosaveCell/index.js +48 -37
  201. package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
  202. package/dist/views/Versions/cells/CreatedAt/index.d.ts +4 -0
  203. package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
  204. package/dist/views/Versions/cells/CreatedAt/index.js +43 -45
  205. package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
  206. package/dist/views/Versions/cells/ID/index.d.ts +3 -1
  207. package/dist/views/Versions/cells/ID/index.d.ts.map +1 -1
  208. package/dist/views/Versions/cells/ID/index.js +7 -19
  209. package/dist/views/Versions/cells/ID/index.js.map +1 -1
  210. package/dist/views/Versions/index.client.d.ts.map +1 -1
  211. package/dist/views/Versions/index.client.js +53 -51
  212. package/dist/views/Versions/index.client.js.map +1 -1
  213. package/dist/views/Versions/index.d.ts.map +1 -1
  214. package/dist/views/Versions/index.js +3 -2
  215. package/dist/views/Versions/index.js.map +1 -1
  216. package/dist/withPayload.d.ts.map +1 -1
  217. package/dist/withPayload.js +10 -0
  218. package/dist/withPayload.js.map +1 -1
  219. package/license.md +22 -0
  220. package/package.json +16 -7
  221. package/dist/elements/DocumentLocked/index.d.ts +0 -12
  222. package/dist/elements/DocumentLocked/index.d.ts.map +0 -1
  223. package/dist/elements/DocumentLocked/index.js +0 -152
  224. package/dist/elements/DocumentLocked/index.js.map +0 -1
  225. package/dist/elements/DocumentLocked/index.scss +0 -40
  226. package/dist/elements/DocumentTakeOver/index.d.ts +0 -8
  227. package/dist/elements/DocumentTakeOver/index.d.ts.map +0 -1
  228. package/dist/elements/DocumentTakeOver/index.js +0 -98
  229. package/dist/elements/DocumentTakeOver/index.js.map +0 -1
  230. package/dist/elements/DocumentTakeOver/index.scss +0 -39
  231. package/dist/elements/EmailAndUsername/index.d.ts +0 -14
  232. package/dist/elements/EmailAndUsername/index.d.ts.map +0 -1
  233. package/dist/elements/EmailAndUsername/index.js +0 -121
  234. package/dist/elements/EmailAndUsername/index.js.map +0 -1
  235. package/dist/elements/LeaveWithoutSaving/index.d.ts +0 -4
  236. package/dist/elements/LeaveWithoutSaving/index.d.ts.map +0 -1
  237. package/dist/elements/LeaveWithoutSaving/index.js +0 -162
  238. package/dist/elements/LeaveWithoutSaving/index.js.map +0 -1
  239. package/dist/elements/LeaveWithoutSaving/index.scss +0 -39
  240. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts +0 -9
  241. package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +0 -1
  242. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +0 -136
  243. package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +0 -1
  244. package/dist/routes/rest/buildFormState.d.ts +0 -5
  245. package/dist/routes/rest/buildFormState.d.ts.map +0 -1
  246. package/dist/routes/rest/buildFormState.js +0 -46
  247. package/dist/routes/rest/buildFormState.js.map +0 -1
  248. package/dist/views/Edit/Default/Auth/APIKey.d.ts +0 -6
  249. package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +0 -1
  250. package/dist/views/Edit/Default/Auth/APIKey.js +0 -125
  251. package/dist/views/Edit/Default/Auth/APIKey.js.map +0 -1
  252. package/dist/views/Edit/Default/Auth/index.d.ts +0 -5
  253. package/dist/views/Edit/Default/Auth/index.d.ts.map +0 -1
  254. package/dist/views/Edit/Default/Auth/index.js +0 -318
  255. package/dist/views/Edit/Default/Auth/index.js.map +0 -1
  256. package/dist/views/Edit/Default/Auth/index.scss +0 -78
  257. package/dist/views/Edit/Default/Auth/types.d.ts +0 -17
  258. package/dist/views/Edit/Default/Auth/types.d.ts.map +0 -1
  259. package/dist/views/Edit/Default/Auth/types.js +0 -2
  260. package/dist/views/Edit/Default/Auth/types.js.map +0 -1
  261. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts +0 -11
  262. package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +0 -1
  263. package/dist/views/Edit/Default/SetDocumentStepNav/index.js +0 -130
  264. package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +0 -1
  265. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts +0 -8
  266. package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts.map +0 -1
  267. package/dist/views/Edit/Default/SetDocumentTitle/index.js +0 -81
  268. package/dist/views/Edit/Default/SetDocumentTitle/index.js.map +0 -1
  269. package/dist/views/Edit/Default/index.d.ts +0 -4
  270. package/dist/views/Edit/Default/index.d.ts.map +0 -1
  271. package/dist/views/Edit/Default/index.js +0 -349
  272. package/dist/views/Edit/Default/index.js.map +0 -1
  273. package/dist/views/Edit/Default/index.scss +0 -23
  274. package/dist/views/Edit/Default/types.d.ts +0 -6
  275. package/dist/views/Edit/Default/types.d.ts.map +0 -1
  276. package/dist/views/Edit/Default/types.js +0 -2
  277. package/dist/views/Edit/Default/types.js.map +0 -1
  278. package/dist/views/Edit/index.client.d.ts +0 -3
  279. package/dist/views/Edit/index.client.d.ts.map +0 -1
  280. package/dist/views/Edit/index.client.js +0 -54
  281. package/dist/views/Edit/index.client.js.map +0 -1
  282. package/dist/views/List/Default/index.d.ts +0 -4
  283. package/dist/views/List/Default/index.d.ts.map +0 -1
  284. package/dist/views/List/Default/index.js +0 -387
  285. package/dist/views/List/Default/index.js.map +0 -1
  286. package/dist/views/List/Default/index.scss +0 -179
  287. package/dist/views/List/Default/types.d.ts +0 -15
  288. package/dist/views/List/Default/types.d.ts.map +0 -1
  289. package/dist/views/List/Default/types.js +0 -2
  290. package/dist/views/List/Default/types.js.map +0 -1
@@ -1,19 +1,34 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
2
  import { DocumentInfoProvider, EditDepthProvider, HydrateAuthProvider } from '@payloadcms/ui';
3
- import { formatAdminURL, getCreateMappedComponent, isEditing as getIsEditing, RenderComponent } from '@payloadcms/ui/shared';
3
+ import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
4
+ import { formatAdminURL, isEditing as getIsEditing } from '@payloadcms/ui/shared';
5
+ import { buildFormState } from '@payloadcms/ui/utilities/buildFormState';
6
+ import { isRedirectError } from 'next/dist/client/components/redirect.js';
4
7
  import { notFound, redirect } from 'next/navigation.js';
5
8
  import React from 'react';
6
9
  import { DocumentHeader } from '../../elements/DocumentHeader/index.js';
7
10
  import { NotFoundView } from '../NotFound/index.js';
11
+ import { getDocPreferences } from './getDocPreferences.js';
8
12
  import { getDocumentData } from './getDocumentData.js';
9
13
  import { getDocumentPermissions } from './getDocumentPermissions.js';
14
+ import { getIsLocked } from './getIsLocked.js';
10
15
  import { getMetaBySegment } from './getMetaBySegment.js';
16
+ import { getVersions } from './getVersions.js';
11
17
  import { getViewsFromConfig } from './getViewsFromConfig.js';
18
+ import { renderDocumentSlots } from './renderDocumentSlots.js';
12
19
  export const generateMetadata = async args => getMetaBySegment(args);
13
- export const Document = async ({
20
+ // This function will be responsible for rendering an Edit Document view
21
+ // it will be called on the server for Edit page views as well as
22
+ // called on-demand from document drawers
23
+ export const renderDocument = async ({
24
+ disableActions,
25
+ drawerSlug,
14
26
  importMap,
27
+ initialData,
15
28
  initPageResult,
16
29
  params,
30
+ redirectAfterDelete,
31
+ redirectAfterDuplicate,
17
32
  searchParams
18
33
  }) => {
19
34
  const {
@@ -53,47 +68,93 @@ export const Document = async ({
53
68
  let DefaultView;
54
69
  let ErrorView;
55
70
  let apiURL;
56
- const {
57
- data,
58
- formState
59
- } = await getDocumentData({
71
+ // Fetch the doc required for the view
72
+ const doc = initialData || (await getDocumentData({
60
73
  id,
61
- collectionConfig,
62
- globalConfig,
74
+ collectionSlug,
75
+ globalSlug,
63
76
  locale,
64
- req
65
- });
66
- if (!data) {
67
- notFound();
77
+ payload,
78
+ user
79
+ }));
80
+ if (isEditing && !doc) {
81
+ throw new Error('not-found');
68
82
  }
69
- const {
83
+ const [docPreferences, {
70
84
  docPermissions,
71
85
  hasPublishPermission,
72
86
  hasSavePermission
73
- } = await getDocumentPermissions({
87
+ }, {
88
+ currentEditor,
89
+ isLocked,
90
+ lastUpdateTime
91
+ }] = await Promise.all([
92
+ // Get document preferences
93
+ getDocPreferences({
94
+ id,
95
+ collectionSlug,
96
+ globalSlug,
97
+ payload,
98
+ user
99
+ }),
100
+ // Get permissions
101
+ getDocumentPermissions({
74
102
  id,
75
103
  collectionConfig,
76
- data,
104
+ data: doc,
77
105
  globalConfig,
78
106
  req
79
- });
80
- const createMappedComponent = getCreateMappedComponent({
81
- importMap,
82
- serverProps: {
83
- i18n,
84
- initPageResult,
85
- locale,
86
- params,
87
- payload,
88
- permissions,
89
- routeSegments: segments,
90
- searchParams,
91
- user
92
- }
93
- });
107
+ }),
108
+ // Fetch document lock state
109
+ getIsLocked({
110
+ id,
111
+ collectionConfig,
112
+ globalConfig,
113
+ isEditing,
114
+ req
115
+ })]);
116
+ const [{
117
+ hasPublishedDoc,
118
+ mostRecentVersionIsAutosaved,
119
+ unpublishedVersionCount,
120
+ versionCount
121
+ }, {
122
+ state: formState
123
+ }] = await Promise.all([getVersions({
124
+ id,
125
+ collectionConfig,
126
+ docPermissions,
127
+ globalConfig,
128
+ locale: locale?.code,
129
+ payload,
130
+ user
131
+ }), buildFormState({
132
+ id,
133
+ collectionSlug,
134
+ data: doc,
135
+ docPermissions,
136
+ docPreferences,
137
+ globalSlug,
138
+ locale: locale?.code,
139
+ operation: collectionSlug && id || globalSlug ? 'update' : 'create',
140
+ renderAllFields: true,
141
+ req,
142
+ schemaPath: collectionSlug || globalSlug
143
+ })]);
144
+ const serverProps = {
145
+ i18n,
146
+ initPageResult,
147
+ locale,
148
+ params,
149
+ payload,
150
+ permissions,
151
+ routeSegments: segments,
152
+ searchParams,
153
+ user
154
+ };
94
155
  if (collectionConfig) {
95
156
  if (!visibleEntities?.collections?.find(visibleSlug => visibleSlug === collectionSlug)) {
96
- notFound();
157
+ throw new Error('not-found');
97
158
  }
98
159
  const params = new URLSearchParams();
99
160
  if (collectionConfig.versions?.drafts) {
@@ -104,7 +165,7 @@ export const Document = async ({
104
165
  }
105
166
  const apiQueryParams = `?${params.toString()}`;
106
167
  apiURL = `${serverURL}${apiRoute}/${collectionSlug}/${id}${apiQueryParams}`;
107
- RootViewOverride = collectionConfig?.admin?.components?.views?.edit?.root && 'Component' in collectionConfig.admin.components.views.edit.root ? createMappedComponent(collectionConfig?.admin?.components?.views?.edit?.root?.Component, undefined, undefined, 'collectionConfig?.admin?.components?.views?.edit?.root') : null;
168
+ RootViewOverride = collectionConfig?.admin?.components?.views?.edit?.root && 'Component' in collectionConfig.admin.components.views.edit.root ? collectionConfig?.admin?.components?.views?.edit?.root?.Component : null;
108
169
  if (!RootViewOverride) {
109
170
  const collectionViews = getViewsFromConfig({
110
171
  collectionConfig,
@@ -112,17 +173,19 @@ export const Document = async ({
112
173
  docPermissions,
113
174
  routeSegments: segments
114
175
  });
115
- CustomView = createMappedComponent(collectionViews?.CustomView?.payloadComponent, undefined, collectionViews?.CustomView?.Component, 'collectionViews?.CustomView.payloadComponent');
116
- DefaultView = createMappedComponent(collectionViews?.DefaultView?.payloadComponent, undefined, collectionViews?.DefaultView?.Component, 'collectionViews?.DefaultView.payloadComponent');
117
- ErrorView = createMappedComponent(collectionViews?.ErrorView?.payloadComponent, undefined, collectionViews?.ErrorView?.Component, 'collectionViews?.ErrorView.payloadComponent');
176
+ CustomView = collectionViews?.CustomView;
177
+ DefaultView = collectionViews?.DefaultView;
178
+ ErrorView = collectionViews?.ErrorView;
118
179
  }
119
180
  if (!CustomView && !DefaultView && !RootViewOverride && !ErrorView) {
120
- ErrorView = createMappedComponent(undefined, undefined, NotFoundView, 'NotFoundView');
181
+ ErrorView = {
182
+ Component: NotFoundView
183
+ };
121
184
  }
122
185
  }
123
186
  if (globalConfig) {
124
187
  if (!visibleEntities?.globals?.find(visibleSlug => visibleSlug === globalSlug)) {
125
- notFound();
188
+ throw new Error('not-found');
126
189
  }
127
190
  const params = new URLSearchParams({
128
191
  locale: locale?.code
@@ -135,7 +198,7 @@ export const Document = async ({
135
198
  }
136
199
  const apiQueryParams = `?${params.toString()}`;
137
200
  apiURL = `${serverURL}${apiRoute}/${globalSlug}${apiQueryParams}`;
138
- RootViewOverride = globalConfig?.admin?.components?.views?.edit?.root && 'Component' in globalConfig.admin.components.views.edit.root ? createMappedComponent(globalConfig?.admin?.components?.views?.edit?.root?.Component, undefined, undefined, 'globalConfig?.admin?.components?.views?.edit?.root') : null;
201
+ RootViewOverride = globalConfig?.admin?.components?.views?.edit?.root && 'Component' in globalConfig.admin.components.views.edit.root ? globalConfig?.admin?.components?.views?.edit?.root?.Component : null;
139
202
  if (!RootViewOverride) {
140
203
  const globalViews = getViewsFromConfig({
141
204
  config,
@@ -143,11 +206,13 @@ export const Document = async ({
143
206
  globalConfig,
144
207
  routeSegments: segments
145
208
  });
146
- CustomView = createMappedComponent(globalViews?.CustomView?.payloadComponent, undefined, globalViews?.CustomView?.Component, 'globalViews?.CustomView.payloadComponent');
147
- DefaultView = createMappedComponent(globalViews?.DefaultView?.payloadComponent, undefined, globalViews?.DefaultView?.Component, 'globalViews?.DefaultView.payloadComponent');
148
- ErrorView = createMappedComponent(globalViews?.ErrorView?.payloadComponent, undefined, globalViews?.ErrorView?.Component, 'globalViews?.ErrorView.payloadComponent');
209
+ CustomView = globalViews?.CustomView;
210
+ DefaultView = globalViews?.DefaultView;
211
+ ErrorView = globalViews?.ErrorView;
149
212
  if (!CustomView && !DefaultView && !RootViewOverride && !ErrorView) {
150
- ErrorView = createMappedComponent(undefined, undefined, NotFoundView, 'NotFoundView');
213
+ ErrorView = {
214
+ Component: NotFoundView
215
+ };
151
216
  }
152
217
  }
153
218
  }
@@ -160,7 +225,7 @@ export const Document = async ({
160
225
  if (shouldAutosave && !validateDraftData && !id && collectionSlug) {
161
226
  const doc = await payload.create({
162
227
  collection: collectionSlug,
163
- data: {},
228
+ data: initialData || {},
164
229
  depth: 0,
165
230
  draft: true,
166
231
  fallbackLocale: null,
@@ -176,37 +241,81 @@ export const Document = async ({
176
241
  });
177
242
  redirect(redirectURL);
178
243
  } else {
244
+ throw new Error('not-found');
245
+ }
246
+ }
247
+ const documentSlots = renderDocumentSlots({
248
+ collectionConfig,
249
+ globalConfig,
250
+ hasSavePermission,
251
+ permissions: docPermissions,
252
+ req
253
+ });
254
+ const clientProps = {
255
+ formState,
256
+ ...documentSlots
257
+ };
258
+ return {
259
+ data: doc,
260
+ Document: /*#__PURE__*/_jsxs(DocumentInfoProvider, {
261
+ apiURL: apiURL,
262
+ collectionSlug: collectionConfig?.slug,
263
+ currentEditor: currentEditor,
264
+ disableActions: disableActions ?? false,
265
+ docPermissions: docPermissions,
266
+ globalSlug: globalConfig?.slug,
267
+ hasPublishedDoc: hasPublishedDoc,
268
+ hasPublishPermission: hasPublishPermission,
269
+ hasSavePermission: hasSavePermission,
270
+ id: id,
271
+ initialData: doc,
272
+ initialState: formState,
273
+ isEditing: isEditing,
274
+ isLocked: isLocked,
275
+ lastUpdateTime: lastUpdateTime,
276
+ mostRecentVersionIsAutosaved: mostRecentVersionIsAutosaved,
277
+ redirectAfterDelete: redirectAfterDelete,
278
+ redirectAfterDuplicate: redirectAfterDuplicate,
279
+ unpublishedVersionCount: unpublishedVersionCount,
280
+ versionCount: versionCount,
281
+ children: [!RootViewOverride && !drawerSlug && /*#__PURE__*/_jsx(DocumentHeader, {
282
+ collectionConfig: collectionConfig,
283
+ globalConfig: globalConfig,
284
+ i18n: i18n,
285
+ payload: payload,
286
+ permissions: permissions
287
+ }), /*#__PURE__*/_jsx(HydrateAuthProvider, {
288
+ permissions: permissions
289
+ }), /*#__PURE__*/_jsx(EditDepthProvider, {
290
+ children: ErrorView ? /*#__PURE__*/_jsx(RenderServerComponent, {
291
+ clientProps: clientProps,
292
+ Component: ErrorView.ComponentConfig || ErrorView.Component,
293
+ importMap: importMap,
294
+ serverProps: serverProps
295
+ }) : /*#__PURE__*/_jsx(RenderServerComponent, {
296
+ clientProps: clientProps,
297
+ Component: RootViewOverride ? RootViewOverride : CustomView?.ComponentConfig || CustomView?.Component ? CustomView?.ComponentConfig || CustomView?.Component : DefaultView?.ComponentConfig || DefaultView?.Component,
298
+ importMap: importMap,
299
+ serverProps: serverProps
300
+ })
301
+ })]
302
+ }, locale?.code)
303
+ };
304
+ };
305
+ export const Document = async args => {
306
+ try {
307
+ const {
308
+ Document: RenderedDocument
309
+ } = await renderDocument(args);
310
+ return RenderedDocument;
311
+ } catch (error) {
312
+ if (isRedirectError(error)) {
313
+ throw error;
314
+ }
315
+ args.initPageResult.req.payload.logger.error(error);
316
+ if (error.message === 'not-found') {
179
317
  notFound();
180
318
  }
181
319
  }
182
- return /*#__PURE__*/_jsxs(DocumentInfoProvider, {
183
- apiURL: apiURL,
184
- collectionSlug: collectionConfig?.slug,
185
- disableActions: false,
186
- docPermissions: docPermissions,
187
- globalSlug: globalConfig?.slug,
188
- hasPublishPermission: hasPublishPermission,
189
- hasSavePermission: hasSavePermission,
190
- id: id,
191
- initialData: data,
192
- initialState: formState,
193
- isEditing: isEditing,
194
- children: [!RootViewOverride && /*#__PURE__*/_jsx(DocumentHeader, {
195
- collectionConfig: collectionConfig,
196
- globalConfig: globalConfig,
197
- i18n: i18n,
198
- payload: payload,
199
- permissions: permissions
200
- }), /*#__PURE__*/_jsx(HydrateAuthProvider, {
201
- permissions: permissions
202
- }), /*#__PURE__*/_jsx(EditDepthProvider, {
203
- depth: 1,
204
- children: ErrorView ? /*#__PURE__*/_jsx(RenderComponent, {
205
- mappedComponent: ErrorView
206
- }) : /*#__PURE__*/_jsx(RenderComponent, {
207
- mappedComponent: RootViewOverride ? RootViewOverride : CustomView ? CustomView : DefaultView
208
- })
209
- }, `${collectionSlug || globalSlug}${locale?.code ? `-${locale?.code}` : ''}`)]
210
- }, locale?.code);
211
320
  };
212
321
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["DocumentInfoProvider","EditDepthProvider","HydrateAuthProvider","formatAdminURL","getCreateMappedComponent","isEditing","getIsEditing","RenderComponent","notFound","redirect","React","DocumentHeader","NotFoundView","getDocumentData","getDocumentPermissions","getMetaBySegment","getViewsFromConfig","generateMetadata","args","Document","importMap","initPageResult","params","searchParams","collectionConfig","docID","id","globalConfig","locale","permissions","req","i18n","payload","config","routes","admin","adminRoute","api","apiRoute","serverURL","user","visibleEntities","segments","Array","isArray","collectionSlug","slug","undefined","globalSlug","RootViewOverride","CustomView","DefaultView","ErrorView","apiURL","data","formState","docPermissions","hasPublishPermission","hasSavePermission","createMappedComponent","serverProps","routeSegments","collections","find","visibleSlug","URLSearchParams","versions","drafts","append","code","apiQueryParams","toString","components","views","edit","root","Component","collectionViews","payloadComponent","globals","globalViews","shouldAutosave","autosave","validateDraftData","validate","doc","create","collection","depth","draft","fallbackLocale","redirectURL","path","_jsxs","disableActions","initialData","initialState","_jsx","mappedComponent"],"sources":["../../../src/views/Document/index.tsx"],"sourcesContent":["import type {\n AdminViewProps,\n EditViewComponent,\n MappedComponent,\n ServerSideEditViewProps,\n} from 'payload'\n\nimport { DocumentInfoProvider, EditDepthProvider, HydrateAuthProvider } from '@payloadcms/ui'\nimport {\n formatAdminURL,\n getCreateMappedComponent,\n isEditing as getIsEditing,\n RenderComponent,\n} from '@payloadcms/ui/shared'\nimport { notFound, redirect } from 'next/navigation.js'\nimport React from 'react'\n\nimport type { GenerateEditViewMetadata } from './getMetaBySegment.js'\n\nimport { DocumentHeader } from '../../elements/DocumentHeader/index.js'\nimport { NotFoundView } from '../NotFound/index.js'\nimport { getDocumentData } from './getDocumentData.js'\nimport { getDocumentPermissions } from './getDocumentPermissions.js'\nimport { getMetaBySegment } from './getMetaBySegment.js'\nimport { getViewsFromConfig } from './getViewsFromConfig.js'\n\nexport const generateMetadata: GenerateEditViewMetadata = async (args) => getMetaBySegment(args)\n\nexport const Document: React.FC<AdminViewProps> = async ({\n importMap,\n initPageResult,\n params,\n searchParams,\n}) => {\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n locale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: {\n config,\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n },\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const segments = Array.isArray(params?.segments) ? params.segments : []\n const collectionSlug = collectionConfig?.slug || undefined\n const globalSlug = globalConfig?.slug || undefined\n\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n\n let RootViewOverride: MappedComponent<ServerSideEditViewProps>\n let CustomView: MappedComponent<ServerSideEditViewProps>\n let DefaultView: MappedComponent<ServerSideEditViewProps>\n let ErrorView: MappedComponent<AdminViewProps>\n\n let apiURL: string\n\n const { data, formState } = await getDocumentData({\n id,\n collectionConfig,\n globalConfig,\n locale,\n req,\n })\n\n if (!data) {\n notFound()\n }\n\n const { docPermissions, hasPublishPermission, hasSavePermission } = await getDocumentPermissions({\n id,\n collectionConfig,\n data,\n globalConfig,\n req,\n })\n\n const createMappedComponent = getCreateMappedComponent({\n importMap,\n serverProps: {\n i18n,\n initPageResult,\n locale,\n params,\n payload,\n permissions,\n routeSegments: segments,\n searchParams,\n user,\n },\n })\n\n if (collectionConfig) {\n if (!visibleEntities?.collections?.find((visibleSlug) => visibleSlug === collectionSlug)) {\n notFound()\n }\n\n const params = new URLSearchParams()\n if (collectionConfig.versions?.drafts) {\n params.append('draft', 'true')\n }\n if (locale?.code) {\n params.append('locale', locale.code)\n }\n\n const apiQueryParams = `?${params.toString()}`\n\n apiURL = `${serverURL}${apiRoute}/${collectionSlug}/${id}${apiQueryParams}`\n\n RootViewOverride =\n collectionConfig?.admin?.components?.views?.edit?.root &&\n 'Component' in collectionConfig.admin.components.views.edit.root\n ? createMappedComponent(\n collectionConfig?.admin?.components?.views?.edit?.root?.Component as EditViewComponent, // some type info gets lost from Config => SanitizedConfig due to our usage of Deep type operations from ts-essentials. Despite .Component being defined as EditViewComponent, this info is lost and we need cast it here.\n undefined,\n undefined,\n 'collectionConfig?.admin?.components?.views?.edit?.root',\n )\n : null\n\n if (!RootViewOverride) {\n const collectionViews = getViewsFromConfig({\n collectionConfig,\n config,\n docPermissions,\n routeSegments: segments,\n })\n\n CustomView = createMappedComponent(\n collectionViews?.CustomView?.payloadComponent,\n undefined,\n collectionViews?.CustomView?.Component,\n 'collectionViews?.CustomView.payloadComponent',\n )\n\n DefaultView = createMappedComponent(\n collectionViews?.DefaultView?.payloadComponent,\n undefined,\n collectionViews?.DefaultView?.Component,\n 'collectionViews?.DefaultView.payloadComponent',\n )\n\n ErrorView = createMappedComponent(\n collectionViews?.ErrorView?.payloadComponent,\n undefined,\n collectionViews?.ErrorView?.Component,\n 'collectionViews?.ErrorView.payloadComponent',\n )\n }\n\n if (!CustomView && !DefaultView && !RootViewOverride && !ErrorView) {\n ErrorView = createMappedComponent(undefined, undefined, NotFoundView, 'NotFoundView')\n }\n }\n\n if (globalConfig) {\n if (!visibleEntities?.globals?.find((visibleSlug) => visibleSlug === globalSlug)) {\n notFound()\n }\n\n const params = new URLSearchParams({\n locale: locale?.code,\n })\n\n if (globalConfig.versions?.drafts) {\n params.append('draft', 'true')\n }\n\n if (locale?.code) {\n params.append('locale', locale.code)\n }\n\n const apiQueryParams = `?${params.toString()}`\n\n apiURL = `${serverURL}${apiRoute}/${globalSlug}${apiQueryParams}`\n\n RootViewOverride =\n globalConfig?.admin?.components?.views?.edit?.root &&\n 'Component' in globalConfig.admin.components.views.edit.root\n ? createMappedComponent(\n globalConfig?.admin?.components?.views?.edit?.root?.Component as EditViewComponent, // some type info gets lost from Config => SanitizedConfig due to our usage of Deep type operations from ts-essentials. Despite .Component being defined as EditViewComponent, this info is lost and we need cast it here.\n undefined,\n undefined,\n 'globalConfig?.admin?.components?.views?.edit?.root',\n )\n : null\n\n if (!RootViewOverride) {\n const globalViews = getViewsFromConfig({\n config,\n docPermissions,\n globalConfig,\n routeSegments: segments,\n })\n\n CustomView = createMappedComponent(\n globalViews?.CustomView?.payloadComponent,\n undefined,\n globalViews?.CustomView?.Component,\n 'globalViews?.CustomView.payloadComponent',\n )\n\n DefaultView = createMappedComponent(\n globalViews?.DefaultView?.payloadComponent,\n undefined,\n globalViews?.DefaultView?.Component,\n 'globalViews?.DefaultView.payloadComponent',\n )\n\n ErrorView = createMappedComponent(\n globalViews?.ErrorView?.payloadComponent,\n undefined,\n globalViews?.ErrorView?.Component,\n 'globalViews?.ErrorView.payloadComponent',\n )\n\n if (!CustomView && !DefaultView && !RootViewOverride && !ErrorView) {\n ErrorView = createMappedComponent(undefined, undefined, NotFoundView, 'NotFoundView')\n }\n }\n }\n\n /**\n * Handle case where autoSave is enabled and the document is being created\n * => create document and redirect\n */\n const shouldAutosave =\n hasSavePermission &&\n ((collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave))\n const validateDraftData =\n collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.validate\n\n if (shouldAutosave && !validateDraftData && !id && collectionSlug) {\n const doc = await payload.create({\n collection: collectionSlug,\n data: {},\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale: locale?.code,\n req,\n user,\n })\n\n if (doc?.id) {\n const redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${doc.id}`,\n serverURL,\n })\n redirect(redirectURL)\n } else {\n notFound()\n }\n }\n\n return (\n <DocumentInfoProvider\n apiURL={apiURL}\n collectionSlug={collectionConfig?.slug}\n disableActions={false}\n docPermissions={docPermissions}\n globalSlug={globalConfig?.slug}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={id}\n initialData={data}\n initialState={formState}\n isEditing={isEditing}\n key={locale?.code}\n >\n {!RootViewOverride && (\n <DocumentHeader\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n i18n={i18n}\n payload={payload}\n permissions={permissions}\n />\n )}\n <HydrateAuthProvider permissions={permissions} />\n {/**\n * After bumping the Next.js canary to 104, and React to 19.0.0-rc-06d0b89e-20240801\" we have to deepCopy the permissions object (https://github.com/payloadcms/payload/pull/7541).\n * If both HydrateClientUser and RenderCustomComponent receive the same permissions object (same object reference), we get a\n * \"TypeError: Cannot read properties of undefined (reading '$$typeof')\" error when loading up some version views - for example a versions\n * view in the draft-posts collection of the versions test suite. RenderCustomComponent is what renders the versions view.\n *\n * // TODO: Revisit this in the future and figure out why this is happening. Might be a React/Next.js bug. We don't know why it happens, and a future React/Next version might unbreak this (keep an eye on this and remove deepCopyObjectSimple if that's the case)\n */}\n <EditDepthProvider\n depth={1}\n key={`${collectionSlug || globalSlug}${locale?.code ? `-${locale?.code}` : ''}`}\n >\n {ErrorView ? (\n <RenderComponent mappedComponent={ErrorView} />\n ) : (\n <RenderComponent\n mappedComponent={\n RootViewOverride ? RootViewOverride : CustomView ? CustomView : DefaultView\n }\n />\n )}\n </EditDepthProvider>\n </DocumentInfoProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["DocumentInfoProvider","EditDepthProvider","HydrateAuthProvider","RenderServerComponent","formatAdminURL","isEditing","getIsEditing","buildFormState","isRedirectError","notFound","redirect","React","DocumentHeader","NotFoundView","getDocPreferences","getDocumentData","getDocumentPermissions","getIsLocked","getMetaBySegment","getVersions","getViewsFromConfig","renderDocumentSlots","generateMetadata","args","renderDocument","disableActions","drawerSlug","importMap","initialData","initPageResult","params","redirectAfterDelete","redirectAfterDuplicate","searchParams","collectionConfig","docID","id","globalConfig","locale","permissions","req","i18n","payload","config","routes","admin","adminRoute","api","apiRoute","serverURL","user","visibleEntities","segments","Array","isArray","collectionSlug","slug","undefined","globalSlug","RootViewOverride","CustomView","DefaultView","ErrorView","apiURL","doc","Error","docPreferences","docPermissions","hasPublishPermission","hasSavePermission","currentEditor","isLocked","lastUpdateTime","Promise","all","data","hasPublishedDoc","mostRecentVersionIsAutosaved","unpublishedVersionCount","versionCount","state","formState","code","operation","renderAllFields","schemaPath","serverProps","routeSegments","collections","find","visibleSlug","URLSearchParams","versions","drafts","append","apiQueryParams","toString","components","views","edit","root","Component","collectionViews","globals","globalViews","shouldAutosave","autosave","validateDraftData","validate","create","collection","depth","draft","fallbackLocale","redirectURL","path","documentSlots","clientProps","Document","_jsxs","initialState","_jsx","ComponentConfig","RenderedDocument","error","logger","message"],"sources":["../../../src/views/Document/index.tsx"],"sourcesContent":["import type {\n AdminViewProps,\n Data,\n PayloadComponent,\n ServerProps,\n ServerSideEditViewProps,\n} from 'payload'\n\nimport { DocumentInfoProvider, EditDepthProvider, HydrateAuthProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { formatAdminURL, isEditing as getIsEditing } from '@payloadcms/ui/shared'\nimport { buildFormState } from '@payloadcms/ui/utilities/buildFormState'\nimport { isRedirectError } from 'next/dist/client/components/redirect.js'\nimport { notFound, redirect } from 'next/navigation.js'\nimport React from 'react'\n\nimport type { GenerateEditViewMetadata } from './getMetaBySegment.js'\nimport type { ViewFromConfig } from './getViewsFromConfig.js'\n\nimport { DocumentHeader } from '../../elements/DocumentHeader/index.js'\nimport { NotFoundView } from '../NotFound/index.js'\nimport { getDocPreferences } from './getDocPreferences.js'\nimport { getDocumentData } from './getDocumentData.js'\nimport { getDocumentPermissions } from './getDocumentPermissions.js'\nimport { getIsLocked } from './getIsLocked.js'\nimport { getMetaBySegment } from './getMetaBySegment.js'\nimport { getVersions } from './getVersions.js'\nimport { getViewsFromConfig } from './getViewsFromConfig.js'\nimport { renderDocumentSlots } from './renderDocumentSlots.js'\n\nexport const generateMetadata: GenerateEditViewMetadata = async (args) => getMetaBySegment(args)\n\n// This function will be responsible for rendering an Edit Document view\n// it will be called on the server for Edit page views as well as\n// called on-demand from document drawers\nexport const renderDocument = async ({\n disableActions,\n drawerSlug,\n importMap,\n initialData,\n initPageResult,\n params,\n redirectAfterDelete,\n redirectAfterDuplicate,\n searchParams,\n}: AdminViewProps): Promise<{\n data: Data\n Document: React.ReactNode\n}> => {\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n locale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: {\n config,\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n },\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const segments = Array.isArray(params?.segments) ? params.segments : []\n const collectionSlug = collectionConfig?.slug || undefined\n const globalSlug = globalConfig?.slug || undefined\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n\n let RootViewOverride: PayloadComponent\n let CustomView: ViewFromConfig<ServerSideEditViewProps>\n let DefaultView: ViewFromConfig<ServerSideEditViewProps>\n let ErrorView: ViewFromConfig<AdminViewProps>\n\n let apiURL: string\n\n // Fetch the doc required for the view\n const doc =\n initialData ||\n (await getDocumentData({\n id,\n collectionSlug,\n globalSlug,\n locale,\n payload,\n user,\n }))\n\n if (isEditing && !doc) {\n throw new Error('not-found')\n }\n\n const [\n docPreferences,\n { docPermissions, hasPublishPermission, hasSavePermission },\n { currentEditor, isLocked, lastUpdateTime },\n ] = await Promise.all([\n // Get document preferences\n getDocPreferences({\n id,\n collectionSlug,\n globalSlug,\n payload,\n user,\n }),\n\n // Get permissions\n getDocumentPermissions({\n id,\n collectionConfig,\n data: doc,\n globalConfig,\n req,\n }),\n\n // Fetch document lock state\n getIsLocked({\n id,\n collectionConfig,\n globalConfig,\n isEditing,\n req,\n }),\n ])\n\n const [\n { hasPublishedDoc, mostRecentVersionIsAutosaved, unpublishedVersionCount, versionCount },\n { state: formState },\n ] = await Promise.all([\n getVersions({\n id,\n collectionConfig,\n docPermissions,\n globalConfig,\n locale: locale?.code,\n payload,\n user,\n }),\n buildFormState({\n id,\n collectionSlug,\n data: doc,\n docPermissions,\n docPreferences,\n globalSlug,\n locale: locale?.code,\n operation: (collectionSlug && id) || globalSlug ? 'update' : 'create',\n renderAllFields: true,\n req,\n schemaPath: collectionSlug || globalSlug,\n }),\n ])\n\n const serverProps: ServerProps = {\n i18n,\n initPageResult,\n locale,\n params,\n payload,\n permissions,\n routeSegments: segments,\n searchParams,\n user,\n }\n\n if (collectionConfig) {\n if (!visibleEntities?.collections?.find((visibleSlug) => visibleSlug === collectionSlug)) {\n throw new Error('not-found')\n }\n\n const params = new URLSearchParams()\n if (collectionConfig.versions?.drafts) {\n params.append('draft', 'true')\n }\n if (locale?.code) {\n params.append('locale', locale.code)\n }\n\n const apiQueryParams = `?${params.toString()}`\n\n apiURL = `${serverURL}${apiRoute}/${collectionSlug}/${id}${apiQueryParams}`\n\n RootViewOverride =\n collectionConfig?.admin?.components?.views?.edit?.root &&\n 'Component' in collectionConfig.admin.components.views.edit.root\n ? collectionConfig?.admin?.components?.views?.edit?.root?.Component\n : null\n\n if (!RootViewOverride) {\n const collectionViews = getViewsFromConfig({\n collectionConfig,\n config,\n docPermissions,\n routeSegments: segments,\n })\n\n CustomView = collectionViews?.CustomView\n DefaultView = collectionViews?.DefaultView\n ErrorView = collectionViews?.ErrorView\n }\n\n if (!CustomView && !DefaultView && !RootViewOverride && !ErrorView) {\n ErrorView = {\n Component: NotFoundView,\n }\n }\n }\n\n if (globalConfig) {\n if (!visibleEntities?.globals?.find((visibleSlug) => visibleSlug === globalSlug)) {\n throw new Error('not-found')\n }\n\n const params = new URLSearchParams({\n locale: locale?.code,\n })\n\n if (globalConfig.versions?.drafts) {\n params.append('draft', 'true')\n }\n\n if (locale?.code) {\n params.append('locale', locale.code)\n }\n\n const apiQueryParams = `?${params.toString()}`\n\n apiURL = `${serverURL}${apiRoute}/${globalSlug}${apiQueryParams}`\n\n RootViewOverride =\n globalConfig?.admin?.components?.views?.edit?.root &&\n 'Component' in globalConfig.admin.components.views.edit.root\n ? globalConfig?.admin?.components?.views?.edit?.root?.Component\n : null\n\n if (!RootViewOverride) {\n const globalViews = getViewsFromConfig({\n config,\n docPermissions,\n globalConfig,\n routeSegments: segments,\n })\n\n CustomView = globalViews?.CustomView\n DefaultView = globalViews?.DefaultView\n ErrorView = globalViews?.ErrorView\n\n if (!CustomView && !DefaultView && !RootViewOverride && !ErrorView) {\n ErrorView = {\n Component: NotFoundView,\n }\n }\n }\n }\n\n /**\n * Handle case where autoSave is enabled and the document is being created\n * => create document and redirect\n */\n const shouldAutosave =\n hasSavePermission &&\n ((collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave))\n\n const validateDraftData =\n collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.validate\n\n if (shouldAutosave && !validateDraftData && !id && collectionSlug) {\n const doc = await payload.create({\n collection: collectionSlug,\n data: initialData || {},\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale: locale?.code,\n req,\n user,\n })\n\n if (doc?.id) {\n const redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${doc.id}`,\n serverURL,\n })\n redirect(redirectURL)\n } else {\n throw new Error('not-found')\n }\n }\n\n const documentSlots = renderDocumentSlots({\n collectionConfig,\n globalConfig,\n hasSavePermission,\n permissions: docPermissions,\n req,\n })\n\n const clientProps = { formState, ...documentSlots }\n\n return {\n data: doc,\n Document: (\n <DocumentInfoProvider\n apiURL={apiURL}\n collectionSlug={collectionConfig?.slug}\n currentEditor={currentEditor}\n disableActions={disableActions ?? false}\n docPermissions={docPermissions}\n globalSlug={globalConfig?.slug}\n hasPublishedDoc={hasPublishedDoc}\n hasPublishPermission={hasPublishPermission}\n hasSavePermission={hasSavePermission}\n id={id}\n initialData={doc}\n initialState={formState}\n isEditing={isEditing}\n isLocked={isLocked}\n key={locale?.code}\n lastUpdateTime={lastUpdateTime}\n mostRecentVersionIsAutosaved={mostRecentVersionIsAutosaved}\n redirectAfterDelete={redirectAfterDelete}\n redirectAfterDuplicate={redirectAfterDuplicate}\n unpublishedVersionCount={unpublishedVersionCount}\n versionCount={versionCount}\n >\n {!RootViewOverride && !drawerSlug && (\n <DocumentHeader\n collectionConfig={collectionConfig}\n globalConfig={globalConfig}\n i18n={i18n}\n payload={payload}\n permissions={permissions}\n />\n )}\n <HydrateAuthProvider permissions={permissions} />\n <EditDepthProvider>\n {ErrorView ? (\n <RenderServerComponent\n clientProps={clientProps}\n Component={ErrorView.ComponentConfig || ErrorView.Component}\n importMap={importMap}\n serverProps={serverProps}\n />\n ) : (\n <RenderServerComponent\n clientProps={clientProps}\n Component={\n RootViewOverride\n ? RootViewOverride\n : CustomView?.ComponentConfig || CustomView?.Component\n ? CustomView?.ComponentConfig || CustomView?.Component\n : DefaultView?.ComponentConfig || DefaultView?.Component\n }\n importMap={importMap}\n serverProps={serverProps}\n />\n )}\n </EditDepthProvider>\n </DocumentInfoProvider>\n ),\n }\n}\n\nexport const Document: React.FC<AdminViewProps> = async (args) => {\n try {\n const { Document: RenderedDocument } = await renderDocument(args)\n return RenderedDocument\n } catch (error) {\n if (isRedirectError(error)) {\n throw error\n }\n args.initPageResult.req.payload.logger.error(error)\n\n if (error.message === 'not-found') {\n notFound()\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import type { DefaultServerFunctionArgs, DocumentPermissions, DocumentSlots, PayloadRequest, SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload';
2
+ export declare const renderDocumentSlots: (args: {
3
+ collectionConfig?: SanitizedCollectionConfig;
4
+ globalConfig?: SanitizedGlobalConfig;
5
+ hasSavePermission: boolean;
6
+ permissions: DocumentPermissions;
7
+ req: PayloadRequest;
8
+ }) => DocumentSlots;
9
+ export declare const renderDocumentSlotsHandler: (args: {
10
+ collectionSlug: string;
11
+ } & DefaultServerFunctionArgs) => Promise<DocumentSlots>;
12
+ //# sourceMappingURL=renderDocumentSlots.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderDocumentSlots.d.ts","sourceRoot":"","sources":["../../../src/views/Document/renderDocumentSlots.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,yBAAyB,EACzB,mBAAmB,EACnB,aAAa,EACb,cAAc,EACd,yBAAyB,EACzB,qBAAqB,EAEtB,MAAM,SAAS,CAAA;AAQhB,eAAO,MAAM,mBAAmB,EAAE,CAAC,IAAI,EAAE;IACvC,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,iBAAiB,EAAE,OAAO,CAAA;IAC1B,WAAW,EAAE,mBAAmB,CAAA;IAChC,GAAG,EAAE,cAAc,CAAA;CACpB,KAAK,aAwFL,CAAA;AAED,eAAO,MAAM,0BAA0B,SAC/B;IAAE,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG,yBAAyB,2BAsB7D,CAAA"}
@@ -0,0 +1,92 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { ViewDescription } from '@payloadcms/ui';
3
+ import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
4
+ import React from 'react';
5
+ import { getDocumentPermissions } from './getDocumentPermissions.js';
6
+ export const renderDocumentSlots = args => {
7
+ const {
8
+ collectionConfig,
9
+ globalConfig,
10
+ hasSavePermission,
11
+ req
12
+ } = args;
13
+ const components = {};
14
+ const unsavedDraftWithValidations = undefined;
15
+ const isPreviewEnabled = collectionConfig?.admin?.preview || globalConfig?.admin?.preview;
16
+ const CustomPreviewButton = collectionConfig?.admin?.components?.edit?.PreviewButton || globalConfig?.admin?.components?.elements?.PreviewButton;
17
+ if (isPreviewEnabled && CustomPreviewButton) {
18
+ components.PreviewButton = /*#__PURE__*/_jsx(RenderServerComponent, {
19
+ Component: CustomPreviewButton,
20
+ importMap: req.payload.importMap
21
+ });
22
+ }
23
+ const descriptionFromConfig = collectionConfig?.admin?.description || globalConfig?.admin?.description;
24
+ const staticDescription = typeof descriptionFromConfig === 'function' ? descriptionFromConfig({
25
+ t: req.i18n.t
26
+ }) : descriptionFromConfig;
27
+ const CustomDescription = collectionConfig?.admin?.components?.Description || globalConfig?.admin?.components?.elements?.Description;
28
+ const hasDescription = CustomDescription || staticDescription;
29
+ if (hasDescription) {
30
+ components.Description = /*#__PURE__*/_jsx(RenderServerComponent, {
31
+ clientProps: {
32
+ description: staticDescription
33
+ },
34
+ Component: CustomDescription,
35
+ Fallback: ViewDescription,
36
+ importMap: req.payload.importMap
37
+ });
38
+ }
39
+ if (hasSavePermission) {
40
+ if (collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts) {
41
+ const CustomPublishButton = collectionConfig?.admin?.components?.edit?.PublishButton || globalConfig?.admin?.components?.elements?.PublishButton;
42
+ if (CustomPublishButton) {
43
+ components.PublishButton = /*#__PURE__*/_jsx(RenderServerComponent, {
44
+ Component: CustomPublishButton,
45
+ importMap: req.payload.importMap
46
+ });
47
+ }
48
+ const CustomSaveDraftButton = collectionConfig?.admin?.components?.edit?.SaveDraftButton || globalConfig?.admin?.components?.elements?.SaveDraftButton;
49
+ const draftsEnabled = collectionConfig?.versions?.drafts && !collectionConfig?.versions?.drafts?.autosave || globalConfig?.versions?.drafts && !globalConfig?.versions?.drafts?.autosave;
50
+ if ((draftsEnabled || unsavedDraftWithValidations) && CustomSaveDraftButton) {
51
+ components.SaveDraftButton = /*#__PURE__*/_jsx(RenderServerComponent, {
52
+ Component: CustomSaveDraftButton,
53
+ importMap: req.payload.importMap
54
+ });
55
+ }
56
+ } else {
57
+ const CustomSaveButton = collectionConfig?.admin?.components?.edit?.SaveButton || globalConfig?.admin?.components?.elements?.SaveButton;
58
+ if (CustomSaveButton) {
59
+ components.SaveButton = /*#__PURE__*/_jsx(RenderServerComponent, {
60
+ Component: CustomSaveButton,
61
+ importMap: req.payload.importMap
62
+ });
63
+ }
64
+ }
65
+ }
66
+ return components;
67
+ };
68
+ export const renderDocumentSlotsHandler = async args => {
69
+ const {
70
+ collectionSlug,
71
+ req
72
+ } = args;
73
+ const collectionConfig = req.payload.collections[collectionSlug]?.config;
74
+ if (!collectionConfig) {
75
+ throw new Error(req.t('error:incorrectCollection'));
76
+ }
77
+ const {
78
+ docPermissions,
79
+ hasSavePermission
80
+ } = await getDocumentPermissions({
81
+ collectionConfig,
82
+ data: {},
83
+ req
84
+ });
85
+ return renderDocumentSlots({
86
+ collectionConfig,
87
+ hasSavePermission,
88
+ permissions: docPermissions,
89
+ req
90
+ });
91
+ };
92
+ //# sourceMappingURL=renderDocumentSlots.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"renderDocumentSlots.js","names":["ViewDescription","RenderServerComponent","React","getDocumentPermissions","renderDocumentSlots","args","collectionConfig","globalConfig","hasSavePermission","req","components","unsavedDraftWithValidations","undefined","isPreviewEnabled","admin","preview","CustomPreviewButton","edit","PreviewButton","elements","_jsx","Component","importMap","payload","descriptionFromConfig","description","staticDescription","t","i18n","CustomDescription","Description","hasDescription","clientProps","Fallback","versions","drafts","CustomPublishButton","PublishButton","CustomSaveDraftButton","SaveDraftButton","draftsEnabled","autosave","CustomSaveButton","SaveButton","renderDocumentSlotsHandler","collectionSlug","collections","config","Error","docPermissions","data","permissions"],"sources":["../../../src/views/Document/renderDocumentSlots.tsx"],"sourcesContent":["import type {\n DefaultServerFunctionArgs,\n DocumentPermissions,\n DocumentSlots,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n StaticDescription,\n} from 'payload'\n\nimport { ViewDescription } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport React from 'react'\n\nimport { getDocumentPermissions } from './getDocumentPermissions.js'\n\nexport const renderDocumentSlots: (args: {\n collectionConfig?: SanitizedCollectionConfig\n globalConfig?: SanitizedGlobalConfig\n hasSavePermission: boolean\n permissions: DocumentPermissions\n req: PayloadRequest\n}) => DocumentSlots = (args) => {\n const { collectionConfig, globalConfig, hasSavePermission, req } = args\n\n const components: DocumentSlots = {} as DocumentSlots\n\n const unsavedDraftWithValidations = undefined\n\n const isPreviewEnabled = collectionConfig?.admin?.preview || globalConfig?.admin?.preview\n\n const CustomPreviewButton =\n collectionConfig?.admin?.components?.edit?.PreviewButton ||\n globalConfig?.admin?.components?.elements?.PreviewButton\n\n if (isPreviewEnabled && CustomPreviewButton) {\n components.PreviewButton = (\n <RenderServerComponent Component={CustomPreviewButton} importMap={req.payload.importMap} />\n )\n }\n\n const descriptionFromConfig =\n collectionConfig?.admin?.description || globalConfig?.admin?.description\n\n const staticDescription: StaticDescription =\n typeof descriptionFromConfig === 'function'\n ? descriptionFromConfig({ t: req.i18n.t })\n : descriptionFromConfig\n\n const CustomDescription =\n collectionConfig?.admin?.components?.Description ||\n globalConfig?.admin?.components?.elements?.Description\n\n const hasDescription = CustomDescription || staticDescription\n\n if (hasDescription) {\n components.Description = (\n <RenderServerComponent\n clientProps={{ description: staticDescription }}\n Component={CustomDescription}\n Fallback={ViewDescription}\n importMap={req.payload.importMap}\n />\n )\n }\n\n if (hasSavePermission) {\n if (collectionConfig?.versions?.drafts || globalConfig?.versions?.drafts) {\n const CustomPublishButton =\n collectionConfig?.admin?.components?.edit?.PublishButton ||\n globalConfig?.admin?.components?.elements?.PublishButton\n\n if (CustomPublishButton) {\n components.PublishButton = (\n <RenderServerComponent\n Component={CustomPublishButton}\n importMap={req.payload.importMap}\n />\n )\n }\n const CustomSaveDraftButton =\n collectionConfig?.admin?.components?.edit?.SaveDraftButton ||\n globalConfig?.admin?.components?.elements?.SaveDraftButton\n\n const draftsEnabled =\n (collectionConfig?.versions?.drafts && !collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && !globalConfig?.versions?.drafts?.autosave)\n\n if ((draftsEnabled || unsavedDraftWithValidations) && CustomSaveDraftButton) {\n components.SaveDraftButton = (\n <RenderServerComponent\n Component={CustomSaveDraftButton}\n importMap={req.payload.importMap}\n />\n )\n }\n } else {\n const CustomSaveButton =\n collectionConfig?.admin?.components?.edit?.SaveButton ||\n globalConfig?.admin?.components?.elements?.SaveButton\n\n if (CustomSaveButton) {\n components.SaveButton = (\n <RenderServerComponent Component={CustomSaveButton} importMap={req.payload.importMap} />\n )\n }\n }\n }\n\n return components\n}\n\nexport const renderDocumentSlotsHandler = async (\n args: { collectionSlug: string } & DefaultServerFunctionArgs,\n) => {\n const { collectionSlug, req } = args\n\n const collectionConfig = req.payload.collections[collectionSlug]?.config\n\n if (!collectionConfig) {\n throw new Error(req.t('error:incorrectCollection'))\n }\n\n const { docPermissions, hasSavePermission } = await getDocumentPermissions({\n collectionConfig,\n data: {},\n req,\n })\n\n return renderDocumentSlots({\n collectionConfig,\n hasSavePermission,\n permissions: docPermissions,\n req,\n })\n}\n"],"mappings":";AAUA,SAASA,eAAe,QAAQ;AAChC,SAASC,qBAAqB,QAAQ;AACtC,OAAOC,KAAA,MAAW;AAElB,SAASC,sBAAsB,QAAQ;AAEvC,OAAO,MAAMC,mBAAA,GAMUC,IAAA;EACrB,MAAM;IAAEC,gBAAgB;IAAEC,YAAY;IAAEC,iBAAiB;IAAEC;EAAG,CAAE,GAAGJ,IAAA;EAEnE,MAAMK,UAAA,GAA4B,CAAC;EAEnC,MAAMC,2BAAA,GAA8BC,SAAA;EAEpC,MAAMC,gBAAA,GAAmBP,gBAAA,EAAkBQ,KAAA,EAAOC,OAAA,IAAWR,YAAA,EAAcO,KAAA,EAAOC,OAAA;EAElF,MAAMC,mBAAA,GACJV,gBAAA,EAAkBQ,KAAA,EAAOJ,UAAA,EAAYO,IAAA,EAAMC,aAAA,IAC3CX,YAAA,EAAcO,KAAA,EAAOJ,UAAA,EAAYS,QAAA,EAAUD,aAAA;EAE7C,IAAIL,gBAAA,IAAoBG,mBAAA,EAAqB;IAC3CN,UAAA,CAAWQ,aAAa,gBACtBE,IAAA,CAACnB,qBAAA;MAAsBoB,SAAA,EAAWL,mBAAA;MAAqBM,SAAA,EAAWb,GAAA,CAAIc,OAAO,CAACD;;EAElF;EAEA,MAAME,qBAAA,GACJlB,gBAAA,EAAkBQ,KAAA,EAAOW,WAAA,IAAelB,YAAA,EAAcO,KAAA,EAAOW,WAAA;EAE/D,MAAMC,iBAAA,GACJ,OAAOF,qBAAA,KAA0B,aAC7BA,qBAAA,CAAsB;IAAEG,CAAA,EAAGlB,GAAA,CAAImB,IAAI,CAACD;EAAE,KACtCH,qBAAA;EAEN,MAAMK,iBAAA,GACJvB,gBAAA,EAAkBQ,KAAA,EAAOJ,UAAA,EAAYoB,WAAA,IACrCvB,YAAA,EAAcO,KAAA,EAAOJ,UAAA,EAAYS,QAAA,EAAUW,WAAA;EAE7C,MAAMC,cAAA,GAAiBF,iBAAA,IAAqBH,iBAAA;EAE5C,IAAIK,cAAA,EAAgB;IAClBrB,UAAA,CAAWoB,WAAW,gBACpBV,IAAA,CAACnB,qBAAA;MACC+B,WAAA,EAAa;QAAEP,WAAA,EAAaC;MAAkB;MAC9CL,SAAA,EAAWQ,iBAAA;MACXI,QAAA,EAAUjC,eAAA;MACVsB,SAAA,EAAWb,GAAA,CAAIc,OAAO,CAACD;;EAG7B;EAEA,IAAId,iBAAA,EAAmB;IACrB,IAAIF,gBAAA,EAAkB4B,QAAA,EAAUC,MAAA,IAAU5B,YAAA,EAAc2B,QAAA,EAAUC,MAAA,EAAQ;MACxE,MAAMC,mBAAA,GACJ9B,gBAAA,EAAkBQ,KAAA,EAAOJ,UAAA,EAAYO,IAAA,EAAMoB,aAAA,IAC3C9B,YAAA,EAAcO,KAAA,EAAOJ,UAAA,EAAYS,QAAA,EAAUkB,aAAA;MAE7C,IAAID,mBAAA,EAAqB;QACvB1B,UAAA,CAAW2B,aAAa,gBACtBjB,IAAA,CAACnB,qBAAA;UACCoB,SAAA,EAAWe,mBAAA;UACXd,SAAA,EAAWb,GAAA,CAAIc,OAAO,CAACD;;MAG7B;MACA,MAAMgB,qBAAA,GACJhC,gBAAA,EAAkBQ,KAAA,EAAOJ,UAAA,EAAYO,IAAA,EAAMsB,eAAA,IAC3ChC,YAAA,EAAcO,KAAA,EAAOJ,UAAA,EAAYS,QAAA,EAAUoB,eAAA;MAE7C,MAAMC,aAAA,GACJlC,gBAAC,EAAkB4B,QAAA,EAAUC,MAAA,IAAU,CAAC7B,gBAAA,EAAkB4B,QAAA,EAAUC,MAAA,EAAQM,QAAA,IAC3ElC,YAAA,EAAc2B,QAAA,EAAUC,MAAA,IAAU,CAAC5B,YAAA,EAAc2B,QAAA,EAAUC,MAAA,EAAQM,QAAA;MAEtE,IAAI,CAACD,aAAA,IAAiB7B,2BAA0B,KAAM2B,qBAAA,EAAuB;QAC3E5B,UAAA,CAAW6B,eAAe,gBACxBnB,IAAA,CAACnB,qBAAA;UACCoB,SAAA,EAAWiB,qBAAA;UACXhB,SAAA,EAAWb,GAAA,CAAIc,OAAO,CAACD;;MAG7B;IACF,OAAO;MACL,MAAMoB,gBAAA,GACJpC,gBAAA,EAAkBQ,KAAA,EAAOJ,UAAA,EAAYO,IAAA,EAAM0B,UAAA,IAC3CpC,YAAA,EAAcO,KAAA,EAAOJ,UAAA,EAAYS,QAAA,EAAUwB,UAAA;MAE7C,IAAID,gBAAA,EAAkB;QACpBhC,UAAA,CAAWiC,UAAU,gBACnBvB,IAAA,CAACnB,qBAAA;UAAsBoB,SAAA,EAAWqB,gBAAA;UAAkBpB,SAAA,EAAWb,GAAA,CAAIc,OAAO,CAACD;;MAE/E;IACF;EACF;EAEA,OAAOZ,UAAA;AACT;AAEA,OAAO,MAAMkC,0BAAA,GAA6B,MACxCvC,IAAA;EAEA,MAAM;IAAEwC,cAAc;IAAEpC;EAAG,CAAE,GAAGJ,IAAA;EAEhC,MAAMC,gBAAA,GAAmBG,GAAA,CAAIc,OAAO,CAACuB,WAAW,CAACD,cAAA,CAAe,EAAEE,MAAA;EAElE,IAAI,CAACzC,gBAAA,EAAkB;IACrB,MAAM,IAAI0C,KAAA,CAAMvC,GAAA,CAAIkB,CAAC,CAAC;EACxB;EAEA,MAAM;IAAEsB,cAAc;IAAEzC;EAAiB,CAAE,GAAG,MAAML,sBAAA,CAAuB;IACzEG,gBAAA;IACA4C,IAAA,EAAM,CAAC;IACPzC;EACF;EAEA,OAAOL,mBAAA,CAAoB;IACzBE,gBAAA;IACAE,iBAAA;IACA2C,WAAA,EAAaF,cAAA;IACbxC;EACF;AACF","ignoreList":[]}
@@ -1,3 +1,4 @@
1
- import type { EditViewComponent, PayloadServerReactComponent } from 'payload';
2
- export declare const EditView: PayloadServerReactComponent<EditViewComponent>;
1
+ import type { ClientSideEditViewProps } from 'payload';
2
+ import React from 'react';
3
+ export declare const EditView: React.FC<ClientSideEditViewProps>;
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Edit/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,2BAA2B,EAAE,MAAM,SAAS,CAAA;AAM7E,eAAO,MAAM,QAAQ,EAAE,2BAA2B,CAAC,iBAAiB,CAEnE,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Edit/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,SAAS,CAAA;AAGtD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,uBAAuB,CAEtD,CAAA"}
@@ -1,7 +1,11 @@
1
+ 'use client';
2
+
1
3
  import { jsx as _jsx } from "react/jsx-runtime";
4
+ import { DefaultEditView } from '@payloadcms/ui';
2
5
  import React from 'react';
3
- import { EditViewClient } from './index.client.js';
4
- export const EditView = () => {
5
- return /*#__PURE__*/_jsx(EditViewClient, {});
6
+ export const EditView = props => {
7
+ return /*#__PURE__*/_jsx(DefaultEditView, {
8
+ ...props
9
+ });
6
10
  };
7
11
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["React","EditViewClient","EditView","_jsx"],"sources":["../../../src/views/Edit/index.tsx"],"sourcesContent":["import type { EditViewComponent, PayloadServerReactComponent } from 'payload'\n\nimport React from 'react'\n\nimport { EditViewClient } from './index.client.js'\n\nexport const EditView: PayloadServerReactComponent<EditViewComponent> = () => {\n return <EditViewClient />\n}\n"],"mappings":";AAEA,OAAOA,KAAA,MAAW;AAElB,SAASC,cAAc,QAAQ;AAE/B,OAAO,MAAMC,QAAA,GAA2DA,CAAA;EACtE,oBAAOC,IAAA,CAACF,cAAA;AACV","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["DefaultEditView","React","EditView","props","_jsx"],"sources":["../../../src/views/Edit/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientSideEditViewProps } from 'payload'\n\nimport { DefaultEditView } from '@payloadcms/ui'\nimport React from 'react'\n\nexport const EditView: React.FC<ClientSideEditViewProps> = (props) => {\n return <DefaultEditView {...props} />\n}\n"],"mappings":"AAAA;;;AAIA,SAASA,eAAe,QAAQ;AAChC,OAAOC,KAAA,MAAW;AAElB,OAAO,MAAMC,QAAA,GAA+CC,KAAA;EAC1D,oBAAOC,IAAA,CAACJ,eAAA;IAAiB,GAAGG;;AAC9B","ignoreList":[]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/ForgotPassword/ForgotPasswordForm/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAsHtC,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/ForgotPassword/ForgotPasswordForm/index.tsx"],"names":[],"mappings":"AAOA,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAwHtC,CAAA"}
@@ -117,9 +117,11 @@ export const ForgotPasswordForm = () => {
117
117
  siblingData: {}
118
118
  })
119
119
  }) : _jsx(EmailField, {
120
- autoComplete: "email",
121
120
  field: {
122
121
  name: "email",
122
+ admin: {
123
+ autoComplete: "email"
124
+ },
123
125
  label: t("general:email"),
124
126
  required: true
125
127
  },