@payloadcms/next 3.0.0-canary.a5aaf21 → 3.0.0-canary.a6e7305
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 +156 -0
- package/dist/cjs/withPayload.cjs.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +70 -68
- package/dist/elements/DocumentHeader/Tabs/index.scss +41 -39
- package/dist/elements/DocumentHeader/index.scss +44 -42
- package/dist/elements/DocumentLocked/index.d.ts +1 -1
- package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
- package/dist/elements/DocumentLocked/index.js +24 -14
- package/dist/elements/DocumentLocked/index.js.map +1 -1
- package/dist/elements/DocumentLocked/index.scss +29 -26
- package/dist/elements/DocumentTakeOver/index.scss +28 -26
- package/dist/elements/FormHeader/index.d.ts +9 -0
- package/dist/elements/FormHeader/index.d.ts.map +1 -0
- package/dist/elements/FormHeader/index.js +20 -0
- package/dist/elements/FormHeader/index.js.map +1 -0
- package/dist/elements/FormHeader/index.scss +8 -0
- package/dist/elements/LeaveWithoutSaving/index.scss +28 -26
- package/dist/elements/Nav/NavWrapper/index.scss +20 -18
- package/dist/elements/Nav/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/index.client.js +1 -0
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.scss +127 -125
- package/dist/exports/routes.d.ts +1 -1
- package/dist/exports/routes.d.ts.map +1 -1
- package/dist/exports/routes.js +1 -1
- package/dist/exports/routes.js.map +1 -1
- package/dist/exports/utilities.d.ts +1 -0
- 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/layouts/Root/index.js +6 -6
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/routes/graphql/handler.d.ts.map +1 -1
- package/dist/routes/graphql/handler.js +23 -11
- package/dist/routes/graphql/handler.js.map +1 -1
- package/dist/routes/rest/auth/login.js +2 -2
- package/dist/routes/rest/auth/login.js.map +1 -1
- package/dist/routes/rest/auth/logout.d.ts.map +1 -1
- package/dist/routes/rest/auth/logout.js +3 -2
- package/dist/routes/rest/auth/logout.js.map +1 -1
- package/dist/routes/rest/auth/refresh.js +2 -2
- package/dist/routes/rest/auth/refresh.js.map +1 -1
- package/dist/routes/rest/auth/registerFirstUser.js +2 -2
- package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
- package/dist/routes/rest/auth/resetPassword.js +2 -2
- package/dist/routes/rest/auth/resetPassword.js.map +1 -1
- package/dist/routes/rest/collections/create.d.ts.map +1 -1
- package/dist/routes/rest/collections/create.js +5 -1
- package/dist/routes/rest/collections/create.js.map +1 -1
- package/dist/routes/rest/collections/delete.d.ts.map +1 -1
- package/dist/routes/rest/collections/delete.js +8 -0
- package/dist/routes/rest/collections/delete.js.map +1 -1
- package/dist/routes/rest/collections/deleteByID.d.ts.map +1 -1
- package/dist/routes/rest/collections/deleteByID.js +7 -1
- package/dist/routes/rest/collections/deleteByID.js.map +1 -1
- package/dist/routes/rest/collections/duplicate.d.ts.map +1 -1
- package/dist/routes/rest/collections/duplicate.js +5 -1
- package/dist/routes/rest/collections/duplicate.js.map +1 -1
- package/dist/routes/rest/collections/find.d.ts.map +1 -1
- package/dist/routes/rest/collections/find.js +7 -1
- package/dist/routes/rest/collections/find.js.map +1 -1
- package/dist/routes/rest/collections/findByID.d.ts.map +1 -1
- package/dist/routes/rest/collections/findByID.js +5 -1
- package/dist/routes/rest/collections/findByID.js.map +1 -1
- package/dist/routes/rest/collections/findVersionByID.d.ts.map +1 -1
- package/dist/routes/rest/collections/findVersionByID.js +5 -1
- package/dist/routes/rest/collections/findVersionByID.js.map +1 -1
- package/dist/routes/rest/collections/findVersions.d.ts.map +1 -1
- package/dist/routes/rest/collections/findVersions.js +7 -1
- package/dist/routes/rest/collections/findVersions.js.map +1 -1
- package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
- package/dist/routes/rest/collections/restoreVersion.js +2 -0
- package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
- package/dist/routes/rest/collections/update.d.ts.map +1 -1
- package/dist/routes/rest/collections/update.js +10 -0
- package/dist/routes/rest/collections/update.js.map +1 -1
- package/dist/routes/rest/collections/updateByID.d.ts.map +1 -1
- package/dist/routes/rest/collections/updateByID.js +7 -1
- package/dist/routes/rest/collections/updateByID.js.map +1 -1
- package/dist/routes/rest/globals/findOne.d.ts.map +1 -1
- package/dist/routes/rest/globals/findOne.js +5 -1
- package/dist/routes/rest/globals/findOne.js.map +1 -1
- package/dist/routes/rest/globals/findVersionByID.d.ts.map +1 -1
- package/dist/routes/rest/globals/findVersionByID.js +5 -1
- package/dist/routes/rest/globals/findVersionByID.js.map +1 -1
- package/dist/routes/rest/globals/findVersions.d.ts.map +1 -1
- package/dist/routes/rest/globals/findVersions.js +7 -1
- package/dist/routes/rest/globals/findVersions.js.map +1 -1
- package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
- package/dist/routes/rest/globals/restoreVersion.js +2 -0
- package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
- package/dist/routes/rest/globals/update.d.ts.map +1 -1
- package/dist/routes/rest/globals/update.js +5 -1
- package/dist/routes/rest/globals/update.js.map +1 -1
- package/dist/routes/rest/index.d.ts +17 -12
- package/dist/routes/rest/index.d.ts.map +1 -1
- package/dist/routes/rest/index.js +90 -15
- package/dist/routes/rest/index.js.map +1 -1
- package/dist/routes/rest/og/index.js +2 -4
- package/dist/routes/rest/og/index.js.map +1 -1
- package/dist/routes/rest/routeError.d.ts +2 -7
- package/dist/routes/rest/routeError.d.ts.map +1 -1
- package/dist/routes/rest/routeError.js +33 -19
- package/dist/routes/rest/routeError.js.map +1 -1
- package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts +1 -1
- package/dist/routes/rest/utilities/sanitizeJoinParams.d.ts.map +1 -1
- package/dist/routes/rest/utilities/sanitizeJoinParams.js +9 -5
- package/dist/routes/rest/utilities/sanitizeJoinParams.js.map +1 -1
- package/dist/routes/rest/utilities/sanitizePopulate.d.ts +3 -0
- package/dist/routes/rest/utilities/sanitizePopulate.d.ts.map +1 -0
- package/dist/routes/rest/utilities/sanitizePopulate.js +11 -0
- package/dist/routes/rest/utilities/sanitizePopulate.js.map +1 -0
- package/dist/routes/rest/utilities/sanitizeSelect.d.ts +6 -0
- package/dist/routes/rest/utilities/sanitizeSelect.d.ts.map +1 -0
- package/dist/routes/rest/utilities/sanitizeSelect.js +17 -0
- package/dist/routes/rest/utilities/sanitizeSelect.js.map +1 -0
- package/dist/scss/app.scss +166 -162
- package/dist/scss/colors.scss +256 -254
- package/dist/scss/resets.scss +9 -7
- package/dist/scss/toastify.scss +42 -40
- package/dist/scss/toasts.scss +105 -103
- package/dist/scss/type.scss +80 -79
- package/dist/templates/Default/Wrapper/index.scss +38 -36
- package/dist/templates/Default/index.scss +60 -58
- package/dist/templates/Minimal/index.scss +22 -20
- package/dist/utilities/getNextRequestI18n.js +2 -2
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/getRequestTheme.d.ts.map +1 -1
- package/dist/utilities/getRequestTheme.js +3 -0
- package/dist/utilities/getRequestTheme.js.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.d.ts +12 -11
- package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.js +9 -21
- package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.d.ts +6 -3
- package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.js +23 -36
- package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
- package/dist/utilities/initPage/index.d.ts +1 -1
- package/dist/utilities/initPage/index.d.ts.map +1 -1
- package/dist/utilities/initPage/index.js +27 -10
- package/dist/utilities/initPage/index.js.map +1 -1
- package/dist/utilities/initPage/isCustomAdminView.d.ts +10 -0
- package/dist/utilities/initPage/isCustomAdminView.d.ts.map +1 -0
- package/dist/utilities/initPage/isCustomAdminView.js +31 -0
- package/dist/utilities/initPage/isCustomAdminView.js.map +1 -0
- package/dist/utilities/initPage/shared.d.ts +2 -2
- package/dist/utilities/initPage/shared.d.ts.map +1 -1
- package/dist/utilities/initPage/shared.js +19 -13
- package/dist/utilities/initPage/shared.js.map +1 -1
- package/dist/utilities/initReq.js +1 -1
- package/dist/utilities/initReq.js.map +1 -1
- package/dist/views/API/RenderJSON/index.scss +68 -66
- package/dist/views/API/index.scss +98 -96
- package/dist/views/Account/Settings/index.d.ts +2 -1
- package/dist/views/Account/Settings/index.d.ts.map +1 -1
- package/dist/views/Account/Settings/index.js +3 -2
- package/dist/views/Account/Settings/index.js.map +1 -1
- package/dist/views/Account/Settings/index.scss +37 -35
- package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
- package/dist/views/Account/ToggleTheme/index.js +1 -0
- package/dist/views/Account/ToggleTheme/index.js.map +1 -1
- package/dist/views/Account/index.d.ts.map +1 -1
- package/dist/views/Account/index.js +4 -2
- package/dist/views/Account/index.js.map +1 -1
- package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js +31 -15
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/CreateFirstUser/index.scss +13 -11
- package/dist/views/Dashboard/Default/index.d.ts +3 -1
- package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/index.js +12 -3
- package/dist/views/Dashboard/Default/index.js.map +1 -1
- package/dist/views/Dashboard/Default/index.scss +51 -49
- package/dist/views/Dashboard/index.d.ts.map +1 -1
- package/dist/views/Dashboard/index.js +31 -13
- package/dist/views/Dashboard/index.js.map +1 -1
- package/dist/views/Document/getDocumentData.js +4 -2
- package/dist/views/Document/getDocumentData.js.map +1 -1
- package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -1
- package/dist/views/Document/getDocumentPermissions.js +6 -5
- package/dist/views/Document/getDocumentPermissions.js.map +1 -1
- package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
- package/dist/views/Document/getViewsFromConfig.js +6 -0
- package/dist/views/Document/getViewsFromConfig.js.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.js +2 -8
- package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
- package/dist/views/Edit/Default/Auth/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/index.js +37 -26
- package/dist/views/Edit/Default/Auth/index.js.map +1 -1
- package/dist/views/Edit/Default/Auth/index.scss +56 -54
- package/dist/views/Edit/Default/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/index.js +45 -73
- package/dist/views/Edit/Default/index.js.map +1 -1
- package/dist/views/Edit/Default/index.scss +15 -13
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +9 -11
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/ForgotPassword/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/index.js +10 -8
- package/dist/views/ForgotPassword/index.js.map +1 -1
- package/dist/views/List/Default/index.scss +136 -134
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +1 -1
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/LivePreview/IFrame/index.scss +8 -6
- package/dist/views/LivePreview/Preview/index.scss +32 -30
- package/dist/views/LivePreview/Toolbar/Controls/index.scss +49 -47
- package/dist/views/LivePreview/Toolbar/SizeInput/index.scss +11 -9
- package/dist/views/LivePreview/Toolbar/index.scss +33 -31
- package/dist/views/LivePreview/ToolbarArea/index.scss +5 -3
- package/dist/views/LivePreview/index.client.d.ts.map +1 -1
- package/dist/views/LivePreview/index.client.js +221 -203
- package/dist/views/LivePreview/index.client.js.map +1 -1
- package/dist/views/LivePreview/index.scss +48 -46
- package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
- package/dist/views/Login/LoginForm/index.js +2 -1
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Login/LoginForm/index.scss +8 -6
- package/dist/views/Login/index.scss +8 -6
- package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
- package/dist/views/Logout/LogoutClient.js +77 -55
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/index.scss +17 -15
- package/dist/views/NotFound/index.d.ts +5 -5
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +7 -2
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/NotFound/index.scss +38 -36
- package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts +7 -0
- package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -0
- package/dist/views/ResetPassword/{index.client.js → ResetPasswordForm/index.js} +16 -19
- package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -0
- package/dist/views/ResetPassword/index.d.ts.map +1 -1
- package/dist/views/ResetPassword/index.js +19 -10
- package/dist/views/ResetPassword/index.js.map +1 -1
- package/dist/views/ResetPassword/index.scss +6 -26
- package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
- package/dist/views/Root/getViewFromConfig.js +1 -7
- package/dist/views/Root/getViewFromConfig.js.map +1 -1
- package/dist/views/Root/index.d.ts +5 -5
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +23 -10
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Root/meta.d.ts +5 -5
- package/dist/views/Root/meta.d.ts.map +1 -1
- package/dist/views/Root/meta.js +3 -2
- package/dist/views/Root/meta.js.map +1 -1
- package/dist/views/Unauthorized/index.d.ts.map +1 -1
- package/dist/views/Unauthorized/index.js +14 -7
- package/dist/views/Unauthorized/index.js.map +1 -1
- package/dist/views/Unauthorized/index.scss +4 -31
- package/dist/views/Verify/index.client.d.ts +7 -0
- package/dist/views/Verify/index.client.d.ts.map +1 -0
- package/dist/views/Verify/index.client.js +46 -0
- package/dist/views/Verify/index.client.js.map +1 -0
- package/dist/views/Verify/index.d.ts.map +1 -1
- package/dist/views/Verify/index.js +12 -11
- package/dist/views/Verify/index.js.map +1 -1
- package/dist/views/Verify/index.scss +13 -11
- package/dist/views/Version/Default/index.scss +52 -50
- package/dist/views/Version/RenderFieldsToDiff/Label/index.scss +5 -3
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +29 -27
- package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.scss +11 -9
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +12 -10
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +12 -10
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +12 -10
- package/dist/views/Version/RenderFieldsToDiff/index.scss +12 -10
- package/dist/views/Version/Restore/index.d.ts.map +1 -1
- package/dist/views/Version/Restore/index.js +8 -14
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/Restore/index.scss +57 -55
- package/dist/views/Version/SelectComparison/index.scss +12 -10
- package/dist/views/Version/SelectLocales/index.scss +6 -4
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +2 -0
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js +1 -0
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/dist/views/Versions/getLatestVersion.d.ts +1 -0
- package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
- package/dist/views/Versions/getLatestVersion.js +15 -4
- package/dist/views/Versions/getLatestVersion.js.map +1 -1
- package/dist/views/Versions/index.d.ts.map +1 -1
- package/dist/views/Versions/index.js +4 -4
- package/dist/views/Versions/index.js.map +1 -1
- package/dist/views/Versions/index.scss +78 -76
- package/dist/withPayload.d.ts.map +1 -1
- package/dist/withPayload.js +9 -1
- package/dist/withPayload.js.map +1 -1
- package/package.json +10 -10
- package/dist/cjs/withPayload.js +0 -111
- package/dist/cjs/withPayload.js.map +0 -1
- package/dist/views/ResetPassword/index.client.d.ts +0 -7
- package/dist/views/ResetPassword/index.client.d.ts.map +0 -1
- package/dist/views/ResetPassword/index.client.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getDocumentPermissions.js","names":["hasSavePermission","getHasSavePermission","isEditing","getIsEditing","docAccessOperation","docAccessOperationGlobal","getDocumentPermissions","args","id","collectionConfig","data","globalConfig","req","docPermissions","hasPublishPermission","toString","collection","config","
|
|
1
|
+
{"version":3,"file":"getDocumentPermissions.js","names":["hasSavePermission","getHasSavePermission","isEditing","getIsEditing","docAccessOperation","docAccessOperationGlobal","getDocumentPermissions","args","id","collectionConfig","data","globalConfig","req","docPermissions","hasPublishPermission","toString","collection","config","_status","versions","drafts","then","update","permission","error","payload","logger","collectionSlug","slug","globalSlug"],"sources":["../../../src/views/Document/getDocumentPermissions.tsx"],"sourcesContent":["import type {\n Data,\n DocumentPermissions,\n PayloadRequest,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport {\n hasSavePermission as getHasSavePermission,\n isEditing as getIsEditing,\n} from '@payloadcms/ui/shared'\nimport { docAccessOperation, docAccessOperationGlobal } from 'payload'\n\nexport const getDocumentPermissions = async (args: {\n collectionConfig?: SanitizedCollectionConfig\n data: Data\n globalConfig?: SanitizedGlobalConfig\n id?: number | string\n req: PayloadRequest\n}): Promise<{\n docPermissions: DocumentPermissions\n hasPublishPermission: boolean\n hasSavePermission: boolean\n}> => {\n const { id, collectionConfig, data = {}, globalConfig, req } = args\n\n let docPermissions: DocumentPermissions\n let hasPublishPermission = false\n\n if (collectionConfig) {\n try {\n docPermissions = await docAccessOperation({\n id: id?.toString(),\n collection: {\n config: collectionConfig,\n },\n req: {\n ...req,\n data: {\n ...data,\n _status: 'draft',\n },\n },\n })\n\n if (collectionConfig.versions?.drafts) {\n hasPublishPermission = await docAccessOperation({\n id: id?.toString(),\n collection: {\n config: collectionConfig,\n },\n req: {\n ...req,\n data: {\n ...data,\n _status: 'published',\n },\n },\n }).then(({ update }) => update?.permission)\n }\n } catch (error) {\n req.payload.logger.error(error)\n }\n }\n\n if (globalConfig) {\n try {\n docPermissions = await docAccessOperationGlobal({\n globalConfig,\n req: {\n ...req,\n data,\n },\n })\n\n if (globalConfig.versions?.drafts) {\n hasPublishPermission = await docAccessOperationGlobal({\n globalConfig,\n req: {\n ...req,\n data: {\n ...data,\n _status: 'published',\n },\n },\n }).then(({ update }) => update?.permission)\n }\n } catch (error) {\n req.payload.logger.error(error)\n }\n }\n\n const hasSavePermission = getHasSavePermission({\n collectionSlug: collectionConfig?.slug,\n docPermissions,\n globalSlug: globalConfig?.slug,\n isEditing: getIsEditing({\n id,\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n }),\n })\n\n return {\n docPermissions,\n hasPublishPermission,\n hasSavePermission,\n }\n}\n"],"mappings":"AAQA,SACEA,iBAAA,IAAqBC,oBAAoB,EACzCC,SAAA,IAAaC,YAAY,QACpB;AACP,SAASC,kBAAkB,EAAEC,wBAAwB,QAAQ;AAE7D,OAAO,MAAMC,sBAAA,GAAyB,MAAOC,IAAA;EAW3C,MAAM;IAAEC,EAAE;IAAEC,gBAAgB;IAAEC,IAAA,GAAO,CAAC,CAAC;IAAEC,YAAY;IAAEC;EAAG,CAAE,GAAGL,IAAA;EAE/D,IAAIM,cAAA;EACJ,IAAIC,oBAAA,GAAuB;EAE3B,IAAIL,gBAAA,EAAkB;IACpB,IAAI;MACFI,cAAA,GAAiB,MAAMT,kBAAA,CAAmB;QACxCI,EAAA,EAAIA,EAAA,EAAIO,QAAA;QACRC,UAAA,EAAY;UACVC,MAAA,EAAQR;QACV;QACAG,GAAA,EAAK;UACH,GAAGA,GAAG;UACNF,IAAA,EAAM;YACJ,GAAGA,IAAI;YACPQ,OAAA,EAAS;UACX;QACF;MACF;MAEA,IAAIT,gBAAA,CAAiBU,QAAQ,EAAEC,MAAA,EAAQ;QACrCN,oBAAA,GAAuB,MAAMV,kBAAA,CAAmB;UAC9CI,EAAA,EAAIA,EAAA,EAAIO,QAAA;UACRC,UAAA,EAAY;YACVC,MAAA,EAAQR;UACV;UACAG,GAAA,EAAK;YACH,GAAGA,GAAG;YACNF,IAAA,EAAM;cACJ,GAAGA,IAAI;cACPQ,OAAA,EAAS;YACX;UACF;QACF,GAAGG,IAAI,CAAC,CAAC;UAAEC;QAAM,CAAE,KAAKA,MAAA,EAAQC,UAAA;MAClC;IACF,EAAE,OAAOC,KAAA,EAAO;MACdZ,GAAA,CAAIa,OAAO,CAACC,MAAM,CAACF,KAAK,CAACA,KAAA;IAC3B;EACF;EAEA,IAAIb,YAAA,EAAc;IAChB,IAAI;MACFE,cAAA,GAAiB,MAAMR,wBAAA,CAAyB;QAC9CM,YAAA;QACAC,GAAA,EAAK;UACH,GAAGA,GAAG;UACNF;QACF;MACF;MAEA,IAAIC,YAAA,CAAaQ,QAAQ,EAAEC,MAAA,EAAQ;QACjCN,oBAAA,GAAuB,MAAMT,wBAAA,CAAyB;UACpDM,YAAA;UACAC,GAAA,EAAK;YACH,GAAGA,GAAG;YACNF,IAAA,EAAM;cACJ,GAAGA,IAAI;cACPQ,OAAA,EAAS;YACX;UACF;QACF,GAAGG,IAAI,CAAC,CAAC;UAAEC;QAAM,CAAE,KAAKA,MAAA,EAAQC,UAAA;MAClC;IACF,EAAE,OAAOC,KAAA,EAAO;MACdZ,GAAA,CAAIa,OAAO,CAACC,MAAM,CAACF,KAAK,CAACA,KAAA;IAC3B;EACF;EAEA,MAAMxB,iBAAA,GAAoBC,oBAAA,CAAqB;IAC7C0B,cAAA,EAAgBlB,gBAAA,EAAkBmB,IAAA;IAClCf,cAAA;IACAgB,UAAA,EAAYlB,YAAA,EAAciB,IAAA;IAC1B1B,SAAA,EAAWC,YAAA,CAAa;MACtBK,EAAA;MACAmB,cAAA,EAAgBlB,gBAAA,EAAkBmB,IAAA;MAClCC,UAAA,EAAYlB,YAAA,EAAciB;IAC5B;EACF;EAEA,OAAO;IACLf,cAAA;IACAC,oBAAA;IACAd;EACF;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getViewsFromConfig.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getViewsFromConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAa9B,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,MAAM,IAAI;IAClD,SAAS,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;CAC5C,CAAA;AAED,eAAO,MAAM,kBAAkB,uGAO5B;IACD,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB,GAAG,CACA;IACE,cAAc,EAAE,oBAAoB,GAAG,gBAAgB,CAAA;IACvD,sBAAsB,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC3C,GACD;IACE,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,sBAAsB,EAAE,IAAI,CAAA;CAC7B,CACJ,KAAG;IACF,UAAU,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAAA;IACnD,WAAW,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAAA;IACpD;;OAEG;IACH,SAAS,EAAE,cAAc,CAAC,cAAc,CAAC,CAAA;IACzC,OAAO,EAAE,MAAM,CAAA;CAChB,GAAG,
|
|
1
|
+
{"version":3,"file":"getViewsFromConfig.d.ts","sourceRoot":"","sources":["../../../src/views/Document/getViewsFromConfig.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,cAAc,EACd,oBAAoB,EACpB,gBAAgB,EAChB,gBAAgB,EAChB,yBAAyB,EACzB,eAAe,EACf,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAa9B,MAAM,MAAM,cAAc,CAAC,MAAM,SAAS,MAAM,IAAI;IAClD,SAAS,CAAC,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAA;CAC5C,CAAA;AAED,eAAO,MAAM,kBAAkB,uGAO5B;IACD,gBAAgB,CAAC,EAAE,yBAAyB,CAAA;IAC5C,MAAM,EAAE,eAAe,CAAA;IACvB,YAAY,CAAC,EAAE,qBAAqB,CAAA;IACpC,aAAa,EAAE,MAAM,EAAE,CAAA;CACxB,GAAG,CACA;IACE,cAAc,EAAE,oBAAoB,GAAG,gBAAgB,CAAA;IACvD,sBAAsB,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAC3C,GACD;IACE,cAAc,CAAC,EAAE,KAAK,CAAA;IACtB,sBAAsB,EAAE,IAAI,CAAA;CAC7B,CACJ,KAAG;IACF,UAAU,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAAA;IACnD,WAAW,EAAE,cAAc,CAAC,uBAAuB,CAAC,CAAA;IACpD;;OAEG;IACH,SAAS,EAAE,cAAc,CAAC,cAAc,CAAC,CAAA;IACzC,OAAO,EAAE,MAAM,CAAA;CAChB,GAAG,IA0XH,CAAA"}
|
|
@@ -105,6 +105,9 @@ export const getViewsFromConfig = ({
|
|
|
105
105
|
DefaultView = {
|
|
106
106
|
Component: DefaultLivePreviewView
|
|
107
107
|
};
|
|
108
|
+
CustomView = {
|
|
109
|
+
payloadComponent: getCustomViewByKey(views, 'livePreview')
|
|
110
|
+
};
|
|
108
111
|
}
|
|
109
112
|
break;
|
|
110
113
|
}
|
|
@@ -224,6 +227,9 @@ export const getViewsFromConfig = ({
|
|
|
224
227
|
DefaultView = {
|
|
225
228
|
Component: DefaultLivePreviewView
|
|
226
229
|
};
|
|
230
|
+
CustomView = {
|
|
231
|
+
payloadComponent: getCustomViewByKey(views, 'livePreview')
|
|
232
|
+
};
|
|
227
233
|
}
|
|
228
234
|
break;
|
|
229
235
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getViewsFromConfig.js","names":["notFound","APIView","DefaultAPIView","EditView","DefaultEditView","LivePreviewView","DefaultLivePreviewView","UnauthorizedView","VersionView","DefaultVersionView","VersionsView","DefaultVersionsView","getCustomViewByKey","getCustomViewByRoute","getViewsFromConfig","collectionConfig","config","docPermissions","globalConfig","overrideDocPermissions","routeSegments","DefaultView","CustomView","ErrorView","viewKey","routes","admin","adminRoute","views","components","livePreviewEnabled","livePreview","collections","includes","slug","globals","collectionEntity","collectionSlug","segment3","segment4","segment5","remainingSegments","read","permission","length","create","payloadComponent","Component","baseRoute","filter","Boolean","join","currentRoute","CustomViewComponent","customViewKey","hideAPIURL","readVersions","globalEntity","globalSlug"],"sources":["../../../src/views/Document/getViewsFromConfig.tsx"],"sourcesContent":["import type {\n AdminViewProps,\n CollectionPermission,\n GlobalPermission,\n PayloadComponent,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n ServerSideEditViewProps,\n} from 'payload'\nimport type React from 'react'\n\nimport { notFound } from 'next/navigation.js'\n\nimport { APIView as DefaultAPIView } from '../API/index.js'\nimport { EditView as DefaultEditView } from '../Edit/index.js'\nimport { LivePreviewView as DefaultLivePreviewView } from '../LivePreview/index.js'\nimport { UnauthorizedView } from '../Unauthorized/index.js'\nimport { VersionView as DefaultVersionView } from '../Version/index.js'\nimport { VersionsView as DefaultVersionsView } from '../Versions/index.js'\nimport { getCustomViewByKey } from './getCustomViewByKey.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nexport type ViewFromConfig<TProps extends object> = {\n Component?: React.FC<TProps>\n payloadComponent?: PayloadComponent<TProps>\n}\n\nexport const getViewsFromConfig = ({\n collectionConfig,\n config,\n docPermissions,\n globalConfig,\n overrideDocPermissions,\n routeSegments,\n}: {\n collectionConfig?: SanitizedCollectionConfig\n config: SanitizedConfig\n globalConfig?: SanitizedGlobalConfig\n routeSegments: string[]\n} & (\n | {\n docPermissions: CollectionPermission | GlobalPermission\n overrideDocPermissions?: false | undefined\n }\n | {\n docPermissions?: never\n overrideDocPermissions: true\n }\n)): {\n CustomView: ViewFromConfig<ServerSideEditViewProps>\n DefaultView: ViewFromConfig<ServerSideEditViewProps>\n /**\n * The error view to display if CustomView or DefaultView do not exist (could be either due to not found, or unauthorized). Can be null\n */\n ErrorView: ViewFromConfig<AdminViewProps>\n viewKey: string\n} | null => {\n // Conditionally import and lazy load the default view\n let DefaultView: ViewFromConfig<ServerSideEditViewProps> = null\n let CustomView: ViewFromConfig<ServerSideEditViewProps> = null\n let ErrorView: ViewFromConfig<AdminViewProps> = null\n let viewKey: string\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n const views =\n (collectionConfig && collectionConfig?.admin?.components?.views) ||\n (globalConfig && globalConfig?.admin?.components?.views)\n\n const livePreviewEnabled =\n (collectionConfig && collectionConfig?.admin?.livePreview) ||\n config?.admin?.livePreview?.collections?.includes(collectionConfig?.slug) ||\n (globalConfig && globalConfig?.admin?.livePreview) ||\n config?.admin?.livePreview?.globals?.includes(globalConfig?.slug)\n\n if (collectionConfig) {\n const [collectionEntity, collectionSlug, segment3, segment4, segment5, ...remainingSegments] =\n routeSegments\n\n if (!overrideDocPermissions && !docPermissions?.read?.permission) {\n notFound()\n } else {\n // `../:id`, or `../create`\n switch (routeSegments.length) {\n case 3: {\n switch (segment3) {\n case 'create': {\n if (\n !overrideDocPermissions &&\n 'create' in docPermissions &&\n docPermissions?.create?.permission\n ) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'default'),\n }\n DefaultView = {\n Component: DefaultEditView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n break\n }\n\n default: {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n 'collections',\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } =\n getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n } else {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'default'),\n }\n\n DefaultView = {\n Component: DefaultEditView,\n }\n }\n\n break\n }\n }\n break\n }\n\n // `../:id/api`, `../:id/preview`, `../:id/versions`, etc\n case 4: {\n switch (segment4) {\n case 'api': {\n if (collectionConfig?.admin?.hideAPIURL !== true) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'api'),\n }\n DefaultView = {\n Component: DefaultAPIView,\n }\n }\n break\n }\n\n case 'preview': {\n if (livePreviewEnabled) {\n DefaultView = {\n Component: DefaultLivePreviewView,\n }\n }\n break\n }\n\n case 'versions': {\n if (!overrideDocPermissions && docPermissions?.readVersions?.permission) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'versions'),\n }\n DefaultView = {\n Component: DefaultVersionsView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n break\n }\n\n default: {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n 'collections',\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } =\n getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n }\n\n break\n }\n }\n break\n }\n\n // `../:id/versions/:version`, etc\n default: {\n if (segment4 === 'versions') {\n if (!overrideDocPermissions && docPermissions?.readVersions?.permission) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'version'),\n }\n DefaultView = {\n Component: DefaultVersionView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n } else {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n collectionEntity,\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute(\n {\n baseRoute,\n currentRoute,\n views,\n },\n )\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n }\n }\n\n break\n }\n }\n }\n }\n\n if (globalConfig) {\n const [globalEntity, globalSlug, segment3, ...remainingSegments] = routeSegments\n\n if (!overrideDocPermissions && !docPermissions?.read?.permission) {\n notFound()\n } else {\n switch (routeSegments.length) {\n case 2: {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'default'),\n }\n DefaultView = {\n Component: DefaultEditView,\n }\n break\n }\n\n case 3: {\n // `../:slug/api`, `../:slug/preview`, `../:slug/versions`, etc\n switch (segment3) {\n case 'api': {\n if (globalConfig?.admin?.hideAPIURL !== true) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'api'),\n }\n DefaultView = {\n Component: DefaultAPIView,\n }\n }\n break\n }\n\n case 'preview': {\n if (livePreviewEnabled) {\n DefaultView = {\n Component: DefaultLivePreviewView,\n }\n }\n break\n }\n\n case 'versions': {\n if (!overrideDocPermissions && docPermissions?.readVersions?.permission) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'versions'),\n }\n\n DefaultView = {\n Component: DefaultVersionsView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n break\n }\n\n default: {\n if (!overrideDocPermissions && docPermissions?.read?.permission) {\n const baseRoute = [adminRoute, globalEntity, globalSlug, segment3]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment3, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } =\n getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n } else {\n DefaultView = {\n Component: DefaultEditView,\n }\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n break\n }\n }\n break\n }\n\n default: {\n // `../:slug/versions/:version`, etc\n if (segment3 === 'versions') {\n if (!overrideDocPermissions && docPermissions?.readVersions?.permission) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'version'),\n }\n DefaultView = {\n Component: DefaultVersionView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n } else {\n const baseRoute = [adminRoute !== '/' && adminRoute, 'globals', globalSlug]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment3, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute(\n {\n baseRoute,\n currentRoute,\n views,\n },\n )\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n }\n }\n\n break\n }\n }\n }\n }\n\n return {\n CustomView,\n DefaultView,\n ErrorView,\n viewKey,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"getViewsFromConfig.js","names":["notFound","APIView","DefaultAPIView","EditView","DefaultEditView","LivePreviewView","DefaultLivePreviewView","UnauthorizedView","VersionView","DefaultVersionView","VersionsView","DefaultVersionsView","getCustomViewByKey","getCustomViewByRoute","getViewsFromConfig","collectionConfig","config","docPermissions","globalConfig","overrideDocPermissions","routeSegments","DefaultView","CustomView","ErrorView","viewKey","routes","admin","adminRoute","views","components","livePreviewEnabled","livePreview","collections","includes","slug","globals","collectionEntity","collectionSlug","segment3","segment4","segment5","remainingSegments","read","permission","length","create","payloadComponent","Component","baseRoute","filter","Boolean","join","currentRoute","CustomViewComponent","customViewKey","hideAPIURL","readVersions","globalEntity","globalSlug"],"sources":["../../../src/views/Document/getViewsFromConfig.tsx"],"sourcesContent":["import type {\n AdminViewProps,\n CollectionPermission,\n GlobalPermission,\n PayloadComponent,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n ServerSideEditViewProps,\n} from 'payload'\nimport type React from 'react'\n\nimport { notFound } from 'next/navigation.js'\n\nimport { APIView as DefaultAPIView } from '../API/index.js'\nimport { EditView as DefaultEditView } from '../Edit/index.js'\nimport { LivePreviewView as DefaultLivePreviewView } from '../LivePreview/index.js'\nimport { UnauthorizedView } from '../Unauthorized/index.js'\nimport { VersionView as DefaultVersionView } from '../Version/index.js'\nimport { VersionsView as DefaultVersionsView } from '../Versions/index.js'\nimport { getCustomViewByKey } from './getCustomViewByKey.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nexport type ViewFromConfig<TProps extends object> = {\n Component?: React.FC<TProps>\n payloadComponent?: PayloadComponent<TProps>\n}\n\nexport const getViewsFromConfig = ({\n collectionConfig,\n config,\n docPermissions,\n globalConfig,\n overrideDocPermissions,\n routeSegments,\n}: {\n collectionConfig?: SanitizedCollectionConfig\n config: SanitizedConfig\n globalConfig?: SanitizedGlobalConfig\n routeSegments: string[]\n} & (\n | {\n docPermissions: CollectionPermission | GlobalPermission\n overrideDocPermissions?: false | undefined\n }\n | {\n docPermissions?: never\n overrideDocPermissions: true\n }\n)): {\n CustomView: ViewFromConfig<ServerSideEditViewProps>\n DefaultView: ViewFromConfig<ServerSideEditViewProps>\n /**\n * The error view to display if CustomView or DefaultView do not exist (could be either due to not found, or unauthorized). Can be null\n */\n ErrorView: ViewFromConfig<AdminViewProps>\n viewKey: string\n} | null => {\n // Conditionally import and lazy load the default view\n let DefaultView: ViewFromConfig<ServerSideEditViewProps> = null\n let CustomView: ViewFromConfig<ServerSideEditViewProps> = null\n let ErrorView: ViewFromConfig<AdminViewProps> = null\n let viewKey: string\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n const views =\n (collectionConfig && collectionConfig?.admin?.components?.views) ||\n (globalConfig && globalConfig?.admin?.components?.views)\n\n const livePreviewEnabled =\n (collectionConfig && collectionConfig?.admin?.livePreview) ||\n config?.admin?.livePreview?.collections?.includes(collectionConfig?.slug) ||\n (globalConfig && globalConfig?.admin?.livePreview) ||\n config?.admin?.livePreview?.globals?.includes(globalConfig?.slug)\n\n if (collectionConfig) {\n const [collectionEntity, collectionSlug, segment3, segment4, segment5, ...remainingSegments] =\n routeSegments\n\n if (!overrideDocPermissions && !docPermissions?.read?.permission) {\n notFound()\n } else {\n // `../:id`, or `../create`\n switch (routeSegments.length) {\n case 3: {\n switch (segment3) {\n case 'create': {\n if (\n !overrideDocPermissions &&\n 'create' in docPermissions &&\n docPermissions?.create?.permission\n ) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'default'),\n }\n DefaultView = {\n Component: DefaultEditView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n break\n }\n\n default: {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n 'collections',\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } =\n getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n } else {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'default'),\n }\n\n DefaultView = {\n Component: DefaultEditView,\n }\n }\n\n break\n }\n }\n break\n }\n\n // `../:id/api`, `../:id/preview`, `../:id/versions`, etc\n case 4: {\n switch (segment4) {\n case 'api': {\n if (collectionConfig?.admin?.hideAPIURL !== true) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'api'),\n }\n DefaultView = {\n Component: DefaultAPIView,\n }\n }\n break\n }\n\n case 'preview': {\n if (livePreviewEnabled) {\n DefaultView = {\n Component: DefaultLivePreviewView,\n }\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'livePreview'),\n }\n }\n break\n }\n\n case 'versions': {\n if (!overrideDocPermissions && docPermissions?.readVersions?.permission) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'versions'),\n }\n DefaultView = {\n Component: DefaultVersionsView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n break\n }\n\n default: {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n 'collections',\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } =\n getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n }\n\n break\n }\n }\n break\n }\n\n // `../:id/versions/:version`, etc\n default: {\n if (segment4 === 'versions') {\n if (!overrideDocPermissions && docPermissions?.readVersions?.permission) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'version'),\n }\n DefaultView = {\n Component: DefaultVersionView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n } else {\n const baseRoute = [\n adminRoute !== '/' && adminRoute,\n collectionEntity,\n collectionSlug,\n segment3,\n ]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment4, segment5, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute(\n {\n baseRoute,\n currentRoute,\n views,\n },\n )\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n }\n }\n\n break\n }\n }\n }\n }\n\n if (globalConfig) {\n const [globalEntity, globalSlug, segment3, ...remainingSegments] = routeSegments\n\n if (!overrideDocPermissions && !docPermissions?.read?.permission) {\n notFound()\n } else {\n switch (routeSegments.length) {\n case 2: {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'default'),\n }\n DefaultView = {\n Component: DefaultEditView,\n }\n break\n }\n\n case 3: {\n // `../:slug/api`, `../:slug/preview`, `../:slug/versions`, etc\n switch (segment3) {\n case 'api': {\n if (globalConfig?.admin?.hideAPIURL !== true) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'api'),\n }\n DefaultView = {\n Component: DefaultAPIView,\n }\n }\n break\n }\n\n case 'preview': {\n if (livePreviewEnabled) {\n DefaultView = {\n Component: DefaultLivePreviewView,\n }\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'livePreview'),\n }\n }\n break\n }\n\n case 'versions': {\n if (!overrideDocPermissions && docPermissions?.readVersions?.permission) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'versions'),\n }\n\n DefaultView = {\n Component: DefaultVersionsView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n break\n }\n\n default: {\n if (!overrideDocPermissions && docPermissions?.read?.permission) {\n const baseRoute = [adminRoute, globalEntity, globalSlug, segment3]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment3, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } =\n getCustomViewByRoute({\n baseRoute,\n currentRoute,\n views,\n })\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n } else {\n DefaultView = {\n Component: DefaultEditView,\n }\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n break\n }\n }\n break\n }\n\n default: {\n // `../:slug/versions/:version`, etc\n if (segment3 === 'versions') {\n if (!overrideDocPermissions && docPermissions?.readVersions?.permission) {\n CustomView = {\n payloadComponent: getCustomViewByKey(views, 'version'),\n }\n DefaultView = {\n Component: DefaultVersionView,\n }\n } else {\n ErrorView = {\n Component: UnauthorizedView,\n }\n }\n } else {\n const baseRoute = [adminRoute !== '/' && adminRoute, 'globals', globalSlug]\n .filter(Boolean)\n .join('/')\n\n const currentRoute = [baseRoute, segment3, ...remainingSegments]\n .filter(Boolean)\n .join('/')\n\n const { Component: CustomViewComponent, viewKey: customViewKey } = getCustomViewByRoute(\n {\n baseRoute,\n currentRoute,\n views,\n },\n )\n\n if (customViewKey) {\n viewKey = customViewKey\n\n CustomView = {\n payloadComponent: CustomViewComponent,\n }\n }\n }\n\n break\n }\n }\n }\n }\n\n return {\n CustomView,\n DefaultView,\n ErrorView,\n viewKey,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APIKey.d.ts","sourceRoot":"","sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAO3D,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,
|
|
1
|
+
{"version":3,"file":"APIKey.d.ts","sourceRoot":"","sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"names":[],"mappings":"AAeA,OAAO,KAAuC,MAAM,OAAO,CAAA;AAO3D,eAAO,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,CAyHvF,CAAA"}
|
|
@@ -23,8 +23,7 @@ export const APIKey = ({
|
|
|
23
23
|
config
|
|
24
24
|
} = useConfig();
|
|
25
25
|
const {
|
|
26
|
-
collectionSlug
|
|
27
|
-
docPermissions
|
|
26
|
+
collectionSlug
|
|
28
27
|
} = useDocumentInfo();
|
|
29
28
|
const apiKey = useFormFields(([fields]) => fields && fields[path] || null);
|
|
30
29
|
const apiKeyField = config.collections.find(collection => {
|
|
@@ -63,11 +62,6 @@ export const APIKey = ({
|
|
|
63
62
|
value: apiKeyValue
|
|
64
63
|
})]
|
|
65
64
|
}), [apiKeyLabel, apiKeyValue]);
|
|
66
|
-
const canUpdateAPIKey = useMemo(() => {
|
|
67
|
-
if (docPermissions && docPermissions?.fields?.apiKey) {
|
|
68
|
-
return docPermissions.fields.apiKey.update.permission;
|
|
69
|
-
}
|
|
70
|
-
}, [docPermissions]);
|
|
71
65
|
const fieldType = useField({
|
|
72
66
|
path: 'apiKey',
|
|
73
67
|
validate
|
|
@@ -122,7 +116,7 @@ export const APIKey = ({
|
|
|
122
116
|
type: "text",
|
|
123
117
|
value: value || ''
|
|
124
118
|
})]
|
|
125
|
-
}), !readOnly &&
|
|
119
|
+
}), !readOnly && /*#__PURE__*/_jsx(GenerateConfirmation, {
|
|
126
120
|
highlightField: highlightField,
|
|
127
121
|
setKey: () => setValue(uuidv4())
|
|
128
122
|
})]
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"APIKey.js","names":["getTranslation","CopyToClipboard","FieldLabel","GenerateConfirmation","useConfig","useDocumentInfo","useField","useFormFields","useTranslation","text","React","useEffect","useMemo","useState","v4","uuidv4","path","baseClass","fieldBaseClass","APIKey","enabled","readOnly","initialAPIKey","highlightedField","setHighlightedField","i18n","t","config","collectionSlug","
|
|
1
|
+
{"version":3,"file":"APIKey.js","names":["getTranslation","CopyToClipboard","FieldLabel","GenerateConfirmation","useConfig","useDocumentInfo","useField","useFormFields","useTranslation","text","React","useEffect","useMemo","useState","v4","uuidv4","path","baseClass","fieldBaseClass","APIKey","enabled","readOnly","initialAPIKey","highlightedField","setHighlightedField","i18n","t","config","collectionSlug","apiKey","fields","apiKeyField","collections","find","collection","slug","field","name","validate","val","type","data","maxLength","minLength","preferences","req","payload","siblingData","apiKeyValue","value","apiKeyLabel","label","APIKeyLabel","_jsxs","className","_jsx","fieldType","highlightField","setTimeout","setValue","Fragment","filter","Boolean","join","htmlFor","Label","Component","RenderedComponent","undefined","disabled","id","setKey"],"sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"sourcesContent":["'use client'\nimport type { PayloadRequest, TextFieldClient } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n CopyToClipboard,\n FieldLabel,\n GenerateConfirmation,\n useConfig,\n useDocumentInfo,\n useField,\n useFormFields,\n useTranslation,\n} from '@payloadcms/ui'\nimport { text } from 'payload/shared'\nimport React, { useEffect, useMemo, useState } from 'react'\nimport { v4 as uuidv4 } from 'uuid'\n\nconst path = 'apiKey'\nconst baseClass = 'api-key'\nconst fieldBaseClass = 'field-type'\n\nexport const APIKey: React.FC<{ readonly enabled: boolean; readonly readOnly?: boolean }> = ({\n enabled,\n readOnly,\n}) => {\n const [initialAPIKey] = useState(uuidv4())\n const [highlightedField, setHighlightedField] = useState(false)\n const { i18n, t } = useTranslation()\n const { config } = useConfig()\n const { collectionSlug } = useDocumentInfo()\n\n const apiKey = useFormFields(([fields]) => (fields && fields[path]) || null)\n\n const apiKeyField: TextFieldClient = config.collections\n .find((collection) => {\n return collection.slug === collectionSlug\n })\n ?.fields?.find((field) => 'name' in field && field.name === 'apiKey') as TextFieldClient\n\n const validate = (val) =>\n text(val, {\n name: 'apiKey',\n type: 'text',\n data: {},\n maxLength: 48,\n minLength: 24,\n preferences: { fields: {} },\n req: {\n payload: {\n config,\n },\n t,\n } as unknown as PayloadRequest,\n siblingData: {},\n })\n\n const apiKeyValue = apiKey?.value\n\n const apiKeyLabel = useMemo(() => {\n let label: Record<string, string> | string = 'API Key'\n\n if (apiKeyField?.label) {\n label = apiKeyField.label\n }\n\n return getTranslation(label, i18n)\n }, [apiKeyField, i18n])\n\n const APIKeyLabel = useMemo(\n () => (\n <div className={`${baseClass}__label`}>\n <span>{apiKeyLabel}</span>\n <CopyToClipboard value={apiKeyValue as string} />\n </div>\n ),\n [apiKeyLabel, apiKeyValue],\n )\n\n const fieldType = useField({\n path: 'apiKey',\n validate,\n })\n\n const highlightField = () => {\n if (highlightedField) {\n setHighlightedField(false)\n }\n setTimeout(() => {\n setHighlightedField(true)\n }, 1)\n }\n\n const { setValue, value } = fieldType\n\n useEffect(() => {\n if (!apiKeyValue && enabled) {\n setValue(initialAPIKey)\n }\n if (!enabled && apiKeyValue) {\n setValue(null)\n }\n }, [apiKeyValue, enabled, setValue, initialAPIKey])\n\n useEffect(() => {\n if (highlightedField) {\n setTimeout(() => {\n setHighlightedField(false)\n }, 10000)\n }\n }, [highlightedField])\n\n if (!enabled) {\n return null\n }\n\n return (\n <React.Fragment>\n <div className={[fieldBaseClass, 'api-key', 'read-only'].filter(Boolean).join(' ')}>\n <FieldLabel\n field={null}\n htmlFor={path}\n Label={{\n type: 'client',\n Component: null,\n RenderedComponent: APIKeyLabel,\n }}\n />\n <input\n aria-label={apiKeyLabel}\n className={highlightedField ? 'highlight' : undefined}\n disabled\n id=\"apiKey\"\n name=\"apiKey\"\n type=\"text\"\n value={(value as string) || ''}\n />\n </div>\n {!readOnly && (\n <GenerateConfirmation highlightField={highlightField} setKey={() => setValue(uuidv4())} />\n )}\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Edit/Default/Auth/index.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAoD,MAAM,OAAO,CAAA;AAGxE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Edit/Default/Auth/index.tsx"],"names":[],"mappings":"AAcA,OAAO,KAAoD,MAAM,OAAO,CAAA;AAGxE,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvC,OAAO,cAAc,CAAA;AAIrB,eAAO,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CA8MhC,CAAA"}
|
|
@@ -9,7 +9,7 @@ import { RenderEmailAndUsernameFields } from '../../../../elements/EmailAndUsern
|
|
|
9
9
|
import { APIKey } from './APIKey.js';
|
|
10
10
|
const baseClass = 'auth-fields';
|
|
11
11
|
export const Auth = props => {
|
|
12
|
-
const $ = _c(
|
|
12
|
+
const $ = _c(55);
|
|
13
13
|
const {
|
|
14
14
|
className,
|
|
15
15
|
collectionSlug,
|
|
@@ -64,6 +64,10 @@ export const Auth = props => {
|
|
|
64
64
|
t2 = false;
|
|
65
65
|
}
|
|
66
66
|
const hasPermissionToUnlock = t2;
|
|
67
|
+
const apiKeyReadOnly = readOnly || !docPermissions?.fields?.apiKey?.update?.permission;
|
|
68
|
+
const enableAPIKeyReadOnly = readOnly || !docPermissions?.fields?.enableAPIKey?.update?.permission;
|
|
69
|
+
const canReadApiKey = docPermissions?.fields?.apiKey?.read?.permission;
|
|
70
|
+
const canReadEnableAPIKey = docPermissions?.fields?.enableAPIKey?.read?.permission;
|
|
67
71
|
let t3;
|
|
68
72
|
if ($[0] !== setValidateBeforeSubmit || $[1] !== setSchemaPath || $[2] !== collectionSlug || $[3] !== dispatchFields || $[4] !== t) {
|
|
69
73
|
t3 = showPasswordFields => {
|
|
@@ -174,36 +178,39 @@ export const Auth = props => {
|
|
|
174
178
|
}
|
|
175
179
|
const t8 = t7.join(" ");
|
|
176
180
|
let t9;
|
|
177
|
-
if ($[20] !== disableLocalStrategy || $[21] !== docPermissions || $[22] !== loginWithUsername || $[23] !== operation || $[24] !== readOnly || $[25] !== showPasswordFields_0 || $[26] !== requirePassword || $[27] !== disabled || $[28] !== t || $[29] !== handleChangePassword || $[30] !== hasPermissionToUnlock || $[31] !== unlock_0 || $[32] !== useAPIKey || $[33] !==
|
|
181
|
+
if ($[20] !== disableLocalStrategy || $[21] !== docPermissions || $[22] !== loginWithUsername || $[23] !== operation || $[24] !== readOnly || $[25] !== showPasswordFields_0 || $[26] !== requirePassword || $[27] !== disabled || $[28] !== t || $[29] !== handleChangePassword || $[30] !== hasPermissionToUnlock || $[31] !== unlock_0 || $[32] !== useAPIKey || $[33] !== canReadEnableAPIKey || $[34] !== enableAPIKeyReadOnly || $[35] !== canReadApiKey || $[36] !== enableAPIKey || $[37] !== apiKeyReadOnly || $[38] !== verify || $[39] !== t8) {
|
|
178
182
|
let t10;
|
|
179
|
-
if ($[
|
|
183
|
+
if ($[41] !== useAPIKey || $[42] !== canReadEnableAPIKey || $[43] !== disabled || $[44] !== enableAPIKeyReadOnly || $[45] !== t || $[46] !== canReadApiKey || $[47] !== enableAPIKey || $[48] !== apiKeyReadOnly) {
|
|
180
184
|
t10 = useAPIKey && _jsxs("div", {
|
|
181
185
|
className: `${baseClass}__api-key`,
|
|
182
|
-
children: [_jsx(CheckboxField, {
|
|
186
|
+
children: [canReadEnableAPIKey && _jsx(CheckboxField, {
|
|
183
187
|
field: {
|
|
184
188
|
name: "enableAPIKey",
|
|
185
189
|
admin: {
|
|
186
190
|
disabled,
|
|
187
|
-
readOnly
|
|
191
|
+
readOnly: enableAPIKeyReadOnly
|
|
188
192
|
},
|
|
189
193
|
label: t("authentication:enableAPIKey")
|
|
190
194
|
}
|
|
191
|
-
}), _jsx(APIKey, {
|
|
195
|
+
}), canReadApiKey && _jsx(APIKey, {
|
|
192
196
|
enabled: !!enableAPIKey?.value,
|
|
193
|
-
readOnly
|
|
197
|
+
readOnly: apiKeyReadOnly
|
|
194
198
|
})]
|
|
195
199
|
});
|
|
196
|
-
$[
|
|
197
|
-
$[
|
|
198
|
-
$[
|
|
199
|
-
$[
|
|
200
|
-
$[
|
|
201
|
-
$[
|
|
200
|
+
$[41] = useAPIKey;
|
|
201
|
+
$[42] = canReadEnableAPIKey;
|
|
202
|
+
$[43] = disabled;
|
|
203
|
+
$[44] = enableAPIKeyReadOnly;
|
|
204
|
+
$[45] = t;
|
|
205
|
+
$[46] = canReadApiKey;
|
|
206
|
+
$[47] = enableAPIKey;
|
|
207
|
+
$[48] = apiKeyReadOnly;
|
|
208
|
+
$[49] = t10;
|
|
202
209
|
} else {
|
|
203
|
-
t10 = $[
|
|
210
|
+
t10 = $[49];
|
|
204
211
|
}
|
|
205
212
|
let t11;
|
|
206
|
-
if ($[
|
|
213
|
+
if ($[50] !== verify || $[51] !== disabled || $[52] !== readOnly || $[53] !== t) {
|
|
207
214
|
t11 = verify && _jsx(CheckboxField, {
|
|
208
215
|
field: {
|
|
209
216
|
name: "_verified",
|
|
@@ -214,13 +221,13 @@ export const Auth = props => {
|
|
|
214
221
|
label: t("authentication:verified")
|
|
215
222
|
}
|
|
216
223
|
});
|
|
217
|
-
$[
|
|
218
|
-
$[
|
|
219
|
-
$[
|
|
220
|
-
$[
|
|
221
|
-
$[
|
|
224
|
+
$[50] = verify;
|
|
225
|
+
$[51] = disabled;
|
|
226
|
+
$[52] = readOnly;
|
|
227
|
+
$[53] = t;
|
|
228
|
+
$[54] = t11;
|
|
222
229
|
} else {
|
|
223
|
-
t11 = $[
|
|
230
|
+
t11 = $[54];
|
|
224
231
|
}
|
|
225
232
|
t9 = _jsxs("div", {
|
|
226
233
|
className: t8,
|
|
@@ -284,12 +291,16 @@ export const Auth = props => {
|
|
|
284
291
|
$[30] = hasPermissionToUnlock;
|
|
285
292
|
$[31] = unlock_0;
|
|
286
293
|
$[32] = useAPIKey;
|
|
287
|
-
$[33] =
|
|
288
|
-
$[34] =
|
|
289
|
-
$[35] =
|
|
290
|
-
$[36] =
|
|
294
|
+
$[33] = canReadEnableAPIKey;
|
|
295
|
+
$[34] = enableAPIKeyReadOnly;
|
|
296
|
+
$[35] = canReadApiKey;
|
|
297
|
+
$[36] = enableAPIKey;
|
|
298
|
+
$[37] = apiKeyReadOnly;
|
|
299
|
+
$[38] = verify;
|
|
300
|
+
$[39] = t8;
|
|
301
|
+
$[40] = t9;
|
|
291
302
|
} else {
|
|
292
|
-
t9 = $[
|
|
303
|
+
t9 = $[40];
|
|
293
304
|
}
|
|
294
305
|
return t9;
|
|
295
306
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","Button","CheckboxField","ConfirmPasswordField","PasswordField","useAuth","useConfig","useDocumentInfo","useFormFields","useFormModified","useTranslation","React","useCallback","useEffect","useMemo","useState","toast","RenderEmailAndUsernameFields","APIKey","baseClass","Auth","props","$","className","collectionSlug","disableLocalStrategy","email","loginWithUsername","operation","readOnly","requirePassword","setSchemaPath","setValidateBeforeSubmit","useAPIKey","username","verify","permissions","changingPassword","setChangingPassword","enableAPIKey","_temp","forceOpenChangePassword","_temp2","dispatchFields","_temp3","modified","i18n","t","docPermissions","isInitializing","config","t0","routes","t1","serverURL","api","t2","bb0","collection","collections","unlock","undefined","permission","hasPermissionToUnlock","t3","showPasswordFields","type","errorMessage","path","valid","handleChangePassword","t4","language","url","response","fetch","body","JSON","stringify","credentials","headers","method","status","success","error","unlock_0","t5","t6","disabled","showPasswordFields_0","t7","filter","Boolean","t8","join","t9","t10","_jsxs","children","_jsx","field","name","admin","label","enabled","value","t11","Fragment","fields","autoComplete","_path","required","buttonStyle","onClick","size","id","fields_0","password","reducer"],"sources":["../../../../../src/views/Edit/Default/Auth/index.tsx"],"sourcesContent":["'use client'\n\nimport {\n Button,\n CheckboxField,\n ConfirmPasswordField,\n PasswordField,\n useAuth,\n useConfig,\n useDocumentInfo,\n useFormFields,\n useFormModified,\n useTranslation,\n} from '@payloadcms/ui'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport { RenderEmailAndUsernameFields } from '../../../../elements/EmailAndUsername/index.js'\nimport { APIKey } from './APIKey.js'\nimport './index.scss'\n\nconst baseClass = 'auth-fields'\n\nexport const Auth: React.FC<Props> = (props) => {\n const {\n className,\n collectionSlug,\n disableLocalStrategy,\n email,\n loginWithUsername,\n operation,\n readOnly,\n requirePassword,\n setSchemaPath,\n setValidateBeforeSubmit,\n useAPIKey,\n username,\n verify,\n } = props\n\n const { permissions } = useAuth()\n const [changingPassword, setChangingPassword] = useState(requirePassword)\n const enableAPIKey = useFormFields(([fields]) => (fields && fields?.enableAPIKey) || null)\n const forceOpenChangePassword = useFormFields(([fields]) => (fields && fields?.password) || null)\n const dispatchFields = useFormFields((reducer) => reducer[1])\n const modified = useFormModified()\n const { i18n, t } = useTranslation()\n const { docPermissions, isInitializing } = useDocumentInfo()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const hasPermissionToUnlock: boolean = useMemo(() => {\n const collection = permissions?.collections?.[collectionSlug]\n\n if (collection) {\n const unlock = 'unlock' in collection ? collection.unlock : undefined\n\n if (unlock) {\n // current types for permissions do not include auth permissions, this will be fixed in another branch soon, for now we need to ignore the types\n // @todo: fix types\n // @ts-expect-error\n return unlock.permission\n }\n }\n\n return false\n }, [permissions, collectionSlug])\n\n const handleChangePassword = useCallback(\n (showPasswordFields: boolean) => {\n if (showPasswordFields) {\n setValidateBeforeSubmit(true)\n setSchemaPath(`_${collectionSlug}.auth`)\n dispatchFields({\n type: 'UPDATE',\n errorMessage: t('validation:required'),\n path: 'password',\n valid: false,\n })\n dispatchFields({\n type: 'UPDATE',\n errorMessage: t('validation:required'),\n path: 'confirm-password',\n valid: false,\n })\n } else {\n setValidateBeforeSubmit(false)\n setSchemaPath(collectionSlug)\n dispatchFields({ type: 'REMOVE', path: 'password' })\n dispatchFields({ type: 'REMOVE', path: 'confirm-password' })\n }\n\n setChangingPassword(showPasswordFields)\n },\n [dispatchFields, t, collectionSlug, setSchemaPath, setValidateBeforeSubmit],\n )\n\n const unlock = useCallback(async () => {\n const url = `${serverURL}${api}/${collectionSlug}/unlock`\n const response = await fetch(url, {\n body:\n loginWithUsername && username ? JSON.stringify({ username }) : JSON.stringify({ email }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n if (response.status === 200) {\n toast.success(t('authentication:successfullyUnlocked'))\n } else {\n toast.error(t('authentication:failedToUnlock'))\n }\n }, [i18n, serverURL, api, collectionSlug, email, username, t, loginWithUsername])\n\n useEffect(() => {\n if (!modified) {\n setChangingPassword(false)\n }\n }, [modified])\n\n if (disableLocalStrategy && !useAPIKey) {\n return null\n }\n\n const disabled = readOnly || isInitializing\n\n const showPasswordFields = changingPassword || forceOpenChangePassword\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n {!disableLocalStrategy && (\n <React.Fragment>\n <RenderEmailAndUsernameFields\n loginWithUsername={loginWithUsername}\n operation={operation}\n permissions={docPermissions?.fields}\n readOnly={readOnly}\n />\n {(showPasswordFields || requirePassword) && (\n <div className={`${baseClass}__changing-password`}>\n <PasswordField\n autoComplete=\"new-password\"\n field={{\n name: 'password',\n _path: 'password',\n admin: {\n disabled,\n },\n label: t('authentication:newPassword'),\n required: true,\n }}\n />\n <ConfirmPasswordField disabled={readOnly} />\n </div>\n )}\n <div className={`${baseClass}__controls`}>\n {showPasswordFields && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n onClick={() => handleChangePassword(false)}\n size=\"medium\"\n >\n {t('general:cancel')}\n </Button>\n )}\n {!showPasswordFields && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n id=\"change-password\"\n onClick={() => handleChangePassword(true)}\n size=\"medium\"\n >\n {t('authentication:changePassword')}\n </Button>\n )}\n {operation === 'update' && hasPermissionToUnlock && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n onClick={() => void unlock()}\n size=\"medium\"\n >\n {t('authentication:forceUnlock')}\n </Button>\n )}\n </div>\n </React.Fragment>\n )}\n {useAPIKey && (\n <div className={`${baseClass}__api-key`}>\n <CheckboxField\n field={{\n name: 'enableAPIKey',\n admin: { disabled, readOnly },\n label: t('authentication:enableAPIKey'),\n }}\n />\n <APIKey enabled={!!enableAPIKey?.value} readOnly={readOnly} />\n </div>\n )}\n {verify && (\n <CheckboxField\n field={{\n name: '_verified',\n admin: { disabled, readOnly },\n label: t('authentication:verified'),\n }}\n />\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","Button","CheckboxField","ConfirmPasswordField","PasswordField","useAuth","useConfig","useDocumentInfo","useFormFields","useFormModified","useTranslation","React","useCallback","useEffect","useMemo","useState","toast","RenderEmailAndUsernameFields","APIKey","baseClass","Auth","props","$","className","collectionSlug","disableLocalStrategy","email","loginWithUsername","operation","readOnly","requirePassword","setSchemaPath","setValidateBeforeSubmit","useAPIKey","username","verify","permissions","changingPassword","setChangingPassword","enableAPIKey","_temp","forceOpenChangePassword","_temp2","dispatchFields","_temp3","modified","i18n","t","docPermissions","isInitializing","config","t0","routes","t1","serverURL","api","t2","bb0","collection","collections","unlock","undefined","permission","hasPermissionToUnlock","apiKeyReadOnly","fields","apiKey","update","enableAPIKeyReadOnly","canReadApiKey","read","canReadEnableAPIKey","t3","showPasswordFields","type","errorMessage","path","valid","handleChangePassword","t4","language","url","response","fetch","body","JSON","stringify","credentials","headers","method","status","success","error","unlock_0","t5","t6","disabled","showPasswordFields_0","t7","filter","Boolean","t8","join","t9","t10","_jsxs","children","_jsx","field","name","admin","label","enabled","value","t11","Fragment","autoComplete","_path","required","buttonStyle","onClick","size","id","fields_0","password","reducer"],"sources":["../../../../../src/views/Edit/Default/Auth/index.tsx"],"sourcesContent":["'use client'\n\nimport {\n Button,\n CheckboxField,\n ConfirmPasswordField,\n PasswordField,\n useAuth,\n useConfig,\n useDocumentInfo,\n useFormFields,\n useFormModified,\n useTranslation,\n} from '@payloadcms/ui'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport { RenderEmailAndUsernameFields } from '../../../../elements/EmailAndUsername/index.js'\nimport { APIKey } from './APIKey.js'\nimport './index.scss'\n\nconst baseClass = 'auth-fields'\n\nexport const Auth: React.FC<Props> = (props) => {\n const {\n className,\n collectionSlug,\n disableLocalStrategy,\n email,\n loginWithUsername,\n operation,\n readOnly,\n requirePassword,\n setSchemaPath,\n setValidateBeforeSubmit,\n useAPIKey,\n username,\n verify,\n } = props\n\n const { permissions } = useAuth()\n const [changingPassword, setChangingPassword] = useState(requirePassword)\n const enableAPIKey = useFormFields(([fields]) => (fields && fields?.enableAPIKey) || null)\n const forceOpenChangePassword = useFormFields(([fields]) => (fields && fields?.password) || null)\n const dispatchFields = useFormFields((reducer) => reducer[1])\n const modified = useFormModified()\n const { i18n, t } = useTranslation()\n const { docPermissions, isInitializing } = useDocumentInfo()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const hasPermissionToUnlock: boolean = useMemo(() => {\n const collection = permissions?.collections?.[collectionSlug]\n\n if (collection) {\n const unlock = 'unlock' in collection ? collection.unlock : undefined\n\n if (unlock) {\n // current types for permissions do not include auth permissions, this will be fixed in another branch soon, for now we need to ignore the types\n // @todo: fix types\n // @ts-expect-error\n return unlock.permission\n }\n }\n\n return false\n }, [permissions, collectionSlug])\n\n const apiKeyReadOnly = readOnly || !docPermissions?.fields?.apiKey?.update?.permission\n const enableAPIKeyReadOnly = readOnly || !docPermissions?.fields?.enableAPIKey?.update?.permission\n\n const canReadApiKey = docPermissions?.fields?.apiKey?.read?.permission\n const canReadEnableAPIKey = docPermissions?.fields?.enableAPIKey?.read?.permission\n\n const handleChangePassword = useCallback(\n (showPasswordFields: boolean) => {\n if (showPasswordFields) {\n setValidateBeforeSubmit(true)\n setSchemaPath(`_${collectionSlug}.auth`)\n dispatchFields({\n type: 'UPDATE',\n errorMessage: t('validation:required'),\n path: 'password',\n valid: false,\n })\n dispatchFields({\n type: 'UPDATE',\n errorMessage: t('validation:required'),\n path: 'confirm-password',\n valid: false,\n })\n } else {\n setValidateBeforeSubmit(false)\n setSchemaPath(collectionSlug)\n dispatchFields({ type: 'REMOVE', path: 'password' })\n dispatchFields({ type: 'REMOVE', path: 'confirm-password' })\n }\n\n setChangingPassword(showPasswordFields)\n },\n [dispatchFields, t, collectionSlug, setSchemaPath, setValidateBeforeSubmit],\n )\n\n const unlock = useCallback(async () => {\n const url = `${serverURL}${api}/${collectionSlug}/unlock`\n const response = await fetch(url, {\n body:\n loginWithUsername && username ? JSON.stringify({ username }) : JSON.stringify({ email }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n if (response.status === 200) {\n toast.success(t('authentication:successfullyUnlocked'))\n } else {\n toast.error(t('authentication:failedToUnlock'))\n }\n }, [i18n, serverURL, api, collectionSlug, email, username, t, loginWithUsername])\n\n useEffect(() => {\n if (!modified) {\n setChangingPassword(false)\n }\n }, [modified])\n\n if (disableLocalStrategy && !useAPIKey) {\n return null\n }\n\n const disabled = readOnly || isInitializing\n\n const showPasswordFields = changingPassword || forceOpenChangePassword\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n {!disableLocalStrategy && (\n <React.Fragment>\n <RenderEmailAndUsernameFields\n loginWithUsername={loginWithUsername}\n operation={operation}\n permissions={docPermissions?.fields}\n readOnly={readOnly}\n />\n {(showPasswordFields || requirePassword) && (\n <div className={`${baseClass}__changing-password`}>\n <PasswordField\n autoComplete=\"new-password\"\n field={{\n name: 'password',\n _path: 'password',\n admin: {\n disabled,\n },\n label: t('authentication:newPassword'),\n required: true,\n }}\n />\n <ConfirmPasswordField disabled={readOnly} />\n </div>\n )}\n <div className={`${baseClass}__controls`}>\n {showPasswordFields && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n onClick={() => handleChangePassword(false)}\n size=\"medium\"\n >\n {t('general:cancel')}\n </Button>\n )}\n {!showPasswordFields && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n id=\"change-password\"\n onClick={() => handleChangePassword(true)}\n size=\"medium\"\n >\n {t('authentication:changePassword')}\n </Button>\n )}\n {operation === 'update' && hasPermissionToUnlock && (\n <Button\n buttonStyle=\"secondary\"\n disabled={disabled}\n onClick={() => void unlock()}\n size=\"medium\"\n >\n {t('authentication:forceUnlock')}\n </Button>\n )}\n </div>\n </React.Fragment>\n )}\n {useAPIKey && (\n <div className={`${baseClass}__api-key`}>\n {canReadEnableAPIKey && (\n <CheckboxField\n field={{\n name: 'enableAPIKey',\n admin: { disabled, readOnly: enableAPIKeyReadOnly },\n label: t('authentication:enableAPIKey'),\n }}\n />\n )}\n {canReadApiKey && <APIKey enabled={!!enableAPIKey?.value} readOnly={apiKeyReadOnly} />}\n </div>\n )}\n {verify && (\n <CheckboxField\n field={{\n name: '_verified',\n admin: { disabled, readOnly },\n label: t('authentication:verified'),\n }}\n />\n )}\n </div>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,76 +1,78 @@
|
|
|
1
1
|
@import '../../../../scss/styles.scss';
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
flex-direction: column;
|
|
8
|
-
gap: var(--base);
|
|
9
|
-
|
|
10
|
-
&__controls {
|
|
11
|
-
display: flex;
|
|
12
|
-
align-items: center;
|
|
13
|
-
gap: calc(var(--base) / 2);
|
|
14
|
-
flex-wrap: wrap;
|
|
15
|
-
}
|
|
16
|
-
|
|
17
|
-
&__changing-password {
|
|
3
|
+
@layer payload-default {
|
|
4
|
+
.auth-fields {
|
|
5
|
+
padding: calc(var(--base) * 2);
|
|
6
|
+
background: var(--theme-elevation-50);
|
|
18
7
|
display: flex;
|
|
19
8
|
flex-direction: column;
|
|
20
9
|
gap: var(--base);
|
|
21
|
-
}
|
|
22
10
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
11
|
+
&__controls {
|
|
12
|
+
display: flex;
|
|
13
|
+
align-items: center;
|
|
14
|
+
gap: calc(var(--base) / 2);
|
|
15
|
+
flex-wrap: wrap;
|
|
16
|
+
}
|
|
26
17
|
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
18
|
+
&__changing-password {
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-direction: column;
|
|
21
|
+
gap: var(--base);
|
|
22
|
+
}
|
|
30
23
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
24
|
+
.btn {
|
|
25
|
+
margin: 0;
|
|
26
|
+
}
|
|
34
27
|
|
|
35
|
-
&
|
|
28
|
+
&__api-key-label {
|
|
29
|
+
position: relative;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
@include mid-break {
|
|
33
|
+
padding: var(--base);
|
|
36
34
|
gap: calc(var(--base) / 2);
|
|
35
|
+
|
|
36
|
+
&__changing-password {
|
|
37
|
+
gap: calc(var(--base) / 2);
|
|
38
|
+
}
|
|
37
39
|
}
|
|
38
40
|
}
|
|
39
|
-
}
|
|
40
41
|
|
|
41
|
-
.field-type.api-key {
|
|
42
|
-
|
|
42
|
+
.field-type.api-key {
|
|
43
|
+
margin-bottom: var(--base);
|
|
43
44
|
|
|
44
|
-
|
|
45
|
-
|
|
45
|
+
input {
|
|
46
|
+
@include formInput;
|
|
47
|
+
}
|
|
46
48
|
}
|
|
47
|
-
}
|
|
48
49
|
|
|
49
|
-
@keyframes highlight {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
50
|
+
@keyframes highlight {
|
|
51
|
+
0% {
|
|
52
|
+
background: var(--theme-success-250);
|
|
53
|
+
border: 1px solid var(--theme-success-500);
|
|
54
|
+
}
|
|
54
55
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
56
|
+
20% {
|
|
57
|
+
background: var(--theme-input-bg);
|
|
58
|
+
border: 1px solid var(--theme-elevation-250);
|
|
59
|
+
color: var(--theme-text);
|
|
60
|
+
}
|
|
60
61
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
62
|
+
80% {
|
|
63
|
+
background: var(--theme-input-bg);
|
|
64
|
+
border: 1px solid var(--theme-elevation-250);
|
|
65
|
+
color: var(--theme-text);
|
|
66
|
+
}
|
|
66
67
|
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
68
|
+
100% {
|
|
69
|
+
background: var(--theme-elevation-200);
|
|
70
|
+
border: 1px solid transparent;
|
|
71
|
+
color: var(--theme-elevation-400);
|
|
72
|
+
}
|
|
71
73
|
}
|
|
72
|
-
}
|
|
73
74
|
|
|
74
|
-
.highlight {
|
|
75
|
-
|
|
75
|
+
.highlight {
|
|
76
|
+
animation: highlight 10s;
|
|
77
|
+
}
|
|
76
78
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Edit/Default/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Edit/Default/index.tsx"],"names":[],"mappings":"AA2BA,OAAO,KAA6D,MAAM,OAAO,CAAA;AAMjF,OAAO,cAAc,CAAA;AASrB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EA4dnC,CAAA"}
|