From 6a9be9fa26d8bc9f028af1d8ad9618810fe45f01 Mon Sep 17 00:00:00 2001 From: Alessio Gravili Date: Mon, 8 Jul 2024 09:24:56 -0400 Subject: [PATCH] feat!: support latest Next.js versions, fix server-only props being passed to Client Document Views (#7026) **BREAKING:** The minimum required Next.js version has been bumped from `15.0.0-rc.0` to `15.0.0-canary.53`. This is because the way client components are represented changed somewhere between those versions, and it is not feasible to support both versions in our RSC detection logic. --- package.json | 2 +- packages/next/package.json | 2 +- packages/next/src/views/Document/index.tsx | 10 +- .../payload/src/utilities/isReactComponent.ts | 42 ++----- packages/ui/package.json | 2 +- pnpm-lock.yaml | 116 +++++++++--------- templates/_template/package.json | 2 +- templates/blank/package.json | 2 +- templates/with-payload-cloud/package.json | 2 +- templates/with-vercel-mongodb/package.json | 2 +- templates/with-vercel-postgres/package.json | 2 +- 11 files changed, 83 insertions(+), 101 deletions(-) diff --git a/package.json b/package.json index 07a575fd072..c1fbd953de6 100644 --- a/package.json +++ b/package.json @@ -130,7 +130,7 @@ "lint-staged": "^14.0.1", "minimist": "1.2.8", "mongodb-memory-server": "^9.0", - "next": "15.0.0-rc.0", + "next": "15.0.0-canary.53", "open": "^10.1.0", "p-limit": "^5.0.0", "pino": "8.15.0", diff --git a/packages/next/package.json b/packages/next/package.json index b688007f0f1..451c5694e0a 100644 --- a/packages/next/package.json +++ b/packages/next/package.json @@ -100,7 +100,7 @@ }, "peerDependencies": { "graphql": "^16.8.1", - "next": "^15.0.0-rc.0", + "next": "^15.0.0-canary.53", "payload": "workspace:*" }, "engines": { diff --git a/packages/next/src/views/Document/index.tsx b/packages/next/src/views/Document/index.tsx index 5b8297726fd..01e43438624 100644 --- a/packages/next/src/views/Document/index.tsx +++ b/packages/next/src/views/Document/index.tsx @@ -196,13 +196,6 @@ export const Document: React.FC = async ({ } } - const viewComponentProps: ServerSideEditViewProps = { - initPageResult, - params, - routeSegments: segments, - searchParams, - } - return ( = async ({ ( component: React.ComponentType | any, ): component is T { - const isClassComponent = - typeof component === 'function' && - component.prototype && - typeof component.prototype.render === 'function' - - const isFunctionalComponent = - typeof component === 'function' && (!component.prototype || !component.prototype.render) + if (component === null || component === undefined) { + return false + } + const hasClientComponentSymbol = component.$$typeof == clientRefSymbol + const isFunctionalComponent = typeof component === 'function' // Anonymous functions are Client Components in Turbopack. RSCs should have a name const isAnonymousFunction = typeof component === 'function' && component.name === '' - return (isClassComponent || isFunctionalComponent) && !isAnonymousFunction + const isRSC = isFunctionalComponent && !isAnonymousFunction && !hasClientComponentSymbol + + return isRSC } export function isReactClientComponent( component: React.ComponentType | any, ): component is T { - const isClientComponentWebpack = typeof component === 'object' && !isPlainObject(component) // In Webpack, client components are {} - const isClientComponentTurbo = typeof component === 'function' && component.name === '' // Anonymous functions are Client Components in Turbopack - - return isClientComponentWebpack || isClientComponentTurbo + if (component === null || component === undefined) { + return false + } + return !isReactServerComponentOrFunction(component) && component.$$typeof == clientRefSymbol } export function isReactComponentOrFunction( diff --git a/packages/ui/package.json b/packages/ui/package.json index ee1059f2c88..91b117026d5 100644 --- a/packages/ui/package.json +++ b/packages/ui/package.json @@ -122,7 +122,7 @@ "turbopack": "^0.0.1" }, "peerDependencies": { - "next": "^15.0.0-rc.0", + "next": "^15.0.0-canary.53", "payload": "workspace:*", "react": "^19.0.0 || ^19.0.0-rc-f994737d14-20240522", "react-dom": "^19.0.0 || ^19.0.0-rc-f994737d14-20240522" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9f77eb408fc..0a5d6d89aa9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -147,8 +147,8 @@ importers: specifier: ^9.0 version: 9.1.8 next: - specifier: 15.0.0-rc.0 - version: 15.0.0-rc.0(@babel/core@7.24.5)(@playwright/test@1.43.0)(babel-plugin-react-compiler@0.0.0-experimental-592953e-20240517)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522) + specifier: 15.0.0-canary.53 + version: 15.0.0-canary.53(@babel/core@7.24.5)(@playwright/test@1.43.0)(babel-plugin-react-compiler@0.0.0-experimental-592953e-20240517)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522) open: specifier: ^10.1.0 version: 10.1.0 @@ -580,8 +580,8 @@ importers: specifier: 1.6.2 version: 1.6.2 next: - specifier: ^15.0.0-rc.0 - version: 15.0.0-rc.0(@babel/core@7.24.5)(@playwright/test@1.43.0)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522)(sass@1.77.4) + specifier: ^15.0.0-canary.53 + version: 15.0.0-canary.53(@babel/core@7.24.5)(@playwright/test@1.43.0)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522)(sass@1.77.4) path-to-regexp: specifier: ^6.2.1 version: 6.2.2 @@ -1337,7 +1337,7 @@ importers: version: link:../plugin-cloud-storage uploadthing: specifier: ^6.10.1 - version: 6.10.4(next@15.0.0-rc.0) + version: 6.10.4(next@15.0.0-canary.53) devDependencies: payload: specifier: workspace:* @@ -1426,8 +1426,8 @@ importers: specifier: 2.3.0 version: 2.3.0 next: - specifier: ^15.0.0-rc.0 - version: 15.0.0-rc.0(@babel/core@7.24.5)(@playwright/test@1.43.0)(babel-plugin-react-compiler@0.0.0-experimental-592953e-20240517)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522) + specifier: ^15.0.0-canary.53 + version: 15.0.0-canary.53(@babel/core@7.24.5)(@playwright/test@1.43.0)(babel-plugin-react-compiler@0.0.0-experimental-592953e-20240517)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522) object-to-formdata: specifier: 4.5.1 version: 4.5.1 @@ -1695,7 +1695,7 @@ importers: version: 5.5.3 uploadthing: specifier: ^6.10.1 - version: 6.10.4(next@15.0.0-rc.0) + version: 6.10.4(next@15.0.0-canary.53) packages: @@ -6021,8 +6021,12 @@ packages: - utf-8-validate dev: true + /@next/env@15.0.0-canary.53: + resolution: {integrity: sha512-8GBJH7RckXulT5+PpxUT0cBzmxosv8NEcouXzKfC0qsqqTvD7B8XpqHSpHzITUwQH1ToG6a/Jb8fnDrwW/nhEw==} + /@next/env@15.0.0-rc.0: resolution: {integrity: sha512-6W0ndQvHR9sXcqcKeR/inD2UTRCs9+VkSK3lfaGmEuZs7EjwwXMO2BPYjz9oBrtfPL3xuTjtXsHKSsalYQ5l1Q==} + dev: false /@next/eslint-plugin-next@14.1.4: resolution: {integrity: sha512-n4zYNLSyCo0Ln5b7qxqQeQ34OZKXwgbdcx6kmkQbywr+0k6M3Vinft0T72R6CDAcDrne2IAgSud4uWCzFgc5HA==} @@ -6030,72 +6034,72 @@ packages: glob: 10.3.10 dev: true - /@next/swc-darwin-arm64@15.0.0-rc.0: - resolution: {integrity: sha512-4OpTXvAWcSabXA5d688zdUwa3sfT9QrLnHMdpv4q2UDnnuqmOI0xLb6lrOxwpi+vHJNkneuNLqyc5HGBhkqL6A==} + /@next/swc-darwin-arm64@15.0.0-canary.53: + resolution: {integrity: sha512-G4HnRRmRmuvLdIjqnjj16wle274yBy0nIml0dDs4oRpMjJ2iyJ9q0d0T58GphHn/GWONULgP0N1jJxrDQ4K+Eg==} engines: {node: '>= 10'} cpu: [arm64] os: [darwin] requiresBuild: true optional: true - /@next/swc-darwin-x64@15.0.0-rc.0: - resolution: {integrity: sha512-/TD8M9DT244uhtFA8P/0DUbM7ftg2zio6yOo6ajV16vNjkcug9Kt9//Wa4SrJjWcsGZpViLctOlwn3/6JFAuAA==} + /@next/swc-darwin-x64@15.0.0-canary.53: + resolution: {integrity: sha512-eFdafKMyGA8Vg/Wq3kHc5vXYtVtn8m8w9LjqyTAuTwsExqBLMELH13qcXF924GXFLpKDhtpoel3/5lHFCHUKgQ==} engines: {node: '>= 10'} cpu: [x64] os: [darwin] requiresBuild: true optional: true - /@next/swc-linux-arm64-gnu@15.0.0-rc.0: - resolution: {integrity: sha512-3VTO32938AcqOlOI/U61/MIpeYrblP22VU1GrgmMQJozsAXEJgLCgf3wxZtn61/FG4Yc0tp7rPZE2t1fIGe0+w==} + /@next/swc-linux-arm64-gnu@15.0.0-canary.53: + resolution: {integrity: sha512-UyPqm19eaXeO6J9BoEJ+RARIEh+RPN2mWYOJmMXJKQ5gjYKSXzIYHFumYtZUMuDecIy8CYVmJl5xKomwpxbaiA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] requiresBuild: true optional: true - /@next/swc-linux-arm64-musl@15.0.0-rc.0: - resolution: {integrity: sha512-0kDnxM3AfrrHFJ/wTkjkv7cVHIaGwv+CzDg9lL2BoLEM4kMQhH20DTsBOMqpTpo1K2KCg67LuTGd3QOITT5uFQ==} + /@next/swc-linux-arm64-musl@15.0.0-canary.53: + resolution: {integrity: sha512-j4UIFXRZ2WI8hMnjCNcXlkswdmNoS7qwERBf/HadaYU3pM96/7Vi4YDpB8tP9rCgWZzcsCh8HRH2i8S34RjrpA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] requiresBuild: true optional: true - /@next/swc-linux-x64-gnu@15.0.0-rc.0: - resolution: {integrity: sha512-fPMNahzqYFjm5h0ncJ5+F3NrShmWhpusM+zrQl01MMU0Ed5xsL4pJJDSuXV4wPkNUSjCP3XstTjxR5kBdO4juQ==} + /@next/swc-linux-x64-gnu@15.0.0-canary.53: + resolution: {integrity: sha512-CraG4Y1ZVQg+E7YKaW59ee5LGmcKcJPpQPJhbmjBvsmiff5aekOju6j9B7pUyYNRu8fv75ld2M6/wrP4xtQc5A==} engines: {node: '>= 10'} cpu: [x64] os: [linux] requiresBuild: true optional: true - /@next/swc-linux-x64-musl@15.0.0-rc.0: - resolution: {integrity: sha512-7/FLgOqrrQAxOVQrxfr3bGgZ83pSCmc2S3TXBILnHw0S8qLxmFjhSjH5ogaDmjrES/PSYMaX1FsP5Af88hp7Gw==} + /@next/swc-linux-x64-musl@15.0.0-canary.53: + resolution: {integrity: sha512-EMl7W5Z+s/bpuHINiewFzNDx0bjPuTuRguoL8pFHFpSvVF7OihlWLG4FWUe33aXbsYeMTSQ/EGoTaKBmBnePRg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] requiresBuild: true optional: true - /@next/swc-win32-arm64-msvc@15.0.0-rc.0: - resolution: {integrity: sha512-5wcqoYHh7hbdghjH6Xs3i5/f0ov+i1Xw2E3O+BzZNESYVLgCM1q7KJu5gdGFoXA2gz5XaKF/VBcYHikLzyjgmA==} + /@next/swc-win32-arm64-msvc@15.0.0-canary.53: + resolution: {integrity: sha512-gWFWBchYaAOR9smQcS+9TvyqU7i6GMw/dwXq2+ojTt+GnOFPyEa9OnExVMdAIv8SlBG5rO/lYeXl++jeCtfwSg==} engines: {node: '>= 10'} cpu: [arm64] os: [win32] requiresBuild: true optional: true - /@next/swc-win32-ia32-msvc@15.0.0-rc.0: - resolution: {integrity: sha512-/hqOmYRTvtBPToE4Dbl9n+sLYU7DPd52R+TtjIrrEzTMgFo2/d7un3sD7GKmb2OwOj/ExyGv6Bd/JzytBVxXlw==} + /@next/swc-win32-ia32-msvc@15.0.0-canary.53: + resolution: {integrity: sha512-pFxuXGVedIsA5xCxxHUNONz3f5v5JtemWgFdom2D3LeI47npQGb4jLUEj7nzcYM9AvrKtOkyHwhlNi+VcfWTEA==} engines: {node: '>= 10'} cpu: [ia32] os: [win32] requiresBuild: true optional: true - /@next/swc-win32-x64-msvc@15.0.0-rc.0: - resolution: {integrity: sha512-2Jly5nShvCUzzngP3RzdQ3JcuEcHcnIEvkvZDCXqFAK+bWks4+qOkEUO1QIAERQ99J5J9/1AN/8zFBme3Mm57A==} + /@next/swc-win32-x64-msvc@15.0.0-canary.53: + resolution: {integrity: sha512-ImN6kLXH0hmzIhbHSM1qVLexp0ySgAmvahQ6OmyEpuO/gsHS3MiIB7X03XWlHoc0PcdrfX2v+W9FkJTM7UKSbw==} engines: {node: '>= 10'} cpu: [x64] os: [win32] @@ -13566,8 +13570,8 @@ packages: /next-tick@1.1.0: resolution: {integrity: sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ==} - /next@15.0.0-rc.0(@babel/core@7.24.5)(@playwright/test@1.43.0)(babel-plugin-react-compiler@0.0.0-experimental-592953e-20240517)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522): - resolution: {integrity: sha512-IWcCvxUSCAuOK5gig4+9yiyt/dLKpIa+WT01Qcx4CBE4TtwJljyTDnCVVn64jDZ4qmSzsaEYXpb4DTI8qbk03A==} + /next@15.0.0-canary.53(@babel/core@7.24.5)(@playwright/test@1.43.0)(babel-plugin-react-compiler@0.0.0-experimental-592953e-20240517)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522): + resolution: {integrity: sha512-DSbMTIx/PFJPtIsRKoQzjHyRV6T/1Mir7vRrxiDkf1g223KGgjwn9hhvhjiLczUmBO6ec4vSnNNqWx0SuVXlJw==} engines: {node: '>=18.17.0'} hasBin: true peerDependencies: @@ -13587,7 +13591,7 @@ packages: sass: optional: true dependencies: - '@next/env': 15.0.0-rc.0 + '@next/env': 15.0.0-canary.53 '@playwright/test': 1.43.0 '@swc/helpers': 0.5.11 babel-plugin-react-compiler: 0.0.0-experimental-592953e-20240517 @@ -13597,24 +13601,24 @@ packages: postcss: 8.4.31 react: 19.0.0-rc-f994737d14-20240522 react-dom: 19.0.0-rc-f994737d14-20240522(react@19.0.0-rc-f994737d14-20240522) - styled-jsx: 5.1.3(@babel/core@7.24.5)(react@19.0.0-rc-f994737d14-20240522) + styled-jsx: 5.1.6(@babel/core@7.24.5)(react@19.0.0-rc-f994737d14-20240522) optionalDependencies: - '@next/swc-darwin-arm64': 15.0.0-rc.0 - '@next/swc-darwin-x64': 15.0.0-rc.0 - '@next/swc-linux-arm64-gnu': 15.0.0-rc.0 - '@next/swc-linux-arm64-musl': 15.0.0-rc.0 - '@next/swc-linux-x64-gnu': 15.0.0-rc.0 - '@next/swc-linux-x64-musl': 15.0.0-rc.0 - '@next/swc-win32-arm64-msvc': 15.0.0-rc.0 - '@next/swc-win32-ia32-msvc': 15.0.0-rc.0 - '@next/swc-win32-x64-msvc': 15.0.0-rc.0 + '@next/swc-darwin-arm64': 15.0.0-canary.53 + '@next/swc-darwin-x64': 15.0.0-canary.53 + '@next/swc-linux-arm64-gnu': 15.0.0-canary.53 + '@next/swc-linux-arm64-musl': 15.0.0-canary.53 + '@next/swc-linux-x64-gnu': 15.0.0-canary.53 + '@next/swc-linux-x64-musl': 15.0.0-canary.53 + '@next/swc-win32-arm64-msvc': 15.0.0-canary.53 + '@next/swc-win32-ia32-msvc': 15.0.0-canary.53 + '@next/swc-win32-x64-msvc': 15.0.0-canary.53 sharp: 0.33.4 transitivePeerDependencies: - '@babel/core' - babel-plugin-macros - /next@15.0.0-rc.0(@babel/core@7.24.5)(@playwright/test@1.43.0)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522)(sass@1.77.4): - resolution: {integrity: sha512-IWcCvxUSCAuOK5gig4+9yiyt/dLKpIa+WT01Qcx4CBE4TtwJljyTDnCVVn64jDZ4qmSzsaEYXpb4DTI8qbk03A==} + /next@15.0.0-canary.53(@babel/core@7.24.5)(@playwright/test@1.43.0)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522)(sass@1.77.4): + resolution: {integrity: sha512-DSbMTIx/PFJPtIsRKoQzjHyRV6T/1Mir7vRrxiDkf1g223KGgjwn9hhvhjiLczUmBO6ec4vSnNNqWx0SuVXlJw==} engines: {node: '>=18.17.0'} hasBin: true peerDependencies: @@ -13634,7 +13638,7 @@ packages: sass: optional: true dependencies: - '@next/env': 15.0.0-rc.0 + '@next/env': 15.0.0-canary.53 '@playwright/test': 1.43.0 '@swc/helpers': 0.5.11 busboy: 1.6.0 @@ -13644,17 +13648,17 @@ packages: react: 19.0.0-rc-f994737d14-20240522 react-dom: 19.0.0-rc-f994737d14-20240522(react@19.0.0-rc-f994737d14-20240522) sass: 1.77.4 - styled-jsx: 5.1.3(@babel/core@7.24.5)(react@19.0.0-rc-f994737d14-20240522) + styled-jsx: 5.1.6(@babel/core@7.24.5)(react@19.0.0-rc-f994737d14-20240522) optionalDependencies: - '@next/swc-darwin-arm64': 15.0.0-rc.0 - '@next/swc-darwin-x64': 15.0.0-rc.0 - '@next/swc-linux-arm64-gnu': 15.0.0-rc.0 - '@next/swc-linux-arm64-musl': 15.0.0-rc.0 - '@next/swc-linux-x64-gnu': 15.0.0-rc.0 - '@next/swc-linux-x64-musl': 15.0.0-rc.0 - '@next/swc-win32-arm64-msvc': 15.0.0-rc.0 - '@next/swc-win32-ia32-msvc': 15.0.0-rc.0 - '@next/swc-win32-x64-msvc': 15.0.0-rc.0 + '@next/swc-darwin-arm64': 15.0.0-canary.53 + '@next/swc-darwin-x64': 15.0.0-canary.53 + '@next/swc-linux-arm64-gnu': 15.0.0-canary.53 + '@next/swc-linux-arm64-musl': 15.0.0-canary.53 + '@next/swc-linux-x64-gnu': 15.0.0-canary.53 + '@next/swc-linux-x64-musl': 15.0.0-canary.53 + '@next/swc-win32-arm64-msvc': 15.0.0-canary.53 + '@next/swc-win32-ia32-msvc': 15.0.0-canary.53 + '@next/swc-win32-x64-msvc': 15.0.0-canary.53 sharp: 0.33.4 transitivePeerDependencies: - '@babel/core' @@ -16733,8 +16737,8 @@ packages: /stubs@3.0.0: resolution: {integrity: sha512-PdHt7hHUJKxvTCgbKX9C1V/ftOcjJQgz8BZwNfV5c4B6dcGqlpelTbJ999jBGZ2jYiPAwcX5dP6oBwVlBlUbxw==} - /styled-jsx@5.1.3(@babel/core@7.24.5)(react@19.0.0-rc-f994737d14-20240522): - resolution: {integrity: sha512-qLRShOWTE/Mf6Bvl72kFeKBl8N2Eq9WIFfoAuvbtP/6tqlnj1SCjv117n2MIjOPpa1jTorYqLJgsHKy5Y3ziww==} + /styled-jsx@5.1.6(@babel/core@7.24.5)(react@19.0.0-rc-f994737d14-20240522): + resolution: {integrity: sha512-qSVyDTeMotdvQYoHWLNGwRFJHC+i+ZvdBRYosOFgC+Wg1vx4frN2/RG/NA7SYqqvKNLf39P2LSRA2pu6n0XYZA==} engines: {node: '>= 12.0.0'} peerDependencies: '@babel/core': '*' @@ -17523,7 +17527,7 @@ packages: escalade: 3.1.2 picocolors: 1.0.0 - /uploadthing@6.10.4(next@15.0.0-rc.0): + /uploadthing@6.10.4(next@15.0.0-canary.53): resolution: {integrity: sha512-0hGO0Q7R7MnxzVkUbYHE6PkwFieYH+UUa905uo7JtA0h3Gpc89bNDFaOfK8634Z66088VRLNVuWxY2FTIqw4sg==} engines: {node: '>=18.13.0'} peerDependencies: @@ -17550,7 +17554,7 @@ packages: consola: 3.2.3 effect: 3.1.5 fast-check: 3.18.0 - next: 15.0.0-rc.0(@babel/core@7.24.5)(@playwright/test@1.43.0)(babel-plugin-react-compiler@0.0.0-experimental-592953e-20240517)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522) + next: 15.0.0-canary.53(@babel/core@7.24.5)(@playwright/test@1.43.0)(babel-plugin-react-compiler@0.0.0-experimental-592953e-20240517)(react-dom@19.0.0-rc-f994737d14-20240522)(react@19.0.0-rc-f994737d14-20240522) std-env: 3.7.0 /uri-js@4.4.1: diff --git a/templates/_template/package.json b/templates/_template/package.json index b5b9e72a6da..f84a92c3035 100644 --- a/templates/_template/package.json +++ b/templates/_template/package.json @@ -20,7 +20,7 @@ "@payloadcms/richtext-lexical": "beta", "cross-env": "^7.0.3", "graphql": "^16.8.1", - "next": "15.0.0-rc.0", + "next": "15.0.0-canary.53", "payload": "beta", "react": "^19.0.0-rc-f994737d14-20240522", "react-dom": "^19.0.0-rc-f994737d14-20240522", diff --git a/templates/blank/package.json b/templates/blank/package.json index 904e001528c..c88e44ec431 100644 --- a/templates/blank/package.json +++ b/templates/blank/package.json @@ -20,7 +20,7 @@ "@payloadcms/richtext-lexical": "beta", "cross-env": "^7.0.3", "graphql": "^16.8.1", - "next": "15.0.0-rc.0", + "next": "15.0.0-canary.53", "payload": "beta", "react": "^19.0.0-rc-f994737d14-20240522", "react-dom": "^19.0.0-rc-f994737d14-20240522", diff --git a/templates/with-payload-cloud/package.json b/templates/with-payload-cloud/package.json index a8f301be052..5c7a160e9c1 100644 --- a/templates/with-payload-cloud/package.json +++ b/templates/with-payload-cloud/package.json @@ -20,7 +20,7 @@ "@payloadcms/richtext-lexical": "beta", "cross-env": "^7.0.3", "graphql": "^16.8.1", - "next": "15.0.0-rc.0", + "next": "15.0.0-canary.53", "payload": "beta", "react": "^19.0.0-rc-f994737d14-20240522", "react-dom": "^19.0.0-rc-f994737d14-20240522", diff --git a/templates/with-vercel-mongodb/package.json b/templates/with-vercel-mongodb/package.json index 401842559f3..fc4c30d2407 100644 --- a/templates/with-vercel-mongodb/package.json +++ b/templates/with-vercel-mongodb/package.json @@ -21,7 +21,7 @@ "@payloadcms/storage-vercel-blob": "beta", "cross-env": "^7.0.3", "graphql": "^16.8.1", - "next": "15.0.0-rc.0", + "next": "15.0.0-canary.53", "payload": "beta", "react": "^19.0.0-rc-f994737d14-20240522", "react-dom": "^19.0.0-rc-f994737d14-20240522" diff --git a/templates/with-vercel-postgres/package.json b/templates/with-vercel-postgres/package.json index 142f9842ca9..5b685fffc30 100644 --- a/templates/with-vercel-postgres/package.json +++ b/templates/with-vercel-postgres/package.json @@ -21,7 +21,7 @@ "@payloadcms/storage-vercel-blob": "beta", "cross-env": "^7.0.3", "graphql": "^16.8.1", - "next": "15.0.0-rc.0", + "next": "15.0.0-canary.53", "payload": "beta", "react": "^19.0.0-rc-f994737d14-20240522", "react-dom": "^19.0.0-rc-f994737d14-20240522"