@payloadcms/next 3.25.0-canary.f62445f → 3.25.0
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/cjs/withPayload.cjs +0 -3
- package/dist/cjs/withPayload.cjs.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/views/List/index.js +1 -1
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/List/resolveAllFilterOptions.d.ts +4 -3
- package/dist/views/List/resolveAllFilterOptions.d.ts.map +1 -1
- package/dist/views/List/resolveAllFilterOptions.js +20 -5
- package/dist/views/List/resolveAllFilterOptions.js.map +1 -1
- package/dist/withPayload.d.ts.map +1 -1
- package/dist/withPayload.js +0 -3
- package/dist/withPayload.js.map +1 -1
- package/package.json +8 -8
package/dist/views/List/index.js
CHANGED
|
@@ -118,7 +118,7 @@ export const renderListView = async args => {
|
|
|
118
118
|
});
|
|
119
119
|
const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap);
|
|
120
120
|
const resolvedFilterOptions = await resolveAllFilterOptions({
|
|
121
|
-
collectionConfig,
|
|
121
|
+
fields: collectionConfig.fields,
|
|
122
122
|
req
|
|
123
123
|
});
|
|
124
124
|
const staticDescription = typeof collectionConfig.admin.description === 'function' ? collectionConfig.admin.description({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["DefaultListView","HydrateAuthProvider","ListQueryProvider","RenderServerComponent","renderFilters","renderTable","upsertPreferences","formatAdminURL","mergeListSearchAndWhere","notFound","isNumber","React","Fragment","renderListViewSlots","resolveAllFilterOptions","generateListMetadata","renderListView","args","clientConfig","customCellProps","disableBulkDelete","disableBulkEdit","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","collections","read","Error","listPreferences","key","value","limit","Number","undefined","sort","routes","admin","adminRoute","includes","page","pagination","defaultLimit","defaultSort","where","search","baseListFilter","and","filter","Boolean","data","find","collection","depth","draft","fallbackLocale","includeLockStatus","overrideAccess","clientCollectionConfig","c","columnState","Table","columnPreferences","columns","docs","useAsTitle","renderedFilters","fields","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","serverProps","listSearchableFields","listViewSlots","clientProps","isInDrawer","List","_jsxs","_jsx","modifySearchParams","Component","components","views","list","Fallback","ListView","RenderedList","error","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n ListPreferences,\n ListQuery,\n ListViewClientProps,\n ListViewServerPropsOnly,\n Where,\n} from 'payload'\n\nimport { DefaultListView, HydrateAuthProvider, ListQueryProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc'\nimport { formatAdminURL, mergeListSearchAndWhere } from '@payloadcms/ui/shared'\nimport { notFound } from 'next/navigation.js'\nimport { isNumber } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\n\nexport { generateListMetadata } from './meta.js'\n\ntype RenderListViewArgs = {\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n query: ListQuery\n} & AdminViewServerProps\n\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n locale,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n if (!permissions?.collections?.[collectionSlug]?.read) {\n throw new Error('not-found')\n }\n\n const query = queryFromArgs || queryFromReq\n\n const listPreferences = await upsertPreferences<ListPreferences>({\n key: `${collectionSlug}-list`,\n req,\n value: {\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n sort: query?.sort as string,\n },\n })\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n if (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility) {\n throw new Error('not-found')\n }\n\n const page = isNumber(query?.page) ? Number(query.page) : 0\n\n const limit = listPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n const sort =\n listPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n let where = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: (query?.where as Where) || undefined,\n })\n\n if (typeof collectionConfig.admin?.baseListFilter === 'function') {\n const baseListFilter = await collectionConfig.admin.baseListFilter({\n limit,\n page,\n req,\n sort,\n })\n\n if (baseListFilter) {\n where = {\n and: [where, baseListFilter].filter(Boolean),\n }\n }\n }\n\n const data = await payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit,\n locale,\n overrideAccess: false,\n page,\n req,\n sort,\n user,\n where: where || {},\n })\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const { columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columnPreferences: listPreferences?.columns,\n customCellProps,\n docs: data.docs,\n drawerSlug,\n enableRowSelections,\n i18n: req.i18n,\n payload,\n useAsTitle: collectionConfig.admin.useAsTitle,\n })\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n collectionConfig,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit,\n listPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <ListQueryProvider\n data={data}\n defaultLimit={limit}\n defaultSort={sort}\n modifySearchParams={!isInDrawer}\n >\n {RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n collectionSlug,\n columnState,\n disableBulkDelete,\n disableBulkEdit,\n enableRowSelections,\n hasCreatePermission,\n listPreferences,\n newDocumentURL,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n } satisfies ListViewClientProps,\n Component: collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: DefaultListView,\n importMap: payload.importMap,\n serverProps,\n })}\n </ListQueryProvider>\n </Fragment>\n ),\n }\n }\n\n throw new Error('not-found')\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["DefaultListView","HydrateAuthProvider","ListQueryProvider","RenderServerComponent","renderFilters","renderTable","upsertPreferences","formatAdminURL","mergeListSearchAndWhere","notFound","isNumber","React","Fragment","renderListViewSlots","resolveAllFilterOptions","generateListMetadata","renderListView","args","clientConfig","customCellProps","disableBulkDelete","disableBulkEdit","drawerSlug","enableRowSelections","initPageResult","overrideEntityVisibility","params","query","queryFromArgs","searchParams","collectionConfig","slug","collectionSlug","locale","fullLocale","permissions","req","i18n","payload","config","queryFromReq","user","visibleEntities","collections","read","Error","listPreferences","key","value","limit","Number","undefined","sort","routes","admin","adminRoute","includes","page","pagination","defaultLimit","defaultSort","where","search","baseListFilter","and","filter","Boolean","data","find","collection","depth","draft","fallbackLocale","includeLockStatus","overrideAccess","clientCollectionConfig","c","columnState","Table","columnPreferences","columns","docs","useAsTitle","renderedFilters","fields","importMap","resolvedFilterOptions","staticDescription","description","t","newDocumentURL","path","hasCreatePermission","create","serverProps","listSearchableFields","listViewSlots","clientProps","isInDrawer","List","_jsxs","_jsx","modifySearchParams","Component","components","views","list","Fallback","ListView","RenderedList","error","message","console"],"sources":["../../../src/views/List/index.tsx"],"sourcesContent":["import type {\n AdminViewServerProps,\n ListPreferences,\n ListQuery,\n ListViewClientProps,\n ListViewServerPropsOnly,\n Where,\n} from 'payload'\n\nimport { DefaultListView, HydrateAuthProvider, ListQueryProvider } from '@payloadcms/ui'\nimport { RenderServerComponent } from '@payloadcms/ui/elements/RenderServerComponent'\nimport { renderFilters, renderTable, upsertPreferences } from '@payloadcms/ui/rsc'\nimport { formatAdminURL, mergeListSearchAndWhere } from '@payloadcms/ui/shared'\nimport { notFound } from 'next/navigation.js'\nimport { isNumber } from 'payload/shared'\nimport React, { Fragment } from 'react'\n\nimport { renderListViewSlots } from './renderListViewSlots.js'\nimport { resolveAllFilterOptions } from './resolveAllFilterOptions.js'\n\nexport { generateListMetadata } from './meta.js'\n\ntype RenderListViewArgs = {\n customCellProps?: Record<string, any>\n disableBulkDelete?: boolean\n disableBulkEdit?: boolean\n drawerSlug?: string\n enableRowSelections: boolean\n overrideEntityVisibility?: boolean\n query: ListQuery\n} & AdminViewServerProps\n\nexport const renderListView = async (\n args: RenderListViewArgs,\n): Promise<{\n List: React.ReactNode\n}> => {\n const {\n clientConfig,\n customCellProps,\n disableBulkDelete,\n disableBulkEdit,\n drawerSlug,\n enableRowSelections,\n initPageResult,\n overrideEntityVisibility,\n params,\n query: queryFromArgs,\n searchParams,\n } = args\n\n const {\n collectionConfig,\n collectionConfig: { slug: collectionSlug },\n locale: fullLocale,\n permissions,\n req,\n req: {\n i18n,\n locale,\n payload,\n payload: { config },\n query: queryFromReq,\n user,\n },\n visibleEntities,\n } = initPageResult\n\n if (!permissions?.collections?.[collectionSlug]?.read) {\n throw new Error('not-found')\n }\n\n const query = queryFromArgs || queryFromReq\n\n const listPreferences = await upsertPreferences<ListPreferences>({\n key: `${collectionSlug}-list`,\n req,\n value: {\n limit: isNumber(query?.limit) ? Number(query.limit) : undefined,\n sort: query?.sort as string,\n },\n })\n\n const {\n routes: { admin: adminRoute },\n } = config\n\n if (collectionConfig) {\n if (!visibleEntities.collections.includes(collectionSlug) && !overrideEntityVisibility) {\n throw new Error('not-found')\n }\n\n const page = isNumber(query?.page) ? Number(query.page) : 0\n\n const limit = listPreferences?.limit || collectionConfig.admin.pagination.defaultLimit\n\n const sort =\n listPreferences?.sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : undefined)\n\n let where = mergeListSearchAndWhere({\n collectionConfig,\n search: typeof query?.search === 'string' ? query.search : undefined,\n where: (query?.where as Where) || undefined,\n })\n\n if (typeof collectionConfig.admin?.baseListFilter === 'function') {\n const baseListFilter = await collectionConfig.admin.baseListFilter({\n limit,\n page,\n req,\n sort,\n })\n\n if (baseListFilter) {\n where = {\n and: [where, baseListFilter].filter(Boolean),\n }\n }\n }\n\n const data = await payload.find({\n collection: collectionSlug,\n depth: 0,\n draft: true,\n fallbackLocale: false,\n includeLockStatus: true,\n limit,\n locale,\n overrideAccess: false,\n page,\n req,\n sort,\n user,\n where: where || {},\n })\n\n const clientCollectionConfig = clientConfig.collections.find((c) => c.slug === collectionSlug)\n\n const { columnState, Table } = renderTable({\n clientCollectionConfig,\n collectionConfig,\n columnPreferences: listPreferences?.columns,\n customCellProps,\n docs: data.docs,\n drawerSlug,\n enableRowSelections,\n i18n: req.i18n,\n payload,\n useAsTitle: collectionConfig.admin.useAsTitle,\n })\n\n const renderedFilters = renderFilters(collectionConfig.fields, req.payload.importMap)\n\n const resolvedFilterOptions = await resolveAllFilterOptions({\n fields: collectionConfig.fields,\n req,\n })\n\n const staticDescription =\n typeof collectionConfig.admin.description === 'function'\n ? collectionConfig.admin.description({ t: i18n.t })\n : collectionConfig.admin.description\n\n const newDocumentURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionSlug}/create`,\n })\n\n const hasCreatePermission = permissions?.collections?.[collectionSlug]?.create\n\n const serverProps: ListViewServerPropsOnly = {\n collectionConfig,\n data,\n i18n,\n limit,\n listPreferences,\n listSearchableFields: collectionConfig.admin.listSearchableFields,\n locale: fullLocale,\n params,\n payload,\n permissions,\n searchParams,\n user,\n }\n\n const listViewSlots = renderListViewSlots({\n clientProps: {\n collectionSlug,\n hasCreatePermission,\n newDocumentURL,\n },\n collectionConfig,\n description: staticDescription,\n payload,\n serverProps,\n })\n\n const isInDrawer = Boolean(drawerSlug)\n\n return {\n List: (\n <Fragment>\n <HydrateAuthProvider permissions={permissions} />\n <ListQueryProvider\n data={data}\n defaultLimit={limit}\n defaultSort={sort}\n modifySearchParams={!isInDrawer}\n >\n {RenderServerComponent({\n clientProps: {\n ...listViewSlots,\n collectionSlug,\n columnState,\n disableBulkDelete,\n disableBulkEdit,\n enableRowSelections,\n hasCreatePermission,\n listPreferences,\n newDocumentURL,\n renderedFilters,\n resolvedFilterOptions,\n Table,\n } satisfies ListViewClientProps,\n Component: collectionConfig?.admin?.components?.views?.list?.Component,\n Fallback: DefaultListView,\n importMap: payload.importMap,\n serverProps,\n })}\n </ListQueryProvider>\n </Fragment>\n ),\n }\n }\n\n throw new Error('not-found')\n}\n\nexport const ListView: React.FC<RenderListViewArgs> = async (args) => {\n try {\n const { List: RenderedList } = await renderListView({ ...args, enableRowSelections: true })\n return RenderedList\n } catch (error) {\n if (error.message === 'not-found') {\n notFound()\n } else {\n console.error(error) // eslint-disable-line no-console\n }\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
export declare const resolveAllFilterOptions: ({
|
|
3
|
-
|
|
1
|
+
import type { Field, PayloadRequest, ResolvedFilterOptions } from 'payload';
|
|
2
|
+
export declare const resolveAllFilterOptions: ({ fields, req, result, }: {
|
|
3
|
+
fields: Field[];
|
|
4
4
|
req: PayloadRequest;
|
|
5
|
+
result?: Map<string, ResolvedFilterOptions>;
|
|
5
6
|
}) => Promise<Map<string, ResolvedFilterOptions>>;
|
|
6
7
|
//# sourceMappingURL=resolveAllFilterOptions.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveAllFilterOptions.d.ts","sourceRoot":"","sources":["../../../src/views/List/resolveAllFilterOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"resolveAllFilterOptions.d.ts","sourceRoot":"","sources":["../../../src/views/List/resolveAllFilterOptions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAA;AAK3E,eAAO,MAAM,uBAAuB,6BAIjC;IACD,MAAM,EAAE,KAAK,EAAE,CAAA;IACf,GAAG,EAAE,cAAc,CAAA;IACnB,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAA;CAC5C,KAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,qBAAqB,CAAC,CA8C7C,CAAA"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { resolveFilterOptions } from '@payloadcms/ui/rsc';
|
|
2
|
-
import { fieldIsHiddenOrDisabled } from 'payload/shared';
|
|
2
|
+
import { fieldHasSubFields, fieldIsHiddenOrDisabled } from 'payload/shared';
|
|
3
3
|
export const resolveAllFilterOptions = async ({
|
|
4
|
-
|
|
5
|
-
req
|
|
4
|
+
fields,
|
|
5
|
+
req,
|
|
6
|
+
result
|
|
6
7
|
}) => {
|
|
7
|
-
const resolvedFilterOptions = new Map();
|
|
8
|
-
await Promise.all(
|
|
8
|
+
const resolvedFilterOptions = !result ? new Map() : result;
|
|
9
|
+
await Promise.all(fields.map(async field => {
|
|
9
10
|
if (fieldIsHiddenOrDisabled(field)) {
|
|
10
11
|
return;
|
|
11
12
|
}
|
|
@@ -21,6 +22,20 @@ export const resolveAllFilterOptions = async ({
|
|
|
21
22
|
});
|
|
22
23
|
resolvedFilterOptions.set(field.name, options);
|
|
23
24
|
}
|
|
25
|
+
if (fieldHasSubFields(field)) {
|
|
26
|
+
await resolveAllFilterOptions({
|
|
27
|
+
fields: field.fields,
|
|
28
|
+
req,
|
|
29
|
+
result: resolvedFilterOptions
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
if (field.type === 'tabs') {
|
|
33
|
+
await Promise.all(field.tabs.map(tab => resolveAllFilterOptions({
|
|
34
|
+
fields: tab.fields,
|
|
35
|
+
req,
|
|
36
|
+
result: resolvedFilterOptions
|
|
37
|
+
})));
|
|
38
|
+
}
|
|
24
39
|
}));
|
|
25
40
|
return resolvedFilterOptions;
|
|
26
41
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolveAllFilterOptions.js","names":["resolveFilterOptions","fieldIsHiddenOrDisabled","resolveAllFilterOptions","
|
|
1
|
+
{"version":3,"file":"resolveAllFilterOptions.js","names":["resolveFilterOptions","fieldHasSubFields","fieldIsHiddenOrDisabled","resolveAllFilterOptions","fields","req","result","resolvedFilterOptions","Map","Promise","all","map","field","filterOptions","options","id","undefined","blockData","data","relationTo","siblingData","user","set","name","type","tabs","tab"],"sources":["../../../src/views/List/resolveAllFilterOptions.ts"],"sourcesContent":["import type { Field, PayloadRequest, ResolvedFilterOptions } from 'payload'\n\nimport { resolveFilterOptions } from '@payloadcms/ui/rsc'\nimport { fieldHasSubFields, fieldIsHiddenOrDisabled } from 'payload/shared'\n\nexport const resolveAllFilterOptions = async ({\n fields,\n req,\n result,\n}: {\n fields: Field[]\n req: PayloadRequest\n result?: Map<string, ResolvedFilterOptions>\n}): Promise<Map<string, ResolvedFilterOptions>> => {\n const resolvedFilterOptions = !result ? new Map<string, ResolvedFilterOptions>() : result\n\n await Promise.all(\n fields.map(async (field) => {\n if (fieldIsHiddenOrDisabled(field)) {\n return\n }\n\n if ('name' in field && 'filterOptions' in field && field.filterOptions) {\n const options = await resolveFilterOptions(field.filterOptions, {\n id: undefined,\n blockData: undefined,\n data: {}, // use empty object to prevent breaking queries when accessing properties of data\n relationTo: field.relationTo,\n req,\n siblingData: {}, // use empty object to prevent breaking queries when accessing properties of data\n user: req.user,\n })\n\n resolvedFilterOptions.set(field.name, options)\n }\n\n if (fieldHasSubFields(field)) {\n await resolveAllFilterOptions({\n fields: field.fields,\n req,\n result: resolvedFilterOptions,\n })\n }\n\n if (field.type === 'tabs') {\n await Promise.all(\n field.tabs.map((tab) =>\n resolveAllFilterOptions({\n fields: tab.fields,\n req,\n result: resolvedFilterOptions,\n }),\n ),\n )\n }\n }),\n )\n\n return resolvedFilterOptions\n}\n"],"mappings":"AAEA,SAASA,oBAAoB,QAAQ;AACrC,SAASC,iBAAiB,EAAEC,uBAAuB,QAAQ;AAE3D,OAAO,MAAMC,uBAAA,GAA0B,MAAAA,CAAO;EAC5CC,MAAM;EACNC,GAAG;EACHC;AAAM,CAKP;EACC,MAAMC,qBAAA,GAAwB,CAACD,MAAA,GAAS,IAAIE,GAAA,KAAuCF,MAAA;EAEnF,MAAMG,OAAA,CAAQC,GAAG,CACfN,MAAA,CAAOO,GAAG,CAAC,MAAOC,KAAA;IAChB,IAAIV,uBAAA,CAAwBU,KAAA,GAAQ;MAClC;IACF;IAEA,IAAI,UAAUA,KAAA,IAAS,mBAAmBA,KAAA,IAASA,KAAA,CAAMC,aAAa,EAAE;MACtE,MAAMC,OAAA,GAAU,MAAMd,oBAAA,CAAqBY,KAAA,CAAMC,aAAa,EAAE;QAC9DE,EAAA,EAAIC,SAAA;QACJC,SAAA,EAAWD,SAAA;QACXE,IAAA,EAAM,CAAC;QACPC,UAAA,EAAYP,KAAA,CAAMO,UAAU;QAC5Bd,GAAA;QACAe,WAAA,EAAa,CAAC;QACdC,IAAA,EAAMhB,GAAA,CAAIgB;MACZ;MAEAd,qBAAA,CAAsBe,GAAG,CAACV,KAAA,CAAMW,IAAI,EAAET,OAAA;IACxC;IAEA,IAAIb,iBAAA,CAAkBW,KAAA,GAAQ;MAC5B,MAAMT,uBAAA,CAAwB;QAC5BC,MAAA,EAAQQ,KAAA,CAAMR,MAAM;QACpBC,GAAA;QACAC,MAAA,EAAQC;MACV;IACF;IAEA,IAAIK,KAAA,CAAMY,IAAI,KAAK,QAAQ;MACzB,MAAMf,OAAA,CAAQC,GAAG,CACfE,KAAA,CAAMa,IAAI,CAACd,GAAG,CAAEe,GAAA,IACdvB,uBAAA,CAAwB;QACtBC,MAAA,EAAQsB,GAAA,CAAItB,MAAM;QAClBC,GAAA;QACAC,MAAA,EAAQC;MACV;IAGN;EACF;EAGF,OAAOA,qBAAA;AACT","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withPayload.d.ts","sourceRoot":"","sources":["../src/withPayload.js"],"names":[],"mappings":"AAKO,yCAJI,OAAO,MAAM,EAAE,UAAU,GAEvB,OAAO,MAAM,EAAE,UAAU,
|
|
1
|
+
{"version":3,"file":"withPayload.d.ts","sourceRoot":"","sources":["../src/withPayload.js"],"names":[],"mappings":"AAKO,yCAJI,OAAO,MAAM,EAAE,UAAU,GAEvB,OAAO,MAAM,EAAE,UAAU,CAmJrC"}
|
package/dist/withPayload.js
CHANGED
|
@@ -105,9 +105,6 @@
|
|
|
105
105
|
if (nextConfig.basePath) {
|
|
106
106
|
toReturn.env.NEXT_BASE_PATH = nextConfig.basePath;
|
|
107
107
|
}
|
|
108
|
-
if (nextConfig.assetPrefix) {
|
|
109
|
-
toReturn.env.NEXT_ASSET_PREFIX = nextConfig.assetPrefix;
|
|
110
|
-
}
|
|
111
108
|
return toReturn;
|
|
112
109
|
};
|
|
113
110
|
export default withPayload;
|
package/dist/withPayload.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withPayload.js","names":["withPayload","nextConfig","env","experimental","staleTimes","dynamic","console","warn","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","process","PAYLOAD_PATCH_TURBOPACK_WARNINGS","turbopackWarningText","consoleWarn","args","includes","poweredByHeader","key","value","toReturn","outputFileTracingExcludes","outputFileTracingIncludes","turbo","resolveAlias","headers","headersFromConfig","source","serverExternalPackages","webpack","webpackConfig","webpackOptions","incomingWebpackConfig","externals","ignoreWarnings","module","file","resolve","alias","fallback","aws4","kerberos","snappy","basePath","NEXT_BASE_PATH"
|
|
1
|
+
{"version":3,"file":"withPayload.js","names":["withPayload","nextConfig","env","experimental","staleTimes","dynamic","console","warn","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","process","PAYLOAD_PATCH_TURBOPACK_WARNINGS","turbopackWarningText","consoleWarn","args","includes","poweredByHeader","key","value","toReturn","outputFileTracingExcludes","outputFileTracingIncludes","turbo","resolveAlias","headers","headersFromConfig","source","serverExternalPackages","webpack","webpackConfig","webpackOptions","incomingWebpackConfig","externals","ignoreWarnings","module","file","resolve","alias","fallback","aws4","kerberos","snappy","basePath","NEXT_BASE_PATH"],"sources":["../src/withPayload.js"],"sourcesContent":["/**\n * @param {import('next').NextConfig} nextConfig\n *\n * @returns {import('next').NextConfig}\n * */\nexport const withPayload = (nextConfig = {}) => {\n const env = nextConfig?.env || {}\n\n if (nextConfig.experimental?.staleTimes?.dynamic) {\n console.warn(\n 'Payload detected a non-zero value for the `staleTimes.dynamic` option in your Next.js config. This will slow down page transitions and may cause stale data to load within the Admin panel. To clear this warning, remove the `staleTimes.dynamic` option from your Next.js config or set it to 0. In the future, Next.js may support scoping this option to specific routes.',\n )\n env.NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH = 'true'\n }\n\n if (process.env.PAYLOAD_PATCH_TURBOPACK_WARNINGS !== 'false') {\n const turbopackWarningText =\n 'Packages that should be external need to be installed in the project directory, so they can be resolved from the output files.\\nTry to install it into the project directory by running'\n\n const consoleWarn = console.warn\n console.warn = (...args) => {\n // Force to disable serverExternalPackages warnings: https://github.com/vercel/next.js/issues/68805\n if (\n (typeof args[1] === 'string' && args[1].includes(turbopackWarningText)) ||\n (typeof args[0] === 'string' && args[0].includes(turbopackWarningText))\n ) {\n return\n }\n\n consoleWarn(...args)\n }\n }\n\n const poweredByHeader = {\n key: 'X-Powered-By',\n value: 'Next.js, Payload',\n }\n\n /**\n * @type {import('next').NextConfig}\n */\n const toReturn = {\n ...nextConfig,\n env,\n outputFileTracingExcludes: {\n ...(nextConfig?.outputFileTracingExcludes || {}),\n '**/*': [\n ...(nextConfig?.outputFileTracingExcludes?.['**/*'] || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n ],\n },\n outputFileTracingIncludes: {\n ...(nextConfig?.outputFileTracingIncludes || {}),\n '**/*': [...(nextConfig?.outputFileTracingIncludes?.['**/*'] || []), '@libsql/client'],\n },\n experimental: {\n ...(nextConfig?.experimental || {}),\n turbo: {\n ...(nextConfig?.experimental?.turbo || {}),\n resolveAlias: {\n ...(nextConfig?.experimental?.turbo?.resolveAlias || {}),\n 'payload-mock-package': 'payload-mock-package',\n },\n },\n },\n // We disable the poweredByHeader here because we add it manually in the headers function below\n ...(nextConfig?.poweredByHeader !== false ? { poweredByHeader: false } : {}),\n headers: async () => {\n const headersFromConfig = 'headers' in nextConfig ? await nextConfig.headers() : []\n\n return [\n ...(headersFromConfig || []),\n {\n source: '/:path*',\n headers: [\n {\n key: 'Accept-CH',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n {\n key: 'Vary',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n {\n key: 'Critical-CH',\n value: 'Sec-CH-Prefers-Color-Scheme',\n },\n ...(nextConfig?.poweredByHeader !== false ? [poweredByHeader] : []),\n ],\n },\n ]\n },\n serverExternalPackages: [\n ...(nextConfig?.serverExternalPackages || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'pino',\n 'libsql',\n 'pino-pretty',\n 'graphql',\n ],\n webpack: (webpackConfig, webpackOptions) => {\n const incomingWebpackConfig =\n typeof nextConfig.webpack === 'function'\n ? nextConfig.webpack(webpackConfig, webpackOptions)\n : webpackConfig\n\n return {\n ...incomingWebpackConfig,\n externals: [\n ...(incomingWebpackConfig?.externals || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n ],\n ignoreWarnings: [\n ...(incomingWebpackConfig?.ignoreWarnings || []),\n { module: /node_modules\\/mongodb\\/lib\\/utils\\.js/ },\n { file: /node_modules\\/mongodb\\/lib\\/utils\\.js/ },\n { module: /node_modules\\/mongodb\\/lib\\/bson\\.js/ },\n { file: /node_modules\\/mongodb\\/lib\\/bson\\.js/ },\n ],\n resolve: {\n ...(incomingWebpackConfig?.resolve || {}),\n alias: {\n ...(incomingWebpackConfig?.resolve?.alias || {}),\n },\n fallback: {\n ...(incomingWebpackConfig?.resolve?.fallback || {}),\n '@aws-sdk/credential-providers': false,\n '@mongodb-js/zstd': false,\n aws4: false,\n kerberos: false,\n 'mongodb-client-encryption': false,\n snappy: false,\n 'supports-color': false,\n 'yocto-queue': false,\n },\n },\n }\n },\n }\n\n if (nextConfig.basePath) {\n toReturn.env.NEXT_BASE_PATH = nextConfig.basePath\n }\n\n return toReturn\n}\n\nexport default withPayload\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.25.0
|
|
3
|
+
"version": "3.25.0",
|
|
4
4
|
"homepage": "https://payloadcms.com",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -79,9 +79,9 @@
|
|
|
79
79
|
"react-diff-viewer-continued": "4.0.4",
|
|
80
80
|
"sass": "1.77.4",
|
|
81
81
|
"uuid": "10.0.0",
|
|
82
|
-
"@payloadcms/graphql": "3.25.0
|
|
83
|
-
"@payloadcms/
|
|
84
|
-
"@payloadcms/
|
|
82
|
+
"@payloadcms/graphql": "3.25.0",
|
|
83
|
+
"@payloadcms/translations": "3.25.0",
|
|
84
|
+
"@payloadcms/ui": "3.25.0"
|
|
85
85
|
},
|
|
86
86
|
"devDependencies": {
|
|
87
87
|
"@babel/cli": "7.26.4",
|
|
@@ -91,8 +91,8 @@
|
|
|
91
91
|
"@babel/preset-typescript": "7.26.0",
|
|
92
92
|
"@next/eslint-plugin-next": "15.1.5",
|
|
93
93
|
"@types/busboy": "1.5.4",
|
|
94
|
-
"@types/react": "19.0.
|
|
95
|
-
"@types/react-dom": "19.0.
|
|
94
|
+
"@types/react": "19.0.10",
|
|
95
|
+
"@types/react-dom": "19.0.4",
|
|
96
96
|
"@types/uuid": "10.0.0",
|
|
97
97
|
"babel-plugin-react-compiler": "19.0.0-beta-714736e-20250131",
|
|
98
98
|
"esbuild": "0.24.2",
|
|
@@ -100,12 +100,12 @@
|
|
|
100
100
|
"eslint-plugin-react-compiler": "19.0.0-beta-714736e-20250131",
|
|
101
101
|
"swc-plugin-transform-remove-imports": "3.1.0",
|
|
102
102
|
"@payloadcms/eslint-config": "3.9.0",
|
|
103
|
-
"payload": "3.25.0
|
|
103
|
+
"payload": "3.25.0"
|
|
104
104
|
},
|
|
105
105
|
"peerDependencies": {
|
|
106
106
|
"graphql": "^16.8.1",
|
|
107
107
|
"next": "^15.0.0",
|
|
108
|
-
"payload": "3.25.0
|
|
108
|
+
"payload": "3.25.0"
|
|
109
109
|
},
|
|
110
110
|
"engines": {
|
|
111
111
|
"node": "^18.20.2 || >=20.9.0"
|