@payloadcms/next 3.84.1 → 4.0.0-internal.38b7f1d
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 +15 -176
- package/dist/cjs/withPayload.cjs.map +4 -4
- package/dist/elements/DocumentHeader/Tabs/tabs/index.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js +0 -4
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
- package/dist/elements/HierarchyTypeField/index.d.ts +9 -0
- package/dist/elements/HierarchyTypeField/index.d.ts.map +1 -0
- package/dist/elements/HierarchyTypeField/index.js +114 -0
- package/dist/elements/HierarchyTypeField/index.js.map +1 -0
- package/dist/elements/HierarchyTypeField/index.server.d.ts +9 -0
- package/dist/elements/HierarchyTypeField/index.server.d.ts.map +1 -0
- package/dist/elements/HierarchyTypeField/index.server.js +32 -0
- package/dist/elements/HierarchyTypeField/index.server.js.map +1 -0
- package/dist/elements/Nav/SidebarTabs/TabError/index.css +29 -0
- package/dist/elements/Nav/SidebarTabs/TabError/index.d.ts +8 -0
- package/dist/elements/Nav/SidebarTabs/TabError/index.d.ts.map +1 -0
- package/dist/elements/Nav/SidebarTabs/TabError/index.js +42 -0
- package/dist/elements/Nav/SidebarTabs/TabError/index.js.map +1 -0
- package/dist/elements/Nav/SidebarTabs/constants.d.ts +2 -0
- package/dist/elements/Nav/SidebarTabs/constants.d.ts.map +1 -0
- package/dist/elements/Nav/SidebarTabs/constants.js +2 -0
- package/dist/elements/Nav/SidebarTabs/constants.js.map +1 -0
- package/dist/elements/Nav/SidebarTabs/index.client.d.ts +22 -0
- package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -0
- package/dist/elements/Nav/SidebarTabs/index.client.js +195 -0
- package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -0
- package/dist/elements/Nav/SidebarTabs/index.css +80 -0
- package/dist/elements/Nav/SidebarTabs/index.d.ts +17 -0
- package/dist/elements/Nav/SidebarTabs/index.d.ts.map +1 -0
- package/dist/elements/Nav/SidebarTabs/index.js +85 -0
- package/dist/elements/Nav/SidebarTabs/index.js.map +1 -0
- package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts +10 -0
- package/dist/elements/Nav/SidebarTabs/renderTabServerFn.d.ts.map +1 -0
- package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js +54 -0
- package/dist/elements/Nav/SidebarTabs/renderTabServerFn.js.map +1 -0
- package/dist/elements/Nav/getNavPrefs.d.ts.map +1 -1
- package/dist/elements/Nav/getNavPrefs.js +36 -2
- package/dist/elements/Nav/getNavPrefs.js.map +1 -1
- package/dist/elements/Nav/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/index.client.js +48 -63
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.css +155 -0
- package/dist/elements/Nav/index.d.ts +1 -1
- package/dist/elements/Nav/index.d.ts.map +1 -1
- package/dist/elements/Nav/index.js +39 -8
- package/dist/elements/Nav/index.js.map +1 -1
- package/dist/exports/client.d.ts +2 -1
- package/dist/exports/client.d.ts.map +1 -1
- package/dist/exports/client.js +2 -1
- package/dist/exports/client.js.map +1 -1
- package/dist/exports/rsc.d.ts +2 -1
- package/dist/exports/rsc.d.ts.map +1 -1
- package/dist/exports/rsc.js +2 -1
- package/dist/exports/rsc.js.map +1 -1
- package/dist/exports/utilities.d.ts +2 -67
- package/dist/exports/utilities.d.ts.map +1 -1
- package/dist/exports/utilities.js +1 -49
- package/dist/exports/utilities.js.map +1 -1
- package/dist/layouts/Root/index.d.ts +18 -1
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +25 -4
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/prod/styles.css +1 -1
- package/dist/utilities/getHierarchyAncestry.d.ts +24 -0
- package/dist/utilities/getHierarchyAncestry.d.ts.map +1 -0
- package/dist/utilities/getHierarchyAncestry.js +103 -0
- package/dist/utilities/getHierarchyAncestry.js.map +1 -0
- package/dist/utilities/getRequestHighContrast.d.ts +10 -0
- package/dist/utilities/getRequestHighContrast.d.ts.map +1 -0
- package/dist/utilities/getRequestHighContrast.js +18 -0
- package/dist/utilities/getRequestHighContrast.js.map +1 -0
- package/dist/utilities/handleServerFunctions.js +2 -2
- package/dist/utilities/handleServerFunctions.js.map +1 -1
- package/dist/views/Account/Settings/index.d.ts.map +1 -1
- package/dist/views/Account/Settings/index.js +2 -1
- package/dist/views/Account/Settings/index.js.map +1 -1
- package/dist/views/Account/ToggleHighContrast/index.d.ts +3 -0
- package/dist/views/Account/ToggleHighContrast/index.d.ts.map +1 -0
- package/dist/views/Account/ToggleHighContrast/index.js +45 -0
- package/dist/views/Account/ToggleHighContrast/index.js.map +1 -0
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +3 -3
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
- package/dist/views/Document/getDocumentView.d.ts.map +1 -1
- package/dist/views/Document/getDocumentView.js +3 -9
- package/dist/views/Document/getDocumentView.js.map +1 -1
- package/dist/views/Document/renderDocumentSlots.d.ts.map +1 -1
- package/dist/views/Document/renderDocumentSlots.js +16 -8
- package/dist/views/Document/renderDocumentSlots.js.map +1 -1
- package/dist/views/Hierarchy/index.d.ts +18 -0
- package/dist/views/Hierarchy/index.d.ts.map +1 -0
- package/dist/views/Hierarchy/index.js +20 -0
- package/dist/views/Hierarchy/index.js.map +1 -0
- package/dist/views/List/handleHierarchy.d.ts +18 -0
- package/dist/views/List/handleHierarchy.d.ts.map +1 -0
- package/dist/views/List/handleHierarchy.js +258 -0
- package/dist/views/List/handleHierarchy.js.map +1 -0
- package/dist/views/List/index.d.ts.map +1 -1
- package/dist/views/List/index.js +101 -30
- package/dist/views/List/index.js.map +1 -1
- package/dist/views/Root/getCustomGlobalViewByRoute.d.ts +12 -0
- package/dist/views/Root/getCustomGlobalViewByRoute.d.ts.map +1 -0
- package/dist/views/Root/getCustomGlobalViewByRoute.js +46 -0
- package/dist/views/Root/getCustomGlobalViewByRoute.js.map +1 -0
- package/dist/views/Root/getRouteData.d.ts +1 -4
- package/dist/views/Root/getRouteData.d.ts.map +1 -1
- package/dist/views/Root/getRouteData.js +83 -110
- package/dist/views/Root/getRouteData.js.map +1 -1
- package/dist/views/Root/index.d.ts.map +1 -1
- package/dist/views/Root/index.js +5 -12
- package/dist/views/Root/index.js.map +1 -1
- package/dist/views/Root/metadata.d.ts.map +1 -1
- package/dist/views/Root/metadata.js +1 -37
- package/dist/views/Root/metadata.js.map +1 -1
- package/dist/views/Version/Restore/index.js +1 -1
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/withPayload/withPayload.d.ts +127 -1
- package/dist/withPayload/withPayload.d.ts.map +1 -1
- package/dist/withPayload/withPayload.js +8 -22
- package/dist/withPayload/withPayload.js.map +1 -1
- package/dist/withPayload/withPayload.utils.d.ts +0 -14
- package/dist/withPayload/withPayload.utils.d.ts.map +1 -1
- package/dist/withPayload/withPayload.utils.js +0 -73
- package/dist/withPayload/withPayload.utils.js.map +1 -1
- package/package.json +12 -12
- package/dist/views/BrowseByFolder/buildView.d.ts +0 -13
- package/dist/views/BrowseByFolder/buildView.d.ts.map +0 -1
- package/dist/views/BrowseByFolder/buildView.js +0 -170
- package/dist/views/BrowseByFolder/buildView.js.map +0 -1
- package/dist/views/BrowseByFolder/index.d.ts +0 -4
- package/dist/views/BrowseByFolder/index.d.ts.map +0 -1
- package/dist/views/BrowseByFolder/index.js +0 -20
- package/dist/views/BrowseByFolder/index.js.map +0 -1
- package/dist/views/BrowseByFolder/metadata.d.ts +0 -4
- package/dist/views/BrowseByFolder/metadata.d.ts.map +0 -1
- package/dist/views/BrowseByFolder/metadata.js +0 -18
- package/dist/views/BrowseByFolder/metadata.js.map +0 -1
- package/dist/views/CollectionFolders/buildView.d.ts +0 -15
- package/dist/views/CollectionFolders/buildView.d.ts.map +0 -1
- package/dist/views/CollectionFolders/buildView.js +0 -156
- package/dist/views/CollectionFolders/buildView.js.map +0 -1
- package/dist/views/CollectionFolders/index.d.ts +0 -4
- package/dist/views/CollectionFolders/index.d.ts.map +0 -1
- package/dist/views/CollectionFolders/index.js +0 -20
- package/dist/views/CollectionFolders/index.js.map +0 -1
- package/dist/views/CollectionFolders/metadata.d.ts +0 -7
- package/dist/views/CollectionFolders/metadata.d.ts.map +0 -1
- package/dist/views/CollectionFolders/metadata.js +0 -25
- package/dist/views/CollectionFolders/metadata.js.map +0 -1
- package/dist/views/CollectionFolders/renderFolderViewSlots.d.ts +0 -11
- package/dist/views/CollectionFolders/renderFolderViewSlots.d.ts.map +0 -1
- package/dist/views/CollectionFolders/renderFolderViewSlots.js +0 -64
- package/dist/views/CollectionFolders/renderFolderViewSlots.js.map +0 -1
- package/dist/withPayload/withPayloadLegacy.d.ts +0 -2
- package/dist/withPayload/withPayloadLegacy.d.ts.map +0 -1
- package/dist/withPayload/withPayloadLegacy.js +0 -47
- package/dist/withPayload/withPayloadLegacy.js.map +0 -1
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
import { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js';
|
|
2
2
|
import { generateAccountViewMetadata } from '../Account/metadata.js';
|
|
3
|
-
import { generateBrowseByFolderMetadata } from '../BrowseByFolder/metadata.js';
|
|
4
|
-
import { generateCollectionFolderMetadata } from '../CollectionFolders/metadata.js';
|
|
5
3
|
import { generateCollectionTrashMetadata } from '../CollectionTrash/metadata.js';
|
|
6
4
|
import { generateCreateFirstUserViewMetadata } from '../CreateFirstUser/metadata.js';
|
|
7
5
|
import { generateDashboardViewMetadata } from '../Dashboard/metadata.js';
|
|
@@ -17,7 +15,6 @@ import { generateCustomViewMetadata } from './generateCustomViewMetadata.js';
|
|
|
17
15
|
import { getCustomViewByRoute } from './getCustomViewByRoute.js';
|
|
18
16
|
const oneSegmentMeta = {
|
|
19
17
|
'create-first-user': generateCreateFirstUserViewMetadata,
|
|
20
|
-
folders: generateBrowseByFolderMetadata,
|
|
21
18
|
forgot: generateForgotPasswordViewMetadata,
|
|
22
19
|
login: generateLoginViewMetadata,
|
|
23
20
|
logout: generateUnauthorizedViewMetadata,
|
|
@@ -30,15 +27,6 @@ export const generatePageMetadata = async ({
|
|
|
30
27
|
}) => {
|
|
31
28
|
const config = await configPromise;
|
|
32
29
|
const params = await paramsPromise;
|
|
33
|
-
const folderCollectionSlugs = config.collections.reduce((acc, {
|
|
34
|
-
slug,
|
|
35
|
-
folders
|
|
36
|
-
}) => {
|
|
37
|
-
if (folders) {
|
|
38
|
-
return [...acc, slug];
|
|
39
|
-
}
|
|
40
|
-
return acc;
|
|
41
|
-
}, []);
|
|
42
30
|
const segments = Array.isArray(params.segments) ? params.segments : [];
|
|
43
31
|
const currentRoute = `/${segments.join('/')}`;
|
|
44
32
|
const [segmentOne, segmentTwo, segmentThree] = segments;
|
|
@@ -62,13 +50,7 @@ export const generatePageMetadata = async ({
|
|
|
62
50
|
}
|
|
63
51
|
case 1:
|
|
64
52
|
{
|
|
65
|
-
if (
|
|
66
|
-
// --> /:folderCollectionSlug
|
|
67
|
-
meta = await oneSegmentMeta.folders({
|
|
68
|
-
config,
|
|
69
|
-
i18n
|
|
70
|
-
});
|
|
71
|
-
} else if (segmentOne === 'account') {
|
|
53
|
+
if (segmentOne === 'account') {
|
|
72
54
|
// --> /account
|
|
73
55
|
meta = await generateAccountViewMetadata({
|
|
74
56
|
config,
|
|
@@ -98,12 +80,6 @@ export const generatePageMetadata = async ({
|
|
|
98
80
|
config,
|
|
99
81
|
i18n
|
|
100
82
|
});
|
|
101
|
-
} else if (folderCollectionSlugs.length && `/${segmentOne}` === config.admin.routes.browseByFolder) {
|
|
102
|
-
// --> /browse-by-folder/:folderID
|
|
103
|
-
meta = await generateBrowseByFolderMetadata({
|
|
104
|
-
config,
|
|
105
|
-
i18n
|
|
106
|
-
});
|
|
107
83
|
} else if (isCollection) {
|
|
108
84
|
// --> /collections/:collectionSlug
|
|
109
85
|
meta = await generateListViewMetadata({
|
|
@@ -140,18 +116,6 @@ export const generatePageMetadata = async ({
|
|
|
140
116
|
i18n,
|
|
141
117
|
params
|
|
142
118
|
});
|
|
143
|
-
} else if (config.folders && segmentThree === config.folders.slug) {
|
|
144
|
-
if (folderCollectionSlugs.includes(collectionConfig.slug)) {
|
|
145
|
-
// Collection Folder Views
|
|
146
|
-
// --> /collections/:collectionSlug/:folderCollectionSlug
|
|
147
|
-
// --> /collections/:collectionSlug/:folderCollectionSlug/:id
|
|
148
|
-
meta = await generateCollectionFolderMetadata({
|
|
149
|
-
collectionConfig,
|
|
150
|
-
config,
|
|
151
|
-
i18n,
|
|
152
|
-
params
|
|
153
|
-
});
|
|
154
|
-
}
|
|
155
119
|
} else {
|
|
156
120
|
// Collection Document Views
|
|
157
121
|
// --> /collections/:collectionSlug/:id
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.js","names":["getNextRequestI18n","generateAccountViewMetadata","generateBrowseByFolderMetadata","generateCollectionFolderMetadata","generateCollectionTrashMetadata","generateCreateFirstUserViewMetadata","generateDashboardViewMetadata","generateDocumentViewMetadata","generateForgotPasswordViewMetadata","generateListViewMetadata","generateLoginViewMetadata","generateNotFoundViewMetadata","generateResetPasswordViewMetadata","generateUnauthorizedViewMetadata","generateVerifyViewMetadata","generateCustomViewMetadata","getCustomViewByRoute","oneSegmentMeta","folders","forgot","login","logout","unauthorized","generatePageMetadata","config","configPromise","params","paramsPromise","folderCollectionSlugs","collections","reduce","acc","slug","segments","Array","isArray","currentRoute","join","segmentOne","segmentTwo","segmentThree","isGlobal","isCollection","i18n","meta","collectionConfig","length","find","collection","globalConfig","globals","global","admin","routes","browseByFolder","reset","includes","viewConfig","viewKey"],"sources":["../../../src/views/Root/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedConfig } from 'payload'\n\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { generateAccountViewMetadata } from '../Account/metadata.js'\nimport { generateBrowseByFolderMetadata } from '../BrowseByFolder/metadata.js'\nimport { generateCollectionFolderMetadata } from '../CollectionFolders/metadata.js'\nimport { generateCollectionTrashMetadata } from '../CollectionTrash/metadata.js'\nimport { generateCreateFirstUserViewMetadata } from '../CreateFirstUser/metadata.js'\nimport { generateDashboardViewMetadata } from '../Dashboard/metadata.js'\nimport { generateDocumentViewMetadata } from '../Document/metadata.js'\nimport { generateForgotPasswordViewMetadata } from '../ForgotPassword/metadata.js'\nimport { generateListViewMetadata } from '../List/metadata.js'\nimport { generateLoginViewMetadata } from '../Login/metadata.js'\nimport { generateNotFoundViewMetadata } from '../NotFound/metadata.js'\nimport { generateResetPasswordViewMetadata } from '../ResetPassword/metadata.js'\nimport { generateUnauthorizedViewMetadata } from '../Unauthorized/metadata.js'\nimport { generateVerifyViewMetadata } from '../Verify/metadata.js'\nimport { generateCustomViewMetadata } from './generateCustomViewMetadata.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nconst oneSegmentMeta = {\n 'create-first-user': generateCreateFirstUserViewMetadata,\n folders: generateBrowseByFolderMetadata,\n forgot: generateForgotPasswordViewMetadata,\n login: generateLoginViewMetadata,\n logout: generateUnauthorizedViewMetadata,\n 'logout-inactivity': generateUnauthorizedViewMetadata,\n unauthorized: generateUnauthorizedViewMetadata,\n}\n\ntype Args = {\n config: Promise<SanitizedConfig>\n params: Promise<{\n [key: string]: string | string[]\n }>\n searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n params: paramsPromise,\n}: Args) => {\n const config = await configPromise\n const params = await paramsPromise\n\n const folderCollectionSlugs = config.collections.reduce((acc, { slug, folders }) => {\n if (folders) {\n return [...acc, slug]\n }\n return acc\n }, [])\n const segments = Array.isArray(params.segments) ? params.segments : []\n\n const currentRoute = `/${segments.join('/')}`\n const [segmentOne, segmentTwo, segmentThree] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n let meta: Metadata\n\n // TODO: handle custom routes\n\n const collectionConfig =\n isCollection &&\n segments.length > 1 &&\n config?.collections?.find((collection) => collection.slug === segmentTwo)\n\n const globalConfig =\n isGlobal && segments.length > 1 && config?.globals?.find((global) => global.slug === segmentTwo)\n\n switch (segments.length) {\n case 0: {\n meta = await generateDashboardViewMetadata({ config, i18n })\n break\n }\n case 1: {\n if (folderCollectionSlugs.length && `/${segmentOne}` === config.admin.routes.browseByFolder) {\n // --> /:folderCollectionSlug\n meta = await oneSegmentMeta.folders({ config, i18n })\n } else if (segmentOne === 'account') {\n // --> /account\n meta = await generateAccountViewMetadata({ config, i18n })\n break\n } else if (oneSegmentMeta[segmentOne]) {\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n meta = await oneSegmentMeta[segmentOne]({ config, i18n })\n break\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n meta = await generateResetPasswordViewMetadata({ config, i18n })\n } else if (\n folderCollectionSlugs.length &&\n `/${segmentOne}` === config.admin.routes.browseByFolder\n ) {\n // --> /browse-by-folder/:folderID\n meta = await generateBrowseByFolderMetadata({ config, i18n })\n } else if (isCollection) {\n // --> /collections/:collectionSlug\n meta = await generateListViewMetadata({ collectionConfig, config, i18n })\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n meta = await generateDocumentViewMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n default: {\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n meta = await generateVerifyViewMetadata({ config, i18n })\n } else if (isCollection) {\n if (segmentThree === 'trash' && segments.length === 3 && collectionConfig) {\n // Collection Trash Views\n // --> /collections/:collectionSlug/trash\n meta = await generateCollectionTrashMetadata({\n collectionConfig,\n config,\n i18n,\n params,\n })\n } else if (config.folders && segmentThree === config.folders.slug) {\n if (folderCollectionSlugs.includes(collectionConfig.slug)) {\n // Collection Folder Views\n // --> /collections/:collectionSlug/:folderCollectionSlug\n // --> /collections/:collectionSlug/:folderCollectionSlug/:id\n meta = await generateCollectionFolderMetadata({\n collectionConfig,\n config,\n i18n,\n params,\n })\n }\n } else {\n // Collection Document Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:version\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/trash/:id\n meta = await generateDocumentViewMetadata({ collectionConfig, config, i18n, params })\n }\n } else if (isGlobal) {\n // Global Document Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/versions/:version\n // --> /globals/:globalSlug/api\n meta = await generateDocumentViewMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n }\n\n if (!meta) {\n const { viewConfig, viewKey } = getCustomViewByRoute({\n config,\n currentRoute,\n })\n\n if (viewKey) {\n // Custom Views\n // --> /:path\n meta = await generateCustomViewMetadata({\n config,\n i18n,\n viewConfig,\n })\n } else {\n meta = await generateNotFoundViewMetadata({ config, i18n })\n }\n }\n\n return meta\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"metadata.js","names":["getNextRequestI18n","generateAccountViewMetadata","generateCollectionTrashMetadata","generateCreateFirstUserViewMetadata","generateDashboardViewMetadata","generateDocumentViewMetadata","generateForgotPasswordViewMetadata","generateListViewMetadata","generateLoginViewMetadata","generateNotFoundViewMetadata","generateResetPasswordViewMetadata","generateUnauthorizedViewMetadata","generateVerifyViewMetadata","generateCustomViewMetadata","getCustomViewByRoute","oneSegmentMeta","forgot","login","logout","unauthorized","generatePageMetadata","config","configPromise","params","paramsPromise","segments","Array","isArray","currentRoute","join","segmentOne","segmentTwo","segmentThree","isGlobal","isCollection","i18n","meta","collectionConfig","length","collections","find","collection","slug","globalConfig","globals","global","admin","routes","reset","viewConfig","viewKey"],"sources":["../../../src/views/Root/metadata.ts"],"sourcesContent":["import type { Metadata } from 'next'\nimport type { SanitizedConfig } from 'payload'\n\nimport { getNextRequestI18n } from '../../utilities/getNextRequestI18n.js'\nimport { generateAccountViewMetadata } from '../Account/metadata.js'\nimport { generateCollectionTrashMetadata } from '../CollectionTrash/metadata.js'\nimport { generateCreateFirstUserViewMetadata } from '../CreateFirstUser/metadata.js'\nimport { generateDashboardViewMetadata } from '../Dashboard/metadata.js'\nimport { generateDocumentViewMetadata } from '../Document/metadata.js'\nimport { generateForgotPasswordViewMetadata } from '../ForgotPassword/metadata.js'\nimport { generateListViewMetadata } from '../List/metadata.js'\nimport { generateLoginViewMetadata } from '../Login/metadata.js'\nimport { generateNotFoundViewMetadata } from '../NotFound/metadata.js'\nimport { generateResetPasswordViewMetadata } from '../ResetPassword/metadata.js'\nimport { generateUnauthorizedViewMetadata } from '../Unauthorized/metadata.js'\nimport { generateVerifyViewMetadata } from '../Verify/metadata.js'\nimport { generateCustomViewMetadata } from './generateCustomViewMetadata.js'\nimport { getCustomViewByRoute } from './getCustomViewByRoute.js'\n\nconst oneSegmentMeta = {\n 'create-first-user': generateCreateFirstUserViewMetadata,\n forgot: generateForgotPasswordViewMetadata,\n login: generateLoginViewMetadata,\n logout: generateUnauthorizedViewMetadata,\n 'logout-inactivity': generateUnauthorizedViewMetadata,\n unauthorized: generateUnauthorizedViewMetadata,\n}\n\ntype Args = {\n config: Promise<SanitizedConfig>\n params: Promise<{\n [key: string]: string | string[]\n }>\n searchParams: Promise<{\n [key: string]: string | string[]\n }>\n}\n\nexport const generatePageMetadata = async ({\n config: configPromise,\n params: paramsPromise,\n}: Args) => {\n const config = await configPromise\n const params = await paramsPromise\n\n const segments = Array.isArray(params.segments) ? params.segments : []\n\n const currentRoute = `/${segments.join('/')}`\n const [segmentOne, segmentTwo, segmentThree] = segments\n\n const isGlobal = segmentOne === 'globals'\n const isCollection = segmentOne === 'collections'\n\n const i18n = await getNextRequestI18n({\n config,\n })\n\n let meta: Metadata\n\n // TODO: handle custom routes\n\n const collectionConfig =\n isCollection &&\n segments.length > 1 &&\n config?.collections?.find((collection) => collection.slug === segmentTwo)\n\n const globalConfig =\n isGlobal && segments.length > 1 && config?.globals?.find((global) => global.slug === segmentTwo)\n\n switch (segments.length) {\n case 0: {\n meta = await generateDashboardViewMetadata({ config, i18n })\n break\n }\n case 1: {\n if (segmentOne === 'account') {\n // --> /account\n meta = await generateAccountViewMetadata({ config, i18n })\n break\n } else if (oneSegmentMeta[segmentOne]) {\n // --> /create-first-user\n // --> /forgot\n // --> /login\n // --> /logout\n // --> /logout-inactivity\n // --> /unauthorized\n meta = await oneSegmentMeta[segmentOne]({ config, i18n })\n break\n }\n break\n }\n case 2: {\n if (`/${segmentOne}` === config.admin.routes.reset) {\n // --> /reset/:token\n meta = await generateResetPasswordViewMetadata({ config, i18n })\n } else if (isCollection) {\n // --> /collections/:collectionSlug\n meta = await generateListViewMetadata({ collectionConfig, config, i18n })\n } else if (isGlobal) {\n // --> /globals/:globalSlug\n meta = await generateDocumentViewMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n default: {\n if (segmentTwo === 'verify') {\n // --> /:collectionSlug/verify/:token\n meta = await generateVerifyViewMetadata({ config, i18n })\n } else if (isCollection) {\n if (segmentThree === 'trash' && segments.length === 3 && collectionConfig) {\n // Collection Trash Views\n // --> /collections/:collectionSlug/trash\n meta = await generateCollectionTrashMetadata({\n collectionConfig,\n config,\n i18n,\n params,\n })\n } else {\n // Collection Document Views\n // --> /collections/:collectionSlug/:id\n // --> /collections/:collectionSlug/:id/versions\n // --> /collections/:collectionSlug/:id/versions/:version\n // --> /collections/:collectionSlug/:id/api\n // --> /collections/:collectionSlug/trash/:id\n meta = await generateDocumentViewMetadata({ collectionConfig, config, i18n, params })\n }\n } else if (isGlobal) {\n // Global Document Views\n // --> /globals/:globalSlug/versions\n // --> /globals/:globalSlug/versions/:version\n // --> /globals/:globalSlug/api\n meta = await generateDocumentViewMetadata({\n config,\n globalConfig,\n i18n,\n params,\n })\n }\n break\n }\n }\n\n if (!meta) {\n const { viewConfig, viewKey } = getCustomViewByRoute({\n config,\n currentRoute,\n })\n\n if (viewKey) {\n // Custom Views\n // --> /:path\n meta = await generateCustomViewMetadata({\n config,\n i18n,\n viewConfig,\n })\n } else {\n meta = await generateNotFoundViewMetadata({ config, i18n })\n }\n }\n\n return meta\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -84,7 +84,7 @@ export const Restore = ({
|
|
|
84
84
|
buttonStyle: "primary",
|
|
85
85
|
className: [canRestoreAsDraft && `${baseClass}__restore-as-draft-button`].filter(Boolean).join(' '),
|
|
86
86
|
onClick: () => toggleModal(modalSlug),
|
|
87
|
-
size: "
|
|
87
|
+
size: "medium",
|
|
88
88
|
SubMenuPopupContent: canRestoreAsDraft ? () => /*#__PURE__*/_jsx(PopupList.ButtonGroup, {
|
|
89
89
|
children: /*#__PURE__*/_jsx(PopupList.Button, {
|
|
90
90
|
onClick: () => [setDraft(true), toggleModal(modalSlug)],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["getTranslation","Button","ConfirmationModal","PopupList","toast","useConfig","useModal","useRouteTransition","useTranslation","requests","useRouter","formatAdminURL","React","Fragment","useCallback","useState","baseClass","modalSlug","Restore","className","collectionConfig","globalConfig","label","originalDocID","status","versionDateFormatted","versionID","config","routes","admin","adminRoute","api","apiRoute","toggleModal","router","i18n","t","draft","setDraft","startRouteTransition","restoreMessage","versionDate","canRestoreAsDraft","versions","drafts","handleRestore","fetchURL","path","redirectURL","slug","res","post","headers","language","json","success","message","push","error","_jsxs","_jsx","filter","Boolean","join","buttonStyle","onClick","size","SubMenuPopupContent","ButtonGroup","body","confirmingLabel","heading","onConfirm"],"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, ClientGlobalConfig, SanitizedCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ConfirmationModal,\n PopupList,\n toast,\n useConfig,\n useModal,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\n\nimport './index.scss'\n\nimport React, { Fragment, useCallback, useState } from 'react'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\ntype Props = {\n className?: string\n collectionConfig?: ClientCollectionConfig\n globalConfig?: ClientGlobalConfig\n label: SanitizedCollectionConfig['labels']['singular']\n originalDocID: number | string\n status?: string\n versionDateFormatted: string\n versionID: string\n}\n\nexport const Restore: React.FC<Props> = ({\n className,\n collectionConfig,\n globalConfig,\n label,\n originalDocID,\n status,\n versionDateFormatted,\n versionID,\n}) => {\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n },\n } = useConfig()\n\n const { toggleModal } = useModal()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n const { startRouteTransition } = useRouteTransition()\n\n const restoreMessage = t(\n globalConfig ? 'version:aboutToRestoreGlobal' : 'version:aboutToRestore',\n {\n label: getTranslation(label, i18n),\n versionDate: versionDateFormatted,\n },\n )\n\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\n\n const handleRestore = useCallback(async () => {\n let fetchURL = formatAdminURL({\n apiRoute,\n path: '',\n })\n let redirectURL: string\n\n if (collectionConfig) {\n fetchURL = `${fetchURL}/${collectionConfig.slug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig.slug}/${originalDocID}`,\n })\n }\n\n if (globalConfig) {\n fetchURL = `${fetchURL}/globals/${globalConfig.slug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalConfig.slug}`,\n })\n }\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 return startRouteTransition(() => router.push(redirectURL))\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [\n apiRoute,\n collectionConfig,\n globalConfig,\n i18n.language,\n versionID,\n draft,\n adminRoute,\n originalDocID,\n startRouteTransition,\n router,\n t,\n ])\n\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Button\n buttonStyle=\"primary\"\n className={[canRestoreAsDraft && `${baseClass}__restore-as-draft-button`]\n .filter(Boolean)\n .join(' ')}\n onClick={() => toggleModal(modalSlug)}\n size=\"
|
|
1
|
+
{"version":3,"file":"index.js","names":["getTranslation","Button","ConfirmationModal","PopupList","toast","useConfig","useModal","useRouteTransition","useTranslation","requests","useRouter","formatAdminURL","React","Fragment","useCallback","useState","baseClass","modalSlug","Restore","className","collectionConfig","globalConfig","label","originalDocID","status","versionDateFormatted","versionID","config","routes","admin","adminRoute","api","apiRoute","toggleModal","router","i18n","t","draft","setDraft","startRouteTransition","restoreMessage","versionDate","canRestoreAsDraft","versions","drafts","handleRestore","fetchURL","path","redirectURL","slug","res","post","headers","language","json","success","message","push","error","_jsxs","_jsx","filter","Boolean","join","buttonStyle","onClick","size","SubMenuPopupContent","ButtonGroup","body","confirmingLabel","heading","onConfirm"],"sources":["../../../../src/views/Version/Restore/index.tsx"],"sourcesContent":["'use client'\n\nimport type { ClientCollectionConfig, ClientGlobalConfig, SanitizedCollectionConfig } from 'payload'\n\nimport { getTranslation } from '@payloadcms/translations'\nimport {\n Button,\n ConfirmationModal,\n PopupList,\n toast,\n useConfig,\n useModal,\n useRouteTransition,\n useTranslation,\n} from '@payloadcms/ui'\nimport { requests } from '@payloadcms/ui/shared'\nimport { useRouter } from 'next/navigation.js'\nimport { formatAdminURL } from 'payload/shared'\n\nimport './index.scss'\n\nimport React, { Fragment, useCallback, useState } from 'react'\n\nconst baseClass = 'restore-version'\nconst modalSlug = 'restore-version'\n\ntype Props = {\n className?: string\n collectionConfig?: ClientCollectionConfig\n globalConfig?: ClientGlobalConfig\n label: SanitizedCollectionConfig['labels']['singular']\n originalDocID: number | string\n status?: string\n versionDateFormatted: string\n versionID: string\n}\n\nexport const Restore: React.FC<Props> = ({\n className,\n collectionConfig,\n globalConfig,\n label,\n originalDocID,\n status,\n versionDateFormatted,\n versionID,\n}) => {\n const {\n config: {\n routes: { admin: adminRoute, api: apiRoute },\n },\n } = useConfig()\n\n const { toggleModal } = useModal()\n const router = useRouter()\n const { i18n, t } = useTranslation()\n const [draft, setDraft] = useState(false)\n const { startRouteTransition } = useRouteTransition()\n\n const restoreMessage = t(\n globalConfig ? 'version:aboutToRestoreGlobal' : 'version:aboutToRestore',\n {\n label: getTranslation(label, i18n),\n versionDate: versionDateFormatted,\n },\n )\n\n const canRestoreAsDraft = status !== 'draft' && collectionConfig?.versions?.drafts\n\n const handleRestore = useCallback(async () => {\n let fetchURL = formatAdminURL({\n apiRoute,\n path: '',\n })\n let redirectURL: string\n\n if (collectionConfig) {\n fetchURL = `${fetchURL}/${collectionConfig.slug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/collections/${collectionConfig.slug}/${originalDocID}`,\n })\n }\n\n if (globalConfig) {\n fetchURL = `${fetchURL}/globals/${globalConfig.slug}/versions/${versionID}?draft=${draft}`\n redirectURL = formatAdminURL({\n adminRoute,\n path: `/globals/${globalConfig.slug}`,\n })\n }\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 return startRouteTransition(() => router.push(redirectURL))\n } else {\n toast.error(t('version:problemRestoringVersion'))\n }\n }, [\n apiRoute,\n collectionConfig,\n globalConfig,\n i18n.language,\n versionID,\n draft,\n adminRoute,\n originalDocID,\n startRouteTransition,\n router,\n t,\n ])\n\n return (\n <Fragment>\n <div className={[baseClass, className].filter(Boolean).join(' ')}>\n <Button\n buttonStyle=\"primary\"\n className={[canRestoreAsDraft && `${baseClass}__restore-as-draft-button`]\n .filter(Boolean)\n .join(' ')}\n onClick={() => toggleModal(modalSlug)}\n size=\"medium\"\n SubMenuPopupContent={\n canRestoreAsDraft\n ? () => (\n <PopupList.ButtonGroup>\n <PopupList.Button onClick={() => [setDraft(true), toggleModal(modalSlug)]}>\n {t('version:restoreAsDraft')}\n </PopupList.Button>\n </PopupList.ButtonGroup>\n )\n : null\n }\n >\n {t('version:restoreThisVersion')}\n </Button>\n </div>\n <ConfirmationModal\n body={restoreMessage}\n confirmingLabel={t('version:restoring')}\n heading={t('version:confirmVersionRestoration')}\n modalSlug={modalSlug}\n onConfirm={handleRestore}\n />\n </Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,5 +1,131 @@
|
|
|
1
1
|
export function withPayload(nextConfig?: import("next").NextConfig, options?: {
|
|
2
2
|
devBundleServerPackages?: boolean;
|
|
3
|
-
}):
|
|
3
|
+
}): {
|
|
4
|
+
serverExternalPackages: string[];
|
|
5
|
+
allowedDevOrigins?: string[];
|
|
6
|
+
exportPathMap?: (defaultMap: import("next/dist/server/config-shared.js").ExportPathMap, ctx: {
|
|
7
|
+
dev: boolean;
|
|
8
|
+
dir: string;
|
|
9
|
+
outDir: string | null;
|
|
10
|
+
distDir: string;
|
|
11
|
+
buildId: string;
|
|
12
|
+
}) => Promise<import("next/dist/server/config-shared.js").ExportPathMap> | import("next/dist/server/config-shared.js").ExportPathMap;
|
|
13
|
+
i18n?: import("next/dist/server/config-shared.js").I18NConfig | null;
|
|
14
|
+
typescript?: import("next/dist/server/config-shared.js").TypeScriptConfig;
|
|
15
|
+
typedRoutes?: boolean;
|
|
16
|
+
headers?: () => Promise<import("next/dist/lib/load-custom-routes.js").Header[]> | import("next/dist/lib/load-custom-routes.js").Header[];
|
|
17
|
+
rewrites?: () => Promise<import("next/dist/lib/load-custom-routes.js").Rewrite[] | {
|
|
18
|
+
beforeFiles?: import("next/dist/lib/load-custom-routes.js").Rewrite[];
|
|
19
|
+
afterFiles?: import("next/dist/lib/load-custom-routes.js").Rewrite[];
|
|
20
|
+
fallback?: import("next/dist/lib/load-custom-routes.js").Rewrite[];
|
|
21
|
+
}> | import("next/dist/lib/load-custom-routes.js").Rewrite[] | {
|
|
22
|
+
beforeFiles?: import("next/dist/lib/load-custom-routes.js").Rewrite[];
|
|
23
|
+
afterFiles?: import("next/dist/lib/load-custom-routes.js").Rewrite[];
|
|
24
|
+
fallback?: import("next/dist/lib/load-custom-routes.js").Rewrite[];
|
|
25
|
+
};
|
|
26
|
+
redirects?: () => Promise<import("next/dist/lib/load-custom-routes.js").Redirect[]> | import("next/dist/lib/load-custom-routes.js").Redirect[];
|
|
27
|
+
excludeDefaultMomentLocales?: boolean;
|
|
28
|
+
webpack?: import("next/dist/server/config-shared.js").NextJsWebpackConfig | null;
|
|
29
|
+
trailingSlash?: boolean;
|
|
30
|
+
env?: Record<string, string | undefined>;
|
|
31
|
+
distDir?: string;
|
|
32
|
+
cleanDistDir?: boolean;
|
|
33
|
+
assetPrefix?: string;
|
|
34
|
+
cacheHandler?: string | undefined;
|
|
35
|
+
adapterPath?: string;
|
|
36
|
+
cacheHandlers?: {
|
|
37
|
+
default?: string;
|
|
38
|
+
remote?: string;
|
|
39
|
+
static?: string;
|
|
40
|
+
[handlerName: string]: string | undefined;
|
|
41
|
+
};
|
|
42
|
+
cacheMaxMemorySize?: number;
|
|
43
|
+
useFileSystemPublicRoutes?: boolean;
|
|
44
|
+
generateBuildId?: () => string | null | Promise<string | null>;
|
|
45
|
+
generateEtags?: boolean;
|
|
46
|
+
pageExtensions?: string[];
|
|
47
|
+
compress?: boolean;
|
|
48
|
+
poweredByHeader?: boolean;
|
|
49
|
+
images?: import("next/dist/shared/lib/image-config.js").ImageConfig;
|
|
50
|
+
devIndicators?: false | {
|
|
51
|
+
position?: "top-left" | "top-right" | "bottom-left" | "bottom-right";
|
|
52
|
+
};
|
|
53
|
+
onDemandEntries?: {
|
|
54
|
+
maxInactiveAge?: number;
|
|
55
|
+
pagesBufferLength?: number;
|
|
56
|
+
};
|
|
57
|
+
deploymentId?: string;
|
|
58
|
+
basePath?: string;
|
|
59
|
+
sassOptions?: {
|
|
60
|
+
implementation?: string;
|
|
61
|
+
[key: string]: any;
|
|
62
|
+
};
|
|
63
|
+
productionBrowserSourceMaps?: boolean;
|
|
64
|
+
reactCompiler?: boolean | import("next/dist/server/config-shared.js").ReactCompilerOptions;
|
|
65
|
+
reactProductionProfiling?: boolean;
|
|
66
|
+
reactStrictMode?: boolean | null;
|
|
67
|
+
reactMaxHeadersLength?: number;
|
|
68
|
+
httpAgentOptions?: {
|
|
69
|
+
keepAlive?: boolean;
|
|
70
|
+
};
|
|
71
|
+
staticPageGenerationTimeout?: number;
|
|
72
|
+
crossOrigin?: "anonymous" | "use-credentials";
|
|
73
|
+
compiler?: {
|
|
74
|
+
reactRemoveProperties?: boolean | {
|
|
75
|
+
properties?: string[];
|
|
76
|
+
};
|
|
77
|
+
relay?: {
|
|
78
|
+
src: string;
|
|
79
|
+
artifactDirectory?: string;
|
|
80
|
+
language?: "typescript" | "javascript" | "flow";
|
|
81
|
+
eagerEsModules?: boolean;
|
|
82
|
+
};
|
|
83
|
+
removeConsole?: boolean | {
|
|
84
|
+
exclude?: string[];
|
|
85
|
+
};
|
|
86
|
+
styledComponents?: boolean | import("next/dist/server/config-shared.js").StyledComponentsConfig;
|
|
87
|
+
emotion?: boolean | import("next/dist/server/config-shared.js").EmotionConfig;
|
|
88
|
+
styledJsx?: boolean | {
|
|
89
|
+
useLightningcss?: boolean;
|
|
90
|
+
};
|
|
91
|
+
define?: Record<string, string | number | boolean>;
|
|
92
|
+
defineServer?: Record<string, string | number | boolean>;
|
|
93
|
+
runAfterProductionCompile?: (metadata: {
|
|
94
|
+
projectDir: string;
|
|
95
|
+
distDir: string;
|
|
96
|
+
}) => Promise<void>;
|
|
97
|
+
};
|
|
98
|
+
output?: "standalone" | "export";
|
|
99
|
+
transpilePackages?: string[];
|
|
100
|
+
turbopack?: import("next/dist/server/config-shared.js").TurbopackOptions;
|
|
101
|
+
skipMiddlewareUrlNormalize?: boolean;
|
|
102
|
+
skipProxyUrlNormalize?: boolean;
|
|
103
|
+
skipTrailingSlashRedirect?: boolean;
|
|
104
|
+
modularizeImports?: Record<string, {
|
|
105
|
+
transform: string | Record<string, string>;
|
|
106
|
+
preventFullImport?: boolean;
|
|
107
|
+
skipDefaultConversion?: boolean;
|
|
108
|
+
}>;
|
|
109
|
+
logging?: import("next/dist/server/config-shared.js").LoggingConfig | false;
|
|
110
|
+
enablePrerenderSourceMaps?: boolean;
|
|
111
|
+
cacheComponents?: boolean;
|
|
112
|
+
cacheLife?: {
|
|
113
|
+
[profile: string]: {
|
|
114
|
+
stale?: number;
|
|
115
|
+
revalidate?: number;
|
|
116
|
+
expire?: number;
|
|
117
|
+
};
|
|
118
|
+
};
|
|
119
|
+
expireTime?: number;
|
|
120
|
+
experimental?: import("next/dist/server/config-shared.js").ExperimentalConfig;
|
|
121
|
+
bundlePagesRouterDependencies?: boolean;
|
|
122
|
+
outputFileTracingRoot?: string;
|
|
123
|
+
outputFileTracingExcludes?: Record<string, string[]>;
|
|
124
|
+
outputFileTracingIncludes?: Record<string, string[]>;
|
|
125
|
+
watchOptions?: {
|
|
126
|
+
pollIntervalMs?: number;
|
|
127
|
+
};
|
|
128
|
+
htmlLimitedBots?: RegExp;
|
|
129
|
+
};
|
|
4
130
|
export default withPayload;
|
|
5
131
|
//# sourceMappingURL=withPayload.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withPayload.d.ts","sourceRoot":"","sources":["../../src/withPayload/withPayload.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"withPayload.d.ts","sourceRoot":"","sources":["../../src/withPayload/withPayload.js"],"names":[],"mappings":"AAiBO,yCAJI,OAAO,MAAM,EAAE,UAAU,YAEjC;IAA0B,uBAAuB,GAAzC,OAAO;CAA6F;;;;;;;;;;;;;;;mBAiQ+svB,CAAC;kBAA+B,CAAC;gBAA6B,CAAC;;mBAAuD,CAAC;kBAA+B,CAAC;gBAA6B,CAAC;;;;;;;;;;;;;eAA8lF,CAAC;cAAwB,CAAC;cAAwB,CAAC;;;;;;;;;;;;gBAAo9D,CAAC;;;sBAAie,CAAC;yBAA4H,CAAC;;;;;sBAAkiB,CAAC;;;;;;;;;iBAA4+C,CAAC;;;;;6BAA+sB,CAAC;sBAAoC,CAAC;;aAAoC,CAAC;;6BAA0D,CAAC;oBAA8B,CAAC;0BAAkE,CAAC;;qBAA2C,CAAC;mBAAiC,CAAC;;wBAA+C,CAAC;eAAmD,CAAC;iBAA4C,CAAC;2BAAyC,CAAC;;cAA6L,CAAC;oBAAyP,CAAC;iCAA8S,CAAC;;;;;;;;;;;;;yBAAm0D,CAAC;6BAAwC,CAAC;;;;;;;iBAAowB,CAAC;sBAAgC,CAAC;kBAA4B,CAAC;;;;;;;;;;sBAA21C,CAAC;;;EAH1nqC"}
|
|
@@ -3,9 +3,7 @@
|
|
|
3
3
|
* imported directly in next.config.mjs files. Since next.config files run before the build process,
|
|
4
4
|
* TypeScript compilation is not available. This ensures compatibility with all templates and
|
|
5
5
|
* user projects regardless of their TypeScript setup.
|
|
6
|
-
*/
|
|
7
|
-
import { withPayloadLegacy } from './withPayloadLegacy.js';
|
|
8
|
-
const poweredByHeader = {
|
|
6
|
+
*/const poweredByHeader = {
|
|
9
7
|
key: 'X-Powered-By',
|
|
10
8
|
value: 'Next.js, Payload'
|
|
11
9
|
};
|
|
@@ -15,9 +13,6 @@ const poweredByHeader = {
|
|
|
15
13
|
* @param {boolean} [options.devBundleServerPackages] - Whether to bundle server packages in development mode. @default false
|
|
16
14
|
* */
|
|
17
15
|
export const withPayload = (nextConfig = {}, options = {}) => {
|
|
18
|
-
const nextjsVersion = getNextjsVersion();
|
|
19
|
-
const supportsTurbopackBuild = supportsTurbopackExternalizeTransitiveDependencies(nextjsVersion);
|
|
20
|
-
const hasServerFastRefreshConfigOption = supportsServerFastRefreshConfig(nextjsVersion);
|
|
21
16
|
const env = nextConfig.env || {};
|
|
22
17
|
if (nextConfig.experimental?.staleTimes?.dynamic) {
|
|
23
18
|
console.warn('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.');
|
|
@@ -26,9 +21,6 @@ export const withPayload = (nextConfig = {}, options = {}) => {
|
|
|
26
21
|
if (nextConfig.cacheComponents) {
|
|
27
22
|
env.PAYLOAD_CACHE_COMPONENTS_ENABLED = 'true';
|
|
28
23
|
}
|
|
29
|
-
if (nextjsVersion?.major === 16 && !hasServerFastRefreshConfigOption) {
|
|
30
|
-
console.warn('Payload: You are using an unsupported Next.js 16 version. You can find the supported Next.js versions here: https://payloadcms.com/docs/getting-started/installation');
|
|
31
|
-
}
|
|
32
24
|
const consoleWarn = console.warn;
|
|
33
25
|
const sassWarningTexts = [
|
|
34
26
|
// This warning is a lie - without silencing import deprecation warnings, sass will spam the console with deprecation warnings
|
|
@@ -48,9 +40,7 @@ export const withPayload = (nextConfig = {}, options = {}) => {
|
|
|
48
40
|
experimental: {
|
|
49
41
|
...(nextConfig.experimental || {}),
|
|
50
42
|
// Server fast refresh breaks HMR
|
|
51
|
-
|
|
52
|
-
turbopackServerFastRefresh: false
|
|
53
|
-
} : {})
|
|
43
|
+
turbopackServerFastRefresh: false
|
|
54
44
|
},
|
|
55
45
|
sassOptions: {
|
|
56
46
|
...(nextConfig.sassOptions || {}),
|
|
@@ -194,16 +184,12 @@ export const withPayload = (nextConfig = {}, options = {}) => {
|
|
|
194
184
|
process.env.NEXT_BASE_PATH = nextConfig.basePath;
|
|
195
185
|
baseConfig.env.NEXT_BASE_PATH = nextConfig.basePath;
|
|
196
186
|
}
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
// Prevents turbopack build errors by the thread-stream package which is installed by pino
|
|
204
|
-
'pino']
|
|
205
|
-
};
|
|
206
|
-
}
|
|
187
|
+
return {
|
|
188
|
+
...baseConfig,
|
|
189
|
+
serverExternalPackages: [...(baseConfig.serverExternalPackages || []), 'drizzle-kit', 'drizzle-kit/api', 'sharp', 'libsql', 'require-in-the-middle', 'json-schema-to-typescript',
|
|
190
|
+
// Prevents turbopack build errors by the thread-stream package which is installed by pino
|
|
191
|
+
'pino']
|
|
192
|
+
};
|
|
207
193
|
};
|
|
208
194
|
export default withPayload;
|
|
209
195
|
//# sourceMappingURL=withPayload.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withPayload.js","names":["getNextjsVersion","supportsServerFastRefreshConfig","supportsTurbopackExternalizeTransitiveDependencies","withPayloadLegacy","poweredByHeader","key","value","withPayload","nextConfig","options","nextjsVersion","supportsTurbopackBuild","hasServerFastRefreshConfigOption","env","experimental","staleTimes","dynamic","console","warn","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","cacheComponents","PAYLOAD_CACHE_COMPONENTS_ENABLED","major","consoleWarn","sassWarningTexts","args","some","text","includes","baseConfig","turbopackServerFastRefresh","sassOptions","silenceDeprecations","outputFileTracingExcludes","outputFileTracingIncludes","turbopack","headers","headersFromConfig","source","serverExternalPackages","process","NODE_ENV","devBundleServerPackages","webpack","webpackConfig","webpackOptions","incomingWebpackConfig","externals","plugins","IgnorePlugin","resourceRegExp","resolve","alias","fallback","aws4","basePath","NEXT_BASE_PATH"],"sources":["../../src/withPayload/withPayload.js"],"sourcesContent":["/**\n * These files must remain as plain JavaScript (.js) rather than TypeScript (.ts) because they are\n * imported directly in next.config.mjs files. Since next.config files run before the build process,\n * TypeScript compilation is not available. This ensures compatibility with all templates and\n * user projects regardless of their TypeScript setup.\n */\nimport {\n getNextjsVersion,\n supportsServerFastRefreshConfig,\n supportsTurbopackExternalizeTransitiveDependencies,\n} from './withPayload.utils.js'\nimport { withPayloadLegacy } from './withPayloadLegacy.js'\n\nconst poweredByHeader = {\n key: 'X-Powered-By',\n value: 'Next.js, Payload',\n}\n\n/**\n * @param {import('next').NextConfig} nextConfig\n * @param {Object} [options] - Optional configuration options\n * @param {boolean} [options.devBundleServerPackages] - Whether to bundle server packages in development mode. @default false\n * */\nexport const withPayload = (nextConfig = {}, options = {}) => {\n const nextjsVersion = getNextjsVersion()\n\n const supportsTurbopackBuild = supportsTurbopackExternalizeTransitiveDependencies(nextjsVersion)\n const hasServerFastRefreshConfigOption = supportsServerFastRefreshConfig(nextjsVersion)\n\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 (nextConfig.cacheComponents) {\n env.PAYLOAD_CACHE_COMPONENTS_ENABLED = 'true'\n }\n\n if (nextjsVersion?.major === 16 && !hasServerFastRefreshConfigOption) {\n console.warn(\n 'Payload: You are using an unsupported Next.js 16 version. You can find the supported Next.js versions here: https://payloadcms.com/docs/getting-started/installation',\n )\n }\n\n const consoleWarn = console.warn\n\n const sassWarningTexts = [\n // This warning is a lie - without silencing import deprecation warnings, sass will spam the console with deprecation warnings\n 'Future import deprecation is not yet active, so silencing it is unnecessary',\n // Sometimes happens despite silenceDeprecations\n 'The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0',\n ]\n console.warn = (...args) => {\n if (\n (typeof args[1] === 'string' && sassWarningTexts.some((text) => args[1].includes(text))) ||\n (typeof args[0] === 'string' && sassWarningTexts.some((text) => args[0].includes(text)))\n ) {\n return\n }\n\n consoleWarn(...args)\n }\n\n /** @type {import('next').NextConfig} */\n const baseConfig = {\n ...nextConfig,\n env,\n experimental: {\n ...(nextConfig.experimental || {}),\n // Server fast refresh breaks HMR\n ...(hasServerFastRefreshConfigOption ? { turbopackServerFastRefresh: false } : {}),\n },\n sassOptions: {\n ...(nextConfig.sassOptions || {}),\n /**\n * This prevents scss warning spam during pnpm dev that looks like this:\n * ⚠ ./test/admin/components/views/CustomMinimal/index.scss\n * Issue while running loader\n * SassWarning: Deprecation Warning on line 8, column 8 of file:///Users/alessio/Documents/GitHub/ payload/packages/ui/src/scss/styles.scss:8:8:\n * Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.\n *\n * More info and automated migrator: https://sass-lang.com/d/import\n *\n * 8 | @import 'queries';\n *\n *\n * packages/ui/src/scss/styles.scss 9:9 @import\n * test/admin/components/views/CustomMinimal/index.scss 1:9 root stylesheet\n *\n * @todo: update all outdated scss imports to use @use instead of @import. Then, we can remove this.\n */\n silenceDeprecations: [...(nextConfig.sassOptions?.silenceDeprecations || []), 'import'],\n },\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 turbopack: {\n ...(nextConfig.turbopack || {}),\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 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 source: '/:path*',\n },\n ]\n },\n serverExternalPackages: [\n ...(nextConfig.serverExternalPackages || []),\n // WHY: without externalizing graphql, a graphql version error will be thrown\n // during runtime (\"Ensure that there is only one instance of \\\"graphql\\\" in the node_modules\\ndirectory.\")\n 'graphql',\n ...(process.env.NODE_ENV === 'development' && options.devBundleServerPackages !== true\n ? /**\n * Unless explicitly disabled by the user, by passing `devBundleServerPackages: true` to withPayload, we\n * do not bundle server-only packages during dev for two reasons:\n *\n * 1. Performance: Fewer files to compile means faster compilation speeds.\n * 2. Turbopack support: Webpack's externals are not supported by Turbopack.\n *\n * Regarding Turbopack support: Unlike webpack.externals, we cannot use serverExternalPackages to\n * externalized packages that are not resolvable from the project root. So including a package like\n * \"drizzle-kit\" in here would do nothing - Next.js will ignore the rule and still bundle the package -\n * because it detects that the package is not resolvable from the project root (= not directly installed\n * by the user in their own package.json).\n *\n * Instead, we can use serverExternalPackages for the entry-point packages that *are* installed directly\n * by the user (e.g. db-postgres, which then installs drizzle-kit as a dependency).\n *\n *\n *\n * We should only do this during development, not build, because externalizing these packages can hurt\n * the bundle size. Not only does it disable tree-shaking, it also risks installing duplicate copies of the\n * same package.\n *\n * Example:\n * - @payloadcms/richtext-lexical (in bundle) -> installs qs-esm (bundled because of importer)\n * - payload (not in bundle, external) -> installs qs-esm (external because of importer)\n * Result: we have two copies of qs-esm installed - one in the bundle, and one in node_modules.\n *\n * During development, these bundle size difference do not matter much, and development speed /\n * turbopack support are more important.\n */\n [\n 'payload',\n '@payloadcms/db-mongodb',\n '@payloadcms/db-postgres',\n '@payloadcms/db-sqlite',\n '@payloadcms/db-vercel-postgres',\n '@payloadcms/db-d1-sqlite',\n '@payloadcms/drizzle',\n '@payloadcms/email-nodemailer',\n '@payloadcms/email-resend',\n '@payloadcms/graphql',\n '@payloadcms/payload-cloud',\n '@payloadcms/plugin-redirects',\n // TODO: Add the following packages, excluding their /client subpath exports, once Next.js supports it\n // see: https://github.com/vercel/next.js/discussions/76991\n //'@payloadcms/plugin-cloud-storage',\n //'@payloadcms/plugin-sentry',\n //'@payloadcms/plugin-stripe',\n // @payloadcms/richtext-lexical\n //'@payloadcms/storage-azure',\n //'@payloadcms/storage-gcs',\n //'@payloadcms/storage-s3',\n //'@payloadcms/storage-uploadthing',\n //'@payloadcms/storage-vercel-blob',\n ]\n : []),\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 /**\n * See the explanation in the serverExternalPackages section above.\n * We need to force Webpack to emit require() calls for these packages, even though they are not\n * resolvable from the project root. You would expect this to error during runtime, but Next.js seems to be able to require these just fine.\n *\n * This is the only way to get Webpack Build to work, without the bundle size caveats of externalizing the\n * entry point packages, as explained in the serverExternalPackages section above.\n */\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n 'require-in-the-middle',\n 'json-schema-to-typescript',\n ],\n plugins: [\n ...(incomingWebpackConfig?.plugins || []),\n // Fix cloudflare:sockets error: https://github.com/vercel/next.js/discussions/50177\n new webpackOptions.webpack.IgnorePlugin({\n resourceRegExp: /^pg-native$|^cloudflare:sockets$/,\n }),\n ],\n resolve: {\n ...(incomingWebpackConfig?.resolve || {}),\n alias: {\n ...(incomingWebpackConfig?.resolve?.alias || {}),\n },\n fallback: {\n ...(incomingWebpackConfig?.resolve?.fallback || {}),\n /*\n * This fixes the following warning when running next build with webpack (tested on Next.js 16.0.3 with Payload 3.64.0):\n *\n * ⚠ Compiled with warnings in 8.7s\n *\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js\n * Module not found: Can't resolve 'aws4' in '/Users/alessio/Documents/temp/next16p/node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib'\n *\n * Import trace for requested module:\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/client-side-encryption/client_encryption.js\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/index.js\n * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/lib/index.js\n * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/index.js\n * ./node_modules/.pnpm/@payloadcms+db-mongodb@3.64.0_payload@3.64.0_graphql@16.12.0_typescript@5.7.3_/node_modules/@payloadcms/db-mongodb/dist/index.js\n * ./src/payload.config.ts\n * ./src/app/my-route/route.ts\n *\n **/\n aws4: false,\n },\n },\n }\n },\n }\n\n if (nextConfig.basePath) {\n process.env.NEXT_BASE_PATH = nextConfig.basePath\n baseConfig.env.NEXT_BASE_PATH = nextConfig.basePath\n }\n\n if (!supportsTurbopackBuild) {\n return withPayloadLegacy(baseConfig)\n } else {\n return {\n ...baseConfig,\n serverExternalPackages: [\n ...(baseConfig.serverExternalPackages || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n 'require-in-the-middle',\n 'json-schema-to-typescript',\n // Prevents turbopack build errors by the thread-stream package which is installed by pino\n 'pino',\n ],\n }\n }\n}\n\nexport default withPayload\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"withPayload.js","names":["poweredByHeader","key","value","withPayload","nextConfig","options","env","experimental","staleTimes","dynamic","console","warn","NEXT_PUBLIC_ENABLE_ROUTER_CACHE_REFRESH","cacheComponents","PAYLOAD_CACHE_COMPONENTS_ENABLED","consoleWarn","sassWarningTexts","args","some","text","includes","baseConfig","turbopackServerFastRefresh","sassOptions","silenceDeprecations","outputFileTracingExcludes","outputFileTracingIncludes","turbopack","headers","headersFromConfig","source","serverExternalPackages","process","NODE_ENV","devBundleServerPackages","webpack","webpackConfig","webpackOptions","incomingWebpackConfig","externals","plugins","IgnorePlugin","resourceRegExp","resolve","alias","fallback","aws4","basePath","NEXT_BASE_PATH"],"sources":["../../src/withPayload/withPayload.js"],"sourcesContent":["/**\n * These files must remain as plain JavaScript (.js) rather than TypeScript (.ts) because they are\n * imported directly in next.config.mjs files. Since next.config files run before the build process,\n * TypeScript compilation is not available. This ensures compatibility with all templates and\n * user projects regardless of their TypeScript setup.\n */\n\nconst poweredByHeader = {\n key: 'X-Powered-By',\n value: 'Next.js, Payload',\n}\n\n/**\n * @param {import('next').NextConfig} nextConfig\n * @param {Object} [options] - Optional configuration options\n * @param {boolean} [options.devBundleServerPackages] - Whether to bundle server packages in development mode. @default false\n * */\nexport const withPayload = (nextConfig = {}, options = {}) => {\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 (nextConfig.cacheComponents) {\n env.PAYLOAD_CACHE_COMPONENTS_ENABLED = 'true'\n }\n\n const consoleWarn = console.warn\n\n const sassWarningTexts = [\n // This warning is a lie - without silencing import deprecation warnings, sass will spam the console with deprecation warnings\n 'Future import deprecation is not yet active, so silencing it is unnecessary',\n // Sometimes happens despite silenceDeprecations\n 'The legacy JS API is deprecated and will be removed in Dart Sass 2.0.0',\n ]\n console.warn = (...args) => {\n if (\n (typeof args[1] === 'string' && sassWarningTexts.some((text) => args[1].includes(text))) ||\n (typeof args[0] === 'string' && sassWarningTexts.some((text) => args[0].includes(text)))\n ) {\n return\n }\n\n consoleWarn(...args)\n }\n\n /** @type {import('next').NextConfig} */\n const baseConfig = {\n ...nextConfig,\n env,\n experimental: {\n ...(nextConfig.experimental || {}),\n // Server fast refresh breaks HMR\n turbopackServerFastRefresh: false,\n },\n sassOptions: {\n ...(nextConfig.sassOptions || {}),\n /**\n * This prevents scss warning spam during pnpm dev that looks like this:\n * ⚠ ./test/admin/components/views/CustomMinimal/index.scss\n * Issue while running loader\n * SassWarning: Deprecation Warning on line 8, column 8 of file:///Users/alessio/Documents/GitHub/ payload/packages/ui/src/scss/styles.scss:8:8:\n * Sass @import rules are deprecated and will be removed in Dart Sass 3.0.0.\n *\n * More info and automated migrator: https://sass-lang.com/d/import\n *\n * 8 | @import 'queries';\n *\n *\n * packages/ui/src/scss/styles.scss 9:9 @import\n * test/admin/components/views/CustomMinimal/index.scss 1:9 root stylesheet\n *\n * @todo: update all outdated scss imports to use @use instead of @import. Then, we can remove this.\n */\n silenceDeprecations: [...(nextConfig.sassOptions?.silenceDeprecations || []), 'import'],\n },\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 turbopack: {\n ...(nextConfig.turbopack || {}),\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 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 source: '/:path*',\n },\n ]\n },\n serverExternalPackages: [\n ...(nextConfig.serverExternalPackages || []),\n // WHY: without externalizing graphql, a graphql version error will be thrown\n // during runtime (\"Ensure that there is only one instance of \\\"graphql\\\" in the node_modules\\ndirectory.\")\n 'graphql',\n ...(process.env.NODE_ENV === 'development' && options.devBundleServerPackages !== true\n ? /**\n * Unless explicitly disabled by the user, by passing `devBundleServerPackages: true` to withPayload, we\n * do not bundle server-only packages during dev for two reasons:\n *\n * 1. Performance: Fewer files to compile means faster compilation speeds.\n * 2. Turbopack support: Webpack's externals are not supported by Turbopack.\n *\n * Regarding Turbopack support: Unlike webpack.externals, we cannot use serverExternalPackages to\n * externalized packages that are not resolvable from the project root. So including a package like\n * \"drizzle-kit\" in here would do nothing - Next.js will ignore the rule and still bundle the package -\n * because it detects that the package is not resolvable from the project root (= not directly installed\n * by the user in their own package.json).\n *\n * Instead, we can use serverExternalPackages for the entry-point packages that *are* installed directly\n * by the user (e.g. db-postgres, which then installs drizzle-kit as a dependency).\n *\n *\n *\n * We should only do this during development, not build, because externalizing these packages can hurt\n * the bundle size. Not only does it disable tree-shaking, it also risks installing duplicate copies of the\n * same package.\n *\n * Example:\n * - @payloadcms/richtext-lexical (in bundle) -> installs qs-esm (bundled because of importer)\n * - payload (not in bundle, external) -> installs qs-esm (external because of importer)\n * Result: we have two copies of qs-esm installed - one in the bundle, and one in node_modules.\n *\n * During development, these bundle size difference do not matter much, and development speed /\n * turbopack support are more important.\n */\n [\n 'payload',\n '@payloadcms/db-mongodb',\n '@payloadcms/db-postgres',\n '@payloadcms/db-sqlite',\n '@payloadcms/db-vercel-postgres',\n '@payloadcms/db-d1-sqlite',\n '@payloadcms/drizzle',\n '@payloadcms/email-nodemailer',\n '@payloadcms/email-resend',\n '@payloadcms/graphql',\n '@payloadcms/payload-cloud',\n '@payloadcms/plugin-redirects',\n // TODO: Add the following packages, excluding their /client subpath exports, once Next.js supports it\n // see: https://github.com/vercel/next.js/discussions/76991\n //'@payloadcms/plugin-cloud-storage',\n //'@payloadcms/plugin-sentry',\n //'@payloadcms/plugin-stripe',\n // @payloadcms/richtext-lexical\n //'@payloadcms/storage-azure',\n //'@payloadcms/storage-gcs',\n //'@payloadcms/storage-s3',\n //'@payloadcms/storage-uploadthing',\n //'@payloadcms/storage-vercel-blob',\n ]\n : []),\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 /**\n * See the explanation in the serverExternalPackages section above.\n * We need to force Webpack to emit require() calls for these packages, even though they are not\n * resolvable from the project root. You would expect this to error during runtime, but Next.js seems to be able to require these just fine.\n *\n * This is the only way to get Webpack Build to work, without the bundle size caveats of externalizing the\n * entry point packages, as explained in the serverExternalPackages section above.\n */\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n 'require-in-the-middle',\n 'json-schema-to-typescript',\n ],\n plugins: [\n ...(incomingWebpackConfig?.plugins || []),\n // Fix cloudflare:sockets error: https://github.com/vercel/next.js/discussions/50177\n new webpackOptions.webpack.IgnorePlugin({\n resourceRegExp: /^pg-native$|^cloudflare:sockets$/,\n }),\n ],\n resolve: {\n ...(incomingWebpackConfig?.resolve || {}),\n alias: {\n ...(incomingWebpackConfig?.resolve?.alias || {}),\n },\n fallback: {\n ...(incomingWebpackConfig?.resolve?.fallback || {}),\n /*\n * This fixes the following warning when running next build with webpack (tested on Next.js 16.0.3 with Payload 3.64.0):\n *\n * ⚠ Compiled with warnings in 8.7s\n *\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js\n * Module not found: Can't resolve 'aws4' in '/Users/alessio/Documents/temp/next16p/node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib'\n *\n * Import trace for requested module:\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/deps.js\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/client-side-encryption/client_encryption.js\n * ./node_modules/.pnpm/mongodb@6.16.0/node_modules/mongodb/lib/index.js\n * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/lib/index.js\n * ./node_modules/.pnpm/mongoose@8.15.1/node_modules/mongoose/index.js\n * ./node_modules/.pnpm/@payloadcms+db-mongodb@3.64.0_payload@3.64.0_graphql@16.12.0_typescript@5.7.3_/node_modules/@payloadcms/db-mongodb/dist/index.js\n * ./src/payload.config.ts\n * ./src/app/my-route/route.ts\n *\n **/\n aws4: false,\n },\n },\n }\n },\n }\n\n if (nextConfig.basePath) {\n process.env.NEXT_BASE_PATH = nextConfig.basePath\n baseConfig.env.NEXT_BASE_PATH = nextConfig.basePath\n }\n\n return {\n ...baseConfig,\n serverExternalPackages: [\n ...(baseConfig.serverExternalPackages || []),\n 'drizzle-kit',\n 'drizzle-kit/api',\n 'sharp',\n 'libsql',\n 'require-in-the-middle',\n 'json-schema-to-typescript',\n // Prevents turbopack build errors by the thread-stream package which is installed by pino\n 'pino',\n ],\n }\n}\n\nexport default withPayload\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -9,20 +9,6 @@ export function parseSemver(input: string): SemVer;
|
|
|
9
9
|
* @returns {SemVer | undefined}
|
|
10
10
|
*/
|
|
11
11
|
export function getNextjsVersion(): SemVer | undefined;
|
|
12
|
-
/**
|
|
13
|
-
* Checks if the current Next.js version supports the `experimental.serverFastRefresh` option.
|
|
14
|
-
* This was introduced in Next.js v16.2.2
|
|
15
|
-
* @param {SemVer | undefined} version
|
|
16
|
-
* @returns {boolean}
|
|
17
|
-
*/
|
|
18
|
-
export function supportsServerFastRefreshConfig(version: SemVer | undefined): boolean;
|
|
19
|
-
/**
|
|
20
|
-
* Checks if the current Next.js version supports Turbopack externalize transitive dependencies.
|
|
21
|
-
* This was introduced in Next.js v16.1.0-canary.3
|
|
22
|
-
* @param {SemVer | undefined} version
|
|
23
|
-
* @returns {boolean}
|
|
24
|
-
*/
|
|
25
|
-
export function supportsTurbopackExternalizeTransitiveDependencies(version: SemVer | undefined): boolean;
|
|
26
12
|
/**
|
|
27
13
|
* Represents Semantic Versioning object
|
|
28
14
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withPayload.utils.d.ts","sourceRoot":"","sources":["../../src/withPayload/withPayload.utils.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"withPayload.utils.d.ts","sourceRoot":"","sources":["../../src/withPayload/withPayload.utils.js"],"names":[],"mappings":"AAoDA;;;;GAIG;AACH,mCAHW,MAAM,GACJ,MAAM,CAqBlB;AAED;;;GAGG;AACH,oCAFa,MAAM,GAAG,SAAS,CAyB9B;;;;;oBAjEa,MAAM;;;;oBACN,MAAM;YACN,MAAM;YACN,MAAM;YACN,MAAM;iBACN,MAAM"}
|
|
@@ -88,77 +88,4 @@ export function getNextjsVersion() {
|
|
|
88
88
|
return undefined;
|
|
89
89
|
}
|
|
90
90
|
}
|
|
91
|
-
/**
|
|
92
|
-
* Checks if the current Next.js version supports the `experimental.serverFastRefresh` option.
|
|
93
|
-
* This was introduced in Next.js v16.2.2
|
|
94
|
-
* @param {SemVer | undefined} version
|
|
95
|
-
* @returns {boolean}
|
|
96
|
-
*/
|
|
97
|
-
export function supportsServerFastRefreshConfig(version) {
|
|
98
|
-
if (!version) {
|
|
99
|
-
return false;
|
|
100
|
-
}
|
|
101
|
-
const {
|
|
102
|
-
major,
|
|
103
|
-
minor,
|
|
104
|
-
patch
|
|
105
|
-
} = version;
|
|
106
|
-
if (major === undefined || minor === undefined || patch === undefined) {
|
|
107
|
-
return false;
|
|
108
|
-
}
|
|
109
|
-
if (major > 16) {
|
|
110
|
-
return true;
|
|
111
|
-
}
|
|
112
|
-
if (major === 16) {
|
|
113
|
-
if (minor > 2) {
|
|
114
|
-
return true;
|
|
115
|
-
}
|
|
116
|
-
if (minor === 2) {
|
|
117
|
-
return patch >= 2;
|
|
118
|
-
}
|
|
119
|
-
}
|
|
120
|
-
return false;
|
|
121
|
-
}
|
|
122
|
-
/**
|
|
123
|
-
* Checks if the current Next.js version supports Turbopack externalize transitive dependencies.
|
|
124
|
-
* This was introduced in Next.js v16.1.0-canary.3
|
|
125
|
-
* @param {SemVer | undefined} version
|
|
126
|
-
* @returns {boolean}
|
|
127
|
-
*/
|
|
128
|
-
export function supportsTurbopackExternalizeTransitiveDependencies(version) {
|
|
129
|
-
if (!version) {
|
|
130
|
-
return false;
|
|
131
|
-
}
|
|
132
|
-
const {
|
|
133
|
-
canaryVersion,
|
|
134
|
-
major,
|
|
135
|
-
minor,
|
|
136
|
-
patch
|
|
137
|
-
} = version;
|
|
138
|
-
if (major === undefined || minor === undefined) {
|
|
139
|
-
return false;
|
|
140
|
-
}
|
|
141
|
-
if (major > 16) {
|
|
142
|
-
return true;
|
|
143
|
-
}
|
|
144
|
-
if (major === 16) {
|
|
145
|
-
if (minor > 1) {
|
|
146
|
-
return true;
|
|
147
|
-
}
|
|
148
|
-
if (minor === 1) {
|
|
149
|
-
// 16.1.1+ and canaries support this feature
|
|
150
|
-
if (patch > 0) {
|
|
151
|
-
return true;
|
|
152
|
-
}
|
|
153
|
-
if (canaryVersion !== undefined) {
|
|
154
|
-
// 16.1.0-canary.3+
|
|
155
|
-
return canaryVersion >= 3;
|
|
156
|
-
} else {
|
|
157
|
-
// Next.js 16.1.0
|
|
158
|
-
return true;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
return false;
|
|
163
|
-
}
|
|
164
91
|
//# sourceMappingURL=withPayload.utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withPayload.utils.js","names":["readFileSync","fileURLToPath","_parseInt","input","parseInt","SEMVER_REGEXP","parseSemver","match","major","minor","patch","prerelease","canaryVersion","startsWith","split","undefined","buildmetadata","isNaN","getNextjsVersion","pkgPath","import","meta","resolve","pkgUrl","require","pkgJson","JSON","parse","version","e","console","error"
|
|
1
|
+
{"version":3,"file":"withPayload.utils.js","names":["readFileSync","fileURLToPath","_parseInt","input","parseInt","SEMVER_REGEXP","parseSemver","match","major","minor","patch","prerelease","canaryVersion","startsWith","split","undefined","buildmetadata","isNaN","getNextjsVersion","pkgPath","import","meta","resolve","pkgUrl","require","pkgJson","JSON","parse","version","e","console","error"],"sources":["../../src/withPayload/withPayload.utils.js"],"sourcesContent":["/**\n * This was taken and modified from https://github.com/getsentry/sentry-javascript/blob/15256034ee8150a5b7dcb97d23eca1a5486f0cae/packages/nextjs/src/config/util.ts\n *\n * MIT License\n *\n * Copyright (c) 2012 Functional Software, Inc. dba Sentry\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy of\n * this software and associated documentation files (the \"Software\"), to deal in\n * the Software without restriction, including without limitation the rights to\n * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies\n * of the Software, and to permit persons to whom the Software is furnished to do\n * so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\n\nimport { readFileSync } from 'fs'\nimport { fileURLToPath } from 'url'\n\n/**\n * @param {string | undefined} input\n * @returns {number}\n */\nfunction _parseInt(input) {\n return parseInt(input || '', 10)\n}\n\n/**\n * Represents Semantic Versioning object\n * @typedef {Object} SemVer\n * @property {string} [buildmetadata]\n * @property {number} [canaryVersion] - undefined if not a canary version\n * @property {number} [major]\n * @property {number} [minor]\n * @property {number} [patch]\n * @property {string} [prerelease]\n */\n\n// https://semver.org/#is-there-a-suggested-regular-expression-regex-to-check-a-semver-string\nconst SEMVER_REGEXP =\n /^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-z-][0-9a-z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-z-][0-9a-z-]*))*))?(?:\\+([0-9a-z-]+(?:\\.[0-9a-z-]+)*))?$/i\n\n/**\n * Parses input into a SemVer interface\n * @param {string} input - string representation of a semver version\n * @returns {SemVer}\n */\nexport function parseSemver(input) {\n const match = input.match(SEMVER_REGEXP) || []\n const major = _parseInt(match[1])\n const minor = _parseInt(match[2])\n const patch = _parseInt(match[3])\n\n const prerelease = match[4]\n const canaryVersion = prerelease?.startsWith('canary.')\n ? parseInt(prerelease.split('.')[1] || '0', 10)\n : undefined\n\n return {\n buildmetadata: match[5],\n canaryVersion,\n major: isNaN(major) ? undefined : major,\n minor: isNaN(minor) ? undefined : minor,\n patch: isNaN(patch) ? undefined : patch,\n prerelease: match[4],\n }\n}\n\n/**\n * Returns the version of Next.js installed in the project, or undefined if it cannot be determined.\n * @returns {SemVer | undefined}\n */\nexport function getNextjsVersion() {\n try {\n /** @type {string} */\n let pkgPath\n\n // Check if we're in ESM or CJS environment\n if (typeof import.meta?.resolve === 'function') {\n // ESM environment - use import.meta.resolve\n const pkgUrl = import.meta.resolve('next/package.json')\n // Use fileURLToPath for proper cross-platform path handling (Windows, macOS, Linux)\n // new URL().pathname returns '/C:/path' on Windows which causes path resolution issues\n pkgPath = fileURLToPath(pkgUrl)\n } else {\n // CJS environment - use require.resolve\n pkgPath = require.resolve('next/package.json')\n }\n\n const pkgJson = JSON.parse(readFileSync(pkgPath, 'utf8'))\n return parseSemver(pkgJson.version)\n } catch (e) {\n console.error('Payload: Error getting Next.js version', e)\n return undefined\n }\n}\n"],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GA0BA,SAASA,YAAY,QAAQ;AAC7B,SAASC,aAAa,QAAQ;AAE9B;;;;AAIA,SAASC,UAAUC,KAAK;EACtB,OAAOC,QAAA,CAASD,KAAA,IAAS,IAAI;AAC/B;AAEA;;;;;;;;;GAAA,CAWA;AACA,MAAME,aAAA,GACJ;AAEF;;;;;AAKA,OAAO,SAASC,YAAYH,KAAK;EAC/B,MAAMI,KAAA,GAAQJ,KAAA,CAAMI,KAAK,CAACF,aAAA,KAAkB,EAAE;EAC9C,MAAMG,KAAA,GAAQN,SAAA,CAAUK,KAAK,CAAC,EAAE;EAChC,MAAME,KAAA,GAAQP,SAAA,CAAUK,KAAK,CAAC,EAAE;EAChC,MAAMG,KAAA,GAAQR,SAAA,CAAUK,KAAK,CAAC,EAAE;EAEhC,MAAMI,UAAA,GAAaJ,KAAK,CAAC,EAAE;EAC3B,MAAMK,aAAA,GAAgBD,UAAA,EAAYE,UAAA,CAAW,aACzCT,QAAA,CAASO,UAAA,CAAWG,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,KAAK,MAC1CC,SAAA;EAEJ,OAAO;IACLC,aAAA,EAAeT,KAAK,CAAC,EAAE;IACvBK,aAAA;IACAJ,KAAA,EAAOS,KAAA,CAAMT,KAAA,IAASO,SAAA,GAAYP,KAAA;IAClCC,KAAA,EAAOQ,KAAA,CAAMR,KAAA,IAASM,SAAA,GAAYN,KAAA;IAClCC,KAAA,EAAOO,KAAA,CAAMP,KAAA,IAASK,SAAA,GAAYL,KAAA;IAClCC,UAAA,EAAYJ,KAAK,CAAC;EACpB;AACF;AAEA;;;;AAIA,OAAO,SAASW,iBAAA;EACd,IAAI;IACF,qBACA,IAAIC,OAAA;IAEJ;IACA,IAAI,OAAOC,MAAA,CAAAC,IAAA,EAAaC,OAAA,KAAY,YAAY;MAC9C;MACA,MAAMC,MAAA,GAASH,MAAA,CAAAC,IAAA,CAAYC,OAAO,CAAC;MACnC;MACA;MACAH,OAAA,GAAUlB,aAAA,CAAcsB,MAAA;IAC1B,OAAO;MACL;MACAJ,OAAA,GAAUK,OAAA,CAAQF,OAAO,CAAC;IAC5B;IAEA,MAAMG,OAAA,GAAUC,IAAA,CAAKC,KAAK,CAAC3B,YAAA,CAAamB,OAAA,EAAS;IACjD,OAAOb,WAAA,CAAYmB,OAAA,CAAQG,OAAO;EACpC,EAAE,OAAOC,CAAA,EAAG;IACVC,OAAA,CAAQC,KAAK,CAAC,0CAA0CF,CAAA;IACxD,OAAOd,SAAA;EACT;AACF","ignoreList":[]}
|