@payloadcms/next 3.0.0-beta.31 → 3.0.0-beta.32
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/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +0 -1
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/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.js +1 -1
- 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/views/Account/index.d.ts.map +1 -1
- package/dist/views/Account/index.js +9 -1
- package/dist/views/Account/index.js.map +1 -1
- package/dist/views/Dashboard/Default/index.d.ts +3 -4
- package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/index.js +19 -3
- package/dist/views/Dashboard/Default/index.js.map +1 -1
- package/dist/views/Dashboard/index.d.ts.map +1 -1
- package/dist/views/Dashboard/index.js +17 -4
- package/dist/views/Dashboard/index.js.map +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +9 -1
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/ForgotPassword/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/index.js +2 -2
- package/dist/views/ForgotPassword/index.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +11 -3
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/Login/LoginForm/index.d.ts.map +1 -1
- package/dist/views/Login/LoginForm/index.js +2 -2
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Login/index.d.ts.map +1 -1
- package/dist/views/Login/index.js +28 -6
- package/dist/views/Login/index.js.map +1 -1
- package/dist/views/NotFound/index.d.ts +1 -1
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +7 -1
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/ResetPassword/index.d.ts.map +1 -1
- package/dist/views/ResetPassword/index.js +2 -2
- package/dist/views/ResetPassword/index.js.map +1 -1
- package/dist/views/Root/getViewFromConfig.d.ts.map +1 -1
- package/dist/views/Root/getViewFromConfig.js +28 -11
- package/dist/views/Root/getViewFromConfig.js.map +1 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +11 -5
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Unauthorized/index.d.ts.map +1 -1
- package/dist/views/Unauthorized/index.js +1 -1
- package/dist/views/Unauthorized/index.js.map +1 -1
- package/dist/views/Verify/index.d.ts.map +1 -1
- package/dist/views/Verify/index.js +10 -4
- package/dist/views/Verify/index.js.map +1 -1
- package/package.json +7 -7
|
@@ -21,7 +21,7 @@ export const handleAdminPage = ({ adminRoute, config, permissions, route })=>{
|
|
|
21
21
|
notFound();
|
|
22
22
|
}
|
|
23
23
|
}
|
|
24
|
-
if (!permissions.canAccessAdmin && !isAdminAuthRoute(route, adminRoute)) {
|
|
24
|
+
if (!permissions.canAccessAdmin && !isAdminAuthRoute(config, route, adminRoute)) {
|
|
25
25
|
notFound();
|
|
26
26
|
}
|
|
27
27
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"sourcesContent":["import type { Permissions } from 'payload/auth'\nimport type {\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload/types'\n\nimport { notFound } from 'next/navigation.js'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAdminPage = ({\n adminRoute,\n config,\n permissions,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n permissions: Permissions\n route: string\n}) => {\n if (isAdminRoute(route, adminRoute)) {\n const routeSegments = route.replace(adminRoute, '').split('/').filter(Boolean)\n const [entityType, entitySlug, createOrID] = routeSegments\n const collectionSlug = entityType === 'collections' ? entitySlug : undefined\n const globalSlug = entityType === 'globals' ? entitySlug : undefined\n const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined\n\n let collectionConfig: SanitizedCollectionConfig | undefined\n let globalConfig: SanitizedGlobalConfig | undefined\n\n if (collectionSlug) {\n collectionConfig = config.collections.find((collection) => collection.slug === collectionSlug)\n\n if (!collectionConfig) {\n notFound()\n }\n }\n\n if (globalSlug) {\n globalConfig = config.globals.find((global) => global.slug === globalSlug)\n\n if (!globalConfig) {\n notFound()\n }\n }\n\n if (!permissions.canAccessAdmin && !isAdminAuthRoute(route, adminRoute)) {\n notFound()\n }\n\n return {\n collectionConfig,\n docID,\n globalConfig,\n }\n }\n}\n"],"names":["notFound","isAdminAuthRoute","isAdminRoute","handleAdminPage","adminRoute","config","permissions","route","routeSegments","replace","split","filter","Boolean","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","collectionConfig","globalConfig","collections","find","collection","slug","globals","global","canAccessAdmin"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAOA,SAASA,QAAQ,QAAQ,qBAAoB;AAE7C,SAASC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAE5D,OAAO,MAAMC,kBAAkB,CAAC,EAC9BC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,KAAK,EAMN;IACC,IAAIL,aAAaK,OAAOH,aAAa;QACnC,MAAMI,gBAAgBD,MAAME,OAAO,CAACL,YAAY,IAAIM,KAAK,CAAC,KAAKC,MAAM,CAACC;QACtE,MAAM,CAACC,YAAYC,YAAYC,WAAW,GAAGP;QAC7C,MAAMQ,iBAAiBH,eAAe,gBAAgBC,aAAaG;QACnE,MAAMC,aAAaL,eAAe,YAAYC,aAAaG;QAC3D,MAAME,QAAQH,kBAAkBD,eAAe,WAAWA,aAAaE;QAEvE,IAAIG;QACJ,IAAIC;QAEJ,IAAIL,gBAAgB;YAClBI,mBAAmBf,OAAOiB,WAAW,CAACC,IAAI,CAAC,CAACC,aAAeA,WAAWC,IAAI,KAAKT;YAE/E,IAAI,CAACI,kBAAkB;gBACrBpB;YACF;QACF;QAEA,IAAIkB,YAAY;YACdG,eAAehB,OAAOqB,OAAO,CAACH,IAAI,CAAC,CAACI,SAAWA,OAAOF,IAAI,KAAKP;YAE/D,IAAI,CAACG,cAAc;gBACjBrB;YACF;QACF;QAEA,IAAI,CAACM,YAAYsB,cAAc,IAAI,CAAC3B,
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/initPage/handleAdminPage.ts"],"sourcesContent":["import type { Permissions } from 'payload/auth'\nimport type {\n SanitizedCollectionConfig,\n SanitizedConfig,\n SanitizedGlobalConfig,\n} from 'payload/types'\n\nimport { notFound } from 'next/navigation.js'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAdminPage = ({\n adminRoute,\n config,\n permissions,\n route,\n}: {\n adminRoute: string\n config: SanitizedConfig\n permissions: Permissions\n route: string\n}) => {\n if (isAdminRoute(route, adminRoute)) {\n const routeSegments = route.replace(adminRoute, '').split('/').filter(Boolean)\n const [entityType, entitySlug, createOrID] = routeSegments\n const collectionSlug = entityType === 'collections' ? entitySlug : undefined\n const globalSlug = entityType === 'globals' ? entitySlug : undefined\n const docID = collectionSlug && createOrID !== 'create' ? createOrID : undefined\n\n let collectionConfig: SanitizedCollectionConfig | undefined\n let globalConfig: SanitizedGlobalConfig | undefined\n\n if (collectionSlug) {\n collectionConfig = config.collections.find((collection) => collection.slug === collectionSlug)\n\n if (!collectionConfig) {\n notFound()\n }\n }\n\n if (globalSlug) {\n globalConfig = config.globals.find((global) => global.slug === globalSlug)\n\n if (!globalConfig) {\n notFound()\n }\n }\n\n if (!permissions.canAccessAdmin && !isAdminAuthRoute(config, route, adminRoute)) {\n notFound()\n }\n\n return {\n collectionConfig,\n docID,\n globalConfig,\n }\n }\n}\n"],"names":["notFound","isAdminAuthRoute","isAdminRoute","handleAdminPage","adminRoute","config","permissions","route","routeSegments","replace","split","filter","Boolean","entityType","entitySlug","createOrID","collectionSlug","undefined","globalSlug","docID","collectionConfig","globalConfig","collections","find","collection","slug","globals","global","canAccessAdmin"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAOA,SAASA,QAAQ,QAAQ,qBAAoB;AAE7C,SAASC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAE5D,OAAO,MAAMC,kBAAkB,CAAC,EAC9BC,UAAU,EACVC,MAAM,EACNC,WAAW,EACXC,KAAK,EAMN;IACC,IAAIL,aAAaK,OAAOH,aAAa;QACnC,MAAMI,gBAAgBD,MAAME,OAAO,CAACL,YAAY,IAAIM,KAAK,CAAC,KAAKC,MAAM,CAACC;QACtE,MAAM,CAACC,YAAYC,YAAYC,WAAW,GAAGP;QAC7C,MAAMQ,iBAAiBH,eAAe,gBAAgBC,aAAaG;QACnE,MAAMC,aAAaL,eAAe,YAAYC,aAAaG;QAC3D,MAAME,QAAQH,kBAAkBD,eAAe,WAAWA,aAAaE;QAEvE,IAAIG;QACJ,IAAIC;QAEJ,IAAIL,gBAAgB;YAClBI,mBAAmBf,OAAOiB,WAAW,CAACC,IAAI,CAAC,CAACC,aAAeA,WAAWC,IAAI,KAAKT;YAE/E,IAAI,CAACI,kBAAkB;gBACrBpB;YACF;QACF;QAEA,IAAIkB,YAAY;YACdG,eAAehB,OAAOqB,OAAO,CAACH,IAAI,CAAC,CAACI,SAAWA,OAAOF,IAAI,KAAKP;YAE/D,IAAI,CAACG,cAAc;gBACjBrB;YACF;QACF;QAEA,IAAI,CAACM,YAAYsB,cAAc,IAAI,CAAC3B,iBAAiBI,QAAQE,OAAOH,aAAa;YAC/EJ;QACF;QAEA,OAAO;YACLoB;YACAD;YACAE;QACF;IACF;AACF,EAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export declare const handleAuthRedirect: ({
|
|
2
|
-
|
|
1
|
+
export declare const handleAuthRedirect: ({ config, redirectUnauthenticatedUser, route, searchParams, }: {
|
|
2
|
+
config;
|
|
3
3
|
redirectUnauthenticatedUser: boolean | string;
|
|
4
4
|
route: string;
|
|
5
5
|
searchParams: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleAuthRedirect.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,kBAAkB,
|
|
1
|
+
{"version":3,"file":"handleAuthRedirect.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,kBAAkB,kEAK5B;IACD,MAAM,CAAA;IACN,2BAA2B,EAAE,OAAO,GAAG,MAAM,CAAA;IAC7C,KAAK,EAAE,MAAM,CAAA;IACb,YAAY,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CACnD,SAsCA,CAAA"}
|
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { redirect } from 'next/navigation.js';
|
|
2
2
|
import QueryString from 'qs';
|
|
3
3
|
import { isAdminAuthRoute, isAdminRoute } from './shared.js';
|
|
4
|
-
export const handleAuthRedirect = ({
|
|
5
|
-
|
|
4
|
+
export const handleAuthRedirect = ({ config, redirectUnauthenticatedUser, route, searchParams })=>{
|
|
5
|
+
const { admin: { routes: { login: loginRouteFromConfig } }, routes: { admin: adminRoute } } = config;
|
|
6
|
+
if (!isAdminAuthRoute(config, route, adminRoute)) {
|
|
6
7
|
if (searchParams && 'redirect' in searchParams) delete searchParams.redirect;
|
|
7
8
|
const redirectRoute = encodeURIComponent(route + Object.keys(searchParams ?? {}).length ? `${QueryString.stringify(searchParams, {
|
|
8
9
|
addQueryPrefix: true
|
|
9
10
|
})}` : undefined);
|
|
10
|
-
const adminLoginRoute = `${adminRoute}
|
|
11
|
+
const adminLoginRoute = `${adminRoute}${loginRouteFromConfig}`;
|
|
11
12
|
const customLoginRoute = typeof redirectUnauthenticatedUser === 'string' ? redirectUnauthenticatedUser : undefined;
|
|
12
|
-
const loginRoute = isAdminRoute(route, adminRoute) ? adminLoginRoute : customLoginRoute ||
|
|
13
|
+
const loginRoute = isAdminRoute(route, adminRoute) ? adminLoginRoute : customLoginRoute || loginRouteFromConfig;
|
|
13
14
|
const parsedLoginRouteSearchParams = QueryString.parse(loginRoute.split('?')[1] ?? '');
|
|
14
15
|
const searchParamsWithRedirect = `${QueryString.stringify({
|
|
15
16
|
...parsedLoginRouteSearchParams,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"sourcesContent":["import { redirect } from 'next/navigation.js'\nimport QueryString from 'qs'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAuthRedirect = ({\n
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/initPage/handleAuthRedirect.ts"],"sourcesContent":["import { redirect } from 'next/navigation.js'\nimport QueryString from 'qs'\n\nimport { isAdminAuthRoute, isAdminRoute } from './shared.js'\n\nexport const handleAuthRedirect = ({\n config,\n redirectUnauthenticatedUser,\n route,\n searchParams,\n}: {\n config\n redirectUnauthenticatedUser: boolean | string\n route: string\n searchParams: { [key: string]: string | string[] }\n}) => {\n const {\n admin: {\n routes: { login: loginRouteFromConfig },\n },\n routes: { admin: adminRoute },\n } = config\n\n if (!isAdminAuthRoute(config, route, adminRoute)) {\n if (searchParams && 'redirect' in searchParams) delete searchParams.redirect\n\n const redirectRoute = encodeURIComponent(\n route + Object.keys(searchParams ?? {}).length\n ? `${QueryString.stringify(searchParams, { addQueryPrefix: true })}`\n : undefined,\n )\n\n const adminLoginRoute = `${adminRoute}${loginRouteFromConfig}`\n\n const customLoginRoute =\n typeof redirectUnauthenticatedUser === 'string' ? redirectUnauthenticatedUser : undefined\n\n const loginRoute = isAdminRoute(route, adminRoute)\n ? adminLoginRoute\n : customLoginRoute || loginRouteFromConfig\n\n const parsedLoginRouteSearchParams = QueryString.parse(loginRoute.split('?')[1] ?? '')\n\n const searchParamsWithRedirect = `${QueryString.stringify(\n {\n ...parsedLoginRouteSearchParams,\n ...(redirectRoute ? { redirect: redirectRoute } : {}),\n },\n { addQueryPrefix: true },\n )}`\n\n redirect(`${loginRoute.split('?')[0]}${searchParamsWithRedirect}`)\n }\n}\n"],"names":["redirect","QueryString","isAdminAuthRoute","isAdminRoute","handleAuthRedirect","config","redirectUnauthenticatedUser","route","searchParams","admin","routes","login","loginRouteFromConfig","adminRoute","redirectRoute","encodeURIComponent","Object","keys","length","stringify","addQueryPrefix","undefined","adminLoginRoute","customLoginRoute","loginRoute","parsedLoginRouteSearchParams","parse","split","searchParamsWithRedirect"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAAA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,OAAOC,iBAAiB,KAAI;AAE5B,SAASC,gBAAgB,EAAEC,YAAY,QAAQ,cAAa;AAE5D,OAAO,MAAMC,qBAAqB,CAAC,EACjCC,MAAM,EACNC,2BAA2B,EAC3BC,KAAK,EACLC,YAAY,EAMb;IACC,MAAM,EACJC,OAAO,EACLC,QAAQ,EAAEC,OAAOC,oBAAoB,EAAE,EACxC,EACDF,QAAQ,EAAED,OAAOI,UAAU,EAAE,EAC9B,GAAGR;IAEJ,IAAI,CAACH,iBAAiBG,QAAQE,OAAOM,aAAa;QAChD,IAAIL,gBAAgB,cAAcA,cAAc,OAAOA,aAAaR,QAAQ;QAE5E,MAAMc,gBAAgBC,mBACpBR,QAAQS,OAAOC,IAAI,CAACT,gBAAgB,CAAC,GAAGU,MAAM,GAC1C,CAAC,EAAEjB,YAAYkB,SAAS,CAACX,cAAc;YAAEY,gBAAgB;QAAK,GAAG,CAAC,GAClEC;QAGN,MAAMC,kBAAkB,CAAC,EAAET,WAAW,EAAED,qBAAqB,CAAC;QAE9D,MAAMW,mBACJ,OAAOjB,gCAAgC,WAAWA,8BAA8Be;QAElF,MAAMG,aAAarB,aAAaI,OAAOM,cACnCS,kBACAC,oBAAoBX;QAExB,MAAMa,+BAA+BxB,YAAYyB,KAAK,CAACF,WAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI;QAEnF,MAAMC,2BAA2B,CAAC,EAAE3B,YAAYkB,SAAS,CACvD;YACE,GAAGM,4BAA4B;YAC/B,GAAIX,gBAAgB;gBAAEd,UAAUc;YAAc,IAAI,CAAC,CAAC;QACtD,GACA;YAAEM,gBAAgB;QAAK,GACvB,CAAC;QAEHpB,SAAS,CAAC,EAAEwB,WAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAEC,yBAAyB,CAAC;IACnE;AACF,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/initPage/index.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { InitPageResult, PayloadRequestWithData, VisibleEntities } from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { findLocaleFromCode } from '@payloadcms/ui/utilities/findLocaleFromCode'\nimport { headers as getHeaders } from 'next/headers.js'\nimport { parseCookies } from 'payload/auth'\nimport { createLocalReq, isEntityHidden } from 'payload/utilities'\nimport qs from 'qs'\n\nimport type { Args } from './types.js'\n\nimport { getPayloadHMR } from '../getPayloadHMR.js'\nimport { getRequestLanguage } from '../getRequestLanguage.js'\nimport { handleAdminPage } from './handleAdminPage.js'\nimport { handleAuthRedirect } from './handleAuthRedirect.js'\n\nexport const initPage = async ({\n config: configPromise,\n redirectUnauthenticatedUser = false,\n route,\n searchParams,\n}: Args): Promise<InitPageResult> => {\n const headers = getHeaders()\n const localeParam = searchParams?.locale as string\n const payload = await getPayloadHMR({ config: configPromise })\n\n const {\n collections,\n globals,\n i18n: i18nConfig,\n localization,\n routes: { admin: adminRoute },\n } = payload.config\n\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n const defaultLocale =\n localization && localization.defaultLocale ? localization.defaultLocale : 'en'\n const localeCode = localeParam || defaultLocale\n const locale = localization && findLocaleFromCode(localization, localeCode)\n const cookies = parseCookies(headers)\n const language = getRequestLanguage({ config: payload.config, cookies, headers })\n\n const i18n: I18nClient = await initI18n({\n config: i18nConfig,\n context: 'client',\n language,\n })\n\n const req = await createLocalReq(\n {\n fallbackLocale: null,\n locale: locale.code,\n req: {\n i18n,\n query: qs.parse(queryString, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n url: `${payload.config.serverURL}${route}${searchParams ? queryString : ''}`,\n } as PayloadRequestWithData,\n },\n payload,\n )\n\n const { permissions, user } = await payload.auth({ headers, req })\n\n req.user = user\n\n const visibleEntities: VisibleEntities = {\n collections: collections\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n globals: globals\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n }\n\n if (redirectUnauthenticatedUser && !user) {\n handleAuthRedirect({\n
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/initPage/index.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { InitPageResult, PayloadRequestWithData, VisibleEntities } from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { findLocaleFromCode } from '@payloadcms/ui/utilities/findLocaleFromCode'\nimport { headers as getHeaders } from 'next/headers.js'\nimport { parseCookies } from 'payload/auth'\nimport { createLocalReq, isEntityHidden } from 'payload/utilities'\nimport qs from 'qs'\n\nimport type { Args } from './types.js'\n\nimport { getPayloadHMR } from '../getPayloadHMR.js'\nimport { getRequestLanguage } from '../getRequestLanguage.js'\nimport { handleAdminPage } from './handleAdminPage.js'\nimport { handleAuthRedirect } from './handleAuthRedirect.js'\n\nexport const initPage = async ({\n config: configPromise,\n redirectUnauthenticatedUser = false,\n route,\n searchParams,\n}: Args): Promise<InitPageResult> => {\n const headers = getHeaders()\n const localeParam = searchParams?.locale as string\n const payload = await getPayloadHMR({ config: configPromise })\n\n const {\n collections,\n globals,\n i18n: i18nConfig,\n localization,\n routes: { admin: adminRoute },\n } = payload.config\n\n const queryString = `${qs.stringify(searchParams ?? {}, { addQueryPrefix: true })}`\n const defaultLocale =\n localization && localization.defaultLocale ? localization.defaultLocale : 'en'\n const localeCode = localeParam || defaultLocale\n const locale = localization && findLocaleFromCode(localization, localeCode)\n const cookies = parseCookies(headers)\n const language = getRequestLanguage({ config: payload.config, cookies, headers })\n\n const i18n: I18nClient = await initI18n({\n config: i18nConfig,\n context: 'client',\n language,\n })\n\n const req = await createLocalReq(\n {\n fallbackLocale: null,\n locale: locale.code,\n req: {\n i18n,\n query: qs.parse(queryString, {\n depth: 10,\n ignoreQueryPrefix: true,\n }),\n url: `${payload.config.serverURL}${route}${searchParams ? queryString : ''}`,\n } as PayloadRequestWithData,\n },\n payload,\n )\n\n const { permissions, user } = await payload.auth({ headers, req })\n\n req.user = user\n\n const visibleEntities: VisibleEntities = {\n collections: collections\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n globals: globals\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n }\n\n if (redirectUnauthenticatedUser && !user) {\n handleAuthRedirect({\n config: payload.config,\n redirectUnauthenticatedUser,\n route,\n searchParams,\n })\n }\n\n const { collectionConfig, docID, globalConfig } = handleAdminPage({\n adminRoute,\n config: payload.config,\n permissions,\n route,\n })\n\n return {\n collectionConfig,\n cookies,\n docID,\n globalConfig,\n locale,\n permissions,\n req,\n translations: i18n.translations,\n visibleEntities,\n }\n}\n"],"names":["initI18n","findLocaleFromCode","headers","getHeaders","parseCookies","createLocalReq","isEntityHidden","qs","getPayloadHMR","getRequestLanguage","handleAdminPage","handleAuthRedirect","initPage","config","configPromise","redirectUnauthenticatedUser","route","searchParams","localeParam","locale","payload","collections","globals","i18n","i18nConfig","localization","routes","admin","adminRoute","queryString","stringify","addQueryPrefix","defaultLocale","localeCode","cookies","language","context","req","fallbackLocale","code","query","parse","depth","ignoreQueryPrefix","url","serverURL","permissions","user","auth","visibleEntities","map","slug","hidden","filter","Boolean","collectionConfig","docID","globalConfig","translations"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,kBAAkB,QAAQ,8CAA6C;AAChF,SAASC,WAAWC,UAAU,QAAQ,kBAAiB;AACvD,SAASC,YAAY,QAAQ,eAAc;AAC3C,SAASC,cAAc,EAAEC,cAAc,QAAQ,oBAAmB;AAClE,OAAOC,QAAQ,KAAI;AAInB,SAASC,aAAa,QAAQ,sBAAqB;AACnD,SAASC,kBAAkB,QAAQ,2BAA0B;AAC7D,SAASC,eAAe,QAAQ,uBAAsB;AACtD,SAASC,kBAAkB,QAAQ,0BAAyB;AAE5D,OAAO,MAAMC,WAAW,OAAO,EAC7BC,QAAQC,aAAa,EACrBC,8BAA8B,KAAK,EACnCC,KAAK,EACLC,YAAY,EACP;IACL,MAAMf,UAAUC;IAChB,MAAMe,cAAcD,cAAcE;IAClC,MAAMC,UAAU,MAAMZ,cAAc;QAAEK,QAAQC;IAAc;IAE5D,MAAM,EACJO,WAAW,EACXC,OAAO,EACPC,MAAMC,UAAU,EAChBC,YAAY,EACZC,QAAQ,EAAEC,OAAOC,UAAU,EAAE,EAC9B,GAAGR,QAAQP,MAAM;IAElB,MAAMgB,cAAc,CAAC,EAAEtB,GAAGuB,SAAS,CAACb,gBAAgB,CAAC,GAAG;QAAEc,gBAAgB;IAAK,GAAG,CAAC;IACnF,MAAMC,gBACJP,gBAAgBA,aAAaO,aAAa,GAAGP,aAAaO,aAAa,GAAG;IAC5E,MAAMC,aAAaf,eAAec;IAClC,MAAMb,SAASM,gBAAgBxB,mBAAmBwB,cAAcQ;IAChE,MAAMC,UAAU9B,aAAaF;IAC7B,MAAMiC,WAAW1B,mBAAmB;QAAEI,QAAQO,QAAQP,MAAM;QAAEqB;QAAShC;IAAQ;IAE/E,MAAMqB,OAAmB,MAAMvB,SAAS;QACtCa,QAAQW;QACRY,SAAS;QACTD;IACF;IAEA,MAAME,MAAM,MAAMhC,eAChB;QACEiC,gBAAgB;QAChBnB,QAAQA,OAAOoB,IAAI;QACnBF,KAAK;YACHd;YACAiB,OAAOjC,GAAGkC,KAAK,CAACZ,aAAa;gBAC3Ba,OAAO;gBACPC,mBAAmB;YACrB;YACAC,KAAK,CAAC,EAAExB,QAAQP,MAAM,CAACgC,SAAS,CAAC,EAAE7B,MAAM,EAAEC,eAAeY,cAAc,GAAG,CAAC;QAC9E;IACF,GACAT;IAGF,MAAM,EAAE0B,WAAW,EAAEC,IAAI,EAAE,GAAG,MAAM3B,QAAQ4B,IAAI,CAAC;QAAE9C;QAASmC;IAAI;IAEhEA,IAAIU,IAAI,GAAGA;IAEX,MAAME,kBAAmC;QACvC5B,aAAaA,YACV6B,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAExB,OAAO,EAAEyB,MAAM,EAAE,EAAE,GAAM,CAAC9C,eAAe;gBAAE8C;gBAAQL;YAAK,KAAKI,OAAO,MACjFE,MAAM,CAACC;QACVhC,SAASA,QACN4B,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAExB,OAAO,EAAEyB,MAAM,EAAE,EAAE,GAAM,CAAC9C,eAAe;gBAAE8C;gBAAQL;YAAK,KAAKI,OAAO,MACjFE,MAAM,CAACC;IACZ;IAEA,IAAIvC,+BAA+B,CAACgC,MAAM;QACxCpC,mBAAmB;YACjBE,QAAQO,QAAQP,MAAM;YACtBE;YACAC;YACAC;QACF;IACF;IAEA,MAAM,EAAEsC,gBAAgB,EAAEC,KAAK,EAAEC,YAAY,EAAE,GAAG/C,gBAAgB;QAChEkB;QACAf,QAAQO,QAAQP,MAAM;QACtBiC;QACA9B;IACF;IAEA,OAAO;QACLuC;QACArB;QACAsB;QACAC;QACAtC;QACA2B;QACAT;QACAqB,cAAcnC,KAAKmC,YAAY;QAC/BT;IACF;AACF,EAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
|
|
1
|
+
import type { SanitizedConfig } from 'payload/types';
|
|
2
2
|
export declare const isAdminRoute: (route: string, adminRoute: string) => boolean;
|
|
3
|
-
export declare const isAdminAuthRoute: (route: string, adminRoute: string) => boolean;
|
|
3
|
+
export declare const isAdminAuthRoute: (config: SanitizedConfig, route: string, adminRoute: string) => boolean;
|
|
4
4
|
//# sourceMappingURL=shared.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/shared.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAapD,eAAO,MAAM,YAAY,UAAW,MAAM,cAAc,MAAM,YAE7D,CAAA;AAED,eAAO,MAAM,gBAAgB,WAAY,eAAe,SAAS,MAAM,cAAc,MAAM,YAQ1F,CAAA"}
|
|
@@ -1,16 +1,18 @@
|
|
|
1
|
-
|
|
2
|
-
'
|
|
3
|
-
'
|
|
4
|
-
'
|
|
5
|
-
'
|
|
6
|
-
'
|
|
7
|
-
'
|
|
8
|
-
'
|
|
1
|
+
const authRouteKeys = [
|
|
2
|
+
'account',
|
|
3
|
+
'createFirstUser',
|
|
4
|
+
'forgot',
|
|
5
|
+
'login',
|
|
6
|
+
'logout',
|
|
7
|
+
'forgot',
|
|
8
|
+
'inactivity',
|
|
9
|
+
'unauthorized'
|
|
9
10
|
];
|
|
10
11
|
export const isAdminRoute = (route, adminRoute)=>{
|
|
11
12
|
return route.startsWith(adminRoute);
|
|
12
13
|
};
|
|
13
|
-
export const isAdminAuthRoute = (route, adminRoute)=>{
|
|
14
|
+
export const isAdminAuthRoute = (config, route, adminRoute)=>{
|
|
15
|
+
const authRoutes = config.admin?.routes ? Object.entries(config.admin.routes).filter(([key])=>authRouteKeys.includes(key)).map(([_, value])=>value) : [];
|
|
14
16
|
return authRoutes.some((r)=>route.replace(adminRoute, '').startsWith(r));
|
|
15
17
|
};
|
|
16
18
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/initPage/shared.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/initPage/shared.ts"],"sourcesContent":["import type { SanitizedConfig } from 'payload/types'\n\nconst authRouteKeys: (keyof SanitizedConfig['admin']['routes'])[] = [\n 'account',\n 'createFirstUser',\n 'forgot',\n 'login',\n 'logout',\n 'forgot',\n 'inactivity',\n 'unauthorized',\n]\n\nexport const isAdminRoute = (route: string, adminRoute: string) => {\n return route.startsWith(adminRoute)\n}\n\nexport const isAdminAuthRoute = (config: SanitizedConfig, route: string, adminRoute: string) => {\n const authRoutes = config.admin?.routes\n ? Object.entries(config.admin.routes)\n .filter(([key]) => authRouteKeys.includes(key as keyof SanitizedConfig['admin']['routes']))\n .map(([_, value]) => value)\n : []\n\n return authRoutes.some((r) => route.replace(adminRoute, '').startsWith(r))\n}\n"],"names":["authRouteKeys","isAdminRoute","route","adminRoute","startsWith","isAdminAuthRoute","config","authRoutes","admin","routes","Object","entries","filter","key","includes","map","_","value","some","r","replace"],"rangeMappings":";;;;;;;;;;;;;;;;","mappings":"AAEA,MAAMA,gBAA8D;IAClE;IACA;IACA;IACA;IACA;IACA;IACA;IACA;CACD;AAED,OAAO,MAAMC,eAAe,CAACC,OAAeC;IAC1C,OAAOD,MAAME,UAAU,CAACD;AAC1B,EAAC;AAED,OAAO,MAAME,mBAAmB,CAACC,QAAyBJ,OAAeC;IACvE,MAAMI,aAAaD,OAAOE,KAAK,EAAEC,SAC7BC,OAAOC,OAAO,CAACL,OAAOE,KAAK,CAACC,MAAM,EAC/BG,MAAM,CAAC,CAAC,CAACC,IAAI,GAAKb,cAAcc,QAAQ,CAACD,MACzCE,GAAG,CAAC,CAAC,CAACC,GAAGC,MAAM,GAAKA,SACvB,EAAE;IAEN,OAAOV,WAAWW,IAAI,CAAC,CAACC,IAAMjB,MAAMkB,OAAO,CAACjB,YAAY,IAAIC,UAAU,CAACe;AACzE,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Account/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAQnD,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AAEnD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Account/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAQnD,OAAO,KAAK,MAAM,OAAO,CAAA;AAKzB,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAA;AAEnD,eAAO,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA+E5C,CAAA"}
|
|
@@ -49,7 +49,15 @@ export const Account = ({ initPageResult, params, searchParams })=>{
|
|
|
49
49
|
CustomComponent: typeof CustomAccountComponent === 'function' ? CustomAccountComponent : undefined,
|
|
50
50
|
DefaultComponent: EditView,
|
|
51
51
|
componentProps: viewComponentProps,
|
|
52
|
-
|
|
52
|
+
serverOnlyProps: {
|
|
53
|
+
i18n,
|
|
54
|
+
locale,
|
|
55
|
+
params,
|
|
56
|
+
payload,
|
|
57
|
+
permissions,
|
|
58
|
+
searchParams,
|
|
59
|
+
user
|
|
60
|
+
}
|
|
53
61
|
})));
|
|
54
62
|
}
|
|
55
63
|
return notFound();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Account/index.tsx"],"sourcesContent":["import type { ServerSideEditViewProps } from 'payload/types'\nimport type { AdminViewProps } from 'payload/types'\n\nimport { DocumentHeader } from '@payloadcms/ui/elements/DocumentHeader'\nimport { HydrateClientUser } from '@payloadcms/ui/elements/HydrateClientUser'\nimport { RenderCustomComponent } from '@payloadcms/ui/elements/RenderCustomComponent'\nimport { DocumentInfoProvider } from '@payloadcms/ui/providers/DocumentInfo'\nimport { FormQueryParamsProvider } from '@payloadcms/ui/providers/FormQueryParams'\nimport { notFound } from 'next/navigation.js'\nimport React from 'react'\n\nimport { EditView } from '../Edit/index.js'\nimport { Settings } from './Settings/index.js'\n\nexport { generateAccountMetadata } from './meta.js'\n\nexport const Account: React.FC<AdminViewProps> = ({ initPageResult, params, searchParams }) => {\n const {\n locale,\n permissions,\n req: {\n i18n,\n payload,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const {\n admin: { components: { views: { Account: CustomAccountComponent } = {} } = {}, user: userSlug },\n routes: { api },\n serverURL,\n } = config\n\n const collectionPermissions = permissions?.collections?.[userSlug]\n\n const collectionConfig = config.collections.find((collection) => collection.slug === userSlug)\n\n if (collectionConfig) {\n const viewComponentProps: ServerSideEditViewProps = {\n initPageResult,\n params,\n routeSegments: [],\n searchParams,\n }\n\n return (\n <DocumentInfoProvider\n AfterFields={<Settings />}\n action={`${serverURL}${api}/${userSlug}${user?.id ? `/${user.id}` : ''}`}\n apiURL={`${serverURL}${api}/${userSlug}${user?.id ? `/${user.id}` : ''}`}\n collectionSlug={userSlug}\n docPermissions={collectionPermissions}\n hasSavePermission={collectionPermissions?.update?.permission}\n id={user?.id}\n isEditing\n >\n <DocumentHeader\n collectionConfig={collectionConfig}\n config={payload.config}\n hideTabs\n i18n={i18n}\n permissions={permissions}\n />\n <HydrateClientUser permissions={permissions} user={user} />\n <FormQueryParamsProvider\n initialParams={{\n depth: 0,\n 'fallback-locale': 'null',\n locale: locale.code,\n uploadEdits: undefined,\n }}\n >\n <RenderCustomComponent\n CustomComponent={\n typeof CustomAccountComponent === 'function' ? CustomAccountComponent : undefined\n }\n DefaultComponent={EditView}\n componentProps={viewComponentProps}\n
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Account/index.tsx"],"sourcesContent":["import type { ServerSideEditViewProps } from 'payload/types'\nimport type { AdminViewProps } from 'payload/types'\n\nimport { DocumentHeader } from '@payloadcms/ui/elements/DocumentHeader'\nimport { HydrateClientUser } from '@payloadcms/ui/elements/HydrateClientUser'\nimport { RenderCustomComponent } from '@payloadcms/ui/elements/RenderCustomComponent'\nimport { DocumentInfoProvider } from '@payloadcms/ui/providers/DocumentInfo'\nimport { FormQueryParamsProvider } from '@payloadcms/ui/providers/FormQueryParams'\nimport { notFound } from 'next/navigation.js'\nimport React from 'react'\n\nimport { EditView } from '../Edit/index.js'\nimport { Settings } from './Settings/index.js'\n\nexport { generateAccountMetadata } from './meta.js'\n\nexport const Account: React.FC<AdminViewProps> = ({ initPageResult, params, searchParams }) => {\n const {\n locale,\n permissions,\n req: {\n i18n,\n payload,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const {\n admin: { components: { views: { Account: CustomAccountComponent } = {} } = {}, user: userSlug },\n routes: { api },\n serverURL,\n } = config\n\n const collectionPermissions = permissions?.collections?.[userSlug]\n\n const collectionConfig = config.collections.find((collection) => collection.slug === userSlug)\n\n if (collectionConfig) {\n const viewComponentProps: ServerSideEditViewProps = {\n initPageResult,\n params,\n routeSegments: [],\n searchParams,\n }\n\n return (\n <DocumentInfoProvider\n AfterFields={<Settings />}\n action={`${serverURL}${api}/${userSlug}${user?.id ? `/${user.id}` : ''}`}\n apiURL={`${serverURL}${api}/${userSlug}${user?.id ? `/${user.id}` : ''}`}\n collectionSlug={userSlug}\n docPermissions={collectionPermissions}\n hasSavePermission={collectionPermissions?.update?.permission}\n id={user?.id}\n isEditing\n >\n <DocumentHeader\n collectionConfig={collectionConfig}\n config={payload.config}\n hideTabs\n i18n={i18n}\n permissions={permissions}\n />\n <HydrateClientUser permissions={permissions} user={user} />\n <FormQueryParamsProvider\n initialParams={{\n depth: 0,\n 'fallback-locale': 'null',\n locale: locale.code,\n uploadEdits: undefined,\n }}\n >\n <RenderCustomComponent\n CustomComponent={\n typeof CustomAccountComponent === 'function' ? CustomAccountComponent : undefined\n }\n DefaultComponent={EditView}\n componentProps={viewComponentProps}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n </FormQueryParamsProvider>\n </DocumentInfoProvider>\n )\n }\n\n return notFound()\n}\n"],"names":["DocumentHeader","HydrateClientUser","RenderCustomComponent","DocumentInfoProvider","FormQueryParamsProvider","notFound","React","EditView","Settings","generateAccountMetadata","Account","initPageResult","params","searchParams","locale","permissions","req","i18n","payload","config","user","admin","components","views","CustomAccountComponent","userSlug","routes","api","serverURL","collectionPermissions","collections","collectionConfig","find","collection","slug","viewComponentProps","routeSegments","AfterFields","action","id","apiURL","collectionSlug","docPermissions","hasSavePermission","update","permission","isEditing","hideTabs","initialParams","depth","code","uploadEdits","undefined","CustomComponent","DefaultComponent","componentProps","serverOnlyProps"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,cAAc,QAAQ,yCAAwC;AACvE,SAASC,iBAAiB,QAAQ,4CAA2C;AAC7E,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,SAASC,oBAAoB,QAAQ,wCAAuC;AAC5E,SAASC,uBAAuB,QAAQ,2CAA0C;AAClF,SAASC,QAAQ,QAAQ,qBAAoB;AAC7C,OAAOC,WAAW,QAAO;AAEzB,SAASC,QAAQ,QAAQ,mBAAkB;AAC3C,SAASC,QAAQ,QAAQ,sBAAqB;AAE9C,SAASC,uBAAuB,QAAQ,YAAW;AAEnD,OAAO,MAAMC,UAAoC,CAAC,EAAEC,cAAc,EAAEC,MAAM,EAAEC,YAAY,EAAE;IACxF,MAAM,EACJC,MAAM,EACNC,WAAW,EACXC,KAAK,EACHC,IAAI,EACJC,OAAO,EACPA,SAAS,EAAEC,MAAM,EAAE,EACnBC,IAAI,EACL,EACF,GAAGT;IAEJ,MAAM,EACJU,OAAO,EAAEC,YAAY,EAAEC,OAAO,EAAEb,SAASc,sBAAsB,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,EAAEJ,MAAMK,QAAQ,EAAE,EAC/FC,QAAQ,EAAEC,GAAG,EAAE,EACfC,SAAS,EACV,GAAGT;IAEJ,MAAMU,wBAAwBd,aAAae,aAAa,CAACL,SAAS;IAElE,MAAMM,mBAAmBZ,OAAOW,WAAW,CAACE,IAAI,CAAC,CAACC,aAAeA,WAAWC,IAAI,KAAKT;IAErF,IAAIM,kBAAkB;QACpB,MAAMI,qBAA8C;YAClDxB;YACAC;YACAwB,eAAe,EAAE;YACjBvB;QACF;QAEA,qBACE,oBAACV;YACCkC,2BAAa,oBAAC7B;YACd8B,QAAQ,CAAC,EAAEV,UAAU,EAAED,IAAI,CAAC,EAAEF,SAAS,EAAEL,MAAMmB,KAAK,CAAC,CAAC,EAAEnB,KAAKmB,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC;YACxEC,QAAQ,CAAC,EAAEZ,UAAU,EAAED,IAAI,CAAC,EAAEF,SAAS,EAAEL,MAAMmB,KAAK,CAAC,CAAC,EAAEnB,KAAKmB,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC;YACxEE,gBAAgBhB;YAChBiB,gBAAgBb;YAChBc,mBAAmBd,uBAAuBe,QAAQC;YAClDN,IAAInB,MAAMmB;YACVO,WAAAA;yBAEA,oBAAC9C;YACC+B,kBAAkBA;YAClBZ,QAAQD,QAAQC,MAAM;YACtB4B,UAAAA;YACA9B,MAAMA;YACNF,aAAaA;0BAEf,oBAACd;YAAkBc,aAAaA;YAAaK,MAAMA;0BACnD,oBAAChB;YACC4C,eAAe;gBACbC,OAAO;gBACP,mBAAmB;gBACnBnC,QAAQA,OAAOoC,IAAI;gBACnBC,aAAaC;YACf;yBAEA,oBAAClD;YACCmD,iBACE,OAAO7B,2BAA2B,aAAaA,yBAAyB4B;YAE1EE,kBAAkB/C;YAClBgD,gBAAgBpB;YAChBqB,iBAAiB;gBACfvC;gBACAH;gBACAF;gBACAM;gBACAH;gBACAF;gBACAO;YACF;;IAKV;IAEA,OAAOf;AACT,EAAC"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import type { Permissions } from 'payload/auth';
|
|
2
|
-
import type {
|
|
2
|
+
import type { ServerProps } from 'payload/config';
|
|
3
|
+
import type { VisibleEntities } from 'payload/types';
|
|
3
4
|
import React from 'react';
|
|
4
5
|
import './index.scss';
|
|
5
|
-
export type DashboardProps = {
|
|
6
|
+
export type DashboardProps = ServerProps & {
|
|
6
7
|
Link: React.ComponentType<any>;
|
|
7
|
-
config: SanitizedConfig;
|
|
8
|
-
payload: Payload;
|
|
9
8
|
permissions: Permissions;
|
|
10
9
|
visibleEntities: VisibleEntities;
|
|
11
10
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Dashboard/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Dashboard/Default/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,cAAc,CAAA;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACjD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAMpD,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,cAAc,CAAA;AAIrB,MAAM,MAAM,cAAc,GAAG,WAAW,GAAG;IACzC,IAAI,EAAE,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;IAE9B,WAAW,EAAE,WAAW,CAAA;IACxB,eAAe,EAAE,eAAe,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAwErD,CAAA"}
|
|
@@ -6,16 +6,32 @@ import React from 'react';
|
|
|
6
6
|
import { DefaultDashboardClient } from './index.client.js';
|
|
7
7
|
const baseClass = 'dashboard';
|
|
8
8
|
export const DefaultDashboard = (props)=>{
|
|
9
|
-
const { Link, config: { admin: { components: { afterDashboard, beforeDashboard } } }, payload, permissions, visibleEntities } = props;
|
|
9
|
+
const { Link, i18n, locale, params, payload: { config: { admin: { components: { afterDashboard, beforeDashboard } } } }, payload, permissions, searchParams, user, visibleEntities } = props;
|
|
10
10
|
const BeforeDashboards = Array.isArray(beforeDashboard) ? beforeDashboard.map((Component, i)=>/*#__PURE__*/ React.createElement(WithServerSideProps, {
|
|
11
11
|
Component: Component,
|
|
12
12
|
key: i,
|
|
13
|
-
|
|
13
|
+
serverOnlyProps: {
|
|
14
|
+
i18n,
|
|
15
|
+
locale,
|
|
16
|
+
params,
|
|
17
|
+
payload,
|
|
18
|
+
permissions,
|
|
19
|
+
searchParams,
|
|
20
|
+
user
|
|
21
|
+
}
|
|
14
22
|
})) : null;
|
|
15
23
|
const AfterDashboards = Array.isArray(afterDashboard) ? afterDashboard.map((Component, i)=>/*#__PURE__*/ React.createElement(WithServerSideProps, {
|
|
16
24
|
Component: Component,
|
|
17
25
|
key: i,
|
|
18
|
-
|
|
26
|
+
serverOnlyProps: {
|
|
27
|
+
i18n,
|
|
28
|
+
locale,
|
|
29
|
+
params,
|
|
30
|
+
payload,
|
|
31
|
+
permissions,
|
|
32
|
+
searchParams,
|
|
33
|
+
user
|
|
34
|
+
}
|
|
19
35
|
})) : null;
|
|
20
36
|
return /*#__PURE__*/ React.createElement("div", {
|
|
21
37
|
className: baseClass
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/Dashboard/Default/index.tsx"],"sourcesContent":["import type { Permissions } from 'payload/auth'\nimport type {
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/Dashboard/Default/index.tsx"],"sourcesContent":["import type { Permissions } from 'payload/auth'\nimport type { ServerProps } from 'payload/config'\nimport type { VisibleEntities } from 'payload/types'\n\nimport { Gutter } from '@payloadcms/ui/elements/Gutter'\nimport { SetStepNav } from '@payloadcms/ui/elements/StepNav'\nimport { WithServerSideProps } from '@payloadcms/ui/elements/WithServerSideProps'\nimport { SetViewActions } from '@payloadcms/ui/providers/Actions'\nimport React from 'react'\n\nimport { DefaultDashboardClient } from './index.client.js'\nimport './index.scss'\n\nconst baseClass = 'dashboard'\n\nexport type DashboardProps = ServerProps & {\n Link: React.ComponentType<any>\n\n permissions: Permissions\n visibleEntities: VisibleEntities\n}\n\nexport const DefaultDashboard: React.FC<DashboardProps> = (props) => {\n const {\n Link,\n i18n,\n locale,\n params,\n payload: {\n config: {\n admin: {\n components: { afterDashboard, beforeDashboard },\n },\n },\n },\n payload,\n permissions,\n searchParams,\n user,\n visibleEntities,\n } = props\n\n const BeforeDashboards = Array.isArray(beforeDashboard)\n ? beforeDashboard.map((Component, i) => (\n <WithServerSideProps\n Component={Component}\n key={i}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n ))\n : null\n\n const AfterDashboards = Array.isArray(afterDashboard)\n ? afterDashboard.map((Component, i) => (\n <WithServerSideProps\n Component={Component}\n key={i}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n ))\n : null\n\n return (\n <div className={baseClass}>\n <SetStepNav nav={[]} />\n <SetViewActions actions={[]} />\n <Gutter className={`${baseClass}__wrap`}>\n {Array.isArray(BeforeDashboards) && BeforeDashboards.map((Component) => Component)}\n\n <DefaultDashboardClient\n Link={Link}\n permissions={permissions}\n visibleEntities={visibleEntities}\n />\n {Array.isArray(AfterDashboards) && AfterDashboards.map((Component) => Component)}\n </Gutter>\n </div>\n )\n}\n"],"names":["Gutter","SetStepNav","WithServerSideProps","SetViewActions","React","DefaultDashboardClient","baseClass","DefaultDashboard","props","Link","i18n","locale","params","payload","config","admin","components","afterDashboard","beforeDashboard","permissions","searchParams","user","visibleEntities","BeforeDashboards","Array","isArray","map","Component","i","key","serverOnlyProps","AfterDashboards","div","className","nav","actions"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,MAAM,QAAQ,iCAAgC;AACvD,SAASC,UAAU,QAAQ,kCAAiC;AAC5D,SAASC,mBAAmB,QAAQ,8CAA6C;AACjF,SAASC,cAAc,QAAQ,mCAAkC;AACjE,OAAOC,WAAW,QAAO;AAEzB,SAASC,sBAAsB,QAAQ,oBAAmB;AAG1D,MAAMC,YAAY;AASlB,OAAO,MAAMC,mBAA6C,CAACC;IACzD,MAAM,EACJC,IAAI,EACJC,IAAI,EACJC,MAAM,EACNC,MAAM,EACNC,SAAS,EACPC,QAAQ,EACNC,OAAO,EACLC,YAAY,EAAEC,cAAc,EAAEC,eAAe,EAAE,EAChD,EACF,EACF,EACDL,OAAO,EACPM,WAAW,EACXC,YAAY,EACZC,IAAI,EACJC,eAAe,EAChB,GAAGd;IAEJ,MAAMe,mBAAmBC,MAAMC,OAAO,CAACP,mBACnCA,gBAAgBQ,GAAG,CAAC,CAACC,WAAWC,kBAC9B,oBAAC1B;YACCyB,WAAWA;YACXE,KAAKD;YACLE,iBAAiB;gBACfpB;gBACAC;gBACAC;gBACAC;gBACAM;gBACAC;gBACAC;YACF;cAGJ;IAEJ,MAAMU,kBAAkBP,MAAMC,OAAO,CAACR,kBAClCA,eAAeS,GAAG,CAAC,CAACC,WAAWC,kBAC7B,oBAAC1B;YACCyB,WAAWA;YACXE,KAAKD;YACLE,iBAAiB;gBACfpB;gBACAC;gBACAC;gBACAC;gBACAM;gBACAC;gBACAC;YACF;cAGJ;IAEJ,qBACE,oBAACW;QAAIC,WAAW3B;qBACd,oBAACL;QAAWiC,KAAK,EAAE;sBACnB,oBAAC/B;QAAegC,SAAS,EAAE;sBAC3B,oBAACnC;QAAOiC,WAAW,CAAC,EAAE3B,UAAU,MAAM,CAAC;OACpCkB,MAAMC,OAAO,CAACF,qBAAqBA,iBAAiBG,GAAG,CAAC,CAACC,YAAcA,0BAExE,oBAACtB;QACCI,MAAMA;QACNU,aAAaA;QACbG,iBAAiBA;QAElBE,MAAMC,OAAO,CAACM,oBAAoBA,gBAAgBL,GAAG,CAAC,CAACC,YAAcA;AAI9E,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Dashboard/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAKnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAMvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAA;AAIrD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Dashboard/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAKnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAMvC,OAAO,EAAE,yBAAyB,EAAE,MAAM,WAAW,CAAA;AAIrD,eAAO,MAAM,SAAS,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAgD9C,CAAA"}
|
|
@@ -5,13 +5,18 @@ import React, { Fragment } from 'react';
|
|
|
5
5
|
import { DefaultDashboard } from './Default/index.js';
|
|
6
6
|
export { generateDashboardMetadata } from './meta.js';
|
|
7
7
|
const Link = LinkImport.default || LinkImport;
|
|
8
|
-
export const Dashboard = ({ initPageResult })=>{
|
|
9
|
-
const { permissions, req: { payload: { config }, payload, user }, visibleEntities } = initPageResult;
|
|
8
|
+
export const Dashboard = ({ initPageResult, params, searchParams })=>{
|
|
9
|
+
const { locale, permissions, req: { i18n, payload: { config }, payload, user }, visibleEntities } = initPageResult;
|
|
10
10
|
const CustomDashboardComponent = config.admin.components?.views?.Dashboard;
|
|
11
11
|
const viewComponentProps = {
|
|
12
12
|
Link,
|
|
13
|
-
|
|
13
|
+
i18n,
|
|
14
|
+
locale,
|
|
15
|
+
params,
|
|
16
|
+
payload,
|
|
14
17
|
permissions,
|
|
18
|
+
searchParams,
|
|
19
|
+
user,
|
|
15
20
|
visibleEntities
|
|
16
21
|
};
|
|
17
22
|
return /*#__PURE__*/ React.createElement(Fragment, null, /*#__PURE__*/ React.createElement(HydrateClientUser, {
|
|
@@ -21,7 +26,15 @@ export const Dashboard = ({ initPageResult })=>{
|
|
|
21
26
|
CustomComponent: typeof CustomDashboardComponent === 'function' ? CustomDashboardComponent : undefined,
|
|
22
27
|
DefaultComponent: DefaultDashboard,
|
|
23
28
|
componentProps: viewComponentProps,
|
|
24
|
-
|
|
29
|
+
serverOnlyProps: {
|
|
30
|
+
i18n,
|
|
31
|
+
locale,
|
|
32
|
+
params,
|
|
33
|
+
payload,
|
|
34
|
+
permissions,
|
|
35
|
+
searchParams,
|
|
36
|
+
user
|
|
37
|
+
}
|
|
25
38
|
}));
|
|
26
39
|
};
|
|
27
40
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Dashboard/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload/types'\n\nimport { HydrateClientUser } from '@payloadcms/ui/elements/HydrateClientUser'\nimport { RenderCustomComponent } from '@payloadcms/ui/elements/RenderCustomComponent'\nimport LinkImport from 'next/link.js'\nimport React, { Fragment } from 'react'\n\nimport type { DashboardProps } from './Default/index.js'\n\nimport { DefaultDashboard } from './Default/index.js'\n\nexport { generateDashboardMetadata } from './meta.js'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport const Dashboard: React.FC<AdminViewProps> = ({ initPageResult }) => {\n const {\n permissions,\n req: {\n payload: { config },\n payload,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const CustomDashboardComponent = config.admin.components?.views?.Dashboard\n\n const viewComponentProps:
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Dashboard/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload/types'\n\nimport { HydrateClientUser } from '@payloadcms/ui/elements/HydrateClientUser'\nimport { RenderCustomComponent } from '@payloadcms/ui/elements/RenderCustomComponent'\nimport LinkImport from 'next/link.js'\nimport React, { Fragment } from 'react'\n\nimport type { DashboardProps } from './Default/index.js'\n\nimport { DefaultDashboard } from './Default/index.js'\n\nexport { generateDashboardMetadata } from './meta.js'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\n\nexport const Dashboard: React.FC<AdminViewProps> = ({ initPageResult, params, searchParams }) => {\n const {\n locale,\n permissions,\n req: {\n i18n,\n payload: { config },\n payload,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const CustomDashboardComponent = config.admin.components?.views?.Dashboard\n\n const viewComponentProps: DashboardProps = {\n Link,\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n visibleEntities,\n }\n\n return (\n <Fragment>\n <HydrateClientUser permissions={permissions} user={user} />\n <RenderCustomComponent\n CustomComponent={\n typeof CustomDashboardComponent === 'function' ? CustomDashboardComponent : undefined\n }\n DefaultComponent={DefaultDashboard}\n componentProps={viewComponentProps}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n </Fragment>\n )\n}\n"],"names":["HydrateClientUser","RenderCustomComponent","LinkImport","React","Fragment","DefaultDashboard","generateDashboardMetadata","Link","default","Dashboard","initPageResult","params","searchParams","locale","permissions","req","i18n","payload","config","user","visibleEntities","CustomDashboardComponent","admin","components","views","viewComponentProps","CustomComponent","undefined","DefaultComponent","componentProps","serverOnlyProps"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,iBAAiB,QAAQ,4CAA2C;AAC7E,SAASC,qBAAqB,QAAQ,gDAA+C;AACrF,OAAOC,gBAAgB,eAAc;AACrC,OAAOC,SAASC,QAAQ,QAAQ,QAAO;AAIvC,SAASC,gBAAgB,QAAQ,qBAAoB;AAErD,SAASC,yBAAyB,QAAQ,YAAW;AAErD,MAAMC,OAAQL,WAAWM,OAAO,IAAIN;AAEpC,OAAO,MAAMO,YAAsC,CAAC,EAAEC,cAAc,EAAEC,MAAM,EAAEC,YAAY,EAAE;IAC1F,MAAM,EACJC,MAAM,EACNC,WAAW,EACXC,KAAK,EACHC,IAAI,EACJC,SAAS,EAAEC,MAAM,EAAE,EACnBD,OAAO,EACPE,IAAI,EACL,EACDC,eAAe,EAChB,GAAGV;IAEJ,MAAMW,2BAA2BH,OAAOI,KAAK,CAACC,UAAU,EAAEC,OAAOf;IAEjE,MAAMgB,qBAAqC;QACzClB;QACAS;QACAH;QACAF;QACAM;QACAH;QACAF;QACAO;QACAC;IACF;IAEA,qBACE,oBAAChB,8BACC,oBAACJ;QAAkBc,aAAaA;QAAaK,MAAMA;sBACnD,oBAAClB;QACCyB,iBACE,OAAOL,6BAA6B,aAAaA,2BAA2BM;QAE9EC,kBAAkBvB;QAClBwB,gBAAgBJ;QAChBK,iBAAiB;YACfd;YACAH;YACAF;YACAM;YACAH;YACAF;YACAO;QACF;;AAIR,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Document/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAUnD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAMrE,eAAO,MAAM,gBAAgB,EAAE,wBAAiE,CAAA;AAEhG,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Document/index.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAUnD,OAAO,KAAK,MAAM,OAAO,CAAA;AAEzB,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,uBAAuB,CAAA;AAMrE,eAAO,MAAM,gBAAgB,EAAE,wBAAiE,CAAA;AAEhG,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAsN7C,CAAA"}
|
|
@@ -149,7 +149,15 @@ export const Document = async ({ initPageResult, params, searchParams })=>{
|
|
|
149
149
|
CustomComponent: ViewOverride || CustomView,
|
|
150
150
|
DefaultComponent: DefaultView,
|
|
151
151
|
componentProps: viewComponentProps,
|
|
152
|
-
|
|
152
|
+
serverOnlyProps: {
|
|
153
|
+
i18n,
|
|
154
|
+
locale,
|
|
155
|
+
params,
|
|
156
|
+
payload,
|
|
157
|
+
permissions,
|
|
158
|
+
searchParams,
|
|
159
|
+
user
|
|
160
|
+
}
|
|
153
161
|
}))));
|
|
154
162
|
};
|
|
155
163
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Document/index.tsx"],"sourcesContent":["import type { EditViewComponent } from 'payload/config'\nimport type { AdminViewComponent, ServerSideEditViewProps } from 'payload/types'\nimport type { DocumentPermissions } from 'payload/types'\nimport type { AdminViewProps } from 'payload/types'\n\nimport { DocumentHeader } from '@payloadcms/ui/elements/DocumentHeader'\nimport { HydrateClientUser } from '@payloadcms/ui/elements/HydrateClientUser'\nimport { RenderCustomComponent } from '@payloadcms/ui/elements/RenderCustomComponent'\nimport { DocumentInfoProvider } from '@payloadcms/ui/providers/DocumentInfo'\nimport { EditDepthProvider } from '@payloadcms/ui/providers/EditDepth'\nimport { FormQueryParamsProvider } from '@payloadcms/ui/providers/FormQueryParams'\nimport { notFound, redirect } from 'next/navigation.js'\nimport { docAccessOperation } from 'payload/operations'\nimport React from 'react'\n\nimport type { GenerateEditViewMetadata } from './getMetaBySegment.js'\n\nimport { NotFoundView } from '../NotFound/index.js'\nimport { getMetaBySegment } from './getMetaBySegment.js'\nimport { getViewsFromConfig } from './getViewsFromConfig.js'\n\nexport const generateMetadata: GenerateEditViewMetadata = async (args) => getMetaBySegment(args)\n\nexport const Document: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n locale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: {\n config,\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n },\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const segments = Array.isArray(params?.segments) ? params.segments : []\n const collectionSlug = collectionConfig?.slug || undefined\n const globalSlug = globalConfig?.slug || undefined\n\n const isEditing = Boolean(globalSlug || (collectionSlug && !!id))\n\n let ViewOverride: EditViewComponent\n let CustomView: EditViewComponent\n let DefaultView: EditViewComponent\n let ErrorView: AdminViewComponent\n\n let docPermissions: DocumentPermissions\n let hasSavePermission: boolean\n let apiURL: string\n let action: string\n\n if (collectionConfig) {\n if (!visibleEntities?.collections?.find((visibleSlug) => visibleSlug === collectionSlug)) {\n notFound()\n }\n\n try {\n docPermissions = await docAccessOperation({\n id,\n collection: {\n config: collectionConfig,\n },\n req,\n })\n } catch (error) {\n notFound()\n }\n\n action = `${serverURL}${apiRoute}/${collectionSlug}${isEditing ? `/${id}` : ''}`\n\n hasSavePermission =\n (isEditing && permissions?.collections?.[collectionSlug]?.update?.permission) ||\n (!isEditing && permissions?.collections?.[collectionSlug]?.create?.permission)\n\n apiURL = `${serverURL}${apiRoute}/${collectionSlug}/${id}?locale=${locale.code}${\n collectionConfig.versions?.drafts ? '&draft=true' : ''\n }`\n\n const editConfig = collectionConfig?.admin?.components?.views?.Edit\n ViewOverride = typeof editConfig === 'function' ? editConfig : null\n\n if (!ViewOverride) {\n const collectionViews = getViewsFromConfig({\n collectionConfig,\n config,\n docPermissions,\n routeSegments: segments,\n })\n\n CustomView = collectionViews?.CustomView\n DefaultView = collectionViews?.DefaultView\n ErrorView = collectionViews?.ErrorView\n }\n\n if (!CustomView && !DefaultView && !ViewOverride && !ErrorView) {\n ErrorView = NotFoundView\n }\n }\n\n if (globalConfig) {\n if (!visibleEntities?.globals?.find((visibleSlug) => visibleSlug === globalSlug)) {\n notFound()\n }\n\n docPermissions = permissions?.globals?.[globalSlug]\n hasSavePermission = isEditing && docPermissions?.update?.permission\n action = `${serverURL}${apiRoute}/globals/${globalSlug}`\n\n apiURL = `${serverURL}${apiRoute}/${globalSlug}?locale=${locale.code}${\n globalConfig.versions?.drafts ? '&draft=true' : ''\n }`\n\n const editConfig = globalConfig?.admin?.components?.views?.Edit\n ViewOverride = typeof editConfig === 'function' ? editConfig : null\n\n if (!ViewOverride) {\n const globalViews = getViewsFromConfig({\n config,\n docPermissions,\n globalConfig,\n routeSegments: segments,\n })\n\n CustomView = globalViews?.CustomView\n DefaultView = globalViews?.DefaultView\n ErrorView = globalViews?.ErrorView\n\n if (!CustomView && !DefaultView && !ViewOverride && !ErrorView) {\n ErrorView = NotFoundView\n }\n }\n }\n\n /**\n * Handle case where autoSave is enabled and the document is being created\n * => create document and redirect\n */\n const shouldAutosave =\n hasSavePermission &&\n ((collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave))\n\n if (shouldAutosave && !id && collectionSlug) {\n const doc = await payload.create({\n collection: collectionSlug,\n data: {},\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale: locale.code,\n req,\n user,\n })\n\n if (doc?.id) {\n const redirectURL = `${serverURL}${adminRoute}/collections/${collectionSlug}/${doc.id}`\n redirect(redirectURL)\n } else {\n notFound()\n }\n }\n\n const viewComponentProps: ServerSideEditViewProps = {\n initPageResult,\n params,\n routeSegments: segments,\n searchParams,\n }\n\n return (\n <DocumentInfoProvider\n action={action}\n apiURL={apiURL}\n collectionSlug={collectionConfig?.slug}\n disableActions={false}\n docPermissions={docPermissions}\n globalSlug={globalConfig?.slug}\n hasSavePermission={hasSavePermission}\n id={id}\n isEditing={isEditing}\n >\n {!ViewOverride && (\n <DocumentHeader\n collectionConfig={collectionConfig}\n config={payload.config}\n globalConfig={globalConfig}\n i18n={i18n}\n permissions={permissions}\n />\n )}\n <HydrateClientUser permissions={permissions} user={user} />\n <EditDepthProvider depth={1} key={`${collectionSlug || globalSlug}-${locale.code}`}>\n <FormQueryParamsProvider\n initialParams={{\n depth: 0,\n 'fallback-locale': 'null',\n locale: locale.code,\n uploadEdits: undefined,\n }}\n >\n {ErrorView ? (\n <ErrorView initPageResult={initPageResult} searchParams={searchParams} />\n ) : (\n <RenderCustomComponent\n CustomComponent={ViewOverride || CustomView}\n DefaultComponent={DefaultView}\n componentProps={viewComponentProps}\n payload={payload}\n />\n )}\n </FormQueryParamsProvider>\n </EditDepthProvider>\n </DocumentInfoProvider>\n )\n}\n"],"names":["DocumentHeader","HydrateClientUser","RenderCustomComponent","DocumentInfoProvider","EditDepthProvider","FormQueryParamsProvider","notFound","redirect","docAccessOperation","React","NotFoundView","getMetaBySegment","getViewsFromConfig","generateMetadata","args","Document","initPageResult","params","searchParams","collectionConfig","docID","id","globalConfig","locale","permissions","req","i18n","payload","config","routes","admin","adminRoute","api","apiRoute","serverURL","user","visibleEntities","segments","Array","isArray","collectionSlug","slug","undefined","globalSlug","isEditing","Boolean","ViewOverride","CustomView","DefaultView","ErrorView","docPermissions","hasSavePermission","apiURL","action","collections","find","visibleSlug","collection","error","update","permission","create","code","versions","drafts","editConfig","components","views","Edit","collectionViews","routeSegments","globals","globalViews","shouldAutosave","autosave","doc","data","depth","draft","fallbackLocale","redirectURL","viewComponentProps","disableActions","key","initialParams","uploadEdits","CustomComponent","DefaultComponent","componentProps"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Document/index.tsx"],"sourcesContent":["import type { EditViewComponent } from 'payload/config'\nimport type { AdminViewComponent, ServerSideEditViewProps } from 'payload/types'\nimport type { DocumentPermissions } from 'payload/types'\nimport type { AdminViewProps } from 'payload/types'\n\nimport { DocumentHeader } from '@payloadcms/ui/elements/DocumentHeader'\nimport { HydrateClientUser } from '@payloadcms/ui/elements/HydrateClientUser'\nimport { RenderCustomComponent } from '@payloadcms/ui/elements/RenderCustomComponent'\nimport { DocumentInfoProvider } from '@payloadcms/ui/providers/DocumentInfo'\nimport { EditDepthProvider } from '@payloadcms/ui/providers/EditDepth'\nimport { FormQueryParamsProvider } from '@payloadcms/ui/providers/FormQueryParams'\nimport { notFound, redirect } from 'next/navigation.js'\nimport { docAccessOperation } from 'payload/operations'\nimport React from 'react'\n\nimport type { GenerateEditViewMetadata } from './getMetaBySegment.js'\n\nimport { NotFoundView } from '../NotFound/index.js'\nimport { getMetaBySegment } from './getMetaBySegment.js'\nimport { getViewsFromConfig } from './getViewsFromConfig.js'\n\nexport const generateMetadata: GenerateEditViewMetadata = async (args) => getMetaBySegment(args)\n\nexport const Document: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n locale,\n permissions,\n req,\n req: {\n i18n,\n payload,\n payload: {\n config,\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n },\n user,\n },\n visibleEntities,\n } = initPageResult\n\n const segments = Array.isArray(params?.segments) ? params.segments : []\n const collectionSlug = collectionConfig?.slug || undefined\n const globalSlug = globalConfig?.slug || undefined\n\n const isEditing = Boolean(globalSlug || (collectionSlug && !!id))\n\n let ViewOverride: EditViewComponent\n let CustomView: EditViewComponent\n let DefaultView: EditViewComponent\n let ErrorView: AdminViewComponent\n\n let docPermissions: DocumentPermissions\n let hasSavePermission: boolean\n let apiURL: string\n let action: string\n\n if (collectionConfig) {\n if (!visibleEntities?.collections?.find((visibleSlug) => visibleSlug === collectionSlug)) {\n notFound()\n }\n\n try {\n docPermissions = await docAccessOperation({\n id,\n collection: {\n config: collectionConfig,\n },\n req,\n })\n } catch (error) {\n notFound()\n }\n\n action = `${serverURL}${apiRoute}/${collectionSlug}${isEditing ? `/${id}` : ''}`\n\n hasSavePermission =\n (isEditing && permissions?.collections?.[collectionSlug]?.update?.permission) ||\n (!isEditing && permissions?.collections?.[collectionSlug]?.create?.permission)\n\n apiURL = `${serverURL}${apiRoute}/${collectionSlug}/${id}?locale=${locale.code}${\n collectionConfig.versions?.drafts ? '&draft=true' : ''\n }`\n\n const editConfig = collectionConfig?.admin?.components?.views?.Edit\n ViewOverride = typeof editConfig === 'function' ? editConfig : null\n\n if (!ViewOverride) {\n const collectionViews = getViewsFromConfig({\n collectionConfig,\n config,\n docPermissions,\n routeSegments: segments,\n })\n\n CustomView = collectionViews?.CustomView\n DefaultView = collectionViews?.DefaultView\n ErrorView = collectionViews?.ErrorView\n }\n\n if (!CustomView && !DefaultView && !ViewOverride && !ErrorView) {\n ErrorView = NotFoundView\n }\n }\n\n if (globalConfig) {\n if (!visibleEntities?.globals?.find((visibleSlug) => visibleSlug === globalSlug)) {\n notFound()\n }\n\n docPermissions = permissions?.globals?.[globalSlug]\n hasSavePermission = isEditing && docPermissions?.update?.permission\n action = `${serverURL}${apiRoute}/globals/${globalSlug}`\n\n apiURL = `${serverURL}${apiRoute}/${globalSlug}?locale=${locale.code}${\n globalConfig.versions?.drafts ? '&draft=true' : ''\n }`\n\n const editConfig = globalConfig?.admin?.components?.views?.Edit\n ViewOverride = typeof editConfig === 'function' ? editConfig : null\n\n if (!ViewOverride) {\n const globalViews = getViewsFromConfig({\n config,\n docPermissions,\n globalConfig,\n routeSegments: segments,\n })\n\n CustomView = globalViews?.CustomView\n DefaultView = globalViews?.DefaultView\n ErrorView = globalViews?.ErrorView\n\n if (!CustomView && !DefaultView && !ViewOverride && !ErrorView) {\n ErrorView = NotFoundView\n }\n }\n }\n\n /**\n * Handle case where autoSave is enabled and the document is being created\n * => create document and redirect\n */\n const shouldAutosave =\n hasSavePermission &&\n ((collectionConfig?.versions?.drafts && collectionConfig?.versions?.drafts?.autosave) ||\n (globalConfig?.versions?.drafts && globalConfig?.versions?.drafts?.autosave))\n\n if (shouldAutosave && !id && collectionSlug) {\n const doc = await payload.create({\n collection: collectionSlug,\n data: {},\n depth: 0,\n draft: true,\n fallbackLocale: null,\n locale: locale.code,\n req,\n user,\n })\n\n if (doc?.id) {\n const redirectURL = `${serverURL}${adminRoute}/collections/${collectionSlug}/${doc.id}`\n redirect(redirectURL)\n } else {\n notFound()\n }\n }\n\n const viewComponentProps: ServerSideEditViewProps = {\n initPageResult,\n params,\n routeSegments: segments,\n searchParams,\n }\n\n return (\n <DocumentInfoProvider\n action={action}\n apiURL={apiURL}\n collectionSlug={collectionConfig?.slug}\n disableActions={false}\n docPermissions={docPermissions}\n globalSlug={globalConfig?.slug}\n hasSavePermission={hasSavePermission}\n id={id}\n isEditing={isEditing}\n >\n {!ViewOverride && (\n <DocumentHeader\n collectionConfig={collectionConfig}\n config={payload.config}\n globalConfig={globalConfig}\n i18n={i18n}\n permissions={permissions}\n />\n )}\n <HydrateClientUser permissions={permissions} user={user} />\n <EditDepthProvider depth={1} key={`${collectionSlug || globalSlug}-${locale.code}`}>\n <FormQueryParamsProvider\n initialParams={{\n depth: 0,\n 'fallback-locale': 'null',\n locale: locale.code,\n uploadEdits: undefined,\n }}\n >\n {ErrorView ? (\n <ErrorView initPageResult={initPageResult} searchParams={searchParams} />\n ) : (\n <RenderCustomComponent\n CustomComponent={ViewOverride || CustomView}\n DefaultComponent={DefaultView}\n componentProps={viewComponentProps}\n serverOnlyProps={{\n i18n,\n locale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }}\n />\n )}\n </FormQueryParamsProvider>\n </EditDepthProvider>\n </DocumentInfoProvider>\n )\n}\n"],"names":["DocumentHeader","HydrateClientUser","RenderCustomComponent","DocumentInfoProvider","EditDepthProvider","FormQueryParamsProvider","notFound","redirect","docAccessOperation","React","NotFoundView","getMetaBySegment","getViewsFromConfig","generateMetadata","args","Document","initPageResult","params","searchParams","collectionConfig","docID","id","globalConfig","locale","permissions","req","i18n","payload","config","routes","admin","adminRoute","api","apiRoute","serverURL","user","visibleEntities","segments","Array","isArray","collectionSlug","slug","undefined","globalSlug","isEditing","Boolean","ViewOverride","CustomView","DefaultView","ErrorView","docPermissions","hasSavePermission","apiURL","action","collections","find","visibleSlug","collection","error","update","permission","create","code","versions","drafts","editConfig","components","views","Edit","collectionViews","routeSegments","globals","globalViews","shouldAutosave","autosave","doc","data","depth","draft","fallbackLocale","redirectURL","viewComponentProps","disableActions","key","initialParams","uploadEdits","CustomComponent","DefaultComponent","componentProps","serverOnlyProps"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/ForgotPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAKnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,OAAO,EAAE,8BAA8B,EAAE,MAAM,WAAW,CAAA;AAG1D,eAAO,MAAM,uBAAuB,oBAAoB,CAAA;AAExD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/ForgotPassword/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAA;AAKnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAIvC,OAAO,EAAE,8BAA8B,EAAE,MAAM,WAAW,CAAA;AAG1D,eAAO,MAAM,uBAAuB,oBAAoB,CAAA;AAExD,eAAO,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CA2CvD,CAAA"}
|
|
@@ -8,12 +8,12 @@ const Link = LinkImport.default || LinkImport;
|
|
|
8
8
|
export const forgotPasswordBaseClass = 'forgot-password';
|
|
9
9
|
export const ForgotPasswordView = ({ initPageResult })=>{
|
|
10
10
|
const { req: { i18n, payload: { config }, user } } = initPageResult;
|
|
11
|
-
const { routes: { admin } } = config;
|
|
11
|
+
const { admin: { routes: { account: accountRoute } }, routes: { admin } } = config;
|
|
12
12
|
if (user) {
|
|
13
13
|
return /*#__PURE__*/ React.createElement(Fragment, null, /*#__PURE__*/ React.createElement("h1", null, i18n.t('authentication:alreadyLoggedIn')), /*#__PURE__*/ React.createElement("p", null, /*#__PURE__*/ React.createElement(Translation, {
|
|
14
14
|
elements: {
|
|
15
15
|
'0': ({ children })=>/*#__PURE__*/ React.createElement(Link, {
|
|
16
|
-
href: `${admin}
|
|
16
|
+
href: `${admin}${accountRoute}`
|
|
17
17
|
}, children)
|
|
18
18
|
},
|
|
19
19
|
i18nKey: "authentication:loggedInChangePassword",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/ForgotPassword/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload/types'\n\nimport { Button } from '@payloadcms/ui/elements/Button'\nimport { Translation } from '@payloadcms/ui/elements/Translation'\nimport LinkImport from 'next/link.js'\nimport React, { Fragment } from 'react'\n\nimport { ForgotPasswordForm } from './ForgotPasswordForm/index.js'\n\nexport { generateForgotPasswordMetadata } from './meta.js'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\nexport const forgotPasswordBaseClass = 'forgot-password'\n\nexport const ForgotPasswordView: React.FC<AdminViewProps> = ({ initPageResult }) => {\n const {\n req: {\n i18n,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const {\n routes: { admin },\n } = config\n\n if (user) {\n return (\n <Fragment>\n <h1>{i18n.t('authentication:alreadyLoggedIn')}</h1>\n <p>\n <Translation\n elements={{\n '0': ({ children }) => <Link href={`${admin}
|
|
1
|
+
{"version":3,"sources":["../../../src/views/ForgotPassword/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload/types'\n\nimport { Button } from '@payloadcms/ui/elements/Button'\nimport { Translation } from '@payloadcms/ui/elements/Translation'\nimport LinkImport from 'next/link.js'\nimport React, { Fragment } from 'react'\n\nimport { ForgotPasswordForm } from './ForgotPasswordForm/index.js'\n\nexport { generateForgotPasswordMetadata } from './meta.js'\n\nconst Link = (LinkImport.default || LinkImport) as unknown as typeof LinkImport.default\nexport const forgotPasswordBaseClass = 'forgot-password'\n\nexport const ForgotPasswordView: React.FC<AdminViewProps> = ({ initPageResult }) => {\n const {\n req: {\n i18n,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const {\n admin: {\n routes: { account: accountRoute },\n },\n routes: { admin },\n } = config\n\n if (user) {\n return (\n <Fragment>\n <h1>{i18n.t('authentication:alreadyLoggedIn')}</h1>\n <p>\n <Translation\n elements={{\n '0': ({ children }) => <Link href={`${admin}${accountRoute}`}>{children}</Link>,\n }}\n i18nKey=\"authentication:loggedInChangePassword\"\n t={i18n.t}\n />\n </p>\n <br />\n <Button Link={Link} buttonStyle=\"secondary\" el=\"link\" to={admin}>\n {i18n.t('general:backToDashboard')}\n </Button>\n </Fragment>\n )\n }\n\n return (\n <Fragment>\n <ForgotPasswordForm />\n <Link href={`${admin}/login`}>{i18n.t('authentication:backToLogin')}</Link>\n </Fragment>\n )\n}\n"],"names":["Button","Translation","LinkImport","React","Fragment","ForgotPasswordForm","generateForgotPasswordMetadata","Link","default","forgotPasswordBaseClass","ForgotPasswordView","initPageResult","req","i18n","payload","config","user","admin","routes","account","accountRoute","h1","t","p","elements","children","href","i18nKey","br","buttonStyle","el","to"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAEA,SAASA,MAAM,QAAQ,iCAAgC;AACvD,SAASC,WAAW,QAAQ,sCAAqC;AACjE,OAAOC,gBAAgB,eAAc;AACrC,OAAOC,SAASC,QAAQ,QAAQ,QAAO;AAEvC,SAASC,kBAAkB,QAAQ,gCAA+B;AAElE,SAASC,8BAA8B,QAAQ,YAAW;AAE1D,MAAMC,OAAQL,WAAWM,OAAO,IAAIN;AACpC,OAAO,MAAMO,0BAA0B,kBAAiB;AAExD,OAAO,MAAMC,qBAA+C,CAAC,EAAEC,cAAc,EAAE;IAC7E,MAAM,EACJC,KAAK,EACHC,IAAI,EACJC,SAAS,EAAEC,MAAM,EAAE,EACnBC,IAAI,EACL,EACF,GAAGL;IAEJ,MAAM,EACJM,OAAO,EACLC,QAAQ,EAAEC,SAASC,YAAY,EAAE,EAClC,EACDF,QAAQ,EAAED,KAAK,EAAE,EAClB,GAAGF;IAEJ,IAAIC,MAAM;QACR,qBACE,oBAACZ,8BACC,oBAACiB,YAAIR,KAAKS,CAAC,CAAC,kDACZ,oBAACC,yBACC,oBAACtB;YACCuB,UAAU;gBACR,KAAK,CAAC,EAAEC,QAAQ,EAAE,iBAAK,oBAAClB;wBAAKmB,MAAM,CAAC,EAAET,MAAM,EAAEG,aAAa,CAAC;uBAAGK;YACjE;YACAE,SAAQ;YACRL,GAAGT,KAAKS,CAAC;2BAGb,oBAACM,2BACD,oBAAC5B;YAAOO,MAAMA;YAAMsB,aAAY;YAAYC,IAAG;YAAOC,IAAId;WACvDJ,KAAKS,CAAC,CAAC;IAIhB;IAEA,qBACE,oBAAClB,8BACC,oBAACC,yCACD,oBAACE;QAAKmB,MAAM,CAAC,EAAET,MAAM,MAAM,CAAC;OAAGJ,KAAKS,CAAC,CAAC;AAG5C,EAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/List/index.tsx"],"names":[],"mappings":"AASA,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,eAAe,CAAA;AAEnD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAOvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,eAAO,MAAM,QAAQ,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAoJ7C,CAAA"}
|
package/dist/views/List/index.js
CHANGED
|
@@ -10,8 +10,8 @@ import React, { Fragment } from 'react';
|
|
|
10
10
|
import { UnauthorizedView } from '../Unauthorized/index.js';
|
|
11
11
|
import { DefaultListView } from './Default/index.js';
|
|
12
12
|
export { generateListMetadata } from './meta.js';
|
|
13
|
-
export const ListView = async ({ initPageResult, searchParams })=>{
|
|
14
|
-
const { collectionConfig, permissions, req: { locale, payload, payload: { config }, query, user }, visibleEntities } = initPageResult;
|
|
13
|
+
export const ListView = async ({ initPageResult, params, searchParams })=>{
|
|
14
|
+
const { collectionConfig, locale: fullLocale, permissions, req: { i18n, locale, payload, payload: { config }, query, user }, visibleEntities } = initPageResult;
|
|
15
15
|
const collectionSlug = collectionConfig?.slug;
|
|
16
16
|
if (!permissions?.collections?.[collectionSlug]?.read?.permission) {
|
|
17
17
|
return /*#__PURE__*/ React.createElement(UnauthorizedView, {
|
|
@@ -99,7 +99,15 @@ export const ListView = async ({ initPageResult, searchParams })=>{
|
|
|
99
99
|
CustomComponent: CustomListView,
|
|
100
100
|
DefaultComponent: DefaultListView,
|
|
101
101
|
componentProps: viewComponentProps,
|
|
102
|
-
|
|
102
|
+
serverOnlyProps: {
|
|
103
|
+
i18n,
|
|
104
|
+
locale: fullLocale,
|
|
105
|
+
params,
|
|
106
|
+
payload,
|
|
107
|
+
permissions,
|
|
108
|
+
searchParams,
|
|
109
|
+
user
|
|
110
|
+
}
|
|
103
111
|
})))));
|
|
104
112
|
}
|
|
105
113
|
return notFound();
|