@payloadcms/next 3.0.0-canary.ee0375f → 3.0.0-canary.ef0a8d0
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/config.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/getCustomViews.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/getViewConfig.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts +2 -2
- package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
- package/dist/elements/DocumentHeader/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
- package/dist/elements/Logo/index.js.map +1 -1
- package/dist/elements/Nav/NavHamburger/index.js.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/exports/layouts.js.map +1 -1
- package/dist/exports/routes.js.map +1 -1
- package/dist/exports/templates.js.map +1 -1
- package/dist/exports/utilities.js.map +1 -1
- package/dist/exports/views.js.map +1 -1
- package/dist/fetchAPI-multipart/fileFactory.js.map +1 -1
- package/dist/fetchAPI-multipart/handlers.js.map +1 -1
- package/dist/fetchAPI-multipart/index.js.map +1 -1
- package/dist/fetchAPI-multipart/isEligibleRequest.js.map +1 -1
- package/dist/fetchAPI-multipart/processMultipart.js.map +1 -1
- package/dist/fetchAPI-multipart/processNested.js.map +1 -1
- package/dist/fetchAPI-multipart/uploadTimer.js.map +1 -1
- package/dist/fetchAPI-multipart/utilities.js.map +1 -1
- package/dist/fetchAPI-stream-file/index.js.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +0 -1
- 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 +11 -12
- package/dist/routes/graphql/handler.js.map +1 -1
- package/dist/routes/graphql/index.js.map +1 -1
- package/dist/routes/graphql/playground.js.map +1 -1
- package/dist/routes/index.js.map +1 -1
- 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 -3
- package/dist/routes/rest/auth/forgotPassword.js.map +1 -1
- 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 +9 -4
- package/dist/routes/rest/auth/login.js.map +1 -1
- package/dist/routes/rest/auth/logout.js.map +1 -1
- 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 +12 -20
- 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 +9 -2
- package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
- package/dist/routes/rest/auth/resetPassword.js.map +1 -1
- package/dist/routes/rest/auth/unlock.js.map +1 -1
- package/dist/routes/rest/auth/verifyEmail.js +1 -1
- package/dist/routes/rest/auth/verifyEmail.js.map +1 -1
- package/dist/routes/rest/buildFormState.d.ts +2 -2
- package/dist/routes/rest/buildFormState.d.ts.map +1 -1
- package/dist/routes/rest/buildFormState.js.map +1 -1
- package/dist/routes/rest/checkEndpoints.js.map +1 -1
- package/dist/routes/rest/collections/count.js.map +1 -1
- package/dist/routes/rest/collections/create.js.map +1 -1
- package/dist/routes/rest/collections/delete.js.map +1 -1
- package/dist/routes/rest/collections/deleteByID.js.map +1 -1
- package/dist/routes/rest/collections/docAccess.js.map +1 -1
- package/dist/routes/rest/collections/duplicate.js.map +1 -1
- package/dist/routes/rest/collections/find.js.map +1 -1
- package/dist/routes/rest/collections/findByID.js.map +1 -1
- package/dist/routes/rest/collections/findVersionByID.js.map +1 -1
- package/dist/routes/rest/collections/findVersions.js.map +1 -1
- package/dist/routes/rest/collections/preview.js.map +1 -1
- package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
- package/dist/routes/rest/collections/update.js.map +1 -1
- package/dist/routes/rest/collections/updateByID.js.map +1 -1
- package/dist/routes/rest/files/checkFileAccess.d.ts +2 -2
- package/dist/routes/rest/files/checkFileAccess.d.ts.map +1 -1
- 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 +8 -5
- package/dist/routes/rest/files/getFile.js.map +1 -1
- package/dist/routes/rest/files/getFileTypeFallback.js.map +1 -1
- package/dist/routes/rest/globals/docAccess.js.map +1 -1
- package/dist/routes/rest/globals/findOne.js.map +1 -1
- package/dist/routes/rest/globals/findVersionByID.js.map +1 -1
- package/dist/routes/rest/globals/findVersions.js.map +1 -1
- package/dist/routes/rest/globals/preview.js.map +1 -1
- package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
- package/dist/routes/rest/globals/update.js.map +1 -1
- package/dist/routes/rest/index.d.ts.map +1 -1
- package/dist/routes/rest/index.js +88 -93
- package/dist/routes/rest/index.js.map +1 -1
- package/dist/routes/rest/og/image.js.map +1 -1
- package/dist/routes/rest/og/index.d.ts +2 -2
- package/dist/routes/rest/og/index.d.ts.map +1 -1
- package/dist/routes/rest/og/index.js.map +1 -1
- package/dist/routes/rest/routeError.d.ts +2 -2
- package/dist/routes/rest/routeError.d.ts.map +1 -1
- 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.js.map +1 -1
- package/dist/scss/colors.scss +76 -76
- package/dist/templates/Default/NavHamburger/index.js.map +1 -1
- package/dist/templates/Default/Wrapper/index.js.map +1 -1
- package/dist/templates/Default/index.d.ts +2 -2
- package/dist/templates/Default/index.d.ts.map +1 -1
- package/dist/templates/Default/index.js.map +1 -1
- package/dist/templates/Minimal/index.js.map +1 -1
- package/dist/utilities/addDataAndFileToRequest.d.ts +3 -6
- package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -1
- package/dist/utilities/addDataAndFileToRequest.js +15 -18
- package/dist/utilities/addDataAndFileToRequest.js.map +1 -1
- package/dist/utilities/addLocalesToRequest.d.ts +2 -5
- package/dist/utilities/addLocalesToRequest.d.ts.map +1 -1
- package/dist/utilities/addLocalesToRequest.js +8 -9
- package/dist/utilities/addLocalesToRequest.js.map +1 -1
- package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
- package/dist/utilities/createPayloadRequest.js +4 -2
- package/dist/utilities/createPayloadRequest.js.map +1 -1
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
- package/dist/utilities/getPayloadHMR.js +6 -4
- package/dist/utilities/getPayloadHMR.js.map +1 -1
- package/dist/utilities/getRequestLanguage.js.map +1 -1
- package/dist/utilities/getRequestLocales.js.map +1 -1
- package/dist/utilities/getRequestTheme.js.map +1 -1
- package/dist/utilities/headersWithCors.d.ts +2 -2
- package/dist/utilities/headersWithCors.d.ts.map +1 -1
- package/dist/utilities/headersWithCors.js +19 -3
- package/dist/utilities/headersWithCors.js.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.js +4 -4
- package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
- package/dist/utilities/initPage/index.d.ts.map +1 -1
- package/dist/utilities/initPage/index.js +2 -1
- package/dist/utilities/initPage/index.js.map +1 -1
- package/dist/utilities/initPage/shared.js.map +1 -1
- package/dist/utilities/initPage/types.js.map +1 -1
- package/dist/utilities/mergeHeaders.d.ts +2 -0
- package/dist/utilities/mergeHeaders.d.ts.map +1 -0
- package/dist/utilities/mergeHeaders.js +37 -0
- package/dist/utilities/mergeHeaders.js.map +1 -0
- package/dist/utilities/meta.d.ts +2 -2
- package/dist/utilities/meta.d.ts.map +1 -1
- package/dist/utilities/meta.js +2 -2
- package/dist/utilities/meta.js.map +1 -1
- package/dist/utilities/timestamp.js.map +1 -1
- package/dist/views/API/LocaleSelector/index.js.map +1 -1
- package/dist/views/API/RenderJSON/index.js.map +1 -1
- package/dist/views/API/index.client.d.ts.map +1 -1
- package/dist/views/API/index.client.js +4 -6
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/API/index.js.map +1 -1
- package/dist/views/API/meta.js.map +1 -1
- package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
- package/dist/views/Account/Settings/index.js.map +1 -1
- package/dist/views/Account/ToggleTheme/index.js.map +1 -1
- package/dist/views/Account/index.js.map +1 -1
- package/dist/views/Account/meta.js.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/CreateFirstUser/index.js.map +1 -1
- package/dist/views/CreateFirstUser/meta.js.map +1 -1
- package/dist/views/Dashboard/Default/index.d.ts +2 -2
- package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/index.js.map +1 -1
- package/dist/views/Dashboard/index.js.map +1 -1
- package/dist/views/Dashboard/meta.js.map +1 -1
- package/dist/views/Document/getCustomViewByKey.js.map +1 -1
- package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
- package/dist/views/Document/getDocumentData.d.ts +2 -2
- package/dist/views/Document/getDocumentData.d.ts.map +1 -1
- package/dist/views/Document/getDocumentData.js +1 -1
- package/dist/views/Document/getDocumentData.js.map +1 -1
- package/dist/views/Document/getDocumentPermissions.js.map +1 -1
- package/dist/views/Document/getMetaBySegment.d.ts +2 -2
- package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
- package/dist/views/Document/getMetaBySegment.js.map +1 -1
- package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
- package/dist/views/Document/getViewsFromConfig.js +16 -2
- package/dist/views/Document/getViewsFromConfig.js.map +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +18 -18
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Document/meta.js.map +1 -1
- 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 +10 -3
- package/dist/views/Edit/Default/Auth/index.js.map +1 -1
- package/dist/views/Edit/Default/Auth/index.scss +17 -2
- package/dist/views/Edit/Default/Auth/types.d.ts +1 -0
- package/dist/views/Edit/Default/Auth/types.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/types.js.map +1 -1
- package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +1 -1
- package/dist/views/Edit/Default/SetDocumentTitle/index.js.map +1 -1
- package/dist/views/Edit/Default/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/index.js +7 -2
- package/dist/views/Edit/Default/index.js.map +1 -1
- package/dist/views/Edit/Default/types.js.map +1 -1
- package/dist/views/Edit/index.client.js.map +1 -1
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/Edit/meta.js.map +1 -1
- package/dist/views/Edit/sanitizeEditViewProps.js.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +34 -6
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/ForgotPassword/index.js.map +1 -1
- package/dist/views/ForgotPassword/meta.js.map +1 -1
- package/dist/views/List/Default/index.js.map +1 -1
- package/dist/views/List/Default/types.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +3 -1
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/meta.d.ts +2 -2
- package/dist/views/List/meta.d.ts.map +1 -1
- package/dist/views/List/meta.js.map +1 -1
- package/dist/views/LivePreview/Context/collisionDetection.js.map +1 -1
- package/dist/views/LivePreview/Context/context.js.map +1 -1
- package/dist/views/LivePreview/Context/index.js.map +1 -1
- package/dist/views/LivePreview/Context/sizeReducer.js.map +1 -1
- package/dist/views/LivePreview/Device/index.js.map +1 -1
- package/dist/views/LivePreview/DeviceContainer/index.js.map +1 -1
- package/dist/views/LivePreview/IFrame/index.js.map +1 -1
- package/dist/views/LivePreview/Preview/index.js +1 -1
- package/dist/views/LivePreview/Preview/index.js.map +1 -1
- package/dist/views/LivePreview/Toolbar/Controls/index.js.map +1 -1
- package/dist/views/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
- package/dist/views/LivePreview/Toolbar/index.d.ts +2 -2
- package/dist/views/LivePreview/Toolbar/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Toolbar/index.js.map +1 -1
- package/dist/views/LivePreview/ToolbarArea/index.js.map +1 -1
- package/dist/views/LivePreview/index.client.js.map +1 -1
- package/dist/views/LivePreview/index.js.map +1 -1
- package/dist/views/LivePreview/meta.js.map +1 -1
- package/dist/views/LivePreview/usePopupWindow.js.map +1 -1
- package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
- package/dist/views/Login/LoginForm/index.js +38 -8
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Login/index.js.map +1 -1
- package/dist/views/Login/meta.js.map +1 -1
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/index.d.ts +2 -2
- package/dist/views/Logout/index.d.ts.map +1 -1
- package/dist/views/Logout/index.js.map +1 -1
- package/dist/views/Logout/meta.js.map +1 -1
- package/dist/views/NotFound/index.client.js.map +1 -1
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/NotFound/meta.js.map +1 -1
- package/dist/views/ResetPassword/index.client.js.map +1 -1
- package/dist/views/ResetPassword/index.js.map +1 -1
- package/dist/views/ResetPassword/meta.js.map +1 -1
- package/dist/views/Root/getCustomViewByRoute.js.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 +6 -1
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Root/isPathMatchingRoute.js.map +1 -1
- package/dist/views/Root/meta.js.map +1 -1
- package/dist/views/Unauthorized/index.js.map +1 -1
- package/dist/views/Unauthorized/meta.js.map +1 -1
- package/dist/views/Verify/index.js.map +1 -1
- package/dist/views/Verify/meta.js.map +1 -1
- package/dist/views/Version/Default/SetStepNav.d.ts +0 -1
- package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
- package/dist/views/Version/Default/SetStepNav.js +7 -7
- package/dist/views/Version/Default/SetStepNav.js.map +1 -1
- package/dist/views/Version/Default/index.d.ts.map +1 -1
- package/dist/views/Version/Default/index.js +11 -13
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Version/Default/types.d.ts +3 -3
- package/dist/views/Version/Default/types.d.ts.map +1 -1
- package/dist/views/Version/Default/types.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/Label/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/diffMethods.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +6 -6
- package/dist/views/Version/RenderFieldsToDiff/fields/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/styles.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/index.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.js.map +1 -1
- package/dist/views/Version/Restore/types.js.map +1 -1
- package/dist/views/Version/SelectComparison/index.d.ts.map +1 -1
- package/dist/views/Version/SelectComparison/index.js +49 -28
- package/dist/views/Version/SelectComparison/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/index.scss +1 -1
- package/dist/views/Version/SelectComparison/types.d.ts +2 -1
- package/dist/views/Version/SelectComparison/types.d.ts.map +1 -1
- package/dist/views/Version/SelectComparison/types.js.map +1 -1
- package/dist/views/Version/SelectLocales/index.js.map +1 -1
- package/dist/views/Version/SelectLocales/types.js.map +1 -1
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +25 -40
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Version/meta.js.map +1 -1
- package/dist/views/Versions/buildColumns.d.ts +3 -1
- package/dist/views/Versions/buildColumns.d.ts.map +1 -1
- package/dist/views/Versions/buildColumns.js +7 -4
- package/dist/views/Versions/buildColumns.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.d.ts +7 -1
- package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js +31 -13
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/dist/views/Versions/cells/ID/index.js.map +1 -1
- package/dist/views/Versions/getLatestVersion.d.ts +5 -0
- package/dist/views/Versions/getLatestVersion.d.ts.map +1 -0
- package/dist/views/Versions/getLatestVersion.js +29 -0
- package/dist/views/Versions/getLatestVersion.js.map +1 -0
- package/dist/views/Versions/index.client.js.map +1 -1
- package/dist/views/Versions/index.d.ts.map +1 -1
- package/dist/views/Versions/index.js +25 -3
- package/dist/views/Versions/index.js.map +1 -1
- package/dist/views/Versions/meta.js.map +1 -1
- package/dist/views/Versions/types.js.map +1 -1
- package/dist/withPayload.js.map +1 -1
- package/package.json +20 -26
- package/dist/prod/index.js +0 -62
- package/dist/prod/payload/payload-favicon-dark.png +0 -0
- package/dist/prod/payload/payload-favicon-light.png +0 -0
- package/dist/prod/payload/static-og-image.png +0 -0
- package/dist/views/Version/shared.d.ts +0 -9
- package/dist/views/Version/shared.d.ts.map +0 -1
- package/dist/views/Version/shared.js +0 -10
- package/dist/views/Version/shared.js.map +0 -1
- package/dist/webpackEntry.d.ts +0 -5
- package/dist/webpackEntry.d.ts.map +0 -1
- package/dist/webpackEntry.js +0 -6
- package/dist/webpackEntry.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/templates/Default/index.tsx"],"sourcesContent":["import type { ServerProps, VisibleEntities } from 'payload'\n\nimport { AppHeader, EntityVisibilityProvider, NavToggler } from '@payloadcms/ui'\nimport { RenderCustomComponent } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { DefaultNav, type NavProps } from '../../elements/Nav/index.js'\nimport { NavHamburger } from './NavHamburger/index.js'\nimport { Wrapper } from './Wrapper/index.js'\nimport './index.scss'\n\nconst baseClass = 'template-default'\n\nexport type DefaultTemplateProps =
|
|
1
|
+
{"version":3,"sources":["../../../src/templates/Default/index.tsx"],"sourcesContent":["import type { ServerProps, VisibleEntities } from 'payload'\n\nimport { AppHeader, EntityVisibilityProvider, NavToggler } from '@payloadcms/ui'\nimport { RenderCustomComponent } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { DefaultNav, type NavProps } from '../../elements/Nav/index.js'\nimport { NavHamburger } from './NavHamburger/index.js'\nimport { Wrapper } from './Wrapper/index.js'\nimport './index.scss'\n\nconst baseClass = 'template-default'\n\nexport type DefaultTemplateProps = {\n children?: React.ReactNode\n className?: string\n visibleEntities: VisibleEntities\n} & ServerProps\n\nexport const DefaultTemplate: React.FC<DefaultTemplateProps> = ({\n children,\n className,\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n visibleEntities,\n}) => {\n const {\n admin: {\n components: { Nav: CustomNav } = {\n Nav: undefined,\n },\n } = {},\n } = payload.config || {}\n\n const navProps: NavProps = {\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n return (\n <EntityVisibilityProvider visibleEntities={visibleEntities}>\n <div>\n <div className={`${baseClass}__nav-toggler-wrapper`} id=\"nav-toggler\">\n <NavToggler className={`${baseClass}__nav-toggler`}>\n <NavHamburger />\n </NavToggler>\n </div>\n <Wrapper baseClass={baseClass} className={className}>\n <RenderCustomComponent\n CustomComponent={CustomNav}\n DefaultComponent={DefaultNav}\n componentProps={navProps}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n <div className={`${baseClass}__wrap`}>\n <AppHeader />\n {children}\n </div>\n </Wrapper>\n </div>\n </EntityVisibilityProvider>\n )\n}\n"],"names":["AppHeader","EntityVisibilityProvider","NavToggler","RenderCustomComponent","React","DefaultNav","NavHamburger","Wrapper","baseClass","DefaultTemplate","children","className","i18n","locale","params","payload","permissions","searchParams","user","visibleEntities","admin","components","Nav","CustomNav","undefined","config","navProps","div","id","CustomComponent","DefaultComponent","componentProps","serverOnlyProps"],"mappings":";AAEA,SAASA,SAAS,EAAEC,wBAAwB,EAAEC,UAAU,QAAQ,iBAAgB;AAChF,SAASC,qBAAqB,QAAQ,wBAAuB;AAC7D,OAAOC,WAAW,QAAO;AAEzB,SAASC,UAAU,QAAuB,8BAA6B;AACvE,SAASC,YAAY,QAAQ,0BAAyB;AACtD,SAASC,OAAO,QAAQ,qBAAoB;AAG5C,MAAMC,YAAY;AAQlB,OAAO,MAAMC,kBAAkD,CAAC,EAC9DC,QAAQ,EACRC,SAAS,EACTC,IAAI,EACJC,MAAM,EACNC,MAAM,EACNC,OAAO,EACPC,WAAW,EACXC,YAAY,EACZC,IAAI,EACJC,eAAe,EAChB;IACC,MAAM,EACJC,OAAO,EACLC,YAAY,EAAEC,KAAKC,SAAS,EAAE,GAAG;QAC/BD,KAAKE;IACP,CAAC,EACF,GAAG,CAAC,CAAC,EACP,GAAGT,QAAQU,MAAM,IAAI,CAAC;IAEvB,MAAMC,WAAqB;QACzBd;QACAC;QACAC;QACAC;QACAC;QACAC;QACAC;IACF;IAEA,qBACE,KAACjB;QAAyBkB,iBAAiBA;kBACzC,cAAA,MAACQ;;8BACC,KAACA;oBAAIhB,WAAW,CAAC,EAAEH,UAAU,qBAAqB,CAAC;oBAAEoB,IAAG;8BACtD,cAAA,KAAC1B;wBAAWS,WAAW,CAAC,EAAEH,UAAU,aAAa,CAAC;kCAChD,cAAA,KAACF;;;8BAGL,MAACC;oBAAQC,WAAWA;oBAAWG,WAAWA;;sCACxC,KAACR;4BACC0B,iBAAiBN;4BACjBO,kBAAkBzB;4BAClB0B,gBAAgBL;4BAChBM,iBAAiB;gCACfpB;gCACAC;gCACAC;gCACAC;gCACAC;gCACAC;gCACAC;4BACF;;sCAEF,MAACS;4BAAIhB,WAAW,CAAC,EAAEH,UAAU,MAAM,CAAC;;8CAClC,KAACR;gCACAU;;;;;;;;AAMb,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/templates/Minimal/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'template-minimal'\n\nexport type MinimalTemplateProps = {\n children?: React.ReactNode\n className?: string\n style?: React.CSSProperties\n width?: 'normal' | 'wide'\n}\n\nexport const MinimalTemplate: React.FC<MinimalTemplateProps> = (props) => {\n const { children, className, style = {}, width = 'normal' } = props\n\n const classes = [className, baseClass, `${baseClass}--width-${width}`].filter(Boolean).join(' ')\n\n return (\n <section className={classes} style={style}>\n <div className={`${baseClass}__wrap`}>{children}</div>\n </section>\n )\n}\n"],"names":["React","baseClass","MinimalTemplate","props","children","className","style","width","classes","filter","Boolean","join","section","div"],"
|
|
1
|
+
{"version":3,"sources":["../../../src/templates/Minimal/index.tsx"],"sourcesContent":["import React from 'react'\n\nimport './index.scss'\n\nconst baseClass = 'template-minimal'\n\nexport type MinimalTemplateProps = {\n children?: React.ReactNode\n className?: string\n style?: React.CSSProperties\n width?: 'normal' | 'wide'\n}\n\nexport const MinimalTemplate: React.FC<MinimalTemplateProps> = (props) => {\n const { children, className, style = {}, width = 'normal' } = props\n\n const classes = [className, baseClass, `${baseClass}--width-${width}`].filter(Boolean).join(' ')\n\n return (\n <section className={classes} style={style}>\n <div className={`${baseClass}__wrap`}>{children}</div>\n </section>\n )\n}\n"],"names":["React","baseClass","MinimalTemplate","props","children","className","style","width","classes","filter","Boolean","join","section","div"],"mappings":";AAAA,OAAOA,WAAW,QAAO;AAIzB,MAAMC,YAAY;AASlB,OAAO,MAAMC,kBAAkD,CAACC;IAC9D,MAAM,EAAEC,QAAQ,EAAEC,SAAS,EAAEC,QAAQ,CAAC,CAAC,EAAEC,QAAQ,QAAQ,EAAE,GAAGJ;IAE9D,MAAMK,UAAU;QAACH;QAAWJ;QAAW,CAAC,EAAEA,UAAU,QAAQ,EAAEM,MAAM,CAAC;KAAC,CAACE,MAAM,CAACC,SAASC,IAAI,CAAC;IAE5F,qBACE,KAACC;QAAQP,WAAWG;QAASF,OAAOA;kBAClC,cAAA,KAACO;YAAIR,WAAW,CAAC,EAAEJ,UAAU,MAAM,CAAC;sBAAGG;;;AAG7C,EAAC"}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
import type { PayloadRequest
|
|
2
|
-
type
|
|
3
|
-
type AddDataAndFileToRequest = (args: {
|
|
4
|
-
request: PayloadRequest;
|
|
5
|
-
}) => Promise<ReturnType>;
|
|
1
|
+
import type { PayloadRequest } from 'payload';
|
|
2
|
+
type AddDataAndFileToRequest = (req: PayloadRequest) => Promise<void>;
|
|
6
3
|
/**
|
|
7
|
-
* Mutates the Request
|
|
4
|
+
* Mutates the Request, appending 'data' and 'file' if found
|
|
8
5
|
*/
|
|
9
6
|
export declare const addDataAndFileToRequest: AddDataAndFileToRequest;
|
|
10
7
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addDataAndFileToRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/addDataAndFileToRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"addDataAndFileToRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/addDataAndFileToRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAQ7C,KAAK,uBAAuB,GAAG,CAAC,GAAG,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;AAErE;;GAEG;AACH,eAAO,MAAM,uBAAuB,EAAE,uBAoCrC,CAAA"}
|
|
@@ -1,45 +1,42 @@
|
|
|
1
1
|
import { APIError } from 'payload';
|
|
2
2
|
import { fetchAPIFileUpload } from '../fetchAPI-multipart/index.js';
|
|
3
3
|
/**
|
|
4
|
-
* Mutates the Request
|
|
5
|
-
*/ export const addDataAndFileToRequest = async (
|
|
6
|
-
const
|
|
7
|
-
if (
|
|
4
|
+
* Mutates the Request, appending 'data' and 'file' if found
|
|
5
|
+
*/ export const addDataAndFileToRequest = async (req)=>{
|
|
6
|
+
const { body, headers, method, payload } = req;
|
|
7
|
+
if (method && [
|
|
8
8
|
'PATCH',
|
|
9
9
|
'POST',
|
|
10
10
|
'PUT'
|
|
11
|
-
].includes(
|
|
12
|
-
const [contentType] = (
|
|
13
|
-
const
|
|
14
|
-
const bodyByteSize = parseInt(incomingRequest.headers.get('Content-Length') || '0', 10);
|
|
11
|
+
].includes(method.toUpperCase()) && body) {
|
|
12
|
+
const [contentType] = (headers.get('Content-Type') || '').split(';');
|
|
13
|
+
const bodyByteSize = parseInt(req.headers.get('Content-Length') || '0', 10);
|
|
15
14
|
if (contentType === 'application/json') {
|
|
16
15
|
let data = {};
|
|
17
16
|
try {
|
|
18
|
-
data = await
|
|
17
|
+
data = await req.json();
|
|
19
18
|
} catch (error) {
|
|
20
|
-
|
|
19
|
+
req.payload.logger.error(error);
|
|
21
20
|
} finally{
|
|
22
|
-
|
|
23
|
-
|
|
21
|
+
req.data = data;
|
|
22
|
+
req.json = ()=>Promise.resolve(data);
|
|
24
23
|
}
|
|
25
24
|
} else if (bodyByteSize && contentType.includes('multipart/')) {
|
|
26
25
|
const { error, fields, files } = await fetchAPIFileUpload({
|
|
27
|
-
options: config.upload,
|
|
28
|
-
request:
|
|
26
|
+
options: payload.config.upload,
|
|
27
|
+
request: req
|
|
29
28
|
});
|
|
30
29
|
if (error) {
|
|
31
30
|
throw new APIError(error.message);
|
|
32
31
|
}
|
|
33
32
|
if (files?.file) {
|
|
34
|
-
|
|
33
|
+
req.file = files.file;
|
|
35
34
|
}
|
|
36
35
|
if (fields?._payload && typeof fields._payload === 'string') {
|
|
37
|
-
|
|
36
|
+
req.data = JSON.parse(fields._payload);
|
|
38
37
|
}
|
|
39
38
|
}
|
|
40
|
-
return mutableRequest;
|
|
41
39
|
}
|
|
42
|
-
return incomingRequest;
|
|
43
40
|
};
|
|
44
41
|
|
|
45
42
|
//# sourceMappingURL=addDataAndFileToRequest.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/addDataAndFileToRequest.ts"],"sourcesContent":["import type { PayloadRequest
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/addDataAndFileToRequest.ts"],"sourcesContent":["import type { PayloadRequest } from 'payload'\n\nimport { APIError } from 'payload'\n\nimport type { FetchAPIFileUploadOptions } from '../fetchAPI-multipart/index.js'\n\nimport { fetchAPIFileUpload } from '../fetchAPI-multipart/index.js'\n\ntype AddDataAndFileToRequest = (req: PayloadRequest) => Promise<void>\n\n/**\n * Mutates the Request, appending 'data' and 'file' if found\n */\nexport const addDataAndFileToRequest: AddDataAndFileToRequest = async (req) => {\n const { body, headers, method, payload } = req\n\n if (method && ['PATCH', 'POST', 'PUT'].includes(method.toUpperCase()) && body) {\n const [contentType] = (headers.get('Content-Type') || '').split(';')\n const bodyByteSize = parseInt(req.headers.get('Content-Length') || '0', 10)\n\n if (contentType === 'application/json') {\n let data = {}\n try {\n data = await req.json()\n } catch (error) {\n req.payload.logger.error(error)\n } finally {\n req.data = data\n req.json = () => Promise.resolve(data)\n }\n } else if (bodyByteSize && contentType.includes('multipart/')) {\n const { error, fields, files } = await fetchAPIFileUpload({\n options: payload.config.upload as FetchAPIFileUploadOptions,\n request: req as Request,\n })\n\n if (error) {\n throw new APIError(error.message)\n }\n\n if (files?.file) {\n req.file = files.file\n }\n\n if (fields?._payload && typeof fields._payload === 'string') {\n req.data = JSON.parse(fields._payload)\n }\n }\n }\n}\n"],"names":["APIError","fetchAPIFileUpload","addDataAndFileToRequest","req","body","headers","method","payload","includes","toUpperCase","contentType","get","split","bodyByteSize","parseInt","data","json","error","logger","Promise","resolve","fields","files","options","config","upload","request","message","file","_payload","JSON","parse"],"mappings":"AAEA,SAASA,QAAQ,QAAQ,UAAS;AAIlC,SAASC,kBAAkB,QAAQ,iCAAgC;AAInE;;CAEC,GACD,OAAO,MAAMC,0BAAmD,OAAOC;IACrE,MAAM,EAAEC,IAAI,EAAEC,OAAO,EAAEC,MAAM,EAAEC,OAAO,EAAE,GAAGJ;IAE3C,IAAIG,UAAU;QAAC;QAAS;QAAQ;KAAM,CAACE,QAAQ,CAACF,OAAOG,WAAW,OAAOL,MAAM;QAC7E,MAAM,CAACM,YAAY,GAAG,AAACL,CAAAA,QAAQM,GAAG,CAAC,mBAAmB,EAAC,EAAGC,KAAK,CAAC;QAChE,MAAMC,eAAeC,SAASX,IAAIE,OAAO,CAACM,GAAG,CAAC,qBAAqB,KAAK;QAExE,IAAID,gBAAgB,oBAAoB;YACtC,IAAIK,OAAO,CAAC;YACZ,IAAI;gBACFA,OAAO,MAAMZ,IAAIa,IAAI;YACvB,EAAE,OAAOC,OAAO;gBACdd,IAAII,OAAO,CAACW,MAAM,CAACD,KAAK,CAACA;YAC3B,SAAU;gBACRd,IAAIY,IAAI,GAAGA;gBACXZ,IAAIa,IAAI,GAAG,IAAMG,QAAQC,OAAO,CAACL;YACnC;QACF,OAAO,IAAIF,gBAAgBH,YAAYF,QAAQ,CAAC,eAAe;YAC7D,MAAM,EAAES,KAAK,EAAEI,MAAM,EAAEC,KAAK,EAAE,GAAG,MAAMrB,mBAAmB;gBACxDsB,SAAShB,QAAQiB,MAAM,CAACC,MAAM;gBAC9BC,SAASvB;YACX;YAEA,IAAIc,OAAO;gBACT,MAAM,IAAIjB,SAASiB,MAAMU,OAAO;YAClC;YAEA,IAAIL,OAAOM,MAAM;gBACfzB,IAAIyB,IAAI,GAAGN,MAAMM,IAAI;YACvB;YAEA,IAAIP,QAAQQ,YAAY,OAAOR,OAAOQ,QAAQ,KAAK,UAAU;gBAC3D1B,IAAIY,IAAI,GAAGe,KAAKC,KAAK,CAACV,OAAOQ,QAAQ;YACvC;QACF;IACF;AACF,EAAC"}
|
|
@@ -1,11 +1,8 @@
|
|
|
1
|
-
import type { PayloadRequest,
|
|
1
|
+
import type { PayloadRequest, SanitizedConfig } from 'payload';
|
|
2
2
|
/**
|
|
3
3
|
* Mutates the Request to contain 'locale' and 'fallbackLocale' based on data or searchParams
|
|
4
4
|
*/
|
|
5
|
-
|
|
6
|
-
request: PayloadRequest & PayloadRequestData;
|
|
7
|
-
};
|
|
8
|
-
export declare function addLocalesToRequestFromData({ request }: Args): PayloadRequestWithData;
|
|
5
|
+
export declare function addLocalesToRequestFromData(req: PayloadRequest): void;
|
|
9
6
|
type SanitizeLocalesArgs = {
|
|
10
7
|
fallbackLocale: string;
|
|
11
8
|
locale: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"addLocalesToRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/addLocalesToRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"addLocalesToRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/addLocalesToRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9D;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,cAAc,GAAG,IAAI,CA+BrE;AAED,KAAK,mBAAmB,GAAG;IACzB,cAAc,EAAE,MAAM,CAAA;IACtB,MAAM,EAAE,MAAM,CAAA;IACd,YAAY,EAAE,eAAe,CAAC,cAAc,CAAC,CAAA;CAC9C,CAAA;AACD,KAAK,qBAAqB,GAAG;IAC3B,cAAc,CAAC,EAAE,MAAM,CAAA;IACvB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB,CAAA;AACD,eAAO,MAAM,eAAe,8CAIzB,mBAAmB,KAAG,qBAiBxB,CAAA"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Mutates the Request to contain 'locale' and 'fallbackLocale' based on data or searchParams
|
|
3
|
+
*/ export function addLocalesToRequestFromData(req) {
|
|
4
|
+
const { data, payload: { config } } = req;
|
|
3
5
|
if (data) {
|
|
4
|
-
let localeOnReq =
|
|
5
|
-
let fallbackLocaleOnReq =
|
|
6
|
+
let localeOnReq = req.locale;
|
|
7
|
+
let fallbackLocaleOnReq = req.fallbackLocale;
|
|
6
8
|
if (!localeOnReq && data?.locale && typeof data.locale === 'string') {
|
|
7
9
|
localeOnReq = data.locale;
|
|
8
10
|
}
|
|
@@ -14,12 +16,9 @@ export function addLocalesToRequestFromData({ request }) {
|
|
|
14
16
|
locale: localeOnReq,
|
|
15
17
|
localization: config.localization
|
|
16
18
|
});
|
|
17
|
-
|
|
18
|
-
if (
|
|
19
|
-
if (fallbackLocale) mutableRequest.fallbackLocale = fallbackLocale;
|
|
20
|
-
return mutableRequest;
|
|
19
|
+
if (locale) req.locale = locale;
|
|
20
|
+
if (fallbackLocale) req.fallbackLocale = fallbackLocale;
|
|
21
21
|
}
|
|
22
|
-
return request;
|
|
23
22
|
}
|
|
24
23
|
export const sanitizeLocales = ({ fallbackLocale, locale, localization })=>{
|
|
25
24
|
if ([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/addLocalesToRequest.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/addLocalesToRequest.ts"],"sourcesContent":["import type { PayloadRequest, SanitizedConfig } from 'payload'\n\n/**\n * Mutates the Request to contain 'locale' and 'fallbackLocale' based on data or searchParams\n */\nexport function addLocalesToRequestFromData(req: PayloadRequest): void {\n const {\n data,\n payload: { config },\n } = req\n\n if (data) {\n let localeOnReq = req.locale\n let fallbackLocaleOnReq = req.fallbackLocale\n\n if (!localeOnReq && data?.locale && typeof data.locale === 'string') {\n localeOnReq = data.locale\n }\n\n if (\n !fallbackLocaleOnReq &&\n data?.['fallback-locale'] &&\n typeof data?.['fallback-locale'] === 'string'\n ) {\n fallbackLocaleOnReq = data['fallback-locale']\n }\n\n const { fallbackLocale, locale } = sanitizeLocales({\n fallbackLocale: fallbackLocaleOnReq,\n locale: localeOnReq,\n localization: config.localization,\n })\n\n if (locale) req.locale = locale\n if (fallbackLocale) req.fallbackLocale = fallbackLocale\n }\n}\n\ntype SanitizeLocalesArgs = {\n fallbackLocale: string\n locale: string\n localization: SanitizedConfig['localization']\n}\ntype SanitizeLocalesReturn = {\n fallbackLocale?: string\n locale?: string\n}\nexport const sanitizeLocales = ({\n fallbackLocale,\n locale,\n localization,\n}: SanitizeLocalesArgs): SanitizeLocalesReturn => {\n if (['none', 'null'].includes(fallbackLocale)) {\n fallbackLocale = 'null'\n } else if (localization && !localization.localeCodes.includes(fallbackLocale)) {\n fallbackLocale = localization.defaultLocale\n }\n\n if (locale === '*') {\n locale = 'all'\n } else if (localization && !localization.localeCodes.includes(locale)) {\n locale = localization.defaultLocale\n }\n\n return {\n fallbackLocale,\n locale,\n }\n}\n"],"names":["addLocalesToRequestFromData","req","data","payload","config","localeOnReq","locale","fallbackLocaleOnReq","fallbackLocale","sanitizeLocales","localization","includes","localeCodes","defaultLocale"],"mappings":"AAEA;;CAEC,GACD,OAAO,SAASA,4BAA4BC,GAAmB;IAC7D,MAAM,EACJC,IAAI,EACJC,SAAS,EAAEC,MAAM,EAAE,EACpB,GAAGH;IAEJ,IAAIC,MAAM;QACR,IAAIG,cAAcJ,IAAIK,MAAM;QAC5B,IAAIC,sBAAsBN,IAAIO,cAAc;QAE5C,IAAI,CAACH,eAAeH,MAAMI,UAAU,OAAOJ,KAAKI,MAAM,KAAK,UAAU;YACnED,cAAcH,KAAKI,MAAM;QAC3B;QAEA,IACE,CAACC,uBACDL,MAAM,CAAC,kBAAkB,IACzB,OAAOA,MAAM,CAAC,kBAAkB,KAAK,UACrC;YACAK,sBAAsBL,IAAI,CAAC,kBAAkB;QAC/C;QAEA,MAAM,EAAEM,cAAc,EAAEF,MAAM,EAAE,GAAGG,gBAAgB;YACjDD,gBAAgBD;YAChBD,QAAQD;YACRK,cAAcN,OAAOM,YAAY;QACnC;QAEA,IAAIJ,QAAQL,IAAIK,MAAM,GAAGA;QACzB,IAAIE,gBAAgBP,IAAIO,cAAc,GAAGA;IAC3C;AACF;AAWA,OAAO,MAAMC,kBAAkB,CAAC,EAC9BD,cAAc,EACdF,MAAM,EACNI,YAAY,EACQ;IACpB,IAAI;QAAC;QAAQ;KAAO,CAACC,QAAQ,CAACH,iBAAiB;QAC7CA,iBAAiB;IACnB,OAAO,IAAIE,gBAAgB,CAACA,aAAaE,WAAW,CAACD,QAAQ,CAACH,iBAAiB;QAC7EA,iBAAiBE,aAAaG,aAAa;IAC7C;IAEA,IAAIP,WAAW,KAAK;QAClBA,SAAS;IACX,OAAO,IAAII,gBAAgB,CAACA,aAAaE,WAAW,CAACD,QAAQ,CAACL,SAAS;QACrEA,SAASI,aAAaG,aAAa;IACrC;IAEA,OAAO;QACLL;QACAF;IACF;AACF,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"createPayloadRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/createPayloadRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkC,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAW9F,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,gDAI9B,IAAI,KAAG,OAAO,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"createPayloadRequest.d.ts","sourceRoot":"","sources":["../../src/utilities/createPayloadRequest.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAkC,cAAc,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAW9F,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QACP,UAAU,EAAE,MAAM,CAAA;KACnB,CAAA;IACD,OAAO,EAAE,OAAO,CAAA;CACjB,CAAA;AAED,eAAO,MAAM,oBAAoB,gDAI9B,IAAI,KAAG,OAAO,CAAC,cAAc,CAuF/B,CAAA"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { initI18n } from '@payloadcms/translations';
|
|
2
2
|
import { executeAuthStrategies, getDataLoader, parseCookies } from 'payload';
|
|
3
|
-
import qs from 'qs';
|
|
3
|
+
import * as qs from 'qs-esm';
|
|
4
4
|
import { URL } from 'url';
|
|
5
5
|
import { sanitizeLocales } from './addLocalesToRequest.js';
|
|
6
6
|
import { getPayloadHMR } from './getPayloadHMR.js';
|
|
@@ -68,11 +68,13 @@ export const createPayloadRequest = async ({ config: configPromise, params, requ
|
|
|
68
68
|
};
|
|
69
69
|
const req = Object.assign(request, customRequest);
|
|
70
70
|
req.payloadDataLoader = getDataLoader(req);
|
|
71
|
-
|
|
71
|
+
const { responseHeaders, user } = await executeAuthStrategies({
|
|
72
72
|
headers: req.headers,
|
|
73
73
|
isGraphQL,
|
|
74
74
|
payload
|
|
75
75
|
});
|
|
76
|
+
req.user = user;
|
|
77
|
+
if (responseHeaders) req.responseHeaders = responseHeaders;
|
|
76
78
|
return req;
|
|
77
79
|
};
|
|
78
80
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/createPayloadRequest.ts"],"sourcesContent":["import type { CustomPayloadRequestProperties, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { executeAuthStrategies, getDataLoader, parseCookies } from 'payload'\nimport qs from 'qs'\nimport { URL } from 'url'\n\nimport { sanitizeLocales } from './addLocalesToRequest.js'\nimport { getPayloadHMR } from './getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: {\n collection: string\n }\n request: Request\n}\n\nexport const createPayloadRequest = async ({\n config: configPromise,\n params,\n request,\n}: Args): Promise<PayloadRequest> => {\n const cookies = parseCookies(request.headers)\n const payload = await getPayloadHMR({ config: configPromise })\n\n const { config } = payload\n\n const urlProperties = new URL(request.url)\n const { pathname, searchParams } = urlProperties\n\n const isGraphQL =\n !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`\n\n const language = getRequestLanguage({\n config,\n cookies,\n headers: request.headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'api',\n language,\n })\n\n let locale\n let fallbackLocale\n if (config.localization) {\n const locales = sanitizeLocales({\n fallbackLocale: searchParams.get('fallback-locale'),\n locale: searchParams.get('locale'),\n localization: payload.config.localization,\n })\n locale = locales.locale\n fallbackLocale = locales.fallbackLocale\n }\n\n const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override')\n const queryToParse = overrideHttpMethod === 'GET' ? await request.text() : urlProperties.search\n\n const query = queryToParse\n ? qs.parse(queryToParse, {\n arrayLimit: 1000,\n depth: 10,\n ignoreQueryPrefix: true,\n })\n : {}\n\n const customRequest: CustomPayloadRequestProperties = {\n context: {},\n fallbackLocale,\n hash: urlProperties.hash,\n host: urlProperties.host,\n href: urlProperties.href,\n i18n,\n locale,\n origin: urlProperties.origin,\n pathname: urlProperties.pathname,\n payload,\n payloadAPI: isGraphQL ? 'GraphQL' : 'REST',\n payloadDataLoader: undefined,\n payloadUploadSizes: {},\n port: urlProperties.port,\n protocol: urlProperties.protocol,\n query,\n routeParams: params || {},\n search: urlProperties.search,\n searchParams: urlProperties.searchParams,\n t: i18n.t,\n transactionID: undefined,\n user: null,\n }\n\n const req: PayloadRequest = Object.assign(request, customRequest)\n\n req.payloadDataLoader = getDataLoader(req)\n\n
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/createPayloadRequest.ts"],"sourcesContent":["import type { CustomPayloadRequestProperties, PayloadRequest, SanitizedConfig } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { executeAuthStrategies, getDataLoader, parseCookies } from 'payload'\nimport * as qs from 'qs-esm'\nimport { URL } from 'url'\n\nimport { sanitizeLocales } from './addLocalesToRequest.js'\nimport { getPayloadHMR } from './getPayloadHMR.js'\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\ntype Args = {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: {\n collection: string\n }\n request: Request\n}\n\nexport const createPayloadRequest = async ({\n config: configPromise,\n params,\n request,\n}: Args): Promise<PayloadRequest> => {\n const cookies = parseCookies(request.headers)\n const payload = await getPayloadHMR({ config: configPromise })\n\n const { config } = payload\n\n const urlProperties = new URL(request.url)\n const { pathname, searchParams } = urlProperties\n\n const isGraphQL =\n !config.graphQL.disable && pathname === `${config.routes.api}${config.routes.graphQL}`\n\n const language = getRequestLanguage({\n config,\n cookies,\n headers: request.headers,\n })\n\n const i18n = await initI18n({\n config: config.i18n,\n context: 'api',\n language,\n })\n\n let locale\n let fallbackLocale\n if (config.localization) {\n const locales = sanitizeLocales({\n fallbackLocale: searchParams.get('fallback-locale'),\n locale: searchParams.get('locale'),\n localization: payload.config.localization,\n })\n locale = locales.locale\n fallbackLocale = locales.fallbackLocale\n }\n\n const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override')\n const queryToParse = overrideHttpMethod === 'GET' ? await request.text() : urlProperties.search\n\n const query = queryToParse\n ? qs.parse(queryToParse, {\n arrayLimit: 1000,\n depth: 10,\n ignoreQueryPrefix: true,\n })\n : {}\n\n const customRequest: CustomPayloadRequestProperties = {\n context: {},\n fallbackLocale,\n hash: urlProperties.hash,\n host: urlProperties.host,\n href: urlProperties.href,\n i18n,\n locale,\n origin: urlProperties.origin,\n pathname: urlProperties.pathname,\n payload,\n payloadAPI: isGraphQL ? 'GraphQL' : 'REST',\n payloadDataLoader: undefined,\n payloadUploadSizes: {},\n port: urlProperties.port,\n protocol: urlProperties.protocol,\n query,\n routeParams: params || {},\n search: urlProperties.search,\n searchParams: urlProperties.searchParams,\n t: i18n.t,\n transactionID: undefined,\n user: null,\n }\n\n const req: PayloadRequest = Object.assign(request, customRequest)\n\n req.payloadDataLoader = getDataLoader(req)\n\n const { responseHeaders, user } = await executeAuthStrategies({\n headers: req.headers,\n isGraphQL,\n payload,\n })\n\n req.user = user\n\n if (responseHeaders) req.responseHeaders = responseHeaders\n\n return req\n}\n"],"names":["initI18n","executeAuthStrategies","getDataLoader","parseCookies","qs","URL","sanitizeLocales","getPayloadHMR","getRequestLanguage","createPayloadRequest","config","configPromise","params","request","cookies","headers","payload","urlProperties","url","pathname","searchParams","isGraphQL","graphQL","disable","routes","api","language","i18n","context","locale","fallbackLocale","localization","locales","get","overrideHttpMethod","queryToParse","text","search","query","parse","arrayLimit","depth","ignoreQueryPrefix","customRequest","hash","host","href","origin","payloadAPI","payloadDataLoader","undefined","payloadUploadSizes","port","protocol","routeParams","t","transactionID","user","req","Object","assign","responseHeaders"],"mappings":"AAEA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,qBAAqB,EAAEC,aAAa,EAAEC,YAAY,QAAQ,UAAS;AAC5E,YAAYC,QAAQ,SAAQ;AAC5B,SAASC,GAAG,QAAQ,MAAK;AAEzB,SAASC,eAAe,QAAQ,2BAA0B;AAC1D,SAASC,aAAa,QAAQ,qBAAoB;AAClD,SAASC,kBAAkB,QAAQ,0BAAyB;AAU5D,OAAO,MAAMC,uBAAuB,OAAO,EACzCC,QAAQC,aAAa,EACrBC,MAAM,EACNC,OAAO,EACF;IACL,MAAMC,UAAUX,aAAaU,QAAQE,OAAO;IAC5C,MAAMC,UAAU,MAAMT,cAAc;QAAEG,QAAQC;IAAc;IAE5D,MAAM,EAAED,MAAM,EAAE,GAAGM;IAEnB,MAAMC,gBAAgB,IAAIZ,IAAIQ,QAAQK,GAAG;IACzC,MAAM,EAAEC,QAAQ,EAAEC,YAAY,EAAE,GAAGH;IAEnC,MAAMI,YACJ,CAACX,OAAOY,OAAO,CAACC,OAAO,IAAIJ,aAAa,CAAC,EAAET,OAAOc,MAAM,CAACC,GAAG,CAAC,EAAEf,OAAOc,MAAM,CAACF,OAAO,CAAC,CAAC;IAExF,MAAMI,WAAWlB,mBAAmB;QAClCE;QACAI;QACAC,SAASF,QAAQE,OAAO;IAC1B;IAEA,MAAMY,OAAO,MAAM3B,SAAS;QAC1BU,QAAQA,OAAOiB,IAAI;QACnBC,SAAS;QACTF;IACF;IAEA,IAAIG;IACJ,IAAIC;IACJ,IAAIpB,OAAOqB,YAAY,EAAE;QACvB,MAAMC,UAAU1B,gBAAgB;YAC9BwB,gBAAgBV,aAAaa,GAAG,CAAC;YACjCJ,QAAQT,aAAaa,GAAG,CAAC;YACzBF,cAAcf,QAAQN,MAAM,CAACqB,YAAY;QAC3C;QACAF,SAASG,QAAQH,MAAM;QACvBC,iBAAiBE,QAAQF,cAAc;IACzC;IAEA,MAAMI,qBAAqBrB,QAAQE,OAAO,CAACkB,GAAG,CAAC;IAC/C,MAAME,eAAeD,uBAAuB,QAAQ,MAAMrB,QAAQuB,IAAI,KAAKnB,cAAcoB,MAAM;IAE/F,MAAMC,QAAQH,eACV/B,GAAGmC,KAAK,CAACJ,cAAc;QACrBK,YAAY;QACZC,OAAO;QACPC,mBAAmB;IACrB,KACA,CAAC;IAEL,MAAMC,gBAAgD;QACpDf,SAAS,CAAC;QACVE;QACAc,MAAM3B,cAAc2B,IAAI;QACxBC,MAAM5B,cAAc4B,IAAI;QACxBC,MAAM7B,cAAc6B,IAAI;QACxBnB;QACAE;QACAkB,QAAQ9B,cAAc8B,MAAM;QAC5B5B,UAAUF,cAAcE,QAAQ;QAChCH;QACAgC,YAAY3B,YAAY,YAAY;QACpC4B,mBAAmBC;QACnBC,oBAAoB,CAAC;QACrBC,MAAMnC,cAAcmC,IAAI;QACxBC,UAAUpC,cAAcoC,QAAQ;QAChCf;QACAgB,aAAa1C,UAAU,CAAC;QACxByB,QAAQpB,cAAcoB,MAAM;QAC5BjB,cAAcH,cAAcG,YAAY;QACxCmC,GAAG5B,KAAK4B,CAAC;QACTC,eAAeN;QACfO,MAAM;IACR;IAEA,MAAMC,MAAsBC,OAAOC,MAAM,CAAC/C,SAAS8B;IAEnDe,IAAIT,iBAAiB,GAAG/C,cAAcwD;IAEtC,MAAM,EAAEG,eAAe,EAAEJ,IAAI,EAAE,GAAG,MAAMxD,sBAAsB;QAC5Dc,SAAS2C,IAAI3C,OAAO;QACpBM;QACAL;IACF;IAEA0C,IAAID,IAAI,GAAGA;IAEX,IAAII,iBAAiBH,IAAIG,eAAe,GAAGA;IAE3C,OAAOH;AACT,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/getNextRequestI18n.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { SanitizedConfig } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { cookies, headers } from 'next/headers.js'\n\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\n/**\n * In the context of Next.js, this function initializes the i18n object for the current request.\n *\n * It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.\n */\nexport const getNextRequestI18n = async ({ config }: { config: SanitizedConfig }): Promise<I18n> =>\n initI18n({\n config: config.i18n,\n context: 'client',\n language: getRequestLanguage({ config, cookies: cookies(), headers: headers() }),\n })\n"],"names":["initI18n","cookies","headers","getRequestLanguage","getNextRequestI18n","config","i18n","context","language"],"
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/getNextRequestI18n.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { SanitizedConfig } from 'payload'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { cookies, headers } from 'next/headers.js'\n\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\n/**\n * In the context of Next.js, this function initializes the i18n object for the current request.\n *\n * It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.\n */\nexport const getNextRequestI18n = async ({ config }: { config: SanitizedConfig }): Promise<I18n> =>\n initI18n({\n config: config.i18n,\n context: 'client',\n language: getRequestLanguage({ config, cookies: cookies(), headers: headers() }),\n })\n"],"names":["initI18n","cookies","headers","getRequestLanguage","getNextRequestI18n","config","i18n","context","language"],"mappings":"AAGA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,OAAO,EAAEC,OAAO,QAAQ,kBAAiB;AAElD,SAASC,kBAAkB,QAAQ,0BAAyB;AAE5D;;;;CAIC,GACD,OAAO,MAAMC,qBAAqB,OAAO,EAAEC,MAAM,EAA+B,GAC9EL,SAAS;QACPK,QAAQA,OAAOC,IAAI;QACnBC,SAAS;QACTC,UAAUL,mBAAmB;YAAEE;YAAQJ,SAASA;YAAWC,SAASA;QAAU;IAChF,GAAE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getPayloadHMR.d.ts","sourceRoot":"","sources":["../../src/utilities/getPayloadHMR.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"getPayloadHMR.d.ts","sourceRoot":"","sources":["../../src/utilities/getPayloadHMR.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAepE,eAAO,MAAM,MAAM,WAAkB,eAAe,WAAW,OAAO,KAAG,OAAO,CAAC,IAAI,CAmCpF,CAAA;AAED,eAAO,MAAM,aAAa,YAAmB,WAAW,KAAG,OAAO,CAAC,OAAO,CAgEzE,CAAA"}
|
|
@@ -2,7 +2,6 @@ import { BasePayload } from 'payload';
|
|
|
2
2
|
import WebSocket from 'ws';
|
|
3
3
|
let cached = global._payload;
|
|
4
4
|
if (!cached) {
|
|
5
|
-
// eslint-disable-next-line no-multi-assign
|
|
6
5
|
cached = global._payload = {
|
|
7
6
|
payload: null,
|
|
8
7
|
promise: null,
|
|
@@ -45,14 +44,16 @@ export const reload = async (config, payload)=>{
|
|
|
45
44
|
};
|
|
46
45
|
export const getPayloadHMR = async (options)=>{
|
|
47
46
|
if (!options?.config) {
|
|
48
|
-
throw new Error('Error: the payload config is required for
|
|
47
|
+
throw new Error('Error: the payload config is required for getPayloadHMR to work.');
|
|
49
48
|
}
|
|
50
49
|
if (cached.payload) {
|
|
51
|
-
const config = await options.config // TODO: check if we can move this inside the cached.reload === true condition
|
|
52
|
-
;
|
|
53
50
|
if (cached.reload === true) {
|
|
54
51
|
let resolve;
|
|
52
|
+
// getPayloadHMR is called multiple times, in parallel. However, we only want to run `await reload` once. By immediately setting cached.reload to a promise,
|
|
53
|
+
// we can ensure that all subsequent calls will wait for the first reload to finish. So if we set it here, the 2nd call of getPayloadHMR
|
|
54
|
+
// will reach `if (cached.reload instanceof Promise) {` which then waits for the first reload to finish.
|
|
55
55
|
cached.reload = new Promise((res)=>resolve = res);
|
|
56
|
+
const config = await options.config;
|
|
56
57
|
await reload(config, cached.payload);
|
|
57
58
|
resolve();
|
|
58
59
|
}
|
|
@@ -62,6 +63,7 @@ export const getPayloadHMR = async (options)=>{
|
|
|
62
63
|
return cached.payload;
|
|
63
64
|
}
|
|
64
65
|
if (!cached.promise) {
|
|
66
|
+
// no need to await options.config here, as it's already awaited in the BasePayload.init
|
|
65
67
|
cached.promise = new BasePayload().init(options);
|
|
66
68
|
}
|
|
67
69
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/getPayloadHMR.ts"],"sourcesContent":["import type { InitOptions, Payload, SanitizedConfig } from 'payload'\n\nimport { BasePayload } from 'payload'\nimport WebSocket from 'ws'\n\nlet cached: {\n payload: Payload | null\n promise: Promise<Payload> | null\n reload: Promise<void> | boolean\n} = global._payload\n\nif (!cached) {\n cached = global._payload = { payload: null, promise: null, reload: false }\n}\n\nexport const reload = async (config: SanitizedConfig, payload: Payload): Promise<void> => {\n if (typeof payload.db.destroy === 'function') {\n await payload.db.destroy()\n }\n\n payload.config = config\n\n payload.collections = config.collections.reduce((collections, collection) => {\n collections[collection.slug] = {\n config: collection,\n customIDType: payload.collections[collection.slug]?.customIDType,\n }\n return collections\n }, {})\n\n payload.globals = {\n config: config.globals,\n }\n\n // TODO: support HMR for other props in the future (see payload/src/index init()) hat may change on Payload singleton\n\n // Generate types\n if (config.typescript.autoGenerate !== false) {\n // We cannot run it directly here, as generate-types imports json-schema-to-typescript, which breaks on turbopack.\n // see: https://github.com/vercel/next.js/issues/66723\n void payload.bin({\n args: ['generate:types'],\n log: false,\n })\n }\n\n await payload.db.init()\n if (payload.db.connect) {\n await payload.db.connect({ hotReload: true })\n }\n}\n\nexport const getPayloadHMR = async (options: InitOptions): Promise<Payload> => {\n if (!options?.config) {\n throw new Error('Error: the payload config is required for getPayloadHMR to work.')\n }\n\n if (cached.payload) {\n if (cached.reload === true) {\n let resolve: () => void\n\n // getPayloadHMR is called multiple times, in parallel. However, we only want to run `await reload` once. By immediately setting cached.reload to a promise,\n // we can ensure that all subsequent calls will wait for the first reload to finish. So if we set it here, the 2nd call of getPayloadHMR\n // will reach `if (cached.reload instanceof Promise) {` which then waits for the first reload to finish.\n cached.reload = new Promise((res) => (resolve = res))\n const config = await options.config\n await reload(config, cached.payload)\n\n resolve()\n }\n\n if (cached.reload instanceof Promise) {\n await cached.reload\n }\n\n return cached.payload\n }\n\n if (!cached.promise) {\n // no need to await options.config here, as it's already awaited in the BasePayload.init\n cached.promise = new BasePayload().init(options)\n }\n\n try {\n cached.payload = await cached.promise\n\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n process.env.DISABLE_PAYLOAD_HMR !== 'true'\n ) {\n try {\n const port = process.env.PORT || '3000'\n const ws = new WebSocket(\n `ws://localhost:${port}${process.env.NEXT_BASE_PATH ?? ''}/_next/webpack-hmr`,\n )\n\n ws.onmessage = (event) => {\n if (typeof event.data === 'string') {\n const data = JSON.parse(event.data)\n\n if ('action' in data && data.action === 'serverComponentChanges') {\n cached.reload = true\n }\n }\n }\n } catch (_) {\n // swallow e\n }\n }\n } catch (e) {\n cached.promise = null\n throw e\n }\n\n return cached.payload\n}\n"],"names":["BasePayload","WebSocket","cached","global","_payload","payload","promise","reload","config","db","destroy","collections","reduce","collection","slug","customIDType","globals","typescript","autoGenerate","bin","args","log","init","connect","hotReload","getPayloadHMR","options","Error","resolve","Promise","res","process","env","NODE_ENV","DISABLE_PAYLOAD_HMR","port","PORT","ws","NEXT_BASE_PATH","onmessage","event","data","JSON","parse","action","_","e"],"mappings":"AAEA,SAASA,WAAW,QAAQ,UAAS;AACrC,OAAOC,eAAe,KAAI;AAE1B,IAAIC,SAIAC,OAAOC,QAAQ;AAEnB,IAAI,CAACF,QAAQ;IACXA,SAASC,OAAOC,QAAQ,GAAG;QAAEC,SAAS;QAAMC,SAAS;QAAMC,QAAQ;IAAM;AAC3E;AAEA,OAAO,MAAMA,SAAS,OAAOC,QAAyBH;IACpD,IAAI,OAAOA,QAAQI,EAAE,CAACC,OAAO,KAAK,YAAY;QAC5C,MAAML,QAAQI,EAAE,CAACC,OAAO;IAC1B;IAEAL,QAAQG,MAAM,GAAGA;IAEjBH,QAAQM,WAAW,GAAGH,OAAOG,WAAW,CAACC,MAAM,CAAC,CAACD,aAAaE;QAC5DF,WAAW,CAACE,WAAWC,IAAI,CAAC,GAAG;YAC7BN,QAAQK;YACRE,cAAcV,QAAQM,WAAW,CAACE,WAAWC,IAAI,CAAC,EAAEC;QACtD;QACA,OAAOJ;IACT,GAAG,CAAC;IAEJN,QAAQW,OAAO,GAAG;QAChBR,QAAQA,OAAOQ,OAAO;IACxB;IAEA,qHAAqH;IAErH,iBAAiB;IACjB,IAAIR,OAAOS,UAAU,CAACC,YAAY,KAAK,OAAO;QAC5C,kHAAkH;QAClH,sDAAsD;QACtD,KAAKb,QAAQc,GAAG,CAAC;YACfC,MAAM;gBAAC;aAAiB;YACxBC,KAAK;QACP;IACF;IAEA,MAAMhB,QAAQI,EAAE,CAACa,IAAI;IACrB,IAAIjB,QAAQI,EAAE,CAACc,OAAO,EAAE;QACtB,MAAMlB,QAAQI,EAAE,CAACc,OAAO,CAAC;YAAEC,WAAW;QAAK;IAC7C;AACF,EAAC;AAED,OAAO,MAAMC,gBAAgB,OAAOC;IAClC,IAAI,CAACA,SAASlB,QAAQ;QACpB,MAAM,IAAImB,MAAM;IAClB;IAEA,IAAIzB,OAAOG,OAAO,EAAE;QAClB,IAAIH,OAAOK,MAAM,KAAK,MAAM;YAC1B,IAAIqB;YAEJ,4JAA4J;YAC5J,wIAAwI;YACxI,wGAAwG;YACxG1B,OAAOK,MAAM,GAAG,IAAIsB,QAAQ,CAACC,MAASF,UAAUE;YAChD,MAAMtB,SAAS,MAAMkB,QAAQlB,MAAM;YACnC,MAAMD,OAAOC,QAAQN,OAAOG,OAAO;YAEnCuB;QACF;QAEA,IAAI1B,OAAOK,MAAM,YAAYsB,SAAS;YACpC,MAAM3B,OAAOK,MAAM;QACrB;QAEA,OAAOL,OAAOG,OAAO;IACvB;IAEA,IAAI,CAACH,OAAOI,OAAO,EAAE;QACnB,wFAAwF;QACxFJ,OAAOI,OAAO,GAAG,IAAIN,cAAcsB,IAAI,CAACI;IAC1C;IAEA,IAAI;QACFxB,OAAOG,OAAO,GAAG,MAAMH,OAAOI,OAAO;QAErC,IACEyB,QAAQC,GAAG,CAACC,QAAQ,KAAK,gBACzBF,QAAQC,GAAG,CAACC,QAAQ,KAAK,UACzBF,QAAQC,GAAG,CAACE,mBAAmB,KAAK,QACpC;YACA,IAAI;gBACF,MAAMC,OAAOJ,QAAQC,GAAG,CAACI,IAAI,IAAI;gBACjC,MAAMC,KAAK,IAAIpC,UACb,CAAC,eAAe,EAAEkC,KAAK,EAAEJ,QAAQC,GAAG,CAACM,cAAc,IAAI,GAAG,kBAAkB,CAAC;gBAG/ED,GAAGE,SAAS,GAAG,CAACC;oBACd,IAAI,OAAOA,MAAMC,IAAI,KAAK,UAAU;wBAClC,MAAMA,OAAOC,KAAKC,KAAK,CAACH,MAAMC,IAAI;wBAElC,IAAI,YAAYA,QAAQA,KAAKG,MAAM,KAAK,0BAA0B;4BAChE1C,OAAOK,MAAM,GAAG;wBAClB;oBACF;gBACF;YACF,EAAE,OAAOsC,GAAG;YACV,YAAY;YACd;QACF;IACF,EAAE,OAAOC,GAAG;QACV5C,OAAOI,OAAO,GAAG;QACjB,MAAMwC;IACR;IAEA,OAAO5C,OAAOG,OAAO;AACvB,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/getRequestLanguage.ts"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { ReadonlyRequestCookies } from 'next/dist/server/web/spec-extension/adapters/request-cookies.js'\nimport type { SanitizedConfig } from 'payload'\n\nimport { extractHeaderLanguage } from '@payloadcms/translations'\n\ntype GetRequestLanguageArgs = {\n config: SanitizedConfig\n cookies: Map<string, string> | ReadonlyRequestCookies\n defaultLanguage?: AcceptedLanguages\n headers: Request['headers']\n}\n\nexport const getRequestLanguage = ({\n config,\n cookies,\n headers,\n}: GetRequestLanguageArgs): AcceptedLanguages => {\n const supportedLanguageKeys = <AcceptedLanguages[]>Object.keys(config.i18n.supportedLanguages)\n const langCookie = cookies.get(`${config.cookiePrefix || 'payload'}-lng`)\n\n const languageFromCookie: AcceptedLanguages = (\n typeof langCookie === 'string' ? langCookie : langCookie?.value\n ) as AcceptedLanguages\n\n if (languageFromCookie && supportedLanguageKeys.includes(languageFromCookie)) {\n return languageFromCookie\n }\n\n const languageFromHeader = headers.get('Accept-Language')\n ? extractHeaderLanguage(headers.get('Accept-Language'))\n : undefined\n\n if (languageFromHeader && supportedLanguageKeys.includes(languageFromHeader)) {\n return languageFromHeader\n }\n\n return config.i18n.fallbackLanguage\n}\n"],"names":["extractHeaderLanguage","getRequestLanguage","config","cookies","headers","supportedLanguageKeys","Object","keys","i18n","supportedLanguages","langCookie","get","cookiePrefix","languageFromCookie","value","includes","languageFromHeader","undefined","fallbackLanguage"],"
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/getRequestLanguage.ts"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { ReadonlyRequestCookies } from 'next/dist/server/web/spec-extension/adapters/request-cookies.js'\nimport type { SanitizedConfig } from 'payload'\n\nimport { extractHeaderLanguage } from '@payloadcms/translations'\n\ntype GetRequestLanguageArgs = {\n config: SanitizedConfig\n cookies: Map<string, string> | ReadonlyRequestCookies\n defaultLanguage?: AcceptedLanguages\n headers: Request['headers']\n}\n\nexport const getRequestLanguage = ({\n config,\n cookies,\n headers,\n}: GetRequestLanguageArgs): AcceptedLanguages => {\n const supportedLanguageKeys = <AcceptedLanguages[]>Object.keys(config.i18n.supportedLanguages)\n const langCookie = cookies.get(`${config.cookiePrefix || 'payload'}-lng`)\n\n const languageFromCookie: AcceptedLanguages = (\n typeof langCookie === 'string' ? langCookie : langCookie?.value\n ) as AcceptedLanguages\n\n if (languageFromCookie && supportedLanguageKeys.includes(languageFromCookie)) {\n return languageFromCookie\n }\n\n const languageFromHeader = headers.get('Accept-Language')\n ? extractHeaderLanguage(headers.get('Accept-Language'))\n : undefined\n\n if (languageFromHeader && supportedLanguageKeys.includes(languageFromHeader)) {\n return languageFromHeader\n }\n\n return config.i18n.fallbackLanguage\n}\n"],"names":["extractHeaderLanguage","getRequestLanguage","config","cookies","headers","supportedLanguageKeys","Object","keys","i18n","supportedLanguages","langCookie","get","cookiePrefix","languageFromCookie","value","includes","languageFromHeader","undefined","fallbackLanguage"],"mappings":"AAIA,SAASA,qBAAqB,QAAQ,2BAA0B;AAShE,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,OAAO,EACPC,OAAO,EACgB;IACvB,MAAMC,wBAA6CC,OAAOC,IAAI,CAACL,OAAOM,IAAI,CAACC,kBAAkB;IAC7F,MAAMC,aAAaP,QAAQQ,GAAG,CAAC,CAAC,EAAET,OAAOU,YAAY,IAAI,UAAU,IAAI,CAAC;IAExE,MAAMC,qBACJ,OAAOH,eAAe,WAAWA,aAAaA,YAAYI;IAG5D,IAAID,sBAAsBR,sBAAsBU,QAAQ,CAACF,qBAAqB;QAC5E,OAAOA;IACT;IAEA,MAAMG,qBAAqBZ,QAAQO,GAAG,CAAC,qBACnCX,sBAAsBI,QAAQO,GAAG,CAAC,sBAClCM;IAEJ,IAAID,sBAAsBX,sBAAsBU,QAAQ,CAACC,qBAAqB;QAC5E,OAAOA;IACT;IAEA,OAAOd,OAAOM,IAAI,CAACU,gBAAgB;AACrC,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/getRequestLocales.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\ntype GetRequestLocalesArgs = {\n data?: Record<string, any>\n localization: Exclude<Payload['config']['localization'], false>\n searchParams?: URLSearchParams\n}\nexport function getRequestLocales({ data, localization, searchParams }: GetRequestLocalesArgs): {\n fallbackLocale: string\n locale: string\n} {\n let locale = searchParams.get('locale')\n let fallbackLocale = searchParams.get('fallback-locale')\n\n if (data) {\n if (data?.locale) {\n locale = data.locale\n }\n if (data?.['fallback-locale']) {\n fallbackLocale = data['fallback-locale']\n }\n }\n\n if (fallbackLocale === 'none') {\n fallbackLocale = 'null'\n } else if (!localization.localeCodes.includes(fallbackLocale)) {\n fallbackLocale = localization.defaultLocale\n }\n\n if (locale === '*') {\n locale = 'all'\n } else if (!localization.localeCodes.includes(locale)) {\n locale = localization.defaultLocale\n }\n\n return {\n fallbackLocale,\n locale,\n }\n}\n"],"names":["getRequestLocales","data","localization","searchParams","locale","get","fallbackLocale","localeCodes","includes","defaultLocale"],"
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/getRequestLocales.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\ntype GetRequestLocalesArgs = {\n data?: Record<string, any>\n localization: Exclude<Payload['config']['localization'], false>\n searchParams?: URLSearchParams\n}\nexport function getRequestLocales({ data, localization, searchParams }: GetRequestLocalesArgs): {\n fallbackLocale: string\n locale: string\n} {\n let locale = searchParams.get('locale')\n let fallbackLocale = searchParams.get('fallback-locale')\n\n if (data) {\n if (data?.locale) {\n locale = data.locale\n }\n if (data?.['fallback-locale']) {\n fallbackLocale = data['fallback-locale']\n }\n }\n\n if (fallbackLocale === 'none') {\n fallbackLocale = 'null'\n } else if (!localization.localeCodes.includes(fallbackLocale)) {\n fallbackLocale = localization.defaultLocale\n }\n\n if (locale === '*') {\n locale = 'all'\n } else if (!localization.localeCodes.includes(locale)) {\n locale = localization.defaultLocale\n }\n\n return {\n fallbackLocale,\n locale,\n }\n}\n"],"names":["getRequestLocales","data","localization","searchParams","locale","get","fallbackLocale","localeCodes","includes","defaultLocale"],"mappings":"AAOA,OAAO,SAASA,kBAAkB,EAAEC,IAAI,EAAEC,YAAY,EAAEC,YAAY,EAAyB;IAI3F,IAAIC,SAASD,aAAaE,GAAG,CAAC;IAC9B,IAAIC,iBAAiBH,aAAaE,GAAG,CAAC;IAEtC,IAAIJ,MAAM;QACR,IAAIA,MAAMG,QAAQ;YAChBA,SAASH,KAAKG,MAAM;QACtB;QACA,IAAIH,MAAM,CAAC,kBAAkB,EAAE;YAC7BK,iBAAiBL,IAAI,CAAC,kBAAkB;QAC1C;IACF;IAEA,IAAIK,mBAAmB,QAAQ;QAC7BA,iBAAiB;IACnB,OAAO,IAAI,CAACJ,aAAaK,WAAW,CAACC,QAAQ,CAACF,iBAAiB;QAC7DA,iBAAiBJ,aAAaO,aAAa;IAC7C;IAEA,IAAIL,WAAW,KAAK;QAClBA,SAAS;IACX,OAAO,IAAI,CAACF,aAAaK,WAAW,CAACC,QAAQ,CAACJ,SAAS;QACrDA,SAASF,aAAaO,aAAa;IACrC;IAEA,OAAO;QACLH;QACAF;IACF;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/getRequestTheme.ts"],"sourcesContent":["import type { ReadonlyRequestCookies } from 'next/dist/server/web/spec-extension/adapters/request-cookies.js'\nimport type { SanitizedConfig } from 'payload'\n\nimport { type Theme, defaultTheme } from '@payloadcms/ui'\n\ntype GetRequestLanguageArgs = {\n config: SanitizedConfig\n cookies: Map<string, string> | ReadonlyRequestCookies\n headers: Request['headers']\n}\n\nconst acceptedThemes: Theme[] = ['dark', 'light']\n\nexport const getRequestTheme = ({ config, cookies, headers }: GetRequestLanguageArgs): Theme => {\n const themeCookie = cookies.get(`${config.cookiePrefix || 'payload'}-theme`)\n\n const themeFromCookie: Theme = (\n typeof themeCookie === 'string' ? themeCookie : themeCookie?.value\n ) as Theme\n\n if (themeFromCookie && acceptedThemes.includes(themeFromCookie)) {\n return themeFromCookie\n }\n\n const themeFromHeader = headers.get('Sec-CH-Prefers-Color-Scheme') as Theme\n\n if (themeFromHeader && acceptedThemes.includes(themeFromHeader)) {\n return themeFromHeader\n }\n\n return defaultTheme\n}\n"],"names":["defaultTheme","acceptedThemes","getRequestTheme","config","cookies","headers","themeCookie","get","cookiePrefix","themeFromCookie","value","includes","themeFromHeader"],"
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/getRequestTheme.ts"],"sourcesContent":["import type { ReadonlyRequestCookies } from 'next/dist/server/web/spec-extension/adapters/request-cookies.js'\nimport type { SanitizedConfig } from 'payload'\n\nimport { type Theme, defaultTheme } from '@payloadcms/ui'\n\ntype GetRequestLanguageArgs = {\n config: SanitizedConfig\n cookies: Map<string, string> | ReadonlyRequestCookies\n headers: Request['headers']\n}\n\nconst acceptedThemes: Theme[] = ['dark', 'light']\n\nexport const getRequestTheme = ({ config, cookies, headers }: GetRequestLanguageArgs): Theme => {\n const themeCookie = cookies.get(`${config.cookiePrefix || 'payload'}-theme`)\n\n const themeFromCookie: Theme = (\n typeof themeCookie === 'string' ? themeCookie : themeCookie?.value\n ) as Theme\n\n if (themeFromCookie && acceptedThemes.includes(themeFromCookie)) {\n return themeFromCookie\n }\n\n const themeFromHeader = headers.get('Sec-CH-Prefers-Color-Scheme') as Theme\n\n if (themeFromHeader && acceptedThemes.includes(themeFromHeader)) {\n return themeFromHeader\n }\n\n return defaultTheme\n}\n"],"names":["defaultTheme","acceptedThemes","getRequestTheme","config","cookies","headers","themeCookie","get","cookiePrefix","themeFromCookie","value","includes","themeFromHeader"],"mappings":"AAGA,SAAqBA,YAAY,QAAQ,iBAAgB;AAQzD,MAAMC,iBAA0B;IAAC;IAAQ;CAAQ;AAEjD,OAAO,MAAMC,kBAAkB,CAAC,EAAEC,MAAM,EAAEC,OAAO,EAAEC,OAAO,EAA0B;IAClF,MAAMC,cAAcF,QAAQG,GAAG,CAAC,CAAC,EAAEJ,OAAOK,YAAY,IAAI,UAAU,MAAM,CAAC;IAE3E,MAAMC,kBACJ,OAAOH,gBAAgB,WAAWA,cAAcA,aAAaI;IAG/D,IAAID,mBAAmBR,eAAeU,QAAQ,CAACF,kBAAkB;QAC/D,OAAOA;IACT;IAEA,MAAMG,kBAAkBP,QAAQE,GAAG,CAAC;IAEpC,IAAIK,mBAAmBX,eAAeU,QAAQ,CAACC,kBAAkB;QAC/D,OAAOA;IACT;IAEA,OAAOZ;AACT,EAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { PayloadRequest } from 'payload';
|
|
2
2
|
type CorsArgs = {
|
|
3
3
|
headers: Headers;
|
|
4
|
-
req: Partial<
|
|
4
|
+
req: Partial<PayloadRequest>;
|
|
5
5
|
};
|
|
6
6
|
export declare const headersWithCors: ({ headers, req }: CorsArgs) => Headers;
|
|
7
7
|
export {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAc,cAAc,EAAE,MAAM,SAAS,CAAA;AAEzD,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CAC7B,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAyC5D,CAAA"}
|
|
@@ -2,11 +2,27 @@ export const headersWithCors = ({ headers, req })=>{
|
|
|
2
2
|
const cors = req?.payload.config.cors;
|
|
3
3
|
const requestOrigin = req?.headers.get('Origin');
|
|
4
4
|
if (cors) {
|
|
5
|
+
const defaultAllowedHeaders = [
|
|
6
|
+
'Origin',
|
|
7
|
+
'X-Requested-With',
|
|
8
|
+
'Content-Type',
|
|
9
|
+
'Accept',
|
|
10
|
+
'Authorization',
|
|
11
|
+
'Content-Encoding',
|
|
12
|
+
'x-apollo-tracing'
|
|
13
|
+
];
|
|
5
14
|
headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS');
|
|
6
|
-
|
|
7
|
-
|
|
15
|
+
if (typeof cors === 'object' && 'headers' in cors) {
|
|
16
|
+
headers.set('Access-Control-Allow-Headers', [
|
|
17
|
+
...defaultAllowedHeaders,
|
|
18
|
+
...cors.headers
|
|
19
|
+
].filter(Boolean).join(', '));
|
|
20
|
+
} else {
|
|
21
|
+
headers.set('Access-Control-Allow-Headers', defaultAllowedHeaders.join(', '));
|
|
22
|
+
}
|
|
23
|
+
if (cors === '*' || typeof cors === 'object' && 'origins' in cors && cors.origins === '*') {
|
|
8
24
|
headers.set('Access-Control-Allow-Origin', '*');
|
|
9
|
-
} else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) {
|
|
25
|
+
} else if (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1 || !Array.isArray(cors) && typeof cors === 'object' && 'origins' in cors && cors.origins.indexOf(requestOrigin) > -1) {
|
|
10
26
|
headers.set('Access-Control-Allow-Credentials', 'true');
|
|
11
27
|
headers.set('Access-Control-Allow-Origin', requestOrigin);
|
|
12
28
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type { CORSConfig, PayloadRequest } from 'payload'\n\ntype CorsArgs = {\n headers: Headers\n req: Partial<PayloadRequest>\n}\nexport const headersWithCors = ({ headers, req }: CorsArgs): Headers => {\n const cors = req?.payload.config.cors\n const requestOrigin = req?.headers.get('Origin')\n\n if (cors) {\n const defaultAllowedHeaders = [\n 'Origin',\n 'X-Requested-With',\n 'Content-Type',\n 'Accept',\n 'Authorization',\n 'Content-Encoding',\n 'x-apollo-tracing',\n ]\n\n headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS')\n\n if (typeof cors === 'object' && 'headers' in cors) {\n headers.set(\n 'Access-Control-Allow-Headers',\n [...defaultAllowedHeaders, ...cors.headers].filter(Boolean).join(', '),\n )\n } else {\n headers.set('Access-Control-Allow-Headers', defaultAllowedHeaders.join(', '))\n }\n\n if (cors === '*' || (typeof cors === 'object' && 'origins' in cors && cors.origins === '*')) {\n headers.set('Access-Control-Allow-Origin', '*')\n } else if (\n (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) ||\n (!Array.isArray(cors) &&\n typeof cors === 'object' &&\n 'origins' in cors &&\n cors.origins.indexOf(requestOrigin) > -1)\n ) {\n headers.set('Access-Control-Allow-Credentials', 'true')\n headers.set('Access-Control-Allow-Origin', requestOrigin)\n }\n }\n\n return headers\n}\n"],"names":["headersWithCors","headers","req","cors","payload","config","requestOrigin","get","defaultAllowedHeaders","set","filter","Boolean","join","origins","Array","isArray","indexOf"],"mappings":"AAMA,OAAO,MAAMA,kBAAkB,CAAC,EAAEC,OAAO,EAAEC,GAAG,EAAY;IACxD,MAAMC,OAAOD,KAAKE,QAAQC,OAAOF;IACjC,MAAMG,gBAAgBJ,KAAKD,QAAQM,IAAI;IAEvC,IAAIJ,MAAM;QACR,MAAMK,wBAAwB;YAC5B;YACA;YACA;YACA;YACA;YACA;YACA;SACD;QAEDP,QAAQQ,GAAG,CAAC,gCAAgC;QAE5C,IAAI,OAAON,SAAS,YAAY,aAAaA,MAAM;YACjDF,QAAQQ,GAAG,CACT,gCACA;mBAAID;mBAA0BL,KAAKF,OAAO;aAAC,CAACS,MAAM,CAACC,SAASC,IAAI,CAAC;QAErE,OAAO;YACLX,QAAQQ,GAAG,CAAC,gCAAgCD,sBAAsBI,IAAI,CAAC;QACzE;QAEA,IAAIT,SAAS,OAAQ,OAAOA,SAAS,YAAY,aAAaA,QAAQA,KAAKU,OAAO,KAAK,KAAM;YAC3FZ,QAAQQ,GAAG,CAAC,+BAA+B;QAC7C,OAAO,IACL,AAACK,MAAMC,OAAO,CAACZ,SAASA,KAAKa,OAAO,CAACV,iBAAiB,CAAC,KACtD,CAACQ,MAAMC,OAAO,CAACZ,SACd,OAAOA,SAAS,YAChB,aAAaA,QACbA,KAAKU,OAAO,CAACG,OAAO,CAACV,iBAAiB,CAAC,GACzC;YACAL,QAAQQ,GAAG,CAAC,oCAAoC;YAChDR,QAAQQ,GAAG,CAAC,+BAA+BH;QAC7C;IACF;IAEA,OAAOL;AACT,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"sourcesContent":["import type {\n Permissions,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAdminPage = ({\n adminRoute,\n config,\n permissions,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n permissions: Permissions\n route: string\n}) => {\n if (isAdminRoute(route, adminRoute)) {\n const routeSegments = route.replace(adminRoute, '').split('/').filter(Boolean)\n const [entityType, entitySlug, createOrID] = routeSegments\n const collectionSlug = entityType === 'collections' ? entitySlug : undefined\n const globalSlug = entityType === 'globals' ? entitySlug : undefined\n const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined\n\n let collectionConfig: SanitizedCollectionConfig | undefined\n let globalConfig: SanitizedGlobalConfig | undefined\n\n if (collectionSlug) {\n collectionConfig = config.collections.find((collection) => collection.slug === collectionSlug)\n\n if (!collectionConfig) {\n notFound()\n }\n }\n\n if (globalSlug) {\n globalConfig = config.globals.find((global) => global.slug === globalSlug)\n\n if (!globalConfig) {\n notFound()\n }\n }\n\n if (!permissions.canAccessAdmin && !isAdminAuthRoute(config, route, adminRoute)) {\n notFound()\n }\n\n return {\n collectionConfig,\n docID,\n globalConfig,\n }\n }\n}\n"],"names":["notFound","isAdminAuthRoute","isAdminRoute","handleAdminPage","adminRoute","config","permissions","route","routeSegments","replace","split","filter","Boolean","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","collectionConfig","globalConfig","collections","find","collection","slug","globals","global","canAccessAdmin"],"
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"sourcesContent":["import type {\n Permissions,\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAdminPage = ({\n adminRoute,\n config,\n permissions,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n permissions: Permissions\n route: string\n}) => {\n if (isAdminRoute(route, adminRoute)) {\n const routeSegments = route.replace(adminRoute, '').split('/').filter(Boolean)\n const [entityType, entitySlug, createOrID] = routeSegments\n const collectionSlug = entityType === 'collections' ? entitySlug : undefined\n const globalSlug = entityType === 'globals' ? entitySlug : undefined\n const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined\n\n let collectionConfig: SanitizedCollectionConfig | undefined\n let globalConfig: SanitizedGlobalConfig | undefined\n\n if (collectionSlug) {\n collectionConfig = config.collections.find((collection) => collection.slug === collectionSlug)\n\n if (!collectionConfig) {\n notFound()\n }\n }\n\n if (globalSlug) {\n globalConfig = config.globals.find((global) => global.slug === globalSlug)\n\n if (!globalConfig) {\n notFound()\n }\n }\n\n if (!permissions.canAccessAdmin && !isAdminAuthRoute(config, route, adminRoute)) {\n notFound()\n }\n\n return {\n collectionConfig,\n docID,\n globalConfig,\n }\n }\n}\n"],"names":["notFound","isAdminAuthRoute","isAdminRoute","handleAdminPage","adminRoute","config","permissions","route","routeSegments","replace","split","filter","Boolean","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","collectionConfig","globalConfig","collections","find","collection","slug","globals","global","canAccessAdmin"],"mappings":"AAOA,SAASA,QAAQ,QAAQ,qBAAoB;AAE7C,SAASC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAE5D,OAAO,MAAMC,kBAAkB,CAAC,EAC9BC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,KAAK,EAMN;IACC,IAAIL,aAAaK,OAAOH,aAAa;QACnC,MAAMI,gBAAgBD,MAAME,OAAO,CAACL,YAAY,IAAIM,KAAK,CAAC,KAAKC,MAAM,CAACC;QACtE,MAAM,CAACC,YAAYC,YAAYC,WAAW,GAAGP;QAC7C,MAAMQ,iBAAiBH,eAAe,gBAAgBC,aAAaG;QACnE,MAAMC,aAAaL,eAAe,YAAYC,aAAaG;QAC3D,MAAME,QAAQH,kBAAkBD,eAAe,WAAWA,aAAaE;QAEvE,IAAIG;QACJ,IAAIC;QAEJ,IAAIL,gBAAgB;YAClBI,mBAAmBf,OAAOiB,WAAW,CAACC,IAAI,CAAC,CAACC,aAAeA,WAAWC,IAAI,KAAKT;YAE/E,IAAI,CAACI,kBAAkB;gBACrBpB;YACF;QACF;QAEA,IAAIkB,YAAY;YACdG,eAAehB,OAAOqB,OAAO,CAACH,IAAI,CAAC,CAACI,SAAWA,OAAOF,IAAI,KAAKP;YAE/D,IAAI,CAACG,cAAc;gBACjBrB;YACF;QACF;QAEA,IAAI,CAACM,YAAYsB,cAAc,IAAI,CAAC3B,iBAAiBI,QAAQE,OAAOH,aAAa;YAC/EJ;QACF;QAEA,OAAO;YACLoB;YACAD;YACAE;QACF;IACF;AACF,EAAC"}
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { redirect } from 'next/navigation.js';
|
|
2
|
-
import
|
|
2
|
+
import * as qs from 'qs-esm';
|
|
3
3
|
import { isAdminAuthRoute, isAdminRoute } from './shared.js';
|
|
4
4
|
export const handleAuthRedirect = ({ config, redirectUnauthenticatedUser, route, searchParams })=>{
|
|
5
5
|
const { admin: { routes: { login: loginRouteFromConfig } }, routes: { admin: adminRoute } } = config;
|
|
6
6
|
if (!isAdminAuthRoute(config, route, adminRoute)) {
|
|
7
7
|
if (searchParams && 'redirect' in searchParams) delete searchParams.redirect;
|
|
8
|
-
const redirectRoute = encodeURIComponent(route + Object.keys(searchParams ?? {}).length ? `${
|
|
8
|
+
const redirectRoute = encodeURIComponent(route + Object.keys(searchParams ?? {}).length ? `${qs.stringify(searchParams, {
|
|
9
9
|
addQueryPrefix: true
|
|
10
10
|
})}` : undefined);
|
|
11
11
|
const adminLoginRoute = `${adminRoute}${loginRouteFromConfig}`;
|
|
12
12
|
const customLoginRoute = typeof redirectUnauthenticatedUser === 'string' ? redirectUnauthenticatedUser : undefined;
|
|
13
13
|
const loginRoute = isAdminRoute(route, adminRoute) ? adminLoginRoute : customLoginRoute || loginRouteFromConfig;
|
|
14
|
-
const parsedLoginRouteSearchParams =
|
|
15
|
-
const searchParamsWithRedirect = `${
|
|
14
|
+
const parsedLoginRouteSearchParams = qs.parse(loginRoute.split('?')[1] ?? '');
|
|
15
|
+
const searchParamsWithRedirect = `${qs.stringify({
|
|
16
16
|
...parsedLoginRouteSearchParams,
|
|
17
17
|
...redirectRoute ? {
|
|
18
18
|
redirect: redirectRoute
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"sourcesContent":["import { redirect } from 'next/navigation.js'\nimport
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"sourcesContent":["import { redirect } from 'next/navigation.js'\nimport * as qs from 'qs-esm'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAuthRedirect = ({\n config,\n redirectUnauthenticatedUser,\n route,\n searchParams,\n}: {\n config\n redirectUnauthenticatedUser: boolean | string\n route: string\n searchParams: { [key: string]: string | string[] }\n}) => {\n const {\n admin: {\n routes: { login: loginRouteFromConfig },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (!isAdminAuthRoute(config, route, adminRoute)) {\n if (searchParams && 'redirect' in searchParams) delete searchParams.redirect\n\n const redirectRoute = encodeURIComponent(\n route + Object.keys(searchParams ?? {}).length\n ? `${qs.stringify(searchParams, { addQueryPrefix: true })}`\n : undefined,\n )\n\n const adminLoginRoute = `${adminRoute}${loginRouteFromConfig}`\n\n const customLoginRoute =\n typeof redirectUnauthenticatedUser === 'string' ? redirectUnauthenticatedUser : undefined\n\n const loginRoute = isAdminRoute(route, adminRoute)\n ? adminLoginRoute\n : customLoginRoute || loginRouteFromConfig\n\n const parsedLoginRouteSearchParams = qs.parse(loginRoute.split('?')[1] ?? '')\n\n const searchParamsWithRedirect = `${qs.stringify(\n {\n ...parsedLoginRouteSearchParams,\n ...(redirectRoute ? { redirect: redirectRoute } : {}),\n },\n { addQueryPrefix: true },\n )}`\n\n redirect(`${loginRoute.split('?')[0]}${searchParamsWithRedirect}`)\n }\n}\n"],"names":["redirect","qs","isAdminAuthRoute","isAdminRoute","handleAuthRedirect","config","redirectUnauthenticatedUser","route","searchParams","admin","routes","login","loginRouteFromConfig","adminRoute","redirectRoute","encodeURIComponent","Object","keys","length","stringify","addQueryPrefix","undefined","adminLoginRoute","customLoginRoute","loginRoute","parsedLoginRouteSearchParams","parse","split","searchParamsWithRedirect"],"mappings":"AAAA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,YAAYC,QAAQ,SAAQ;AAE5B,SAASC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAE5D,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,2BAA2B,EAC3BC,KAAK,EACLC,YAAY,EAMb;IACC,MAAM,EACJC,OAAO,EACLC,QAAQ,EAAEC,OAAOC,oBAAoB,EAAE,EACxC,EACDF,QAAQ,EAAED,OAAOI,UAAU,EAAE,EAC9B,GAAGR;IAEJ,IAAI,CAACH,iBAAiBG,QAAQE,OAAOM,aAAa;QAChD,IAAIL,gBAAgB,cAAcA,cAAc,OAAOA,aAAaR,QAAQ;QAE5E,MAAMc,gBAAgBC,mBACpBR,QAAQS,OAAOC,IAAI,CAACT,gBAAgB,CAAC,GAAGU,MAAM,GAC1C,CAAC,EAAEjB,GAAGkB,SAAS,CAACX,cAAc;YAAEY,gBAAgB;QAAK,GAAG,CAAC,GACzDC;QAGN,MAAMC,kBAAkB,CAAC,EAAET,WAAW,EAAED,qBAAqB,CAAC;QAE9D,MAAMW,mBACJ,OAAOjB,gCAAgC,WAAWA,8BAA8Be;QAElF,MAAMG,aAAarB,aAAaI,OAAOM,cACnCS,kBACAC,oBAAoBX;QAExB,MAAMa,+BAA+BxB,GAAGyB,KAAK,CAACF,WAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI;QAE1E,MAAMC,2BAA2B,CAAC,EAAE3B,GAAGkB,SAAS,CAC9C;YACE,GAAGM,4BAA4B;YAC/B,GAAIX,gBAAgB;gBAAEd,UAAUc;YAAc,IAAI,CAAC,CAAC;QACtD,GACA;YAAEM,gBAAgB;QAAK,GACvB,CAAC;QAEHpB,SAAS,CAAC,EAAEwB,WAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAEC,yBAAyB,CAAC;IACnE;AACF,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,SAAS,CAAA;AAQtF,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAOtC,eAAO,MAAM,QAAQ,iFAKlB,IAAI,KAAG,OAAO,CAAC,cAAc,CA0I/B,CAAA"}
|
|
@@ -2,7 +2,7 @@ import { initI18n } from '@payloadcms/translations';
|
|
|
2
2
|
import { findLocaleFromCode } from '@payloadcms/ui/shared';
|
|
3
3
|
import { headers as getHeaders } from 'next/headers.js';
|
|
4
4
|
import { createLocalReq, isEntityHidden, parseCookies } from 'payload';
|
|
5
|
-
import qs from 'qs';
|
|
5
|
+
import * as qs from 'qs-esm';
|
|
6
6
|
import { getPayloadHMR } from '../getPayloadHMR.js';
|
|
7
7
|
import { getRequestLanguage } from '../getRequestLanguage.js';
|
|
8
8
|
import { handleAdminPage } from './handleAdminPage.js';
|
|
@@ -39,6 +39,7 @@ export const initPage = async ({ config: configPromise, redirectUnauthenticatedU
|
|
|
39
39
|
const req = await createLocalReq({
|
|
40
40
|
fallbackLocale: null,
|
|
41
41
|
req: {
|
|
42
|
+
headers,
|
|
42
43
|
host: headers.get('host'),
|
|
43
44
|
i18n,
|
|
44
45
|
query: qs.parse(queryString, {
|