@payloadcms/next 3.1.1-canary.952fd26 → 3.1.1-canary.9c59359
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/fetchAPI-stream-file/index.d.ts +1 -1
- package/dist/fetchAPI-stream-file/index.d.ts.map +1 -1
- package/dist/layouts/Root/checkDependencies.d.ts +1 -1
- package/dist/layouts/Root/checkDependencies.d.ts.map +1 -1
- package/dist/layouts/Root/checkDependencies.js +2 -2
- package/dist/layouts/Root/checkDependencies.js.map +1 -1
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +4 -3
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/utilities/getClientConfig.d.ts +8 -0
- package/dist/utilities/getClientConfig.d.ts.map +1 -0
- package/dist/utilities/getClientConfig.js +16 -0
- package/dist/utilities/getClientConfig.js.map +1 -0
- package/dist/views/Document/handleServerFunction.d.ts +7 -1
- package/dist/views/Document/handleServerFunction.d.ts.map +1 -1
- package/dist/views/Document/handleServerFunction.js +22 -3
- package/dist/views/Document/handleServerFunction.js.map +1 -1
- package/dist/views/List/handleServerFunction.d.ts +7 -1
- package/dist/views/List/handleServerFunction.d.ts.map +1 -1
- package/dist/views/List/handleServerFunction.js +22 -3
- package/dist/views/List/handleServerFunction.js.map +1 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +2 -2
- package/dist/views/Root/index.js.map +1 -1
- package/package.json +6 -6
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import fs from 'fs';
|
|
2
2
|
export declare function iteratorToStream(iterator: any): ReadableStream<any>;
|
|
3
|
-
export declare function nodeStreamToIterator(stream: fs.ReadStream): AsyncGenerator<Uint8Array
|
|
3
|
+
export declare function nodeStreamToIterator(stream: fs.ReadStream): AsyncGenerator<Uint8Array<any>, void, unknown>;
|
|
4
4
|
export declare function streamFile(path: string): ReadableStream;
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fetchAPI-stream-file/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,wBAAgB,gBAAgB,CAAC,QAAQ,KAAA,uBAWxC;AAED,wBAAuB,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fetchAPI-stream-file/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,wBAAgB,gBAAgB,CAAC,QAAQ,KAAA,uBAWxC;AAED,wBAAuB,oBAAoB,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,kDAIhE;AAED,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,CAIvD"}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export declare const checkDependencies: () => void
|
|
1
|
+
export declare const checkDependencies: () => Promise<void>;
|
|
2
2
|
//# sourceMappingURL=checkDependencies.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkDependencies.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/checkDependencies.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,iBAAiB,
|
|
1
|
+
{"version":3,"file":"checkDependencies.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/checkDependencies.ts"],"names":[],"mappings":"AAmBA,eAAO,MAAM,iBAAiB,qBAmC7B,CAAA"}
|
|
@@ -17,11 +17,11 @@ const customReactVersionParser = version => {
|
|
|
17
17
|
};
|
|
18
18
|
};
|
|
19
19
|
let checkedDependencies = false;
|
|
20
|
-
export const checkDependencies = () => {
|
|
20
|
+
export const checkDependencies = async () => {
|
|
21
21
|
if (process.env.NODE_ENV !== 'production' && process.env.PAYLOAD_DISABLE_DEPENDENCY_CHECKER !== 'true' && !checkedDependencies) {
|
|
22
22
|
checkedDependencies = true;
|
|
23
23
|
// First check if there are mismatching dependency versions of next / react packages
|
|
24
|
-
|
|
24
|
+
await payloadCheckDependencies({
|
|
25
25
|
dependencyGroups: [{
|
|
26
26
|
name: 'react',
|
|
27
27
|
dependencies: ['react', 'react-dom'],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkDependencies.js","names":["checkDependencies","payloadCheckDependencies","customReactVersionParser","version","mainVersion","preReleases","split","length","date","parts","map","Number","checkedDependencies","process","env","NODE_ENV","PAYLOAD_DISABLE_DEPENDENCY_CHECKER","dependencyGroups","name","dependencies","targetVersionDependency","dependencyVersions","next","required","react","customVersionParser"],"sources":["../../../src/layouts/Root/checkDependencies.ts"],"sourcesContent":["import { type CustomVersionParser, checkDependencies as payloadCheckDependencies } from 'payload'\n\nconst customReactVersionParser: CustomVersionParser = (version) => {\n const [mainVersion, ...preReleases] = version.split('-')\n\n if (preReleases?.length === 3) {\n // Needs different handling, as it's in a format like 19.0.0-rc-06d0b89e-20240801 format\n const date = preReleases[2]\n\n const parts = mainVersion.split('.').map(Number)\n return { parts, preReleases: [date] }\n }\n\n const parts = mainVersion.split('.').map(Number)\n return { parts, preReleases }\n}\n\nlet checkedDependencies = false\n\nexport const checkDependencies = () => {\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.PAYLOAD_DISABLE_DEPENDENCY_CHECKER !== 'true' &&\n !checkedDependencies\n ) {\n checkedDependencies = true\n\n // First check if there are mismatching dependency versions of next / react packages\n
|
|
1
|
+
{"version":3,"file":"checkDependencies.js","names":["checkDependencies","payloadCheckDependencies","customReactVersionParser","version","mainVersion","preReleases","split","length","date","parts","map","Number","checkedDependencies","process","env","NODE_ENV","PAYLOAD_DISABLE_DEPENDENCY_CHECKER","dependencyGroups","name","dependencies","targetVersionDependency","dependencyVersions","next","required","react","customVersionParser"],"sources":["../../../src/layouts/Root/checkDependencies.ts"],"sourcesContent":["import { type CustomVersionParser, checkDependencies as payloadCheckDependencies } from 'payload'\n\nconst customReactVersionParser: CustomVersionParser = (version) => {\n const [mainVersion, ...preReleases] = version.split('-')\n\n if (preReleases?.length === 3) {\n // Needs different handling, as it's in a format like 19.0.0-rc-06d0b89e-20240801 format\n const date = preReleases[2]\n\n const parts = mainVersion.split('.').map(Number)\n return { parts, preReleases: [date] }\n }\n\n const parts = mainVersion.split('.').map(Number)\n return { parts, preReleases }\n}\n\nlet checkedDependencies = false\n\nexport const checkDependencies = async () => {\n if (\n process.env.NODE_ENV !== 'production' &&\n process.env.PAYLOAD_DISABLE_DEPENDENCY_CHECKER !== 'true' &&\n !checkedDependencies\n ) {\n checkedDependencies = true\n\n // First check if there are mismatching dependency versions of next / react packages\n await payloadCheckDependencies({\n dependencyGroups: [\n {\n name: 'react',\n dependencies: ['react', 'react-dom'],\n targetVersionDependency: 'react',\n },\n ],\n dependencyVersions: {\n next: {\n required: false,\n version: '>=15.0.0',\n },\n react: {\n customVersionParser: customReactVersionParser,\n required: false,\n version: '>=19.0.0-rc-65a56d0e-20241020',\n },\n 'react-dom': {\n customVersionParser: customReactVersionParser,\n required: false,\n version: '>=19.0.0-rc-65a56d0e-20241020',\n },\n },\n })\n }\n}\n"],"mappings":"AAAA,SAAmCA,iBAAA,IAAqBC,wBAAwB,QAAQ;AAExF,MAAMC,wBAAA,GAAiDC,OAAA;EACrD,MAAM,CAACC,WAAA,EAAa,GAAGC,WAAA,CAAY,GAAGF,OAAA,CAAQG,KAAK,CAAC;EAEpD,IAAID,WAAA,EAAaE,MAAA,KAAW,GAAG;IAC7B;IACA,MAAMC,IAAA,GAAOH,WAAW,CAAC,EAAE;IAE3B,MAAMI,KAAA,GAAQL,WAAA,CAAYE,KAAK,CAAC,KAAKI,GAAG,CAACC,MAAA;IACzC,OAAO;MAAEF,KAAA;MAAOJ,WAAA,EAAa,CAACG,IAAA;IAAM;EACtC;EAEA,MAAMC,KAAA,GAAQL,WAAA,CAAYE,KAAK,CAAC,KAAKI,GAAG,CAACC,MAAA;EACzC,OAAO;IAAEF,KAAA;IAAOJ;EAAY;AAC9B;AAEA,IAAIO,mBAAA,GAAsB;AAE1B,OAAO,MAAMZ,iBAAA,GAAoB,MAAAA,CAAA;EAC/B,IACEa,OAAA,CAAQC,GAAG,CAACC,QAAQ,KAAK,gBACzBF,OAAA,CAAQC,GAAG,CAACE,kCAAkC,KAAK,UACnD,CAACJ,mBAAA,EACD;IACAA,mBAAA,GAAsB;IAEtB;IACA,MAAMX,wBAAA,CAAyB;MAC7BgB,gBAAA,EAAkB,CAChB;QACEC,IAAA,EAAM;QACNC,YAAA,EAAc,CAAC,SAAS,YAAY;QACpCC,uBAAA,EAAyB;MAC3B,EACD;MACDC,kBAAA,EAAoB;QAClBC,IAAA,EAAM;UACJC,QAAA,EAAU;UACVpB,OAAA,EAAS;QACX;QACAqB,KAAA,EAAO;UACLC,mBAAA,EAAqBvB,wBAAA;UACrBqB,QAAA,EAAU;UACVpB,OAAA,EAAS;QACX;QACA,aAAa;UACXsB,mBAAA,EAAqBvB,wBAAA;UACrBqB,QAAA,EAAU;UACVpB,OAAA,EAAS;QACX;MACF;IACF;EACF;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/layouts/Root/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAA;AAM/E,OAAO,KAAK,MAAM,OAAO,CAAA;AAUzB,OAAO,8BAA8B,CAAA;AAErC,eAAO,MAAM,QAAQ;;;CAGpB,CAAA;AAED,eAAO,MAAM,UAAU,oEAKpB;IACD,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IAClC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAA;CAC9C,+BAsGA,CAAA"}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { rtlLanguages } from '@payloadcms/translations';
|
|
3
3
|
import { RootProvider } from '@payloadcms/ui';
|
|
4
|
-
import { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig';
|
|
5
4
|
import { headers as getHeaders, cookies as nextCookies } from 'next/headers.js';
|
|
6
5
|
import { getPayload, parseCookies } from 'payload';
|
|
7
6
|
import React from 'react';
|
|
8
7
|
import { getNavPrefs } from '../../elements/Nav/getNavPrefs.js';
|
|
8
|
+
import { getClientConfig } from '../../utilities/getClientConfig.js';
|
|
9
9
|
import { getRequestLanguage } from '../../utilities/getRequestLanguage.js';
|
|
10
10
|
import { getRequestTheme } from '../../utilities/getRequestTheme.js';
|
|
11
11
|
import { initReq } from '../../utilities/initReq.js';
|
|
@@ -21,7 +21,7 @@ export const RootLayout = async ({
|
|
|
21
21
|
importMap,
|
|
22
22
|
serverFunction
|
|
23
23
|
}) => {
|
|
24
|
-
checkDependencies();
|
|
24
|
+
await checkDependencies();
|
|
25
25
|
const config = await configPromise;
|
|
26
26
|
const headers = await getHeaders();
|
|
27
27
|
const cookies = parseCookies(headers);
|
|
@@ -42,6 +42,7 @@ export const RootLayout = async ({
|
|
|
42
42
|
const {
|
|
43
43
|
i18n,
|
|
44
44
|
permissions,
|
|
45
|
+
req,
|
|
45
46
|
user
|
|
46
47
|
} = await initReq(config);
|
|
47
48
|
const dir = rtlLanguages.includes(languageCode) ? 'RTL' : 'LTR';
|
|
@@ -68,7 +69,7 @@ export const RootLayout = async ({
|
|
|
68
69
|
payload,
|
|
69
70
|
user
|
|
70
71
|
});
|
|
71
|
-
const clientConfig = getClientConfig({
|
|
72
|
+
const clientConfig = await getClientConfig({
|
|
72
73
|
config,
|
|
73
74
|
i18n,
|
|
74
75
|
importMap
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["rtlLanguages","RootProvider","
|
|
1
|
+
{"version":3,"file":"index.js","names":["rtlLanguages","RootProvider","headers","getHeaders","cookies","nextCookies","getPayload","parseCookies","React","getNavPrefs","getClientConfig","getRequestLanguage","getRequestTheme","initReq","checkDependencies","NestProviders","metadata","description","title","RootLayout","children","config","configPromise","importMap","serverFunction","languageCode","theme","payload","i18n","permissions","req","user","dir","includes","languageOptions","Object","entries","supportedLanguages","reduce","acc","language","languageConfig","keys","push","label","translations","general","thisLanguage","value","switchLanguageServerAction","lang","set","name","cookiePrefix","path","navPrefs","clientConfig","_jsxs","_jsx","dateFNSKey","fallbackLang","fallbackLanguage","isNavOpen","open","Array","isArray","admin","components","providers","length","serverProps","id"],"sources":["../../../src/layouts/Root/index.tsx"],"sourcesContent":["import type { AcceptedLanguages } from '@payloadcms/translations'\nimport type { ImportMap, SanitizedConfig, ServerFunctionClient } from 'payload'\n\nimport { rtlLanguages } from '@payloadcms/translations'\nimport { RootProvider } from '@payloadcms/ui'\nimport { headers as getHeaders, cookies as nextCookies } from 'next/headers.js'\nimport { getPayload, parseCookies } from 'payload'\nimport React from 'react'\n\nimport { getNavPrefs } from '../../elements/Nav/getNavPrefs.js'\nimport { getClientConfig } from '../../utilities/getClientConfig.js'\nimport { getRequestLanguage } from '../../utilities/getRequestLanguage.js'\nimport { getRequestTheme } from '../../utilities/getRequestTheme.js'\nimport { initReq } from '../../utilities/initReq.js'\nimport { checkDependencies } from './checkDependencies.js'\nimport { NestProviders } from './NestProviders.js'\n\nimport '@payloadcms/ui/scss/app.scss'\n\nexport const metadata = {\n description: 'Generated by Next.js',\n title: 'Next.js',\n}\n\nexport const RootLayout = async ({\n children,\n config: configPromise,\n importMap,\n serverFunction,\n}: {\n readonly children: React.ReactNode\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n readonly serverFunction: ServerFunctionClient\n}) => {\n await checkDependencies()\n\n const config = await configPromise\n\n const headers = await getHeaders()\n const cookies = parseCookies(headers)\n\n const languageCode = getRequestLanguage({\n config,\n cookies,\n headers,\n })\n\n const theme = getRequestTheme({\n config,\n cookies,\n headers,\n })\n\n const payload = await getPayload({ config, importMap })\n\n const { i18n, permissions, req, user } = await initReq(config)\n\n const dir = (rtlLanguages as unknown as AcceptedLanguages[]).includes(languageCode)\n ? 'RTL'\n : 'LTR'\n\n const languageOptions = Object.entries(config.i18n.supportedLanguages || {}).reduce(\n (acc, [language, languageConfig]) => {\n if (Object.keys(config.i18n.supportedLanguages).includes(language)) {\n acc.push({\n label: languageConfig.translations.general.thisLanguage,\n value: language,\n })\n }\n\n return acc\n },\n [],\n )\n\n async function switchLanguageServerAction(lang: string): Promise<void> {\n 'use server'\n const cookies = await nextCookies()\n cookies.set({\n name: `${config.cookiePrefix || 'payload'}-lng`,\n path: '/',\n value: lang,\n })\n }\n\n const navPrefs = await getNavPrefs({ payload, user })\n\n const clientConfig = await getClientConfig({\n config,\n i18n,\n importMap,\n })\n\n return (\n <html data-theme={theme} dir={dir} lang={languageCode}>\n <head>\n <style>{`@layer payload-default, payload;`}</style>\n </head>\n <body>\n <RootProvider\n config={clientConfig}\n dateFNSKey={i18n.dateFNSKey}\n fallbackLang={config.i18n.fallbackLanguage}\n isNavOpen={navPrefs?.open ?? true}\n languageCode={languageCode}\n languageOptions={languageOptions}\n permissions={permissions}\n serverFunction={serverFunction}\n switchLanguageServerAction={switchLanguageServerAction}\n theme={theme}\n translations={i18n.translations}\n user={user}\n >\n {Array.isArray(config.admin?.components?.providers) &&\n config.admin?.components?.providers.length > 0 ? (\n <NestProviders\n importMap={payload.importMap}\n providers={config.admin?.components?.providers}\n serverProps={{\n i18n,\n payload,\n permissions,\n user,\n }}\n >\n {children}\n </NestProviders>\n ) : (\n children\n )}\n </RootProvider>\n <div id=\"portal\" />\n </body>\n </html>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { I18nClient } from '@payloadcms/translations';
|
|
2
|
+
import type { ClientConfig, ImportMap, SanitizedConfig } from 'payload';
|
|
3
|
+
export declare const getClientConfig: (args: {
|
|
4
|
+
config: SanitizedConfig;
|
|
5
|
+
i18n: I18nClient;
|
|
6
|
+
importMap: ImportMap;
|
|
7
|
+
}) => Promise<ClientConfig>;
|
|
8
|
+
//# sourceMappingURL=getClientConfig.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getClientConfig.d.ts","sourceRoot":"","sources":["../../src/utilities/getClientConfig.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAKvE,eAAO,MAAM,eAAe,SACb;IACX,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;CACrB,KAAG,OAAO,CAAC,YAAY,CAWzB,CAAA"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { createClientConfig } from 'payload';
|
|
2
|
+
import { cache } from 'react';
|
|
3
|
+
export const getClientConfig = cache(async args => {
|
|
4
|
+
const {
|
|
5
|
+
config,
|
|
6
|
+
i18n,
|
|
7
|
+
importMap
|
|
8
|
+
} = args;
|
|
9
|
+
const clientConfig = createClientConfig({
|
|
10
|
+
config,
|
|
11
|
+
i18n,
|
|
12
|
+
importMap
|
|
13
|
+
});
|
|
14
|
+
return Promise.resolve(clientConfig);
|
|
15
|
+
});
|
|
16
|
+
//# sourceMappingURL=getClientConfig.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getClientConfig.js","names":["createClientConfig","cache","getClientConfig","args","config","i18n","importMap","clientConfig","Promise","resolve"],"sources":["../../src/utilities/getClientConfig.ts"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { ClientConfig, ImportMap, SanitizedConfig } from 'payload'\n\nimport { createClientConfig } from 'payload'\nimport { cache } from 'react'\n\nexport const getClientConfig = cache(\n async (args: {\n config: SanitizedConfig\n i18n: I18nClient\n importMap: ImportMap\n }): Promise<ClientConfig> => {\n const { config, i18n, importMap } = args\n\n const clientConfig = createClientConfig({\n config,\n i18n,\n importMap,\n })\n\n return Promise.resolve(clientConfig)\n },\n)\n"],"mappings":"AAGA,SAASA,kBAAkB,QAAQ;AACnC,SAASC,KAAK,QAAQ;AAEtB,OAAO,MAAMC,eAAA,GAAkBD,KAAA,CAC7B,MAAOE,IAAA;EAKL,MAAM;IAAEC,MAAM;IAAEC,IAAI;IAAEC;EAAS,CAAE,GAAGH,IAAA;EAEpC,MAAMI,YAAA,GAAeP,kBAAA,CAAmB;IACtCI,MAAA;IACAC,IAAA;IACAC;EACF;EAEA,OAAOE,OAAA,CAAQC,OAAO,CAACF,YAAA;AACzB","ignoreList":[]}
|
|
@@ -1,4 +1,10 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { I18nClient } from '@payloadcms/translations';
|
|
2
|
+
import type { ClientConfig, Data, DocumentPreferences, FormState, ImportMap, PayloadRequest, SanitizedConfig } from 'payload';
|
|
3
|
+
export declare const getClientConfig: (args: {
|
|
4
|
+
config: SanitizedConfig;
|
|
5
|
+
i18n: I18nClient;
|
|
6
|
+
importMap: ImportMap;
|
|
7
|
+
}) => ClientConfig;
|
|
2
8
|
type RenderDocumentResult = {
|
|
3
9
|
data: any;
|
|
4
10
|
Document: React.ReactNode;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleServerFunction.d.ts","sourceRoot":"","sources":["../../../src/views/Document/handleServerFunction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"handleServerFunction.d.ts","sourceRoot":"","sources":["../../../src/views/Document/handleServerFunction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EACV,YAAY,EACZ,IAAI,EACJ,mBAAmB,EACnB,SAAS,EACT,SAAS,EACT,cAAc,EACd,eAAe,EAEhB,MAAM,SAAS,CAAA;AAahB,eAAO,MAAM,eAAe,SAAU;IACpC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;CACrB,KAAG,YAcH,CAAA;AAED,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,GAAG,CAAA;IACT,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;IACzB,WAAW,EAAE,mBAAmB,CAAA;CACjC,CAAA;AAED,eAAO,MAAM,qBAAqB,SAAgB;IAChD,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,KAAK,EAAE,MAAM,CAAA;IACb,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,WAAW,CAAC,EAAE,IAAI,CAAA;IAClB,YAAY,CAAC,EAAE,SAAS,CAAA;IACxB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,sBAAsB,EAAE,OAAO,CAAA;IAC/B,GAAG,EAAE,cAAc,CAAA;CACpB,KAAG,OAAO,CAAC,oBAAoB,CA2I/B,CAAA"}
|
|
@@ -1,7 +1,26 @@
|
|
|
1
|
-
import { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig';
|
|
2
1
|
import { headers as getHeaders } from 'next/headers.js';
|
|
3
|
-
import { getAccessResults, isEntityHidden, parseCookies } from 'payload';
|
|
2
|
+
import { createClientConfig, getAccessResults, isEntityHidden, parseCookies } from 'payload';
|
|
4
3
|
import { renderDocument } from './index.js';
|
|
4
|
+
let cachedClientConfig = global._payload_clientConfig;
|
|
5
|
+
if (!cachedClientConfig) {
|
|
6
|
+
cachedClientConfig = global._payload_clientConfig = null;
|
|
7
|
+
}
|
|
8
|
+
export const getClientConfig = args => {
|
|
9
|
+
const {
|
|
10
|
+
config,
|
|
11
|
+
i18n,
|
|
12
|
+
importMap
|
|
13
|
+
} = args;
|
|
14
|
+
if (cachedClientConfig && process.env.NODE_ENV !== 'development') {
|
|
15
|
+
return cachedClientConfig;
|
|
16
|
+
}
|
|
17
|
+
cachedClientConfig = createClientConfig({
|
|
18
|
+
config,
|
|
19
|
+
i18n,
|
|
20
|
+
importMap
|
|
21
|
+
});
|
|
22
|
+
return cachedClientConfig;
|
|
23
|
+
};
|
|
5
24
|
export const renderDocumentHandler = async args => {
|
|
6
25
|
const {
|
|
7
26
|
collectionSlug,
|
|
@@ -117,7 +136,7 @@ export const renderDocumentHandler = async args => {
|
|
|
117
136
|
collectionConfig: payload.config.collections.find(collection => collection.slug === collectionSlug),
|
|
118
137
|
cookies,
|
|
119
138
|
docID,
|
|
120
|
-
globalConfig: payload.config.globals.find(
|
|
139
|
+
globalConfig: payload.config.globals.find(global1 => global1.slug === collectionSlug),
|
|
121
140
|
languageOptions: undefined,
|
|
122
141
|
permissions,
|
|
123
142
|
req,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleServerFunction.js","names":["
|
|
1
|
+
{"version":3,"file":"handleServerFunction.js","names":["headers","getHeaders","createClientConfig","getAccessResults","isEntityHidden","parseCookies","renderDocument","cachedClientConfig","global","_payload_clientConfig","getClientConfig","args","config","i18n","importMap","process","env","NODE_ENV","renderDocumentHandler","collectionSlug","disableActions","docID","drawerSlug","initialData","redirectAfterDelete","redirectAfterDuplicate","req","payload","user","cookies","incomingUserSlug","collection","adminUserSlug","admin","adminAccessFunction","collections","access","canAccessAdmin","Error","hasUsers","find","depth","limit","pagination","docs","length","clientConfig","preferences","preferencesKey","where","and","key","equals","id","then","res","value","visibleEntities","map","slug","hidden","filter","Boolean","globals","permissions","data","Document","initPageResult","collectionConfig","globalConfig","global1","languageOptions","undefined","translations","params","segments","searchParams"],"sources":["../../../src/views/Document/handleServerFunction.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type {\n ClientConfig,\n Data,\n DocumentPreferences,\n FormState,\n ImportMap,\n PayloadRequest,\n SanitizedConfig,\n VisibleEntities,\n} from 'payload'\n\nimport { headers as getHeaders } from 'next/headers.js'\nimport { createClientConfig, getAccessResults, isEntityHidden, parseCookies } from 'payload'\n\nimport { renderDocument } from './index.js'\n\nlet cachedClientConfig = global._payload_clientConfig\n\nif (!cachedClientConfig) {\n cachedClientConfig = global._payload_clientConfig = null\n}\n\nexport const getClientConfig = (args: {\n config: SanitizedConfig\n i18n: I18nClient\n importMap: ImportMap\n}): ClientConfig => {\n const { config, i18n, importMap } = args\n\n if (cachedClientConfig && process.env.NODE_ENV !== 'development') {\n return cachedClientConfig\n }\n\n cachedClientConfig = createClientConfig({\n config,\n i18n,\n importMap,\n })\n\n return cachedClientConfig\n}\n\ntype RenderDocumentResult = {\n data: any\n Document: React.ReactNode\n preferences: DocumentPreferences\n}\n\nexport const renderDocumentHandler = async (args: {\n collectionSlug: string\n disableActions?: boolean\n docID: string\n drawerSlug?: string\n initialData?: Data\n initialState?: FormState\n redirectAfterDelete: boolean\n redirectAfterDuplicate: boolean\n req: PayloadRequest\n}): Promise<RenderDocumentResult> => {\n const {\n collectionSlug,\n disableActions,\n docID,\n drawerSlug,\n initialData,\n redirectAfterDelete,\n redirectAfterDuplicate,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n user,\n },\n } = args\n\n const headers = await getHeaders()\n\n const cookies = parseCookies(headers)\n\n const incomingUserSlug = user?.collection\n\n const adminUserSlug = config.admin.user\n\n // If we have a user slug, test it against the functions\n if (incomingUserSlug) {\n const adminAccessFunction = payload.collections[incomingUserSlug].config.access?.admin\n\n // Run the admin access function from the config if it exists\n if (adminAccessFunction) {\n const canAccessAdmin = await adminAccessFunction({ req })\n\n if (!canAccessAdmin) {\n throw new Error('Unauthorized')\n }\n // Match the user collection to the global admin config\n } else if (adminUserSlug !== incomingUserSlug) {\n throw new Error('Unauthorized')\n }\n } else {\n const hasUsers = await payload.find({\n collection: adminUserSlug,\n depth: 0,\n limit: 1,\n pagination: false,\n })\n\n // If there are users, we should not allow access because of /create-first-user\n if (hasUsers.docs.length) {\n throw new Error('Unauthorized')\n }\n }\n\n const clientConfig = getClientConfig({\n config,\n i18n,\n importMap: req.payload.importMap,\n })\n\n let preferences: DocumentPreferences\n\n if (docID) {\n const preferencesKey = `${collectionSlug}-edit-${docID}`\n\n preferences = await payload\n .find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n where: {\n and: [\n {\n key: {\n equals: preferencesKey,\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n ],\n },\n })\n .then((res) => res.docs[0]?.value as DocumentPreferences)\n }\n\n const visibleEntities: VisibleEntities = {\n collections: payload.config.collections\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n globals: payload.config.globals\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n }\n\n const permissions = await getAccessResults({\n req,\n })\n\n const { data, Document } = await renderDocument({\n clientConfig,\n disableActions,\n drawerSlug,\n importMap: payload.importMap,\n initialData,\n initPageResult: {\n collectionConfig: payload.config.collections.find(\n (collection) => collection.slug === collectionSlug,\n ),\n cookies,\n docID,\n globalConfig: payload.config.globals.find((global) => global.slug === collectionSlug),\n languageOptions: undefined, // TODO\n permissions,\n req,\n translations: undefined, // TODO\n visibleEntities,\n },\n params: {\n segments: ['collections', collectionSlug, docID],\n },\n redirectAfterDelete,\n redirectAfterDuplicate,\n searchParams: {},\n })\n\n return {\n data,\n Document,\n preferences,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,11 @@
|
|
|
1
|
+
import type { I18nClient } from '@payloadcms/translations';
|
|
1
2
|
import type { ListPreferences } from '@payloadcms/ui';
|
|
2
|
-
import type { ListQuery, PayloadRequest } from 'payload';
|
|
3
|
+
import type { ClientConfig, ImportMap, ListQuery, PayloadRequest, SanitizedConfig } from 'payload';
|
|
4
|
+
export declare const getClientConfig: (args: {
|
|
5
|
+
config: SanitizedConfig;
|
|
6
|
+
i18n: I18nClient;
|
|
7
|
+
importMap: ImportMap;
|
|
8
|
+
}) => ClientConfig;
|
|
3
9
|
type RenderListResult = {
|
|
4
10
|
List: React.ReactNode;
|
|
5
11
|
preferences: ListPreferences;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleServerFunction.d.ts","sourceRoot":"","sources":["../../../src/views/List/handleServerFunction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"handleServerFunction.d.ts","sourceRoot":"","sources":["../../../src/views/List/handleServerFunction.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAA;AACrD,OAAO,KAAK,EACV,YAAY,EACZ,SAAS,EACT,SAAS,EACT,cAAc,EACd,eAAe,EAEhB,MAAM,SAAS,CAAA;AAahB,eAAO,MAAM,eAAe,SAAU;IACpC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,EAAE,SAAS,CAAA;CACrB,KAAG,YAcH,CAAA;AAED,KAAK,gBAAgB,GAAG;IACtB,IAAI,EAAE,KAAK,CAAC,SAAS,CAAA;IACrB,WAAW,EAAE,eAAe,CAAA;CAC7B,CAAA;AAED,eAAO,MAAM,iBAAiB,SAAgB;IAC5C,cAAc,EAAE,MAAM,CAAA;IACtB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,iBAAiB,CAAC,EAAE,OAAO,CAAA;IAC3B,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,kBAAkB,EAAE,MAAM,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,KAAK,EAAE,SAAS,CAAA;IAChB,mBAAmB,EAAE,OAAO,CAAA;IAC5B,sBAAsB,EAAE,OAAO,CAAA;IAC/B,GAAG,EAAE,cAAc,CAAA;CACpB,KAAG,OAAO,CAAC,gBAAgB,CA0I3B,CAAA"}
|
|
@@ -1,7 +1,26 @@
|
|
|
1
|
-
import { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig';
|
|
2
1
|
import { headers as getHeaders } from 'next/headers.js';
|
|
3
|
-
import { getAccessResults, isEntityHidden, parseCookies } from 'payload';
|
|
2
|
+
import { createClientConfig, getAccessResults, isEntityHidden, parseCookies } from 'payload';
|
|
4
3
|
import { renderListView } from './index.js';
|
|
4
|
+
let cachedClientConfig = global._payload_clientConfig;
|
|
5
|
+
if (!cachedClientConfig) {
|
|
6
|
+
cachedClientConfig = global._payload_clientConfig = null;
|
|
7
|
+
}
|
|
8
|
+
export const getClientConfig = args => {
|
|
9
|
+
const {
|
|
10
|
+
config,
|
|
11
|
+
i18n,
|
|
12
|
+
importMap
|
|
13
|
+
} = args;
|
|
14
|
+
if (cachedClientConfig && process.env.NODE_ENV !== 'development') {
|
|
15
|
+
return cachedClientConfig;
|
|
16
|
+
}
|
|
17
|
+
cachedClientConfig = createClientConfig({
|
|
18
|
+
config,
|
|
19
|
+
i18n,
|
|
20
|
+
importMap
|
|
21
|
+
});
|
|
22
|
+
return cachedClientConfig;
|
|
23
|
+
};
|
|
5
24
|
export const renderListHandler = async args => {
|
|
6
25
|
const {
|
|
7
26
|
collectionSlug,
|
|
@@ -116,7 +135,7 @@ export const renderListHandler = async args => {
|
|
|
116
135
|
initPageResult: {
|
|
117
136
|
collectionConfig: payload.config.collections.find(collection => collection.slug === collectionSlug),
|
|
118
137
|
cookies,
|
|
119
|
-
globalConfig: payload.config.globals.find(
|
|
138
|
+
globalConfig: payload.config.globals.find(global1 => global1.slug === collectionSlug),
|
|
120
139
|
languageOptions: undefined,
|
|
121
140
|
permissions,
|
|
122
141
|
req,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"handleServerFunction.js","names":["
|
|
1
|
+
{"version":3,"file":"handleServerFunction.js","names":["headers","getHeaders","createClientConfig","getAccessResults","isEntityHidden","parseCookies","renderListView","cachedClientConfig","global","_payload_clientConfig","getClientConfig","args","config","i18n","importMap","process","env","NODE_ENV","renderListHandler","collectionSlug","disableActions","disableBulkDelete","disableBulkEdit","drawerSlug","enableRowSelections","query","redirectAfterDelete","redirectAfterDuplicate","req","payload","user","cookies","incomingUserSlug","collection","adminUserSlug","admin","adminAccessFunction","collections","access","canAccessAdmin","Error","hasUsers","find","depth","limit","pagination","docs","length","clientConfig","preferencesKey","preferences","where","and","key","equals","id","then","res","value","visibleEntities","map","slug","hidden","filter","Boolean","globals","permissions","List","initPageResult","collectionConfig","globalConfig","global1","languageOptions","undefined","translations","params","segments","searchParams"],"sources":["../../../src/views/List/handleServerFunction.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { ListPreferences } from '@payloadcms/ui'\nimport type {\n ClientConfig,\n ImportMap,\n ListQuery,\n PayloadRequest,\n SanitizedConfig,\n VisibleEntities,\n} from 'payload'\n\nimport { headers as getHeaders } from 'next/headers.js'\nimport { createClientConfig, getAccessResults, isEntityHidden, parseCookies } from 'payload'\n\nimport { renderListView } from './index.js'\n\nlet cachedClientConfig = global._payload_clientConfig\n\nif (!cachedClientConfig) {\n cachedClientConfig = global._payload_clientConfig = null\n}\n\nexport const getClientConfig = (args: {\n config: SanitizedConfig\n i18n: I18nClient\n importMap: ImportMap\n}): ClientConfig => {\n const { config, i18n, importMap } = args\n\n if (cachedClientConfig && process.env.NODE_ENV !== 'development') {\n return cachedClientConfig\n }\n\n cachedClientConfig = createClientConfig({\n config,\n i18n,\n importMap,\n })\n\n return cachedClientConfig\n}\n\ntype RenderListResult = {\n List: React.ReactNode\n preferences: ListPreferences\n}\n\nexport const renderListHandler = async (args: {\n collectionSlug: string\n disableActions?: boolean\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n documentDrawerSlug: string\n drawerSlug?: string\n enableRowSelections: boolean\n query: ListQuery\n redirectAfterDelete: boolean\n redirectAfterDuplicate: boolean\n req: PayloadRequest\n}): Promise<RenderListResult> => {\n const {\n collectionSlug,\n disableActions,\n disableBulkDelete,\n disableBulkEdit,\n drawerSlug,\n enableRowSelections,\n query,\n redirectAfterDelete,\n redirectAfterDuplicate,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n user,\n },\n } = args\n\n const headers = await getHeaders()\n\n const cookies = parseCookies(headers)\n\n const incomingUserSlug = user?.collection\n\n const adminUserSlug = config.admin.user\n\n // If we have a user slug, test it against the functions\n if (incomingUserSlug) {\n const adminAccessFunction = payload.collections[incomingUserSlug].config.access?.admin\n\n // Run the admin access function from the config if it exists\n if (adminAccessFunction) {\n const canAccessAdmin = await adminAccessFunction({ req })\n\n if (!canAccessAdmin) {\n throw new Error('Unauthorized')\n }\n // Match the user collection to the global admin config\n } else if (adminUserSlug !== incomingUserSlug) {\n throw new Error('Unauthorized')\n }\n } else {\n const hasUsers = await payload.find({\n collection: adminUserSlug,\n depth: 0,\n limit: 1,\n pagination: false,\n })\n\n // If there are users, we should not allow access because of /create-first-user\n if (hasUsers.docs.length) {\n throw new Error('Unauthorized')\n }\n }\n\n const clientConfig = getClientConfig({\n config,\n i18n,\n importMap: payload.importMap,\n })\n\n const preferencesKey = `${collectionSlug}-list`\n\n const preferences = await payload\n .find({\n collection: 'payload-preferences',\n depth: 0,\n limit: 1,\n where: {\n and: [\n {\n key: {\n equals: preferencesKey,\n },\n },\n {\n 'user.relationTo': {\n equals: user.collection,\n },\n },\n {\n 'user.value': {\n equals: user.id,\n },\n },\n ],\n },\n })\n .then((res) => res.docs[0]?.value as ListPreferences)\n\n const visibleEntities: VisibleEntities = {\n collections: payload.config.collections\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n globals: payload.config.globals\n .map(({ slug, admin: { hidden } }) => (!isEntityHidden({ hidden, user }) ? slug : null))\n .filter(Boolean),\n }\n\n const permissions = await getAccessResults({\n req,\n })\n\n const { List } = await renderListView({\n clientConfig,\n disableActions,\n disableBulkDelete,\n disableBulkEdit,\n drawerSlug,\n enableRowSelections,\n importMap: payload.importMap,\n initPageResult: {\n collectionConfig: payload.config.collections.find(\n (collection) => collection.slug === collectionSlug,\n ),\n cookies,\n globalConfig: payload.config.globals.find((global) => global.slug === collectionSlug),\n languageOptions: undefined, // TODO\n permissions,\n req,\n translations: undefined, // TODO\n visibleEntities,\n },\n params: {\n segments: ['collections', collectionSlug],\n },\n query,\n redirectAfterDelete,\n redirectAfterDuplicate,\n searchParams: {},\n })\n\n return {\n List,\n preferences,\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Root/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Root/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAKzD,OAAO,KAAmB,MAAM,OAAO,CAAA;AAQvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAA;AAEhD,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,UAAU,CAAA;IAChB,SAAS,CAAC,EAAE,OAAO,CAAA;IACnB,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CAC9C,KAAK,OAAO,CAAC,QAAQ,CAAC,CAAA;AAEvB,eAAO,MAAM,QAAQ,oGAKlB;IACD,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IACzC,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAA;IAC7B,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;QACvB,QAAQ,EAAE,MAAM,EAAE,CAAA;KACnB,CAAC,CAAA;IACF,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;QAC7B,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KACjC,CAAC,CAAA;CACH,+BAkIA,CAAA"}
|
package/dist/views/Root/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
2
|
import { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent';
|
|
3
3
|
import { formatAdminURL } from '@payloadcms/ui/shared';
|
|
4
|
-
import { getClientConfig } from '@payloadcms/ui/utilities/getClientConfig';
|
|
5
4
|
import { notFound, redirect } from 'next/navigation.js';
|
|
6
5
|
import React, { Fragment } from 'react';
|
|
7
6
|
import { DefaultTemplate } from '../../templates/Default/index.js';
|
|
8
7
|
import { MinimalTemplate } from '../../templates/Minimal/index.js';
|
|
8
|
+
import { getClientConfig } from '../../utilities/getClientConfig.js';
|
|
9
9
|
import { initPage } from '../../utilities/initPage/index.js';
|
|
10
10
|
import { getViewFromConfig } from './getViewFromConfig.js';
|
|
11
11
|
export { generatePageMetadata } from './meta.js';
|
|
@@ -86,7 +86,7 @@ export const RootPage = async ({
|
|
|
86
86
|
if (!DefaultView?.Component && !DefaultView?.payloadComponent && !dbHasUser) {
|
|
87
87
|
redirect(adminRoute);
|
|
88
88
|
}
|
|
89
|
-
const clientConfig = getClientConfig({
|
|
89
|
+
const clientConfig = await getClientConfig({
|
|
90
90
|
config,
|
|
91
91
|
i18n: initPageResult?.req.i18n,
|
|
92
92
|
importMap
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["RenderServerComponent","formatAdminURL","
|
|
1
|
+
{"version":3,"file":"index.js","names":["RenderServerComponent","formatAdminURL","notFound","redirect","React","Fragment","DefaultTemplate","MinimalTemplate","getClientConfig","initPage","getViewFromConfig","generatePageMetadata","RootPage","config","configPromise","importMap","params","paramsPromise","searchParams","searchParamsPromise","admin","routes","createFirstUser","_createFirstUserRoute","user","userSlug","adminRoute","currentRoute","path","Array","isArray","segments","join","DefaultView","initPageOptions","serverProps","templateClassName","templateType","initPageResult","dbHasUser","req","payload","db","findOne","collection","then","doc","Component","payloadComponent","redirectTo","createFirstUserRoute","collectionConfig","collections","find","slug","disableLocalStrategy","auth","clientConfig","i18n","RenderedView","clientProps","Fallback","_jsxs","_jsx","className","locale","permissions","viewActions","visibleEntities","globals"],"sources":["../../../src/views/Root/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type { ImportMap, SanitizedConfig } from 'payload'\n\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport { notFound, redirect } from 'next/navigation.js'\nimport React, { Fragment } from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { MinimalTemplate } from '../../templates/Minimal/index.js'\nimport { getClientConfig } from '../../utilities/getClientConfig.js'\nimport { initPage } from '../../utilities/initPage/index.js'\nimport { getViewFromConfig } from './getViewFromConfig.js'\n\nexport { generatePageMetadata } from './meta.js'\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18nClient\n isEditing?: boolean\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const RootPage = async ({\n config: configPromise,\n importMap,\n params: paramsPromise,\n searchParams: searchParamsPromise,\n}: {\n readonly config: Promise<SanitizedConfig>\n readonly importMap: ImportMap\n readonly params: Promise<{\n segments: string[]\n }>\n readonly searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}) => {\n const config = await configPromise\n\n const {\n admin: {\n routes: { createFirstUser: _createFirstUserRoute },\n user: userSlug,\n },\n routes: { admin: adminRoute },\n } = config\n\n const params = await paramsPromise\n const currentRoute = formatAdminURL({\n adminRoute,\n path: `${Array.isArray(params.segments) ? `/${params.segments.join('/')}` : ''}`,\n })\n\n const segments = Array.isArray(params.segments) ? params.segments : []\n\n const searchParams = await searchParamsPromise\n\n const { DefaultView, initPageOptions, serverProps, templateClassName, templateType } =\n getViewFromConfig({\n adminRoute,\n config,\n currentRoute,\n importMap,\n searchParams,\n segments,\n })\n\n const initPageResult = await initPage(initPageOptions)\n\n const dbHasUser =\n initPageResult.req.user ||\n (await initPageResult?.req.payload.db\n .findOne({\n collection: userSlug,\n req: initPageResult?.req,\n })\n ?.then((doc) => !!doc))\n\n if (!DefaultView?.Component && !DefaultView?.payloadComponent) {\n if (initPageResult?.req?.user) {\n notFound()\n }\n\n if (dbHasUser) {\n redirect(adminRoute)\n }\n }\n\n if (typeof initPageResult?.redirectTo === 'string') {\n redirect(initPageResult.redirectTo)\n }\n\n if (initPageResult) {\n const createFirstUserRoute = formatAdminURL({ adminRoute, path: _createFirstUserRoute })\n\n const collectionConfig = config.collections.find(({ slug }) => slug === userSlug)\n const disableLocalStrategy = collectionConfig?.auth?.disableLocalStrategy\n\n if (disableLocalStrategy && currentRoute === createFirstUserRoute) {\n redirect(adminRoute)\n }\n\n if (!dbHasUser && currentRoute !== createFirstUserRoute && !disableLocalStrategy) {\n redirect(createFirstUserRoute)\n }\n\n if (dbHasUser && currentRoute === createFirstUserRoute) {\n redirect(adminRoute)\n }\n }\n\n if (!DefaultView?.Component && !DefaultView?.payloadComponent && !dbHasUser) {\n redirect(adminRoute)\n }\n\n const clientConfig = await getClientConfig({\n config,\n i18n: initPageResult?.req.i18n,\n importMap,\n })\n\n const RenderedView = RenderServerComponent({\n clientProps: { clientConfig },\n Component: DefaultView.payloadComponent,\n Fallback: DefaultView.Component,\n importMap,\n serverProps: {\n ...serverProps,\n clientConfig,\n i18n: initPageResult?.req.i18n,\n importMap,\n initPageResult,\n params,\n payload: initPageResult?.req.payload,\n searchParams,\n },\n })\n\n return (\n <Fragment>\n {!templateType && <Fragment>{RenderedView}</Fragment>}\n {templateType === 'minimal' && (\n <MinimalTemplate className={templateClassName}>{RenderedView}</MinimalTemplate>\n )}\n {templateType === 'default' && (\n <DefaultTemplate\n i18n={initPageResult?.req.i18n}\n locale={initPageResult?.locale}\n params={params}\n payload={initPageResult?.req.payload}\n permissions={initPageResult?.permissions}\n searchParams={searchParams}\n user={initPageResult?.req.user}\n viewActions={serverProps.viewActions}\n visibleEntities={{\n // The reason we are not passing in initPageResult.visibleEntities directly is due to a \"Cannot assign to read only property of object '#<Object>\" error introduced in React 19\n // which this caused as soon as initPageResult.visibleEntities is passed in\n collections: initPageResult?.visibleEntities?.collections,\n globals: initPageResult?.visibleEntities?.globals,\n }}\n >\n {RenderedView}\n </DefaultTemplate>\n )}\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/next",
|
|
3
|
-
"version": "3.1.1-canary.
|
|
3
|
+
"version": "3.1.1-canary.9c59359",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -79,9 +79,9 @@
|
|
|
79
79
|
"sass": "1.77.4",
|
|
80
80
|
"sonner": "^1.5.0",
|
|
81
81
|
"uuid": "10.0.0",
|
|
82
|
-
"@payloadcms/graphql": "3.1.1-canary.
|
|
83
|
-
"@payloadcms/translations": "3.1.1-canary.
|
|
84
|
-
"@payloadcms/ui": "3.1.1-canary.
|
|
82
|
+
"@payloadcms/graphql": "3.1.1-canary.9c59359",
|
|
83
|
+
"@payloadcms/translations": "3.1.1-canary.9c59359",
|
|
84
|
+
"@payloadcms/ui": "3.1.1-canary.9c59359"
|
|
85
85
|
},
|
|
86
86
|
"devDependencies": {
|
|
87
87
|
"@babel/cli": "^7.24.5",
|
|
@@ -100,12 +100,12 @@
|
|
|
100
100
|
"eslint-plugin-react-compiler": "19.0.0-beta-a7bf2bd-20241110",
|
|
101
101
|
"swc-plugin-transform-remove-imports": "1.15.0",
|
|
102
102
|
"@payloadcms/eslint-config": "3.0.0",
|
|
103
|
-
"payload": "3.1.1-canary.
|
|
103
|
+
"payload": "3.1.1-canary.9c59359"
|
|
104
104
|
},
|
|
105
105
|
"peerDependencies": {
|
|
106
106
|
"graphql": "^16.8.1",
|
|
107
107
|
"next": "^15.0.0",
|
|
108
|
-
"payload": "3.1.1-canary.
|
|
108
|
+
"payload": "3.1.1-canary.9c59359"
|
|
109
109
|
},
|
|
110
110
|
"engines": {
|
|
111
111
|
"node": "^18.20.2 || >=20.9.0"
|