@payloadcms/next 3.0.0-canary.b6520aa → 3.0.0-canary.b922438
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/DocumentHeader/Tabs/index.scss +0 -1
- package/dist/elements/DocumentHeader/index.scss +0 -2
- package/dist/elements/LeaveWithoutSaving/index.scss +1 -0
- package/dist/elements/Nav/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/index.client.js +7 -8
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.scss +17 -14
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +16 -1
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/scss/app.scss +5 -5
- package/dist/scss/type.scss +1 -0
- package/dist/views/API/index.scss +1 -2
- package/dist/views/Account/index.client.d.ts +3 -0
- package/dist/views/Account/index.client.d.ts.map +1 -0
- package/dist/views/Account/index.client.js +21 -0
- package/dist/views/Account/index.client.js.map +1 -0
- package/dist/views/Account/index.d.ts.map +1 -1
- package/dist/views/Account/index.js +33 -29
- package/dist/views/Account/index.js.map +1 -1
- package/dist/views/Dashboard/index.js +3 -4
- package/dist/views/Dashboard/index.js.map +1 -1
- package/dist/views/Document/index.d.ts.map +1 -1
- package/dist/views/Document/index.js +3 -5
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.d.ts +2 -2
- package/dist/views/Edit/Default/Auth/APIKey.d.ts.map +1 -1
- package/dist/views/Edit/Default/Auth/APIKey.js +35 -8
- package/dist/views/Edit/Default/Auth/APIKey.js.map +1 -1
- package/dist/views/Edit/Default/index.d.ts.map +1 -1
- package/dist/views/Edit/Default/index.js +4 -2
- package/dist/views/Edit/Default/index.js.map +1 -1
- package/dist/views/List/Default/index.d.ts.map +1 -1
- package/dist/views/List/Default/index.js +28 -30
- package/dist/views/List/Default/index.js.map +1 -1
- package/dist/views/List/Default/index.scss +5 -12
- package/dist/views/List/index.js +3 -4
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/NotFound/index.d.ts.map +1 -1
- package/dist/views/NotFound/index.js +12 -21
- package/dist/views/NotFound/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Relationship/index.js.map +1 -1
- package/dist/views/Version/index.d.ts +1 -1
- package/dist/views/Version/index.d.ts.map +1 -1
- package/dist/views/Version/index.js +32 -5
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Versions/getLatestVersion.d.ts +13 -4
- package/dist/views/Versions/getLatestVersion.d.ts.map +1 -1
- package/dist/views/Versions/getLatestVersion.js +6 -1
- package/dist/views/Versions/getLatestVersion.js.map +1 -1
- package/dist/views/Versions/index.d.ts.map +1 -1
- package/dist/views/Versions/index.js +24 -4
- package/dist/views/Versions/index.js.map +1 -1
- package/package.json +6 -6
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Version/index.tsx"],"sourcesContent":["import { notFound } from 'next/navigation.js'\nimport {\n type CollectionPermission,\n type Document,\n type EditViewComponent,\n type GlobalPermission,\n type OptionObject,\n deepCopyObjectSimple,\n} from 'payload'\nimport React from 'react'\n\nimport { getLatestVersion } from '../Versions/getLatestVersion.js'\nimport { DefaultVersionView } from './Default/index.js'\n\nexport const VersionView: EditViewComponent = async (props) => {\n const { initPageResult, routeSegments } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n permissions,\n req,\n req: { payload, payload: { config } = {}, user } = {},\n } = initPageResult\n\n const versionID = routeSegments[routeSegments.length - 1]\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n\n const { localization } = config\n\n let docPermissions: CollectionPermission | GlobalPermission\n let slug: string\n\n let doc: Document\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n // /collections/:slug/:id/versions/:versionID\n slug = collectionSlug\n docPermissions = permissions.collections[collectionSlug]\n\n try {\n doc = await payload.findVersionByID({\n id: versionID,\n collection: slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'collection',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'collection',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n if (globalSlug) {\n // /globals/:slug/versions/:versionID\n slug = globalSlug\n docPermissions = permissions.globals[globalSlug]\n\n try {\n doc = await payload.findGlobalVersionByID({\n id: versionID,\n slug,\n depth: 1,\n locale: '*',\n overrideAccess: false,\n req,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug,\n type: 'global',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n return notFound()\n }\n }\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const localeOptions: OptionObject[] =\n localization &&\n localization.locales.map(({ code, label }) => ({\n label,\n value: code,\n }))\n\n const latestVersion =\n latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n ? latestPublishedVersion\n : latestDraftVersion\n\n if (!doc) {\n return notFound()\n }\n\n return (\n <DefaultVersionView\n doc={doc}\n /**\n * After bumping the Next.js canary to 104, and React to 19.0.0-rc-06d0b89e-20240801\" we have to deepCopy the permissions object (https://github.com/payloadcms/payload/pull/7541).\n * If both HydrateClientUser and RenderCustomComponent receive the same permissions object (same object reference), we get a\n * \"TypeError: Cannot read properties of undefined (reading '$$typeof')\" error\n *\n * // TODO: Revisit this in the future and figure out why this is happening. Might be a React/Next.js bug. We don't know why it happens, and a future React/Next version might unbreak this (keep an eye on this and remove deepCopyObjectSimple if that's the case)\n */\n docPermissions={deepCopyObjectSimple(docPermissions)}\n initialComparisonDoc={latestVersion}\n latestDraftVersion={latestDraftVersion?.id}\n latestPublishedVersion={latestPublishedVersion?.id}\n localeOptions={localeOptions}\n versionID={versionID}\n />\n )\n}\n"],"names":["notFound","deepCopyObjectSimple","React","getLatestVersion","DefaultVersionView","VersionView","props","initPageResult","routeSegments","collectionConfig","docID","id","globalConfig","permissions","req","payload","config","user","versionID","length","collectionSlug","slug","globalSlug","localization","docPermissions","doc","latestPublishedVersion","latestDraftVersion","collections","findVersionByID","collection","depth","locale","overrideAccess","versions","drafts","type","status","error","globals","findGlobalVersionByID","publishedNewerThanDraft","updatedAt","localeOptions","locales","map","code","label","value","latestVersion","initialComparisonDoc"],"mappings":";AAAA,SAASA,QAAQ,QAAQ,qBAAoB;AAC7C,SAMEC,oBAAoB,QACf,UAAS;AAChB,OAAOC,WAAW,QAAO;AAEzB,SAASC,gBAAgB,QAAQ,kCAAiC;AAClE,SAASC,kBAAkB,QAAQ,qBAAoB;AAEvD,OAAO,MAAMC,cAAiC,OAAOC;IACnD,MAAM,EAAEC,cAAc,EAAEC,aAAa,EAAE,GAAGF;IAE1C,MAAM,EACJG,gBAAgB,EAChBC,OAAOC,EAAE,EACTC,YAAY,EACZC,WAAW,EACXC,GAAG,EACHA,KAAK,EAAEC,OAAO,EAAEA,SAAS,EAAEC,MAAM,EAAE,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAE,GAAG,CAAC,CAAC,EACtD,GAAGV;IAEJ,MAAMW,YAAYV,aAAa,CAACA,cAAcW,MAAM,GAAG,EAAE;IAEzD,MAAMC,iBAAiBX,kBAAkBY;IACzC,MAAMC,aAAaV,cAAcS;IAEjC,MAAM,EAAEE,YAAY,EAAE,GAAGP;IAEzB,IAAIQ;IACJ,IAAIH;IAEJ,IAAII;IACJ,IAAIC,yBAAyB;IAC7B,IAAIC,qBAAqB;IAEzB,IAAIP,gBAAgB;QAClB,6CAA6C;QAC7CC,OAAOD;QACPI,iBAAiBX,YAAYe,WAAW,CAACR,eAAe;QAExD,IAAI;YACFK,MAAM,MAAMV,QAAQc,eAAe,CAAC;gBAClClB,IAAIO;gBACJY,YAAYT;gBACZU,OAAO;gBACPC,QAAQ;gBACRC,gBAAgB;gBAChBnB;gBACAG;YACF;YAEA,IAAIR,kBAAkByB,UAAUC,QAAQ;gBACtCR,qBAAqB,MAAMxB,iBAAiB;oBAC1CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;gBACAX,yBAAyB,MAAMvB,iBAAiB;oBAC9CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;YACF;QACF,EAAE,OAAOC,OAAO;YACd,OAAOtC;QACT;IACF;IAEA,IAAIsB,YAAY;QACd,qCAAqC;QACrCD,OAAOC;QACPE,iBAAiBX,YAAY0B,OAAO,CAACjB,WAAW;QAEhD,IAAI;YACFG,MAAM,MAAMV,QAAQyB,qBAAqB,CAAC;gBACxC7B,IAAIO;gBACJG;gBACAU,OAAO;gBACPC,QAAQ;gBACRC,gBAAgB;gBAChBnB;gBACAG;YACF;YAEA,IAAIL,cAAcsB,UAAUC,QAAQ;gBAClCR,qBAAqB,MAAMxB,iBAAiB;oBAC1CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;gBACAX,yBAAyB,MAAMvB,iBAAiB;oBAC9CkB;oBACAe,MAAM;oBACNrB;oBACAsB,QAAQ;gBACV;YACF;QACF,EAAE,OAAOC,OAAO;YACd,OAAOtC;QACT;IACF;IAEA,MAAMyC,0BAA0Bf,wBAAwBgB,YAAYf,oBAAoBe;IAExF,IAAID,yBAAyB;QAC3Bd,qBAAqB;YACnBhB,IAAI;YACJ+B,WAAW;QACb;IACF;IAEA,MAAMC,gBACJpB,gBACAA,aAAaqB,OAAO,CAACC,GAAG,CAAC,CAAC,EAAEC,IAAI,EAAEC,KAAK,EAAE,GAAM,CAAA;YAC7CA;YACAC,OAAOF;QACT,CAAA;IAEF,MAAMG,gBACJvB,wBAAwBgB,YAAYf,oBAAoBe,YACpDhB,yBACAC;IAEN,IAAI,CAACF,KAAK;QACR,OAAOzB;IACT;IAEA,qBACE,KAACI;QACCqB,KAAKA;QACL;;;;;;OAMC,GACDD,gBAAgBvB,qBAAqBuB;QACrC0B,sBAAsBD;QACtBtB,oBAAoBA,oBAAoBhB;QACxCe,wBAAwBA,wBAAwBf;QAChDgC,eAAeA;QACfzB,WAAWA;;AAGjB,EAAC"}
|
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
import type { Payload } from 'payload';
|
|
2
|
+
type ReturnType = {
|
|
3
|
+
id: string;
|
|
4
|
+
updatedAt: string;
|
|
5
|
+
} | null;
|
|
6
|
+
type Args = {
|
|
7
|
+
payload: Payload;
|
|
8
|
+
slug: string;
|
|
9
|
+
status: 'draft' | 'published';
|
|
10
|
+
type: 'collection' | 'global';
|
|
11
|
+
};
|
|
12
|
+
export declare function getLatestVersion(args: Args): Promise<ReturnType>;
|
|
13
|
+
export {};
|
|
5
14
|
//# sourceMappingURL=getLatestVersion.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getLatestVersion.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/getLatestVersion.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"getLatestVersion.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/getLatestVersion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAA;AAEtC,KAAK,UAAU,GAAG;IAChB,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,IAAI,CAAA;AAER,KAAK,IAAI,GAAG;IACV,OAAO,EAAE,OAAO,CAAA;IAChB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,GAAG,WAAW,CAAA;IAC7B,IAAI,EAAE,YAAY,GAAG,QAAQ,CAAA;CAC9B,CAAA;AACD,wBAAsB,gBAAgB,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC,CAsCtE"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
export async function getLatestVersion(
|
|
1
|
+
export async function getLatestVersion(args) {
|
|
2
|
+
const { slug, type = 'collection', payload, status } = args;
|
|
2
3
|
try {
|
|
3
4
|
const sharedOptions = {
|
|
4
5
|
depth: 0,
|
|
@@ -17,12 +18,16 @@ export async function getLatestVersion(payload, slug, status, type = 'collection
|
|
|
17
18
|
slug,
|
|
18
19
|
...sharedOptions
|
|
19
20
|
});
|
|
21
|
+
if (!response.docs.length) {
|
|
22
|
+
return null;
|
|
23
|
+
}
|
|
20
24
|
return {
|
|
21
25
|
id: response.docs[0].id,
|
|
22
26
|
updatedAt: response.docs[0].updatedAt
|
|
23
27
|
};
|
|
24
28
|
} catch (e) {
|
|
25
29
|
console.error(e);
|
|
30
|
+
return null;
|
|
26
31
|
}
|
|
27
32
|
}
|
|
28
33
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Versions/getLatestVersion.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Versions/getLatestVersion.ts"],"sourcesContent":["import type { Payload } from 'payload'\n\ntype ReturnType = {\n id: string\n updatedAt: string\n} | null\n\ntype Args = {\n payload: Payload\n slug: string\n status: 'draft' | 'published'\n type: 'collection' | 'global'\n}\nexport async function getLatestVersion(args: Args): Promise<ReturnType> {\n const { slug, type = 'collection', payload, status } = args\n\n try {\n const sharedOptions = {\n depth: 0,\n limit: 1,\n sort: '-updatedAt',\n where: {\n 'version._status': {\n equals: status,\n },\n },\n }\n\n const response =\n type === 'collection'\n ? await payload.findVersions({\n collection: slug,\n ...sharedOptions,\n })\n : await payload.findGlobalVersions({\n slug,\n ...sharedOptions,\n })\n\n if (!response.docs.length) {\n return null\n }\n\n return {\n id: response.docs[0].id,\n updatedAt: response.docs[0].updatedAt,\n }\n } catch (e) {\n console.error(e)\n return null\n }\n}\n"],"names":["getLatestVersion","args","slug","type","payload","status","sharedOptions","depth","limit","sort","where","equals","response","findVersions","collection","findGlobalVersions","docs","length","id","updatedAt","e","console","error"],"mappings":"AAaA,OAAO,eAAeA,iBAAiBC,IAAU;IAC/C,MAAM,EAAEC,IAAI,EAAEC,OAAO,YAAY,EAAEC,OAAO,EAAEC,MAAM,EAAE,GAAGJ;IAEvD,IAAI;QACF,MAAMK,gBAAgB;YACpBC,OAAO;YACPC,OAAO;YACPC,MAAM;YACNC,OAAO;gBACL,mBAAmB;oBACjBC,QAAQN;gBACV;YACF;QACF;QAEA,MAAMO,WACJT,SAAS,eACL,MAAMC,QAAQS,YAAY,CAAC;YACzBC,YAAYZ;YACZ,GAAGI,aAAa;QAClB,KACA,MAAMF,QAAQW,kBAAkB,CAAC;YAC/Bb;YACA,GAAGI,aAAa;QAClB;QAEN,IAAI,CAACM,SAASI,IAAI,CAACC,MAAM,EAAE;YACzB,OAAO;QACT;QAEA,OAAO;YACLC,IAAIN,SAASI,IAAI,CAAC,EAAE,CAACE,EAAE;YACvBC,WAAWP,SAASI,IAAI,CAAC,EAAE,CAACG,SAAS;QACvC;IACF,EAAE,OAAOC,GAAG;QACVC,QAAQC,KAAK,CAACF;QACd,OAAO;IACT;AACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,SAAS,CAAA;AAW/D,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,aAAa,CAAA;AAEnC,eAAO,MAAM,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/views/Versions/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,SAAS,CAAA;AAW/D,OAAO,cAAc,CAAA;AAErB,eAAO,MAAM,SAAS,aAAa,CAAA;AAEnC,eAAO,MAAM,YAAY,EAAE,iBA6J1B,CAAA"}
|
|
@@ -38,8 +38,18 @@ export const VersionsView = async (props)=>{
|
|
|
38
38
|
}
|
|
39
39
|
});
|
|
40
40
|
if (collectionConfig?.versions?.drafts) {
|
|
41
|
-
latestDraftVersion = await getLatestVersion(
|
|
42
|
-
|
|
41
|
+
latestDraftVersion = await getLatestVersion({
|
|
42
|
+
slug: collectionSlug,
|
|
43
|
+
type: 'collection',
|
|
44
|
+
payload,
|
|
45
|
+
status: 'draft'
|
|
46
|
+
});
|
|
47
|
+
latestPublishedVersion = await getLatestVersion({
|
|
48
|
+
slug: collectionSlug,
|
|
49
|
+
type: 'collection',
|
|
50
|
+
payload,
|
|
51
|
+
status: 'published'
|
|
52
|
+
});
|
|
43
53
|
}
|
|
44
54
|
} catch (error) {
|
|
45
55
|
console.error(error) // eslint-disable-line no-console
|
|
@@ -60,8 +70,18 @@ export const VersionsView = async (props)=>{
|
|
|
60
70
|
user
|
|
61
71
|
});
|
|
62
72
|
if (globalConfig?.versions?.drafts) {
|
|
63
|
-
latestDraftVersion = await getLatestVersion(
|
|
64
|
-
|
|
73
|
+
latestDraftVersion = await getLatestVersion({
|
|
74
|
+
slug: globalSlug,
|
|
75
|
+
type: 'global',
|
|
76
|
+
payload,
|
|
77
|
+
status: 'draft'
|
|
78
|
+
});
|
|
79
|
+
latestPublishedVersion = await getLatestVersion({
|
|
80
|
+
slug: globalSlug,
|
|
81
|
+
type: 'global',
|
|
82
|
+
payload,
|
|
83
|
+
status: 'published'
|
|
84
|
+
});
|
|
65
85
|
}
|
|
66
86
|
} catch (error) {
|
|
67
87
|
console.error(error) // eslint-disable-line no-console
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/views/Versions/index.tsx"],"sourcesContent":["import type { EditViewComponent, PaginatedDocs } from 'payload'\n\nimport { Gutter, ListQueryProvider } from '@payloadcms/ui'\nimport { notFound } from 'next/navigation.js'\nimport { isNumber } from 'payload/shared'\nimport React from 'react'\n\nimport { SetDocumentStepNav } from '../Edit/Default/SetDocumentStepNav/index.js'\nimport { buildVersionColumns } from './buildColumns.js'\nimport { getLatestVersion } from './getLatestVersion.js'\nimport { VersionsViewClient } from './index.client.js'\nimport './index.scss'\n\nexport const baseClass = 'versions'\n\nexport const VersionsView: EditViewComponent = async (props) => {\n const { initPageResult, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n const { limit, page, sort } = searchParams\n\n const {\n routes: { api: apiRoute },\n serverURL,\n } = config\n\n let versionsData: PaginatedDocs\n let limitToUse = isNumber(limit) ? Number(limit) : undefined\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n limitToUse = limitToUse || collectionConfig.admin.pagination.defaultLimit\n try {\n versionsData = await payload.findVersions({\n collection: collectionSlug,\n depth: 0,\n limit: limitToUse,\n overrideAccess: false,\n page: page ? parseInt(page.toString(), 10) : undefined,\n req,\n sort: sort as string,\n user,\n where: {\n parent: {\n equals: id,\n },\n },\n })\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion(
|
|
1
|
+
{"version":3,"sources":["../../../src/views/Versions/index.tsx"],"sourcesContent":["import type { EditViewComponent, PaginatedDocs } from 'payload'\n\nimport { Gutter, ListQueryProvider } from '@payloadcms/ui'\nimport { notFound } from 'next/navigation.js'\nimport { isNumber } from 'payload/shared'\nimport React from 'react'\n\nimport { SetDocumentStepNav } from '../Edit/Default/SetDocumentStepNav/index.js'\nimport { buildVersionColumns } from './buildColumns.js'\nimport { getLatestVersion } from './getLatestVersion.js'\nimport { VersionsViewClient } from './index.client.js'\nimport './index.scss'\n\nexport const baseClass = 'versions'\n\nexport const VersionsView: EditViewComponent = async (props) => {\n const { initPageResult, searchParams } = props\n\n const {\n collectionConfig,\n docID: id,\n globalConfig,\n req,\n req: {\n i18n,\n payload,\n payload: { config },\n user,\n },\n } = initPageResult\n\n const collectionSlug = collectionConfig?.slug\n const globalSlug = globalConfig?.slug\n const { limit, page, sort } = searchParams\n\n const {\n routes: { api: apiRoute },\n serverURL,\n } = config\n\n let versionsData: PaginatedDocs\n let limitToUse = isNumber(limit) ? Number(limit) : undefined\n let latestPublishedVersion = null\n let latestDraftVersion = null\n\n if (collectionSlug) {\n limitToUse = limitToUse || collectionConfig.admin.pagination.defaultLimit\n try {\n versionsData = await payload.findVersions({\n collection: collectionSlug,\n depth: 0,\n limit: limitToUse,\n overrideAccess: false,\n page: page ? parseInt(page.toString(), 10) : undefined,\n req,\n sort: sort as string,\n user,\n where: {\n parent: {\n equals: id,\n },\n },\n })\n if (collectionConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug: collectionSlug,\n type: 'collection',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug: collectionSlug,\n type: 'collection',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n console.error(error) // eslint-disable-line no-console\n }\n }\n\n if (globalSlug) {\n limitToUse = limitToUse || 10\n try {\n versionsData = await payload.findGlobalVersions({\n slug: globalSlug,\n depth: 0,\n limit: limitToUse,\n overrideAccess: false,\n page: page ? parseInt(page as string, 10) : undefined,\n req,\n sort: sort as string,\n user,\n })\n\n if (globalConfig?.versions?.drafts) {\n latestDraftVersion = await getLatestVersion({\n slug: globalSlug,\n type: 'global',\n payload,\n status: 'draft',\n })\n latestPublishedVersion = await getLatestVersion({\n slug: globalSlug,\n type: 'global',\n payload,\n status: 'published',\n })\n }\n } catch (error) {\n console.error(error) // eslint-disable-line no-console\n }\n\n if (!versionsData) {\n return notFound()\n }\n }\n const fetchURL = collectionSlug\n ? `${serverURL}${apiRoute}/${collectionSlug}/versions`\n : globalSlug\n ? `${serverURL}${apiRoute}/globals/${globalSlug}/versions`\n : ''\n\n const publishedNewerThanDraft = latestPublishedVersion?.updatedAt > latestDraftVersion?.updatedAt\n\n if (publishedNewerThanDraft) {\n latestDraftVersion = {\n id: '',\n updatedAt: '',\n }\n }\n\n const columns = buildVersionColumns({\n collectionConfig,\n config,\n docID: id,\n globalConfig,\n i18n,\n latestDraftVersion: latestDraftVersion?.id,\n latestPublishedVersion: latestPublishedVersion?.id,\n })\n\n return (\n <React.Fragment>\n <SetDocumentStepNav\n collectionSlug={collectionConfig?.slug}\n globalSlug={globalConfig?.slug}\n id={id}\n pluralLabel={collectionConfig?.labels?.plural || globalConfig?.label}\n useAsTitle={collectionConfig?.admin?.useAsTitle || globalConfig?.slug}\n view={i18n.t('version:versions')}\n />\n <main className={baseClass}>\n <Gutter className={`${baseClass}__wrap`}>\n <ListQueryProvider\n data={versionsData}\n defaultLimit={limitToUse}\n defaultSort={sort as string}\n modifySearchParams\n >\n <VersionsViewClient\n baseClass={baseClass}\n columns={columns}\n fetchURL={fetchURL}\n paginationLimits={collectionConfig?.admin?.pagination?.limits}\n />\n </ListQueryProvider>\n </Gutter>\n </main>\n </React.Fragment>\n )\n}\n"],"names":["Gutter","ListQueryProvider","notFound","isNumber","React","SetDocumentStepNav","buildVersionColumns","getLatestVersion","VersionsViewClient","baseClass","VersionsView","props","initPageResult","searchParams","collectionConfig","docID","id","globalConfig","req","i18n","payload","config","user","collectionSlug","slug","globalSlug","limit","page","sort","routes","api","apiRoute","serverURL","versionsData","limitToUse","Number","undefined","latestPublishedVersion","latestDraftVersion","admin","pagination","defaultLimit","findVersions","collection","depth","overrideAccess","parseInt","toString","where","parent","equals","versions","drafts","type","status","error","console","findGlobalVersions","fetchURL","publishedNewerThanDraft","updatedAt","columns","Fragment","pluralLabel","labels","plural","label","useAsTitle","view","t","main","className","data","defaultSort","modifySearchParams","paginationLimits","limits"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@payloadcms/next",
|
|
3
|
-
"version": "3.0.0-canary.
|
|
3
|
+
"version": "3.0.0-canary.b922438",
|
|
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/graphql": "3.0.0-canary.
|
|
67
|
-
"@payloadcms/translations": "3.0.0-canary.
|
|
68
|
-
"@payloadcms/ui": "3.0.0-canary.
|
|
66
|
+
"@payloadcms/graphql": "3.0.0-canary.b922438",
|
|
67
|
+
"@payloadcms/translations": "3.0.0-canary.b922438",
|
|
68
|
+
"@payloadcms/ui": "3.0.0-canary.b922438"
|
|
69
69
|
},
|
|
70
70
|
"devDependencies": {
|
|
71
71
|
"@next/eslint-plugin-next": "^14.1.0",
|
|
@@ -78,12 +78,12 @@
|
|
|
78
78
|
"esbuild-sass-plugin": "3.3.1",
|
|
79
79
|
"swc-plugin-transform-remove-imports": "1.14.0",
|
|
80
80
|
"@payloadcms/eslint-config": "3.0.0-beta.59",
|
|
81
|
-
"payload": "3.0.0-canary.
|
|
81
|
+
"payload": "3.0.0-canary.b922438"
|
|
82
82
|
},
|
|
83
83
|
"peerDependencies": {
|
|
84
84
|
"graphql": "^16.8.1",
|
|
85
85
|
"next": "^15.0.0-canary.104",
|
|
86
|
-
"payload": "3.0.0-canary.
|
|
86
|
+
"payload": "3.0.0-canary.b922438"
|
|
87
87
|
},
|
|
88
88
|
"engines": {
|
|
89
89
|
"node": "^18.20.2 || >=20.9.0"
|