@payloadcms/next 3.0.0-beta.30 → 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 +5 -6
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/payload/payload-favicon-dark.png +0 -0
- package/dist/prod/payload/payload-favicon-light.png +0 -0
- package/dist/prod/styles.css +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.d.ts.map +1 -1
- package/dist/utilities/buildFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/getNextRequestI18n.d.ts +1 -1
- package/dist/utilities/getNextRequestI18n.js +1 -1
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/initPage/handleAdminPage.js +1 -1
- package/dist/utilities/initPage/handleAdminPage.js.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.d.ts +2 -2
- package/dist/utilities/initPage/handleAuthRedirect.d.ts.map +1 -1
- package/dist/utilities/initPage/handleAuthRedirect.js +5 -4
- package/dist/utilities/initPage/handleAuthRedirect.js.map +1 -1
- package/dist/utilities/initPage/index.d.ts.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/utilities/meta.d.ts.map +1 -1
- package/dist/utilities/meta.js +24 -11
- package/dist/utilities/meta.js.map +1 -1
- package/dist/views/API/RenderJSON/index.js +4 -1
- package/dist/views/API/RenderJSON/index.js.map +1 -1
- package/dist/views/API/index.client.js +6 -6
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/API/meta.d.ts.map +1 -1
- package/dist/views/API/meta.js +1 -3
- package/dist/views/API/meta.js.map +1 -1
- package/dist/views/Account/index.d.ts.map +1 -1
- package/dist/views/Account/index.js +10 -1
- package/dist/views/Account/index.js.map +1 -1
- package/dist/views/Account/meta.d.ts.map +1 -1
- package/dist/views/Account/meta.js +1 -3
- package/dist/views/Account/meta.js.map +1 -1
- package/dist/views/CreateFirstUser/meta.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/meta.js +1 -3
- package/dist/views/CreateFirstUser/meta.js.map +1 -1
- package/dist/views/Dashboard/Default/index.d.ts +3 -3
- package/dist/views/Dashboard/Default/index.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/index.js +30 -7
- package/dist/views/Dashboard/Default/index.js.map +1 -1
- package/dist/views/Dashboard/index.d.ts.map +1 -1
- package/dist/views/Dashboard/index.js +18 -4
- package/dist/views/Dashboard/index.js.map +1 -1
- package/dist/views/Dashboard/meta.d.ts.map +1 -1
- package/dist/views/Dashboard/meta.js +1 -3
- package/dist/views/Dashboard/meta.js.map +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +10 -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/ForgotPassword/meta.d.ts.map +1 -1
- package/dist/views/ForgotPassword/meta.js +1 -3
- package/dist/views/ForgotPassword/meta.js.map +1 -1
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +12 -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/Login/meta.d.ts.map +1 -1
- package/dist/views/Login/meta.js +1 -3
- package/dist/views/Login/meta.js.map +1 -1
- package/dist/views/Logout/meta.d.ts.map +1 -1
- package/dist/views/Logout/meta.js +1 -3
- package/dist/views/Logout/meta.js.map +1 -1
- package/dist/views/NotFound/index.d.ts +1 -1
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +8 -2
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/NotFound/meta.d.ts.map +1 -1
- package/dist/views/NotFound/meta.js +1 -3
- package/dist/views/NotFound/meta.js.map +1 -1
- package/dist/views/ResetPassword/index.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/ResetPassword/meta.d.ts.map +1 -1
- package/dist/views/ResetPassword/meta.js +1 -3
- package/dist/views/ResetPassword/meta.js.map +1 -1
- package/dist/views/Root/getViewFromConfig.d.ts.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 +12 -6
- 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/Unauthorized/meta.d.ts.map +1 -1
- package/dist/views/Unauthorized/meta.js +1 -3
- package/dist/views/Unauthorized/meta.js.map +1 -1
- package/dist/views/Verify/index.d.ts.map +1 -1
- package/dist/views/Verify/index.js +10 -4
- package/dist/views/Verify/index.js.map +1 -1
- package/dist/views/Verify/meta.d.ts.map +1 -1
- package/dist/views/Verify/meta.js +1 -3
- package/dist/views/Verify/meta.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts +2 -2
- package/dist/views/Version/RenderFieldsToDiff/fields/types.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/types.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/types.d.ts +2 -2
- package/dist/views/Version/RenderFieldsToDiff/types.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/types.js.map +1 -1
- package/package.json +7 -7
- /package/dist/prod/payload/{favicon.svg → payload-favicon.svg} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAI3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,IAAI,CAAA;
|
|
1
|
+
{"version":3,"file":"traverseFields.d.ts","sourceRoot":"","sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAI3D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAA;AAEhD,KAAK,IAAI,GAAG;IACV,MAAM,EAAE,eAAe,CAAA;IACvB,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;IACpB,SAAS,EAAE,cAAc,CAAA;IACzB,UAAU,EAAE,MAAM,CAAA;IAClB,kBAAkB,EAAE,MAAM,EAAE,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,cAAc,yEAOxB,IAAI,SAkFN,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Field, SanitizedConfig } from 'payload/types'\n\nimport { tabHasName } from 'payload/types'\n\nimport type { FieldSchemaMap } from './types.js'\n\ntype Args = {\n config: SanitizedConfig\n fields: Field[]\n i18n: I18n
|
|
1
|
+
{"version":3,"sources":["../../../src/utilities/buildFieldSchemaMap/traverseFields.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Field, SanitizedConfig } from 'payload/types'\n\nimport { tabHasName } from 'payload/types'\n\nimport type { FieldSchemaMap } from './types.js'\n\ntype Args = {\n config: SanitizedConfig\n fields: Field[]\n i18n: I18n<any, any>\n schemaMap: FieldSchemaMap\n schemaPath: string\n validRelationships: string[]\n}\n\nexport const traverseFields = ({\n config,\n fields,\n i18n,\n schemaMap,\n schemaPath,\n validRelationships,\n}: Args) => {\n fields.map((field) => {\n switch (field.type) {\n case 'group':\n case 'array':\n schemaMap.set(`${schemaPath}.${field.name}`, field.fields)\n\n traverseFields({\n config,\n fields: field.fields,\n i18n,\n schemaMap,\n schemaPath: `${schemaPath}.${field.name}`,\n validRelationships,\n })\n break\n\n case 'collapsible':\n case 'row':\n traverseFields({\n config,\n fields: field.fields,\n i18n,\n schemaMap,\n schemaPath,\n validRelationships,\n })\n break\n\n case 'blocks':\n field.blocks.map((block) => {\n const blockSchemaPath = `${schemaPath}.${field.name}.${block.slug}`\n\n schemaMap.set(blockSchemaPath, block.fields)\n\n traverseFields({\n config,\n fields: block.fields,\n i18n,\n schemaMap,\n schemaPath: blockSchemaPath,\n validRelationships,\n })\n })\n break\n\n case 'richText':\n if (typeof field.editor === 'function') {\n throw new Error('Attempted to access unsanitized rich text editor.')\n }\n\n if (typeof field.editor.generateSchemaMap === 'function') {\n field.editor.generateSchemaMap({\n config,\n i18n,\n schemaMap,\n schemaPath: `${schemaPath}.${field.name}`,\n })\n }\n\n break\n\n case 'tabs':\n field.tabs.map((tab) => {\n const tabSchemaPath = tabHasName(tab) ? `${schemaPath}.${tab.name}` : schemaPath\n\n if (tabHasName(tab)) {\n schemaMap.set(tabSchemaPath, tab.fields)\n }\n\n traverseFields({\n config,\n fields: tab.fields,\n i18n,\n schemaMap,\n schemaPath: tabSchemaPath,\n validRelationships,\n })\n })\n break\n }\n })\n}\n"],"names":["tabHasName","traverseFields","config","fields","i18n","schemaMap","schemaPath","validRelationships","map","field","type","set","name","blocks","block","blockSchemaPath","slug","editor","Error","generateSchemaMap","tabs","tab","tabSchemaPath"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,UAAU,QAAQ,gBAAe;AAa1C,OAAO,MAAMC,iBAAiB,CAAC,EAC7BC,MAAM,EACNC,MAAM,EACNC,IAAI,EACJC,SAAS,EACTC,UAAU,EACVC,kBAAkB,EACb;IACLJ,OAAOK,GAAG,CAAC,CAACC;QACV,OAAQA,MAAMC,IAAI;YAChB,KAAK;YACL,KAAK;gBACHL,UAAUM,GAAG,CAAC,CAAC,EAAEL,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC,EAAEH,MAAMN,MAAM;gBAEzDF,eAAe;oBACbC;oBACAC,QAAQM,MAAMN,MAAM;oBACpBC;oBACAC;oBACAC,YAAY,CAAC,EAAEA,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC;oBACzCL;gBACF;gBACA;YAEF,KAAK;YACL,KAAK;gBACHN,eAAe;oBACbC;oBACAC,QAAQM,MAAMN,MAAM;oBACpBC;oBACAC;oBACAC;oBACAC;gBACF;gBACA;YAEF,KAAK;gBACHE,MAAMI,MAAM,CAACL,GAAG,CAAC,CAACM;oBAChB,MAAMC,kBAAkB,CAAC,EAAET,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC,EAAEE,MAAME,IAAI,CAAC,CAAC;oBAEnEX,UAAUM,GAAG,CAACI,iBAAiBD,MAAMX,MAAM;oBAE3CF,eAAe;wBACbC;wBACAC,QAAQW,MAAMX,MAAM;wBACpBC;wBACAC;wBACAC,YAAYS;wBACZR;oBACF;gBACF;gBACA;YAEF,KAAK;gBACH,IAAI,OAAOE,MAAMQ,MAAM,KAAK,YAAY;oBACtC,MAAM,IAAIC,MAAM;gBAClB;gBAEA,IAAI,OAAOT,MAAMQ,MAAM,CAACE,iBAAiB,KAAK,YAAY;oBACxDV,MAAMQ,MAAM,CAACE,iBAAiB,CAAC;wBAC7BjB;wBACAE;wBACAC;wBACAC,YAAY,CAAC,EAAEA,WAAW,CAAC,EAAEG,MAAMG,IAAI,CAAC,CAAC;oBAC3C;gBACF;gBAEA;YAEF,KAAK;gBACHH,MAAMW,IAAI,CAACZ,GAAG,CAAC,CAACa;oBACd,MAAMC,gBAAgBtB,WAAWqB,OAAO,CAAC,EAAEf,WAAW,CAAC,EAAEe,IAAIT,IAAI,CAAC,CAAC,GAAGN;oBAEtE,IAAIN,WAAWqB,MAAM;wBACnBhB,UAAUM,GAAG,CAACW,eAAeD,IAAIlB,MAAM;oBACzC;oBAEAF,eAAe;wBACbC;wBACAC,QAAQkB,IAAIlB,MAAM;wBAClBC;wBACAC;wBACAC,YAAYgB;wBACZf;oBACF;gBACF;gBACA;QACJ;IACF;AACF,EAAC"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import type { I18n } from '@payloadcms/translations';
|
|
2
2
|
import type { SanitizedConfig } from 'payload/types';
|
|
3
3
|
/**
|
|
4
|
-
* In the context of
|
|
4
|
+
* In the context of Next.js, this function initializes the i18n object for the current request.
|
|
5
5
|
*
|
|
6
6
|
* It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.
|
|
7
7
|
*/
|
|
@@ -2,7 +2,7 @@ import { initI18n } from '@payloadcms/translations';
|
|
|
2
2
|
import { cookies, headers } from 'next/headers.js';
|
|
3
3
|
import { getRequestLanguage } from './getRequestLanguage.js';
|
|
4
4
|
/**
|
|
5
|
-
* In the context of
|
|
5
|
+
* In the context of Next.js, this function initializes the i18n object for the current request.
|
|
6
6
|
*
|
|
7
7
|
* It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.
|
|
8
8
|
*/ export const getNextRequestI18n = async ({ config })=>initI18n({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/getNextRequestI18n.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { SanitizedConfig } from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { cookies, headers } from 'next/headers.js'\n\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\n/**\n * In the context of
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/getNextRequestI18n.ts"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { SanitizedConfig } from 'payload/types'\n\nimport { initI18n } from '@payloadcms/translations'\nimport { cookies, headers } from 'next/headers.js'\n\nimport { getRequestLanguage } from './getRequestLanguage.js'\n\n/**\n * In the context of Next.js, this function initializes the i18n object for the current request.\n *\n * It must be called on the server side, and within the lifecycle of a request since it relies on the request headers and cookies.\n */\nexport const getNextRequestI18n = async ({ config }: { config: SanitizedConfig }): Promise<I18n> =>\n initI18n({\n config: config.i18n,\n context: 'client',\n language: getRequestLanguage({ config, cookies: cookies(), headers: headers() }),\n })\n"],"names":["initI18n","cookies","headers","getRequestLanguage","getNextRequestI18n","config","i18n","context","language"],"rangeMappings":";;;;;;;;;;;;;;;","mappings":"AAGA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,OAAO,EAAEC,OAAO,QAAQ,kBAAiB;AAElD,SAASC,kBAAkB,QAAQ,0BAAyB;AAE5D;;;;CAIC,GACD,OAAO,MAAMC,qBAAqB,OAAO,EAAEC,MAAM,EAA+B,GAC9EL,SAAS;QACPK,QAAQA,OAAOC,IAAI;QACnBC,SAAS;QACTC,UAAUL,mBAAmB;YAAEE;YAAQJ,SAASA;YAAWC,SAASA;QAAU;IAChF,GAAE"}
|
|
@@ -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,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utilities/initPage/index.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAA2C,MAAM,eAAe,CAAA;AAS5F,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,YAAY,CAAA;AAOtC,eAAO,MAAM,QAAQ,iFAKlB,IAAI,KAAG,QAAQ,cAAc,CAmF/B,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/utilities/initPage/index.ts"],"sourcesContent":["import 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 = 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":"meta.d.ts","sourceRoot":"","sources":["../../src/utilities/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../src/utilities/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AAEpC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,eAAe,CAAA;AAIpD,eAAO,MAAM,IAAI,SAAgB;IAC/B,MAAM,EAAE,eAAe,CAAA;IACvB,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;CACd,KAAG,QAAQ,QAAQ,CAuDnB,CAAA"}
|
package/dist/utilities/meta.js
CHANGED
|
@@ -1,18 +1,31 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { payloadFaviconDark, payloadFaviconLight, payloadOgImage } from '@payloadcms/ui/assets';
|
|
2
2
|
export const meta = async (args)=>{
|
|
3
3
|
const { config, description = '', keywords = 'CMS, Admin, Dashboard', title } = args;
|
|
4
4
|
const titleSuffix = config.admin.meta?.titleSuffix ?? '- Payload';
|
|
5
|
-
const favicon = config?.admin?.meta?.favicon ?? payloadFavicon?.src;
|
|
6
5
|
const ogImage = config.admin?.meta?.ogImage ?? payloadOgImage?.src;
|
|
7
|
-
|
|
6
|
+
const customIcons = config.admin.meta.icons;
|
|
7
|
+
let icons = customIcons ?? [];
|
|
8
|
+
const payloadIcons = [
|
|
9
|
+
{
|
|
10
|
+
type: 'image/png',
|
|
11
|
+
rel: 'icon',
|
|
12
|
+
sizes: '32x32',
|
|
13
|
+
url: payloadFaviconDark?.src
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
type: 'image/png',
|
|
17
|
+
media: '(prefers-color-scheme: dark)',
|
|
18
|
+
rel: 'icon',
|
|
19
|
+
sizes: '32x32',
|
|
20
|
+
url: payloadFaviconLight?.src
|
|
21
|
+
}
|
|
22
|
+
];
|
|
23
|
+
if (customIcons && typeof customIcons === 'object' && Array.isArray(customIcons)) {
|
|
24
|
+
icons = payloadIcons.concat(customIcons);
|
|
25
|
+
}
|
|
26
|
+
return Promise.resolve({
|
|
8
27
|
description,
|
|
9
|
-
icons
|
|
10
|
-
{
|
|
11
|
-
type: 'image/svg',
|
|
12
|
-
rel: 'icon',
|
|
13
|
-
url: favicon
|
|
14
|
-
}
|
|
15
|
-
],
|
|
28
|
+
icons,
|
|
16
29
|
keywords,
|
|
17
30
|
metadataBase: new URL(config?.serverURL || process.env.PAYLOAD_PUBLIC_SERVER_URL || `http://localhost:${process.env.PORT || 3000}`),
|
|
18
31
|
openGraph: {
|
|
@@ -29,7 +42,7 @@ export const meta = async (args)=>{
|
|
|
29
42
|
title: `${title} ${titleSuffix}`
|
|
30
43
|
},
|
|
31
44
|
title: `${title} ${titleSuffix}`
|
|
32
|
-
};
|
|
45
|
+
});
|
|
33
46
|
};
|
|
34
47
|
|
|
35
48
|
//# sourceMappingURL=meta.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/utilities/meta.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedConfig } from 'payload/types'\n\nimport {
|
|
1
|
+
{"version":3,"sources":["../../src/utilities/meta.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { Icon } from 'next/dist/lib/metadata/types/metadata-types.js'\nimport type { SanitizedConfig } from 'payload/types'\n\nimport { payloadFaviconDark, payloadFaviconLight, payloadOgImage } from '@payloadcms/ui/assets'\n\nexport const meta = async (args: {\n config: SanitizedConfig\n description?: string\n keywords?: string\n title: string\n}): Promise<Metadata> => {\n const { config, description = '', keywords = 'CMS, Admin, Dashboard', title } = args\n\n const titleSuffix = config.admin.meta?.titleSuffix ?? '- Payload'\n\n const ogImage = config.admin?.meta?.ogImage ?? payloadOgImage?.src\n\n const customIcons = config.admin.meta.icons as Metadata['icons']\n\n let icons = customIcons ?? []\n\n const payloadIcons: Icon[] = [\n {\n type: 'image/png',\n rel: 'icon',\n sizes: '32x32',\n url: payloadFaviconDark?.src,\n },\n {\n type: 'image/png',\n media: '(prefers-color-scheme: dark)',\n rel: 'icon',\n sizes: '32x32',\n url: payloadFaviconLight?.src,\n },\n ]\n\n if (customIcons && typeof customIcons === 'object' && Array.isArray(customIcons)) {\n icons = payloadIcons.concat(customIcons)\n }\n\n return Promise.resolve({\n description,\n icons,\n keywords,\n metadataBase: new URL(\n config?.serverURL ||\n process.env.PAYLOAD_PUBLIC_SERVER_URL ||\n `http://localhost:${process.env.PORT || 3000}`,\n ),\n openGraph: {\n type: 'website',\n description,\n images: [\n {\n alt: `${title} ${titleSuffix}`,\n height: 630,\n url: ogImage,\n width: 1200,\n },\n ],\n title: `${title} ${titleSuffix}`,\n },\n title: `${title} ${titleSuffix}`,\n })\n}\n"],"names":["payloadFaviconDark","payloadFaviconLight","payloadOgImage","meta","args","config","description","keywords","title","titleSuffix","admin","ogImage","src","customIcons","icons","payloadIcons","type","rel","sizes","url","media","Array","isArray","concat","Promise","resolve","metadataBase","URL","serverURL","process","env","PAYLOAD_PUBLIC_SERVER_URL","PORT","openGraph","images","alt","height","width"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"AAIA,SAASA,kBAAkB,EAAEC,mBAAmB,EAAEC,cAAc,QAAQ,wBAAuB;AAE/F,OAAO,MAAMC,OAAO,OAAOC;IAMzB,MAAM,EAAEC,MAAM,EAAEC,cAAc,EAAE,EAAEC,WAAW,uBAAuB,EAAEC,KAAK,EAAE,GAAGJ;IAEhF,MAAMK,cAAcJ,OAAOK,KAAK,CAACP,IAAI,EAAEM,eAAe;IAEtD,MAAME,UAAUN,OAAOK,KAAK,EAAEP,MAAMQ,WAAWT,gBAAgBU;IAE/D,MAAMC,cAAcR,OAAOK,KAAK,CAACP,IAAI,CAACW,KAAK;IAE3C,IAAIA,QAAQD,eAAe,EAAE;IAE7B,MAAME,eAAuB;QAC3B;YACEC,MAAM;YACNC,KAAK;YACLC,OAAO;YACPC,KAAKnB,oBAAoBY;QAC3B;QACA;YACEI,MAAM;YACNI,OAAO;YACPH,KAAK;YACLC,OAAO;YACPC,KAAKlB,qBAAqBW;QAC5B;KACD;IAED,IAAIC,eAAe,OAAOA,gBAAgB,YAAYQ,MAAMC,OAAO,CAACT,cAAc;QAChFC,QAAQC,aAAaQ,MAAM,CAACV;IAC9B;IAEA,OAAOW,QAAQC,OAAO,CAAC;QACrBnB;QACAQ;QACAP;QACAmB,cAAc,IAAIC,IAChBtB,QAAQuB,aACNC,QAAQC,GAAG,CAACC,yBAAyB,IACrC,CAAC,iBAAiB,EAAEF,QAAQC,GAAG,CAACE,IAAI,IAAI,KAAK,CAAC;QAElDC,WAAW;YACTjB,MAAM;YACNV;YACA4B,QAAQ;gBACN;oBACEC,KAAK,CAAC,EAAE3B,MAAM,CAAC,EAAEC,YAAY,CAAC;oBAC9B2B,QAAQ;oBACRjB,KAAKR;oBACL0B,OAAO;gBACT;aACD;YACD7B,OAAO,CAAC,EAAEA,MAAM,CAAC,EAAEC,YAAY,CAAC;QAClC;QACAD,OAAO,CAAC,EAAEA,MAAM,CAAC,EAAEC,YAAY,CAAC;IAClC;AACF,EAAC"}
|
|
@@ -20,7 +20,10 @@ export const RenderJSON = ({ isEmpty = false, object, objectKey, parentType = 'o
|
|
|
20
20
|
const objectKeys = object ? Object.keys(object) : [];
|
|
21
21
|
const objectLength = objectKeys.length;
|
|
22
22
|
const [isOpen, setIsOpen] = React.useState(true);
|
|
23
|
-
|
|
23
|
+
const isNestedAndEmpty = isEmpty && (parentType === 'object' || parentType === 'array');
|
|
24
|
+
return /*#__PURE__*/ React.createElement("li", {
|
|
25
|
+
className: isNestedAndEmpty ? `${baseClass}__row-line--nested` : ''
|
|
26
|
+
}, /*#__PURE__*/ React.createElement("button", {
|
|
24
27
|
"aria-label": "toggle",
|
|
25
28
|
className: `${baseClass}__list-toggle ${isEmpty ? `${baseClass}__list-toggle--empty` : ''}`,
|
|
26
29
|
onClick: ()=>setIsOpen(!isOpen),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/views/API/RenderJSON/index.tsx"],"sourcesContent":["'use client'\nimport { Chevron } from '@payloadcms/ui/icons/Chevron'\nimport * as React from 'react'\n\nimport './index.scss'\n\nconst chars = {\n leftCurlyBracket: '\\u007B',\n leftSquareBracket: '\\u005B',\n rightCurlyBracket: '\\u007D',\n rightSquareBracket: '\\u005D',\n}\n\nconst baseClass = 'query-inspector'\n\nconst Bracket = ({\n type,\n comma = false,\n position,\n}: {\n comma?: boolean\n position: 'end' | 'start'\n type: 'array' | 'object'\n}) => {\n const rightBracket = type === 'object' ? chars.rightCurlyBracket : chars.rightSquareBracket\n const leftBracket = type === 'object' ? chars.leftCurlyBracket : chars.leftSquareBracket\n const bracketToRender = position === 'end' ? rightBracket : leftBracket\n\n return (\n <span className={`${baseClass}__bracket ${baseClass}__bracket--position-${position}`}>\n {bracketToRender}\n {position === 'end' && comma ? ',' : null}\n </span>\n )\n}\n\ntype Args = {\n isEmpty?: boolean\n object: Record<string, any> | any[]\n objectKey?: string\n parentType?: 'array' | 'object'\n trailingComma?: boolean\n}\n\nexport const RenderJSON = ({\n isEmpty = false,\n object,\n objectKey,\n parentType = 'object',\n trailingComma = false,\n}: Args) => {\n const objectKeys = object ? Object.keys(object) : []\n const objectLength = objectKeys.length\n const [isOpen, setIsOpen] = React.useState<boolean>(true)\n\n return (\n <li>\n <button\n aria-label=\"toggle\"\n className={`${baseClass}__list-toggle ${isEmpty ? `${baseClass}__list-toggle--empty` : ''}`}\n onClick={() => setIsOpen(!isOpen)}\n type=\"button\"\n >\n {isEmpty ? null : (\n <Chevron\n className={`${baseClass}__toggle-row-icon ${baseClass}__toggle-row-icon--${\n isOpen ? 'open' : 'closed'\n }`}\n />\n )}\n <span>\n {objectKey && `\"${objectKey}\": `}\n <Bracket position=\"start\" type={parentType} />\n {isEmpty ? <Bracket comma={trailingComma} position=\"end\" type={parentType} /> : null}\n </span>\n </button>\n\n <ul className={`${baseClass}__json-children`}>\n {isOpen &&\n objectKeys.map((key, keyIndex) => {\n let value = object[key]\n let type = 'string'\n const isLastKey = keyIndex === objectLength - 1\n\n if (value === null) {\n type = 'null'\n } else if (value instanceof Date) {\n type = 'date'\n value = value.toISOString()\n } else if (Array.isArray(value)) {\n type = 'array'\n } else if (typeof value === 'object') {\n type = 'object'\n } else if (typeof value === 'number') {\n type = 'number'\n } else if (typeof value === 'boolean') {\n type = 'boolean'\n } else {\n type = 'string'\n }\n\n if (type === 'object' || type === 'array') {\n return (\n <RenderJSON\n isEmpty={value.length === 0 || Object.keys(value).length === 0}\n key={`${key}-${keyIndex}`}\n object={value}\n objectKey={parentType === 'object' ? key : undefined}\n parentType={type}\n trailingComma={!isLastKey}\n />\n )\n }\n\n if (\n type === 'date' ||\n type === 'string' ||\n type === 'null' ||\n type === 'number' ||\n type === 'boolean'\n ) {\n const parentHasKey = Boolean(parentType === 'object' && key)\n\n const rowClasses = [\n `${baseClass}__row-line`,\n `${baseClass}__value-type--${type}`,\n `${baseClass}__row-line--${objectKey ? 'nested' : 'top'}`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <li className={rowClasses} key={`${key}-${keyIndex}`}>\n {parentHasKey ? <span>{`\"${key}\": `}</span> : null}\n\n <span className={`${baseClass}__value`}>{JSON.stringify(value)}</span>\n {isLastKey ? '' : ','}\n </li>\n )\n }\n })}\n </ul>\n\n {!isEmpty && (\n <span>\n <Bracket comma={trailingComma} position=\"end\" type={parentType} />\n </span>\n )}\n </li>\n )\n}\n"],"names":["Chevron","React","chars","leftCurlyBracket","leftSquareBracket","rightCurlyBracket","rightSquareBracket","baseClass","Bracket","type","comma","position","rightBracket","leftBracket","bracketToRender","span","className","RenderJSON","isEmpty","object","objectKey","parentType","trailingComma","objectKeys","Object","keys","objectLength","length","isOpen","setIsOpen","useState","li","button","aria-label","onClick","ul","map","key","keyIndex","value","isLastKey","Date","toISOString","Array","isArray","undefined","parentHasKey","Boolean","rowClasses","filter","join","JSON","stringify"],"rangeMappings":"
|
|
1
|
+
{"version":3,"sources":["../../../../src/views/API/RenderJSON/index.tsx"],"sourcesContent":["'use client'\nimport { Chevron } from '@payloadcms/ui/icons/Chevron'\nimport * as React from 'react'\n\nimport './index.scss'\n\nconst chars = {\n leftCurlyBracket: '\\u007B',\n leftSquareBracket: '\\u005B',\n rightCurlyBracket: '\\u007D',\n rightSquareBracket: '\\u005D',\n}\n\nconst baseClass = 'query-inspector'\n\nconst Bracket = ({\n type,\n comma = false,\n position,\n}: {\n comma?: boolean\n position: 'end' | 'start'\n type: 'array' | 'object'\n}) => {\n const rightBracket = type === 'object' ? chars.rightCurlyBracket : chars.rightSquareBracket\n const leftBracket = type === 'object' ? chars.leftCurlyBracket : chars.leftSquareBracket\n const bracketToRender = position === 'end' ? rightBracket : leftBracket\n\n return (\n <span className={`${baseClass}__bracket ${baseClass}__bracket--position-${position}`}>\n {bracketToRender}\n {position === 'end' && comma ? ',' : null}\n </span>\n )\n}\n\ntype Args = {\n isEmpty?: boolean\n object: Record<string, any> | any[]\n objectKey?: string\n parentType?: 'array' | 'object'\n trailingComma?: boolean\n}\n\nexport const RenderJSON = ({\n isEmpty = false,\n object,\n objectKey,\n parentType = 'object',\n trailingComma = false,\n}: Args) => {\n const objectKeys = object ? Object.keys(object) : []\n const objectLength = objectKeys.length\n const [isOpen, setIsOpen] = React.useState<boolean>(true)\n const isNestedAndEmpty = isEmpty && (parentType === 'object' || parentType === 'array')\n return (\n <li className={isNestedAndEmpty ? `${baseClass}__row-line--nested` : ''}>\n <button\n aria-label=\"toggle\"\n className={`${baseClass}__list-toggle ${isEmpty ? `${baseClass}__list-toggle--empty` : ''}`}\n onClick={() => setIsOpen(!isOpen)}\n type=\"button\"\n >\n {isEmpty ? null : (\n <Chevron\n className={`${baseClass}__toggle-row-icon ${baseClass}__toggle-row-icon--${\n isOpen ? 'open' : 'closed'\n }`}\n />\n )}\n <span>\n {objectKey && `\"${objectKey}\": `}\n <Bracket position=\"start\" type={parentType} />\n {isEmpty ? <Bracket comma={trailingComma} position=\"end\" type={parentType} /> : null}\n </span>\n </button>\n\n <ul className={`${baseClass}__json-children`}>\n {isOpen &&\n objectKeys.map((key, keyIndex) => {\n let value = object[key]\n let type = 'string'\n const isLastKey = keyIndex === objectLength - 1\n\n if (value === null) {\n type = 'null'\n } else if (value instanceof Date) {\n type = 'date'\n value = value.toISOString()\n } else if (Array.isArray(value)) {\n type = 'array'\n } else if (typeof value === 'object') {\n type = 'object'\n } else if (typeof value === 'number') {\n type = 'number'\n } else if (typeof value === 'boolean') {\n type = 'boolean'\n } else {\n type = 'string'\n }\n\n if (type === 'object' || type === 'array') {\n return (\n <RenderJSON\n isEmpty={value.length === 0 || Object.keys(value).length === 0}\n key={`${key}-${keyIndex}`}\n object={value}\n objectKey={parentType === 'object' ? key : undefined}\n parentType={type}\n trailingComma={!isLastKey}\n />\n )\n }\n\n if (\n type === 'date' ||\n type === 'string' ||\n type === 'null' ||\n type === 'number' ||\n type === 'boolean'\n ) {\n const parentHasKey = Boolean(parentType === 'object' && key)\n\n const rowClasses = [\n `${baseClass}__row-line`,\n `${baseClass}__value-type--${type}`,\n `${baseClass}__row-line--${objectKey ? 'nested' : 'top'}`,\n ]\n .filter(Boolean)\n .join(' ')\n\n return (\n <li className={rowClasses} key={`${key}-${keyIndex}`}>\n {parentHasKey ? <span>{`\"${key}\": `}</span> : null}\n\n <span className={`${baseClass}__value`}>{JSON.stringify(value)}</span>\n {isLastKey ? '' : ','}\n </li>\n )\n }\n })}\n </ul>\n\n {!isEmpty && (\n <span>\n <Bracket comma={trailingComma} position=\"end\" type={parentType} />\n </span>\n )}\n </li>\n )\n}\n"],"names":["Chevron","React","chars","leftCurlyBracket","leftSquareBracket","rightCurlyBracket","rightSquareBracket","baseClass","Bracket","type","comma","position","rightBracket","leftBracket","bracketToRender","span","className","RenderJSON","isEmpty","object","objectKey","parentType","trailingComma","objectKeys","Object","keys","objectLength","length","isOpen","setIsOpen","useState","isNestedAndEmpty","li","button","aria-label","onClick","ul","map","key","keyIndex","value","isLastKey","Date","toISOString","Array","isArray","undefined","parentHasKey","Boolean","rowClasses","filter","join","JSON","stringify"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -22,7 +22,7 @@ const baseClass = 'query-inspector';
|
|
|
22
22
|
export const APIViewClient = ()=>{
|
|
23
23
|
const { id, collectionSlug, globalSlug, initialData } = useDocumentInfo();
|
|
24
24
|
const searchParams = useSearchParams();
|
|
25
|
-
const { i18n } = useTranslation();
|
|
25
|
+
const { i18n, t } = useTranslation();
|
|
26
26
|
const { code } = useLocale();
|
|
27
27
|
const { getComponentMap } = useComponentMap();
|
|
28
28
|
const componentMap = getComponentMap({
|
|
@@ -143,27 +143,27 @@ export const APIViewClient = ()=>{
|
|
|
143
143
|
}, /*#__PURE__*/ React.createElement("div", {
|
|
144
144
|
className: `${baseClass}__filter-query-checkboxes`
|
|
145
145
|
}, draftsEnabled && /*#__PURE__*/ React.createElement(Checkbox, {
|
|
146
|
-
label:
|
|
146
|
+
label: t('version:draft'),
|
|
147
147
|
name: "draft",
|
|
148
148
|
onChange: ()=>setDraft(!draft),
|
|
149
149
|
path: "draft"
|
|
150
150
|
}), /*#__PURE__*/ React.createElement(Checkbox, {
|
|
151
|
-
label:
|
|
151
|
+
label: t('authentication:authenticated'),
|
|
152
152
|
name: "authenticated",
|
|
153
153
|
onChange: ()=>setAuthenticated(!authenticated),
|
|
154
154
|
path: "authenticated"
|
|
155
155
|
})), localeOptions && /*#__PURE__*/ React.createElement(Select, {
|
|
156
|
-
label:
|
|
156
|
+
label: t('general:locale'),
|
|
157
157
|
name: "locale",
|
|
158
158
|
onChange: (value)=>setLocale(value),
|
|
159
159
|
options: localeOptions,
|
|
160
160
|
path: "locale"
|
|
161
161
|
}), /*#__PURE__*/ React.createElement(NumberInput, {
|
|
162
|
-
label:
|
|
162
|
+
label: t('general:depth'),
|
|
163
163
|
max: 10,
|
|
164
164
|
min: 0,
|
|
165
165
|
name: "depth",
|
|
166
|
-
onChange: (value)=>setDepth(value
|
|
166
|
+
onChange: (value)=>setDepth(value?.toString()),
|
|
167
167
|
path: "depth",
|
|
168
168
|
step: 1
|
|
169
169
|
})))), /*#__PURE__*/ React.createElement("div", {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/API/index.client.tsx"],"sourcesContent":["'use client'\n\nimport { CopyToClipboard } from '@payloadcms/ui/elements/CopyToClipboard'\nimport { Gutter } from '@payloadcms/ui/elements/Gutter'\nimport { Checkbox } from '@payloadcms/ui/fields/Checkbox'\nimport { NumberField as NumberInput } from '@payloadcms/ui/fields/Number'\nimport { Select } from '@payloadcms/ui/fields/Select'\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { MinimizeMaximize } from '@payloadcms/ui/icons/MinimizeMaximize'\nimport { SetViewActions } from '@payloadcms/ui/providers/Actions'\nimport { useComponentMap } from '@payloadcms/ui/providers/ComponentMap'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useDocumentInfo } from '@payloadcms/ui/providers/DocumentInfo'\nimport { useLocale } from '@payloadcms/ui/providers/Locale'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { useSearchParams } from 'next/navigation.js'\nimport qs from 'qs'\nimport * as React from 'react'\nimport { toast } from 'react-toastify'\n\nimport { SetDocumentStepNav } from '../Edit/Default/SetDocumentStepNav/index.js'\nimport { RenderJSON } from './RenderJSON/index.js'\nimport './index.scss'\n\nconst baseClass = 'query-inspector'\n\nexport const APIViewClient: React.FC = () => {\n const { id, collectionSlug, globalSlug, initialData } = useDocumentInfo()\n\n const searchParams = useSearchParams()\n const { i18n } = useTranslation()\n const { code } = useLocale()\n\n const { getComponentMap } = useComponentMap()\n\n const componentMap = getComponentMap({ collectionSlug, globalSlug })\n\n const {\n collections,\n globals,\n localization,\n routes: { api: apiRoute },\n serverURL,\n } = useConfig()\n\n const collectionConfig =\n collectionSlug && collections.find((collection) => collection.slug === collectionSlug)\n\n const globalConfig = globalSlug && globals.find((global) => global.slug === globalSlug)\n\n const localeOptions =\n localization &&\n localization.locales.map((locale) => ({ label: locale.label, value: locale.code }))\n\n let draftsEnabled: boolean = false\n let docEndpoint: string = ''\n\n if (collectionConfig) {\n draftsEnabled = Boolean(collectionConfig.versions?.drafts)\n docEndpoint = `/${collectionSlug}/${id}`\n }\n\n if (globalConfig) {\n draftsEnabled = Boolean(globalConfig.versions?.drafts)\n docEndpoint = `/globals/${globalSlug}`\n }\n\n const [data, setData] = React.useState<any>(initialData)\n const [draft, setDraft] = React.useState<boolean>(searchParams.get('draft') === 'true')\n const [locale, setLocale] = React.useState<string>(searchParams?.get('locale') || code)\n const [depth, setDepth] = React.useState<string>(searchParams.get('depth') || '1')\n const [authenticated, setAuthenticated] = React.useState<boolean>(true)\n const [fullscreen, setFullscreen] = React.useState<boolean>(false)\n\n const fetchURL = `${serverURL}${apiRoute}${docEndpoint}${qs.stringify(\n {\n depth,\n draft,\n locale,\n },\n { addQueryPrefix: true },\n )}`\n\n React.useEffect(() => {\n const fetchData = async () => {\n try {\n const res = await fetch(fetchURL, {\n credentials: authenticated ? 'include' : 'omit',\n headers: {\n 'Accept-Language': i18n.language,\n },\n method: 'GET',\n })\n\n try {\n const json = await res.json()\n setData(json)\n } catch (error) {\n toast.error('Error parsing response')\n console.error(error)\n }\n } catch (error) {\n toast.error('Error making request')\n console.error(error)\n }\n }\n\n void fetchData()\n }, [i18n.language, fetchURL, authenticated])\n\n return (\n <Gutter\n className={[baseClass, fullscreen && `${baseClass}--fullscreen`].filter(Boolean).join(' ')}\n right={false}\n >\n <SetDocumentStepNav\n collectionSlug={collectionSlug}\n globalLabel={globalConfig?.label}\n globalSlug={globalSlug}\n id={id}\n pluralLabel={collectionConfig ? collectionConfig?.labels?.plural : undefined}\n useAsTitle={collectionConfig ? collectionConfig?.admin?.useAsTitle : undefined}\n view=\"API\"\n />\n <SetViewActions actions={componentMap?.actionsMap?.Edit?.API} />\n <div className={`${baseClass}__configuration`}>\n <div className={`${baseClass}__api-url`}>\n <span className={`${baseClass}__label`}>\n API URL <CopyToClipboard value={fetchURL} />\n </span>\n <a href={fetchURL} rel=\"noopener noreferrer\" target=\"_blank\">\n {fetchURL}\n </a>\n </div>\n <Form\n initialState={{\n authenticated: {\n initialValue: authenticated || false,\n valid: true,\n value: authenticated || false,\n },\n depth: {\n initialValue: Number(depth || 0),\n valid: true,\n value: Number(depth || 0),\n },\n draft: {\n initialValue: draft || false,\n valid: true,\n value: draft || false,\n },\n locale: {\n initialValue: locale,\n valid: true,\n value: locale,\n },\n }}\n >\n <div className={`${baseClass}__form-fields`}>\n <div className={`${baseClass}__filter-query-checkboxes`}>\n {draftsEnabled && (\n <Checkbox\n label=\"Draft\"\n name=\"draft\"\n onChange={() => setDraft(!draft)}\n path=\"draft\"\n />\n )}\n <Checkbox\n label=\"Authenticated\"\n name=\"authenticated\"\n onChange={() => setAuthenticated(!authenticated)}\n path=\"authenticated\"\n />\n </div>\n {localeOptions && (\n <Select\n label=\"Locale\"\n name=\"locale\"\n onChange={(value) => setLocale(value)}\n options={localeOptions}\n path=\"locale\"\n />\n )}\n <NumberInput\n label=\"Depth\"\n max={10}\n min={0}\n name=\"depth\"\n onChange={(value) => setDepth(value.toString())}\n path=\"depth\"\n step={1}\n />\n </div>\n </Form>\n </div>\n <div className={`${baseClass}__results-wrapper`}>\n <div className={`${baseClass}__toggle-fullscreen-button-container`}>\n <button\n aria-label=\"toggle fullscreen\"\n className={`${baseClass}__toggle-fullscreen-button`}\n onClick={() => setFullscreen(!fullscreen)}\n type=\"button\"\n >\n <MinimizeMaximize isMinimized={!fullscreen} />\n </button>\n </div>\n <div className={`${baseClass}__results`}>\n <RenderJSON object={data} />\n </div>\n </div>\n </Gutter>\n )\n}\n"],"names":["CopyToClipboard","Gutter","Checkbox","NumberField","NumberInput","Select","Form","MinimizeMaximize","SetViewActions","useComponentMap","useConfig","useDocumentInfo","useLocale","useTranslation","useSearchParams","qs","React","toast","SetDocumentStepNav","RenderJSON","baseClass","APIViewClient","id","collectionSlug","globalSlug","initialData","searchParams","i18n","code","getComponentMap","componentMap","collections","globals","localization","routes","api","apiRoute","serverURL","collectionConfig","find","collection","slug","globalConfig","global","localeOptions","locales","map","locale","label","value","draftsEnabled","docEndpoint","Boolean","versions","drafts","data","setData","useState","draft","setDraft","get","setLocale","depth","setDepth","authenticated","setAuthenticated","fullscreen","setFullscreen","fetchURL","stringify","addQueryPrefix","useEffect","fetchData","res","fetch","credentials","headers","language","method","json","error","console","className","filter","join","right","globalLabel","pluralLabel","labels","plural","undefined","useAsTitle","admin","view","actions","actionsMap","Edit","API","div","span","a","href","rel","target","initialState","initialValue","valid","Number","name","onChange","path","options","max","min","toString","step","button","aria-label","onClick","type","isMinimized","object"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/views/API/index.client.tsx"],"sourcesContent":["'use client'\n\nimport { CopyToClipboard } from '@payloadcms/ui/elements/CopyToClipboard'\nimport { Gutter } from '@payloadcms/ui/elements/Gutter'\nimport { Checkbox } from '@payloadcms/ui/fields/Checkbox'\nimport { NumberField as NumberInput } from '@payloadcms/ui/fields/Number'\nimport { Select } from '@payloadcms/ui/fields/Select'\nimport { Form } from '@payloadcms/ui/forms/Form'\nimport { MinimizeMaximize } from '@payloadcms/ui/icons/MinimizeMaximize'\nimport { SetViewActions } from '@payloadcms/ui/providers/Actions'\nimport { useComponentMap } from '@payloadcms/ui/providers/ComponentMap'\nimport { useConfig } from '@payloadcms/ui/providers/Config'\nimport { useDocumentInfo } from '@payloadcms/ui/providers/DocumentInfo'\nimport { useLocale } from '@payloadcms/ui/providers/Locale'\nimport { useTranslation } from '@payloadcms/ui/providers/Translation'\nimport { useSearchParams } from 'next/navigation.js'\nimport qs from 'qs'\nimport * as React from 'react'\nimport { toast } from 'react-toastify'\n\nimport { SetDocumentStepNav } from '../Edit/Default/SetDocumentStepNav/index.js'\nimport { RenderJSON } from './RenderJSON/index.js'\nimport './index.scss'\n\nconst baseClass = 'query-inspector'\n\nexport const APIViewClient: React.FC = () => {\n const { id, collectionSlug, globalSlug, initialData } = useDocumentInfo()\n\n const searchParams = useSearchParams()\n const { i18n, t } = useTranslation()\n const { code } = useLocale()\n\n const { getComponentMap } = useComponentMap()\n\n const componentMap = getComponentMap({ collectionSlug, globalSlug })\n\n const {\n collections,\n globals,\n localization,\n routes: { api: apiRoute },\n serverURL,\n } = useConfig()\n\n const collectionConfig =\n collectionSlug && collections.find((collection) => collection.slug === collectionSlug)\n\n const globalConfig = globalSlug && globals.find((global) => global.slug === globalSlug)\n\n const localeOptions =\n localization &&\n localization.locales.map((locale) => ({ label: locale.label, value: locale.code }))\n\n let draftsEnabled: boolean = false\n let docEndpoint: string = ''\n\n if (collectionConfig) {\n draftsEnabled = Boolean(collectionConfig.versions?.drafts)\n docEndpoint = `/${collectionSlug}/${id}`\n }\n\n if (globalConfig) {\n draftsEnabled = Boolean(globalConfig.versions?.drafts)\n docEndpoint = `/globals/${globalSlug}`\n }\n\n const [data, setData] = React.useState<any>(initialData)\n const [draft, setDraft] = React.useState<boolean>(searchParams.get('draft') === 'true')\n const [locale, setLocale] = React.useState<string>(searchParams?.get('locale') || code)\n const [depth, setDepth] = React.useState<string>(searchParams.get('depth') || '1')\n const [authenticated, setAuthenticated] = React.useState<boolean>(true)\n const [fullscreen, setFullscreen] = React.useState<boolean>(false)\n\n const fetchURL = `${serverURL}${apiRoute}${docEndpoint}${qs.stringify(\n {\n depth,\n draft,\n locale,\n },\n { addQueryPrefix: true },\n )}`\n\n React.useEffect(() => {\n const fetchData = async () => {\n try {\n const res = await fetch(fetchURL, {\n credentials: authenticated ? 'include' : 'omit',\n headers: {\n 'Accept-Language': i18n.language,\n },\n method: 'GET',\n })\n\n try {\n const json = await res.json()\n setData(json)\n } catch (error) {\n toast.error('Error parsing response')\n console.error(error)\n }\n } catch (error) {\n toast.error('Error making request')\n console.error(error)\n }\n }\n\n void fetchData()\n }, [i18n.language, fetchURL, authenticated])\n\n return (\n <Gutter\n className={[baseClass, fullscreen && `${baseClass}--fullscreen`].filter(Boolean).join(' ')}\n right={false}\n >\n <SetDocumentStepNav\n collectionSlug={collectionSlug}\n globalLabel={globalConfig?.label}\n globalSlug={globalSlug}\n id={id}\n pluralLabel={collectionConfig ? collectionConfig?.labels?.plural : undefined}\n useAsTitle={collectionConfig ? collectionConfig?.admin?.useAsTitle : undefined}\n view=\"API\"\n />\n <SetViewActions actions={componentMap?.actionsMap?.Edit?.API} />\n <div className={`${baseClass}__configuration`}>\n <div className={`${baseClass}__api-url`}>\n <span className={`${baseClass}__label`}>\n API URL <CopyToClipboard value={fetchURL} />\n </span>\n <a href={fetchURL} rel=\"noopener noreferrer\" target=\"_blank\">\n {fetchURL}\n </a>\n </div>\n <Form\n initialState={{\n authenticated: {\n initialValue: authenticated || false,\n valid: true,\n value: authenticated || false,\n },\n depth: {\n initialValue: Number(depth || 0),\n valid: true,\n value: Number(depth || 0),\n },\n draft: {\n initialValue: draft || false,\n valid: true,\n value: draft || false,\n },\n locale: {\n initialValue: locale,\n valid: true,\n value: locale,\n },\n }}\n >\n <div className={`${baseClass}__form-fields`}>\n <div className={`${baseClass}__filter-query-checkboxes`}>\n {draftsEnabled && (\n <Checkbox\n label={t('version:draft')}\n name=\"draft\"\n onChange={() => setDraft(!draft)}\n path=\"draft\"\n />\n )}\n <Checkbox\n label={t('authentication:authenticated')}\n name=\"authenticated\"\n onChange={() => setAuthenticated(!authenticated)}\n path=\"authenticated\"\n />\n </div>\n {localeOptions && (\n <Select\n label={t('general:locale')}\n name=\"locale\"\n onChange={(value) => setLocale(value)}\n options={localeOptions}\n path=\"locale\"\n />\n )}\n <NumberInput\n label={t('general:depth')}\n max={10}\n min={0}\n name=\"depth\"\n onChange={(value) => setDepth(value?.toString())}\n path=\"depth\"\n step={1}\n />\n </div>\n </Form>\n </div>\n <div className={`${baseClass}__results-wrapper`}>\n <div className={`${baseClass}__toggle-fullscreen-button-container`}>\n <button\n aria-label=\"toggle fullscreen\"\n className={`${baseClass}__toggle-fullscreen-button`}\n onClick={() => setFullscreen(!fullscreen)}\n type=\"button\"\n >\n <MinimizeMaximize isMinimized={!fullscreen} />\n </button>\n </div>\n <div className={`${baseClass}__results`}>\n <RenderJSON object={data} />\n </div>\n </div>\n </Gutter>\n )\n}\n"],"names":["CopyToClipboard","Gutter","Checkbox","NumberField","NumberInput","Select","Form","MinimizeMaximize","SetViewActions","useComponentMap","useConfig","useDocumentInfo","useLocale","useTranslation","useSearchParams","qs","React","toast","SetDocumentStepNav","RenderJSON","baseClass","APIViewClient","id","collectionSlug","globalSlug","initialData","searchParams","i18n","t","code","getComponentMap","componentMap","collections","globals","localization","routes","api","apiRoute","serverURL","collectionConfig","find","collection","slug","globalConfig","global","localeOptions","locales","map","locale","label","value","draftsEnabled","docEndpoint","Boolean","versions","drafts","data","setData","useState","draft","setDraft","get","setLocale","depth","setDepth","authenticated","setAuthenticated","fullscreen","setFullscreen","fetchURL","stringify","addQueryPrefix","useEffect","fetchData","res","fetch","credentials","headers","language","method","json","error","console","className","filter","join","right","globalLabel","pluralLabel","labels","plural","undefined","useAsTitle","admin","view","actions","actionsMap","Edit","API","div","span","a","href","rel","target","initialState","initialValue","valid","Number","name","onChange","path","options","max","min","toString","step","button","aria-label","onClick","type","isMinimized","object"],"rangeMappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/views/API/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAA;AAI/E,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"meta.d.ts","sourceRoot":"","sources":["../../../src/views/API/meta.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAA;AAI/E,eAAO,MAAM,gBAAgB,EAAE,wBAM3B,CAAA"}
|
package/dist/views/API/meta.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
|
1
1
|
import { meta } from '../../utilities/meta.js';
|
|
2
|
-
export const generateMetadata = async ({ config })=>{
|
|
3
|
-
return meta({
|
|
2
|
+
export const generateMetadata = async ({ config })=>meta({
|
|
4
3
|
config,
|
|
5
4
|
description: 'API',
|
|
6
5
|
keywords: 'API',
|
|
7
6
|
title: 'API'
|
|
8
7
|
});
|
|
9
|
-
};
|
|
10
8
|
|
|
11
9
|
//# sourceMappingURL=meta.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/API/meta.ts"],"sourcesContent":["import type { GenerateEditViewMetadata } from '../Document/getMetaBySegment.js'\n\nimport { meta } from '../../utilities/meta.js'\n\nexport const generateMetadata: GenerateEditViewMetadata = async ({ config })
|
|
1
|
+
{"version":3,"sources":["../../../src/views/API/meta.ts"],"sourcesContent":["import type { GenerateEditViewMetadata } from '../Document/getMetaBySegment.js'\n\nimport { meta } from '../../utilities/meta.js'\n\nexport const generateMetadata: GenerateEditViewMetadata = async ({ config }) =>\n meta({\n config,\n description: 'API',\n keywords: 'API',\n title: 'API',\n })\n"],"names":["meta","generateMetadata","config","description","keywords","title"],"rangeMappings":";;;;;;","mappings":"AAEA,SAASA,IAAI,QAAQ,0BAAyB;AAE9C,OAAO,MAAMC,mBAA6C,OAAO,EAAEC,MAAM,EAAE,GACzEF,KAAK;QACHE;QACAC,aAAa;QACbC,UAAU;QACVC,OAAO;IACT,GAAE"}
|
|
@@ -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"}
|
|
@@ -48,7 +48,16 @@ export const Account = ({ initPageResult, params, searchParams })=>{
|
|
|
48
48
|
}, /*#__PURE__*/ React.createElement(RenderCustomComponent, {
|
|
49
49
|
CustomComponent: typeof CustomAccountComponent === 'function' ? CustomAccountComponent : undefined,
|
|
50
50
|
DefaultComponent: EditView,
|
|
51
|
-
componentProps: viewComponentProps
|
|
51
|
+
componentProps: viewComponentProps,
|
|
52
|
+
serverOnlyProps: {
|
|
53
|
+
i18n,
|
|
54
|
+
locale,
|
|
55
|
+
params,
|
|
56
|
+
payload,
|
|
57
|
+
permissions,
|
|
58
|
+
searchParams,
|
|
59
|
+
user
|
|
60
|
+
}
|
|
52
61
|
})));
|
|
53
62
|
}
|
|
54
63
|
return notFound();
|