@payloadcms/next 3.0.0-beta.110 → 3.0.0-beta.112
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/elements/FormHeader/index.d.ts +9 -0
- package/dist/elements/FormHeader/index.d.ts.map +1 -0
- package/dist/elements/FormHeader/index.js +20 -0
- package/dist/elements/FormHeader/index.js.map +1 -0
- package/dist/elements/FormHeader/index.scss +6 -0
- package/dist/exports/utilities.d.ts +1 -0
- package/dist/exports/utilities.d.ts.map +1 -1
- package/dist/exports/utilities.js +1 -0
- package/dist/exports/utilities.js.map +1 -1
- package/dist/layouts/Root/index.js +6 -6
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/routes/rest/auth/login.js +2 -2
- package/dist/routes/rest/auth/login.js.map +1 -1
- package/dist/routes/rest/auth/logout.d.ts.map +1 -1
- package/dist/routes/rest/auth/logout.js +3 -2
- package/dist/routes/rest/auth/logout.js.map +1 -1
- package/dist/routes/rest/auth/refresh.js +2 -2
- package/dist/routes/rest/auth/refresh.js.map +1 -1
- package/dist/routes/rest/auth/registerFirstUser.js +2 -2
- package/dist/routes/rest/auth/registerFirstUser.js.map +1 -1
- package/dist/routes/rest/auth/resetPassword.js +2 -2
- package/dist/routes/rest/auth/resetPassword.js.map +1 -1
- package/dist/routes/rest/index.d.ts +12 -12
- package/dist/routes/rest/index.d.ts.map +1 -1
- package/dist/routes/rest/index.js +17 -15
- package/dist/routes/rest/index.js.map +1 -1
- package/dist/scss/app.scss +166 -162
- package/dist/scss/colors.scss +256 -254
- package/dist/scss/resets.scss +9 -7
- package/dist/scss/toastify.scss +42 -40
- package/dist/scss/toasts.scss +105 -103
- package/dist/scss/type.scss +80 -79
- package/dist/utilities/getNextRequestI18n.js +2 -2
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.d.ts +11 -11
- package/dist/utilities/initPage/handleAdminPage.d.ts.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.js +7 -20
- package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.d.ts +6 -3
- package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.js +23 -36
- package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
- package/dist/utilities/initPage/index.d.ts +1 -1
- package/dist/utilities/initPage/index.d.ts.map +1 -1
- package/dist/utilities/initPage/index.js +21 -10
- 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 +18 -13
- package/dist/utilities/initPage/shared.js.map +1 -1
- package/dist/utilities/initReq.js +1 -1
- package/dist/utilities/initReq.js.map +1 -1
- package/dist/views/API/index.scss +98 -96
- package/dist/views/Account/Settings/index.scss +37 -35
- package/dist/views/CreateFirstUser/index.client.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.client.js +1 -1
- package/dist/views/CreateFirstUser/index.client.js.map +1 -1
- package/dist/views/CreateFirstUser/index.scss +13 -11
- package/dist/views/Dashboard/Default/index.scss +51 -49
- package/dist/views/Edit/Default/Auth/index.scss +56 -54
- package/dist/views/Edit/Default/index.js +2 -2
- package/dist/views/Edit/Default/index.js.map +1 -1
- package/dist/views/Edit/Default/index.scss +15 -13
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +9 -11
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/ForgotPassword/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/index.js +6 -6
- package/dist/views/ForgotPassword/index.js.map +1 -1
- package/dist/views/List/Default/index.scss +136 -134
- package/dist/views/LivePreview/IFrame/index.scss +8 -6
- package/dist/views/LivePreview/Preview/index.scss +32 -30
- package/dist/views/LivePreview/Toolbar/Controls/index.scss +49 -47
- package/dist/views/LivePreview/Toolbar/SizeInput/index.scss +11 -9
- package/dist/views/LivePreview/Toolbar/index.scss +33 -31
- package/dist/views/LivePreview/ToolbarArea/index.scss +5 -3
- package/dist/views/LivePreview/index.client.js +2 -2
- package/dist/views/LivePreview/index.client.js.map +1 -1
- package/dist/views/LivePreview/index.scss +48 -46
- package/dist/views/Login/LoginForm/index.js +1 -1
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Login/LoginForm/index.scss +8 -6
- package/dist/views/Login/index.scss +8 -6
- package/dist/views/Logout/LogoutClient.d.ts.map +1 -1
- package/dist/views/Logout/LogoutClient.js +77 -55
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/index.scss +17 -15
- package/dist/views/NotFound/index.d.ts +5 -5
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +4 -2
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/NotFound/index.scss +38 -36
- package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts +7 -0
- package/dist/views/ResetPassword/ResetPasswordForm/index.d.ts.map +1 -0
- package/dist/views/ResetPassword/{index.client.js → ResetPasswordForm/index.js} +16 -19
- package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -0
- package/dist/views/ResetPassword/index.d.ts.map +1 -1
- package/dist/views/ResetPassword/index.js +17 -10
- package/dist/views/ResetPassword/index.js.map +1 -1
- package/dist/views/ResetPassword/index.scss +6 -26
- package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
- package/dist/views/Root/getViewFromConfig.js +0 -6
- package/dist/views/Root/getViewFromConfig.js.map +1 -1
- package/dist/views/Root/index.d.ts +5 -5
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +9 -4
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Root/meta.d.ts +5 -5
- package/dist/views/Root/meta.d.ts.map +1 -1
- package/dist/views/Root/meta.js +2 -1
- package/dist/views/Root/meta.js.map +1 -1
- package/dist/views/Unauthorized/index.d.ts.map +1 -1
- package/dist/views/Unauthorized/index.js +14 -7
- package/dist/views/Unauthorized/index.js.map +1 -1
- package/dist/views/Unauthorized/index.scss +4 -31
- package/dist/views/Verify/index.client.d.ts +7 -0
- package/dist/views/Verify/index.client.d.ts.map +1 -0
- package/dist/views/Verify/index.client.js +46 -0
- package/dist/views/Verify/index.client.js.map +1 -0
- package/dist/views/Verify/index.d.ts.map +1 -1
- package/dist/views/Verify/index.js +12 -11
- package/dist/views/Verify/index.js.map +1 -1
- package/dist/views/Verify/index.scss +13 -11
- package/dist/views/Version/Default/index.scss +52 -50
- package/dist/views/Version/RenderFieldsToDiff/Label/index.scss +5 -3
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.scss +29 -27
- package/dist/views/Version/RenderFieldsToDiff/fields/Nested/index.scss +11 -9
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.scss +12 -10
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.scss +12 -10
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.scss +12 -10
- package/dist/views/Version/RenderFieldsToDiff/index.scss +12 -10
- package/dist/views/Version/Restore/index.scss +57 -55
- package/dist/views/Version/SelectComparison/index.scss +12 -10
- package/dist/views/Version/SelectLocales/index.scss +6 -4
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +2 -0
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Versions/getLatestVersion.d.ts +1 -0
- package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
- package/dist/views/Versions/getLatestVersion.js +14 -3
- package/dist/views/Versions/getLatestVersion.js.map +1 -1
- package/dist/views/Versions/index.d.ts.map +1 -1
- package/dist/views/Versions/index.js +2 -0
- package/dist/views/Versions/index.js.map +1 -1
- package/dist/views/Versions/index.scss +78 -76
- package/package.json +9 -9
- package/dist/views/ResetPassword/index.client.d.ts +0 -7
- package/dist/views/ResetPassword/index.client.d.ts.map +0 -1
- package/dist/views/ResetPassword/index.client.js.map +0 -1
|
@@ -26,8 +26,8 @@ export const login = async ({
|
|
|
26
26
|
req
|
|
27
27
|
});
|
|
28
28
|
const cookie = generatePayloadCookie({
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
collectionAuthConfig: collection.config.auth,
|
|
30
|
+
cookiePrefix: req.payload.config.cookiePrefix,
|
|
31
31
|
token: result.token
|
|
32
32
|
});
|
|
33
33
|
if (collection.config.auth.removeTokenFromResponses) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login.js","names":["httpStatus","generatePayloadCookie","loginOperation","isNumber","headersWithCors","login","collection","req","searchParams","t","depth","get","authData","config","auth","loginWithUsername","email","data","password","username","result","Number","undefined","cookie","
|
|
1
|
+
{"version":3,"file":"login.js","names":["httpStatus","generatePayloadCookie","loginOperation","isNumber","headersWithCors","login","collection","req","searchParams","t","depth","get","authData","config","auth","loginWithUsername","email","data","password","username","result","Number","undefined","cookie","collectionAuthConfig","cookiePrefix","payload","token","removeTokenFromResponses","Response","json","message","headers","Headers","status","OK"],"sources":["../../../../src/routes/rest/auth/login.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { generatePayloadCookie, loginOperation } from 'payload'\nimport { isNumber } from 'payload/shared'\n\nimport type { CollectionRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const login: CollectionRouteHandler = async ({ collection, req }) => {\n const { searchParams, t } = req\n const depth = searchParams.get('depth')\n const authData =\n collection.config.auth?.loginWithUsername !== false\n ? {\n email: typeof req.data?.email === 'string' ? req.data.email : '',\n password: typeof req.data?.password === 'string' ? req.data.password : '',\n username: typeof req.data?.username === 'string' ? req.data.username : '',\n }\n : {\n email: typeof req.data?.email === 'string' ? req.data.email : '',\n password: typeof req.data?.password === 'string' ? req.data.password : '',\n }\n\n const result = await loginOperation({\n collection,\n data: authData,\n depth: isNumber(depth) ? Number(depth) : undefined,\n req,\n })\n\n const cookie = generatePayloadCookie({\n collectionAuthConfig: collection.config.auth,\n cookiePrefix: req.payload.config.cookiePrefix,\n token: result.token,\n })\n\n if (collection.config.auth.removeTokenFromResponses) {\n delete result.token\n }\n\n return Response.json(\n {\n message: t('authentication:passed'),\n ...result,\n },\n {\n headers: headersWithCors({\n headers: new Headers({\n 'Set-Cookie': cookie,\n }),\n req,\n }),\n status: httpStatus.OK,\n },\n )\n}\n"],"mappings":"AAAA,OAAOA,UAAA,MAAgB;AACvB,SAASC,qBAAqB,EAAEC,cAAc,QAAQ;AACtD,SAASC,QAAQ,QAAQ;AAIzB,SAASC,eAAe,QAAQ;AAEhC,OAAO,MAAMC,KAAA,GAAgC,MAAAA,CAAO;EAAEC,UAAU;EAAEC;AAAG,CAAE;EACrE,MAAM;IAAEC,YAAY;IAAEC;EAAC,CAAE,GAAGF,GAAA;EAC5B,MAAMG,KAAA,GAAQF,YAAA,CAAaG,GAAG,CAAC;EAC/B,MAAMC,QAAA,GACJN,UAAA,CAAWO,MAAM,CAACC,IAAI,EAAEC,iBAAA,KAAsB,QAC1C;IACEC,KAAA,EAAO,OAAOT,GAAA,CAAIU,IAAI,EAAED,KAAA,KAAU,WAAWT,GAAA,CAAIU,IAAI,CAACD,KAAK,GAAG;IAC9DE,QAAA,EAAU,OAAOX,GAAA,CAAIU,IAAI,EAAEC,QAAA,KAAa,WAAWX,GAAA,CAAIU,IAAI,CAACC,QAAQ,GAAG;IACvEC,QAAA,EAAU,OAAOZ,GAAA,CAAIU,IAAI,EAAEE,QAAA,KAAa,WAAWZ,GAAA,CAAIU,IAAI,CAACE,QAAQ,GAAG;EACzE,IACA;IACEH,KAAA,EAAO,OAAOT,GAAA,CAAIU,IAAI,EAAED,KAAA,KAAU,WAAWT,GAAA,CAAIU,IAAI,CAACD,KAAK,GAAG;IAC9DE,QAAA,EAAU,OAAOX,GAAA,CAAIU,IAAI,EAAEC,QAAA,KAAa,WAAWX,GAAA,CAAIU,IAAI,CAACC,QAAQ,GAAG;EACzE;EAEN,MAAME,MAAA,GAAS,MAAMlB,cAAA,CAAe;IAClCI,UAAA;IACAW,IAAA,EAAML,QAAA;IACNF,KAAA,EAAOP,QAAA,CAASO,KAAA,IAASW,MAAA,CAAOX,KAAA,IAASY,SAAA;IACzCf;EACF;EAEA,MAAMgB,MAAA,GAAStB,qBAAA,CAAsB;IACnCuB,oBAAA,EAAsBlB,UAAA,CAAWO,MAAM,CAACC,IAAI;IAC5CW,YAAA,EAAclB,GAAA,CAAImB,OAAO,CAACb,MAAM,CAACY,YAAY;IAC7CE,KAAA,EAAOP,MAAA,CAAOO;EAChB;EAEA,IAAIrB,UAAA,CAAWO,MAAM,CAACC,IAAI,CAACc,wBAAwB,EAAE;IACnD,OAAOR,MAAA,CAAOO,KAAK;EACrB;EAEA,OAAOE,QAAA,CAASC,IAAI,CAClB;IACEC,OAAA,EAAStB,CAAA,CAAE;IACX,GAAGW;EACL,GACA;IACEY,OAAA,EAAS5B,eAAA,CAAgB;MACvB4B,OAAA,EAAS,IAAIC,OAAA,CAAQ;QACnB,cAAcV;MAChB;MACAhB;IACF;IACA2B,MAAA,EAAQlC,UAAA,CAAWmC;EACrB;AAEJ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/auth/logout.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAIzD,eAAO,MAAM,MAAM,EAAE,
|
|
1
|
+
{"version":3,"file":"logout.d.ts","sourceRoot":"","sources":["../../../../src/routes/rest/auth/logout.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAIzD,eAAO,MAAM,MAAM,EAAE,sBAyCpB,CAAA"}
|
|
@@ -25,8 +25,9 @@ export const logout = async ({
|
|
|
25
25
|
});
|
|
26
26
|
}
|
|
27
27
|
const expiredCookie = generateExpiredPayloadCookie({
|
|
28
|
-
|
|
29
|
-
|
|
28
|
+
collectionAuthConfig: collection.config.auth,
|
|
29
|
+
config: req.payload.config,
|
|
30
|
+
cookiePrefix: req.payload.config.cookiePrefix
|
|
30
31
|
});
|
|
31
32
|
headers.set('Set-Cookie', expiredCookie);
|
|
32
33
|
return Response.json({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logout.js","names":["httpStatus","generateExpiredPayloadCookie","logoutOperation","headersWithCors","logout","collection","req","t","result","headers","Headers","Response","json","message","status","BAD_REQUEST","expiredCookie","
|
|
1
|
+
{"version":3,"file":"logout.js","names":["httpStatus","generateExpiredPayloadCookie","logoutOperation","headersWithCors","logout","collection","req","t","result","headers","Headers","Response","json","message","status","BAD_REQUEST","expiredCookie","collectionAuthConfig","config","auth","payload","cookiePrefix","set","OK"],"sources":["../../../../src/routes/rest/auth/logout.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { generateExpiredPayloadCookie, logoutOperation } from 'payload'\n\nimport type { CollectionRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const logout: CollectionRouteHandler = async ({ collection, req }) => {\n const { t } = req\n const result = await logoutOperation({\n collection,\n req,\n })\n\n const headers = headersWithCors({\n headers: new Headers(),\n req,\n })\n\n if (!result) {\n return Response.json(\n {\n message: t('error:logoutFailed'),\n },\n {\n headers,\n status: httpStatus.BAD_REQUEST,\n },\n )\n }\n\n const expiredCookie = generateExpiredPayloadCookie({\n collectionAuthConfig: collection.config.auth,\n config: req.payload.config,\n cookiePrefix: req.payload.config.cookiePrefix,\n })\n\n headers.set('Set-Cookie', expiredCookie)\n\n return Response.json(\n {\n message: t('authentication:logoutSuccessful'),\n },\n {\n headers,\n status: httpStatus.OK,\n },\n )\n}\n"],"mappings":"AAAA,OAAOA,UAAA,MAAgB;AACvB,SAASC,4BAA4B,EAAEC,eAAe,QAAQ;AAI9D,SAASC,eAAe,QAAQ;AAEhC,OAAO,MAAMC,MAAA,GAAiC,MAAAA,CAAO;EAAEC,UAAU;EAAEC;AAAG,CAAE;EACtE,MAAM;IAAEC;EAAC,CAAE,GAAGD,GAAA;EACd,MAAME,MAAA,GAAS,MAAMN,eAAA,CAAgB;IACnCG,UAAA;IACAC;EACF;EAEA,MAAMG,OAAA,GAAUN,eAAA,CAAgB;IAC9BM,OAAA,EAAS,IAAIC,OAAA;IACbJ;EACF;EAEA,IAAI,CAACE,MAAA,EAAQ;IACX,OAAOG,QAAA,CAASC,IAAI,CAClB;MACEC,OAAA,EAASN,CAAA,CAAE;IACb,GACA;MACEE,OAAA;MACAK,MAAA,EAAQd,UAAA,CAAWe;IACrB;EAEJ;EAEA,MAAMC,aAAA,GAAgBf,4BAAA,CAA6B;IACjDgB,oBAAA,EAAsBZ,UAAA,CAAWa,MAAM,CAACC,IAAI;IAC5CD,MAAA,EAAQZ,GAAA,CAAIc,OAAO,CAACF,MAAM;IAC1BG,YAAA,EAAcf,GAAA,CAAIc,OAAO,CAACF,MAAM,CAACG;EACnC;EAEAZ,OAAA,CAAQa,GAAG,CAAC,cAAcN,aAAA;EAE1B,OAAOL,QAAA,CAASC,IAAI,CAClB;IACEC,OAAA,EAASN,CAAA,CAAE;EACb,GACA;IACEE,OAAA;IACAK,MAAA,EAAQd,UAAA,CAAWuB;EACrB;AAEJ","ignoreList":[]}
|
|
@@ -18,8 +18,8 @@ export const refresh = async ({
|
|
|
18
18
|
});
|
|
19
19
|
if (result.setCookie) {
|
|
20
20
|
const cookie = generatePayloadCookie({
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
collectionAuthConfig: collection.config.auth,
|
|
22
|
+
cookiePrefix: req.payload.config.cookiePrefix,
|
|
23
23
|
token: result.refreshedToken
|
|
24
24
|
});
|
|
25
25
|
if (collection.config.auth.removeTokenFromResponses) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh.js","names":["httpStatus","generatePayloadCookie","refreshOperation","headersWithCors","refresh","collection","req","t","headers","Headers","result","setCookie","cookie","
|
|
1
|
+
{"version":3,"file":"refresh.js","names":["httpStatus","generatePayloadCookie","refreshOperation","headersWithCors","refresh","collection","req","t","headers","Headers","result","setCookie","cookie","collectionAuthConfig","config","auth","cookiePrefix","payload","token","refreshedToken","removeTokenFromResponses","set","Response","json","message","status","OK"],"sources":["../../../../src/routes/rest/auth/refresh.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { generatePayloadCookie, refreshOperation } from 'payload'\n\nimport type { CollectionRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const refresh: CollectionRouteHandler = async ({ collection, req }) => {\n const { t } = req\n\n const headers = headersWithCors({\n headers: new Headers(),\n req,\n })\n\n const result = await refreshOperation({\n collection,\n req,\n })\n\n if (result.setCookie) {\n const cookie = generatePayloadCookie({\n collectionAuthConfig: collection.config.auth,\n cookiePrefix: req.payload.config.cookiePrefix,\n token: result.refreshedToken,\n })\n\n if (collection.config.auth.removeTokenFromResponses) {\n delete result.refreshedToken\n }\n\n headers.set('Set-Cookie', cookie)\n }\n\n return Response.json(\n {\n message: t('authentication:tokenRefreshSuccessful'),\n ...result,\n },\n {\n headers,\n status: httpStatus.OK,\n },\n )\n}\n"],"mappings":"AAAA,OAAOA,UAAA,MAAgB;AACvB,SAASC,qBAAqB,EAAEC,gBAAgB,QAAQ;AAIxD,SAASC,eAAe,QAAQ;AAEhC,OAAO,MAAMC,OAAA,GAAkC,MAAAA,CAAO;EAAEC,UAAU;EAAEC;AAAG,CAAE;EACvE,MAAM;IAAEC;EAAC,CAAE,GAAGD,GAAA;EAEd,MAAME,OAAA,GAAUL,eAAA,CAAgB;IAC9BK,OAAA,EAAS,IAAIC,OAAA;IACbH;EACF;EAEA,MAAMI,MAAA,GAAS,MAAMR,gBAAA,CAAiB;IACpCG,UAAA;IACAC;EACF;EAEA,IAAII,MAAA,CAAOC,SAAS,EAAE;IACpB,MAAMC,MAAA,GAASX,qBAAA,CAAsB;MACnCY,oBAAA,EAAsBR,UAAA,CAAWS,MAAM,CAACC,IAAI;MAC5CC,YAAA,EAAcV,GAAA,CAAIW,OAAO,CAACH,MAAM,CAACE,YAAY;MAC7CE,KAAA,EAAOR,MAAA,CAAOS;IAChB;IAEA,IAAId,UAAA,CAAWS,MAAM,CAACC,IAAI,CAACK,wBAAwB,EAAE;MACnD,OAAOV,MAAA,CAAOS,cAAc;IAC9B;IAEAX,OAAA,CAAQa,GAAG,CAAC,cAAcT,MAAA;EAC5B;EAEA,OAAOU,QAAA,CAASC,IAAI,CAClB;IACEC,OAAA,EAASjB,CAAA,CAAE;IACX,GAAGG;EACL,GACA;IACEF,OAAA;IACAiB,MAAA,EAAQzB,UAAA,CAAW0B;EACrB;AAEJ","ignoreList":[]}
|
|
@@ -26,8 +26,8 @@ export const registerFirstUser = async ({
|
|
|
26
26
|
req
|
|
27
27
|
});
|
|
28
28
|
const cookie = generatePayloadCookie({
|
|
29
|
-
|
|
30
|
-
|
|
29
|
+
collectionAuthConfig: collection.config.auth,
|
|
30
|
+
cookiePrefix: req.payload.config.cookiePrefix,
|
|
31
31
|
token: result.token
|
|
32
32
|
});
|
|
33
33
|
return Response.json({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registerFirstUser.js","names":["httpStatus","generatePayloadCookie","registerFirstUserOperation","headersWithCors","registerFirstUser","collection","req","data","t","authData","config","auth","loginWithUsername","email","password","username","result","cookie","
|
|
1
|
+
{"version":3,"file":"registerFirstUser.js","names":["httpStatus","generatePayloadCookie","registerFirstUserOperation","headersWithCors","registerFirstUser","collection","req","data","t","authData","config","auth","loginWithUsername","email","password","username","result","cookie","collectionAuthConfig","cookiePrefix","payload","token","Response","json","exp","message","user","headers","Headers","status","OK"],"sources":["../../../../src/routes/rest/auth/registerFirstUser.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { generatePayloadCookie, registerFirstUserOperation } from 'payload'\n\nimport type { CollectionRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const registerFirstUser: CollectionRouteHandler = async ({ collection, req }) => {\n const { data, t } = req\n const authData = collection.config.auth?.loginWithUsername\n ? {\n email: typeof req.data?.email === 'string' ? req.data.email : '',\n password: typeof req.data?.password === 'string' ? req.data.password : '',\n username: typeof req.data?.username === 'string' ? req.data.username : '',\n }\n : {\n email: typeof req.data?.email === 'string' ? req.data.email : '',\n password: typeof req.data?.password === 'string' ? req.data.password : '',\n }\n\n const result = await registerFirstUserOperation({\n collection,\n data: {\n ...data,\n ...authData,\n },\n req,\n })\n\n const cookie = generatePayloadCookie({\n collectionAuthConfig: collection.config.auth,\n cookiePrefix: req.payload.config.cookiePrefix,\n token: result.token,\n })\n\n return Response.json(\n {\n exp: result.exp,\n message: t('authentication:successfullyRegisteredFirstUser'),\n token: result.token,\n user: result.user,\n },\n {\n headers: headersWithCors({\n headers: new Headers({\n 'Set-Cookie': cookie,\n }),\n req,\n }),\n status: httpStatus.OK,\n },\n )\n}\n"],"mappings":"AAAA,OAAOA,UAAA,MAAgB;AACvB,SAASC,qBAAqB,EAAEC,0BAA0B,QAAQ;AAIlE,SAASC,eAAe,QAAQ;AAEhC,OAAO,MAAMC,iBAAA,GAA4C,MAAAA,CAAO;EAAEC,UAAU;EAAEC;AAAG,CAAE;EACjF,MAAM;IAAEC,IAAI;IAAEC;EAAC,CAAE,GAAGF,GAAA;EACpB,MAAMG,QAAA,GAAWJ,UAAA,CAAWK,MAAM,CAACC,IAAI,EAAEC,iBAAA,GACrC;IACEC,KAAA,EAAO,OAAOP,GAAA,CAAIC,IAAI,EAAEM,KAAA,KAAU,WAAWP,GAAA,CAAIC,IAAI,CAACM,KAAK,GAAG;IAC9DC,QAAA,EAAU,OAAOR,GAAA,CAAIC,IAAI,EAAEO,QAAA,KAAa,WAAWR,GAAA,CAAIC,IAAI,CAACO,QAAQ,GAAG;IACvEC,QAAA,EAAU,OAAOT,GAAA,CAAIC,IAAI,EAAEQ,QAAA,KAAa,WAAWT,GAAA,CAAIC,IAAI,CAACQ,QAAQ,GAAG;EACzE,IACA;IACEF,KAAA,EAAO,OAAOP,GAAA,CAAIC,IAAI,EAAEM,KAAA,KAAU,WAAWP,GAAA,CAAIC,IAAI,CAACM,KAAK,GAAG;IAC9DC,QAAA,EAAU,OAAOR,GAAA,CAAIC,IAAI,EAAEO,QAAA,KAAa,WAAWR,GAAA,CAAIC,IAAI,CAACO,QAAQ,GAAG;EACzE;EAEJ,MAAME,MAAA,GAAS,MAAMd,0BAAA,CAA2B;IAC9CG,UAAA;IACAE,IAAA,EAAM;MACJ,GAAGA,IAAI;MACP,GAAGE;IACL;IACAH;EACF;EAEA,MAAMW,MAAA,GAAShB,qBAAA,CAAsB;IACnCiB,oBAAA,EAAsBb,UAAA,CAAWK,MAAM,CAACC,IAAI;IAC5CQ,YAAA,EAAcb,GAAA,CAAIc,OAAO,CAACV,MAAM,CAACS,YAAY;IAC7CE,KAAA,EAAOL,MAAA,CAAOK;EAChB;EAEA,OAAOC,QAAA,CAASC,IAAI,CAClB;IACEC,GAAA,EAAKR,MAAA,CAAOQ,GAAG;IACfC,OAAA,EAASjB,CAAA,CAAE;IACXa,KAAA,EAAOL,MAAA,CAAOK,KAAK;IACnBK,IAAA,EAAMV,MAAA,CAAOU;EACf,GACA;IACEC,OAAA,EAASxB,eAAA,CAAgB;MACvBwB,OAAA,EAAS,IAAIC,OAAA,CAAQ;QACnB,cAAcX;MAChB;MACAX;IACF;IACAuB,MAAA,EAAQ7B,UAAA,CAAW8B;EACrB;AAEJ","ignoreList":[]}
|
|
@@ -20,8 +20,8 @@ export const resetPassword = async ({
|
|
|
20
20
|
req
|
|
21
21
|
});
|
|
22
22
|
const cookie = generatePayloadCookie({
|
|
23
|
-
|
|
24
|
-
|
|
23
|
+
collectionAuthConfig: collection.config.auth,
|
|
24
|
+
cookiePrefix: req.payload.config.cookiePrefix,
|
|
25
25
|
token: result.token
|
|
26
26
|
});
|
|
27
27
|
if (collection.config.auth.removeTokenFromResponses) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resetPassword.js","names":["httpStatus","generatePayloadCookie","resetPasswordOperation","headersWithCors","resetPassword","collection","req","searchParams","t","depth","get","result","data","password","token","Number","undefined","cookie","
|
|
1
|
+
{"version":3,"file":"resetPassword.js","names":["httpStatus","generatePayloadCookie","resetPasswordOperation","headersWithCors","resetPassword","collection","req","searchParams","t","depth","get","result","data","password","token","Number","undefined","cookie","collectionAuthConfig","config","auth","cookiePrefix","payload","removeTokenFromResponses","Response","json","message","headers","Headers","status","OK"],"sources":["../../../../src/routes/rest/auth/resetPassword.ts"],"sourcesContent":["import httpStatus from 'http-status'\nimport { generatePayloadCookie, resetPasswordOperation } from 'payload'\n\nimport type { CollectionRouteHandler } from '../types.js'\n\nimport { headersWithCors } from '../../../utilities/headersWithCors.js'\n\nexport const resetPassword: CollectionRouteHandler = async ({ collection, req }) => {\n const { searchParams, t } = req\n const depth = searchParams.get('depth')\n\n const result = await resetPasswordOperation({\n collection,\n data: {\n password: typeof req.data?.password === 'string' ? req.data.password : '',\n token: typeof req.data?.token === 'string' ? req.data.token : '',\n },\n depth: depth ? Number(depth) : undefined,\n req,\n })\n\n const cookie = generatePayloadCookie({\n collectionAuthConfig: collection.config.auth,\n cookiePrefix: req.payload.config.cookiePrefix,\n token: result.token,\n })\n\n if (collection.config.auth.removeTokenFromResponses) {\n delete result.token\n }\n\n return Response.json(\n {\n message: t('authentication:passwordResetSuccessfully'),\n ...result,\n },\n {\n headers: headersWithCors({\n headers: new Headers({\n 'Set-Cookie': cookie,\n }),\n req,\n }),\n status: httpStatus.OK,\n },\n )\n}\n"],"mappings":"AAAA,OAAOA,UAAA,MAAgB;AACvB,SAASC,qBAAqB,EAAEC,sBAAsB,QAAQ;AAI9D,SAASC,eAAe,QAAQ;AAEhC,OAAO,MAAMC,aAAA,GAAwC,MAAAA,CAAO;EAAEC,UAAU;EAAEC;AAAG,CAAE;EAC7E,MAAM;IAAEC,YAAY;IAAEC;EAAC,CAAE,GAAGF,GAAA;EAC5B,MAAMG,KAAA,GAAQF,YAAA,CAAaG,GAAG,CAAC;EAE/B,MAAMC,MAAA,GAAS,MAAMT,sBAAA,CAAuB;IAC1CG,UAAA;IACAO,IAAA,EAAM;MACJC,QAAA,EAAU,OAAOP,GAAA,CAAIM,IAAI,EAAEC,QAAA,KAAa,WAAWP,GAAA,CAAIM,IAAI,CAACC,QAAQ,GAAG;MACvEC,KAAA,EAAO,OAAOR,GAAA,CAAIM,IAAI,EAAEE,KAAA,KAAU,WAAWR,GAAA,CAAIM,IAAI,CAACE,KAAK,GAAG;IAChE;IACAL,KAAA,EAAOA,KAAA,GAAQM,MAAA,CAAON,KAAA,IAASO,SAAA;IAC/BV;EACF;EAEA,MAAMW,MAAA,GAAShB,qBAAA,CAAsB;IACnCiB,oBAAA,EAAsBb,UAAA,CAAWc,MAAM,CAACC,IAAI;IAC5CC,YAAA,EAAcf,GAAA,CAAIgB,OAAO,CAACH,MAAM,CAACE,YAAY;IAC7CP,KAAA,EAAOH,MAAA,CAAOG;EAChB;EAEA,IAAIT,UAAA,CAAWc,MAAM,CAACC,IAAI,CAACG,wBAAwB,EAAE;IACnD,OAAOZ,MAAA,CAAOG,KAAK;EACrB;EAEA,OAAOU,QAAA,CAASC,IAAI,CAClB;IACEC,OAAA,EAASlB,CAAA,CAAE;IACX,GAAGG;EACL,GACA;IACEgB,OAAA,EAASxB,eAAA,CAAgB;MACvBwB,OAAA,EAAS,IAAIC,OAAA,CAAQ;QACnB,cAAcX;MAChB;MACAX;IACF;IACAuB,MAAA,EAAQ7B,UAAA,CAAW8B;EACrB;AAEJ","ignoreList":[]}
|
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import type { SanitizedConfig } from 'payload';
|
|
2
2
|
export declare const OPTIONS: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request) => Promise<Response>;
|
|
3
|
-
export declare const GET: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params:
|
|
4
|
-
params: {
|
|
3
|
+
export declare const GET: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params: paramsPromise }: {
|
|
4
|
+
params: Promise<{
|
|
5
5
|
slug: string[];
|
|
6
|
-
}
|
|
6
|
+
}>;
|
|
7
7
|
}) => Promise<Response>;
|
|
8
|
-
export declare const POST: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params:
|
|
9
|
-
params: {
|
|
8
|
+
export declare const POST: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params: paramsPromise }: {
|
|
9
|
+
params: Promise<{
|
|
10
10
|
slug: string[];
|
|
11
|
-
}
|
|
11
|
+
}>;
|
|
12
12
|
}) => Promise<Response>;
|
|
13
|
-
export declare const DELETE: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params:
|
|
14
|
-
params: {
|
|
13
|
+
export declare const DELETE: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params: paramsPromise }: {
|
|
14
|
+
params: Promise<{
|
|
15
15
|
slug: string[];
|
|
16
|
-
}
|
|
16
|
+
}>;
|
|
17
17
|
}) => Promise<Response>;
|
|
18
|
-
export declare const PATCH: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params:
|
|
19
|
-
params: {
|
|
18
|
+
export declare const PATCH: (config: Promise<SanitizedConfig> | SanitizedConfig) => (request: Request, { params: paramsPromise }: {
|
|
19
|
+
params: Promise<{
|
|
20
20
|
slug: string[];
|
|
21
|
-
}
|
|
21
|
+
}>;
|
|
22
22
|
}) => Promise<Response>;
|
|
23
23
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/rest/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAsD,eAAe,EAAE,MAAM,SAAS,CAAA;AAwMlG,eAAO,MAAM,OAAO,WACT,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,eAAqB,OAAO,sBA0B9E,CAAA;AAEH,eAAO,MAAM,GAAG,WACL,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/routes/rest/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAsD,eAAe,EAAE,MAAM,SAAS,CAAA;AAwMlG,eAAO,MAAM,OAAO,WACT,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,eAAqB,OAAO,sBA0B9E,CAAA;AAEH,eAAO,MAAM,GAAG,WACL,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,6BAA6B;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;CAAE,sBAqM1F,CAAA;AAEH,eAAO,MAAM,IAAI,WACN,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,6BAA6B;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;CAAE,sBA2L1F,CAAA;AAEH,eAAO,MAAM,MAAM,WACR,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,6BAA6B;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;CAAE,sBAiG1F,CAAA;AAEH,eAAO,MAAM,KAAK,WACP,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,eACnC,OAAO,6BAA6B;IAAE,MAAM,EAAE,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAA;CAAE,sBAkG1F,CAAA"}
|
|
@@ -194,10 +194,11 @@ export const OPTIONS = config => async request => {
|
|
|
194
194
|
}
|
|
195
195
|
};
|
|
196
196
|
export const GET = config => async (request, {
|
|
197
|
-
params:
|
|
198
|
-
slug
|
|
199
|
-
}
|
|
197
|
+
params: paramsPromise
|
|
200
198
|
}) => {
|
|
199
|
+
const {
|
|
200
|
+
slug
|
|
201
|
+
} = await paramsPromise;
|
|
201
202
|
const [slug1, slug2, slug3, slug4] = slug;
|
|
202
203
|
let req;
|
|
203
204
|
let res;
|
|
@@ -385,10 +386,11 @@ export const GET = config => async (request, {
|
|
|
385
386
|
}
|
|
386
387
|
};
|
|
387
388
|
export const POST = config => async (request, {
|
|
388
|
-
params:
|
|
389
|
-
slug
|
|
390
|
-
}
|
|
389
|
+
params: paramsPromise
|
|
391
390
|
}) => {
|
|
391
|
+
const {
|
|
392
|
+
slug
|
|
393
|
+
} = await paramsPromise;
|
|
392
394
|
const [slug1, slug2, slug3, slug4] = slug;
|
|
393
395
|
let req;
|
|
394
396
|
let res;
|
|
@@ -396,9 +398,7 @@ export const POST = config => async (request, {
|
|
|
396
398
|
const overrideHttpMethod = request.headers.get('X-HTTP-Method-Override');
|
|
397
399
|
if (overrideHttpMethod === 'GET') {
|
|
398
400
|
return await GET(config)(request, {
|
|
399
|
-
params:
|
|
400
|
-
slug
|
|
401
|
-
}
|
|
401
|
+
params: paramsPromise
|
|
402
402
|
});
|
|
403
403
|
}
|
|
404
404
|
try {
|
|
@@ -571,10 +571,11 @@ export const POST = config => async (request, {
|
|
|
571
571
|
}
|
|
572
572
|
};
|
|
573
573
|
export const DELETE = config => async (request, {
|
|
574
|
-
params:
|
|
575
|
-
slug
|
|
576
|
-
}
|
|
574
|
+
params: paramsPromise
|
|
577
575
|
}) => {
|
|
576
|
+
const {
|
|
577
|
+
slug
|
|
578
|
+
} = await paramsPromise;
|
|
578
579
|
const [slug1, slug2] = slug;
|
|
579
580
|
let req;
|
|
580
581
|
let res;
|
|
@@ -663,10 +664,11 @@ export const DELETE = config => async (request, {
|
|
|
663
664
|
}
|
|
664
665
|
};
|
|
665
666
|
export const PATCH = config => async (request, {
|
|
666
|
-
params:
|
|
667
|
-
slug
|
|
668
|
-
}
|
|
667
|
+
params: paramsPromise
|
|
669
668
|
}) => {
|
|
669
|
+
const {
|
|
670
|
+
slug
|
|
671
|
+
} = await paramsPromise;
|
|
670
672
|
const [slug1, slug2] = slug;
|
|
671
673
|
let req;
|
|
672
674
|
let res;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["httpStatus","match","addDataAndFileToRequest","addLocalesToRequestFromData","createPayloadRequest","headersWithCors","mergeHeaders","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","req","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","res","handler","Response","responseHeaders","mergedResponse","body","headers","status","statusText","RouteNotFoundResponse","slug","json","message","join","Headers","NOT_FOUND","OPTIONS","request","error","err","slug1","slug2","slug3","slug4","disableEndpoints","collections","customEndpointResponse","id","filename","globalConfig","globals","overrideHttpMethod","get","disableDuplicate"],"sources":["../../../src/routes/rest/index.ts"],"sourcesContent":["import type { Collection, Endpoint, GlobalConfig, PayloadRequest, SanitizedConfig } 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 { mergeHeaders } from '../../utilities/mergeHeaders.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 = async ({\n endpoints,\n entitySlug,\n req,\n}: {\n endpoints: Endpoint[] | GlobalConfig['endpoints']\n entitySlug?: string\n req: PayloadRequest\n}): Promise<Response> => {\n if (endpoints && endpoints.length > 0) {\n let handlerParams = {}\n const { pathname } = req\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 req.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 = req.payload.config.routes.api + (entitySlug ? `/${entitySlug}` : '')\n\n const customEndpoint = endpoints.find((endpoint) => {\n if (endpoint.method === req.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 req.routeParams = {\n ...req.routeParams,\n ...handlerParams,\n }\n const res = await customEndpoint.handler(req)\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\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\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) {\n return disableEndpoints\n }\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.GET.find({ collection, req })\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,\n })\n } else {\n // /:collection/:id\n res = await endpoints.collection.GET.findByID({\n id: slug2,\n collection,\n req,\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,\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,\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 })\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: globalConfig.endpoints,\n entitySlug: `${slug1}/${slug2}`,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 2:\n // /globals/:slug\n res = await endpoints.global.GET.findOne({ globalConfig, req })\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,\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,\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,\n })\n }\n break\n }\n }\n } else if (slug.length === 1 && slug1 in endpoints.root.GET) {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n res = await endpoints.root.GET[slug1]({ req })\n }\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n }\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) {\n return disableEndpoints\n }\n\n if (collection) {\n req.routeParams.collection = slug1\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.POST.create({ collection, req })\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,\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 })\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,\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: globalConfig.endpoints,\n entitySlug: `${slug1}/${slug2}`,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n switch (slug.length) {\n case 2:\n // /globals/:slug\n res = await endpoints.global.POST.update({ globalConfig, req })\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,\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,\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 await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n res = await endpoints.root.POST[slug1]({ req })\n }\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n }\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) {\n return disableEndpoints\n }\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n req,\n })\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.DELETE.delete({ collection, req })\n break\n case 2:\n // /:collection/:id\n res = await endpoints.collection.DELETE.deleteByID({\n id: slug2,\n collection,\n req,\n })\n break\n }\n }\n }\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n }\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) {\n return disableEndpoints\n }\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.PATCH.update({ collection, req })\n break\n case 2:\n // /:collection/:id\n res = await endpoints.collection.PATCH.updateByID({\n id: slug2,\n collection,\n req,\n })\n break\n }\n }\n }\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n }\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"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["httpStatus","match","addDataAndFileToRequest","addLocalesToRequestFromData","createPayloadRequest","headersWithCors","mergeHeaders","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","req","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","res","handler","Response","responseHeaders","mergedResponse","body","headers","status","statusText","RouteNotFoundResponse","slug","json","message","join","Headers","NOT_FOUND","OPTIONS","request","error","err","paramsPromise","slug1","slug2","slug3","slug4","disableEndpoints","collections","customEndpointResponse","id","filename","globalConfig","globals","overrideHttpMethod","get","disableDuplicate"],"sources":["../../../src/routes/rest/index.ts"],"sourcesContent":["import type { Collection, Endpoint, GlobalConfig, PayloadRequest, SanitizedConfig } 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 { mergeHeaders } from '../../utilities/mergeHeaders.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 = async ({\n endpoints,\n entitySlug,\n req,\n}: {\n endpoints: Endpoint[] | GlobalConfig['endpoints']\n entitySlug?: string\n req: PayloadRequest\n}): Promise<Response> => {\n if (endpoints && endpoints.length > 0) {\n let handlerParams = {}\n const { pathname } = req\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 req.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 = req.payload.config.routes.api + (entitySlug ? `/${entitySlug}` : '')\n\n const customEndpoint = endpoints.find((endpoint) => {\n if (endpoint.method === req.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 req.routeParams = {\n ...req.routeParams,\n ...handlerParams,\n }\n const res = await customEndpoint.handler(req)\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\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: paramsPromise }: { params: Promise<{ slug: string[] }> }) => {\n const { slug } = await paramsPromise\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 const disableEndpoints = endpointsAreDisabled({\n endpoints: req.payload.config.endpoints,\n request,\n })\n\n if (disableEndpoints) {\n return disableEndpoints\n }\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.GET.find({ collection, req })\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,\n })\n } else {\n // /:collection/:id\n res = await endpoints.collection.GET.findByID({\n id: slug2,\n collection,\n req,\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,\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,\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 })\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: globalConfig.endpoints,\n entitySlug: `${slug1}/${slug2}`,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 2:\n // /globals/:slug\n res = await endpoints.global.GET.findOne({ globalConfig, req })\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,\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,\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,\n })\n }\n break\n }\n }\n } else if (slug.length === 1 && slug1 in endpoints.root.GET) {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n res = await endpoints.root.GET[slug1]({ req })\n }\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n }\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: paramsPromise }: { params: Promise<{ slug: string[] }> }) => {\n const { slug } = await paramsPromise\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: paramsPromise })\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) {\n return disableEndpoints\n }\n\n if (collection) {\n req.routeParams.collection = slug1\n const disableEndpoints = endpointsAreDisabled({\n endpoints: collection.config.endpoints,\n request,\n })\n if (disableEndpoints) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.POST.create({ collection, req })\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,\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 })\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,\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: globalConfig.endpoints,\n entitySlug: `${slug1}/${slug2}`,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n switch (slug.length) {\n case 2:\n // /globals/:slug\n res = await endpoints.global.POST.update({ globalConfig, req })\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,\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,\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 await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n res = await endpoints.root.POST[slug1]({ req })\n }\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n }\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: paramsPromise }: { params: Promise<{ slug: string[] }> }) => {\n const { slug } = await paramsPromise\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) {\n return disableEndpoints\n }\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n req,\n })\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.DELETE.delete({ collection, req })\n break\n case 2:\n // /:collection/:id\n res = await endpoints.collection.DELETE.deleteByID({\n id: slug2,\n collection,\n req,\n })\n break\n }\n }\n }\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n }\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: paramsPromise }: { params: Promise<{ slug: string[] }> }) => {\n const { slug } = await paramsPromise\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) {\n return disableEndpoints\n }\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) {\n return disableEndpoints\n }\n\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: collection.config.endpoints,\n entitySlug: slug1,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n } else {\n await addDataAndFileToRequest(req)\n addLocalesToRequestFromData(req)\n\n switch (slug.length) {\n case 1:\n // /:collection\n res = await endpoints.collection.PATCH.update({ collection, req })\n break\n case 2:\n // /:collection/:id\n res = await endpoints.collection.PATCH.updateByID({\n id: slug2,\n collection,\n req,\n })\n break\n }\n }\n }\n\n if (res instanceof Response) {\n if (req.responseHeaders) {\n const mergedResponse = new Response(res.body, {\n headers: mergeHeaders(req.responseHeaders, res.headers),\n status: res.status,\n statusText: res.statusText,\n })\n\n return mergedResponse\n }\n\n return res\n }\n\n // root routes\n const customEndpointResponse = await handleCustomEndpoints({\n endpoints: req.payload.config.endpoints,\n req,\n })\n\n if (customEndpointResponse) {\n return customEndpointResponse\n }\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"],"mappings":"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","ignoreList":[]}
|