@payloadcms/next 3.0.0-beta.3 → 3.0.0-beta.31
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 +2 -1
- package/dist/cjs/withPayload.cjs.map +1 -1
- 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 +7 -1
- package/dist/exports/utilities.d.ts.map +1 -1
- package/dist/exports/utilities.js +7 -1
- package/dist/exports/utilities.js.map +1 -1
- package/dist/{next-fileupload → fetchAPI-multipart}/fileFactory.d.ts +2 -2
- package/dist/fetchAPI-multipart/fileFactory.d.ts.map +1 -0
- package/dist/fetchAPI-multipart/fileFactory.js.map +1 -0
- package/dist/{next-fileupload → fetchAPI-multipart}/handlers.d.ts +2 -2
- package/dist/fetchAPI-multipart/handlers.d.ts.map +1 -0
- package/dist/fetchAPI-multipart/handlers.js.map +1 -0
- package/dist/{next-fileupload → fetchAPI-multipart}/index.d.ts +8 -8
- package/dist/fetchAPI-multipart/index.d.ts.map +1 -0
- package/dist/{next-fileupload → fetchAPI-multipart}/index.js +1 -1
- package/dist/fetchAPI-multipart/index.js.map +1 -0
- package/dist/fetchAPI-multipart/isEligibleRequest.d.ts.map +1 -0
- package/dist/{next-fileupload → fetchAPI-multipart}/isEligibleRequest.js +1 -1
- package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -0
- package/dist/fetchAPI-multipart/processMultipart.d.ts +8 -0
- package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -0
- package/dist/{next-fileupload → fetchAPI-multipart}/processMultipart.js +29 -6
- package/dist/fetchAPI-multipart/processMultipart.js.map +1 -0
- package/dist/fetchAPI-multipart/processNested.d.ts.map +1 -0
- package/dist/{next-fileupload → fetchAPI-multipart}/processNested.js +2 -1
- package/dist/fetchAPI-multipart/processNested.js.map +1 -0
- package/dist/fetchAPI-multipart/uploadTimer.d.ts.map +1 -0
- package/dist/fetchAPI-multipart/uploadTimer.js.map +1 -0
- package/dist/{next-fileupload → fetchAPI-multipart}/utilities.d.ts +4 -4
- package/dist/fetchAPI-multipart/utilities.d.ts.map +1 -0
- package/dist/{next-fileupload → fetchAPI-multipart}/utilities.js +4 -4
- package/dist/fetchAPI-multipart/utilities.js.map +1 -0
- package/dist/fetchAPI-stream-file/index.d.ts.map +1 -0
- package/dist/fetchAPI-stream-file/index.js.map +1 -0
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +23 -1
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/payload/payload-favicon-dark.png +0 -0
- package/dist/prod/payload/payload-favicon-light.png +0 -0
- package/dist/prod/styles.css +1 -1
- package/dist/routes/graphql/handler.d.ts.map +1 -1
- package/dist/routes/graphql/handler.js +22 -10
- package/dist/routes/graphql/handler.js.map +1 -1
- package/dist/routes/index.d.ts +1 -1
- package/dist/routes/index.d.ts.map +1 -1
- package/dist/routes/index.js +1 -1
- package/dist/routes/index.js.map +1 -1
- package/dist/routes/rest/auth/access.d.ts.map +1 -1
- package/dist/routes/rest/auth/access.js +5 -0
- package/dist/routes/rest/auth/access.js.map +1 -1
- package/dist/routes/rest/auth/forgotPassword.d.ts.map +1 -1
- package/dist/routes/rest/auth/forgotPassword.js +7 -2
- package/dist/routes/rest/auth/forgotPassword.js.map +1 -1
- package/dist/routes/rest/auth/init.d.ts.map +1 -1
- package/dist/routes/rest/auth/init.js +6 -0
- package/dist/routes/rest/auth/init.js.map +1 -1
- package/dist/routes/rest/auth/login.d.ts.map +1 -1
- package/dist/routes/rest/auth/login.js +8 -5
- 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 +12 -7
- package/dist/routes/rest/auth/logout.js.map +1 -1
- package/dist/routes/rest/auth/me.d.ts.map +1 -1
- package/dist/routes/rest/auth/me.js +5 -0
- package/dist/routes/rest/auth/me.js.map +1 -1
- package/dist/routes/rest/auth/refresh.d.ts.map +1 -1
- package/dist/routes/rest/auth/refresh.js +11 -7
- package/dist/routes/rest/auth/refresh.js.map +1 -1
- package/dist/routes/rest/auth/registerFirstUser.d.ts.map +1 -1
- package/dist/routes/rest/auth/registerFirstUser.js +8 -5
- package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
- package/dist/routes/rest/auth/resetPassword.d.ts.map +1 -1
- package/dist/routes/rest/auth/resetPassword.js +8 -5
- package/dist/routes/rest/auth/resetPassword.js.map +1 -1
- package/dist/routes/rest/auth/unlock.d.ts.map +1 -1
- package/dist/routes/rest/auth/unlock.js +7 -2
- package/dist/routes/rest/auth/unlock.js.map +1 -1
- package/dist/routes/rest/auth/verifyEmail.d.ts.map +1 -1
- package/dist/routes/rest/auth/verifyEmail.js +7 -2
- package/dist/routes/rest/auth/verifyEmail.js.map +1 -1
- package/dist/routes/rest/buildFormState.d.ts +3 -3
- package/dist/routes/rest/buildFormState.d.ts.map +1 -1
- package/dist/routes/rest/buildFormState.js +42 -7
- package/dist/routes/rest/buildFormState.js.map +1 -1
- package/dist/routes/rest/collections/count.d.ts +3 -0
- package/dist/routes/rest/collections/count.d.ts.map +1 -0
- package/dist/routes/rest/collections/count.js +15 -0
- package/dist/routes/rest/collections/count.js.map +1 -0
- package/dist/routes/rest/collections/create.d.ts.map +1 -1
- package/dist/routes/rest/collections/create.js +5 -0
- 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 +7 -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 +14 -1
- package/dist/routes/rest/collections/deleteByID.js.map +1 -1
- package/dist/routes/rest/collections/docAccess.d.ts.map +1 -1
- package/dist/routes/rest/collections/docAccess.js +5 -0
- package/dist/routes/rest/collections/docAccess.js.map +1 -1
- package/dist/routes/rest/collections/duplicate.d.ts.map +1 -1
- package/dist/routes/rest/collections/duplicate.js +12 -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 +5 -0
- 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 +12 -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 +12 -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 +5 -0
- package/dist/routes/rest/collections/findVersions.js.map +1 -1
- package/dist/routes/rest/collections/preview.d.ts.map +1 -1
- package/dist/routes/rest/collections/preview.js +11 -2
- package/dist/routes/rest/collections/preview.js.map +1 -1
- package/dist/routes/rest/collections/restoreVersion.d.ts.map +1 -1
- package/dist/routes/rest/collections/restoreVersion.js +12 -1
- 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 +7 -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 +12 -1
- package/dist/routes/rest/collections/updateByID.js.map +1 -1
- package/dist/routes/rest/files/checkFileAccess.d.ts +3 -3
- package/dist/routes/rest/files/checkFileAccess.d.ts.map +1 -1
- package/dist/routes/rest/files/checkFileAccess.js +1 -0
- package/dist/routes/rest/files/checkFileAccess.js.map +1 -1
- package/dist/routes/rest/files/getFile.d.ts +2 -2
- package/dist/routes/rest/files/getFile.d.ts.map +1 -1
- package/dist/routes/rest/files/getFile.js +19 -10
- package/dist/routes/rest/files/getFile.js.map +1 -1
- package/dist/routes/rest/files/getFileTypeFallback.d.ts +7 -0
- package/dist/routes/rest/files/getFileTypeFallback.d.ts.map +1 -0
- package/dist/routes/rest/files/getFileTypeFallback.js +21 -0
- package/dist/routes/rest/files/getFileTypeFallback.js.map +1 -0
- package/dist/routes/rest/globals/docAccess.d.ts.map +1 -1
- package/dist/routes/rest/globals/docAccess.js +5 -0
- package/dist/routes/rest/globals/docAccess.js.map +1 -1
- package/dist/routes/rest/globals/findOne.d.ts.map +1 -1
- package/dist/routes/rest/globals/findOne.js +5 -0
- 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 -0
- 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 +5 -0
- package/dist/routes/rest/globals/findVersions.js.map +1 -1
- package/dist/routes/rest/globals/preview.d.ts.map +1 -1
- package/dist/routes/rest/globals/preview.js +11 -2
- package/dist/routes/rest/globals/preview.js.map +1 -1
- package/dist/routes/rest/globals/restoreVersion.d.ts.map +1 -1
- package/dist/routes/rest/globals/restoreVersion.js +5 -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 -0
- package/dist/routes/rest/globals/update.js.map +1 -1
- package/dist/routes/rest/index.d.ts +1 -0
- package/dist/routes/rest/index.d.ts.map +1 -1
- package/dist/routes/rest/index.js +324 -213
- package/dist/routes/rest/index.js.map +1 -1
- package/dist/routes/rest/routeError.d.ts +5 -4
- package/dist/routes/rest/routeError.d.ts.map +1 -1
- package/dist/routes/rest/routeError.js +25 -11
- package/dist/routes/rest/routeError.js.map +1 -1
- package/dist/routes/rest/types.d.ts +7 -7
- package/dist/routes/rest/types.d.ts.map +1 -1
- package/dist/routes/rest/types.js.map +1 -1
- package/dist/routes/rest/utilities/sanitizeCollectionID.d.ts +9 -0
- package/dist/routes/rest/utilities/sanitizeCollectionID.d.ts.map +1 -0
- package/dist/routes/rest/utilities/sanitizeCollectionID.js +13 -0
- package/dist/routes/rest/utilities/sanitizeCollectionID.js.map +1 -0
- package/dist/scss/app.scss +2 -3
- package/dist/scss/vars.scss +0 -7
- package/dist/utilities/addDataAndFileToRequest.d.ts +11 -0
- package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -0
- package/dist/utilities/addDataAndFileToRequest.js +74 -0
- package/dist/utilities/addDataAndFileToRequest.js.map +1 -0
- package/dist/utilities/addLocalesToRequest.d.ts +20 -0
- package/dist/utilities/addLocalesToRequest.d.ts.map +1 -0
- package/dist/utilities/addLocalesToRequest.js +44 -0
- package/dist/utilities/addLocalesToRequest.js.map +1 -0
- package/dist/utilities/buildFieldSchemaMap/index.d.ts +2 -2
- package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/index.js.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js +3 -0
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
- package/dist/utilities/createPayloadRequest.js +15 -28
- package/dist/utilities/createPayloadRequest.js.map +1 -1
- package/dist/utilities/getDataAndFile.d.ts +2 -2
- package/dist/utilities/getDataAndFile.d.ts.map +1 -1
- package/dist/utilities/getDataAndFile.js +27 -43
- package/dist/utilities/getDataAndFile.js.map +1 -1
- package/dist/utilities/getNextRequestI18n.d.ts +1 -1
- package/dist/utilities/getNextRequestI18n.js +1 -1
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/getPayloadHMR.d.ts +2 -1
- package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
- package/dist/utilities/getPayloadHMR.js +22 -18
- package/dist/utilities/getPayloadHMR.js.map +1 -1
- package/dist/utilities/getRequestLanguage.d.ts +1 -1
- package/dist/utilities/getRequestLanguage.d.ts.map +1 -1
- package/dist/utilities/getRequestLanguage.js +3 -4
- package/dist/utilities/getRequestLanguage.js.map +1 -1
- package/dist/utilities/headersWithCors.d.ts +8 -0
- package/dist/utilities/headersWithCors.d.ts.map +1 -0
- package/dist/utilities/headersWithCors.js +17 -0
- package/dist/utilities/headersWithCors.js.map +1 -0
- package/dist/utilities/initPage/handleAdminPage.d.ts +13 -0
- package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -0
- package/dist/utilities/initPage/handleAdminPage.js +35 -0
- package/dist/utilities/initPage/handleAdminPage.js.map +1 -0
- package/dist/utilities/initPage/handleAuthRedirect.d.ts +9 -0
- package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -0
- package/dist/utilities/initPage/handleAuthRedirect.js +26 -0
- package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -0
- package/dist/utilities/initPage/index.d.ts +4 -0
- package/dist/utilities/initPage/index.d.ts.map +1 -0
- package/dist/utilities/{initPage.js → initPage/index.js} +22 -31
- package/dist/utilities/initPage/index.js.map +1 -0
- package/dist/utilities/initPage/shared.d.ts +4 -0
- package/dist/utilities/initPage/shared.d.ts.map +1 -0
- package/dist/utilities/initPage/shared.js +17 -0
- package/dist/utilities/initPage/shared.js.map +1 -0
- package/dist/utilities/initPage/types.d.ts +24 -0
- package/dist/utilities/initPage/types.d.ts.map +1 -0
- package/dist/utilities/initPage/types.js +3 -0
- package/dist/utilities/initPage/types.js.map +1 -0
- package/dist/utilities/meta.d.ts.map +1 -1
- package/dist/utilities/meta.js +24 -11
- package/dist/utilities/meta.js.map +1 -1
- package/dist/views/API/RenderJSON/index.js +4 -1
- package/dist/views/API/RenderJSON/index.js.map +1 -1
- package/dist/views/API/index.client.js +8 -8
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/API/meta.d.ts.map +1 -1
- package/dist/views/API/meta.js +1 -3
- package/dist/views/API/meta.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/Account/meta.d.ts.map +1 -1
- package/dist/views/Account/meta.js +1 -3
- package/dist/views/Account/meta.js.map +1 -1
- package/dist/views/CreateFirstUser/index.client.d.ts +3 -3
- package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js +48 -6
- 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 +9 -20
- package/dist/views/CreateFirstUser/index.js.map +1 -1
- package/dist/views/CreateFirstUser/index.scss +2 -12
- package/dist/views/CreateFirstUser/meta.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/meta.js +1 -3
- package/dist/views/CreateFirstUser/meta.js.map +1 -1
- package/dist/views/Dashboard/Default/index.d.ts +2 -1
- package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/index.js +14 -7
- 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 +3 -2
- package/dist/views/Dashboard/index.js.map +1 -1
- package/dist/views/Dashboard/meta.d.ts.map +1 -1
- package/dist/views/Dashboard/meta.js +1 -3
- package/dist/views/Dashboard/meta.js.map +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +4 -2
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.d.ts +1 -0
- package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.js +13 -6
- package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
- package/dist/views/Edit/Default/Auth/index.js +2 -1
- package/dist/views/Edit/Default/Auth/index.js.map +1 -1
- package/dist/views/Edit/Default/{SetStepNav → SetDocumentStepNav}/index.d.ts +1 -1
- package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +1 -0
- package/dist/views/Edit/Default/{SetStepNav → SetDocumentStepNav}/index.js +12 -5
- package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +1 -0
- package/dist/views/Edit/Default/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/index.js +6 -5
- package/dist/views/Edit/Default/index.js.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts +3 -0
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -0
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +58 -0
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -0
- package/dist/views/ForgotPassword/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/index.js +3 -39
- package/dist/views/ForgotPassword/index.js.map +1 -1
- package/dist/views/ForgotPassword/meta.d.ts.map +1 -1
- package/dist/views/ForgotPassword/meta.js +1 -3
- package/dist/views/ForgotPassword/meta.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +4 -3
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/LivePreview/Preview/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Preview/index.js +23 -0
- package/dist/views/LivePreview/Preview/index.js.map +1 -1
- package/dist/views/LivePreview/Toolbar/Controls/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Toolbar/Controls/index.js +6 -4
- package/dist/views/LivePreview/Toolbar/Controls/index.js.map +1 -1
- package/dist/views/LivePreview/index.client.js +2 -2
- package/dist/views/LivePreview/index.client.js.map +1 -1
- package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
- package/dist/views/Login/LoginForm/index.js +32 -2
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Login/index.d.ts.map +1 -1
- package/dist/views/Login/index.js +15 -8
- package/dist/views/Login/index.js.map +1 -1
- package/dist/views/Login/meta.d.ts.map +1 -1
- package/dist/views/Login/meta.js +1 -3
- package/dist/views/Login/meta.js.map +1 -1
- package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
- package/dist/views/Logout/LogoutClient.js +1 -2
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/meta.d.ts.map +1 -1
- package/dist/views/Logout/meta.js +1 -3
- package/dist/views/Logout/meta.js.map +1 -1
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +6 -4
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/NotFound/meta.d.ts.map +1 -1
- package/dist/views/NotFound/meta.js +1 -3
- package/dist/views/NotFound/meta.js.map +1 -1
- package/dist/views/ResetPassword/index.client.d.ts +7 -0
- package/dist/views/ResetPassword/index.client.d.ts.map +1 -0
- package/dist/views/ResetPassword/index.client.js +83 -0
- package/dist/views/ResetPassword/index.client.js.map +1 -0
- package/dist/views/ResetPassword/index.d.ts.map +1 -1
- package/dist/views/ResetPassword/index.js +6 -31
- package/dist/views/ResetPassword/index.js.map +1 -1
- package/dist/views/ResetPassword/index.scss +2 -12
- package/dist/views/ResetPassword/meta.d.ts.map +1 -1
- package/dist/views/ResetPassword/meta.js +1 -3
- package/dist/views/ResetPassword/meta.js.map +1 -1
- package/dist/views/Root/getViewFromConfig.d.ts +1 -1
- package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
- 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 +2 -2
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Unauthorized/meta.d.ts.map +1 -1
- package/dist/views/Unauthorized/meta.js +1 -3
- package/dist/views/Unauthorized/meta.js.map +1 -1
- package/dist/views/Verify/index.d.ts.map +1 -1
- package/dist/views/Verify/index.js +2 -2
- package/dist/views/Verify/index.js.map +1 -1
- package/dist/views/Verify/meta.d.ts.map +1 -1
- package/dist/views/Verify/meta.js +1 -3
- package/dist/views/Verify/meta.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +0 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/types.d.ts +2 -2
- package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -1
- package/dist/views/Version/Restore/index.d.ts.map +1 -1
- package/dist/views/Version/Restore/index.js +11 -8
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/Restore/index.scss +4 -2
- package/dist/views/Versions/index.js +2 -2
- package/dist/views/Versions/index.js.map +1 -1
- package/dist/withPayload.d.ts.map +1 -1
- package/dist/withPayload.js +2 -1
- package/dist/withPayload.js.map +1 -1
- package/package.json +34 -33
- package/dist/next-fileupload/fileFactory.d.ts.map +0 -1
- package/dist/next-fileupload/fileFactory.js.map +0 -1
- package/dist/next-fileupload/handlers.d.ts.map +0 -1
- package/dist/next-fileupload/handlers.js.map +0 -1
- package/dist/next-fileupload/index.d.ts.map +0 -1
- package/dist/next-fileupload/index.js.map +0 -1
- package/dist/next-fileupload/isEligibleRequest.d.ts.map +0 -1
- package/dist/next-fileupload/isEligibleRequest.js.map +0 -1
- package/dist/next-fileupload/processMultipart.d.ts +0 -8
- package/dist/next-fileupload/processMultipart.d.ts.map +0 -1
- package/dist/next-fileupload/processMultipart.js.map +0 -1
- package/dist/next-fileupload/processNested.d.ts.map +0 -1
- package/dist/next-fileupload/processNested.js.map +0 -1
- package/dist/next-fileupload/uploadTimer.d.ts.map +0 -1
- package/dist/next-fileupload/uploadTimer.js.map +0 -1
- package/dist/next-fileupload/utilities.d.ts.map +0 -1
- package/dist/next-fileupload/utilities.js.map +0 -1
- package/dist/next-stream-file/index.d.ts.map +0 -1
- package/dist/next-stream-file/index.js.map +0 -1
- package/dist/prod/payload/SuisseIntl-Bold.woff +0 -0
- package/dist/prod/payload/SuisseIntl-Bold.woff2 +0 -0
- package/dist/prod/payload/SuisseIntl-Medium.woff +0 -0
- package/dist/prod/payload/SuisseIntl-Medium.woff2 +0 -0
- package/dist/prod/payload/SuisseIntl-SemiBold.woff +0 -0
- package/dist/prod/payload/SuisseIntl-SemiBold.woff2 +0 -0
- package/dist/prod/payload/SuisseIntl.woff +0 -0
- package/dist/prod/payload/SuisseIntl.woff2 +0 -0
- package/dist/prod/payload/merriweather-v30-latin-900.woff +0 -0
- package/dist/prod/payload/merriweather-v30-latin-900.woff2 +0 -0
- package/dist/prod/payload/merriweather-v30-latin-900italic.woff +0 -0
- package/dist/prod/payload/merriweather-v30-latin-900italic.woff2 +0 -0
- package/dist/prod/payload/merriweather-v30-latin-italic.woff +0 -0
- package/dist/prod/payload/merriweather-v30-latin-italic.woff2 +0 -0
- package/dist/prod/payload/merriweather-v30-latin-regular.woff +0 -0
- package/dist/prod/payload/merriweather-v30-latin-regular.woff2 +0 -0
- package/dist/scss/fonts.scss +0 -75
- package/dist/utilities/initPage.d.ts +0 -12
- package/dist/utilities/initPage.d.ts.map +0 -1
- package/dist/utilities/initPage.js.map +0 -1
- package/dist/views/Edit/Default/SetStepNav/index.d.ts.map +0 -1
- package/dist/views/Edit/Default/SetStepNav/index.js.map +0 -1
- package/src/index.js +0 -1
- /package/dist/{next-fileupload → fetchAPI-multipart}/fileFactory.js +0 -0
- /package/dist/{next-fileupload → fetchAPI-multipart}/handlers.js +0 -0
- /package/dist/{next-fileupload → fetchAPI-multipart}/isEligibleRequest.d.ts +0 -0
- /package/dist/{next-fileupload → fetchAPI-multipart}/processNested.d.ts +0 -0
- /package/dist/{next-fileupload → fetchAPI-multipart}/uploadTimer.d.ts +0 -0
- /package/dist/{next-fileupload → fetchAPI-multipart}/uploadTimer.js +0 -0
- /package/dist/{next-stream-file → fetchAPI-stream-file}/index.d.ts +0 -0
- /package/dist/{next-stream-file → fetchAPI-stream-file}/index.js +0 -0
- /package/dist/prod/payload/{favicon.svg → payload-favicon.svg} +0 -0
|
@@ -12,8 +12,8 @@ import { v4 as uuidv4 } from 'uuid';
|
|
|
12
12
|
const path = 'apiKey';
|
|
13
13
|
const baseClass = 'api-key';
|
|
14
14
|
const fieldBaseClass = 'field-type';
|
|
15
|
-
export const APIKey = ({ readOnly })=>{
|
|
16
|
-
const [initialAPIKey
|
|
15
|
+
export const APIKey = ({ enabled, readOnly })=>{
|
|
16
|
+
const [initialAPIKey] = useState(uuidv4());
|
|
17
17
|
const [highlightedField, setHighlightedField] = useState(false);
|
|
18
18
|
const { t } = useTranslation();
|
|
19
19
|
const config = useConfig();
|
|
@@ -24,6 +24,9 @@ export const APIKey = ({ readOnly })=>{
|
|
|
24
24
|
data: {},
|
|
25
25
|
maxLength: 48,
|
|
26
26
|
minLength: 24,
|
|
27
|
+
preferences: {
|
|
28
|
+
fields: {}
|
|
29
|
+
},
|
|
27
30
|
req: {
|
|
28
31
|
payload: {
|
|
29
32
|
config
|
|
@@ -54,14 +57,15 @@ export const APIKey = ({ readOnly })=>{
|
|
|
54
57
|
};
|
|
55
58
|
const { setValue, value } = fieldType;
|
|
56
59
|
useEffect(()=>{
|
|
57
|
-
|
|
58
|
-
}, []);
|
|
59
|
-
useEffect(()=>{
|
|
60
|
-
if (!apiKeyValue) {
|
|
60
|
+
if (!apiKeyValue && enabled) {
|
|
61
61
|
setValue(initialAPIKey);
|
|
62
62
|
}
|
|
63
|
+
if (!enabled) {
|
|
64
|
+
setValue(null);
|
|
65
|
+
}
|
|
63
66
|
}, [
|
|
64
67
|
apiKeyValue,
|
|
68
|
+
enabled,
|
|
65
69
|
setValue,
|
|
66
70
|
initialAPIKey
|
|
67
71
|
]);
|
|
@@ -74,6 +78,9 @@ export const APIKey = ({ readOnly })=>{
|
|
|
74
78
|
}, [
|
|
75
79
|
highlightedField
|
|
76
80
|
]);
|
|
81
|
+
if (!enabled) {
|
|
82
|
+
return null;
|
|
83
|
+
}
|
|
77
84
|
return /*#__PURE__*/ React.createElement(React.Fragment, null, /*#__PURE__*/ React.createElement("div", {
|
|
78
85
|
className: [
|
|
79
86
|
fieldBaseClass,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"sourcesContent":["'use client'\nimport type {
|
|
1
|
+
{"version":3,"sources":["../../../../../src/views/Edit/Default/Auth/APIKey.tsx"],"sourcesContent":["'use client'\nimport type { PayloadRequestWithData } from 'payload/types'\n\nimport { CopyToClipboard } from '@payloadcms/ui/elements/CopyToClipboard'\nimport { GenerateConfirmation } from '@payloadcms/ui/elements/GenerateConfirmation'\nimport { FieldLabel } from '@payloadcms/ui/forms/FieldLabel'\nimport { useFormFields } from '@payloadcms/ui/forms/Form'\nimport { useField } from '@payloadcms/ui/forms/useField'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { text } from 'payload/fields/validations'\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<{ enabled: boolean; readOnly?: boolean }> = ({\n enabled,\n readOnly,\n}) => {\n const [initialAPIKey] = useState(uuidv4())\n const [highlightedField, setHighlightedField] = useState(false)\n const { t } = useTranslation()\n const config = useConfig()\n\n const apiKey = useFormFields(([fields]) => fields[path])\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 PayloadRequestWithData,\n siblingData: {},\n })\n\n const apiKeyValue = apiKey?.value\n\n const APIKeyLabel = useMemo(\n () => (\n <div className={`${baseClass}__label`}>\n <span>API Key</span>\n <CopyToClipboard value={apiKeyValue as string} />\n </div>\n ),\n [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) {\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 CustomLabel={APIKeyLabel} htmlFor={path} />\n <input\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"],"names":["CopyToClipboard","GenerateConfirmation","FieldLabel","useFormFields","useField","useConfig","useTranslation","text","React","useEffect","useMemo","useState","v4","uuidv4","path","baseClass","fieldBaseClass","APIKey","enabled","readOnly","initialAPIKey","highlightedField","setHighlightedField","t","config","apiKey","fields","validate","val","name","type","data","maxLength","minLength","preferences","req","payload","siblingData","apiKeyValue","value","APIKeyLabel","div","className","span","fieldType","highlightField","setTimeout","setValue","Fragment","filter","Boolean","join","CustomLabel","htmlFor","input","undefined","disabled","id","setKey"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAGA,SAASA,eAAe,QAAQ,0CAAyC;AACzE,SAASC,oBAAoB,QAAQ,+CAA8C;AACnF,SAASC,UAAU,QAAQ,kCAAiC;AAC5D,SAASC,aAAa,QAAQ,4BAA2B;AACzD,SAASC,QAAQ,QAAQ,gCAA+B;AACxD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,IAAI,QAAQ,6BAA4B;AACjD,OAAOC,SAASC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,QAAO;AAC3D,SAASC,MAAMC,MAAM,QAAQ,OAAM;AAEnC,MAAMC,OAAO;AACb,MAAMC,YAAY;AAClB,MAAMC,iBAAiB;AAEvB,OAAO,MAAMC,SAA6D,CAAC,EACzEC,OAAO,EACPC,QAAQ,EACT;IACC,MAAM,CAACC,cAAc,GAAGT,SAASE;IACjC,MAAM,CAACQ,kBAAkBC,oBAAoB,GAAGX,SAAS;IACzD,MAAM,EAAEY,CAAC,EAAE,GAAGjB;IACd,MAAMkB,SAASnB;IAEf,MAAMoB,SAAStB,cAAc,CAAC,CAACuB,OAAO,GAAKA,MAAM,CAACZ,KAAK;IAEvD,MAAMa,WAAW,CAACC,MAChBrB,KAAKqB,KAAK;YACRC,MAAM;YACNC,MAAM;YACNC,MAAM,CAAC;YACPC,WAAW;YACXC,WAAW;YACXC,aAAa;gBAAER,QAAQ,CAAC;YAAE;YAC1BS,KAAK;gBACHC,SAAS;oBACPZ;gBACF;gBACAD;YACF;YACAc,aAAa,CAAC;QAChB;IAEF,MAAMC,cAAcb,QAAQc;IAE5B,MAAMC,cAAc9B,QAClB,kBACE,oBAAC+B;YAAIC,WAAW,CAAC,EAAE3B,UAAU,OAAO,CAAC;yBACnC,oBAAC4B,cAAK,0BACN,oBAAC3C;YAAgBuC,OAAOD;aAG5B;QAACA;KAAY;IAGf,MAAMM,YAAYxC,SAAS;QACzBU,MAAM;QACNa;IACF;IAEA,MAAMkB,iBAAiB;QACrB,IAAIxB,kBAAkB;YACpBC,oBAAoB;QACtB;QACAwB,WAAW;YACTxB,oBAAoB;QACtB,GAAG;IACL;IAEA,MAAM,EAAEyB,QAAQ,EAAER,KAAK,EAAE,GAAGK;IAE5BnC,UAAU;QACR,IAAI,CAAC6B,eAAepB,SAAS;YAC3B6B,SAAS3B;QACX;QACA,IAAI,CAACF,SAAS;YACZ6B,SAAS;QACX;IACF,GAAG;QAACT;QAAapB;QAAS6B;QAAU3B;KAAc;IAElDX,UAAU;QACR,IAAIY,kBAAkB;YACpByB,WAAW;gBACTxB,oBAAoB;YACtB,GAAG;QACL;IACF,GAAG;QAACD;KAAiB;IAErB,IAAI,CAACH,SAAS;QACZ,OAAO;IACT;IAEA,qBACE,oBAACV,MAAMwC,QAAQ,sBACb,oBAACP;QAAIC,WAAW;YAAC1B;YAAgB;YAAW;SAAY,CAACiC,MAAM,CAACC,SAASC,IAAI,CAAC;qBAC5E,oBAACjD;QAAWkD,aAAaZ;QAAaa,SAASvC;sBAC/C,oBAACwC;QACCZ,WAAWrB,mBAAmB,cAAckC;QAC5CC,UAAAA;QACAC,IAAG;QACH5B,MAAK;QACLC,MAAK;QACLS,OAAO,AAACA,SAAoB;SAG/B,CAACpB,0BACA,oBAAClB;QAAqB4C,gBAAgBA;QAAgBa,QAAQ,IAAMX,SAASlC;;AAIrF,EAAC"}
|
|
@@ -117,7 +117,8 @@ export const Auth = (props)=>{
|
|
|
117
117
|
label: t('authentication:enableAPIKey'),
|
|
118
118
|
name: "enableAPIKey",
|
|
119
119
|
readOnly: readOnly
|
|
120
|
-
}),
|
|
120
|
+
}), /*#__PURE__*/ React.createElement(APIKey, {
|
|
121
|
+
enabled: !!enableAPIKey?.value,
|
|
121
122
|
readOnly: readOnly
|
|
122
123
|
})), verify && /*#__PURE__*/ React.createElement(Checkbox, {
|
|
123
124
|
label: t('authentication:verified'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../../src/views/Edit/Default/Auth/index.tsx"],"sourcesContent":["'use client'\n\nimport { Button } from '@payloadcms/ui/elements/Button'\nimport { Checkbox } from '@payloadcms/ui/fields/Checkbox'\nimport { ConfirmPassword } from '@payloadcms/ui/fields/ConfirmPassword'\nimport { Email } from '@payloadcms/ui/fields/Email'\nimport { Password } from '@payloadcms/ui/fields/Password'\nimport { useFormFields, useFormModified } from '@payloadcms/ui/forms/Form'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport React, { useCallback, useEffect, useState } from 'react'\nimport { toast } from 'react-toastify'\n\nimport type { Props } from './types.js'\n\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 operation,\n readOnly,\n requirePassword,\n useAPIKey,\n verify,\n } = props\n\n const [changingPassword, setChangingPassword] = useState(requirePassword)\n const enableAPIKey = useFormFields(([fields]) => fields.enableAPIKey)\n const dispatchFields = useFormFields((reducer) => reducer[1])\n const modified = useFormModified()\n const { i18n, t } = useTranslation()\n\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n\n const handleChangePassword = useCallback(\n (state: boolean) => {\n if (!state) {\n dispatchFields({ type: 'REMOVE', path: 'password' })\n dispatchFields({ type: 'REMOVE', path: 'confirm-password' })\n }\n\n setChangingPassword(state)\n },\n [dispatchFields],\n )\n\n const unlock = useCallback(async () => {\n const url = `${serverURL}${api}/${collectionSlug}/unlock`\n const response = await fetch(url, {\n body: JSON.stringify({\n email,\n }),\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'), { autoClose: 3000 })\n } else {\n toast.error(t('authentication:failedToUnlock'))\n }\n }, [i18n, serverURL, api, collectionSlug, email, t])\n\n useEffect(() => {\n if (!modified) {\n setChangingPassword(false)\n }\n }, [modified])\n\n if (disableLocalStrategy && !useAPIKey) {\n return null\n }\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n {!disableLocalStrategy && (\n <React.Fragment>\n <Email\n autoComplete=\"email\"\n label={t('general:email')}\n name=\"email\"\n readOnly={readOnly}\n required\n />\n {(changingPassword || requirePassword) && (\n <div className={`${baseClass}__changing-password`}>\n <Password\n autoComplete=\"off\"\n disabled={readOnly}\n label={t('authentication:newPassword')}\n name=\"password\"\n required\n />\n <ConfirmPassword disabled={readOnly} />\n </div>\n )}\n\n <div className={`${baseClass}__controls`}>\n {changingPassword && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={readOnly}\n onClick={() => handleChangePassword(false)}\n size=\"small\"\n >\n {t('general:cancel')}\n </Button>\n )}\n {!changingPassword && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={readOnly}\n id=\"change-password\"\n onClick={() => handleChangePassword(true)}\n size=\"small\"\n >\n {t('authentication:changePassword')}\n </Button>\n )}\n {operation === 'update' && (\n <Button\n buttonStyle=\"secondary\"\n disabled={readOnly}\n onClick={() => unlock()}\n size=\"small\"\n >\n {t('authentication:forceUnlock')}\n </Button>\n )}\n </div>\n </React.Fragment>\n )}\n {useAPIKey && (\n <div className={`${baseClass}__api-key`}>\n <Checkbox\n label={t('authentication:enableAPIKey')}\n name=\"enableAPIKey\"\n readOnly={readOnly}\n />\n {enableAPIKey?.value
|
|
1
|
+
{"version":3,"sources":["../../../../../src/views/Edit/Default/Auth/index.tsx"],"sourcesContent":["'use client'\n\nimport { Button } from '@payloadcms/ui/elements/Button'\nimport { Checkbox } from '@payloadcms/ui/fields/Checkbox'\nimport { ConfirmPassword } from '@payloadcms/ui/fields/ConfirmPassword'\nimport { Email } from '@payloadcms/ui/fields/Email'\nimport { Password } from '@payloadcms/ui/fields/Password'\nimport { useFormFields, useFormModified } from '@payloadcms/ui/forms/Form'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport React, { useCallback, useEffect, useState } from 'react'\nimport { toast } from 'react-toastify'\n\nimport type { Props } from './types.js'\n\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 operation,\n readOnly,\n requirePassword,\n useAPIKey,\n verify,\n } = props\n\n const [changingPassword, setChangingPassword] = useState(requirePassword)\n const enableAPIKey = useFormFields(([fields]) => fields.enableAPIKey)\n const dispatchFields = useFormFields((reducer) => reducer[1])\n const modified = useFormModified()\n const { i18n, t } = useTranslation()\n\n const {\n routes: { api },\n serverURL,\n } = useConfig()\n\n const handleChangePassword = useCallback(\n (state: boolean) => {\n if (!state) {\n dispatchFields({ type: 'REMOVE', path: 'password' })\n dispatchFields({ type: 'REMOVE', path: 'confirm-password' })\n }\n\n setChangingPassword(state)\n },\n [dispatchFields],\n )\n\n const unlock = useCallback(async () => {\n const url = `${serverURL}${api}/${collectionSlug}/unlock`\n const response = await fetch(url, {\n body: JSON.stringify({\n email,\n }),\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'), { autoClose: 3000 })\n } else {\n toast.error(t('authentication:failedToUnlock'))\n }\n }, [i18n, serverURL, api, collectionSlug, email, t])\n\n useEffect(() => {\n if (!modified) {\n setChangingPassword(false)\n }\n }, [modified])\n\n if (disableLocalStrategy && !useAPIKey) {\n return null\n }\n\n return (\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n {!disableLocalStrategy && (\n <React.Fragment>\n <Email\n autoComplete=\"email\"\n label={t('general:email')}\n name=\"email\"\n readOnly={readOnly}\n required\n />\n {(changingPassword || requirePassword) && (\n <div className={`${baseClass}__changing-password`}>\n <Password\n autoComplete=\"off\"\n disabled={readOnly}\n label={t('authentication:newPassword')}\n name=\"password\"\n required\n />\n <ConfirmPassword disabled={readOnly} />\n </div>\n )}\n\n <div className={`${baseClass}__controls`}>\n {changingPassword && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={readOnly}\n onClick={() => handleChangePassword(false)}\n size=\"small\"\n >\n {t('general:cancel')}\n </Button>\n )}\n {!changingPassword && !requirePassword && (\n <Button\n buttonStyle=\"secondary\"\n disabled={readOnly}\n id=\"change-password\"\n onClick={() => handleChangePassword(true)}\n size=\"small\"\n >\n {t('authentication:changePassword')}\n </Button>\n )}\n {operation === 'update' && (\n <Button\n buttonStyle=\"secondary\"\n disabled={readOnly}\n onClick={() => unlock()}\n size=\"small\"\n >\n {t('authentication:forceUnlock')}\n </Button>\n )}\n </div>\n </React.Fragment>\n )}\n {useAPIKey && (\n <div className={`${baseClass}__api-key`}>\n <Checkbox\n label={t('authentication:enableAPIKey')}\n name=\"enableAPIKey\"\n readOnly={readOnly}\n />\n <APIKey enabled={!!enableAPIKey?.value} readOnly={readOnly} />\n </div>\n )}\n {verify && (\n <Checkbox label={t('authentication:verified')} name=\"_verified\" readOnly={readOnly} />\n )}\n </div>\n )\n}\n"],"names":["Button","Checkbox","ConfirmPassword","Email","Password","useFormFields","useFormModified","useConfig","useTranslation","React","useCallback","useEffect","useState","toast","APIKey","baseClass","Auth","props","className","collectionSlug","disableLocalStrategy","email","operation","readOnly","requirePassword","useAPIKey","verify","changingPassword","setChangingPassword","enableAPIKey","fields","dispatchFields","reducer","modified","i18n","t","routes","api","serverURL","handleChangePassword","state","type","path","unlock","url","response","fetch","body","JSON","stringify","credentials","headers","language","method","status","success","autoClose","error","div","filter","Boolean","join","Fragment","autoComplete","label","name","required","disabled","buttonStyle","onClick","size","id","enabled","value"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="react" resolution-mode="require"/>
|
|
2
2
|
import type { SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload/types';
|
|
3
|
-
export declare const
|
|
3
|
+
export declare const SetDocumentStepNav: React.FC<{
|
|
4
4
|
collectionSlug?: SanitizedCollectionConfig['slug'];
|
|
5
5
|
globalLabel?: SanitizedGlobalConfig['label'];
|
|
6
6
|
globalSlug?: SanitizedGlobalConfig['slug'];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/views/Edit/Default/SetDocumentStepNav/index.tsx"],"names":[],"mappings":";AAEA,OAAO,KAAK,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAA;AAWrF,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC;IACxC,cAAc,CAAC,EAAE,yBAAyB,CAAC,MAAM,CAAC,CAAA;IAClD,WAAW,CAAC,EAAE,qBAAqB,CAAC,OAAO,CAAC,CAAA;IAC5C,UAAU,CAAC,EAAE,qBAAqB,CAAC,MAAM,CAAC,CAAA;IAC1C,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IACpB,WAAW,CAAC,EAAE,yBAAyB,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAA;IAC3D,UAAU,CAAC,EAAE,yBAAyB,CAAC,OAAO,CAAC,CAAC,YAAY,CAAC,CAAA;IAC7D,IAAI,CAAC,EAAE,MAAM,CAAA;CACd,CAsEA,CAAA"}
|
|
@@ -4,12 +4,18 @@ import { useStepNav } from '@payloadcms/ui/elements/StepNav';
|
|
|
4
4
|
import { useConfig } from '@payloadcms/ui/providers/Config';
|
|
5
5
|
import { useDocumentInfo } from '@payloadcms/ui/providers/DocumentInfo';
|
|
6
6
|
import { useEditDepth } from '@payloadcms/ui/providers/EditDepth';
|
|
7
|
+
import { useEntityVisibility } from '@payloadcms/ui/providers/EntityVisibility';
|
|
7
8
|
import { useTranslation } from '@payloadcms/ui/providers/Translation';
|
|
8
9
|
import { useEffect } from 'react';
|
|
9
|
-
export const
|
|
10
|
+
export const SetDocumentStepNav = (props)=>{
|
|
10
11
|
const { id, collectionSlug, globalSlug, pluralLabel, useAsTitle } = props;
|
|
11
12
|
const view = props?.view || undefined;
|
|
12
13
|
const { isEditing, title } = useDocumentInfo();
|
|
14
|
+
const { isEntityVisible } = useEntityVisibility();
|
|
15
|
+
const isVisible = isEntityVisible({
|
|
16
|
+
collectionSlug,
|
|
17
|
+
globalSlug
|
|
18
|
+
});
|
|
13
19
|
const { setStepNav } = useStepNav();
|
|
14
20
|
const { i18n, t } = useTranslation();
|
|
15
21
|
const { routes: { admin } } = useConfig();
|
|
@@ -19,12 +25,12 @@ export const SetStepNav = (props)=>{
|
|
|
19
25
|
if (collectionSlug) {
|
|
20
26
|
nav.push({
|
|
21
27
|
label: getTranslation(pluralLabel, i18n),
|
|
22
|
-
url: `${admin}/collections/${collectionSlug}`
|
|
28
|
+
url: isVisible ? `${admin}/collections/${collectionSlug}` : undefined
|
|
23
29
|
});
|
|
24
30
|
if (isEditing) {
|
|
25
31
|
nav.push({
|
|
26
32
|
label: useAsTitle && useAsTitle !== 'id' && title || `${id}`,
|
|
27
|
-
url: `${admin}/collections/${collectionSlug}/${id}`
|
|
33
|
+
url: isVisible ? `${admin}/collections/${collectionSlug}/${id}` : undefined
|
|
28
34
|
});
|
|
29
35
|
} else {
|
|
30
36
|
nav.push({
|
|
@@ -34,7 +40,7 @@ export const SetStepNav = (props)=>{
|
|
|
34
40
|
} else if (globalSlug) {
|
|
35
41
|
nav.push({
|
|
36
42
|
label: title,
|
|
37
|
-
url: `${admin}/globals/${globalSlug}`
|
|
43
|
+
url: isVisible ? `${admin}/globals/${globalSlug}` : undefined
|
|
38
44
|
});
|
|
39
45
|
}
|
|
40
46
|
if (view) {
|
|
@@ -56,7 +62,8 @@ export const SetStepNav = (props)=>{
|
|
|
56
62
|
collectionSlug,
|
|
57
63
|
globalSlug,
|
|
58
64
|
view,
|
|
59
|
-
drawerDepth
|
|
65
|
+
drawerDepth,
|
|
66
|
+
isVisible
|
|
60
67
|
]);
|
|
61
68
|
return null;
|
|
62
69
|
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../../src/views/Edit/Default/SetDocumentStepNav/index.tsx"],"sourcesContent":["'use client'\nimport type { StepNavItem } from '@payloadcms/ui/elements/StepNav'\nimport type { SanitizedCollectionConfig, SanitizedGlobalConfig } from 'payload/types'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport { useStepNav } from '@payloadcms/ui/elements/StepNav'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useDocumentInfo } from '@payloadcms/ui/providers/DocumentInfo'\nimport { useEditDepth } from '@payloadcms/ui/providers/EditDepth'\nimport { useEntityVisibility } from '@payloadcms/ui/providers/EntityVisibility'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { useEffect } from 'react'\n\nexport const SetDocumentStepNav: React.FC<{\n collectionSlug?: SanitizedCollectionConfig['slug']\n globalLabel?: SanitizedGlobalConfig['label']\n globalSlug?: SanitizedGlobalConfig['slug']\n id?: number | string\n pluralLabel?: SanitizedCollectionConfig['labels']['plural']\n useAsTitle?: SanitizedCollectionConfig['admin']['useAsTitle']\n view?: string\n}> = (props) => {\n const { id, collectionSlug, globalSlug, pluralLabel, useAsTitle } = props\n\n const view: string | undefined = props?.view || undefined\n\n const { isEditing, title } = useDocumentInfo()\n const { isEntityVisible } = useEntityVisibility()\n const isVisible = isEntityVisible({ collectionSlug, globalSlug })\n\n const { setStepNav } = useStepNav()\n\n const { i18n, t } = useTranslation()\n\n const {\n routes: { admin },\n } = useConfig()\n\n const drawerDepth = useEditDepth()\n\n useEffect(() => {\n const nav: StepNavItem[] = []\n\n if (collectionSlug) {\n nav.push({\n label: getTranslation(pluralLabel, i18n),\n url: isVisible ? `${admin}/collections/${collectionSlug}` : undefined,\n })\n\n if (isEditing) {\n nav.push({\n label: (useAsTitle && useAsTitle !== 'id' && title) || `${id}`,\n url: isVisible ? `${admin}/collections/${collectionSlug}/${id}` : undefined,\n })\n } else {\n nav.push({\n label: t('general:createNew'),\n })\n }\n } else if (globalSlug) {\n nav.push({\n label: title,\n url: isVisible ? `${admin}/globals/${globalSlug}` : undefined,\n })\n }\n\n if (view) {\n nav.push({\n label: view,\n })\n }\n\n if (drawerDepth <= 1) setStepNav(nav)\n }, [\n setStepNav,\n isEditing,\n pluralLabel,\n id,\n useAsTitle,\n admin,\n t,\n i18n,\n title,\n collectionSlug,\n globalSlug,\n view,\n drawerDepth,\n isVisible,\n ])\n\n return null\n}\n"],"names":["getTranslation","useStepNav","useConfig","useDocumentInfo","useEditDepth","useEntityVisibility","useTranslation","useEffect","SetDocumentStepNav","props","id","collectionSlug","globalSlug","pluralLabel","useAsTitle","view","undefined","isEditing","title","isEntityVisible","isVisible","setStepNav","i18n","t","routes","admin","drawerDepth","nav","push","label","url"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAIA,SAASA,cAAc,QAAQ,2BAA0B;AACzD,SAASC,UAAU,QAAQ,kCAAiC;AAC5D,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,YAAY,QAAQ,qCAAoC;AACjE,SAASC,mBAAmB,QAAQ,4CAA2C;AAC/E,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,SAAS,QAAQ,QAAO;AAEjC,OAAO,MAAMC,qBAQR,CAACC;IACJ,MAAM,EAAEC,EAAE,EAAEC,cAAc,EAAEC,UAAU,EAAEC,WAAW,EAAEC,UAAU,EAAE,GAAGL;IAEpE,MAAMM,OAA2BN,OAAOM,QAAQC;IAEhD,MAAM,EAAEC,SAAS,EAAEC,KAAK,EAAE,GAAGf;IAC7B,MAAM,EAAEgB,eAAe,EAAE,GAAGd;IAC5B,MAAMe,YAAYD,gBAAgB;QAAER;QAAgBC;IAAW;IAE/D,MAAM,EAAES,UAAU,EAAE,GAAGpB;IAEvB,MAAM,EAAEqB,IAAI,EAAEC,CAAC,EAAE,GAAGjB;IAEpB,MAAM,EACJkB,QAAQ,EAAEC,KAAK,EAAE,EAClB,GAAGvB;IAEJ,MAAMwB,cAActB;IAEpBG,UAAU;QACR,MAAMoB,MAAqB,EAAE;QAE7B,IAAIhB,gBAAgB;YAClBgB,IAAIC,IAAI,CAAC;gBACPC,OAAO7B,eAAea,aAAaS;gBACnCQ,KAAKV,YAAY,CAAC,EAAEK,MAAM,aAAa,EAAEd,eAAe,CAAC,GAAGK;YAC9D;YAEA,IAAIC,WAAW;gBACbU,IAAIC,IAAI,CAAC;oBACPC,OAAO,AAACf,cAAcA,eAAe,QAAQI,SAAU,CAAC,EAAER,GAAG,CAAC;oBAC9DoB,KAAKV,YAAY,CAAC,EAAEK,MAAM,aAAa,EAAEd,eAAe,CAAC,EAAED,GAAG,CAAC,GAAGM;gBACpE;YACF,OAAO;gBACLW,IAAIC,IAAI,CAAC;oBACPC,OAAON,EAAE;gBACX;YACF;QACF,OAAO,IAAIX,YAAY;YACrBe,IAAIC,IAAI,CAAC;gBACPC,OAAOX;gBACPY,KAAKV,YAAY,CAAC,EAAEK,MAAM,SAAS,EAAEb,WAAW,CAAC,GAAGI;YACtD;QACF;QAEA,IAAID,MAAM;YACRY,IAAIC,IAAI,CAAC;gBACPC,OAAOd;YACT;QACF;QAEA,IAAIW,eAAe,GAAGL,WAAWM;IACnC,GAAG;QACDN;QACAJ;QACAJ;QACAH;QACAI;QACAW;QACAF;QACAD;QACAJ;QACAP;QACAC;QACAG;QACAW;QACAN;KACD;IAED,OAAO;AACT,EAAC"}
|
|
@@ -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":"AAoBA,OAAO,KAAgC,MAAM,OAAO,CAAA;AAMpD,OAAO,cAAc,CAAA;AAOrB,eAAO,MAAM,eAAe,EAAE,KAAK,CAAC,EA4OnC,CAAA"}
|
|
@@ -12,15 +12,15 @@ import { useDocumentInfo } from '@payloadcms/ui/providers/DocumentInfo';
|
|
|
12
12
|
import { useEditDepth } from '@payloadcms/ui/providers/EditDepth';
|
|
13
13
|
import { useFormQueryParams } from '@payloadcms/ui/providers/FormQueryParams';
|
|
14
14
|
import { OperationProvider } from '@payloadcms/ui/providers/Operation';
|
|
15
|
+
import { useTranslation } from '@payloadcms/ui/providers/Translation';
|
|
15
16
|
import { getFormState } from '@payloadcms/ui/utilities/getFormState';
|
|
16
17
|
import { useRouter } from 'next/navigation.js';
|
|
17
18
|
import { useSearchParams } from 'next/navigation.js';
|
|
18
19
|
import React, { Fragment, useCallback } from 'react';
|
|
19
20
|
import { LeaveWithoutSaving } from '../../../elements/LeaveWithoutSaving/index.js';
|
|
20
|
-
// import { getTranslation } from '@payloadcms/translations'
|
|
21
21
|
import { Auth } from './Auth/index.js';
|
|
22
|
+
import { SetDocumentStepNav } from './SetDocumentStepNav/index.js';
|
|
22
23
|
import { SetDocumentTitle } from './SetDocumentTitle/index.js';
|
|
23
|
-
import { SetStepNav } from './SetStepNav/index.js';
|
|
24
24
|
const baseClass = 'collection-edit';
|
|
25
25
|
// This component receives props only on _pages_
|
|
26
26
|
// When rendered within a drawer, props are empty
|
|
@@ -35,6 +35,7 @@ export const DefaultEditView = ()=>{
|
|
|
35
35
|
const params = useSearchParams();
|
|
36
36
|
const depth = useEditDepth();
|
|
37
37
|
const { reportUpdate } = useDocumentEvents();
|
|
38
|
+
const { i18n } = useTranslation();
|
|
38
39
|
const { admin: { user: userSlug }, collections, globals, routes: { admin: adminRoute, api: apiRoute }, serverURL } = config;
|
|
39
40
|
const locale = params.get('locale');
|
|
40
41
|
const collectionConfig = collectionSlug && collections.find((collection)=>collection.slug === collectionSlug);
|
|
@@ -44,7 +45,7 @@ export const DefaultEditView = ()=>{
|
|
|
44
45
|
collectionSlug: collectionConfig?.slug,
|
|
45
46
|
globalSlug: globalConfig?.slug
|
|
46
47
|
});
|
|
47
|
-
const operation = id ? '
|
|
48
|
+
const operation = collectionSlug && !id ? 'create' : 'update';
|
|
48
49
|
const auth = collectionConfig ? collectionConfig.auth : undefined;
|
|
49
50
|
const upload = collectionConfig ? collectionConfig.upload : undefined;
|
|
50
51
|
const preventLeaveWithoutSaving = (!(collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) || !(globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)) && !disableLeaveWithoutSaving;
|
|
@@ -145,9 +146,9 @@ export const DefaultEditView = ()=>{
|
|
|
145
146
|
action: operation,
|
|
146
147
|
// formIsLoading={isLoading}
|
|
147
148
|
// loadingSuffix={getTranslation(collectionConfig.labels.singular, i18n)}
|
|
148
|
-
name: `collection-edit--${typeof collectionConfig?.labels?.singular === 'string' ? collectionConfig.labels.singular : 'document'}`,
|
|
149
|
+
name: `collection-edit--${typeof collectionConfig?.labels?.singular === 'string' ? collectionConfig.labels.singular : i18n.t('general:document')}`,
|
|
149
150
|
type: "withoutNav"
|
|
150
|
-
}), BeforeDocument, preventLeaveWithoutSaving && /*#__PURE__*/ React.createElement(LeaveWithoutSaving, null), /*#__PURE__*/ React.createElement(
|
|
151
|
+
}), BeforeDocument, preventLeaveWithoutSaving && /*#__PURE__*/ React.createElement(LeaveWithoutSaving, null), /*#__PURE__*/ React.createElement(SetDocumentStepNav, {
|
|
151
152
|
collectionSlug: collectionConfig?.slug,
|
|
152
153
|
globalSlug: globalConfig?.slug,
|
|
153
154
|
id: id,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/Edit/Default/index.tsx"],"sourcesContent":["'use client'\nimport type { FormProps } from '@payloadcms/ui/forms/Form'\n\nimport { DocumentControls } from '@payloadcms/ui/elements/DocumentControls'\nimport { DocumentFields } from '@payloadcms/ui/elements/DocumentFields'\nimport { FormLoadingOverlayToggle } from '@payloadcms/ui/elements/Loading'\nimport { Upload } from '@payloadcms/ui/elements/Upload'\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { useAuth } from '@payloadcms/ui/providers/Auth'\nimport { useComponentMap } from '@payloadcms/ui/providers/ComponentMap'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useDocumentEvents } from '@payloadcms/ui/providers/DocumentEvents'\nimport { useDocumentInfo } from '@payloadcms/ui/providers/DocumentInfo'\nimport { useEditDepth } from '@payloadcms/ui/providers/EditDepth'\nimport { useFormQueryParams } from '@payloadcms/ui/providers/FormQueryParams'\nimport { OperationProvider } from '@payloadcms/ui/providers/Operation'\nimport { getFormState } from '@payloadcms/ui/utilities/getFormState'\nimport { useRouter } from 'next/navigation.js'\nimport { useSearchParams } from 'next/navigation.js'\nimport React, { Fragment, useCallback } from 'react'\n\nimport { LeaveWithoutSaving } from '../../../elements/LeaveWithoutSaving/index.js'\n// import { getTranslation } from '@payloadcms/translations'\nimport { Auth } from './Auth/index.js'\nimport { SetDocumentTitle } from './SetDocumentTitle/index.js'\nimport { SetStepNav } from './SetStepNav/index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\nexport const DefaultEditView: React.FC = () => {\n const {\n id,\n AfterDocument,\n AfterFields,\n BeforeDocument,\n BeforeFields,\n action,\n apiURL,\n collectionSlug,\n disableActions,\n disableLeaveWithoutSaving,\n docPermissions,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n globalSlug,\n hasSavePermission,\n initialData: data,\n initialState,\n isEditing,\n onSave: onSaveFromContext,\n } = useDocumentInfo()\n\n const { refreshCookieAsync, user } = useAuth()\n const config = useConfig()\n const router = useRouter()\n const { dispatchFormQueryParams } = useFormQueryParams()\n const { getFieldMap } = useComponentMap()\n const params = useSearchParams()\n const depth = useEditDepth()\n const { reportUpdate } = useDocumentEvents()\n\n const {\n admin: { user: userSlug },\n collections,\n globals,\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n } = config\n\n const locale = params.get('locale')\n\n const collectionConfig =\n collectionSlug && collections.find((collection) => collection.slug === collectionSlug)\n\n const globalConfig = globalSlug && globals.find((global) => global.slug === globalSlug)\n\n const entitySlug = collectionConfig?.slug || globalConfig?.slug\n\n const fieldMap = getFieldMap({\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n })\n\n const operation = id ? 'update' : 'create'\n\n const auth = collectionConfig ? collectionConfig.auth : undefined\n const upload = collectionConfig ? collectionConfig.upload : undefined\n\n const preventLeaveWithoutSaving =\n (!(collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n !(globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)) &&\n !disableLeaveWithoutSaving\n\n const classes = [baseClass, id && `${baseClass}--is-editing`].filter(Boolean).join(' ')\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n id,\n entitySlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n // If we're editing the doc of the logged-in user,\n // Refresh the cookie to get new permissions\n if (user && collectionSlug === userSlug && id === user.id) {\n void refreshCookieAsync()\n }\n\n void getVersions()\n void getDocPermissions()\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: id ? 'update' : 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = `${adminRoute}/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`\n router.push(redirectRoute)\n } else {\n dispatchFormQueryParams({\n type: 'SET',\n params: {\n uploadEdits: null,\n },\n })\n }\n },\n [\n onSaveFromContext,\n userSlug,\n reportUpdate,\n id,\n entitySlug,\n user,\n depth,\n collectionSlug,\n getVersions,\n getDocPermissions,\n isEditing,\n refreshCookieAsync,\n adminRoute,\n locale,\n router,\n dispatchFormQueryParams,\n ],\n )\n\n const onChange: FormProps['onChange'][0] = useCallback(\n async ({ formState: prevFormState }) => {\n const docPreferences = await getDocPreferences()\n\n return getFormState({\n apiRoute,\n body: {\n id,\n collectionSlug,\n docPreferences,\n formState: prevFormState,\n globalSlug,\n operation,\n schemaPath: entitySlug,\n },\n serverURL,\n })\n },\n [serverURL, apiRoute, id, operation, entitySlug, collectionSlug, globalSlug, getDocPreferences],\n )\n\n return (\n <main className={classes}>\n <OperationProvider operation={operation}>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disableValidationOnSubmit\n disabled={!hasSavePermission}\n initialState={initialState}\n method={id ? 'PATCH' : 'POST'}\n onChange={[onChange]}\n onSuccess={onSave}\n >\n <FormLoadingOverlayToggle\n action={operation}\n // formIsLoading={isLoading}\n // loadingSuffix={getTranslation(collectionConfig.labels.singular, i18n)}\n name={`collection-edit--${\n typeof collectionConfig?.labels?.singular === 'string'\n ? collectionConfig.labels.singular\n : 'document'\n }`}\n type=\"withoutNav\"\n />\n {BeforeDocument}\n {preventLeaveWithoutSaving && <LeaveWithoutSaving />}\n <SetStepNav\n collectionSlug={collectionConfig?.slug}\n globalSlug={globalConfig?.slug}\n id={id}\n pluralLabel={collectionConfig?.labels?.plural}\n useAsTitle={collectionConfig?.admin?.useAsTitle}\n />\n <SetDocumentTitle\n collectionConfig={collectionConfig}\n config={config}\n fallback={depth <= 1 ? id?.toString() : undefined}\n globalConfig={globalConfig}\n />\n <DocumentControls\n apiURL={apiURL}\n data={data}\n disableActions={disableActions}\n hasSavePermission={hasSavePermission}\n id={id}\n isEditing={Boolean(id)}\n permissions={docPermissions}\n slug={collectionConfig?.slug || globalConfig?.slug}\n />\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={\n BeforeFields || (\n <Fragment>\n {auth && (\n <Auth\n className={`${baseClass}__auth`}\n collectionSlug={collectionConfig.slug}\n disableLocalStrategy={collectionConfig.auth?.disableLocalStrategy}\n email={data?.email}\n operation={operation}\n readOnly={!hasSavePermission}\n requirePassword={!id}\n useAPIKey={auth.useAPIKey}\n verify={auth.verify}\n />\n )}\n {upload && (\n <React.Fragment>\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={upload}\n />\n </React.Fragment>\n )}\n </Fragment>\n )\n }\n docPermissions={docPermissions}\n fieldMap={fieldMap}\n readOnly={!hasSavePermission}\n schemaPath={entitySlug}\n />\n {AfterDocument}\n </Form>\n </OperationProvider>\n </main>\n )\n}\n"],"names":["DocumentControls","DocumentFields","FormLoadingOverlayToggle","Upload","Form","useAuth","useComponentMap","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","useFormQueryParams","OperationProvider","getFormState","useRouter","useSearchParams","React","Fragment","useCallback","LeaveWithoutSaving","Auth","SetDocumentTitle","SetStepNav","baseClass","DefaultEditView","id","AfterDocument","AfterFields","BeforeDocument","BeforeFields","action","apiURL","collectionSlug","disableActions","disableLeaveWithoutSaving","docPermissions","getDocPermissions","getDocPreferences","getVersions","globalSlug","hasSavePermission","initialData","data","initialState","isEditing","onSave","onSaveFromContext","refreshCookieAsync","user","config","router","dispatchFormQueryParams","getFieldMap","params","depth","reportUpdate","admin","userSlug","collections","globals","routes","adminRoute","api","apiRoute","serverURL","locale","get","collectionConfig","find","collection","slug","globalConfig","global","entitySlug","fieldMap","operation","auth","undefined","upload","preventLeaveWithoutSaving","versions","drafts","autosave","classes","filter","Boolean","join","json","updatedAt","result","Date","toISOString","redirectRoute","doc","push","type","uploadEdits","onChange","formState","prevFormState","docPreferences","body","schemaPath","main","className","disableValidationOnSubmit","disabled","method","onSuccess","name","labels","singular","pluralLabel","plural","useAsTitle","fallback","toString","permissions","disableLocalStrategy","email","readOnly","requirePassword","useAPIKey","verify","uploadConfig"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/Edit/Default/index.tsx"],"sourcesContent":["'use client'\nimport type { FormProps } from '@payloadcms/ui/forms/Form'\n\nimport { DocumentControls } from '@payloadcms/ui/elements/DocumentControls'\nimport { DocumentFields } from '@payloadcms/ui/elements/DocumentFields'\nimport { FormLoadingOverlayToggle } from '@payloadcms/ui/elements/Loading'\nimport { Upload } from '@payloadcms/ui/elements/Upload'\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { useAuth } from '@payloadcms/ui/providers/Auth'\nimport { useComponentMap } from '@payloadcms/ui/providers/ComponentMap'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useDocumentEvents } from '@payloadcms/ui/providers/DocumentEvents'\nimport { useDocumentInfo } from '@payloadcms/ui/providers/DocumentInfo'\nimport { useEditDepth } from '@payloadcms/ui/providers/EditDepth'\nimport { useFormQueryParams } from '@payloadcms/ui/providers/FormQueryParams'\nimport { OperationProvider } from '@payloadcms/ui/providers/Operation'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { getFormState } from '@payloadcms/ui/utilities/getFormState'\nimport { useRouter } from 'next/navigation.js'\nimport { useSearchParams } from 'next/navigation.js'\nimport React, { Fragment, useCallback } from 'react'\n\nimport { LeaveWithoutSaving } from '../../../elements/LeaveWithoutSaving/index.js'\nimport { Auth } from './Auth/index.js'\nimport { SetDocumentStepNav } from './SetDocumentStepNav/index.js'\nimport { SetDocumentTitle } from './SetDocumentTitle/index.js'\nimport './index.scss'\n\nconst baseClass = 'collection-edit'\n\n// This component receives props only on _pages_\n// When rendered within a drawer, props are empty\n// This is solely to support custom edit views which get server-rendered\nexport const DefaultEditView: React.FC = () => {\n const {\n id,\n AfterDocument,\n AfterFields,\n BeforeDocument,\n BeforeFields,\n action,\n apiURL,\n collectionSlug,\n disableActions,\n disableLeaveWithoutSaving,\n docPermissions,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n globalSlug,\n hasSavePermission,\n initialData: data,\n initialState,\n isEditing,\n onSave: onSaveFromContext,\n } = useDocumentInfo()\n\n const { refreshCookieAsync, user } = useAuth()\n const config = useConfig()\n const router = useRouter()\n const { dispatchFormQueryParams } = useFormQueryParams()\n const { getFieldMap } = useComponentMap()\n const params = useSearchParams()\n const depth = useEditDepth()\n const { reportUpdate } = useDocumentEvents()\n\n const { i18n } = useTranslation()\n\n const {\n admin: { user: userSlug },\n collections,\n globals,\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n } = config\n\n const locale = params.get('locale')\n\n const collectionConfig =\n collectionSlug && collections.find((collection) => collection.slug === collectionSlug)\n\n const globalConfig = globalSlug && globals.find((global) => global.slug === globalSlug)\n\n const entitySlug = collectionConfig?.slug || globalConfig?.slug\n\n const fieldMap = getFieldMap({\n collectionSlug: collectionConfig?.slug,\n globalSlug: globalConfig?.slug,\n })\n\n const operation = collectionSlug && !id ? 'create' : 'update'\n\n const auth = collectionConfig ? collectionConfig.auth : undefined\n const upload = collectionConfig ? collectionConfig.upload : undefined\n\n const preventLeaveWithoutSaving =\n (!(collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n !(globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave)) &&\n !disableLeaveWithoutSaving\n\n const classes = [baseClass, id && `${baseClass}--is-editing`].filter(Boolean).join(' ')\n\n const onSave = useCallback(\n (json) => {\n reportUpdate({\n id,\n entitySlug,\n updatedAt: json?.result?.updatedAt || new Date().toISOString(),\n })\n\n // If we're editing the doc of the logged-in user,\n // Refresh the cookie to get new permissions\n if (user && collectionSlug === userSlug && id === user.id) {\n void refreshCookieAsync()\n }\n\n void getVersions()\n void getDocPermissions()\n\n if (typeof onSaveFromContext === 'function') {\n void onSaveFromContext({\n ...json,\n operation: id ? 'update' : 'create',\n })\n }\n\n if (!isEditing && depth < 2) {\n // Redirect to the same locale if it's been set\n const redirectRoute = `${adminRoute}/collections/${collectionSlug}/${json?.doc?.id}${locale ? `?locale=${locale}` : ''}`\n router.push(redirectRoute)\n } else {\n dispatchFormQueryParams({\n type: 'SET',\n params: {\n uploadEdits: null,\n },\n })\n }\n },\n [\n onSaveFromContext,\n userSlug,\n reportUpdate,\n id,\n entitySlug,\n user,\n depth,\n collectionSlug,\n getVersions,\n getDocPermissions,\n isEditing,\n refreshCookieAsync,\n adminRoute,\n locale,\n router,\n dispatchFormQueryParams,\n ],\n )\n\n const onChange: FormProps['onChange'][0] = useCallback(\n async ({ formState: prevFormState }) => {\n const docPreferences = await getDocPreferences()\n\n return getFormState({\n apiRoute,\n body: {\n id,\n collectionSlug,\n docPreferences,\n formState: prevFormState,\n globalSlug,\n operation,\n schemaPath: entitySlug,\n },\n serverURL,\n })\n },\n [serverURL, apiRoute, id, operation, entitySlug, collectionSlug, globalSlug, getDocPreferences],\n )\n\n return (\n <main className={classes}>\n <OperationProvider operation={operation}>\n <Form\n action={action}\n className={`${baseClass}__form`}\n disableValidationOnSubmit\n disabled={!hasSavePermission}\n initialState={initialState}\n method={id ? 'PATCH' : 'POST'}\n onChange={[onChange]}\n onSuccess={onSave}\n >\n <FormLoadingOverlayToggle\n action={operation}\n // formIsLoading={isLoading}\n // loadingSuffix={getTranslation(collectionConfig.labels.singular, i18n)}\n name={`collection-edit--${\n typeof collectionConfig?.labels?.singular === 'string'\n ? collectionConfig.labels.singular\n : i18n.t('general:document')\n }`}\n type=\"withoutNav\"\n />\n {BeforeDocument}\n {preventLeaveWithoutSaving && <LeaveWithoutSaving />}\n <SetDocumentStepNav\n collectionSlug={collectionConfig?.slug}\n globalSlug={globalConfig?.slug}\n id={id}\n pluralLabel={collectionConfig?.labels?.plural}\n useAsTitle={collectionConfig?.admin?.useAsTitle}\n />\n <SetDocumentTitle\n collectionConfig={collectionConfig}\n config={config}\n fallback={depth <= 1 ? id?.toString() : undefined}\n globalConfig={globalConfig}\n />\n <DocumentControls\n apiURL={apiURL}\n data={data}\n disableActions={disableActions}\n hasSavePermission={hasSavePermission}\n id={id}\n isEditing={Boolean(id)}\n permissions={docPermissions}\n slug={collectionConfig?.slug || globalConfig?.slug}\n />\n <DocumentFields\n AfterFields={AfterFields}\n BeforeFields={\n BeforeFields || (\n <Fragment>\n {auth && (\n <Auth\n className={`${baseClass}__auth`}\n collectionSlug={collectionConfig.slug}\n disableLocalStrategy={collectionConfig.auth?.disableLocalStrategy}\n email={data?.email}\n operation={operation}\n readOnly={!hasSavePermission}\n requirePassword={!id}\n useAPIKey={auth.useAPIKey}\n verify={auth.verify}\n />\n )}\n {upload && (\n <React.Fragment>\n <Upload\n collectionSlug={collectionConfig.slug}\n initialState={initialState}\n uploadConfig={upload}\n />\n </React.Fragment>\n )}\n </Fragment>\n )\n }\n docPermissions={docPermissions}\n fieldMap={fieldMap}\n readOnly={!hasSavePermission}\n schemaPath={entitySlug}\n />\n {AfterDocument}\n </Form>\n </OperationProvider>\n </main>\n )\n}\n"],"names":["DocumentControls","DocumentFields","FormLoadingOverlayToggle","Upload","Form","useAuth","useComponentMap","useConfig","useDocumentEvents","useDocumentInfo","useEditDepth","useFormQueryParams","OperationProvider","useTranslation","getFormState","useRouter","useSearchParams","React","Fragment","useCallback","LeaveWithoutSaving","Auth","SetDocumentStepNav","SetDocumentTitle","baseClass","DefaultEditView","id","AfterDocument","AfterFields","BeforeDocument","BeforeFields","action","apiURL","collectionSlug","disableActions","disableLeaveWithoutSaving","docPermissions","getDocPermissions","getDocPreferences","getVersions","globalSlug","hasSavePermission","initialData","data","initialState","isEditing","onSave","onSaveFromContext","refreshCookieAsync","user","config","router","dispatchFormQueryParams","getFieldMap","params","depth","reportUpdate","i18n","admin","userSlug","collections","globals","routes","adminRoute","api","apiRoute","serverURL","locale","get","collectionConfig","find","collection","slug","globalConfig","global","entitySlug","fieldMap","operation","auth","undefined","upload","preventLeaveWithoutSaving","versions","drafts","autosave","classes","filter","Boolean","join","json","updatedAt","result","Date","toISOString","redirectRoute","doc","push","type","uploadEdits","onChange","formState","prevFormState","docPreferences","body","schemaPath","main","className","disableValidationOnSubmit","disabled","method","onSuccess","name","labels","singular","t","pluralLabel","plural","useAsTitle","fallback","toString","permissions","disableLocalStrategy","email","readOnly","requirePassword","useAPIKey","verify","uploadConfig"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/ForgotPassword/ForgotPasswordForm/index.tsx"],"names":[],"mappings":"AAUA,OAAO,KAA6B,MAAM,OAAO,CAAA;AAGjD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAoEtC,CAAA"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { Email } from '@payloadcms/ui/fields/Email';
|
|
3
|
+
import { Form } from '@payloadcms/ui/forms/Form';
|
|
4
|
+
import { FormSubmit } from '@payloadcms/ui/forms/Submit';
|
|
5
|
+
import { useConfig } from '@payloadcms/ui/providers/Config';
|
|
6
|
+
import { useTranslation } from '@payloadcms/ui/providers/Translation';
|
|
7
|
+
import { email } from 'payload/fields/validations';
|
|
8
|
+
import React, { Fragment, useState } from 'react';
|
|
9
|
+
import { toast } from 'react-toastify';
|
|
10
|
+
export const ForgotPasswordForm = ()=>{
|
|
11
|
+
const config = useConfig();
|
|
12
|
+
const { admin: { user: userSlug }, routes: { api } } = config;
|
|
13
|
+
const { t } = useTranslation();
|
|
14
|
+
const [hasSubmitted, setHasSubmitted] = useState(false);
|
|
15
|
+
const handleResponse = (res)=>{
|
|
16
|
+
res.json().then(()=>{
|
|
17
|
+
setHasSubmitted(true);
|
|
18
|
+
}, ()=>{
|
|
19
|
+
toast.error(t('authentication:emailNotValid'));
|
|
20
|
+
});
|
|
21
|
+
};
|
|
22
|
+
const initialState = {
|
|
23
|
+
email: {
|
|
24
|
+
initialValue: '',
|
|
25
|
+
valid: true,
|
|
26
|
+
value: undefined
|
|
27
|
+
}
|
|
28
|
+
};
|
|
29
|
+
if (hasSubmitted) {
|
|
30
|
+
return /*#__PURE__*/ React.createElement(Fragment, null, /*#__PURE__*/ React.createElement("h1", null, t('authentication:emailSent')), /*#__PURE__*/ React.createElement("p", null, t('authentication:checkYourEmailForPasswordReset')));
|
|
31
|
+
}
|
|
32
|
+
return /*#__PURE__*/ React.createElement(Form, {
|
|
33
|
+
action: `${api}/${userSlug}/forgot-password`,
|
|
34
|
+
handleResponse: handleResponse,
|
|
35
|
+
initialState: initialState,
|
|
36
|
+
method: "POST"
|
|
37
|
+
}, /*#__PURE__*/ React.createElement("h1", null, t('authentication:forgotPassword')), /*#__PURE__*/ React.createElement("p", null, t('authentication:forgotPasswordEmailInstructions')), /*#__PURE__*/ React.createElement(Email, {
|
|
38
|
+
autoComplete: "email",
|
|
39
|
+
label: t('general:email'),
|
|
40
|
+
name: "email",
|
|
41
|
+
required: true,
|
|
42
|
+
validate: (value)=>email(value, {
|
|
43
|
+
name: 'email',
|
|
44
|
+
type: 'email',
|
|
45
|
+
data: {},
|
|
46
|
+
preferences: {
|
|
47
|
+
fields: {}
|
|
48
|
+
},
|
|
49
|
+
req: {
|
|
50
|
+
t
|
|
51
|
+
},
|
|
52
|
+
required: true,
|
|
53
|
+
siblingData: {}
|
|
54
|
+
})
|
|
55
|
+
}), /*#__PURE__*/ React.createElement(FormSubmit, null, t('general:submit')));
|
|
56
|
+
};
|
|
57
|
+
|
|
58
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/ForgotPassword/ForgotPasswordForm/index.tsx"],"sourcesContent":["'use client'\n\nimport type { FormState, PayloadRequestWithData } from 'payload/types'\n\nimport { Email } from '@payloadcms/ui/fields/Email'\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { FormSubmit } from '@payloadcms/ui/forms/Submit'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { email } from 'payload/fields/validations'\nimport React, { Fragment, useState } from 'react'\nimport { toast } from 'react-toastify'\n\nexport const ForgotPasswordForm: React.FC = () => {\n const config = useConfig()\n\n const {\n admin: { user: userSlug },\n routes: { api },\n } = config\n\n const { t } = useTranslation()\n const [hasSubmitted, setHasSubmitted] = useState(false)\n\n const handleResponse = (res) => {\n res.json().then(\n () => {\n setHasSubmitted(true)\n },\n () => {\n toast.error(t('authentication:emailNotValid'))\n },\n )\n }\n\n const initialState: FormState = {\n email: {\n initialValue: '',\n valid: true,\n value: undefined,\n },\n }\n\n if (hasSubmitted) {\n return (\n <Fragment>\n <h1>{t('authentication:emailSent')}</h1>\n <p>{t('authentication:checkYourEmailForPasswordReset')}</p>\n </Fragment>\n )\n }\n\n return (\n <Form\n action={`${api}/${userSlug}/forgot-password`}\n handleResponse={handleResponse}\n initialState={initialState}\n method=\"POST\"\n >\n <h1>{t('authentication:forgotPassword')}</h1>\n <p>{t('authentication:forgotPasswordEmailInstructions')}</p>\n <Email\n autoComplete=\"email\"\n label={t('general:email')}\n name=\"email\"\n required\n validate={(value) =>\n email(value, {\n name: 'email',\n type: 'email',\n data: {},\n preferences: { fields: {} },\n req: { t } as PayloadRequestWithData,\n required: true,\n siblingData: {},\n })\n }\n />\n <FormSubmit>{t('general:submit')}</FormSubmit>\n </Form>\n )\n}\n"],"names":["Email","Form","FormSubmit","useConfig","useTranslation","email","React","Fragment","useState","toast","ForgotPasswordForm","config","admin","user","userSlug","routes","api","t","hasSubmitted","setHasSubmitted","handleResponse","res","json","then","error","initialState","initialValue","valid","value","undefined","h1","p","action","method","autoComplete","label","name","required","validate","type","data","preferences","fields","req","siblingData"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA;AAIA,SAASA,KAAK,QAAQ,8BAA6B;AACnD,SAASC,IAAI,QAAQ,4BAA2B;AAChD,SAASC,UAAU,QAAQ,8BAA6B;AACxD,SAASC,SAAS,QAAQ,kCAAiC;AAC3D,SAASC,cAAc,QAAQ,uCAAsC;AACrE,SAASC,KAAK,QAAQ,6BAA4B;AAClD,OAAOC,SAASC,QAAQ,EAAEC,QAAQ,QAAQ,QAAO;AACjD,SAASC,KAAK,QAAQ,iBAAgB;AAEtC,OAAO,MAAMC,qBAA+B;IAC1C,MAAMC,SAASR;IAEf,MAAM,EACJS,OAAO,EAAEC,MAAMC,QAAQ,EAAE,EACzBC,QAAQ,EAAEC,GAAG,EAAE,EAChB,GAAGL;IAEJ,MAAM,EAAEM,CAAC,EAAE,GAAGb;IACd,MAAM,CAACc,cAAcC,gBAAgB,GAAGX,SAAS;IAEjD,MAAMY,iBAAiB,CAACC;QACtBA,IAAIC,IAAI,GAAGC,IAAI,CACb;YACEJ,gBAAgB;QAClB,GACA;YACEV,MAAMe,KAAK,CAACP,EAAE;QAChB;IAEJ;IAEA,MAAMQ,eAA0B;QAC9BpB,OAAO;YACLqB,cAAc;YACdC,OAAO;YACPC,OAAOC;QACT;IACF;IAEA,IAAIX,cAAc;QAChB,qBACE,oBAACX,8BACC,oBAACuB,YAAIb,EAAE,4CACP,oBAACc,WAAGd,EAAE;IAGZ;IAEA,qBACE,oBAAChB;QACC+B,QAAQ,CAAC,EAAEhB,IAAI,CAAC,EAAEF,SAAS,gBAAgB,CAAC;QAC5CM,gBAAgBA;QAChBK,cAAcA;QACdQ,QAAO;qBAEP,oBAACH,YAAIb,EAAE,iDACP,oBAACc,WAAGd,EAAE,kEACN,oBAACjB;QACCkC,cAAa;QACbC,OAAOlB,EAAE;QACTmB,MAAK;QACLC,UAAAA;QACAC,UAAU,CAACV,QACTvB,MAAMuB,OAAO;gBACXQ,MAAM;gBACNG,MAAM;gBACNC,MAAM,CAAC;gBACPC,aAAa;oBAAEC,QAAQ,CAAC;gBAAE;gBAC1BC,KAAK;oBAAE1B;gBAAE;gBACToB,UAAU;gBACVO,aAAa,CAAC;YAChB;sBAGJ,oBAAC1C,kBAAYe,EAAE;AAGrB,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/ForgotPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/ForgotPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAKnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,OAAO,EAAE,8BAA8B,EAAE,MAAM,WAAW,CAAA;AAG1D,eAAO,MAAM,uBAAuB,oBAAoB,CAAA;AAExD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAwCvD,CAAA"}
|
|
@@ -1,26 +1,14 @@
|
|
|
1
1
|
import { Button } from '@payloadcms/ui/elements/Button';
|
|
2
2
|
import { Translation } from '@payloadcms/ui/elements/Translation';
|
|
3
|
-
import { Email } from '@payloadcms/ui/fields/Email';
|
|
4
|
-
import { Form } from '@payloadcms/ui/forms/Form';
|
|
5
|
-
import { FormSubmit } from '@payloadcms/ui/forms/Submit';
|
|
6
3
|
import LinkImport from 'next/link.js';
|
|
7
4
|
import React, { Fragment } from 'react';
|
|
5
|
+
import { ForgotPasswordForm } from './ForgotPasswordForm/index.js';
|
|
8
6
|
export { generateForgotPasswordMetadata } from './meta.js';
|
|
9
7
|
const Link = LinkImport.default || LinkImport;
|
|
10
8
|
export const forgotPasswordBaseClass = 'forgot-password';
|
|
11
9
|
export const ForgotPasswordView = ({ initPageResult })=>{
|
|
12
10
|
const { req: { i18n, payload: { config }, user } } = initPageResult;
|
|
13
|
-
const {
|
|
14
|
-
// const handleResponse = (res) => {
|
|
15
|
-
// res.json().then(
|
|
16
|
-
// () => {
|
|
17
|
-
// setHasSubmitted(true)
|
|
18
|
-
// },
|
|
19
|
-
// () => {
|
|
20
|
-
// toast.error(i18n.t('authentication:emailNotValid'))
|
|
21
|
-
// },
|
|
22
|
-
// )
|
|
23
|
-
// }
|
|
11
|
+
const { routes: { admin } } = config;
|
|
24
12
|
if (user) {
|
|
25
13
|
return /*#__PURE__*/ React.createElement(Fragment, null, /*#__PURE__*/ React.createElement("h1", null, i18n.t('authentication:alreadyLoggedIn')), /*#__PURE__*/ React.createElement("p", null, /*#__PURE__*/ React.createElement(Translation, {
|
|
26
14
|
elements: {
|
|
@@ -37,31 +25,7 @@ export const ForgotPasswordView = ({ initPageResult })=>{
|
|
|
37
25
|
to: admin
|
|
38
26
|
}, i18n.t('general:backToDashboard')));
|
|
39
27
|
}
|
|
40
|
-
|
|
41
|
-
// return (
|
|
42
|
-
// <Fragment>
|
|
43
|
-
// <h1>{i18n.t('authentication:emailSent')}</h1>
|
|
44
|
-
// <p>{i18n.t('authentication:checkYourEmailForPasswordReset')}</p>
|
|
45
|
-
// </Fragment>
|
|
46
|
-
// )
|
|
47
|
-
// }
|
|
48
|
-
return /*#__PURE__*/ React.createElement(Fragment, null, /*#__PURE__*/ React.createElement(Form, {
|
|
49
|
-
action: `${serverURL}${api}/${userSlug}/forgot-password`,
|
|
50
|
-
// handleResponse={handleResponse}
|
|
51
|
-
initialState: {
|
|
52
|
-
email: {
|
|
53
|
-
initialValue: '',
|
|
54
|
-
valid: false,
|
|
55
|
-
value: undefined
|
|
56
|
-
}
|
|
57
|
-
},
|
|
58
|
-
method: "POST"
|
|
59
|
-
}, /*#__PURE__*/ React.createElement("h1", null, i18n.t('authentication:forgotPassword')), /*#__PURE__*/ React.createElement("p", null, i18n.t('authentication:forgotPasswordEmailInstructions')), /*#__PURE__*/ React.createElement(Email, {
|
|
60
|
-
autoComplete: "email",
|
|
61
|
-
label: i18n.t('general:emailAddress'),
|
|
62
|
-
name: "email",
|
|
63
|
-
required: true
|
|
64
|
-
}), /*#__PURE__*/ React.createElement(FormSubmit, null, i18n.t('general:submit'))), /*#__PURE__*/ React.createElement(Link, {
|
|
28
|
+
return /*#__PURE__*/ React.createElement(Fragment, null, /*#__PURE__*/ React.createElement(ForgotPasswordForm, null), /*#__PURE__*/ React.createElement(Link, {
|
|
65
29
|
href: `${admin}/login`
|
|
66
30
|
}, i18n.t('authentication:backToLogin')));
|
|
67
31
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/ForgotPassword/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload/types'\n\nimport { Button } from '@payloadcms/ui/elements/Button'\nimport { Translation } from '@payloadcms/ui/elements/Translation'\nimport
|
|
1
|
+
{"version":3,"sources":["../../../src/views/ForgotPassword/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload/types'\n\nimport { Button } from '@payloadcms/ui/elements/Button'\nimport { Translation } from '@payloadcms/ui/elements/Translation'\nimport LinkImport from 'next/link.js'\nimport React, { Fragment } from 'react'\n\nimport { ForgotPasswordForm } from './ForgotPasswordForm/index.js'\n\nexport { generateForgotPasswordMetadata } from './meta.js'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\nexport const forgotPasswordBaseClass = 'forgot-password'\n\nexport const ForgotPasswordView: React.FC<AdminViewProps> = ({ initPageResult }) => {\n const {\n req: {\n i18n,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const {\n routes: { admin },\n } = config\n\n if (user) {\n return (\n <Fragment>\n <h1>{i18n.t('authentication:alreadyLoggedIn')}</h1>\n <p>\n <Translation\n elements={{\n '0': ({ children }) => <Link href={`${admin}/account`}>{children}</Link>,\n }}\n i18nKey=\"authentication:loggedInChangePassword\"\n t={i18n.t}\n />\n </p>\n <br />\n <Button Link={Link} buttonStyle=\"secondary\" el=\"link\" to={admin}>\n {i18n.t('general:backToDashboard')}\n </Button>\n </Fragment>\n )\n }\n\n return (\n <Fragment>\n <ForgotPasswordForm />\n <Link href={`${admin}/login`}>{i18n.t('authentication:backToLogin')}</Link>\n </Fragment>\n )\n}\n"],"names":["Button","Translation","LinkImport","React","Fragment","ForgotPasswordForm","generateForgotPasswordMetadata","Link","default","forgotPasswordBaseClass","ForgotPasswordView","initPageResult","req","i18n","payload","config","user","routes","admin","h1","t","p","elements","children","href","i18nKey","br","buttonStyle","el","to"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,MAAM,QAAQ,iCAAgC;AACvD,SAASC,WAAW,QAAQ,sCAAqC;AACjE,OAAOC,gBAAgB,eAAc;AACrC,OAAOC,SAASC,QAAQ,QAAQ,QAAO;AAEvC,SAASC,kBAAkB,QAAQ,gCAA+B;AAElE,SAASC,8BAA8B,QAAQ,YAAW;AAE1D,MAAMC,OAAQL,WAAWM,OAAO,IAAIN;AACpC,OAAO,MAAMO,0BAA0B,kBAAiB;AAExD,OAAO,MAAMC,qBAA+C,CAAC,EAAEC,cAAc,EAAE;IAC7E,MAAM,EACJC,KAAK,EACHC,IAAI,EACJC,SAAS,EAAEC,MAAM,EAAE,EACnBC,IAAI,EACL,EACF,GAAGL;IAEJ,MAAM,EACJM,QAAQ,EAAEC,KAAK,EAAE,EAClB,GAAGH;IAEJ,IAAIC,MAAM;QACR,qBACE,oBAACZ,8BACC,oBAACe,YAAIN,KAAKO,CAAC,CAAC,kDACZ,oBAACC,yBACC,oBAACpB;YACCqB,UAAU;gBACR,KAAK,CAAC,EAAEC,QAAQ,EAAE,iBAAK,oBAAChB;wBAAKiB,MAAM,CAAC,EAAEN,MAAM,QAAQ,CAAC;uBAAGK;YAC1D;YACAE,SAAQ;YACRL,GAAGP,KAAKO,CAAC;2BAGb,oBAACM,2BACD,oBAAC1B;YAAOO,MAAMA;YAAMoB,aAAY;YAAYC,IAAG;YAAOC,IAAIX;WACvDL,KAAKO,CAAC,CAAC;IAIhB;IAEA,qBACE,oBAAChB,8BACC,oBAACC,yCACD,oBAACE;QAAKiB,MAAM,CAAC,EAAEN,MAAM,MAAM,CAAC;OAAGL,KAAKO,CAAC,CAAC;AAG5C,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/views/ForgotPassword/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAI5D,eAAO,MAAM,8BAA8B,EAAE,
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/views/ForgotPassword/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAI5D,eAAO,MAAM,8BAA8B,EAAE,oBASzC,CAAA"}
|
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { meta } from '../../utilities/meta.js';
|
|
2
|
-
export const generateForgotPasswordMetadata = async ({ config, i18n: { t } })=>{
|
|
3
|
-
return meta({
|
|
2
|
+
export const generateForgotPasswordMetadata = async ({ config, i18n: { t } })=>meta({
|
|
4
3
|
config,
|
|
5
4
|
description: t('authentication:forgotPassword'),
|
|
6
5
|
keywords: t('authentication:forgotPassword'),
|
|
7
6
|
title: t('authentication:forgotPassword')
|
|
8
7
|
});
|
|
9
|
-
};
|
|
10
8
|
|
|
11
9
|
//# sourceMappingURL=meta.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/ForgotPassword/meta.ts"],"sourcesContent":["import type { GenerateViewMetadata } from '../Root/index.js'\n\nimport { meta } from '../../utilities/meta.js'\n\nexport const generateForgotPasswordMetadata: GenerateViewMetadata = async ({\n config,\n i18n: { t },\n})
|
|
1
|
+
{"version":3,"sources":["../../../src/views/ForgotPassword/meta.ts"],"sourcesContent":["import type { GenerateViewMetadata } from '../Root/index.js'\n\nimport { meta } from '../../utilities/meta.js'\n\nexport const generateForgotPasswordMetadata: GenerateViewMetadata = async ({\n config,\n i18n: { t },\n}) =>\n meta({\n config,\n description: t('authentication:forgotPassword'),\n keywords: t('authentication:forgotPassword'),\n title: t('authentication:forgotPassword'),\n })\n"],"names":["meta","generateForgotPasswordMetadata","config","i18n","t","description","keywords","title"],"rangeMappings":";;;;;;","mappings":"AAEA,SAASA,IAAI,QAAQ,0BAAyB;AAE9C,OAAO,MAAMC,iCAAuD,OAAO,EACzEC,MAAM,EACNC,MAAM,EAAEC,CAAC,EAAE,EACZ,GACCJ,KAAK;QACHE;QACAG,aAAaD,EAAE;QACfE,UAAUF,EAAE;QACZG,OAAOH,EAAE;IACX,GAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAsI7C,CAAA"}
|
package/dist/views/List/index.js
CHANGED
|
@@ -46,7 +46,7 @@ export const ListView = async ({ initPageResult, searchParams })=>{
|
|
|
46
46
|
} else if (typeof CustomList === 'object' && typeof CustomList.Component === 'function') {
|
|
47
47
|
CustomListView = CustomList.Component;
|
|
48
48
|
}
|
|
49
|
-
const page = isNumber(query?.page) ? query.page : 0;
|
|
49
|
+
const page = isNumber(query?.page) ? Number(query.page) : 0;
|
|
50
50
|
const whereQuery = mergeListSearchAndWhere({
|
|
51
51
|
collectionConfig,
|
|
52
52
|
query: {
|
|
@@ -54,7 +54,7 @@ export const ListView = async ({ initPageResult, searchParams })=>{
|
|
|
54
54
|
where: query?.where || undefined
|
|
55
55
|
}
|
|
56
56
|
});
|
|
57
|
-
const limit = isNumber(query?.limit) ? query.limit : listPreferences?.limit || collectionConfig.admin.pagination.defaultLimit;
|
|
57
|
+
const limit = isNumber(query?.limit) ? Number(query.limit) : listPreferences?.limit || collectionConfig.admin.pagination.defaultLimit;
|
|
58
58
|
const sort = query?.sort && typeof query.sort === 'string' ? query.sort : listPreferences?.sort || undefined;
|
|
59
59
|
const data = await payload.find({
|
|
60
60
|
collection: collectionSlug,
|
|
@@ -98,7 +98,8 @@ export const ListView = async ({ initPageResult, searchParams })=>{
|
|
|
98
98
|
}, /*#__PURE__*/ React.createElement(RenderCustomComponent, {
|
|
99
99
|
CustomComponent: CustomListView,
|
|
100
100
|
DefaultComponent: DefaultListView,
|
|
101
|
-
componentProps: viewComponentProps
|
|
101
|
+
componentProps: viewComponentProps,
|
|
102
|
+
payload: payload
|
|
102
103
|
})))));
|
|
103
104
|
}
|
|
104
105
|
return notFound();
|