@payloadcms/next 3.0.0-beta.127 → 3.0.0-beta.129
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.
- package/dist/cjs/withPayload.cjs +10 -0
- package/dist/cjs/withPayload.cjs.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js +13 -15
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/index.js +9 -14
- package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +13 -28
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
- package/dist/elements/DocumentHeader/index.d.ts +0 -1
- package/dist/elements/DocumentHeader/index.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/index.js +9 -12
- package/dist/elements/DocumentHeader/index.js.map +1 -1
- package/dist/elements/Logo/index.d.ts.map +1 -1
- package/dist/elements/Logo/index.js +5 -6
- package/dist/elements/Logo/index.js.map +1 -1
- package/dist/elements/Nav/index.client.d.ts +4 -1
- package/dist/elements/Nav/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/index.client.js +40 -95
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.d.ts.map +1 -1
- package/dist/elements/Nav/index.js +60 -23
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/exports/layouts.d.ts +1 -0
- package/dist/exports/layouts.d.ts.map +1 -1
- package/dist/exports/layouts.js +1 -0
- package/dist/exports/layouts.js.map +1 -1
- package/dist/exports/utilities.d.ts.map +1 -1
- package/dist/exports/utilities.js +1 -0
- package/dist/exports/utilities.js.map +1 -1
- package/dist/exports/views.d.ts +0 -2
- package/dist/exports/views.d.ts.map +1 -1
- package/dist/exports/views.js +0 -2
- package/dist/exports/views.js.map +1 -1
- package/dist/fetchAPI-multipart/isEligibleRequest.js +1 -1
- package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
- package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
- package/dist/fetchAPI-multipart/processMultipart.js +9 -11
- package/dist/fetchAPI-multipart/processMultipart.js.map +1 -1
- package/dist/layouts/Root/NestProviders.d.ts +11 -0
- package/dist/layouts/Root/NestProviders.d.ts.map +1 -0
- package/dist/layouts/Root/NestProviders.js +21 -0
- package/dist/layouts/Root/NestProviders.js.map +1 -0
- package/dist/layouts/Root/index.d.ts +3 -2
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +14 -18
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/routes/rest/index.d.ts.map +1 -1
- package/dist/routes/rest/index.js +0 -10
- package/dist/routes/rest/index.js.map +1 -1
- package/dist/routes/rest/og/image.d.ts +4 -2
- package/dist/routes/rest/og/image.d.ts.map +1 -1
- package/dist/routes/rest/og/image.js +7 -3
- package/dist/routes/rest/og/image.js.map +1 -1
- package/dist/routes/rest/og/index.d.ts.map +1 -1
- package/dist/routes/rest/og/index.js +5 -8
- package/dist/routes/rest/og/index.js.map +1 -1
- package/dist/routes/rest/routeError.d.ts.map +1 -1
- package/dist/routes/rest/routeError.js +1 -47
- package/dist/routes/rest/routeError.js.map +1 -1
- package/dist/templates/Default/index.d.ts +2 -1
- package/dist/templates/Default/index.d.ts.map +1 -1
- package/dist/templates/Default/index.js +97 -41
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/utilities/getClientConfig.d.ts +7 -0
- package/dist/utilities/getClientConfig.d.ts.map +1 -0
- package/dist/utilities/getClientConfig.js +14 -0
- package/dist/utilities/getClientConfig.js.map +1 -0
- package/dist/utilities/handleServerFunctions.d.ts +3 -0
- package/dist/utilities/handleServerFunctions.d.ts.map +1 -0
- package/dist/utilities/handleServerFunctions.js +35 -0
- package/dist/utilities/handleServerFunctions.js.map +1 -0
- package/dist/utilities/initPage/handleAdminPage.d.ts +2 -1
- package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.js +9 -1
- package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
- package/dist/utilities/initPage/index.d.ts.map +1 -1
- package/dist/utilities/initPage/index.js +2 -1
- package/dist/utilities/initPage/index.js.map +1 -1
- package/dist/utilities/initReq.d.ts +1 -1
- package/dist/utilities/initReq.d.ts.map +1 -1
- package/dist/utilities/initReq.js +3 -2
- package/dist/utilities/initReq.js.map +1 -1
- package/dist/views/API/LocaleSelector/index.d.ts.map +1 -1
- package/dist/views/API/LocaleSelector/index.js +0 -1
- package/dist/views/API/LocaleSelector/index.js.map +1 -1
- package/dist/views/API/index.client.d.ts.map +1 -1
- package/dist/views/API/index.client.js +10 -13
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/Account/Settings/index.js +0 -1
- package/dist/views/Account/Settings/index.js.map +1 -1
- package/dist/views/Account/index.d.ts.map +1 -1
- package/dist/views/Account/index.js +81 -24
- package/dist/views/Account/index.js.map +1 -1
- package/dist/views/CreateFirstUser/index.client.d.ts +3 -1
- package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js +83 -109
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.js +36 -4
- package/dist/views/CreateFirstUser/index.js.map +1 -1
- package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/index.js +46 -44
- package/dist/views/Dashboard/Default/index.js.map +1 -1
- package/dist/views/Dashboard/index.d.ts.map +1 -1
- package/dist/views/Dashboard/index.js +22 -21
- package/dist/views/Dashboard/index.js.map +1 -1
- package/dist/views/Document/getDocPreferences.d.ts +11 -0
- package/dist/views/Document/getDocPreferences.d.ts.map +1 -0
- package/dist/views/Document/getDocPreferences.js +44 -0
- package/dist/views/Document/getDocPreferences.js.map +1 -0
- package/dist/views/Document/getDocumentData.d.ts +10 -11
- package/dist/views/Document/getDocumentData.d.ts.map +1 -1
- package/dist/views/Document/getDocumentData.js +35 -47
- package/dist/views/Document/getDocumentData.js.map +1 -1
- package/dist/views/Document/getIsLocked.d.ts +16 -0
- package/dist/views/Document/getIsLocked.d.ts.map +1 -0
- package/dist/views/Document/getIsLocked.js +55 -0
- package/dist/views/Document/getIsLocked.js.map +1 -0
- package/dist/views/Document/getVersions.d.ts +19 -0
- package/dist/views/Document/getVersions.d.ts.map +1 -0
- package/dist/views/Document/getVersions.js +181 -0
- package/dist/views/Document/getVersions.js.map +1 -0
- package/dist/views/Document/getViewsFromConfig.d.ts +1 -1
- package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
- package/dist/views/Document/getViewsFromConfig.js +18 -19
- package/dist/views/Document/getViewsFromConfig.js.map +1 -1
- package/dist/views/Document/handleServerFunction.d.ts +24 -0
- package/dist/views/Document/handleServerFunction.d.ts.map +1 -0
- package/dist/views/Document/handleServerFunction.js +156 -0
- package/dist/views/Document/handleServerFunction.js.map +1 -0
- package/dist/views/Document/index.d.ts +5 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +181 -72
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Document/renderDocumentSlots.d.ts +12 -0
- package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -0
- package/dist/views/Document/renderDocumentSlots.js +92 -0
- package/dist/views/Document/renderDocumentSlots.js.map +1 -0
- package/dist/views/Edit/index.d.ts +3 -2
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +7 -3
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +3 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/List/handleServerFunction.d.ts +26 -0
- package/dist/views/List/handleServerFunction.d.ts.map +1 -0
- package/dist/views/List/handleServerFunction.js +155 -0
- package/dist/views/List/handleServerFunction.js.map +1 -0
- package/dist/views/List/index.d.ts +12 -2
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +121 -81
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/renderListViewSlots.d.ts +8 -0
- package/dist/views/List/renderListViewSlots.d.ts.map +1 -0
- package/dist/views/List/renderListViewSlots.js +44 -0
- package/dist/views/List/renderListViewSlots.js.map +1 -0
- package/dist/views/LivePreview/Context/sizeReducer.d.ts +1 -1
- package/dist/views/LivePreview/Context/sizeReducer.d.ts.map +1 -1
- package/dist/views/LivePreview/Context/sizeReducer.js +4 -4
- package/dist/views/LivePreview/Context/sizeReducer.js.map +1 -1
- package/dist/views/LivePreview/index.client.d.ts.map +1 -1
- package/dist/views/LivePreview/index.client.js +38 -35
- package/dist/views/LivePreview/index.client.js.map +1 -1
- package/dist/views/Login/LoginField/index.d.ts.map +1 -1
- package/dist/views/Login/LoginField/index.js +3 -1
- package/dist/views/Login/LoginField/index.js.map +1 -1
- package/dist/views/Login/index.d.ts.map +1 -1
- package/dist/views/Login/index.js +25 -19
- package/dist/views/Login/index.js.map +1 -1
- package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -1
- package/dist/views/ResetPassword/ResetPasswordForm/index.js +24 -10
- package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
- package/dist/views/Root/getViewFromConfig.d.ts +3 -1
- package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
- package/dist/views/Root/getViewFromConfig.js +128 -7
- package/dist/views/Root/getViewFromConfig.js.map +1 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +22 -11
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Version/Default/index.d.ts.map +1 -1
- package/dist/views/Version/Default/index.js +2 -4
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Versions/buildColumns.d.ts +3 -2
- package/dist/views/Versions/buildColumns.d.ts.map +1 -1
- package/dist/views/Versions/buildColumns.js +33 -61
- package/dist/views/Versions/buildColumns.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.d.ts +7 -0
- package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js +48 -37
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.d.ts +4 -0
- package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js +43 -45
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/dist/views/Versions/cells/ID/index.d.ts +3 -1
- package/dist/views/Versions/cells/ID/index.d.ts.map +1 -1
- package/dist/views/Versions/cells/ID/index.js +7 -19
- package/dist/views/Versions/cells/ID/index.js.map +1 -1
- package/dist/views/Versions/index.client.d.ts.map +1 -1
- package/dist/views/Versions/index.client.js +53 -51
- package/dist/views/Versions/index.client.js.map +1 -1
- package/dist/views/Versions/index.d.ts.map +1 -1
- package/dist/views/Versions/index.js +3 -2
- package/dist/views/Versions/index.js.map +1 -1
- package/dist/withPayload.d.ts.map +1 -1
- package/dist/withPayload.js +10 -0
- package/dist/withPayload.js.map +1 -1
- package/license.md +22 -0
- package/package.json +16 -7
- package/dist/elements/DocumentLocked/index.d.ts +0 -12
- package/dist/elements/DocumentLocked/index.d.ts.map +0 -1
- package/dist/elements/DocumentLocked/index.js +0 -152
- package/dist/elements/DocumentLocked/index.js.map +0 -1
- package/dist/elements/DocumentLocked/index.scss +0 -40
- package/dist/elements/DocumentTakeOver/index.d.ts +0 -8
- package/dist/elements/DocumentTakeOver/index.d.ts.map +0 -1
- package/dist/elements/DocumentTakeOver/index.js +0 -98
- package/dist/elements/DocumentTakeOver/index.js.map +0 -1
- package/dist/elements/DocumentTakeOver/index.scss +0 -39
- package/dist/elements/EmailAndUsername/index.d.ts +0 -14
- package/dist/elements/EmailAndUsername/index.d.ts.map +0 -1
- package/dist/elements/EmailAndUsername/index.js +0 -121
- package/dist/elements/EmailAndUsername/index.js.map +0 -1
- package/dist/elements/LeaveWithoutSaving/index.d.ts +0 -4
- package/dist/elements/LeaveWithoutSaving/index.d.ts.map +0 -1
- package/dist/elements/LeaveWithoutSaving/index.js +0 -162
- package/dist/elements/LeaveWithoutSaving/index.js.map +0 -1
- package/dist/elements/LeaveWithoutSaving/index.scss +0 -39
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts +0 -9
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.d.ts.map +0 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +0 -136
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +0 -1
- package/dist/routes/rest/buildFormState.d.ts +0 -5
- package/dist/routes/rest/buildFormState.d.ts.map +0 -1
- package/dist/routes/rest/buildFormState.js +0 -46
- package/dist/routes/rest/buildFormState.js.map +0 -1
- package/dist/views/Edit/Default/Auth/APIKey.d.ts +0 -6
- package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +0 -1
- package/dist/views/Edit/Default/Auth/APIKey.js +0 -125
- package/dist/views/Edit/Default/Auth/APIKey.js.map +0 -1
- package/dist/views/Edit/Default/Auth/index.d.ts +0 -5
- package/dist/views/Edit/Default/Auth/index.d.ts.map +0 -1
- package/dist/views/Edit/Default/Auth/index.js +0 -318
- package/dist/views/Edit/Default/Auth/index.js.map +0 -1
- package/dist/views/Edit/Default/Auth/index.scss +0 -78
- package/dist/views/Edit/Default/Auth/types.d.ts +0 -17
- package/dist/views/Edit/Default/Auth/types.d.ts.map +0 -1
- package/dist/views/Edit/Default/Auth/types.js +0 -2
- package/dist/views/Edit/Default/Auth/types.js.map +0 -1
- package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts +0 -11
- package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +0 -1
- package/dist/views/Edit/Default/SetDocumentStepNav/index.js +0 -130
- package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +0 -1
- package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts +0 -8
- package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts.map +0 -1
- package/dist/views/Edit/Default/SetDocumentTitle/index.js +0 -81
- package/dist/views/Edit/Default/SetDocumentTitle/index.js.map +0 -1
- package/dist/views/Edit/Default/index.d.ts +0 -4
- package/dist/views/Edit/Default/index.d.ts.map +0 -1
- package/dist/views/Edit/Default/index.js +0 -349
- package/dist/views/Edit/Default/index.js.map +0 -1
- package/dist/views/Edit/Default/index.scss +0 -23
- package/dist/views/Edit/Default/types.d.ts +0 -6
- package/dist/views/Edit/Default/types.d.ts.map +0 -1
- package/dist/views/Edit/Default/types.js +0 -2
- package/dist/views/Edit/Default/types.js.map +0 -1
- package/dist/views/Edit/index.client.d.ts +0 -3
- package/dist/views/Edit/index.client.d.ts.map +0 -1
- package/dist/views/Edit/index.client.js +0 -54
- package/dist/views/Edit/index.client.js.map +0 -1
- package/dist/views/List/Default/index.d.ts +0 -4
- package/dist/views/List/Default/index.d.ts.map +0 -1
- package/dist/views/List/Default/index.js +0 -387
- package/dist/views/List/Default/index.js.map +0 -1
- package/dist/views/List/Default/index.scss +0 -179
- package/dist/views/List/Default/types.d.ts +0 -15
- package/dist/views/List/Default/types.d.ts.map +0 -1
- package/dist/views/List/Default/types.js +0 -2
- package/dist/views/List/Default/types.js.map +0 -1
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { buildFormState } from '@payloadcms/ui/utilities/buildFormState';
|
|
2
3
|
import React from 'react';
|
|
4
|
+
import { getDocPreferences } from '../Document/getDocPreferences.js';
|
|
3
5
|
import { getDocumentData } from '../Document/getDocumentData.js';
|
|
6
|
+
import { getDocumentPermissions } from '../Document/getDocumentPermissions.js';
|
|
4
7
|
import { CreateFirstUserClient } from './index.client.js';
|
|
5
8
|
export { generateCreateFirstUserMetadata } from './meta.js';
|
|
6
9
|
export const CreateFirstUserView = async ({
|
|
@@ -25,13 +28,40 @@ export const CreateFirstUserView = async ({
|
|
|
25
28
|
auth: authOptions
|
|
26
29
|
} = collectionConfig;
|
|
27
30
|
const loginWithUsername = authOptions.loginWithUsername;
|
|
31
|
+
// Fetch the data required for the view
|
|
32
|
+
const data = await getDocumentData({
|
|
33
|
+
collectionSlug: collectionConfig.slug,
|
|
34
|
+
locale,
|
|
35
|
+
payload: req.payload,
|
|
36
|
+
user: req.user
|
|
37
|
+
});
|
|
38
|
+
// Get document preferences
|
|
39
|
+
const docPreferences = await getDocPreferences({
|
|
40
|
+
collectionSlug: collectionConfig.slug,
|
|
41
|
+
payload: req.payload,
|
|
42
|
+
user: req.user
|
|
43
|
+
});
|
|
44
|
+
// Get permissions
|
|
28
45
|
const {
|
|
29
|
-
|
|
30
|
-
} = await
|
|
46
|
+
docPermissions
|
|
47
|
+
} = await getDocumentPermissions({
|
|
31
48
|
collectionConfig,
|
|
32
|
-
|
|
49
|
+
data,
|
|
50
|
+
req
|
|
51
|
+
});
|
|
52
|
+
// Build initial form state from data
|
|
53
|
+
const {
|
|
54
|
+
state: formState
|
|
55
|
+
} = await buildFormState({
|
|
56
|
+
collectionSlug: collectionConfig.slug,
|
|
57
|
+
data,
|
|
58
|
+
docPermissions,
|
|
59
|
+
docPreferences,
|
|
60
|
+
locale: locale?.code,
|
|
61
|
+
operation: 'create',
|
|
62
|
+
renderAllFields: true,
|
|
33
63
|
req,
|
|
34
|
-
schemaPath:
|
|
64
|
+
schemaPath: collectionConfig.slug
|
|
35
65
|
});
|
|
36
66
|
return /*#__PURE__*/_jsxs("div", {
|
|
37
67
|
className: "create-first-user",
|
|
@@ -40,6 +70,8 @@ export const CreateFirstUserView = async ({
|
|
|
40
70
|
}), /*#__PURE__*/_jsx("p", {
|
|
41
71
|
children: req.t('authentication:beginCreateFirstUser')
|
|
42
72
|
}), /*#__PURE__*/_jsx(CreateFirstUserClient, {
|
|
73
|
+
docPermissions: docPermissions,
|
|
74
|
+
docPreferences: docPreferences,
|
|
43
75
|
initialState: formState,
|
|
44
76
|
loginWithUsername: loginWithUsername,
|
|
45
77
|
userSlug: userSlug
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","getDocumentData","CreateFirstUserClient","generateCreateFirstUserMetadata","CreateFirstUserView","initPageResult","locale","req","payload","config","admin","user","userSlug","collectionConfig","collections","find","collection","slug","auth","authOptions","loginWithUsername","formState","schemaPath","_jsxs","className","_jsx","t","initialState"],"sources":["../../../src/views/CreateFirstUser/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload'\n\nimport React from 'react'\n\nimport { getDocumentData } from '../Document/getDocumentData.js'\nimport { CreateFirstUserClient } from './index.client.js'\nimport './index.scss'\n\nexport { generateCreateFirstUserMetadata } from './meta.js'\n\nexport const CreateFirstUserView: React.FC<AdminViewProps> = async ({ initPageResult }) => {\n const {\n locale,\n req,\n req: {\n payload: {\n config: {\n admin: { user: userSlug },\n },\n config,\n },\n },\n } = initPageResult\n\n const collectionConfig = config.collections?.find((collection) => collection?.slug === userSlug)\n const { auth: authOptions } = collectionConfig\n const loginWithUsername = authOptions.loginWithUsername\n\n const { formState } = await
|
|
1
|
+
{"version":3,"file":"index.js","names":["buildFormState","React","getDocPreferences","getDocumentData","getDocumentPermissions","CreateFirstUserClient","generateCreateFirstUserMetadata","CreateFirstUserView","initPageResult","locale","req","payload","config","admin","user","userSlug","collectionConfig","collections","find","collection","slug","auth","authOptions","loginWithUsername","data","collectionSlug","docPreferences","docPermissions","state","formState","code","operation","renderAllFields","schemaPath","_jsxs","className","_jsx","t","initialState"],"sources":["../../../src/views/CreateFirstUser/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload'\n\nimport { buildFormState } from '@payloadcms/ui/utilities/buildFormState'\nimport React from 'react'\n\nimport { getDocPreferences } from '../Document/getDocPreferences.js'\nimport { getDocumentData } from '../Document/getDocumentData.js'\nimport { getDocumentPermissions } from '../Document/getDocumentPermissions.js'\nimport { CreateFirstUserClient } from './index.client.js'\nimport './index.scss'\n\nexport { generateCreateFirstUserMetadata } from './meta.js'\n\nexport const CreateFirstUserView: React.FC<AdminViewProps> = async ({ initPageResult }) => {\n const {\n locale,\n req,\n req: {\n payload: {\n config: {\n admin: { user: userSlug },\n },\n config,\n },\n },\n } = initPageResult\n\n const collectionConfig = config.collections?.find((collection) => collection?.slug === userSlug)\n const { auth: authOptions } = collectionConfig\n const loginWithUsername = authOptions.loginWithUsername\n\n // Fetch the data required for the view\n const data = await getDocumentData({\n collectionSlug: collectionConfig.slug,\n locale,\n payload: req.payload,\n user: req.user,\n })\n\n // Get document preferences\n const docPreferences = await getDocPreferences({\n collectionSlug: collectionConfig.slug,\n payload: req.payload,\n user: req.user,\n })\n\n // Get permissions\n const { docPermissions } = await getDocumentPermissions({\n collectionConfig,\n data,\n req,\n })\n\n // Build initial form state from data\n const { state: formState } = await buildFormState({\n collectionSlug: collectionConfig.slug,\n data,\n docPermissions,\n docPreferences,\n locale: locale?.code,\n operation: 'create',\n renderAllFields: true,\n req,\n schemaPath: collectionConfig.slug,\n })\n\n return (\n <div className=\"create-first-user\">\n <h1>{req.t('general:welcome')}</h1>\n <p>{req.t('authentication:beginCreateFirstUser')}</p>\n <CreateFirstUserClient\n docPermissions={docPermissions}\n docPreferences={docPreferences}\n initialState={formState}\n loginWithUsername={loginWithUsername}\n userSlug={userSlug}\n />\n </div>\n )\n}\n"],"mappings":";AAEA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,iBAAiB,QAAQ;AAClC,SAASC,eAAe,QAAQ;AAChC,SAASC,sBAAsB,QAAQ;AACvC,SAASC,qBAAqB,QAAQ;AAGtC,SAASC,+BAA+B,QAAQ;AAEhD,OAAO,MAAMC,mBAAA,GAAgD,MAAAA,CAAO;EAAEC;AAAc,CAAE;EACpF,MAAM;IACJC,MAAM;IACNC,GAAG;IACHA,GAAA,EAAK;MACHC,OAAA,EAAS;QACPC,MAAA,EAAQ;UACNC,KAAA,EAAO;YAAEC,IAAA,EAAMC;UAAQ;QAAE,CAC1B;QACDH;MAAM;IACP;EACF,CACF,GAAGJ,cAAA;EAEJ,MAAMQ,gBAAA,GAAmBJ,MAAA,CAAOK,WAAW,EAAEC,IAAA,CAAMC,UAAA,IAAeA,UAAA,EAAYC,IAAA,KAASL,QAAA;EACvF,MAAM;IAAEM,IAAA,EAAMC;EAAW,CAAE,GAAGN,gBAAA;EAC9B,MAAMO,iBAAA,GAAoBD,WAAA,CAAYC,iBAAiB;EAEvD;EACA,MAAMC,IAAA,GAAO,MAAMrB,eAAA,CAAgB;IACjCsB,cAAA,EAAgBT,gBAAA,CAAiBI,IAAI;IACrCX,MAAA;IACAE,OAAA,EAASD,GAAA,CAAIC,OAAO;IACpBG,IAAA,EAAMJ,GAAA,CAAII;EACZ;EAEA;EACA,MAAMY,cAAA,GAAiB,MAAMxB,iBAAA,CAAkB;IAC7CuB,cAAA,EAAgBT,gBAAA,CAAiBI,IAAI;IACrCT,OAAA,EAASD,GAAA,CAAIC,OAAO;IACpBG,IAAA,EAAMJ,GAAA,CAAII;EACZ;EAEA;EACA,MAAM;IAAEa;EAAc,CAAE,GAAG,MAAMvB,sBAAA,CAAuB;IACtDY,gBAAA;IACAQ,IAAA;IACAd;EACF;EAEA;EACA,MAAM;IAAEkB,KAAA,EAAOC;EAAS,CAAE,GAAG,MAAM7B,cAAA,CAAe;IAChDyB,cAAA,EAAgBT,gBAAA,CAAiBI,IAAI;IACrCI,IAAA;IACAG,cAAA;IACAD,cAAA;IACAjB,MAAA,EAAQA,MAAA,EAAQqB,IAAA;IAChBC,SAAA,EAAW;IACXC,eAAA,EAAiB;IACjBtB,GAAA;IACAuB,UAAA,EAAYjB,gBAAA,CAAiBI;EAC/B;EAEA,oBACEc,KAAA,CAAC;IAAIC,SAAA,EAAU;4BACbC,IAAA,CAAC;gBAAI1B,GAAA,CAAI2B,CAAC,CAAC;qBACXD,IAAA,CAAC;gBAAG1B,GAAA,CAAI2B,CAAC,CAAC;qBACVD,IAAA,CAAC/B,qBAAA;MACCsB,cAAA,EAAgBA,cAAA;MAChBD,cAAA,EAAgBA,cAAA;MAChBY,YAAA,EAAcT,SAAA;MACdN,iBAAA,EAAmBA,iBAAA;MACnBR,QAAA,EAAUA;;;AAIlB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Dashboard/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Dashboard/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAA;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAMpF,OAAO,KAAmB,MAAM,OAAO,CAAA;AAEvC,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,cAAc,GAAG;IAC3B,UAAU,EAAE,KAAK,CAAC;QAChB,IAAI,EAAE;YAAE,SAAS,EAAE,OAAO,CAAC;YAAC,aAAa,EAAE,MAAM,CAAC;YAAC,YAAY,EAAE,UAAU,GAAG,MAAM,GAAG,MAAM,CAAA;SAAE,CAAA;QAC/F,YAAY,CAAC,EAAE,MAAM,CAAA;QACrB,IAAI,EAAE,MAAM,CAAA;KACb,CAAC,CAAA;IACF,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAC9B,SAAS,CAAC,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA;IAC5C,WAAW,EAAE,WAAW,CAAA;IACxB,eAAe,EAAE,eAAe,CAAA;CACjC,GAAG,WAAW,CAAA;AAEf,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAmKrD,CAAA"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { getTranslation } from '@payloadcms/translations';
|
|
3
|
-
import { Button, Card, Gutter, Locked
|
|
4
|
-
import {
|
|
3
|
+
import { Button, Card, Gutter, Locked } from '@payloadcms/ui';
|
|
4
|
+
import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
|
|
5
|
+
import { EntityType, formatAdminURL } from '@payloadcms/ui/shared';
|
|
5
6
|
import React, { Fragment } from 'react';
|
|
6
7
|
const baseClass = 'dashboard';
|
|
7
8
|
export const DefaultDashboard = props => {
|
|
@@ -33,34 +34,24 @@ export const DefaultDashboard = props => {
|
|
|
33
34
|
searchParams,
|
|
34
35
|
user
|
|
35
36
|
} = props;
|
|
36
|
-
|
|
37
|
-
importMap: payload.importMap,
|
|
38
|
-
serverProps: {
|
|
39
|
-
i18n,
|
|
40
|
-
locale,
|
|
41
|
-
params,
|
|
42
|
-
payload,
|
|
43
|
-
permissions,
|
|
44
|
-
searchParams,
|
|
45
|
-
user
|
|
46
|
-
}
|
|
47
|
-
});
|
|
48
|
-
const mappedBeforeDashboards = createMappedComponent(beforeDashboard, undefined, undefined, 'beforeDashboard');
|
|
49
|
-
const mappedAfterDashboards = createMappedComponent(afterDashboard, undefined, undefined, 'afterDashboard');
|
|
50
|
-
return /*#__PURE__*/_jsxs("div", {
|
|
37
|
+
return /*#__PURE__*/_jsx("div", {
|
|
51
38
|
className: baseClass,
|
|
52
|
-
children:
|
|
53
|
-
nav: []
|
|
54
|
-
}), /*#__PURE__*/_jsx(SetViewActions, {
|
|
55
|
-
actions: []
|
|
56
|
-
}), /*#__PURE__*/_jsxs(Gutter, {
|
|
39
|
+
children: /*#__PURE__*/_jsxs(Gutter, {
|
|
57
40
|
className: `${baseClass}__wrap`,
|
|
58
|
-
children: [/*#__PURE__*/_jsx(
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
41
|
+
children: [beforeDashboard && /*#__PURE__*/_jsx(RenderServerComponent, {
|
|
42
|
+
Component: beforeDashboard,
|
|
43
|
+
importMap: payload.importMap,
|
|
44
|
+
serverProps: {
|
|
45
|
+
i18n,
|
|
46
|
+
locale,
|
|
47
|
+
params,
|
|
48
|
+
payload,
|
|
49
|
+
permissions,
|
|
50
|
+
searchParams,
|
|
51
|
+
user
|
|
52
|
+
}
|
|
53
|
+
}), /*#__PURE__*/_jsx(Fragment, {
|
|
54
|
+
children: !navGroups || navGroups?.length === 0 ? /*#__PURE__*/_jsx("p", {
|
|
64
55
|
children: "no nav groups...."
|
|
65
56
|
}) : navGroups.map(({
|
|
66
57
|
entities,
|
|
@@ -74,8 +65,9 @@ export const DefaultDashboard = props => {
|
|
|
74
65
|
}), /*#__PURE__*/_jsx("ul", {
|
|
75
66
|
className: `${baseClass}__card-list`,
|
|
76
67
|
children: entities.map(({
|
|
68
|
+
slug,
|
|
77
69
|
type,
|
|
78
|
-
|
|
70
|
+
label
|
|
79
71
|
}, entityIndex) => {
|
|
80
72
|
let title;
|
|
81
73
|
let buttonAriaLabel;
|
|
@@ -85,31 +77,31 @@ export const DefaultDashboard = props => {
|
|
|
85
77
|
let isLocked = null;
|
|
86
78
|
let userEditing = null;
|
|
87
79
|
if (type === EntityType.collection) {
|
|
88
|
-
title = getTranslation(
|
|
80
|
+
title = getTranslation(label, i18n);
|
|
89
81
|
buttonAriaLabel = t('general:showAllLabel', {
|
|
90
82
|
label: title
|
|
91
83
|
});
|
|
92
84
|
href = formatAdminURL({
|
|
93
85
|
adminRoute,
|
|
94
|
-
path: `/collections/${
|
|
86
|
+
path: `/collections/${slug}`
|
|
95
87
|
});
|
|
96
88
|
createHREF = formatAdminURL({
|
|
97
89
|
adminRoute,
|
|
98
|
-
path: `/collections/${
|
|
90
|
+
path: `/collections/${slug}/create`
|
|
99
91
|
});
|
|
100
|
-
hasCreatePermission = permissions?.collections?.[
|
|
92
|
+
hasCreatePermission = permissions?.collections?.[slug]?.create?.permission;
|
|
101
93
|
}
|
|
102
94
|
if (type === EntityType.global) {
|
|
103
|
-
title = getTranslation(
|
|
95
|
+
title = getTranslation(label, i18n);
|
|
104
96
|
buttonAriaLabel = t('general:editLabel', {
|
|
105
|
-
label: getTranslation(
|
|
97
|
+
label: getTranslation(label, i18n)
|
|
106
98
|
});
|
|
107
99
|
href = formatAdminURL({
|
|
108
100
|
adminRoute,
|
|
109
|
-
path: `/globals/${
|
|
101
|
+
path: `/globals/${slug}`
|
|
110
102
|
});
|
|
111
103
|
// Find the lock status for the global
|
|
112
|
-
const globalLockData = globalData.find(global => global.slug ===
|
|
104
|
+
const globalLockData = globalData.find(global => global.slug === slug);
|
|
113
105
|
if (globalLockData) {
|
|
114
106
|
isLocked = globalLockData.data._isLocked;
|
|
115
107
|
userEditing = globalLockData.data._userEditing;
|
|
@@ -131,7 +123,7 @@ export const DefaultDashboard = props => {
|
|
|
131
123
|
user: userEditing
|
|
132
124
|
}) : hasCreatePermission && type === EntityType.collection ? /*#__PURE__*/_jsx(Button, {
|
|
133
125
|
"aria-label": t('general:createNewLabel', {
|
|
134
|
-
label
|
|
126
|
+
label
|
|
135
127
|
}),
|
|
136
128
|
buttonStyle: "icon-label",
|
|
137
129
|
el: "link",
|
|
@@ -143,20 +135,30 @@ export const DefaultDashboard = props => {
|
|
|
143
135
|
}) : undefined,
|
|
144
136
|
buttonAriaLabel: buttonAriaLabel,
|
|
145
137
|
href: href,
|
|
146
|
-
id: `card-${
|
|
138
|
+
id: `card-${slug}`,
|
|
147
139
|
Link: Link,
|
|
148
|
-
title:
|
|
140
|
+
title: getTranslation(label, i18n),
|
|
149
141
|
titleAs: "h3"
|
|
150
142
|
})
|
|
151
143
|
}, entityIndex);
|
|
152
144
|
})
|
|
153
145
|
})]
|
|
154
146
|
}, groupIndex);
|
|
155
|
-
})
|
|
156
|
-
}), /*#__PURE__*/_jsx(
|
|
157
|
-
|
|
147
|
+
})
|
|
148
|
+
}), afterDashboard && /*#__PURE__*/_jsx(RenderServerComponent, {
|
|
149
|
+
Component: afterDashboard,
|
|
150
|
+
importMap: payload.importMap,
|
|
151
|
+
serverProps: {
|
|
152
|
+
i18n,
|
|
153
|
+
locale,
|
|
154
|
+
params,
|
|
155
|
+
payload,
|
|
156
|
+
permissions,
|
|
157
|
+
searchParams,
|
|
158
|
+
user
|
|
159
|
+
}
|
|
158
160
|
})]
|
|
159
|
-
})
|
|
161
|
+
})
|
|
160
162
|
});
|
|
161
163
|
};
|
|
162
164
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","Button","Card","Gutter","Locked","SetStepNav","SetViewActions","EntityType","formatAdminURL","getCreateMappedComponent","RenderComponent","React","Fragment","baseClass","DefaultDashboard","props","globalData","i18n","t","Link","locale","navGroups","params","payload","config","admin","components","afterDashboard","beforeDashboard","routes","adminRoute","permissions","searchParams","user","createMappedComponent","importMap","serverProps","mappedBeforeDashboards","undefined","mappedAfterDashboards","_jsxs","className","_jsx","nav","actions","mappedComponent","length","map","entities","label","groupIndex","type","entity","entityIndex","title","buttonAriaLabel","createHREF","href","hasCreatePermission","isLocked","userEditing","collection","labels","plural","path","slug","collections","create","permission","global","globalLockData","find","data","_isLocked","_userEditing","lockDuration","lastEditedAt","Date","_lastEditedAt","getTime","lockDurationInMilliseconds","lockExpirationTime","id","singular","buttonStyle","el","icon","iconStyle","round","to","titleAs"],"sources":["../../../../src/views/Dashboard/Default/index.tsx"],"sourcesContent":["import type { groupNavItems } from '@payloadcms/ui/shared'\nimport type { ClientUser, Permissions, ServerProps, VisibleEntities } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { Button, Card, Gutter, Locked, SetStepNav, SetViewActions } from '@payloadcms/ui'\nimport {\n EntityType,\n formatAdminURL,\n getCreateMappedComponent,\n RenderComponent,\n} from '@payloadcms/ui/shared'\nimport React, { Fragment } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'dashboard'\n\nexport type DashboardProps = {\n globalData: Array<{\n data: { _isLocked: boolean; _lastEditedAt: string; _userEditing: ClientUser | number | string }\n lockDuration?: number\n slug: string\n }>\n Link: React.ComponentType<any>\n navGroups?: ReturnType<typeof groupNavItems>\n permissions: Permissions\n visibleEntities: VisibleEntities\n} & ServerProps\n\nexport const DefaultDashboard: React.FC<DashboardProps> = (props) => {\n const {\n globalData,\n i18n,\n i18n: { t },\n Link,\n locale,\n navGroups,\n params,\n payload: {\n config: {\n admin: {\n components: { afterDashboard, beforeDashboard },\n },\n routes: { admin: adminRoute },\n },\n },\n payload,\n permissions,\n searchParams,\n user,\n } = props\n\n const createMappedComponent = getCreateMappedComponent({\n importMap: payload.importMap,\n serverProps: {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n },\n })\n\n const mappedBeforeDashboards = createMappedComponent(\n beforeDashboard,\n undefined,\n undefined,\n 'beforeDashboard',\n )\n\n const mappedAfterDashboards = createMappedComponent(\n afterDashboard,\n undefined,\n undefined,\n 'afterDashboard',\n )\n\n return (\n <div className={baseClass}>\n <SetStepNav nav={[]} />\n <SetViewActions actions={[]} />\n <Gutter className={`${baseClass}__wrap`}>\n <RenderComponent mappedComponent={mappedBeforeDashboards} />\n <Fragment>\n <SetViewActions actions={[]} />\n {!navGroups || navGroups?.length === 0 ? (\n <p>no nav groups....</p>\n ) : (\n navGroups.map(({ entities, label }, groupIndex) => {\n return (\n <div className={`${baseClass}__group`} key={groupIndex}>\n <h2 className={`${baseClass}__label`}>{label}</h2>\n <ul className={`${baseClass}__card-list`}>\n {entities.map(({ type, entity }, entityIndex) => {\n let title: string\n let buttonAriaLabel: string\n let createHREF: string\n let href: string\n let hasCreatePermission: boolean\n let isLocked = null\n let userEditing = null\n\n if (type === EntityType.collection) {\n title = getTranslation(entity.labels.plural, i18n)\n\n buttonAriaLabel = t('general:showAllLabel', { label: title })\n\n href = formatAdminURL({ adminRoute, path: `/collections/${entity.slug}` })\n\n createHREF = formatAdminURL({\n adminRoute,\n path: `/collections/${entity.slug}/create`,\n })\n\n hasCreatePermission =\n permissions?.collections?.[entity.slug]?.create?.permission\n }\n\n if (type === EntityType.global) {\n title = getTranslation(entity.label, i18n)\n\n buttonAriaLabel = t('general:editLabel', {\n label: getTranslation(entity.label, i18n),\n })\n\n href = formatAdminURL({\n adminRoute,\n path: `/globals/${entity.slug}`,\n })\n\n // Find the lock status for the global\n const globalLockData = globalData.find(\n (global) => global.slug === entity.slug,\n )\n\n if (globalLockData) {\n isLocked = globalLockData.data._isLocked\n userEditing = globalLockData.data._userEditing\n\n // Check if the lock is expired\n const lockDuration = globalLockData?.lockDuration\n const lastEditedAt = new Date(\n globalLockData.data?._lastEditedAt,\n ).getTime()\n\n const lockDurationInMilliseconds = lockDuration * 1000\n const lockExpirationTime = lastEditedAt + lockDurationInMilliseconds\n\n if (new Date().getTime() > lockExpirationTime) {\n isLocked = false\n userEditing = null\n }\n }\n }\n\n return (\n <li key={entityIndex}>\n <Card\n actions={\n isLocked && user?.id !== userEditing?.id ? (\n <Locked className={`${baseClass}__locked`} user={userEditing} />\n ) : hasCreatePermission && type === EntityType.collection ? (\n <Button\n aria-label={t('general:createNewLabel', {\n label: getTranslation(entity.labels.singular, i18n),\n })}\n buttonStyle=\"icon-label\"\n el=\"link\"\n icon=\"plus\"\n iconStyle=\"with-border\"\n Link={Link}\n round\n to={createHREF}\n />\n ) : undefined\n }\n buttonAriaLabel={buttonAriaLabel}\n href={href}\n id={`card-${entity.slug}`}\n Link={Link}\n title={title}\n titleAs=\"h3\"\n />\n </li>\n )\n })}\n </ul>\n </div>\n )\n })\n )}\n </Fragment>\n <RenderComponent mappedComponent={mappedAfterDashboards} />\n </Gutter>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","Button","Card","Gutter","Locked","RenderServerComponent","EntityType","formatAdminURL","React","Fragment","baseClass","DefaultDashboard","props","globalData","i18n","t","Link","locale","navGroups","params","payload","config","admin","components","afterDashboard","beforeDashboard","routes","adminRoute","permissions","searchParams","user","_jsx","className","_jsxs","Component","importMap","serverProps","length","map","entities","label","groupIndex","slug","type","entityIndex","title","buttonAriaLabel","createHREF","href","hasCreatePermission","isLocked","userEditing","collection","path","collections","create","permission","global","globalLockData","find","data","_isLocked","_userEditing","lockDuration","lastEditedAt","Date","_lastEditedAt","getTime","lockDurationInMilliseconds","lockExpirationTime","actions","id","buttonStyle","el","icon","iconStyle","round","to","undefined","titleAs"],"sources":["../../../../src/views/Dashboard/Default/index.tsx"],"sourcesContent":["import type { groupNavItems } from '@payloadcms/ui/shared'\nimport type { ClientUser, Permissions, ServerProps, VisibleEntities } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { Button, Card, Gutter, Locked } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { EntityType, formatAdminURL } from '@payloadcms/ui/shared'\nimport React, { Fragment } from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'dashboard'\n\nexport type DashboardProps = {\n globalData: Array<{\n data: { _isLocked: boolean; _lastEditedAt: string; _userEditing: ClientUser | number | string }\n lockDuration?: number\n slug: string\n }>\n Link: React.ComponentType<any>\n navGroups?: ReturnType<typeof groupNavItems>\n permissions: Permissions\n visibleEntities: VisibleEntities\n} & ServerProps\n\nexport const DefaultDashboard: React.FC<DashboardProps> = (props) => {\n const {\n globalData,\n i18n,\n i18n: { t },\n Link,\n locale,\n navGroups,\n params,\n payload: {\n config: {\n admin: {\n components: { afterDashboard, beforeDashboard },\n },\n routes: { admin: adminRoute },\n },\n },\n payload,\n permissions,\n searchParams,\n user,\n } = props\n\n return (\n <div className={baseClass}>\n <Gutter className={`${baseClass}__wrap`}>\n {beforeDashboard && (\n <RenderServerComponent\n Component={beforeDashboard}\n importMap={payload.importMap}\n serverProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n )}\n <Fragment>\n {!navGroups || navGroups?.length === 0 ? (\n <p>no nav groups....</p>\n ) : (\n navGroups.map(({ entities, label }, groupIndex) => {\n return (\n <div className={`${baseClass}__group`} key={groupIndex}>\n <h2 className={`${baseClass}__label`}>{label}</h2>\n <ul className={`${baseClass}__card-list`}>\n {entities.map(({ slug, type, label }, entityIndex) => {\n let title: string\n let buttonAriaLabel: string\n let createHREF: string\n let href: string\n let hasCreatePermission: boolean\n let isLocked = null\n let userEditing = null\n\n if (type === EntityType.collection) {\n title = getTranslation(label, i18n)\n\n buttonAriaLabel = t('general:showAllLabel', { label: title })\n\n href = formatAdminURL({ adminRoute, path: `/collections/${slug}` })\n\n createHREF = formatAdminURL({\n adminRoute,\n path: `/collections/${slug}/create`,\n })\n\n hasCreatePermission = permissions?.collections?.[slug]?.create?.permission\n }\n\n if (type === EntityType.global) {\n title = getTranslation(label, i18n)\n\n buttonAriaLabel = t('general:editLabel', {\n label: getTranslation(label, i18n),\n })\n\n href = formatAdminURL({\n adminRoute,\n path: `/globals/${slug}`,\n })\n\n // Find the lock status for the global\n const globalLockData = globalData.find((global) => global.slug === slug)\n if (globalLockData) {\n isLocked = globalLockData.data._isLocked\n userEditing = globalLockData.data._userEditing\n\n // Check if the lock is expired\n const lockDuration = globalLockData?.lockDuration\n const lastEditedAt = new Date(\n globalLockData.data?._lastEditedAt,\n ).getTime()\n\n const lockDurationInMilliseconds = lockDuration * 1000\n const lockExpirationTime = lastEditedAt + lockDurationInMilliseconds\n\n if (new Date().getTime() > lockExpirationTime) {\n isLocked = false\n userEditing = null\n }\n }\n }\n\n return (\n <li key={entityIndex}>\n <Card\n actions={\n isLocked && user?.id !== userEditing?.id ? (\n <Locked className={`${baseClass}__locked`} user={userEditing} />\n ) : hasCreatePermission && type === EntityType.collection ? (\n <Button\n aria-label={t('general:createNewLabel', {\n label,\n })}\n buttonStyle=\"icon-label\"\n el=\"link\"\n icon=\"plus\"\n iconStyle=\"with-border\"\n Link={Link}\n round\n to={createHREF}\n />\n ) : undefined\n }\n buttonAriaLabel={buttonAriaLabel}\n href={href}\n id={`card-${slug}`}\n Link={Link}\n title={getTranslation(label, i18n)}\n titleAs=\"h3\"\n />\n </li>\n )\n })}\n </ul>\n </div>\n )\n })\n )}\n </Fragment>\n {afterDashboard && (\n <RenderServerComponent\n Component={afterDashboard}\n importMap={payload.importMap}\n serverProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n )}\n </Gutter>\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Dashboard/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Dashboard/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAM7C,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAA;AAIrD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA0H9C,CAAA"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
import { HydrateAuthProvider } from '@payloadcms/ui';
|
|
3
|
-
import {
|
|
2
|
+
import { HydrateAuthProvider, SetStepNav } from '@payloadcms/ui';
|
|
3
|
+
import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
|
|
4
|
+
import { EntityType, groupNavItems } from '@payloadcms/ui/shared';
|
|
4
5
|
import LinkImport from 'next/link.js';
|
|
5
6
|
import React, { Fragment } from 'react';
|
|
6
7
|
import { DefaultDashboard } from './Default/index.js';
|
|
@@ -72,32 +73,32 @@ export const Dashboard = async ({
|
|
|
72
73
|
};
|
|
73
74
|
return entityToGroup;
|
|
74
75
|
}) ?? [])], permissions, i18n);
|
|
75
|
-
const createMappedComponent = getCreateMappedComponent({
|
|
76
|
-
importMap: payload.importMap,
|
|
77
|
-
serverProps: {
|
|
78
|
-
globalData,
|
|
79
|
-
i18n,
|
|
80
|
-
Link,
|
|
81
|
-
locale,
|
|
82
|
-
navGroups,
|
|
83
|
-
params,
|
|
84
|
-
payload,
|
|
85
|
-
permissions,
|
|
86
|
-
searchParams,
|
|
87
|
-
user,
|
|
88
|
-
visibleEntities
|
|
89
|
-
}
|
|
90
|
-
});
|
|
91
|
-
const mappedDashboardComponent = createMappedComponent(CustomDashboardComponent?.Component, undefined, DefaultDashboard, 'CustomDashboardComponent.Component');
|
|
92
76
|
return /*#__PURE__*/_jsxs(Fragment, {
|
|
93
77
|
children: [/*#__PURE__*/_jsx(HydrateAuthProvider, {
|
|
94
78
|
permissions: permissions
|
|
95
|
-
}), /*#__PURE__*/_jsx(
|
|
79
|
+
}), /*#__PURE__*/_jsx(SetStepNav, {
|
|
80
|
+
nav: []
|
|
81
|
+
}), /*#__PURE__*/_jsx(RenderServerComponent, {
|
|
96
82
|
clientProps: {
|
|
97
83
|
Link,
|
|
98
84
|
locale
|
|
99
85
|
},
|
|
100
|
-
|
|
86
|
+
Component: CustomDashboardComponent,
|
|
87
|
+
Fallback: DefaultDashboard,
|
|
88
|
+
importMap: payload.importMap,
|
|
89
|
+
serverProps: {
|
|
90
|
+
globalData,
|
|
91
|
+
i18n,
|
|
92
|
+
Link,
|
|
93
|
+
locale,
|
|
94
|
+
navGroups,
|
|
95
|
+
params,
|
|
96
|
+
payload,
|
|
97
|
+
permissions,
|
|
98
|
+
searchParams,
|
|
99
|
+
user,
|
|
100
|
+
visibleEntities
|
|
101
|
+
}
|
|
101
102
|
})]
|
|
102
103
|
});
|
|
103
104
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["HydrateAuthProvider","
|
|
1
|
+
{"version":3,"file":"index.js","names":["HydrateAuthProvider","SetStepNav","RenderServerComponent","EntityType","groupNavItems","LinkImport","React","Fragment","DefaultDashboard","generateDashboardMetadata","Link","default","Dashboard","initPageResult","params","searchParams","locale","permissions","req","i18n","payload","config","user","visibleEntities","CustomDashboardComponent","admin","components","views","collections","filter","collection","slug","read","permission","includes","globals","global","globalData","length","lockedDocuments","find","depth","overrideAccess","pagination","where","globalSlug","exists","map","lockDurationDefault","lockDuration","lockDocuments","duration","lockedDoc","docs","doc","data","_isLocked","_lastEditedAt","updatedAt","_userEditing","value","navGroups","entityToGroup","type","entity","_jsxs","_jsx","nav","clientProps","Component","Fallback","importMap","serverProps"],"sources":["../../../src/views/Dashboard/index.tsx"],"sourcesContent":["import type { EntityToGroup } from '@payloadcms/ui/shared'\nimport type { AdminViewProps } from 'payload'\n\nimport { HydrateAuthProvider, SetStepNav } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { EntityType, groupNavItems } from '@payloadcms/ui/shared'\nimport LinkImport from 'next/link.js'\nimport React, { Fragment } from 'react'\n\nimport { DefaultDashboard } from './Default/index.js'\n\nexport { generateDashboardMetadata } from './meta.js'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport const Dashboard: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n const {\n locale,\n permissions,\n req: {\n i18n,\n payload: { config },\n payload,\n user,\n },\n req,\n visibleEntities,\n } = initPageResult\n\n const CustomDashboardComponent = config.admin.components?.views?.Dashboard\n\n const collections = config.collections.filter(\n (collection) =>\n permissions?.collections?.[collection.slug]?.read?.permission &&\n visibleEntities.collections.includes(collection.slug),\n )\n\n const globals = config.globals.filter(\n (global) =>\n permissions?.globals?.[global.slug]?.read?.permission &&\n visibleEntities.globals.includes(global.slug),\n )\n\n // Query locked global documents only if there are globals in the config\n let globalData = []\n\n if (config.globals.length > 0) {\n const lockedDocuments = await payload.find({\n collection: 'payload-locked-documents',\n depth: 1,\n overrideAccess: false,\n pagination: false,\n req,\n where: {\n globalSlug: {\n exists: true,\n },\n },\n })\n\n // Map over globals to include `lockDuration` and lock data for each global slug\n globalData = config.globals.map((global) => {\n const lockDurationDefault = 300\n const lockDuration =\n typeof global.lockDocuments === 'object'\n ? global.lockDocuments.duration\n : lockDurationDefault\n\n const lockedDoc = lockedDocuments.docs.find((doc) => doc.globalSlug === global.slug)\n\n return {\n slug: global.slug,\n data: {\n _isLocked: !!lockedDoc,\n _lastEditedAt: lockedDoc?.updatedAt ?? null,\n _userEditing: lockedDoc?.user?.value ?? null,\n },\n lockDuration,\n }\n })\n }\n\n const navGroups = groupNavItems(\n [\n ...(collections.map((collection) => {\n const entityToGroup: EntityToGroup = {\n type: EntityType.collection,\n entity: collection,\n }\n\n return entityToGroup\n }) ?? []),\n ...(globals.map((global) => {\n const entityToGroup: EntityToGroup = {\n type: EntityType.global,\n entity: global,\n }\n\n return entityToGroup\n }) ?? []),\n ],\n permissions,\n i18n,\n )\n\n return (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <SetStepNav nav={[]} />\n <RenderServerComponent\n clientProps={{\n Link,\n locale,\n }}\n Component={CustomDashboardComponent}\n Fallback={DefaultDashboard}\n importMap={payload.importMap}\n serverProps={{\n globalData,\n i18n,\n Link,\n locale,\n navGroups,\n params,\n payload,\n permissions,\n searchParams,\n user,\n visibleEntities,\n }}\n />\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { DocumentPreferences, Payload, TypedUser } from 'payload';
|
|
2
|
+
type Args = {
|
|
3
|
+
collectionSlug?: string;
|
|
4
|
+
globalSlug?: string;
|
|
5
|
+
id?: number | string;
|
|
6
|
+
payload: Payload;
|
|
7
|
+
user: TypedUser;
|
|
8
|
+
};
|
|
9
|
+
export declare const getDocPreferences: ({ id, collectionSlug, globalSlug, payload, user, }: Args) => Promise<DocumentPreferences>;
|
|
10
|
+
export {};
|
|
11
|
+
//# sourceMappingURL=getDocPreferences.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDocPreferences.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getDocPreferences.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAA;AAEtE,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,SAAS,CAAA;CAChB,CAAA;AAED,eAAO,MAAM,iBAAiB,uDAM3B,IAAI,KAAG,OAAO,CAAC,mBAAmB,CA2CpC,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export const getDocPreferences = async ({
|
|
2
|
+
id,
|
|
3
|
+
collectionSlug,
|
|
4
|
+
globalSlug,
|
|
5
|
+
payload,
|
|
6
|
+
user
|
|
7
|
+
}) => {
|
|
8
|
+
let preferencesKey;
|
|
9
|
+
if (collectionSlug && id) {
|
|
10
|
+
preferencesKey = `collection-${collectionSlug}-${id}`;
|
|
11
|
+
}
|
|
12
|
+
if (globalSlug) {
|
|
13
|
+
preferencesKey = `global-${globalSlug}`;
|
|
14
|
+
}
|
|
15
|
+
if (preferencesKey) {
|
|
16
|
+
const preferencesResult = await payload.find({
|
|
17
|
+
collection: 'payload-preferences',
|
|
18
|
+
depth: 0,
|
|
19
|
+
limit: 1,
|
|
20
|
+
where: {
|
|
21
|
+
and: [{
|
|
22
|
+
key: {
|
|
23
|
+
equals: preferencesKey
|
|
24
|
+
}
|
|
25
|
+
}, {
|
|
26
|
+
'user.relationTo': {
|
|
27
|
+
equals: user.collection
|
|
28
|
+
}
|
|
29
|
+
}, {
|
|
30
|
+
'user.value': {
|
|
31
|
+
equals: user.id
|
|
32
|
+
}
|
|
33
|
+
}]
|
|
34
|
+
}
|
|
35
|
+
});
|
|
36
|
+
if (preferencesResult?.docs?.[0]?.value) {
|
|
37
|
+
return preferencesResult.docs[0].value;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
fields: {}
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=getDocPreferences.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDocPreferences.js","names":["getDocPreferences","id","collectionSlug","globalSlug","payload","user","preferencesKey","preferencesResult","find","collection","depth","limit","where","and","key","equals","docs","value","fields"],"sources":["../../../src/views/Document/getDocPreferences.ts"],"sourcesContent":["import type { DocumentPreferences, Payload, TypedUser } from 'payload'\n\ntype Args = {\n collectionSlug?: string\n globalSlug?: string\n id?: number | string\n payload: Payload\n user: TypedUser\n}\n\nexport const getDocPreferences = async ({\n id,\n collectionSlug,\n globalSlug,\n payload,\n user,\n}: Args): Promise<DocumentPreferences> => {\n let preferencesKey\n\n if (collectionSlug && id) {\n preferencesKey = `collection-${collectionSlug}-${id}`\n }\n\n if (globalSlug) {\n preferencesKey = `global-${globalSlug}`\n }\n\n if (preferencesKey) {\n const preferencesResult = (await payload.find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n where: {\n and: [\n {\n key: {\n equals: preferencesKey,\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n ],\n },\n })) as unknown as { docs: { value: DocumentPreferences }[] }\n\n if (preferencesResult?.docs?.[0]?.value) {\n return preferencesResult.docs[0].value\n }\n }\n\n return { fields: {} }\n}\n"],"mappings":"AAUA,OAAO,MAAMA,iBAAA,GAAoB,MAAAA,CAAO;EACtCC,EAAE;EACFC,cAAc;EACdC,UAAU;EACVC,OAAO;EACPC;AAAI,CACC;EACL,IAAIC,cAAA;EAEJ,IAAIJ,cAAA,IAAkBD,EAAA,EAAI;IACxBK,cAAA,GAAiB,cAAcJ,cAAA,IAAkBD,EAAA,EAAI;EACvD;EAEA,IAAIE,UAAA,EAAY;IACdG,cAAA,GAAiB,UAAUH,UAAA,EAAY;EACzC;EAEA,IAAIG,cAAA,EAAgB;IAClB,MAAMC,iBAAA,GAAqB,MAAMH,OAAA,CAAQI,IAAI,CAAC;MAC5CC,UAAA,EAAY;MACZC,KAAA,EAAO;MACPC,KAAA,EAAO;MACPC,KAAA,EAAO;QACLC,GAAA,EAAK,CACH;UACEC,GAAA,EAAK;YACHC,MAAA,EAAQT;UACV;QACF,GACA;UACE,mBAAmB;YACjBS,MAAA,EAAQV,IAAA,CAAKI;UACf;QACF,GACA;UACE,cAAc;YACZM,MAAA,EAAQV,IAAA,CAAKJ;UACf;QACF;MAEJ;IACF;IAEA,IAAIM,iBAAA,EAAmBS,IAAA,GAAO,EAAE,EAAEC,KAAA,EAAO;MACvC,OAAOV,iBAAA,CAAkBS,IAAI,CAAC,EAAE,CAACC,KAAK;IACxC;EACF;EAEA,OAAO;IAAEC,MAAA,EAAQ,CAAC;EAAE;AACtB","ignoreList":[]}
|
|
@@ -1,13 +1,12 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import type { Locale, Payload, TypedUser, TypeWithID } from 'payload';
|
|
2
|
+
type Args = {
|
|
3
|
+
collectionSlug?: string;
|
|
4
|
+
globalSlug?: string;
|
|
5
5
|
id?: number | string;
|
|
6
|
-
locale
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}>;
|
|
6
|
+
locale?: Locale;
|
|
7
|
+
payload: Payload;
|
|
8
|
+
user?: TypedUser;
|
|
9
|
+
};
|
|
10
|
+
export declare const getDocumentData: ({ id, collectionSlug, globalSlug, locale, payload, user, }: Args) => Promise<null | Record<string, unknown> | TypeWithID>;
|
|
11
|
+
export {};
|
|
13
12
|
//# sourceMappingURL=getDocumentData.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getDocumentData.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getDocumentData.
|
|
1
|
+
{"version":3,"file":"getDocumentData.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getDocumentData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,SAAS,CAAA;AAErE,KAAK,IAAI,GAAG;IACV,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,CAAC,EAAE,SAAS,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,eAAe,+DAOzB,IAAI,KAAG,OAAO,CAAC,IAAI,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,UAAU,CAiC5D,CAAA"}
|
|
@@ -1,51 +1,39 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
schemaPath: schemaPathFromProps
|
|
11
|
-
} = args;
|
|
12
|
-
const schemaPath = schemaPathFromProps || collectionConfig?.slug || globalConfig?.slug;
|
|
1
|
+
export const getDocumentData = async ({
|
|
2
|
+
id,
|
|
3
|
+
collectionSlug,
|
|
4
|
+
globalSlug,
|
|
5
|
+
locale,
|
|
6
|
+
payload,
|
|
7
|
+
user
|
|
8
|
+
}) => {
|
|
9
|
+
let resolvedData = null;
|
|
13
10
|
try {
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
return {
|
|
40
|
-
data: null,
|
|
41
|
-
formState: {
|
|
42
|
-
fields: {
|
|
43
|
-
initialValue: undefined,
|
|
44
|
-
valid: false,
|
|
45
|
-
value: undefined
|
|
46
|
-
}
|
|
47
|
-
}
|
|
48
|
-
};
|
|
11
|
+
if (collectionSlug && id) {
|
|
12
|
+
resolvedData = await payload.findByID({
|
|
13
|
+
id,
|
|
14
|
+
collection: collectionSlug,
|
|
15
|
+
depth: 0,
|
|
16
|
+
draft: true,
|
|
17
|
+
fallbackLocale: null,
|
|
18
|
+
locale: locale?.code,
|
|
19
|
+
overrideAccess: false,
|
|
20
|
+
user
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
if (globalSlug) {
|
|
24
|
+
resolvedData = await payload.findGlobal({
|
|
25
|
+
slug: globalSlug,
|
|
26
|
+
depth: 0,
|
|
27
|
+
draft: true,
|
|
28
|
+
fallbackLocale: null,
|
|
29
|
+
locale: locale?.code,
|
|
30
|
+
overrideAccess: false,
|
|
31
|
+
user
|
|
32
|
+
});
|
|
33
|
+
}
|
|
34
|
+
} catch (_err) {
|
|
35
|
+
payload.logger.error(_err);
|
|
49
36
|
}
|
|
37
|
+
return resolvedData;
|
|
50
38
|
};
|
|
51
39
|
//# sourceMappingURL=getDocumentData.js.map
|