Merged in chore/upgrade-to-next16 (pull request #3305)

chore(SW-3665): Upgrade to Next 16

* Upgrade partner-sas

* Upgrade scandic-web to next 16

* Update peerDep versions

* Fix revalidateTag

* Remove comment

* Merge branch 'master' into chore/upgrade-to-next16

* Update netlify adapter

* Build with webpack instead of turbopack

* Revert from proxy to middleware

* Merge branch 'master' into chore/upgrade-to-next16

* Revert proxy type

* Fix react types versions

* 16.0.9

* Bump to 16.0.10


Approved-by: Linus Flood
This commit is contained in:
Anton Gunnarsson
2025-12-12 09:17:15 +00:00
parent 7d021f8e40
commit e5149846e5
41 changed files with 417 additions and 224 deletions

View File

@@ -1,5 +1,3 @@
"use client"
import { useSession } from "next-auth/react"
import { useEffect, useState } from "react"
import {
@@ -48,6 +46,7 @@ export function UserMenu({
})
useEffect(() => {
// eslint-disable-next-line react-hooks/set-state-in-effect
setLoginLink(`/${lang}/login?redirectTo=${window?.location.href}`)
}, [lang, setLoginLink])

View File

@@ -1,48 +1,34 @@
import { FlatCompat } from "@eslint/eslintrc"
import js from "@eslint/js"
import typescriptEslint from "@typescript-eslint/eslint-plugin"
import tsParser from "@typescript-eslint/parser"
import { defineConfig } from "eslint/config"
import { defineConfig, globalIgnores } from "eslint/config"
import nextVitals from "eslint-config-next/core-web-vitals"
import nextTs from "eslint-config-next/typescript"
import formatjs from "eslint-plugin-formatjs"
import simpleImportSort from "eslint-plugin-simple-import-sort"
const compat = new FlatCompat({
recommendedConfig: js.configs.recommended,
allConfig: js.configs.all,
})
export default defineConfig([
...nextVitals,
...nextTs,
globalIgnores([
".next/**",
"node_modules/**",
"dist/**",
"build/**",
"public/**",
"playwright-report/**",
"test-results/**",
"coverage/**",
"*.config.js",
"*.config.ts",
"*.config.mjs",
"next-env.d.ts",
]),
{
ignores: [
".next/**",
"node_modules/**",
"dist/**",
"build/**",
"public/**",
"playwright-report/**",
"test-results/**",
"coverage/**",
"*.config.js",
"*.config.ts",
"*.config.mjs",
"next-env.d.ts",
],
},
{
extends: compat.extends(
"next/core-web-vitals",
"plugin:@typescript-eslint/recommended"
),
files: ["**/*.{js,jsx,ts,tsx,mts}"],
plugins: {
"simple-import-sort": simpleImportSort,
"@typescript-eslint": typescriptEslint,
formatjs,
},
languageOptions: {
parser: tsParser,
},
rules: {
"no-console": "warn",
"no-unused-vars": "off",

View File

@@ -22,7 +22,7 @@
},
"dependencies": {
"@formatjs/intl": "^3.1.6",
"@netlify/plugin-nextjs": "^5.14.4",
"@netlify/plugin-nextjs": "^5.15.1",
"@scandic-hotels/booking-flow": "workspace:*",
"@scandic-hotels/design-system": "workspace:*",
"@scandic-hotels/tracking": "workspace:*",
@@ -32,30 +32,27 @@
"@tanstack/react-query": "^5.75.5",
"@tanstack/react-query-devtools": "^5.75.5",
"iron-session": "^8.0.4",
"next": "^15.5.7",
"next": "16.0.10",
"next-auth": "5.0.0-beta.29",
"react": "^19.0.0",
"react": "19.2.1",
"react-aria-components": "1.8.0",
"react-dom": "^19.0.0",
"react-dom": "19.2.1",
"react-intl": "^7.1.11",
"server-only": "^0.0.1",
"usehooks-ts": "3.1.1"
},
"devDependencies": {
"@eslint/js": "^9.26.0",
"@playwright/test": "^1.53.1",
"@scandic-hotels/common": "workspace:*",
"@scandic-hotels/typescript-config": "workspace:*",
"@swc/plugin-formatjs": "^3.2.2",
"@types/node": "^20",
"@types/react": "^19.2.3",
"@types/react-dom": "^19.2.3",
"@typescript-eslint/eslint-plugin": "^8.32.0",
"@typescript-eslint/parser": "^8.32.0",
"@types/react": "19.2.7",
"@types/react-dom": "19.2.3",
"@typescript/native-preview": "^7.0.0-dev.20251104.1",
"babel-plugin-formatjs": "^10.5.39",
"eslint": "^9",
"eslint-config-next": "15.3.2",
"eslint-config-next": "16.0.7",
"eslint-plugin-formatjs": "^5.3.1",
"eslint-plugin-import": "^2.31.0",
"eslint-plugin-simple-import-sort": "^12.1.1",