@payloadcms/next 3.0.0-canary.92e4997 → 3.0.0-canary.a78fca3
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 +52 -10
- package/dist/cjs/withPayload.cjs.map +1 -1
- package/dist/config.d.ts +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.d.ts +5 -0
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js +13 -0
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts +13 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +43 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts +6 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js +58 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/Tab/index.scss +91 -0
- package/dist/elements/DocumentHeader/Tabs/getCustomViews.d.ts +6 -0
- package/dist/elements/DocumentHeader/Tabs/getCustomViews.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/getCustomViews.js +38 -0
- package/dist/elements/DocumentHeader/Tabs/getCustomViews.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/getViewConfig.d.ts +7 -0
- package/dist/elements/DocumentHeader/Tabs/getViewConfig.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/getViewConfig.js +14 -0
- package/dist/elements/DocumentHeader/Tabs/getViewConfig.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/index.d.ts +12 -0
- package/dist/elements/DocumentHeader/Tabs/index.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/index.js +81 -0
- package/dist/elements/DocumentHeader/Tabs/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/index.scss +53 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts +3 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js +23 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts +7 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js +57 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -0
- package/dist/elements/DocumentHeader/index.d.ts +14 -0
- package/dist/elements/DocumentHeader/index.d.ts.map +1 -0
- package/dist/elements/DocumentHeader/index.js +30 -0
- package/dist/elements/DocumentHeader/index.js.map +1 -0
- package/dist/elements/DocumentHeader/index.scss +51 -0
- package/dist/elements/LeaveWithoutSaving/index.d.ts.map +1 -1
- package/dist/elements/LeaveWithoutSaving/index.js +36 -20
- package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
- package/dist/elements/Logo/index.d.ts +4 -0
- package/dist/elements/Logo/index.d.ts.map +1 -0
- package/dist/elements/Logo/index.js +24 -0
- package/dist/elements/Logo/index.js.map +1 -0
- package/dist/elements/Nav/NavHamburger/index.d.ts +5 -0
- package/dist/elements/Nav/NavHamburger/index.d.ts.map +1 -0
- package/dist/elements/Nav/NavHamburger/index.js +20 -0
- package/dist/elements/Nav/NavHamburger/index.js.map +1 -0
- package/dist/elements/Nav/NavWrapper/index.d.ts +7 -0
- package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -0
- package/dist/elements/Nav/NavWrapper/index.js +21 -0
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -0
- package/dist/elements/Nav/NavWrapper/index.scss +17 -0
- package/dist/elements/Nav/index.client.d.ts +3 -0
- package/dist/elements/Nav/index.client.d.ts.map +1 -0
- package/dist/elements/Nav/index.client.js +79 -0
- package/dist/elements/Nav/index.client.js.map +1 -0
- package/dist/elements/Nav/index.d.ts +6 -0
- package/dist/elements/Nav/index.d.ts.map +1 -0
- package/dist/elements/Nav/index.js +67 -0
- package/dist/elements/Nav/index.js.map +1 -0
- package/dist/elements/Nav/index.scss +150 -0
- package/dist/exports/templates.d.ts +3 -0
- package/dist/exports/templates.d.ts.map +1 -0
- package/dist/exports/templates.js +4 -0
- package/dist/exports/templates.js.map +1 -0
- package/dist/exports/utilities.d.ts +0 -2
- package/dist/exports/utilities.d.ts.map +1 -1
- package/dist/exports/utilities.js +0 -2
- package/dist/exports/utilities.js.map +1 -1
- package/dist/exports/views.d.ts +2 -1
- package/dist/exports/views.d.ts.map +1 -1
- package/dist/exports/views.js +2 -1
- package/dist/exports/views.js.map +1 -1
- package/dist/fetchAPI-multipart/index.d.ts +2 -4
- package/dist/fetchAPI-multipart/index.d.ts.map +1 -1
- package/dist/fetchAPI-multipart/index.js +2 -4
- package/dist/fetchAPI-multipart/index.js.map +1 -1
- package/dist/fetchAPI-multipart/processMultipart.d.ts.map +1 -1
- package/dist/fetchAPI-multipart/processMultipart.js +18 -12
- package/dist/fetchAPI-multipart/processMultipart.js.map +1 -1
- package/dist/layouts/Root/index.d.ts +1 -2
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +40 -27
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/index.js +55 -0
- 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 +1 -1
- package/dist/routes/graphql/handler.d.ts.map +1 -1
- package/dist/routes/graphql/handler.js +3 -4
- package/dist/routes/graphql/handler.js.map +1 -1
- package/dist/routes/graphql/playground.d.ts +1 -1
- package/dist/routes/graphql/playground.d.ts.map +1 -1
- package/dist/routes/graphql/playground.js.map +1 -1
- package/dist/routes/rest/auth/access.d.ts.map +1 -1
- package/dist/routes/rest/auth/access.js +18 -8
- package/dist/routes/rest/auth/access.js.map +1 -1
- package/dist/routes/rest/auth/forgotPassword.js +1 -1
- package/dist/routes/rest/auth/forgotPassword.js.map +1 -1
- package/dist/routes/rest/auth/init.js +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 +2 -3
- 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 +1 -2
- 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 +1 -2
- 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 +1 -3
- 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 +1 -2
- 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 +1 -2
- package/dist/routes/rest/auth/resetPassword.js.map +1 -1
- package/dist/routes/rest/auth/unlock.js +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 +1 -3
- package/dist/routes/rest/buildFormState.d.ts.map +1 -1
- package/dist/routes/rest/buildFormState.js +16 -166
- package/dist/routes/rest/buildFormState.js.map +1 -1
- package/dist/routes/rest/collections/count.js +1 -1
- package/dist/routes/rest/collections/count.js.map +1 -1
- package/dist/routes/rest/collections/create.js +2 -2
- package/dist/routes/rest/collections/create.js.map +1 -1
- package/dist/routes/rest/collections/delete.js +2 -2
- package/dist/routes/rest/collections/delete.js.map +1 -1
- package/dist/routes/rest/collections/deleteByID.js +2 -2
- package/dist/routes/rest/collections/deleteByID.js.map +1 -1
- package/dist/routes/rest/collections/docAccess.js +1 -1
- package/dist/routes/rest/collections/docAccess.js.map +1 -1
- package/dist/routes/rest/collections/duplicate.js +2 -2
- package/dist/routes/rest/collections/duplicate.js.map +1 -1
- package/dist/routes/rest/collections/find.js +2 -2
- package/dist/routes/rest/collections/find.js.map +1 -1
- package/dist/routes/rest/collections/findByID.js +2 -2
- package/dist/routes/rest/collections/findByID.js.map +1 -1
- package/dist/routes/rest/collections/findVersionByID.js +2 -2
- package/dist/routes/rest/collections/findVersionByID.js.map +1 -1
- package/dist/routes/rest/collections/findVersions.js +2 -2
- 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 +2 -3
- package/dist/routes/rest/collections/preview.js.map +1 -1
- package/dist/routes/rest/collections/restoreVersion.js +2 -2
- package/dist/routes/rest/collections/restoreVersion.js.map +1 -1
- package/dist/routes/rest/collections/update.js +2 -2
- package/dist/routes/rest/collections/update.js.map +1 -1
- package/dist/routes/rest/collections/updateByID.js +2 -2
- 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 +2 -2
- package/dist/routes/rest/files/checkFileAccess.js.map +1 -1
- package/dist/routes/rest/files/getFile.d.ts +1 -1
- package/dist/routes/rest/files/getFile.d.ts.map +1 -1
- package/dist/routes/rest/files/getFile.js +4 -2
- package/dist/routes/rest/files/getFile.js.map +1 -1
- package/dist/routes/rest/globals/docAccess.js +1 -1
- package/dist/routes/rest/globals/docAccess.js.map +1 -1
- package/dist/routes/rest/globals/findOne.js +2 -2
- package/dist/routes/rest/globals/findOne.js.map +1 -1
- package/dist/routes/rest/globals/findVersionByID.js +2 -2
- package/dist/routes/rest/globals/findVersionByID.js.map +1 -1
- package/dist/routes/rest/globals/findVersions.js +2 -2
- 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 +2 -3
- package/dist/routes/rest/globals/preview.js.map +1 -1
- package/dist/routes/rest/globals/restoreVersion.js +2 -2
- package/dist/routes/rest/globals/restoreVersion.js.map +1 -1
- package/dist/routes/rest/globals/update.js +2 -2
- package/dist/routes/rest/globals/update.js.map +1 -1
- package/dist/routes/rest/index.d.ts +1 -1
- package/dist/routes/rest/index.d.ts.map +1 -1
- package/dist/routes/rest/index.js +22 -2
- package/dist/routes/rest/index.js.map +1 -1
- package/dist/routes/rest/og/image.d.ts +9 -0
- package/dist/routes/rest/og/image.d.ts.map +1 -0
- package/dist/routes/rest/og/image.js +79 -0
- package/dist/routes/rest/og/image.js.map +1 -0
- package/dist/routes/rest/og/index.d.ts +11 -0
- package/dist/routes/rest/og/index.d.ts.map +1 -0
- package/dist/routes/rest/og/index.js +73 -0
- package/dist/routes/rest/og/index.js.map +1 -0
- package/dist/routes/rest/og/roboto-regular.woff +0 -0
- 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 +1 -1
- package/dist/routes/rest/routeError.js.map +1 -1
- package/dist/routes/rest/types.d.ts +1 -1
- 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 +1 -1
- package/dist/routes/rest/utilities/sanitizeCollectionID.d.ts.map +1 -1
- package/dist/routes/rest/utilities/sanitizeCollectionID.js.map +1 -1
- package/dist/scss/app.scss +1 -1
- package/dist/scss/toasts.scss +111 -0
- package/dist/templates/Default/NavHamburger/index.d.ts +3 -0
- package/dist/templates/Default/NavHamburger/index.d.ts.map +1 -0
- package/dist/templates/Default/NavHamburger/index.js +13 -0
- package/dist/templates/Default/NavHamburger/index.js.map +1 -0
- package/dist/templates/Default/Wrapper/index.d.ts +8 -0
- package/dist/templates/Default/Wrapper/index.d.ts.map +1 -0
- package/dist/templates/Default/Wrapper/index.js +18 -0
- package/dist/templates/Default/Wrapper/index.js.map +1 -0
- package/dist/templates/Default/Wrapper/index.scss +25 -0
- package/dist/templates/Default/index.d.ts +10 -0
- package/dist/templates/Default/index.d.ts.map +1 -0
- package/dist/templates/Default/index.js +66 -0
- package/dist/templates/Default/index.js.map +1 -0
- package/dist/templates/Default/index.scss +67 -0
- package/dist/templates/Minimal/index.d.ts +10 -0
- package/dist/templates/Minimal/index.d.ts.map +1 -0
- package/dist/templates/Minimal/index.js +21 -0
- package/dist/templates/Minimal/index.js.map +1 -0
- package/dist/templates/Minimal/index.scss +28 -0
- package/dist/utilities/addDataAndFileToRequest.d.ts +1 -1
- package/dist/utilities/addDataAndFileToRequest.d.ts.map +1 -1
- package/dist/utilities/addDataAndFileToRequest.js +13 -42
- package/dist/utilities/addDataAndFileToRequest.js.map +1 -1
- package/dist/utilities/addLocalesToRequest.d.ts +1 -1
- package/dist/utilities/addLocalesToRequest.d.ts.map +1 -1
- package/dist/utilities/addLocalesToRequest.js +4 -1
- package/dist/utilities/addLocalesToRequest.js.map +1 -1
- package/dist/utilities/createPayloadRequest.d.ts +1 -1
- package/dist/utilities/createPayloadRequest.d.ts.map +1 -1
- package/dist/utilities/createPayloadRequest.js +9 -8
- package/dist/utilities/createPayloadRequest.js.map +1 -1
- package/dist/utilities/getNextRequestI18n.d.ts +2 -2
- package/dist/utilities/getNextRequestI18n.d.ts.map +1 -1
- package/dist/utilities/getNextRequestI18n.js +1 -1
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/getPayloadHMR.d.ts +1 -2
- package/dist/utilities/getPayloadHMR.d.ts.map +1 -1
- package/dist/utilities/getPayloadHMR.js +17 -4
- 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 +1 -1
- package/dist/utilities/getRequestLanguage.js.map +1 -1
- package/dist/utilities/getRequestTheme.d.ts +11 -0
- package/dist/utilities/getRequestTheme.d.ts.map +1 -0
- package/dist/utilities/getRequestTheme.js +19 -0
- package/dist/utilities/getRequestTheme.js.map +1 -0
- package/dist/utilities/headersWithCors.d.ts +1 -1
- package/dist/utilities/headersWithCors.d.ts.map +1 -1
- package/dist/utilities/headersWithCors.js.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.d.ts +1 -2
- package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.js +1 -1
- package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.d.ts +2 -2
- package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.js +5 -4
- package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
- package/dist/utilities/initPage/index.d.ts +1 -1
- package/dist/utilities/initPage/index.d.ts.map +1 -1
- package/dist/utilities/initPage/index.js +52 -9
- package/dist/utilities/initPage/index.js.map +1 -1
- package/dist/utilities/initPage/shared.d.ts +2 -2
- package/dist/utilities/initPage/shared.d.ts.map +1 -1
- package/dist/utilities/initPage/shared.js +11 -9
- package/dist/utilities/initPage/shared.js.map +1 -1
- package/dist/utilities/initPage/types.d.ts +1 -1
- package/dist/utilities/initPage/types.d.ts.map +1 -1
- package/dist/utilities/initPage/types.js.map +1 -1
- package/dist/utilities/meta.d.ts +4 -8
- package/dist/utilities/meta.d.ts.map +1 -1
- package/dist/utilities/meta.js +63 -25
- package/dist/utilities/meta.js.map +1 -1
- package/dist/views/API/LocaleSelector/index.d.ts +9 -0
- package/dist/views/API/LocaleSelector/index.d.ts.map +1 -0
- package/dist/views/API/LocaleSelector/index.js +15 -0
- package/dist/views/API/LocaleSelector/index.js.map +1 -0
- package/dist/views/API/RenderJSON/index.js +101 -69
- 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 +129 -106
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/API/index.d.ts +1 -1
- package/dist/views/API/index.d.ts.map +1 -1
- package/dist/views/API/index.js +2 -1
- package/dist/views/API/index.js.map +1 -1
- package/dist/views/API/meta.d.ts.map +1 -1
- package/dist/views/API/meta.js +13 -6
- package/dist/views/API/meta.js.map +1 -1
- package/dist/views/Account/Settings/LanguageSelector.d.ts +6 -0
- package/dist/views/Account/Settings/LanguageSelector.d.ts.map +1 -0
- package/dist/views/Account/Settings/LanguageSelector.js +19 -0
- package/dist/views/Account/Settings/LanguageSelector.js.map +1 -0
- package/dist/views/Account/Settings/index.d.ts +4 -0
- package/dist/views/Account/Settings/index.d.ts.map +1 -1
- package/dist/views/Account/Settings/index.js +25 -21
- package/dist/views/Account/Settings/index.js.map +1 -1
- package/dist/views/Account/ToggleTheme/index.d.ts.map +1 -1
- package/dist/views/Account/ToggleTheme/index.js +3 -4
- package/dist/views/Account/ToggleTheme/index.js.map +1 -1
- package/dist/views/Account/index.d.ts +1 -1
- package/dist/views/Account/index.d.ts.map +1 -1
- package/dist/views/Account/index.js +69 -36
- 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 +4 -5
- package/dist/views/Account/meta.js.map +1 -1
- package/dist/views/CreateFirstUser/index.client.d.ts +1 -1
- package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js +31 -29
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/CreateFirstUser/index.d.ts +1 -1
- package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.js +16 -6
- package/dist/views/CreateFirstUser/index.js.map +1 -1
- package/dist/views/CreateFirstUser/meta.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/meta.js +4 -5
- package/dist/views/CreateFirstUser/meta.js.map +1 -1
- package/dist/views/Dashboard/Default/index.d.ts +4 -4
- package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/index.js +116 -23
- package/dist/views/Dashboard/Default/index.js.map +1 -1
- package/dist/views/Dashboard/index.d.ts +1 -1
- package/dist/views/Dashboard/index.d.ts.map +1 -1
- package/dist/views/Dashboard/index.js +52 -13
- 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 +8 -5
- package/dist/views/Dashboard/meta.js.map +1 -1
- package/dist/views/Document/getCustomViewByKey.d.ts +1 -2
- package/dist/views/Document/getCustomViewByKey.d.ts.map +1 -1
- package/dist/views/Document/getCustomViewByKey.js +2 -1
- package/dist/views/Document/getCustomViewByKey.js.map +1 -1
- package/dist/views/Document/getCustomViewByRoute.d.ts +1 -2
- package/dist/views/Document/getCustomViewByRoute.d.ts.map +1 -1
- package/dist/views/Document/getCustomViewByRoute.js.map +1 -1
- package/dist/views/Document/getDocumentData.d.ts +9 -0
- package/dist/views/Document/getDocumentData.d.ts.map +1 -0
- package/dist/views/Document/getDocumentData.js +31 -0
- package/dist/views/Document/getDocumentData.js.map +1 -0
- package/dist/views/Document/getDocumentPermissions.d.ts +13 -0
- package/dist/views/Document/getDocumentPermissions.d.ts.map +1 -0
- package/dist/views/Document/getDocumentPermissions.js +82 -0
- package/dist/views/Document/getDocumentPermissions.js.map +1 -0
- package/dist/views/Document/getMetaBySegment.d.ts +1 -2
- package/dist/views/Document/getMetaBySegment.d.ts.map +1 -1
- package/dist/views/Document/getMetaBySegment.js +1 -1
- package/dist/views/Document/getMetaBySegment.js.map +1 -1
- package/dist/views/Document/getViewsFromConfig.d.ts +1 -3
- package/dist/views/Document/getViewsFromConfig.d.ts.map +1 -1
- package/dist/views/Document/getViewsFromConfig.js +172 -171
- package/dist/views/Document/getViewsFromConfig.js.map +1 -1
- package/dist/views/Document/index.d.ts +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +90 -57
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.js +44 -34
- 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 +87 -63
- package/dist/views/Edit/Default/Auth/index.js.map +1 -1
- package/dist/views/Edit/Default/Auth/types.d.ts +1 -2
- 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.d.ts +1 -1
- package/dist/views/Edit/Default/SetDocumentStepNav/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/SetDocumentStepNav/index.js +26 -28
- package/dist/views/Edit/Default/SetDocumentStepNav/index.js.map +1 -1
- package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts +1 -1
- package/dist/views/Edit/Default/SetDocumentTitle/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/SetDocumentTitle/index.js +2 -4
- 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 +81 -83
- package/dist/views/Edit/Default/index.js.map +1 -1
- package/dist/views/Edit/Default/types.d.ts +1 -1
- package/dist/views/Edit/Default/types.d.ts.map +1 -1
- package/dist/views/Edit/Default/types.js.map +1 -1
- package/dist/views/Edit/index.client.d.ts.map +1 -1
- package/dist/views/Edit/index.client.js +12 -10
- package/dist/views/Edit/index.client.js.map +1 -1
- package/dist/views/Edit/index.d.ts +1 -1
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +2 -1
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/Edit/meta.d.ts.map +1 -1
- package/dist/views/Edit/meta.js +17 -15
- package/dist/views/Edit/meta.js.map +1 -1
- package/dist/views/Edit/sanitizeEditViewProps.d.ts +1 -1
- package/dist/views/Edit/sanitizeEditViewProps.d.ts.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 +48 -30
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/ForgotPassword/index.d.ts +1 -1
- package/dist/views/ForgotPassword/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/index.js +39 -20
- 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 +4 -5
- package/dist/views/ForgotPassword/meta.js.map +1 -1
- package/dist/views/List/Default/index.d.ts.map +1 -1
- package/dist/views/List/Default/index.js +163 -112
- package/dist/views/List/Default/index.js.map +1 -1
- package/dist/views/List/Default/types.d.ts +2 -2
- package/dist/views/List/Default/types.d.ts.map +1 -1
- package/dist/views/List/Default/types.js.map +1 -1
- package/dist/views/List/index.d.ts +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +60 -43
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/meta.d.ts +1 -1
- package/dist/views/List/meta.d.ts.map +1 -1
- package/dist/views/List/meta.js +4 -2
- package/dist/views/List/meta.js.map +1 -1
- package/dist/views/LivePreview/Context/context.d.ts +3 -3
- package/dist/views/LivePreview/Context/context.d.ts.map +1 -1
- package/dist/views/LivePreview/Context/context.js.map +1 -1
- package/dist/views/LivePreview/Context/index.d.ts +1 -2
- package/dist/views/LivePreview/Context/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Context/index.js +10 -7
- package/dist/views/LivePreview/Context/index.js.map +1 -1
- package/dist/views/LivePreview/Device/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Device/index.js +48 -18
- package/dist/views/LivePreview/Device/index.js.map +1 -1
- package/dist/views/LivePreview/DeviceContainer/index.js +5 -3
- package/dist/views/LivePreview/DeviceContainer/index.js.map +1 -1
- package/dist/views/LivePreview/IFrame/index.js +2 -1
- package/dist/views/LivePreview/IFrame/index.js.map +1 -1
- package/dist/views/LivePreview/Preview/index.d.ts +1 -1
- package/dist/views/LivePreview/Preview/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Preview/index.js +27 -18
- package/dist/views/LivePreview/Preview/index.js.map +1 -1
- package/dist/views/LivePreview/Toolbar/Controls/index.d.ts +1 -1
- package/dist/views/LivePreview/Toolbar/Controls/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Toolbar/Controls/index.js +106 -62
- package/dist/views/LivePreview/Toolbar/Controls/index.js.map +1 -1
- package/dist/views/LivePreview/Toolbar/SizeInput/index.js +2 -1
- package/dist/views/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
- package/dist/views/LivePreview/Toolbar/index.d.ts +1 -1
- package/dist/views/LivePreview/Toolbar/index.d.ts.map +1 -1
- package/dist/views/LivePreview/Toolbar/index.js +30 -15
- package/dist/views/LivePreview/Toolbar/index.js.map +1 -1
- package/dist/views/LivePreview/ToolbarArea/index.js +5 -3
- package/dist/views/LivePreview/ToolbarArea/index.js.map +1 -1
- package/dist/views/LivePreview/index.client.d.ts +1 -2
- package/dist/views/LivePreview/index.client.d.ts.map +1 -1
- package/dist/views/LivePreview/index.client.js +124 -99
- package/dist/views/LivePreview/index.client.js.map +1 -1
- package/dist/views/LivePreview/index.d.ts +1 -1
- package/dist/views/LivePreview/index.d.ts.map +1 -1
- package/dist/views/LivePreview/index.js +2 -1
- package/dist/views/LivePreview/index.js.map +1 -1
- package/dist/views/LivePreview/meta.d.ts.map +1 -1
- package/dist/views/LivePreview/meta.js +6 -22
- package/dist/views/LivePreview/meta.js.map +1 -1
- package/dist/views/LivePreview/usePopupWindow.js +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 +61 -57
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Login/index.d.ts +1 -1
- package/dist/views/Login/index.d.ts.map +1 -1
- package/dist/views/Login/index.js +51 -15
- 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 +4 -5
- 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 +22 -10
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/index.d.ts +1 -1
- package/dist/views/Logout/index.d.ts.map +1 -1
- package/dist/views/Logout/index.js +10 -11
- package/dist/views/Logout/index.js.map +1 -1
- package/dist/views/Logout/meta.d.ts.map +1 -1
- package/dist/views/Logout/meta.js +2 -4
- package/dist/views/Logout/meta.js.map +1 -1
- package/dist/views/NotFound/index.client.d.ts.map +1 -1
- package/dist/views/NotFound/index.client.js +23 -15
- package/dist/views/NotFound/index.client.js.map +1 -1
- package/dist/views/NotFound/index.d.ts +2 -2
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +24 -11
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/NotFound/meta.d.ts +1 -1
- package/dist/views/NotFound/meta.d.ts.map +1 -1
- package/dist/views/NotFound/meta.js +2 -4
- package/dist/views/NotFound/meta.js.map +1 -1
- package/dist/views/ResetPassword/index.client.d.ts.map +1 -1
- package/dist/views/ResetPassword/index.client.js +21 -23
- package/dist/views/ResetPassword/index.client.js.map +1 -1
- package/dist/views/ResetPassword/index.d.ts +1 -1
- package/dist/views/ResetPassword/index.d.ts.map +1 -1
- package/dist/views/ResetPassword/index.js +49 -29
- package/dist/views/ResetPassword/index.js.map +1 -1
- package/dist/views/ResetPassword/meta.d.ts.map +1 -1
- package/dist/views/ResetPassword/meta.js +4 -5
- package/dist/views/ResetPassword/meta.js.map +1 -1
- package/dist/views/Root/getCustomViewByRoute.d.ts +1 -1
- package/dist/views/Root/getCustomViewByRoute.d.ts.map +1 -1
- package/dist/views/Root/getCustomViewByRoute.js.map +1 -1
- package/dist/views/Root/getViewFromConfig.d.ts +1 -2
- package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
- package/dist/views/Root/getViewFromConfig.js +29 -12
- package/dist/views/Root/getViewFromConfig.js.map +1 -1
- package/dist/views/Root/index.d.ts +2 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +43 -17
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Root/meta.d.ts +1 -1
- package/dist/views/Root/meta.d.ts.map +1 -1
- package/dist/views/Root/meta.js +0 -19
- package/dist/views/Root/meta.js.map +1 -1
- package/dist/views/Unauthorized/index.d.ts +1 -1
- package/dist/views/Unauthorized/index.d.ts.map +1 -1
- package/dist/views/Unauthorized/index.js +21 -11
- package/dist/views/Unauthorized/index.js.map +1 -1
- package/dist/views/Unauthorized/meta.d.ts.map +1 -1
- package/dist/views/Unauthorized/meta.js +4 -5
- package/dist/views/Unauthorized/meta.js.map +1 -1
- package/dist/views/Verify/index.d.ts +1 -1
- package/dist/views/Verify/index.d.ts.map +1 -1
- package/dist/views/Verify/index.js +24 -9
- 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 +4 -5
- package/dist/views/Verify/meta.js.map +1 -1
- package/dist/views/Version/Default/SetStepNav.d.ts +1 -1
- package/dist/views/Version/Default/SetStepNav.d.ts.map +1 -1
- package/dist/views/Version/Default/SetStepNav.js +2 -5
- 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 +85 -65
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Version/Default/types.d.ts +1 -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 +5 -3
- package/dist/views/Version/RenderFieldsToDiff/Label/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js +66 -51
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js +30 -18
- package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +25 -14
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js +2 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/DiffViewer/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +22 -11
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts +1 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js +31 -30
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js +2 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/DiffViewer/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js +22 -11
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts +7 -9
- package/dist/views/Version/RenderFieldsToDiff/fields/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +3 -3
- 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/index.js +90 -87
- package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/types.d.ts +3 -3
- 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 +42 -26
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/Restore/types.d.ts +1 -1
- package/dist/views/Version/Restore/types.d.ts.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 +34 -30
- package/dist/views/Version/SelectComparison/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/types.d.ts +1 -2
- 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.d.ts.map +1 -1
- package/dist/views/Version/SelectLocales/index.js +19 -14
- package/dist/views/Version/SelectLocales/index.js.map +1 -1
- package/dist/views/Version/SelectLocales/types.d.ts +1 -1
- package/dist/views/Version/SelectLocales/types.d.ts.map +1 -1
- package/dist/views/Version/SelectLocales/types.js.map +1 -1
- package/dist/views/Version/index.d.ts +1 -1
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +2 -1
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Version/meta.d.ts.map +1 -1
- package/dist/views/Version/meta.js +6 -3
- package/dist/views/Version/meta.js.map +1 -1
- package/dist/views/Versions/buildColumns.d.ts +2 -2
- package/dist/views/Versions/buildColumns.d.ts.map +1 -1
- package/dist/views/Versions/buildColumns.js +8 -7
- package/dist/views/Versions/buildColumns.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.d.ts.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js +26 -6
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.d.ts.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js +11 -11
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/dist/views/Versions/cells/ID/index.js +5 -2
- package/dist/views/Versions/cells/ID/index.js.map +1 -1
- package/dist/views/Versions/index.client.d.ts +2 -2
- package/dist/views/Versions/index.client.d.ts.map +1 -1
- package/dist/views/Versions/index.client.js +62 -38
- package/dist/views/Versions/index.client.js.map +1 -1
- package/dist/views/Versions/index.d.ts +1 -1
- package/dist/views/Versions/index.d.ts.map +1 -1
- package/dist/views/Versions/index.js +33 -25
- package/dist/views/Versions/index.js.map +1 -1
- package/dist/views/Versions/meta.d.ts.map +1 -1
- package/dist/views/Versions/meta.js +8 -4
- package/dist/views/Versions/meta.js.map +1 -1
- package/dist/views/Versions/types.d.ts +1 -3
- package/dist/views/Versions/types.d.ts.map +1 -1
- package/dist/views/Versions/types.js.map +1 -1
- package/dist/withPayload.d.ts.map +1 -1
- package/dist/withPayload.js +52 -10
- package/dist/withPayload.js.map +1 -1
- package/package.json +23 -20
- package/dist/prod/payload/favicon.svg +0 -15
- package/dist/scss/toastify.scss +0 -58
- package/dist/utilities/buildFieldSchemaMap/index.d.ts +0 -4
- package/dist/utilities/buildFieldSchemaMap/index.d.ts.map +0 -1
- package/dist/utilities/buildFieldSchemaMap/index.js +0 -28
- package/dist/utilities/buildFieldSchemaMap/index.js.map +0 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts +0 -14
- package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +0 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js +0 -75
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +0 -1
- package/dist/utilities/buildFieldSchemaMap/types.d.ts +0 -3
- package/dist/utilities/buildFieldSchemaMap/types.d.ts.map +0 -1
- package/dist/utilities/buildFieldSchemaMap/types.js +0 -3
- package/dist/utilities/buildFieldSchemaMap/types.js.map +0 -1
- package/dist/utilities/getDataAndFile.d.ts +0 -12
- package/dist/utilities/getDataAndFile.d.ts.map +0 -1
- package/dist/utilities/getDataAndFile.js +0 -48
- package/dist/utilities/getDataAndFile.js.map +0 -1
- package/dist/views/Dashboard/Default/index.client.d.ts +0 -10
- package/dist/views/Dashboard/Default/index.client.d.ts.map +0 -1
- package/dist/views/Dashboard/Default/index.client.js +0 -103
- package/dist/views/Dashboard/Default/index.client.js.map +0 -1
- /package/dist/prod/payload/{og-image.png → static-og-image.png} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/collections/updateByID.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { updateByIDOperation } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/collections/updateByID.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { updateByIDOperation } from 'payload'\nimport { isNumber } from 'payload/shared'\n\nimport type { CollectionRouteHandlerWithID } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\nimport { sanitizeCollectionID } from '../utilities/sanitizeCollectionID.js'\n\nexport const updateByID: CollectionRouteHandlerWithID = async ({\n id: incomingID,\n collection,\n req,\n}) => {\n const { searchParams } = req\n const depth = searchParams.get('depth')\n const autosave = searchParams.get('autosave') === 'true'\n const draft = searchParams.get('draft') === 'true'\n\n const id = sanitizeCollectionID({\n id: incomingID,\n collectionSlug: collection.config.slug,\n payload: req.payload,\n })\n\n const doc = await updateByIDOperation({\n id,\n autosave,\n collection,\n data: req.data,\n depth: isNumber(depth) ? Number(depth) : undefined,\n draft,\n req,\n })\n\n let message = req.t('general:updatedSuccessfully')\n\n if (draft) message = req.t('version:draftSavedSuccessfully')\n if (autosave) message = req.t('version:autosavedSuccessfully')\n\n return Response.json(\n {\n doc,\n message,\n },\n {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.OK,\n },\n )\n}\n"],"names":["httpStatus","updateByIDOperation","isNumber","headersWithCors","sanitizeCollectionID","updateByID","id","incomingID","collection","req","searchParams","depth","get","autosave","draft","collectionSlug","config","slug","payload","doc","data","Number","undefined","message","t","Response","json","headers","Headers","status","OK"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,gBAAgB,cAAa;AACpC,SAASC,mBAAmB,QAAQ,UAAS;AAC7C,SAASC,QAAQ,QAAQ,iBAAgB;AAIzC,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,oBAAoB,QAAQ,uCAAsC;AAE3E,OAAO,MAAMC,aAA2C,OAAO,EAC7DC,IAAIC,UAAU,EACdC,UAAU,EACVC,GAAG,EACJ;IACC,MAAM,EAAEC,YAAY,EAAE,GAAGD;IACzB,MAAME,QAAQD,aAAaE,GAAG,CAAC;IAC/B,MAAMC,WAAWH,aAAaE,GAAG,CAAC,gBAAgB;IAClD,MAAME,QAAQJ,aAAaE,GAAG,CAAC,aAAa;IAE5C,MAAMN,KAAKF,qBAAqB;QAC9BE,IAAIC;QACJQ,gBAAgBP,WAAWQ,MAAM,CAACC,IAAI;QACtCC,SAAST,IAAIS,OAAO;IACtB;IAEA,MAAMC,MAAM,MAAMlB,oBAAoB;QACpCK;QACAO;QACAL;QACAY,MAAMX,IAAIW,IAAI;QACdT,OAAOT,SAASS,SAASU,OAAOV,SAASW;QACzCR;QACAL;IACF;IAEA,IAAIc,UAAUd,IAAIe,CAAC,CAAC;IAEpB,IAAIV,OAAOS,UAAUd,IAAIe,CAAC,CAAC;IAC3B,IAAIX,UAAUU,UAAUd,IAAIe,CAAC,CAAC;IAE9B,OAAOC,SAASC,IAAI,CAClB;QACEP;QACAI;IACF,GACA;QACEI,SAASxB,gBAAgB;YACvBwB,SAAS,IAAIC;YACbnB;QACF;QACAoB,QAAQ7B,WAAW8B,EAAE;IACvB;AAEJ,EAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { Collection, PayloadRequestWithData } from 'payload
|
|
1
|
+
import type { Collection, PayloadRequestWithData, TypeWithID } from 'payload';
|
|
2
2
|
export declare function checkFileAccess({ collection, filename, req, }: {
|
|
3
3
|
collection: Collection;
|
|
4
4
|
filename: string;
|
|
5
5
|
req: PayloadRequestWithData;
|
|
6
|
-
}): Promise<Response>;
|
|
6
|
+
}): Promise<Response | TypeWithID>;
|
|
7
7
|
//# sourceMappingURL=checkFileAccess.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkFileAccess.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/files/checkFileAccess.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAS,MAAM,
|
|
1
|
+
{"version":3,"file":"checkFileAccess.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/files/checkFileAccess.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,UAAU,EAAS,MAAM,SAAS,CAAA;AAMpF,wBAAsB,eAAe,CAAC,EACpC,UAAU,EACV,QAAQ,EACR,GAAG,GACJ,EAAE;IACD,UAAU,EAAE,UAAU,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,sBAAsB,CAAA;CAC5B,GAAG,OAAO,CAAC,QAAQ,GAAG,UAAU,CAAC,CA6CjC"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { executeAccess } from 'payload
|
|
2
|
-
import { Forbidden } from 'payload/errors';
|
|
1
|
+
import { Forbidden, executeAccess } from 'payload';
|
|
3
2
|
import { endpointsAreDisabled } from '../checkEndpoints.js';
|
|
4
3
|
export async function checkFileAccess({ collection, filename, req }) {
|
|
5
4
|
const { config } = collection;
|
|
@@ -44,6 +43,7 @@ export async function checkFileAccess({ collection, filename, req }) {
|
|
|
44
43
|
if (!doc) {
|
|
45
44
|
throw new Forbidden(req.t);
|
|
46
45
|
}
|
|
46
|
+
return doc;
|
|
47
47
|
}
|
|
48
48
|
}
|
|
49
49
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/files/checkFileAccess.ts"],"sourcesContent":["import type { Collection, PayloadRequestWithData, Where } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/files/checkFileAccess.ts"],"sourcesContent":["import type { Collection, PayloadRequestWithData, TypeWithID, Where } from 'payload'\n\nimport { Forbidden, executeAccess } from 'payload'\n\nimport { endpointsAreDisabled } from '../checkEndpoints.js'\n\nexport async function checkFileAccess({\n collection,\n filename,\n req,\n}: {\n collection: Collection\n filename: string\n req: PayloadRequestWithData\n}): Promise<Response | TypeWithID> {\n const { config } = collection\n const disableEndpoints = endpointsAreDisabled({ endpoints: config.endpoints, request: req })\n if (disableEndpoints) return disableEndpoints\n\n const accessResult = await executeAccess({ isReadingStaticFile: true, req }, config.access.read)\n\n if (typeof accessResult === 'object') {\n const queryToBuild: Where = {\n and: [\n {\n or: [\n {\n filename: {\n equals: filename,\n },\n },\n ],\n },\n accessResult,\n ],\n }\n\n if (config.upload.imageSizes) {\n config.upload.imageSizes.forEach(({ name }) => {\n queryToBuild.and[0].or.push({\n [`sizes.${name}.filename`]: {\n equals: filename,\n },\n })\n })\n }\n\n const doc = await req.payload.db.findOne({\n collection: config.slug,\n req,\n where: queryToBuild,\n })\n\n if (!doc) {\n throw new Forbidden(req.t)\n }\n\n return doc\n }\n}\n"],"names":["Forbidden","executeAccess","endpointsAreDisabled","checkFileAccess","collection","filename","req","config","disableEndpoints","endpoints","request","accessResult","isReadingStaticFile","access","read","queryToBuild","and","or","equals","upload","imageSizes","forEach","name","push","doc","payload","db","findOne","slug","where","t"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,SAAS,EAAEC,aAAa,QAAQ,UAAS;AAElD,SAASC,oBAAoB,QAAQ,uBAAsB;AAE3D,OAAO,eAAeC,gBAAgB,EACpCC,UAAU,EACVC,QAAQ,EACRC,GAAG,EAKJ;IACC,MAAM,EAAEC,MAAM,EAAE,GAAGH;IACnB,MAAMI,mBAAmBN,qBAAqB;QAAEO,WAAWF,OAAOE,SAAS;QAAEC,SAASJ;IAAI;IAC1F,IAAIE,kBAAkB,OAAOA;IAE7B,MAAMG,eAAe,MAAMV,cAAc;QAAEW,qBAAqB;QAAMN;IAAI,GAAGC,OAAOM,MAAM,CAACC,IAAI;IAE/F,IAAI,OAAOH,iBAAiB,UAAU;QACpC,MAAMI,eAAsB;YAC1BC,KAAK;gBACH;oBACEC,IAAI;wBACF;4BACEZ,UAAU;gCACRa,QAAQb;4BACV;wBACF;qBACD;gBACH;gBACAM;aACD;QACH;QAEA,IAAIJ,OAAOY,MAAM,CAACC,UAAU,EAAE;YAC5Bb,OAAOY,MAAM,CAACC,UAAU,CAACC,OAAO,CAAC,CAAC,EAAEC,IAAI,EAAE;gBACxCP,aAAaC,GAAG,CAAC,EAAE,CAACC,EAAE,CAACM,IAAI,CAAC;oBAC1B,CAAC,CAAC,MAAM,EAAED,KAAK,SAAS,CAAC,CAAC,EAAE;wBAC1BJ,QAAQb;oBACV;gBACF;YACF;QACF;QAEA,MAAMmB,MAAM,MAAMlB,IAAImB,OAAO,CAACC,EAAE,CAACC,OAAO,CAAC;YACvCvB,YAAYG,OAAOqB,IAAI;YACvBtB;YACAuB,OAAOd;QACT;QAEA,IAAI,CAACS,KAAK;YACR,MAAM,IAAIxB,UAAUM,IAAIwB,CAAC;QAC3B;QAEA,OAAON;IACT;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getFile.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/files/getFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"getFile.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/files/getFile.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,sBAAsB,EAAE,MAAM,SAAS,CAAA;AAejE,KAAK,IAAI,GAAG;IACV,UAAU,EAAE,UAAU,CAAA;IACtB,QAAQ,EAAE,MAAM,CAAA;IAChB,GAAG,EAAE,sBAAsB,CAAA;CAC5B,CAAA;AACD,eAAO,MAAM,OAAO,kCAAyC,IAAI,KAAG,QAAQ,QAAQ,CA6DnF,CAAA"}
|
|
@@ -2,7 +2,7 @@ import { fileTypeFromFile } from 'file-type';
|
|
|
2
2
|
import fsPromises from 'fs/promises';
|
|
3
3
|
import httpStatus from 'http-status';
|
|
4
4
|
import path from 'path';
|
|
5
|
-
import { APIError } from 'payload
|
|
5
|
+
import { APIError } from 'payload';
|
|
6
6
|
import { streamFile } from '../../../fetchAPI-stream-file/index.js';
|
|
7
7
|
import { headersWithCors } from '../../../utilities/headersWithCors.js';
|
|
8
8
|
import { routeError } from '../routeError.js';
|
|
@@ -13,15 +13,17 @@ export const getFile = async ({ collection, filename, req })=>{
|
|
|
13
13
|
if (!collection.config.upload) {
|
|
14
14
|
throw new APIError(`This collection is not an upload collection: ${collection.config.slug}`, httpStatus.BAD_REQUEST);
|
|
15
15
|
}
|
|
16
|
-
await checkFileAccess({
|
|
16
|
+
const accessResult = await checkFileAccess({
|
|
17
17
|
collection,
|
|
18
18
|
filename,
|
|
19
19
|
req
|
|
20
20
|
});
|
|
21
|
+
if (accessResult instanceof Response) return accessResult;
|
|
21
22
|
let response = null;
|
|
22
23
|
if (collection.config.upload.handlers?.length) {
|
|
23
24
|
for (const handler of collection.config.upload.handlers){
|
|
24
25
|
response = await handler(req, {
|
|
26
|
+
doc: accessResult,
|
|
25
27
|
params: {
|
|
26
28
|
collection: collection.config.slug,
|
|
27
29
|
filename
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/files/getFile.ts"],"sourcesContent":["import type { Collection, PayloadRequestWithData } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/files/getFile.ts"],"sourcesContent":["import type { Collection, PayloadRequestWithData } from 'payload'\n\nimport { fileTypeFromFile } from 'file-type'\nimport fsPromises from 'fs/promises'\nimport httpStatus from 'http-status'\nimport path from 'path'\nimport { APIError } from 'payload'\n\nimport { streamFile } from '../../../fetchAPI-stream-file/index.js'\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\nimport { routeError } from '../routeError.js'\nimport { checkFileAccess } from './checkFileAccess.js'\nimport { getFileTypeFallback } from './getFileTypeFallback.js'\n\n// /:collectionSlug/file/:filename\ntype Args = {\n collection: Collection\n filename: string\n req: PayloadRequestWithData\n}\nexport const getFile = async ({ collection, filename, req }: Args): Promise<Response> => {\n try {\n if (!collection.config.upload) {\n throw new APIError(\n `This collection is not an upload collection: ${collection.config.slug}`,\n httpStatus.BAD_REQUEST,\n )\n }\n\n const accessResult = await checkFileAccess({\n collection,\n filename,\n req,\n })\n\n if (accessResult instanceof Response) return accessResult\n\n let response: Response = null\n if (collection.config.upload.handlers?.length) {\n for (const handler of collection.config.upload.handlers) {\n response = await handler(req, {\n doc: accessResult,\n params: {\n collection: collection.config.slug,\n filename,\n },\n })\n }\n\n if (response instanceof Response) return response\n }\n\n const fileDir = collection.config.upload?.staticDir || collection.config.slug\n const filePath = path.resolve(`${fileDir}/${filename}`)\n\n const stats = await fsPromises.stat(filePath)\n\n const data = streamFile(filePath)\n\n const headers = new Headers({\n 'Content-Length': stats.size + '',\n })\n\n const fileTypeResult = (await fileTypeFromFile(filePath)) || getFileTypeFallback(filePath)\n headers.set('Content-Type', fileTypeResult.mime)\n\n return new Response(data, {\n headers: headersWithCors({\n headers,\n req,\n }),\n status: httpStatus.OK,\n })\n } catch (err) {\n return routeError({\n collection,\n config: req.payload.config,\n err,\n req,\n })\n }\n}\n"],"names":["fileTypeFromFile","fsPromises","httpStatus","path","APIError","streamFile","headersWithCors","routeError","checkFileAccess","getFileTypeFallback","getFile","collection","filename","req","config","upload","slug","BAD_REQUEST","accessResult","Response","response","handlers","length","handler","doc","params","fileDir","staticDir","filePath","resolve","stats","stat","data","headers","Headers","size","fileTypeResult","set","mime","status","OK","err","payload"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,gBAAgB,QAAQ,YAAW;AAC5C,OAAOC,gBAAgB,cAAa;AACpC,OAAOC,gBAAgB,cAAa;AACpC,OAAOC,UAAU,OAAM;AACvB,SAASC,QAAQ,QAAQ,UAAS;AAElC,SAASC,UAAU,QAAQ,yCAAwC;AACnE,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,UAAU,QAAQ,mBAAkB;AAC7C,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,mBAAmB,QAAQ,2BAA0B;AAQ9D,OAAO,MAAMC,UAAU,OAAO,EAAEC,UAAU,EAAEC,QAAQ,EAAEC,GAAG,EAAQ;IAC/D,IAAI;QACF,IAAI,CAACF,WAAWG,MAAM,CAACC,MAAM,EAAE;YAC7B,MAAM,IAAIX,SACR,CAAC,6CAA6C,EAAEO,WAAWG,MAAM,CAACE,IAAI,CAAC,CAAC,EACxEd,WAAWe,WAAW;QAE1B;QAEA,MAAMC,eAAe,MAAMV,gBAAgB;YACzCG;YACAC;YACAC;QACF;QAEA,IAAIK,wBAAwBC,UAAU,OAAOD;QAE7C,IAAIE,WAAqB;QACzB,IAAIT,WAAWG,MAAM,CAACC,MAAM,CAACM,QAAQ,EAAEC,QAAQ;YAC7C,KAAK,MAAMC,WAAWZ,WAAWG,MAAM,CAACC,MAAM,CAACM,QAAQ,CAAE;gBACvDD,WAAW,MAAMG,QAAQV,KAAK;oBAC5BW,KAAKN;oBACLO,QAAQ;wBACNd,YAAYA,WAAWG,MAAM,CAACE,IAAI;wBAClCJ;oBACF;gBACF;YACF;YAEA,IAAIQ,oBAAoBD,UAAU,OAAOC;QAC3C;QAEA,MAAMM,UAAUf,WAAWG,MAAM,CAACC,MAAM,EAAEY,aAAahB,WAAWG,MAAM,CAACE,IAAI;QAC7E,MAAMY,WAAWzB,KAAK0B,OAAO,CAAC,CAAC,EAAEH,QAAQ,CAAC,EAAEd,SAAS,CAAC;QAEtD,MAAMkB,QAAQ,MAAM7B,WAAW8B,IAAI,CAACH;QAEpC,MAAMI,OAAO3B,WAAWuB;QAExB,MAAMK,UAAU,IAAIC,QAAQ;YAC1B,kBAAkBJ,MAAMK,IAAI,GAAG;QACjC;QAEA,MAAMC,iBAAiB,AAAC,MAAMpC,iBAAiB4B,aAAcnB,oBAAoBmB;QACjFK,QAAQI,GAAG,CAAC,gBAAgBD,eAAeE,IAAI;QAE/C,OAAO,IAAInB,SAASa,MAAM;YACxBC,SAAS3B,gBAAgB;gBACvB2B;gBACApB;YACF;YACA0B,QAAQrC,WAAWsC,EAAE;QACvB;IACF,EAAE,OAAOC,KAAK;QACZ,OAAOlC,WAAW;YAChBI;YACAG,QAAQD,IAAI6B,OAAO,CAAC5B,MAAM;YAC1B2B;YACA5B;QACF;IACF;AACF,EAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import httpStatus from 'http-status';
|
|
2
|
-
import { docAccessOperationGlobal } from 'payload
|
|
2
|
+
import { docAccessOperationGlobal } from 'payload';
|
|
3
3
|
import { headersWithCors } from '../../../utilities/headersWithCors.js';
|
|
4
4
|
export const docAccess = async ({ globalConfig, req })=>{
|
|
5
5
|
const result = await docAccessOperationGlobal({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/globals/docAccess.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { docAccessOperationGlobal } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/globals/docAccess.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { docAccessOperationGlobal } from 'payload'\n\nimport type { GlobalRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const docAccess: GlobalRouteHandler = async ({ globalConfig, req }) => {\n const result = await docAccessOperationGlobal({\n globalConfig,\n req,\n })\n\n return Response.json(result, {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.OK,\n })\n}\n"],"names":["httpStatus","docAccessOperationGlobal","headersWithCors","docAccess","globalConfig","req","result","Response","json","headers","Headers","status","OK"],"rangeMappings":";;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,gBAAgB,cAAa;AACpC,SAASC,wBAAwB,QAAQ,UAAS;AAIlD,SAASC,eAAe,QAAQ,wCAAuC;AAEvE,OAAO,MAAMC,YAAgC,OAAO,EAAEC,YAAY,EAAEC,GAAG,EAAE;IACvE,MAAMC,SAAS,MAAML,yBAAyB;QAC5CG;QACAC;IACF;IAEA,OAAOE,SAASC,IAAI,CAACF,QAAQ;QAC3BG,SAASP,gBAAgB;YACvBO,SAAS,IAAIC;YACbL;QACF;QACAM,QAAQX,WAAWY,EAAE;IACvB;AACF,EAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import httpStatus from 'http-status';
|
|
2
|
-
import { findOneOperation } from 'payload
|
|
3
|
-
import { isNumber } from 'payload/
|
|
2
|
+
import { findOneOperation } from 'payload';
|
|
3
|
+
import { isNumber } from 'payload/shared';
|
|
4
4
|
import { headersWithCors } from '../../../utilities/headersWithCors.js';
|
|
5
5
|
export const findOne = async ({ globalConfig, req })=>{
|
|
6
6
|
const { searchParams } = req;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/globals/findOne.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { findOneOperation } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/globals/findOne.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { findOneOperation } from 'payload'\nimport { isNumber } from 'payload/shared'\n\nimport type { GlobalRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const findOne: GlobalRouteHandler = async ({ globalConfig, req }) => {\n const { searchParams } = req\n const depth = searchParams.get('depth')\n\n const result = await findOneOperation({\n slug: globalConfig.slug,\n depth: isNumber(depth) ? Number(depth) : undefined,\n draft: searchParams.get('draft') === 'true',\n globalConfig,\n req,\n })\n\n return Response.json(result, {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.OK,\n })\n}\n"],"names":["httpStatus","findOneOperation","isNumber","headersWithCors","findOne","globalConfig","req","searchParams","depth","get","result","slug","Number","undefined","draft","Response","json","headers","Headers","status","OK"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,gBAAgB,cAAa;AACpC,SAASC,gBAAgB,QAAQ,UAAS;AAC1C,SAASC,QAAQ,QAAQ,iBAAgB;AAIzC,SAASC,eAAe,QAAQ,wCAAuC;AAEvE,OAAO,MAAMC,UAA8B,OAAO,EAAEC,YAAY,EAAEC,GAAG,EAAE;IACrE,MAAM,EAAEC,YAAY,EAAE,GAAGD;IACzB,MAAME,QAAQD,aAAaE,GAAG,CAAC;IAE/B,MAAMC,SAAS,MAAMT,iBAAiB;QACpCU,MAAMN,aAAaM,IAAI;QACvBH,OAAON,SAASM,SAASI,OAAOJ,SAASK;QACzCC,OAAOP,aAAaE,GAAG,CAAC,aAAa;QACrCJ;QACAC;IACF;IAEA,OAAOS,SAASC,IAAI,CAACN,QAAQ;QAC3BO,SAASd,gBAAgB;YACvBc,SAAS,IAAIC;YACbZ;QACF;QACAa,QAAQnB,WAAWoB,EAAE;IACvB;AACF,EAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import httpStatus from 'http-status';
|
|
2
|
-
import { findVersionByIDOperationGlobal } from 'payload
|
|
3
|
-
import { isNumber } from 'payload/
|
|
2
|
+
import { findVersionByIDOperationGlobal } from 'payload';
|
|
3
|
+
import { isNumber } from 'payload/shared';
|
|
4
4
|
import { headersWithCors } from '../../../utilities/headersWithCors.js';
|
|
5
5
|
export const findVersionByID = async ({ id, globalConfig, req })=>{
|
|
6
6
|
const { searchParams } = req;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/globals/findVersionByID.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { findVersionByIDOperationGlobal } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/globals/findVersionByID.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { findVersionByIDOperationGlobal } from 'payload'\nimport { isNumber } from 'payload/shared'\n\nimport type { GlobalRouteHandlerWithID } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const findVersionByID: GlobalRouteHandlerWithID = async ({ id, globalConfig, req }) => {\n const { searchParams } = req\n const depth = searchParams.get('depth')\n\n const result = await findVersionByIDOperationGlobal({\n id,\n depth: isNumber(depth) ? Number(depth) : undefined,\n globalConfig,\n req,\n })\n\n return Response.json(result, {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.OK,\n })\n}\n"],"names":["httpStatus","findVersionByIDOperationGlobal","isNumber","headersWithCors","findVersionByID","id","globalConfig","req","searchParams","depth","get","result","Number","undefined","Response","json","headers","Headers","status","OK"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,gBAAgB,cAAa;AACpC,SAASC,8BAA8B,QAAQ,UAAS;AACxD,SAASC,QAAQ,QAAQ,iBAAgB;AAIzC,SAASC,eAAe,QAAQ,wCAAuC;AAEvE,OAAO,MAAMC,kBAA4C,OAAO,EAAEC,EAAE,EAAEC,YAAY,EAAEC,GAAG,EAAE;IACvF,MAAM,EAAEC,YAAY,EAAE,GAAGD;IACzB,MAAME,QAAQD,aAAaE,GAAG,CAAC;IAE/B,MAAMC,SAAS,MAAMV,+BAA+B;QAClDI;QACAI,OAAOP,SAASO,SAASG,OAAOH,SAASI;QACzCP;QACAC;IACF;IAEA,OAAOO,SAASC,IAAI,CAACJ,QAAQ;QAC3BK,SAASb,gBAAgB;YACvBa,SAAS,IAAIC;YACbV;QACF;QACAW,QAAQlB,WAAWmB,EAAE;IACvB;AACF,EAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import httpStatus from 'http-status';
|
|
2
|
-
import { findVersionsOperationGlobal } from 'payload
|
|
3
|
-
import { isNumber } from 'payload/
|
|
2
|
+
import { findVersionsOperationGlobal } from 'payload';
|
|
3
|
+
import { isNumber } from 'payload/shared';
|
|
4
4
|
import { headersWithCors } from '../../../utilities/headersWithCors.js';
|
|
5
5
|
export const findVersions = async ({ globalConfig, req })=>{
|
|
6
6
|
const { depth, limit, page, sort, where } = req.query;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/globals/findVersions.ts"],"sourcesContent":["import type { Where } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/globals/findVersions.ts"],"sourcesContent":["import type { Where } from 'payload'\n\nimport httpStatus from 'http-status'\nimport { findVersionsOperationGlobal } from 'payload'\nimport { isNumber } from 'payload/shared'\n\nimport type { GlobalRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const findVersions: GlobalRouteHandler = async ({ globalConfig, req }) => {\n const { depth, limit, page, sort, where } = req.query as {\n depth?: string\n limit?: string\n page?: string\n sort?: string\n where?: Where\n }\n\n const result = await findVersionsOperationGlobal({\n depth: isNumber(depth) ? Number(depth) : undefined,\n globalConfig,\n limit: isNumber(limit) ? Number(limit) : undefined,\n page: isNumber(page) ? Number(page) : undefined,\n req,\n sort,\n where,\n })\n\n return Response.json(result, {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.OK,\n })\n}\n"],"names":["httpStatus","findVersionsOperationGlobal","isNumber","headersWithCors","findVersions","globalConfig","req","depth","limit","page","sort","where","query","result","Number","undefined","Response","json","headers","Headers","status","OK"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,OAAOA,gBAAgB,cAAa;AACpC,SAASC,2BAA2B,QAAQ,UAAS;AACrD,SAASC,QAAQ,QAAQ,iBAAgB;AAIzC,SAASC,eAAe,QAAQ,wCAAuC;AAEvE,OAAO,MAAMC,eAAmC,OAAO,EAAEC,YAAY,EAAEC,GAAG,EAAE;IAC1E,MAAM,EAAEC,KAAK,EAAEC,KAAK,EAAEC,IAAI,EAAEC,IAAI,EAAEC,KAAK,EAAE,GAAGL,IAAIM,KAAK;IAQrD,MAAMC,SAAS,MAAMZ,4BAA4B;QAC/CM,OAAOL,SAASK,SAASO,OAAOP,SAASQ;QACzCV;QACAG,OAAON,SAASM,SAASM,OAAON,SAASO;QACzCN,MAAMP,SAASO,QAAQK,OAAOL,QAAQM;QACtCT;QACAI;QACAC;IACF;IAEA,OAAOK,SAASC,IAAI,CAACJ,QAAQ;QAC3BK,SAASf,gBAAgB;YACvBe,SAAS,IAAIC;YACbb;QACF;QACAc,QAAQpB,WAAWqB,EAAE;IACvB;AACF,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/globals/preview.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"preview.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/globals/preview.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAA;AAKrD,eAAO,MAAM,OAAO,EAAE,kBA2CrB,CAAA"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import httpStatus from 'http-status';
|
|
2
|
-
import { extractJWT } from 'payload
|
|
3
|
-
import {
|
|
4
|
-
import { isNumber } from 'payload/utilities';
|
|
2
|
+
import { extractJWT, findOneOperation } from 'payload';
|
|
3
|
+
import { isNumber } from 'payload/shared';
|
|
5
4
|
import { headersWithCors } from '../../../utilities/headersWithCors.js';
|
|
6
5
|
import { routeError } from '../routeError.js';
|
|
7
6
|
export const preview = async ({ globalConfig, req })=>{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/globals/preview.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { extractJWT
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/globals/preview.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { extractJWT, findOneOperation } from 'payload'\nimport { isNumber } from 'payload/shared'\n\nimport type { GlobalRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\nimport { routeError } from '../routeError.js'\n\nexport const preview: GlobalRouteHandler = async ({ globalConfig, req }) => {\n const { searchParams } = req\n const depth = searchParams.get('depth')\n\n const result = await findOneOperation({\n slug: globalConfig.slug,\n depth: isNumber(depth) ? Number(depth) : undefined,\n draft: searchParams.get('draft') === 'true',\n globalConfig,\n req,\n })\n\n let previewURL: string\n\n const generatePreviewURL = req.payload.config.globals.find(\n (config) => config.slug === globalConfig.slug,\n )?.admin?.preview\n\n const token = extractJWT(req)\n\n if (typeof generatePreviewURL === 'function') {\n try {\n previewURL = await generatePreviewURL(result, {\n locale: req.locale,\n req,\n token,\n })\n } catch (err) {\n return routeError({\n config: req.payload.config,\n err,\n req,\n })\n }\n }\n\n return Response.json(previewURL, {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.OK,\n })\n}\n"],"names":["httpStatus","extractJWT","findOneOperation","isNumber","headersWithCors","routeError","preview","globalConfig","req","searchParams","depth","get","result","slug","Number","undefined","draft","previewURL","generatePreviewURL","payload","config","globals","find","admin","token","locale","err","Response","json","headers","Headers","status","OK"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,gBAAgB,cAAa;AACpC,SAASC,UAAU,EAAEC,gBAAgB,QAAQ,UAAS;AACtD,SAASC,QAAQ,QAAQ,iBAAgB;AAIzC,SAASC,eAAe,QAAQ,wCAAuC;AACvE,SAASC,UAAU,QAAQ,mBAAkB;AAE7C,OAAO,MAAMC,UAA8B,OAAO,EAAEC,YAAY,EAAEC,GAAG,EAAE;IACrE,MAAM,EAAEC,YAAY,EAAE,GAAGD;IACzB,MAAME,QAAQD,aAAaE,GAAG,CAAC;IAE/B,MAAMC,SAAS,MAAMV,iBAAiB;QACpCW,MAAMN,aAAaM,IAAI;QACvBH,OAAOP,SAASO,SAASI,OAAOJ,SAASK;QACzCC,OAAOP,aAAaE,GAAG,CAAC,aAAa;QACrCJ;QACAC;IACF;IAEA,IAAIS;IAEJ,MAAMC,qBAAqBV,IAAIW,OAAO,CAACC,MAAM,CAACC,OAAO,CAACC,IAAI,CACxD,CAACF,SAAWA,OAAOP,IAAI,KAAKN,aAAaM,IAAI,GAC5CU,OAAOjB;IAEV,MAAMkB,QAAQvB,WAAWO;IAEzB,IAAI,OAAOU,uBAAuB,YAAY;QAC5C,IAAI;YACFD,aAAa,MAAMC,mBAAmBN,QAAQ;gBAC5Ca,QAAQjB,IAAIiB,MAAM;gBAClBjB;gBACAgB;YACF;QACF,EAAE,OAAOE,KAAK;YACZ,OAAOrB,WAAW;gBAChBe,QAAQZ,IAAIW,OAAO,CAACC,MAAM;gBAC1BM;gBACAlB;YACF;QACF;IACF;IAEA,OAAOmB,SAASC,IAAI,CAACX,YAAY;QAC/BY,SAASzB,gBAAgB;YACvByB,SAAS,IAAIC;YACbtB;QACF;QACAuB,QAAQ/B,WAAWgC,EAAE;IACvB;AACF,EAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import httpStatus from 'http-status';
|
|
2
|
-
import { restoreVersionOperationGlobal } from 'payload
|
|
3
|
-
import { isNumber } from 'payload/
|
|
2
|
+
import { restoreVersionOperationGlobal } from 'payload';
|
|
3
|
+
import { isNumber } from 'payload/shared';
|
|
4
4
|
import { headersWithCors } from '../../../utilities/headersWithCors.js';
|
|
5
5
|
export const restoreVersion = async ({ id, globalConfig, req })=>{
|
|
6
6
|
const { searchParams } = req;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/globals/restoreVersion.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { restoreVersionOperationGlobal } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/globals/restoreVersion.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { restoreVersionOperationGlobal } from 'payload'\nimport { isNumber } from 'payload/shared'\n\nimport type { GlobalRouteHandlerWithID } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const restoreVersion: GlobalRouteHandlerWithID = async ({ id, globalConfig, req }) => {\n const { searchParams } = req\n const depth = searchParams.get('depth')\n\n const doc = await restoreVersionOperationGlobal({\n id,\n depth: isNumber(depth) ? Number(depth) : undefined,\n globalConfig,\n req,\n })\n\n return Response.json(\n {\n doc,\n message: req.t('version:restoredSuccessfully'),\n },\n {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.OK,\n },\n )\n}\n"],"names":["httpStatus","restoreVersionOperationGlobal","isNumber","headersWithCors","restoreVersion","id","globalConfig","req","searchParams","depth","get","doc","Number","undefined","Response","json","message","t","headers","Headers","status","OK"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,gBAAgB,cAAa;AACpC,SAASC,6BAA6B,QAAQ,UAAS;AACvD,SAASC,QAAQ,QAAQ,iBAAgB;AAIzC,SAASC,eAAe,QAAQ,wCAAuC;AAEvE,OAAO,MAAMC,iBAA2C,OAAO,EAAEC,EAAE,EAAEC,YAAY,EAAEC,GAAG,EAAE;IACtF,MAAM,EAAEC,YAAY,EAAE,GAAGD;IACzB,MAAME,QAAQD,aAAaE,GAAG,CAAC;IAE/B,MAAMC,MAAM,MAAMV,8BAA8B;QAC9CI;QACAI,OAAOP,SAASO,SAASG,OAAOH,SAASI;QACzCP;QACAC;IACF;IAEA,OAAOO,SAASC,IAAI,CAClB;QACEJ;QACAK,SAAST,IAAIU,CAAC,CAAC;IACjB,GACA;QACEC,SAASf,gBAAgB;YACvBe,SAAS,IAAIC;YACbZ;QACF;QACAa,QAAQpB,WAAWqB,EAAE;IACvB;AAEJ,EAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import httpStatus from 'http-status';
|
|
2
|
-
import { updateOperationGlobal } from 'payload
|
|
3
|
-
import { isNumber } from 'payload/
|
|
2
|
+
import { updateOperationGlobal } from 'payload';
|
|
3
|
+
import { isNumber } from 'payload/shared';
|
|
4
4
|
import { headersWithCors } from '../../../utilities/headersWithCors.js';
|
|
5
5
|
export const update = async ({ globalConfig, req })=>{
|
|
6
6
|
const { searchParams } = req;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/routes/rest/globals/update.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { updateOperationGlobal } from 'payload
|
|
1
|
+
{"version":3,"sources":["../../../../src/routes/rest/globals/update.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { updateOperationGlobal } from 'payload'\nimport { isNumber } from 'payload/shared'\n\nimport type { GlobalRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const update: GlobalRouteHandler = async ({ globalConfig, req }) => {\n const { searchParams } = req\n const depth = searchParams.get('depth')\n const draft = searchParams.get('draft') === 'true'\n const autosave = searchParams.get('autosave') === 'true'\n\n const result = await updateOperationGlobal({\n slug: globalConfig.slug,\n autosave,\n data: req.data,\n depth: isNumber(depth) ? Number(depth) : undefined,\n draft,\n globalConfig,\n req,\n })\n\n let message = req.t('general:updatedSuccessfully')\n\n if (draft) message = req.t('version:draftSavedSuccessfully')\n if (autosave) message = req.t('version:autosavedSuccessfully')\n\n return Response.json(\n {\n message,\n result,\n },\n {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.OK,\n },\n )\n}\n"],"names":["httpStatus","updateOperationGlobal","isNumber","headersWithCors","update","globalConfig","req","searchParams","depth","get","draft","autosave","result","slug","data","Number","undefined","message","t","Response","json","headers","Headers","status","OK"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,OAAOA,gBAAgB,cAAa;AACpC,SAASC,qBAAqB,QAAQ,UAAS;AAC/C,SAASC,QAAQ,QAAQ,iBAAgB;AAIzC,SAASC,eAAe,QAAQ,wCAAuC;AAEvE,OAAO,MAAMC,SAA6B,OAAO,EAAEC,YAAY,EAAEC,GAAG,EAAE;IACpE,MAAM,EAAEC,YAAY,EAAE,GAAGD;IACzB,MAAME,QAAQD,aAAaE,GAAG,CAAC;IAC/B,MAAMC,QAAQH,aAAaE,GAAG,CAAC,aAAa;IAC5C,MAAME,WAAWJ,aAAaE,GAAG,CAAC,gBAAgB;IAElD,MAAMG,SAAS,MAAMX,sBAAsB;QACzCY,MAAMR,aAAaQ,IAAI;QACvBF;QACAG,MAAMR,IAAIQ,IAAI;QACdN,OAAON,SAASM,SAASO,OAAOP,SAASQ;QACzCN;QACAL;QACAC;IACF;IAEA,IAAIW,UAAUX,IAAIY,CAAC,CAAC;IAEpB,IAAIR,OAAOO,UAAUX,IAAIY,CAAC,CAAC;IAC3B,IAAIP,UAAUM,UAAUX,IAAIY,CAAC,CAAC;IAE9B,OAAOC,SAASC,IAAI,CAClB;QACEH;QACAL;IACF,GACA;QACES,SAASlB,gBAAgB;YACvBkB,SAAS,IAAIC;YACbhB;QACF;QACAiB,QAAQvB,WAAWwB,EAAE;IACvB;AAEJ,EAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { SanitizedConfig } from 'payload
|
|
1
|
+
import type { SanitizedConfig } from 'payload';
|
|
2
2
|
export declare const OPTIONS: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request) => Promise<Response>;
|
|
3
3
|
export declare const GET: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params: { slug } }: {
|
|
4
4
|
params: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/rest/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/rest/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAMV,eAAe,EAChB,MAAM,SAAS,CAAA;AA0LhB,eAAO,MAAM,OAAO,WACT,QAAQ,eAAe,CAAC,GAAG,eAAe,eAAqB,OAAO,sBA0B9E,CAAA;AAEH,eAAO,MAAM,GAAG,WACL,QAAQ,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,wBAAwB;IAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CAAE,sBA+K5E,CAAA;AAEH,eAAO,MAAM,IAAI,WACN,QAAQ,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,wBAAwB;IAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CAAE,sBAqK5E,CAAA;AAEH,eAAO,MAAM,MAAM,WACR,QAAQ,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,wBAAwB;IAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CAAE,sBA6E5E,CAAA;AAEH,eAAO,MAAM,KAAK,WACP,QAAQ,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,wBAAwB;IAAE,MAAM,EAAE;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAA;CAAE,sBA8E5E,CAAA"}
|
|
@@ -39,6 +39,7 @@ import { findVersions as findVersionsGlobal } from './globals/findVersions.js';
|
|
|
39
39
|
import { preview as previewGlobal } from './globals/preview.js';
|
|
40
40
|
import { restoreVersion as restoreVersionGlobal } from './globals/restoreVersion.js';
|
|
41
41
|
import { update as updateGlobal } from './globals/update.js';
|
|
42
|
+
import { generateOGImage } from './og/index.js';
|
|
42
43
|
import { routeError } from './routeError.js';
|
|
43
44
|
const endpoints = {
|
|
44
45
|
collection: {
|
|
@@ -94,7 +95,8 @@ const endpoints = {
|
|
|
94
95
|
},
|
|
95
96
|
root: {
|
|
96
97
|
GET: {
|
|
97
|
-
access
|
|
98
|
+
access,
|
|
99
|
+
og: generateOGImage
|
|
98
100
|
},
|
|
99
101
|
POST: {
|
|
100
102
|
'form-state': buildFormState
|
|
@@ -105,13 +107,23 @@ const handleCustomEndpoints = ({ endpoints, entitySlug, payloadRequest })=>{
|
|
|
105
107
|
if (endpoints && endpoints.length > 0) {
|
|
106
108
|
let handlerParams = {};
|
|
107
109
|
const { pathname } = payloadRequest;
|
|
110
|
+
/*
|
|
111
|
+
* This makes sure the next.js basePath property is supported. If basePath is used, payload config.routes.api should include it. This makes all outgoing frontend request
|
|
112
|
+
* target the correct API endpoint starting with basePath, which is good!
|
|
113
|
+
*
|
|
114
|
+
* The incoming request (here) will not include the basePath though, as it's automatically stripped by Next.js. Since we are adding the basePath to the pathPrefix below though
|
|
115
|
+
* (from payloadRequest.payload.config.routes.api) we need to add it to pathname, which does not contain the basePath. Otherwise, no endpoint will be matched if basePath is set.
|
|
116
|
+
*/ let adjustedPathname = pathname;
|
|
117
|
+
if (process.env.NEXT_BASE_PATH) {
|
|
118
|
+
adjustedPathname = process.env.NEXT_BASE_PATH + pathname;
|
|
119
|
+
}
|
|
108
120
|
const pathPrefix = payloadRequest.payload.config.routes.api + (entitySlug ? `/${entitySlug}` : '');
|
|
109
121
|
const customEndpoint = endpoints.find((endpoint)=>{
|
|
110
122
|
if (endpoint.method === payloadRequest.method.toLowerCase()) {
|
|
111
123
|
const pathMatchFn = match(`${pathPrefix}${endpoint.path}`, {
|
|
112
124
|
decode: decodeURIComponent
|
|
113
125
|
});
|
|
114
|
-
const tempParams = pathMatchFn(
|
|
126
|
+
const tempParams = pathMatchFn(adjustedPathname);
|
|
115
127
|
if (tempParams) {
|
|
116
128
|
handlerParams = tempParams.params;
|
|
117
129
|
return true;
|
|
@@ -345,6 +357,14 @@ export const POST = (config)=>async (request, { params: { slug } })=>{
|
|
|
345
357
|
let req;
|
|
346
358
|
let res;
|
|
347
359
|
let collection;
|
|
360
|
+
const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override');
|
|
361
|
+
if (overrideHttpMethod === 'GET') {
|
|
362
|
+
return await GET(config)(request, {
|
|
363
|
+
params: {
|
|
364
|
+
slug
|
|
365
|
+
}
|
|
366
|
+
});
|
|
367
|
+
}
|
|
348
368
|
try {
|
|
349
369
|
req = await createPayloadRequest({
|
|
350
370
|
config,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/routes/rest/index.ts"],"sourcesContent":["import type { Endpoint } from 'payload/config'\nimport type {\n Collection,\n GlobalConfig,\n PayloadRequest,\n PayloadRequestData,\n SanitizedConfig,\n} from 'payload/types'\n\nimport httpStatus from 'http-status'\nimport { match } from 'path-to-regexp'\n\nimport type {\n CollectionRouteHandler,\n CollectionRouteHandlerWithID,\n GlobalRouteHandler,\n GlobalRouteHandlerWithID,\n} from './types.js'\n\nimport { addDataAndFileToRequest } from '../../utilities/addDataAndFileToRequest.js'\nimport { addLocalesToRequestFromData } from '../../utilities/addLocalesToRequest.js'\nimport { createPayloadRequest } from '../../utilities/createPayloadRequest.js'\nimport { headersWithCors } from '../../utilities/headersWithCors.js'\nimport { access } from './auth/access.js'\nimport { forgotPassword } from './auth/forgotPassword.js'\nimport { init } from './auth/init.js'\nimport { login } from './auth/login.js'\nimport { logout } from './auth/logout.js'\nimport { me } from './auth/me.js'\nimport { refresh } from './auth/refresh.js'\nimport { registerFirstUser } from './auth/registerFirstUser.js'\nimport { resetPassword } from './auth/resetPassword.js'\nimport { unlock } from './auth/unlock.js'\nimport { verifyEmail } from './auth/verifyEmail.js'\nimport { buildFormState } from './buildFormState.js'\nimport { endpointsAreDisabled } from './checkEndpoints.js'\nimport { count } from './collections/count.js'\nimport { create } from './collections/create.js'\nimport { deleteDoc } from './collections/delete.js'\nimport { deleteByID } from './collections/deleteByID.js'\nimport { docAccess } from './collections/docAccess.js'\nimport { duplicate } from './collections/duplicate.js'\nimport { find } from './collections/find.js'\nimport { findByID } from './collections/findByID.js'\nimport { findVersionByID } from './collections/findVersionByID.js'\nimport { findVersions } from './collections/findVersions.js'\nimport { preview as previewCollection } from './collections/preview.js'\nimport { restoreVersion } from './collections/restoreVersion.js'\nimport { update } from './collections/update.js'\nimport { updateByID } from './collections/updateByID.js'\nimport { getFile } from './files/getFile.js'\nimport { docAccess as docAccessGlobal } from './globals/docAccess.js'\nimport { findOne } from './globals/findOne.js'\nimport { findVersionByID as findVersionByIdGlobal } from './globals/findVersionByID.js'\nimport { findVersions as findVersionsGlobal } from './globals/findVersions.js'\nimport { preview as previewGlobal } from './globals/preview.js'\nimport { restoreVersion as restoreVersionGlobal } from './globals/restoreVersion.js'\nimport { update as updateGlobal } from './globals/update.js'\nimport { routeError } from './routeError.js'\n\nconst endpoints = {\n collection: {\n DELETE: {\n delete: deleteDoc,\n deleteByID,\n },\n GET: {\n count,\n 'doc-access-by-id': docAccess,\n 'doc-versions-by-id': findVersionByID,\n find,\n findByID,\n getFile,\n init,\n me,\n preview: previewCollection,\n versions: findVersions,\n },\n PATCH: {\n update,\n updateByID,\n },\n POST: {\n access: docAccess,\n create,\n 'doc-access-by-id': docAccess,\n 'doc-verify-by-id': verifyEmail,\n 'doc-versions-by-id': restoreVersion,\n duplicate,\n 'first-register': registerFirstUser,\n 'forgot-password': forgotPassword,\n login,\n logout,\n 'refresh-token': refresh,\n 'reset-password': resetPassword,\n unlock,\n },\n },\n global: {\n GET: {\n 'doc-access': docAccessGlobal,\n 'doc-versions': findVersionsGlobal,\n 'doc-versions-by-id': findVersionByIdGlobal,\n findOne,\n preview: previewGlobal,\n },\n POST: {\n 'doc-access': docAccessGlobal,\n 'doc-versions-by-id': restoreVersionGlobal,\n update: updateGlobal,\n },\n },\n root: {\n GET: {\n access,\n },\n POST: {\n 'form-state': buildFormState,\n },\n },\n}\n\nconst handleCustomEndpoints = ({\n endpoints,\n entitySlug,\n payloadRequest,\n}: {\n endpoints: Endpoint[] | GlobalConfig['endpoints']\n entitySlug?: string\n payloadRequest: PayloadRequest\n}): Promise<Response> | Response => {\n if (endpoints && endpoints.length > 0) {\n let handlerParams = {}\n const { pathname } = payloadRequest\n const pathPrefix =\n payloadRequest.payload.config.routes.api + (entitySlug ? `/${entitySlug}` : '')\n\n const customEndpoint = endpoints.find((endpoint) => {\n if (endpoint.method === payloadRequest.method.toLowerCase()) {\n const pathMatchFn = match(`${pathPrefix}${endpoint.path}`, {\n decode: decodeURIComponent,\n })\n const tempParams = pathMatchFn(pathname)\n if (tempParams) {\n handlerParams = tempParams.params\n return true\n }\n }\n })\n\n if (customEndpoint) {\n payloadRequest.routeParams = {\n ...payloadRequest.routeParams,\n ...handlerParams,\n }\n return customEndpoint.handler(payloadRequest)\n }\n }\n\n return null\n}\n\nconst RouteNotFoundResponse = ({ slug, req }: { req: PayloadRequest; slug: string[] }) =>\n Response.json(\n {\n message: `Route Not Found: \"${slug.join('/')}\"`,\n },\n {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.NOT_FOUND,\n },\n )\n\nexport const OPTIONS =\n (config: Promise<SanitizedConfig> | SanitizedConfig) => async (request: Request) => {\n let req: PayloadRequest\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n\n return Response.json(\n {},\n {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: 200,\n },\n )\n } catch (error) {\n return routeError({\n config,\n err: error,\n req: req || request,\n })\n }\n }\n\nexport const GET =\n (config: Promise<SanitizedConfig> | SanitizedConfig) =>\n async (request: Request, { params: { slug } }: { params: { slug: string[] } }) => {\n const [slug1, slug2, slug3, slug4] = slug\n let req: PayloadRequest | (PayloadRequest & PayloadRequestData)\n let res: Response\n let collection: Collection\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n\n if (disableEndpoints) return disableEndpoints\n\n collection = req.payload.collections?.[slug1]\n\n if (collection) {\n req.routeParams.collection = slug1\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n payloadRequest: req,\n })\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.GET.find({ collection, req: payloadRequest })\n break\n case 2:\n if (slug2 in endpoints.collection.GET) {\n // /:collection/init\n // /:collection/me\n // /:collection/versions\n // /:collection/count\n res = await (endpoints.collection.GET[slug2] as CollectionRouteHandler)({\n collection,\n req: payloadRequest,\n })\n } else {\n // /:collection/:id\n res = await endpoints.collection.GET.findByID({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n }\n break\n case 3:\n if (slug2 === 'file') {\n // /:collection/file/:filename\n res = await endpoints.collection.GET.getFile({\n collection,\n filename: slug3,\n req: payloadRequest,\n })\n } else if (slug3 in endpoints.collection.GET) {\n // /:collection/:id/preview\n res = await (endpoints.collection.GET[slug3] as CollectionRouteHandlerWithID)({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n } else if (`doc-${slug2}-by-id` in endpoints.collection.GET) {\n // /:collection/access/:id\n // /:collection/versions/:id\n res = await (\n endpoints.collection.GET[`doc-${slug2}-by-id`] as CollectionRouteHandlerWithID\n )({ id: slug3, collection, req: payloadRequest })\n }\n break\n }\n }\n } else if (slug1 === 'globals') {\n const globalConfig = req.payload.config.globals.find((global) => global.slug === slug2)\n req.routeParams.global = globalConfig.slug\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: globalConfig.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: globalConfig.endpoints,\n entitySlug: `${slug1}/${slug2}`,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 2:\n // /globals/:slug\n res = await endpoints.global.GET.findOne({ globalConfig, req: payloadRequest })\n break\n case 3:\n if (slug3 in endpoints.global.GET) {\n // /globals/:slug/preview\n res = await (endpoints.global.GET[slug3] as GlobalRouteHandler)({\n globalConfig,\n req: payloadRequest,\n })\n } else if (`doc-${slug3}` in endpoints.global.GET) {\n // /globals/:slug/access\n // /globals/:slug/versions\n // /globals/:slug/preview\n res = await (endpoints.global.GET?.[`doc-${slug3}`] as GlobalRouteHandler)({\n globalConfig,\n req: payloadRequest,\n })\n }\n break\n case 4:\n if (`doc-${slug3}-by-id` in endpoints.global.GET) {\n // /globals/:slug/versions/:id\n res = await (\n endpoints.global.GET?.[`doc-${slug3}-by-id`] as GlobalRouteHandlerWithID\n )({\n id: slug4,\n globalConfig,\n req: payloadRequest,\n })\n }\n break\n }\n }\n } else if (slug.length === 1 && slug1 in endpoints.root.GET) {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n res = await endpoints.root.GET[slug1]({ req: payloadRequest })\n }\n\n if (res instanceof Response) return res\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n payloadRequest: req,\n })\n if (customEndpointResponse) return customEndpointResponse\n\n return RouteNotFoundResponse({\n slug,\n req,\n })\n } catch (error) {\n return routeError({\n collection,\n config,\n err: error,\n req: req || request,\n })\n }\n }\n\nexport const POST =\n (config: Promise<SanitizedConfig> | SanitizedConfig) =>\n async (request: Request, { params: { slug } }: { params: { slug: string[] } }) => {\n const [slug1, slug2, slug3, slug4] = slug\n let req: PayloadRequest\n let res: Response\n let collection: Collection\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n\n collection = req.payload.collections?.[slug1]\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n\n if (disableEndpoints) return disableEndpoints\n\n if (collection) {\n req.routeParams.collection = slug1\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.POST.create({ collection, req: payloadRequest })\n break\n case 2:\n if (slug2 in endpoints.collection.POST) {\n // /:collection/login\n // /:collection/logout\n // /:collection/unlock\n // /:collection/access\n // /:collection/first-register\n // /:collection/forgot-password\n // /:collection/reset-password\n // /:collection/refresh-token\n\n res = await (endpoints.collection.POST?.[slug2] as CollectionRouteHandler)({\n collection,\n req: payloadRequest,\n })\n }\n break\n case 3:\n if (`doc-${slug2}-by-id` in endpoints.collection.POST) {\n // /:collection/access/:id\n // /:collection/versions/:id\n // /:collection/verify/:token (\"doc-verify-by-id\" uses id as token internally)\n res = await (\n endpoints.collection.POST[`doc-${slug2}-by-id`] as CollectionRouteHandlerWithID\n )({ id: slug3, collection, req: payloadRequest })\n } else if (slug3 === 'duplicate' && collection.config.disableDuplicate !== true) {\n // /:collection/:id/duplicate\n res = await endpoints.collection.POST.duplicate({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n }\n break\n }\n }\n } else if (slug1 === 'globals' && slug2) {\n const globalConfig = req.payload.config.globals.find((global) => global.slug === slug2)\n req.routeParams.global = globalConfig.slug\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: globalConfig.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: globalConfig.endpoints,\n entitySlug: `${slug1}/${slug2}`,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n switch (slug.length) {\n case 2:\n // /globals/:slug\n res = await endpoints.global.POST.update({ globalConfig, req: payloadRequest })\n break\n case 3:\n if (`doc-${slug3}` in endpoints.global.POST) {\n // /globals/:slug/access\n res = await (endpoints.global.POST?.[`doc-${slug3}`] as GlobalRouteHandler)({\n globalConfig,\n req: payloadRequest,\n })\n }\n break\n case 4:\n if (`doc-${slug3}-by-id` in endpoints.global.POST) {\n // /globals/:slug/versions/:id\n res = await (\n endpoints.global.POST?.[`doc-${slug3}-by-id`] as GlobalRouteHandlerWithID\n )({\n id: slug4,\n globalConfig,\n req: payloadRequest,\n })\n }\n break\n default:\n res = new Response('Route Not Found', { status: 404 })\n }\n }\n } else if (slug.length === 1 && slug1 in endpoints.root.POST) {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n res = await endpoints.root.POST[slug1]({ req: payloadRequest })\n }\n\n if (res instanceof Response) return res\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n payloadRequest: req,\n })\n if (customEndpointResponse) return customEndpointResponse\n\n return RouteNotFoundResponse({\n slug,\n req,\n })\n } catch (error) {\n return routeError({\n collection,\n config,\n err: error,\n req: req || request,\n })\n }\n }\n\nexport const DELETE =\n (config: Promise<SanitizedConfig> | SanitizedConfig) =>\n async (request: Request, { params: { slug } }: { params: { slug: string[] } }) => {\n const [slug1, slug2] = slug\n let req: PayloadRequest\n let res: Response\n let collection: Collection\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n collection = req.payload.collections?.[slug1]\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n if (collection) {\n req.routeParams.collection = slug1\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n payloadRequest: req,\n })\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.DELETE.delete({ collection, req: payloadRequest })\n break\n case 2:\n // /:collection/:id\n res = await endpoints.collection.DELETE.deleteByID({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n break\n }\n }\n }\n\n if (res instanceof Response) return res\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n payloadRequest: req,\n })\n if (customEndpointResponse) return customEndpointResponse\n\n return RouteNotFoundResponse({\n slug,\n req,\n })\n } catch (error) {\n return routeError({\n collection,\n config,\n err: error,\n req: req || request,\n })\n }\n }\n\nexport const PATCH =\n (config: Promise<SanitizedConfig> | SanitizedConfig) =>\n async (request: Request, { params: { slug } }: { params: { slug: string[] } }) => {\n const [slug1, slug2] = slug\n let req: PayloadRequest\n let res: Response\n let collection: Collection\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n collection = req.payload.collections?.[slug1]\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n if (collection) {\n req.routeParams.collection = slug1\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.PATCH.update({ collection, req: payloadRequest })\n break\n case 2:\n // /:collection/:id\n res = await endpoints.collection.PATCH.updateByID({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n break\n }\n }\n }\n\n if (res instanceof Response) return res\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n payloadRequest: req,\n })\n if (customEndpointResponse) return customEndpointResponse\n\n return RouteNotFoundResponse({\n slug,\n req,\n })\n } catch (error) {\n return routeError({\n collection,\n config,\n err: error,\n req: req || request,\n })\n }\n }\n"],"names":["httpStatus","match","addDataAndFileToRequest","addLocalesToRequestFromData","createPayloadRequest","headersWithCors","access","forgotPassword","init","login","logout","me","refresh","registerFirstUser","resetPassword","unlock","verifyEmail","buildFormState","endpointsAreDisabled","count","create","deleteDoc","deleteByID","docAccess","duplicate","find","findByID","findVersionByID","findVersions","preview","previewCollection","restoreVersion","update","updateByID","getFile","docAccessGlobal","findOne","findVersionByIdGlobal","findVersionsGlobal","previewGlobal","restoreVersionGlobal","updateGlobal","routeError","endpoints","collection","DELETE","delete","GET","versions","PATCH","POST","global","root","handleCustomEndpoints","entitySlug","payloadRequest","length","handlerParams","pathname","pathPrefix","payload","config","routes","api","customEndpoint","endpoint","method","toLowerCase","pathMatchFn","path","decode","decodeURIComponent","tempParams","params","routeParams","handler","RouteNotFoundResponse","slug","req","Response","json","message","join","headers","Headers","status","NOT_FOUND","OPTIONS","request","error","err","slug1","slug2","slug3","slug4","res","disableEndpoints","collections","customEndpointResponse","reqWithData","id","filename","globalConfig","globals","disableDuplicate"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/routes/rest/index.ts"],"sourcesContent":["import type {\n Collection,\n Endpoint,\n GlobalConfig,\n PayloadRequest,\n PayloadRequestData,\n SanitizedConfig,\n} from 'payload'\n\nimport httpStatus from 'http-status'\nimport { match } from 'path-to-regexp'\n\nimport type {\n CollectionRouteHandler,\n CollectionRouteHandlerWithID,\n GlobalRouteHandler,\n GlobalRouteHandlerWithID,\n} from './types.js'\n\nimport { addDataAndFileToRequest } from '../../utilities/addDataAndFileToRequest.js'\nimport { addLocalesToRequestFromData } from '../../utilities/addLocalesToRequest.js'\nimport { createPayloadRequest } from '../../utilities/createPayloadRequest.js'\nimport { headersWithCors } from '../../utilities/headersWithCors.js'\nimport { access } from './auth/access.js'\nimport { forgotPassword } from './auth/forgotPassword.js'\nimport { init } from './auth/init.js'\nimport { login } from './auth/login.js'\nimport { logout } from './auth/logout.js'\nimport { me } from './auth/me.js'\nimport { refresh } from './auth/refresh.js'\nimport { registerFirstUser } from './auth/registerFirstUser.js'\nimport { resetPassword } from './auth/resetPassword.js'\nimport { unlock } from './auth/unlock.js'\nimport { verifyEmail } from './auth/verifyEmail.js'\nimport { buildFormState } from './buildFormState.js'\nimport { endpointsAreDisabled } from './checkEndpoints.js'\nimport { count } from './collections/count.js'\nimport { create } from './collections/create.js'\nimport { deleteDoc } from './collections/delete.js'\nimport { deleteByID } from './collections/deleteByID.js'\nimport { docAccess } from './collections/docAccess.js'\nimport { duplicate } from './collections/duplicate.js'\nimport { find } from './collections/find.js'\nimport { findByID } from './collections/findByID.js'\nimport { findVersionByID } from './collections/findVersionByID.js'\nimport { findVersions } from './collections/findVersions.js'\nimport { preview as previewCollection } from './collections/preview.js'\nimport { restoreVersion } from './collections/restoreVersion.js'\nimport { update } from './collections/update.js'\nimport { updateByID } from './collections/updateByID.js'\nimport { getFile } from './files/getFile.js'\nimport { docAccess as docAccessGlobal } from './globals/docAccess.js'\nimport { findOne } from './globals/findOne.js'\nimport { findVersionByID as findVersionByIdGlobal } from './globals/findVersionByID.js'\nimport { findVersions as findVersionsGlobal } from './globals/findVersions.js'\nimport { preview as previewGlobal } from './globals/preview.js'\nimport { restoreVersion as restoreVersionGlobal } from './globals/restoreVersion.js'\nimport { update as updateGlobal } from './globals/update.js'\nimport { generateOGImage } from './og/index.js'\nimport { routeError } from './routeError.js'\n\nconst endpoints = {\n collection: {\n DELETE: {\n delete: deleteDoc,\n deleteByID,\n },\n GET: {\n count,\n 'doc-access-by-id': docAccess,\n 'doc-versions-by-id': findVersionByID,\n find,\n findByID,\n getFile,\n init,\n me,\n preview: previewCollection,\n versions: findVersions,\n },\n PATCH: {\n update,\n updateByID,\n },\n POST: {\n access: docAccess,\n create,\n 'doc-access-by-id': docAccess,\n 'doc-verify-by-id': verifyEmail,\n 'doc-versions-by-id': restoreVersion,\n duplicate,\n 'first-register': registerFirstUser,\n 'forgot-password': forgotPassword,\n login,\n logout,\n 'refresh-token': refresh,\n 'reset-password': resetPassword,\n unlock,\n },\n },\n global: {\n GET: {\n 'doc-access': docAccessGlobal,\n 'doc-versions': findVersionsGlobal,\n 'doc-versions-by-id': findVersionByIdGlobal,\n findOne,\n preview: previewGlobal,\n },\n POST: {\n 'doc-access': docAccessGlobal,\n 'doc-versions-by-id': restoreVersionGlobal,\n update: updateGlobal,\n },\n },\n root: {\n GET: {\n access,\n og: generateOGImage,\n },\n POST: {\n 'form-state': buildFormState,\n },\n },\n}\n\nconst handleCustomEndpoints = ({\n endpoints,\n entitySlug,\n payloadRequest,\n}: {\n endpoints: Endpoint[] | GlobalConfig['endpoints']\n entitySlug?: string\n payloadRequest: PayloadRequest\n}): Promise<Response> | Response => {\n if (endpoints && endpoints.length > 0) {\n let handlerParams = {}\n const { pathname } = payloadRequest\n\n /*\n * This makes sure the next.js basePath property is supported. If basePath is used, payload config.routes.api should include it. This makes all outgoing frontend request\n * target the correct API endpoint starting with basePath, which is good!\n *\n * The incoming request (here) will not include the basePath though, as it's automatically stripped by Next.js. Since we are adding the basePath to the pathPrefix below though\n * (from payloadRequest.payload.config.routes.api) we need to add it to pathname, which does not contain the basePath. Otherwise, no endpoint will be matched if basePath is set.\n */\n let adjustedPathname = pathname\n\n if (process.env.NEXT_BASE_PATH) {\n adjustedPathname = process.env.NEXT_BASE_PATH + pathname\n }\n\n const pathPrefix =\n payloadRequest.payload.config.routes.api + (entitySlug ? `/${entitySlug}` : '')\n\n const customEndpoint = endpoints.find((endpoint) => {\n if (endpoint.method === payloadRequest.method.toLowerCase()) {\n const pathMatchFn = match(`${pathPrefix}${endpoint.path}`, {\n decode: decodeURIComponent,\n })\n\n const tempParams = pathMatchFn(adjustedPathname)\n if (tempParams) {\n handlerParams = tempParams.params\n return true\n }\n }\n })\n\n if (customEndpoint) {\n payloadRequest.routeParams = {\n ...payloadRequest.routeParams,\n ...handlerParams,\n }\n return customEndpoint.handler(payloadRequest)\n }\n }\n\n return null\n}\n\nconst RouteNotFoundResponse = ({ slug, req }: { req: PayloadRequest; slug: string[] }) =>\n Response.json(\n {\n message: `Route Not Found: \"${slug.join('/')}\"`,\n },\n {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: httpStatus.NOT_FOUND,\n },\n )\n\nexport const OPTIONS =\n (config: Promise<SanitizedConfig> | SanitizedConfig) => async (request: Request) => {\n let req: PayloadRequest\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n\n return Response.json(\n {},\n {\n headers: headersWithCors({\n headers: new Headers(),\n req,\n }),\n status: 200,\n },\n )\n } catch (error) {\n return routeError({\n config,\n err: error,\n req: req || request,\n })\n }\n }\n\nexport const GET =\n (config: Promise<SanitizedConfig> | SanitizedConfig) =>\n async (request: Request, { params: { slug } }: { params: { slug: string[] } }) => {\n const [slug1, slug2, slug3, slug4] = slug\n let req: PayloadRequest | (PayloadRequest & PayloadRequestData)\n let res: Response\n let collection: Collection\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n\n if (disableEndpoints) return disableEndpoints\n\n collection = req.payload.collections?.[slug1]\n\n if (collection) {\n req.routeParams.collection = slug1\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.GET.find({ collection, req: payloadRequest })\n break\n case 2:\n if (slug2 in endpoints.collection.GET) {\n // /:collection/init\n // /:collection/me\n // /:collection/versions\n // /:collection/count\n res = await (endpoints.collection.GET[slug2] as CollectionRouteHandler)({\n collection,\n req: payloadRequest,\n })\n } else {\n // /:collection/:id\n res = await endpoints.collection.GET.findByID({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n }\n break\n case 3:\n if (slug2 === 'file') {\n // /:collection/file/:filename\n res = await endpoints.collection.GET.getFile({\n collection,\n filename: slug3,\n req: payloadRequest,\n })\n } else if (slug3 in endpoints.collection.GET) {\n // /:collection/:id/preview\n res = await (endpoints.collection.GET[slug3] as CollectionRouteHandlerWithID)({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n } else if (`doc-${slug2}-by-id` in endpoints.collection.GET) {\n // /:collection/access/:id\n // /:collection/versions/:id\n res = await (\n endpoints.collection.GET[`doc-${slug2}-by-id`] as CollectionRouteHandlerWithID\n )({ id: slug3, collection, req: payloadRequest })\n }\n break\n }\n }\n } else if (slug1 === 'globals') {\n const globalConfig = req.payload.config.globals.find((global) => global.slug === slug2)\n req.routeParams.global = globalConfig.slug\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: globalConfig.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: globalConfig.endpoints,\n entitySlug: `${slug1}/${slug2}`,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 2:\n // /globals/:slug\n res = await endpoints.global.GET.findOne({ globalConfig, req: payloadRequest })\n break\n case 3:\n if (slug3 in endpoints.global.GET) {\n // /globals/:slug/preview\n res = await (endpoints.global.GET[slug3] as GlobalRouteHandler)({\n globalConfig,\n req: payloadRequest,\n })\n } else if (`doc-${slug3}` in endpoints.global.GET) {\n // /globals/:slug/access\n // /globals/:slug/versions\n // /globals/:slug/preview\n res = await (endpoints.global.GET?.[`doc-${slug3}`] as GlobalRouteHandler)({\n globalConfig,\n req: payloadRequest,\n })\n }\n break\n case 4:\n if (`doc-${slug3}-by-id` in endpoints.global.GET) {\n // /globals/:slug/versions/:id\n res = await (\n endpoints.global.GET?.[`doc-${slug3}-by-id`] as GlobalRouteHandlerWithID\n )({\n id: slug4,\n globalConfig,\n req: payloadRequest,\n })\n }\n break\n }\n }\n } else if (slug.length === 1 && slug1 in endpoints.root.GET) {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n res = await endpoints.root.GET[slug1]({ req: payloadRequest })\n }\n\n if (res instanceof Response) return res\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n payloadRequest: req,\n })\n if (customEndpointResponse) return customEndpointResponse\n\n return RouteNotFoundResponse({\n slug,\n req,\n })\n } catch (error) {\n return routeError({\n collection,\n config,\n err: error,\n req: req || request,\n })\n }\n }\n\nexport const POST =\n (config: Promise<SanitizedConfig> | SanitizedConfig) =>\n async (request: Request, { params: { slug } }: { params: { slug: string[] } }) => {\n const [slug1, slug2, slug3, slug4] = slug\n let req: PayloadRequest\n let res: Response\n let collection: Collection\n\n const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override')\n if (overrideHttpMethod === 'GET') {\n return await GET(config)(request, { params: { slug } })\n }\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n\n collection = req.payload.collections?.[slug1]\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n\n if (disableEndpoints) return disableEndpoints\n\n if (collection) {\n req.routeParams.collection = slug1\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.POST.create({ collection, req: payloadRequest })\n break\n case 2:\n if (slug2 in endpoints.collection.POST) {\n // /:collection/login\n // /:collection/logout\n // /:collection/unlock\n // /:collection/access\n // /:collection/first-register\n // /:collection/forgot-password\n // /:collection/reset-password\n // /:collection/refresh-token\n\n res = await (endpoints.collection.POST?.[slug2] as CollectionRouteHandler)({\n collection,\n req: payloadRequest,\n })\n }\n break\n case 3:\n if (`doc-${slug2}-by-id` in endpoints.collection.POST) {\n // /:collection/access/:id\n // /:collection/versions/:id\n // /:collection/verify/:token (\"doc-verify-by-id\" uses id as token internally)\n res = await (\n endpoints.collection.POST[`doc-${slug2}-by-id`] as CollectionRouteHandlerWithID\n )({ id: slug3, collection, req: payloadRequest })\n } else if (slug3 === 'duplicate' && collection.config.disableDuplicate !== true) {\n // /:collection/:id/duplicate\n res = await endpoints.collection.POST.duplicate({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n }\n break\n }\n }\n } else if (slug1 === 'globals' && slug2) {\n const globalConfig = req.payload.config.globals.find((global) => global.slug === slug2)\n req.routeParams.global = globalConfig.slug\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: globalConfig.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: globalConfig.endpoints,\n entitySlug: `${slug1}/${slug2}`,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n switch (slug.length) {\n case 2:\n // /globals/:slug\n res = await endpoints.global.POST.update({ globalConfig, req: payloadRequest })\n break\n case 3:\n if (`doc-${slug3}` in endpoints.global.POST) {\n // /globals/:slug/access\n res = await (endpoints.global.POST?.[`doc-${slug3}`] as GlobalRouteHandler)({\n globalConfig,\n req: payloadRequest,\n })\n }\n break\n case 4:\n if (`doc-${slug3}-by-id` in endpoints.global.POST) {\n // /globals/:slug/versions/:id\n res = await (\n endpoints.global.POST?.[`doc-${slug3}-by-id`] as GlobalRouteHandlerWithID\n )({\n id: slug4,\n globalConfig,\n req: payloadRequest,\n })\n }\n break\n default:\n res = new Response('Route Not Found', { status: 404 })\n }\n }\n } else if (slug.length === 1 && slug1 in endpoints.root.POST) {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n res = await endpoints.root.POST[slug1]({ req: payloadRequest })\n }\n\n if (res instanceof Response) return res\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n payloadRequest: req,\n })\n if (customEndpointResponse) return customEndpointResponse\n\n return RouteNotFoundResponse({\n slug,\n req,\n })\n } catch (error) {\n return routeError({\n collection,\n config,\n err: error,\n req: req || request,\n })\n }\n }\n\nexport const DELETE =\n (config: Promise<SanitizedConfig> | SanitizedConfig) =>\n async (request: Request, { params: { slug } }: { params: { slug: string[] } }) => {\n const [slug1, slug2] = slug\n let req: PayloadRequest\n let res: Response\n let collection: Collection\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n collection = req.payload.collections?.[slug1]\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n if (collection) {\n req.routeParams.collection = slug1\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n payloadRequest: req,\n })\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.DELETE.delete({ collection, req: payloadRequest })\n break\n case 2:\n // /:collection/:id\n res = await endpoints.collection.DELETE.deleteByID({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n break\n }\n }\n }\n\n if (res instanceof Response) return res\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n payloadRequest: req,\n })\n if (customEndpointResponse) return customEndpointResponse\n\n return RouteNotFoundResponse({\n slug,\n req,\n })\n } catch (error) {\n return routeError({\n collection,\n config,\n err: error,\n req: req || request,\n })\n }\n }\n\nexport const PATCH =\n (config: Promise<SanitizedConfig> | SanitizedConfig) =>\n async (request: Request, { params: { slug } }: { params: { slug: string[] } }) => {\n const [slug1, slug2] = slug\n let req: PayloadRequest\n let res: Response\n let collection: Collection\n\n try {\n req = await createPayloadRequest({\n config,\n request,\n })\n collection = req.payload.collections?.[slug1]\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n if (collection) {\n req.routeParams.collection = slug1\n\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) return disableEndpoints\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n payloadRequest: req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n const reqWithData = await addDataAndFileToRequest({ request: req })\n const payloadRequest = addLocalesToRequestFromData({ request: reqWithData })\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.PATCH.update({ collection, req: payloadRequest })\n break\n case 2:\n // /:collection/:id\n res = await endpoints.collection.PATCH.updateByID({\n id: slug2,\n collection,\n req: payloadRequest,\n })\n break\n }\n }\n }\n\n if (res instanceof Response) return res\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n payloadRequest: req,\n })\n if (customEndpointResponse) return customEndpointResponse\n\n return RouteNotFoundResponse({\n slug,\n req,\n })\n } catch (error) {\n return routeError({\n collection,\n config,\n err: error,\n req: req || request,\n })\n }\n }\n"],"names":["httpStatus","match","addDataAndFileToRequest","addLocalesToRequestFromData","createPayloadRequest","headersWithCors","access","forgotPassword","init","login","logout","me","refresh","registerFirstUser","resetPassword","unlock","verifyEmail","buildFormState","endpointsAreDisabled","count","create","deleteDoc","deleteByID","docAccess","duplicate","find","findByID","findVersionByID","findVersions","preview","previewCollection","restoreVersion","update","updateByID","getFile","docAccessGlobal","findOne","findVersionByIdGlobal","findVersionsGlobal","previewGlobal","restoreVersionGlobal","updateGlobal","generateOGImage","routeError","endpoints","collection","DELETE","delete","GET","versions","PATCH","POST","global","root","og","handleCustomEndpoints","entitySlug","payloadRequest","length","handlerParams","pathname","adjustedPathname","process","env","NEXT_BASE_PATH","pathPrefix","payload","config","routes","api","customEndpoint","endpoint","method","toLowerCase","pathMatchFn","path","decode","decodeURIComponent","tempParams","params","routeParams","handler","RouteNotFoundResponse","slug","req","Response","json","message","join","headers","Headers","status","NOT_FOUND","OPTIONS","request","error","err","slug1","slug2","slug3","slug4","res","disableEndpoints","collections","customEndpointResponse","reqWithData","id","filename","globalConfig","globals","overrideHttpMethod","get","disableDuplicate"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|