@payloadcms/next 3.0.0-beta.97 → 3.0.0-beta.99
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/elements/Nav/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/templates/Default/index.scss +1 -1
- package/dist/utilities/getNextRequestI18n.d.ts.map +1 -1
- package/dist/utilities/getNextRequestI18n.js.map +1 -1
- package/dist/utilities/headersWithCors.d.ts.map +1 -1
- package/dist/utilities/headersWithCors.js.map +1 -1
- package/dist/views/CreateFirstUser/index.d.ts.map +1 -1
- package/dist/views/CreateFirstUser/index.js.map +1 -1
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/Verify/index.js +0 -1
- package/dist/views/Verify/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/index.js.map +1 -1
- package/dist/views/Version/Restore/index.d.ts.map +1 -1
- package/dist/views/Version/Restore/index.js +3 -1
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/package.json +7 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNextRequestI18n.d.ts","sourceRoot":"","sources":["../../src/utilities/getNextRequestI18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"getNextRequestI18n.d.ts","sourceRoot":"","sources":["../../src/utilities/getNextRequestI18n.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACpF,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAO9C;;;;GAIG;AACH,eAAO,MAAM,kBAAkB,GAE7B,uBAAuB,OACvB,gCAAgC,SAAS,MAAM,uBAG9C;IACD,MAAM,EAAE,eAAe,CAAA;CACxB,KAAG,OAAO,CACT,CAAC,gCAAgC,CAAC,SAAS,CAAC,KAAK,CAAC,GAC9C,UAAU,GACV,uBAAuB,SAAS,MAAM,GACpC,UAAU,CAAC,uBAAuB,EAAE,gCAAgC,CAAC,GACrE,UAAU,CAAC,wBAAwB,EAAE,gCAAgC,CAAC,CAO7E,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getNextRequestI18n.js","names":["initI18n","cookies","headers","getRequestLanguage","getNextRequestI18n","config","i18n","context","language"],"sources":["../../src/utilities/getNextRequestI18n.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"getNextRequestI18n.js","names":["initI18n","cookies","headers","getRequestLanguage","getNextRequestI18n","config","i18n","context","language"],"sources":["../../src/utilities/getNextRequestI18n.ts"],"sourcesContent":["import type { ClientTranslationsObject, I18nClient } from '@payloadcms/translations'\nimport type { SanitizedConfig } from 'payload'\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 <\n // eslint-disable-next-line @typescript-eslint/no-empty-object-type\n TAdditionalTranslations = {},\n TAdditionalClientTranslationKeys extends string = never,\n>({\n config,\n}: {\n config: SanitizedConfig\n}): Promise<\n [TAdditionalClientTranslationKeys] extends [never]\n ? I18nClient\n : TAdditionalTranslations extends object\n ? I18nClient<TAdditionalTranslations, TAdditionalClientTranslationKeys>\n : I18nClient<ClientTranslationsObject, TAdditionalClientTranslationKeys>\n> => {\n return (await initI18n({\n config: config.i18n,\n context: 'client',\n language: getRequestLanguage({ config, cookies: cookies(), headers: headers() }),\n })) as any\n}\n"],"mappings":"AAGA,SAASA,QAAQ,QAAQ;AACzB,SAASC,OAAO,EAAEC,OAAO,QAAQ;AAEjC,SAASC,kBAAkB,QAAQ;AAEnC;;;;;AAKA,OAAO,MAAMC,kBAAA,GAAqB,MAAAA,CAIhC;EACAC;AAAM,CAGP;EAOC,OAAQ,MAAML,QAAA,CAAS;IACrBK,MAAA,EAAQA,MAAA,CAAOC,IAAI;IACnBC,OAAA,EAAS;IACTC,QAAA,EAAUL,kBAAA,CAAmB;MAAEE,MAAA;MAAQJ,OAAA,EAASA,OAAA;MAAWC,OAAA,EAASA,OAAA;IAAU;EAChF;AACF","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"headersWithCors.d.ts","sourceRoot":"","sources":["../../src/utilities/headersWithCors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,KAAK,QAAQ,GAAG;IACd,OAAO,EAAE,OAAO,CAAA;IAChB,GAAG,EAAE,OAAO,CAAC,cAAc,CAAC,CAAA;CAC7B,CAAA;AACD,eAAO,MAAM,eAAe,qBAAsB,QAAQ,KAAG,OAyC5D,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"headersWithCors.js","names":["headersWithCors","headers","req","cors","payload","config","requestOrigin","get","defaultAllowedHeaders","set","filter","Boolean","join","origins","Array","isArray","indexOf"],"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"file":"headersWithCors.js","names":["headersWithCors","headers","req","cors","payload","config","requestOrigin","get","defaultAllowedHeaders","set","filter","Boolean","join","origins","Array","isArray","indexOf"],"sources":["../../src/utilities/headersWithCors.ts"],"sourcesContent":["import type { PayloadRequest } from 'payload'\n\ntype CorsArgs = {\n headers: Headers\n req: Partial<PayloadRequest>\n}\nexport const headersWithCors = ({ headers, req }: CorsArgs): Headers => {\n const cors = req?.payload.config.cors\n const requestOrigin = req?.headers.get('Origin')\n\n if (cors) {\n const defaultAllowedHeaders = [\n 'Origin',\n 'X-Requested-With',\n 'Content-Type',\n 'Accept',\n 'Authorization',\n 'Content-Encoding',\n 'x-apollo-tracing',\n ]\n\n headers.set('Access-Control-Allow-Methods', 'PUT, PATCH, POST, GET, DELETE, OPTIONS')\n\n if (typeof cors === 'object' && 'headers' in cors) {\n headers.set(\n 'Access-Control-Allow-Headers',\n [...defaultAllowedHeaders, ...cors.headers].filter(Boolean).join(', '),\n )\n } else {\n headers.set('Access-Control-Allow-Headers', defaultAllowedHeaders.join(', '))\n }\n\n if (cors === '*' || (typeof cors === 'object' && 'origins' in cors && cors.origins === '*')) {\n headers.set('Access-Control-Allow-Origin', '*')\n } else if (\n (Array.isArray(cors) && cors.indexOf(requestOrigin) > -1) ||\n (!Array.isArray(cors) &&\n typeof cors === 'object' &&\n 'origins' in cors &&\n cors.origins.indexOf(requestOrigin) > -1)\n ) {\n headers.set('Access-Control-Allow-Credentials', 'true')\n headers.set('Access-Control-Allow-Origin', requestOrigin)\n }\n }\n\n return headers\n}\n"],"mappings":"AAMA,OAAO,MAAMA,eAAA,GAAkBA,CAAC;EAAEC,OAAO;EAAEC;AAAG,CAAY;EACxD,MAAMC,IAAA,GAAOD,GAAA,EAAKE,OAAA,CAAQC,MAAA,CAAOF,IAAA;EACjC,MAAMG,aAAA,GAAgBJ,GAAA,EAAKD,OAAA,CAAQM,GAAA,CAAI;EAEvC,IAAIJ,IAAA,EAAM;IACR,MAAMK,qBAAA,GAAwB,CAC5B,UACA,oBACA,gBACA,UACA,iBACA,oBACA,mBACD;IAEDP,OAAA,CAAQQ,GAAG,CAAC,gCAAgC;IAE5C,IAAI,OAAON,IAAA,KAAS,YAAY,aAAaA,IAAA,EAAM;MACjDF,OAAA,CAAQQ,GAAG,CACT,gCACA,C,GAAID,qBAAA,E,GAA0BL,IAAA,CAAKF,OAAO,CAAC,CAACS,MAAM,CAACC,OAAA,EAASC,IAAI,CAAC;IAErE,OAAO;MACLX,OAAA,CAAQQ,GAAG,CAAC,gCAAgCD,qBAAA,CAAsBI,IAAI,CAAC;IACzE;IAEA,IAAIT,IAAA,KAAS,OAAQ,OAAOA,IAAA,KAAS,YAAY,aAAaA,IAAA,IAAQA,IAAA,CAAKU,OAAO,KAAK,KAAM;MAC3FZ,OAAA,CAAQQ,GAAG,CAAC,+BAA+B;IAC7C,OAAO,IACLK,KAAC,CAAMC,OAAO,CAACZ,IAAA,KAASA,IAAA,CAAKa,OAAO,CAACV,aAAA,IAAiB,CAAC,KACtD,CAACQ,KAAA,CAAMC,OAAO,CAACZ,IAAA,KACd,OAAOA,IAAA,KAAS,YAChB,aAAaA,IAAA,IACbA,IAAA,CAAKU,OAAO,CAACG,OAAO,CAACV,aAAA,IAAiB,CAAC,GACzC;MACAL,OAAA,CAAQQ,GAAG,CAAC,oCAAoC;MAChDR,OAAA,CAAQQ,GAAG,CAAC,+BAA+BH,aAAA;IAC7C;EACF;EAEA,OAAOL,OAAA;AACT","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/CreateFirstUser/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,OAAO,KAAK,MAAM,OAAO,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/CreateFirstUser/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,SAAS,CAAA;AAE7C,OAAO,KAAK,MAAM,OAAO,CAAA;AAIzB,OAAO,cAAc,CAAA;AAErB,OAAO,EAAE,+BAA+B,EAAE,MAAM,WAAW,CAAA;AAE3D,eAAO,MAAM,mBAAmB,EAAE,KAAK,CAAC,EAAE,CAAC,cAAc,CAoCxD,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","getDocumentData","CreateFirstUserClient","generateCreateFirstUserMetadata","CreateFirstUserView","initPageResult","locale","req","payload","config","admin","user","userSlug","collectionConfig","collections","find","collection","slug","auth","authOptions","loginWithUsername","formState","schemaPath","_jsxs","className","_jsx","t","initialState"],"sources":["../../../src/views/CreateFirstUser/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload'\n\nimport React from 'react'\n\nimport
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","getDocumentData","CreateFirstUserClient","generateCreateFirstUserMetadata","CreateFirstUserView","initPageResult","locale","req","payload","config","admin","user","userSlug","collectionConfig","collections","find","collection","slug","auth","authOptions","loginWithUsername","formState","schemaPath","_jsxs","className","_jsx","t","initialState"],"sources":["../../../src/views/CreateFirstUser/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload'\n\nimport React from 'react'\n\nimport { getDocumentData } from '../Document/getDocumentData.js'\nimport { CreateFirstUserClient } from './index.client.js'\nimport './index.scss'\n\nexport { generateCreateFirstUserMetadata } from './meta.js'\n\nexport const CreateFirstUserView: React.FC<AdminViewProps> = async ({ initPageResult }) => {\n const {\n locale,\n req,\n req: {\n payload: {\n config: {\n admin: { user: userSlug },\n },\n config,\n },\n },\n } = initPageResult\n\n const collectionConfig = config.collections?.find((collection) => collection?.slug === userSlug)\n const { auth: authOptions } = collectionConfig\n const loginWithUsername = authOptions.loginWithUsername\n\n const { formState } = await getDocumentData({\n collectionConfig,\n locale,\n req,\n schemaPath: `_${collectionConfig.slug}.auth`,\n })\n\n return (\n <div className=\"create-first-user\">\n <h1>{req.t('general:welcome')}</h1>\n <p>{req.t('authentication:beginCreateFirstUser')}</p>\n <CreateFirstUserClient\n initialState={formState}\n loginWithUsername={loginWithUsername}\n userSlug={userSlug}\n />\n </div>\n )\n}\n"],"mappings":";AAEA,OAAOA,KAAA,MAAW;AAElB,SAASC,eAAe,QAAQ;AAChC,SAASC,qBAAqB,QAAQ;AAGtC,SAASC,+BAA+B,QAAQ;AAEhD,OAAO,MAAMC,mBAAA,GAAgD,MAAAA,CAAO;EAAEC;AAAc,CAAE;EACpF,MAAM;IACJC,MAAM;IACNC,GAAG;IACHA,GAAA,EAAK;MACHC,OAAA,EAAS;QACPC,MAAA,EAAQ;UACNC,KAAA,EAAO;YAAEC,IAAA,EAAMC;UAAQ;QAAE,CAC1B;QACDH;MAAM;IACP;EACF,CACF,GAAGJ,cAAA;EAEJ,MAAMQ,gBAAA,GAAmBJ,MAAA,CAAOK,WAAW,EAAEC,IAAA,CAAMC,UAAA,IAAeA,UAAA,EAAYC,IAAA,KAASL,QAAA;EACvF,MAAM;IAAEM,IAAA,EAAMC;EAAW,CAAE,GAAGN,gBAAA;EAC9B,MAAMO,iBAAA,GAAoBD,WAAA,CAAYC,iBAAiB;EAEvD,MAAM;IAAEC;EAAS,CAAE,GAAG,MAAMpB,eAAA,CAAgB;IAC1CY,gBAAA;IACAP,MAAA;IACAC,GAAA;IACAe,UAAA,EAAY,IAAIT,gBAAA,CAAiBI,IAAI;EACvC;EAEA,oBACEM,KAAA,CAAC;IAAIC,SAAA,EAAU;4BACbC,IAAA,CAAC;gBAAIlB,GAAA,CAAImB,CAAC,CAAC;qBACXD,IAAA,CAAC;gBAAGlB,GAAA,CAAImB,CAAC,CAAC;qBACVD,IAAA,CAACvB,qBAAA;MACCyB,YAAA,EAAcN,SAAA;MACdD,iBAAA,EAAmBA,iBAAA;MACnBR,QAAA,EAAUA;;;AAIlB","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/NotFound/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EACV,kBAAkB,EAClB,SAAS,EACT,2BAA2B,EAC3B,eAAe,EAChB,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/NotFound/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,0BAA0B,CAAA;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAA;AACpC,OAAO,KAAK,EACV,kBAAkB,EAClB,SAAS,EACT,2BAA2B,EAC3B,eAAe,EAChB,MAAM,SAAS,CAAA;AAGhB,OAAO,KAAK,MAAM,OAAO,CAAA;AAOzB,eAAO,MAAM,oBAAoB,+BAE9B;IACD,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,eAAe,CAAA;IAClD,MAAM,CAAC,EAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KAAE,CAAA;CAC9C,KAAG,OAAO,CAAC,QAAQ,CAUnB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,IAAI,EAAE;IACxC,MAAM,EAAE,eAAe,CAAA;IACvB,IAAI,EAAE,IAAI,CAAA;IACV,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,YAAY,gEAKtB;IACD,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,CAAA;IAChC,SAAS,EAAE,SAAS,CAAA;IACpB,MAAM,EAAE;QACN,QAAQ,EAAE,MAAM,EAAE,CAAA;KACnB,CAAA;IACD,YAAY,EAAE;QACZ,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,CAAA;KACjC,CAAA;CACF,+BA0BA,CAAA;AAED,eAAO,MAAM,YAAY,EAAE,2BAA2B,CAAC,kBAAkB,CAExE,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["formatAdminURL","React","DefaultTemplate","getNextRequestI18n","initPage","NotFoundClient","generatePageMetadata","config","configPromise","i18n","title","t","NotFoundPage","importMap","params","searchParams","routes","admin","adminRoute","initPageResult","redirectUnauthenticatedUser","route","path","_jsx","req","locale","payload","permissions","user","visibleEntities","NotFoundView","marginTop"],"sources":["../../../src/views/NotFound/index.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type {\n AdminViewComponent,\n ImportMap,\n PayloadServerReactComponent,\n SanitizedConfig,\n} from 'payload'\n\nimport {
|
|
1
|
+
{"version":3,"file":"index.js","names":["formatAdminURL","React","DefaultTemplate","getNextRequestI18n","initPage","NotFoundClient","generatePageMetadata","config","configPromise","i18n","title","t","NotFoundPage","importMap","params","searchParams","routes","admin","adminRoute","initPageResult","redirectUnauthenticatedUser","route","path","_jsx","req","locale","payload","permissions","user","visibleEntities","NotFoundView","marginTop"],"sources":["../../../src/views/NotFound/index.tsx"],"sourcesContent":["import type { I18n } from '@payloadcms/translations'\nimport type { Metadata } from 'next'\nimport type {\n AdminViewComponent,\n ImportMap,\n PayloadServerReactComponent,\n SanitizedConfig,\n} from 'payload'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport React from 'react'\n\nimport { DefaultTemplate } from '../../templates/Default/index.js'\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { initPage } from '../../utilities/initPage/index.js'\nimport { NotFoundClient } from './index.client.js'\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n}: {\n config: Promise<SanitizedConfig> | SanitizedConfig\n params?: { [key: string]: string | string[] }\n}): Promise<Metadata> => {\n const config = await configPromise\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n return {\n title: i18n.t('general:notFound'),\n }\n}\n\nexport type GenerateViewMetadata = (args: {\n config: SanitizedConfig\n i18n: I18n\n params?: { [key: string]: string | string[] }\n}) => Promise<Metadata>\n\nexport const NotFoundPage = async ({\n config: configPromise,\n importMap,\n params,\n searchParams,\n}: {\n config: Promise<SanitizedConfig>\n importMap: ImportMap\n params: {\n segments: string[]\n }\n searchParams: {\n [key: string]: string | string[]\n }\n}) => {\n const config = await configPromise\n const { routes: { admin: adminRoute } = {} } = config\n\n const initPageResult = await initPage({\n config,\n importMap,\n redirectUnauthenticatedUser: true,\n route: formatAdminURL({ adminRoute, path: '/not-found' }),\n searchParams,\n })\n\n return (\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 visibleEntities={initPageResult.visibleEntities}\n >\n <NotFoundClient />\n </DefaultTemplate>\n )\n}\n\nexport const NotFoundView: PayloadServerReactComponent<AdminViewComponent> = () => {\n return <NotFoundClient marginTop=\"large\" />\n}\n"],"mappings":";AASA,SAASA,cAAc,QAAQ;AAC/B,OAAOC,KAAA,MAAW;AAElB,SAASC,eAAe,QAAQ;AAChC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,QAAQ,QAAQ;AACzB,SAASC,cAAc,QAAQ;AAE/B,OAAO,MAAMC,oBAAA,GAAuB,MAAAA,CAAO;EACzCC,MAAA,EAAQC;AAAa,CAItB;EACC,MAAMD,MAAA,GAAS,MAAMC,aAAA;EAErB,MAAMC,IAAA,GAAO,MAAMN,kBAAA,CAAmB;IACpCI;EACF;EAEA,OAAO;IACLG,KAAA,EAAOD,IAAA,CAAKE,CAAC,CAAC;EAChB;AACF;AAQA,OAAO,MAAMC,YAAA,GAAe,MAAAA,CAAO;EACjCL,MAAA,EAAQC,aAAa;EACrBK,SAAS;EACTC,MAAM;EACNC;AAAY,CAUb;EACC,MAAMR,MAAA,GAAS,MAAMC,aAAA;EACrB,MAAM;IAAEQ,MAAA,EAAQ;MAAEC,KAAA,EAAOC;IAAU,CAAE,GAAG,CAAC;EAAC,CAAE,GAAGX,MAAA;EAE/C,MAAMY,cAAA,GAAiB,MAAMf,QAAA,CAAS;IACpCG,MAAA;IACAM,SAAA;IACAO,2BAAA,EAA6B;IAC7BC,KAAA,EAAOrB,cAAA,CAAe;MAAEkB,UAAA;MAAYI,IAAA,EAAM;IAAa;IACvDP;EACF;EAEA,oBACEQ,IAAA,CAACrB,eAAA;IACCO,IAAA,EAAMU,cAAA,CAAeK,GAAG,CAACf,IAAI;IAC7BgB,MAAA,EAAQN,cAAA,CAAeM,MAAM;IAC7BX,MAAA,EAAQA,MAAA;IACRY,OAAA,EAASP,cAAA,CAAeK,GAAG,CAACE,OAAO;IACnCC,WAAA,EAAaR,cAAA,CAAeQ,WAAW;IACvCZ,YAAA,EAAcA,YAAA;IACda,IAAA,EAAMT,cAAA,CAAeK,GAAG,CAACI,IAAI;IAC7BC,eAAA,EAAiBV,cAAA,CAAeU,eAAe;cAE/C,aAAAN,IAAA,CAAClB,cAAA;;AAGP;AAEA,OAAO,MAAMyB,YAAA,GAAgEA,CAAA;EAC3E,oBAAOP,IAAA,CAAClB,cAAA;IAAe0B,SAAA,EAAU;;AACnC","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["formatAdminURL","redirect","React","Logo","verifyBaseClass","generateVerifyMetadata","Verify","initPageResult","params","searchParams","collectionSlug","verify","token","segments","locale","permissions","req","i18n","payload","config","user","routes","admin","adminRoute","textToRender","verifyEmail","collection","path","e","status","t","_jsxs","Fragment","_jsx","className"],"sources":["../../../src/views/Verify/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport { redirect } from 'next/navigation.js'\nimport React from 'react'\n\nimport { Logo } from '../../elements/Logo/index.js'\nimport './index.scss'\n\nexport const verifyBaseClass = 'verify'\n\nexport { generateVerifyMetadata } from './meta.js'\n\nexport const Verify: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n // /:collectionSlug/verify/:token\n
|
|
1
|
+
{"version":3,"file":"index.js","names":["formatAdminURL","redirect","React","Logo","verifyBaseClass","generateVerifyMetadata","Verify","initPageResult","params","searchParams","collectionSlug","verify","token","segments","locale","permissions","req","i18n","payload","config","user","routes","admin","adminRoute","textToRender","verifyEmail","collection","path","e","status","t","_jsxs","Fragment","_jsx","className"],"sources":["../../../src/views/Verify/index.tsx"],"sourcesContent":["import type { AdminViewProps } from 'payload'\n\nimport { formatAdminURL } from '@payloadcms/ui/shared'\nimport { redirect } from 'next/navigation.js'\nimport React from 'react'\n\nimport { Logo } from '../../elements/Logo/index.js'\nimport './index.scss'\n\nexport const verifyBaseClass = 'verify'\n\nexport { generateVerifyMetadata } from './meta.js'\n\nexport const Verify: React.FC<AdminViewProps> = async ({\n initPageResult,\n params,\n searchParams,\n}) => {\n // /:collectionSlug/verify/:token\n\n const [collectionSlug, verify, token] = params.segments\n const { locale, permissions, req } = initPageResult\n\n const {\n i18n,\n payload: { config },\n payload,\n user,\n } = req\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n let textToRender\n\n try {\n await req.payload.verifyEmail({\n collection: collectionSlug,\n token,\n })\n\n return redirect(formatAdminURL({ adminRoute, path: '/login' }))\n } catch (e) {\n // already verified\n if (e?.status === 202) {\n redirect(formatAdminURL({ adminRoute, path: '/login' }))\n }\n textToRender = req.t('authentication:unableToVerify')\n }\n\n return (\n <React.Fragment>\n <div className={`${verifyBaseClass}__brand`}>\n <Logo\n i18n={i18n}\n locale={locale}\n params={params}\n payload={payload}\n permissions={permissions}\n searchParams={searchParams}\n user={user}\n />\n </div>\n <h2>{textToRender}</h2>\n </React.Fragment>\n )\n}\n"],"mappings":";AAEA,SAASA,cAAc,QAAQ;AAC/B,SAASC,QAAQ,QAAQ;AACzB,OAAOC,KAAA,MAAW;AAElB,SAASC,IAAI,QAAQ;AAGrB,OAAO,MAAMC,eAAA,GAAkB;AAE/B,SAASC,sBAAsB,QAAQ;AAEvC,OAAO,MAAMC,MAAA,GAAmC,MAAAA,CAAO;EACrDC,cAAc;EACdC,MAAM;EACNC;AAAY,CACb;EACC;EAEA,MAAM,CAACC,cAAA,EAAgBC,MAAA,EAAQC,KAAA,CAAM,GAAGJ,MAAA,CAAOK,QAAQ;EACvD,MAAM;IAAEC,MAAM;IAAEC,WAAW;IAAEC;EAAG,CAAE,GAAGT,cAAA;EAErC,MAAM;IACJU,IAAI;IACJC,OAAA,EAAS;MAAEC;IAAM,CAAE;IACnBD,OAAO;IACPE;EAAI,CACL,GAAGJ,GAAA;EAEJ,MAAM;IACJK,MAAA,EAAQ;MAAEC,KAAA,EAAOC;IAAU;EAAE,CAC9B,GAAGJ,MAAA;EAEJ,IAAIK,YAAA;EAEJ,IAAI;IACF,MAAMR,GAAA,CAAIE,OAAO,CAACO,WAAW,CAAC;MAC5BC,UAAA,EAAYhB,cAAA;MACZE;IACF;IAEA,OAAOX,QAAA,CAASD,cAAA,CAAe;MAAEuB,UAAA;MAAYI,IAAA,EAAM;IAAS;EAC9D,EAAE,OAAOC,CAAA,EAAG;IACV;IACA,IAAIA,CAAA,EAAGC,MAAA,KAAW,KAAK;MACrB5B,QAAA,CAASD,cAAA,CAAe;QAAEuB,UAAA;QAAYI,IAAA,EAAM;MAAS;IACvD;IACAH,YAAA,GAAeR,GAAA,CAAIc,CAAC,CAAC;EACvB;EAEA,oBACEC,KAAA,CAAC7B,KAAA,CAAM8B,QAAQ;4BACbC,IAAA,CAAC;MAAIC,SAAA,EAAW,GAAG9B,eAAA,SAAwB;gBACzC,aAAA6B,IAAA,CAAC9B,IAAA;QACCc,IAAA,EAAMA,IAAA;QACNH,MAAA,EAAQA,MAAA;QACRN,MAAA,EAAQA,MAAA;QACRU,OAAA,EAASA,OAAA;QACTH,WAAA,EAAaA,WAAA;QACbN,YAAA,EAAcA,YAAA;QACdW,IAAA,EAAMA;;qBAGVa,IAAA,CAAC;gBAAIT;;;AAGX","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,MAAM,OAAO,CAAA;AAGzB,OAAO,KAAK,EAAkB,KAAK,EAAE,MAAM,YAAY,CAAA;AAIvD,OAAO,cAAc,CAAA;AAIrB,QAAA,MAAM,kBAAkB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAkIvC,CAAA;AAED,eAAe,kBAAkB,CAAA"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["fieldAffectsData","React","diffMethods","Nested","baseClass","RenderFieldsToDiff","comparison","diffComponents","__diffComponents","fieldPermissions","fields","i18n","locales","version","_jsx","className","map","field","i","name","Component","type","isRichText","diffMethod","fieldName","valueIsObject","versionValue","JSON","stringify","comparisonValue","hasPermission","read","permission","subFieldPermissions","baseCellProps","localized","locale","index","versionLocaleValue","comparisonLocaleValue","cellProps","join","Tabs","tabs","disableGutter","permissions"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"sourcesContent":["'use client'\nimport type { DiffMethod } from 'react-diff-viewer-continued'\n\nimport {
|
|
1
|
+
{"version":3,"file":"index.js","names":["fieldAffectsData","React","diffMethods","Nested","baseClass","RenderFieldsToDiff","comparison","diffComponents","__diffComponents","fieldPermissions","fields","i18n","locales","version","_jsx","className","map","field","i","name","Component","type","isRichText","diffMethod","fieldName","valueIsObject","versionValue","JSON","stringify","comparisonValue","hasPermission","read","permission","subFieldPermissions","baseCellProps","localized","locale","index","versionLocaleValue","comparisonLocaleValue","cellProps","join","Tabs","tabs","disableGutter","permissions"],"sources":["../../../../src/views/Version/RenderFieldsToDiff/index.tsx"],"sourcesContent":["'use client'\nimport type { DiffMethod } from 'react-diff-viewer-continued'\n\nimport { fieldAffectsData } from 'payload/shared'\nimport React from 'react'\n\nimport type { diffComponents as _diffComponents } from './fields/index.js'\nimport type { FieldDiffProps, Props } from './types.js'\n\nimport { diffMethods } from './fields/diffMethods.js'\nimport Nested from './fields/Nested/index.js'\nimport './index.scss'\n\nconst baseClass = 'render-field-diffs'\n\nconst RenderFieldsToDiff: React.FC<Props> = ({\n comparison,\n diffComponents: __diffComponents,\n fieldPermissions,\n fields,\n i18n,\n locales,\n version,\n}) => {\n // typing it as `as typeof _diffComponents` here ensures the TField generics of DiffComponentProps are respected.\n // Without it, you could pass a UI field to the Tabs component, without it erroring\n const diffComponents: typeof _diffComponents = __diffComponents as typeof _diffComponents\n return (\n <div className={baseClass}>\n {fields?.map((field, i) => {\n if ('name' in field && field.name === 'id') {\n return null\n }\n\n const Component = diffComponents[field.type]\n\n const isRichText = field.type === 'richText'\n const diffMethod: DiffMethod = diffMethods[field.type] || 'CHARS'\n\n if (Component) {\n if (fieldAffectsData(field)) {\n const fieldName = field.name\n const valueIsObject = field.type === 'code' || field.type === 'json'\n\n const versionValue = valueIsObject\n ? JSON.stringify(version?.[fieldName])\n : version?.[fieldName]\n\n const comparisonValue = valueIsObject\n ? JSON.stringify(comparison?.[fieldName])\n : comparison?.[fieldName]\n\n const hasPermission = fieldPermissions?.[fieldName]?.read?.permission\n\n const subFieldPermissions = fieldPermissions?.[fieldName]?.fields\n\n if (hasPermission === false) {\n return null\n }\n\n const baseCellProps: FieldDiffProps = {\n comparison: comparisonValue,\n diffComponents,\n diffMethod,\n field,\n fieldPermissions: subFieldPermissions,\n fields: 'fields' in field ? field?.fields : fields,\n i18n,\n isRichText,\n locales,\n version: versionValue,\n }\n\n if (field.localized) {\n return (\n <div className={`${baseClass}__field`} key={i}>\n {locales.map((locale, index) => {\n const versionLocaleValue = versionValue?.[locale]\n const comparisonLocaleValue = comparisonValue?.[locale]\n\n const cellProps = {\n ...baseCellProps,\n comparison: comparisonLocaleValue,\n version: versionLocaleValue,\n }\n\n return (\n <div className={`${baseClass}__locale`} key={[locale, index].join('-')}>\n <div className={`${baseClass}__locale-value`}>\n <Component {...cellProps} locale={locale} />\n </div>\n </div>\n )\n })}\n </div>\n )\n }\n\n return (\n <div className={`${baseClass}__field`} key={i}>\n <Component {...baseCellProps} />\n </div>\n )\n }\n\n if (field.type === 'tabs' && 'tabs' in field) {\n const Tabs = diffComponents.tabs\n\n return (\n <Tabs\n comparison={comparison}\n diffComponents={diffComponents}\n field={field}\n fields={[]}\n i18n={i18n}\n key={i}\n locales={locales}\n version={version}\n />\n )\n }\n\n // At this point, we are dealing with a `row`, etc\n if ('fields' in field) {\n return (\n <Nested\n comparison={comparison}\n diffComponents={diffComponents}\n disableGutter\n field={field}\n fields={field.fields}\n i18n={i18n}\n key={i}\n locales={locales}\n permissions={fieldPermissions}\n version={version}\n />\n )\n }\n }\n\n return null\n })}\n </div>\n )\n}\n\nexport default RenderFieldsToDiff\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/views/Version/Restore/index.tsx"],"names":[],"mappings":"AAeA,OAAO,KAA0C,MAAM,OAAO,CAAA;AAG9D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAA;AAGvC,OAAO,cAAc,CAAA;AAKrB,QAAA,MAAM,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAoH5B,CAAA;AAED,eAAe,OAAO,CAAA"}
|
|
@@ -22,6 +22,7 @@ const Restore = ({
|
|
|
22
22
|
}) => {
|
|
23
23
|
const {
|
|
24
24
|
config: {
|
|
25
|
+
collections,
|
|
25
26
|
routes: {
|
|
26
27
|
admin: adminRoute,
|
|
27
28
|
api: apiRoute
|
|
@@ -29,6 +30,7 @@ const Restore = ({
|
|
|
29
30
|
serverURL
|
|
30
31
|
}
|
|
31
32
|
} = useConfig();
|
|
33
|
+
const collectionConfig = collections.find(collection => collection.slug === collectionSlug);
|
|
32
34
|
const {
|
|
33
35
|
toggleModal
|
|
34
36
|
} = useModal();
|
|
@@ -45,7 +47,7 @@ const Restore = ({
|
|
|
45
47
|
});
|
|
46
48
|
let fetchURL = `${serverURL}${apiRoute}`;
|
|
47
49
|
let redirectURL;
|
|
48
|
-
const canRestoreAsDraft = status !== 'draft';
|
|
50
|
+
const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts;
|
|
49
51
|
if (collectionSlug) {
|
|
50
52
|
fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`;
|
|
51
53
|
redirectURL = formatAdminURL({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","Button","ChevronIcon","Modal","Pill","Popup","PopupList","useConfig","useModal","useTranslation","formatAdminURL","requests","useRouter","React","Fragment","useCallback","useState","toast","MinimalTemplate","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","config","routes","admin","adminRoute","api","apiRoute","serverURL","toggleModal","processing","setProcessing","router","i18n","t","draft","setDraft","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","path","handleRestore","res","post","headers","language","json","success","message","push","error","_jsxs","filter","Boolean","join","_jsx","onClick","button","caret","render","ButtonGroup","size","verticalAlign","
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","Button","ChevronIcon","Modal","Pill","Popup","PopupList","useConfig","useModal","useTranslation","formatAdminURL","requests","useRouter","React","Fragment","useCallback","useState","toast","MinimalTemplate","baseClass","modalSlug","Restore","className","collectionSlug","globalSlug","label","originalDocID","status","versionDate","versionID","config","collections","routes","admin","adminRoute","api","apiRoute","serverURL","collectionConfig","find","collection","slug","toggleModal","processing","setProcessing","router","i18n","t","draft","setDraft","restoreMessage","fetchURL","redirectURL","canRestoreAsDraft","versions","drafts","path","handleRestore","res","post","headers","language","json","success","message","push","error","_jsxs","filter","Boolean","join","_jsx","onClick","button","caret","render","ButtonGroup","size","verticalAlign","buttonStyle","undefined","type"],"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ChevronIcon,\n Modal,\n Pill,\n Popup,\n PopupList,\n useConfig,\n useModal,\n useTranslation,\n} from '@payloadcms/ui'\nimport { formatAdminURL, requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport React, { Fragment, useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { Props } from './types.js'\n\nimport { MinimalTemplate } from '../../../templates/Minimal/index.js'\nimport './index.scss'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\nconst Restore: React.FC<Props> = ({\n className,\n collectionSlug,\n globalSlug,\n label,\n originalDocID,\n status,\n versionDate,\n versionID,\n}) => {\n const {\n config: {\n collections,\n routes: { admin: adminRoute, api: apiRoute },\n serverURL,\n },\n } = useConfig()\n\n const collectionConfig = collections.find((collection) => collection.slug === collectionSlug)\n\n const { toggleModal } = useModal()\n const [processing, setProcessing] = useState(false)\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n\n const restoreMessage = t('version:aboutToRestoreGlobal', {\n label: getTranslation(label, i18n),\n versionDate,\n })\n\n let fetchURL = `${serverURL}${apiRoute}`\n let redirectURL: string\n\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\n\n if (collectionSlug) {\n fetchURL = `${fetchURL}/${collectionSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/${originalDocID}`,\n })\n }\n\n if (globalSlug) {\n fetchURL = `${fetchURL}/globals/${globalSlug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalSlug}`,\n })\n }\n\n const handleRestore = useCallback(async () => {\n setProcessing(true)\n\n const res = await requests.post(fetchURL, {\n headers: {\n 'Accept-Language': i18n.language,\n },\n })\n\n if (res.status === 200) {\n const json = await res.json()\n toast.success(json.message)\n router.push(redirectURL)\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [fetchURL, redirectURL, t, i18n, router])\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Pill\n className={[canRestoreAsDraft && `${baseClass}__button`].filter(Boolean).join(' ')}\n onClick={() => toggleModal(modalSlug)}\n >\n {t('version:restoreThisVersion')}\n </Pill>\n {canRestoreAsDraft && (\n <Popup\n button={\n <Pill className={`${baseClass}__chevron`}>\n <ChevronIcon />\n </Pill>\n }\n caret={false}\n render={() => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )}\n size=\"large\"\n verticalAlign=\"bottom\"\n />\n )}\n </div>\n <Modal className={`${baseClass}__modal`} slug={modalSlug}>\n <MinimalTemplate className={`${baseClass}__modal-template`}>\n <h1>{t('version:confirmVersionRestoration')}</h1>\n <p>{restoreMessage}</p>\n <Button\n buttonStyle=\"secondary\"\n onClick={processing ? undefined : () => toggleModal(modalSlug)}\n type=\"button\"\n >\n {t('general:cancel')}\n </Button>\n <Button onClick={processing ? undefined : () => void handleRestore()}>\n {processing ? t('version:restoring') : t('general:confirm')}\n </Button>\n </MinimalTemplate>\n </Modal>\n </Fragment>\n )\n}\n\nexport default Restore\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.0.0-beta.
|
|
3
|
+
"version": "3.0.0-beta.99",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -63,9 +63,9 @@
|
|
|
63
63
|
"sonner": "^1.5.0",
|
|
64
64
|
"uuid": "10.0.0",
|
|
65
65
|
"ws": "^8.16.0",
|
|
66
|
-
"@payloadcms/
|
|
67
|
-
"@payloadcms/
|
|
68
|
-
"@payloadcms/ui": "3.0.0-beta.
|
|
66
|
+
"@payloadcms/graphql": "3.0.0-beta.99",
|
|
67
|
+
"@payloadcms/translations": "3.0.0-beta.99",
|
|
68
|
+
"@payloadcms/ui": "3.0.0-beta.99"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@babel/cli": "^7.24.5",
|
|
@@ -84,13 +84,13 @@
|
|
|
84
84
|
"esbuild-sass-plugin": "3.3.1",
|
|
85
85
|
"eslint-plugin-react-compiler": "0.0.0-experimental-72f06b2-20240822",
|
|
86
86
|
"swc-plugin-transform-remove-imports": "1.15.0",
|
|
87
|
-
"@payloadcms/eslint-config": "3.0.0-beta.
|
|
88
|
-
"payload": "3.0.0-beta.
|
|
87
|
+
"@payloadcms/eslint-config": "3.0.0-beta.97",
|
|
88
|
+
"payload": "3.0.0-beta.99"
|
|
89
89
|
},
|
|
90
90
|
"peerDependencies": {
|
|
91
91
|
"graphql": "^16.8.1",
|
|
92
92
|
"next": "^15.0.0-canary.104",
|
|
93
|
-
"payload": "3.0.0-beta.
|
|
93
|
+
"payload": "3.0.0-beta.99"
|
|
94
94
|
},
|
|
95
95
|
"engines": {
|
|
96
96
|
"node": "^18.20.2 || >=20.9.0"
|