diff --git a/.editorconfig b/.editorconfig
new file mode 100644
index 0000000..a882442
--- /dev/null
+++ b/.editorconfig
@@ -0,0 +1,7 @@
+root = true
+
+[*]
+end_of_line = lf
+insert_final_newline = true
+indent_style = space
+indent_size = 4
diff --git a/.vscode/extensions.json b/.vscode/extensions.json
index 41638e3..9d5eb3d 100644
--- a/.vscode/extensions.json
+++ b/.vscode/extensions.json
@@ -1,3 +1,3 @@
{
- "recommendations": ["oxc.oxc-vscode"],
+ "recommendations": ["oxc.oxc-vscode"]
}
diff --git a/.yarnrc.yml b/.yarnrc.yml
index 8bc296a..69ea824 100644
--- a/.yarnrc.yml
+++ b/.yarnrc.yml
@@ -6,6 +6,7 @@ enableScripts: true
nodeLinker: node-modules
catalog:
+ next: "^16.2.7"
oxfmt: "^0.45.0"
oxlint: "^1.60.0"
typescript: "^6.0.3"
diff --git a/.zed/settings.json b/.zed/settings.json
index 1ab7810..ee1a9b4 100644
--- a/.zed/settings.json
+++ b/.zed/settings.json
@@ -1,16 +1,16 @@
{
- "formatter": [
- {
- "language_server": {
- "name": "oxfmt",
- },
+ "formatter": [
+ {
+ "language_server": {
+ "name": "oxfmt"
+ }
+ },
+ {
+ "code_action": "source.fixAll.oxc"
+ }
+ ],
+ "prettier": {
+ "allowed": false
},
- {
- "code_action": "source.fixAll.oxc",
- },
- ],
- "prettier": {
- "allowed": false,
- },
- "language_servers": ["!eslint", "!biome", "..."],
+ "language_servers": ["!eslint", "!biome", "..."]
}
diff --git a/apps/example-next-intl/.env.example b/apps/example-next-intl/.env.example
new file mode 100644
index 0000000..b7ba19b
--- /dev/null
+++ b/apps/example-next-intl/.env.example
@@ -0,0 +1 @@
+REDIRECTIONIO_TOKEN=
diff --git a/apps/example-next-intl/.gitignore b/apps/example-next-intl/.gitignore
new file mode 100644
index 0000000..ac1b2e6
--- /dev/null
+++ b/apps/example-next-intl/.gitignore
@@ -0,0 +1,46 @@
+# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
+
+# dependencies
+/node_modules
+/.pnp
+.pnp.*
+.yarn/*
+!.yarn/patches
+!.yarn/plugins
+!.yarn/releases
+!.yarn/versions
+
+# testing
+/coverage
+
+# next.js
+/.next/
+/out/
+
+# production
+/build
+
+# misc
+.DS_Store
+*.pem
+
+# debug
+npm-debug.log*
+yarn-debug.log*
+yarn-error.log*
+.pnpm-debug.log*
+
+# env files (can opt-in for committing if needed)
+.env*
+!.env.example
+
+# vercel
+.vercel
+
+# typescript
+*.tsbuildinfo
+next-env.d.ts
+
+# playwright
+playwright-report/
+test-results
diff --git a/apps/example-next-intl/README.md b/apps/example-next-intl/README.md
new file mode 100644
index 0000000..e215bc4
--- /dev/null
+++ b/apps/example-next-intl/README.md
@@ -0,0 +1,36 @@
+This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).
+
+## Getting Started
+
+First, run the development server:
+
+```bash
+npm run dev
+# or
+yarn dev
+# or
+pnpm dev
+# or
+bun dev
+```
+
+Open [http://localhost:3000](http://localhost:3000) with your browser to see the result.
+
+You can start editing the page by modifying `app/page.tsx`. The page auto-updates as you edit the file.
+
+This project uses [`next/font`](https://nextjs.org/docs/app/building-your-application/optimizing/fonts) to automatically optimize and load [Geist](https://vercel.com/font), a new font family for Vercel.
+
+## Learn More
+
+To learn more about Next.js, take a look at the following resources:
+
+- [Next.js Documentation](https://nextjs.org/docs) - learn about Next.js features and API.
+- [Learn Next.js](https://nextjs.org/learn) - an interactive Next.js tutorial.
+
+You can check out [the Next.js GitHub repository](https://github.com/vercel/next.js) - your feedback and contributions are welcome!
+
+## Deploy on Vercel
+
+The easiest way to deploy your Next.js app is to use the [Vercel Platform](https://vercel.com/new?utm_medium=default-template&filter=next.js&utm_source=create-next-app&utm_campaign=create-next-app-readme) from the creators of Next.js.
+
+Check out our [Next.js deployment documentation](https://nextjs.org/docs/app/building-your-application/deploying) for more details.
diff --git a/apps/example-next-intl/messages/en.json b/apps/example-next-intl/messages/en.json
new file mode 100644
index 0000000..bbe30ad
--- /dev/null
+++ b/apps/example-next-intl/messages/en.json
@@ -0,0 +1,5 @@
+{
+ "home": {
+ "welcome": "Welcome to the example app"
+ }
+}
diff --git a/apps/example-next-intl/messages/fr.json b/apps/example-next-intl/messages/fr.json
new file mode 100644
index 0000000..6d99d24
--- /dev/null
+++ b/apps/example-next-intl/messages/fr.json
@@ -0,0 +1,5 @@
+{
+ "home": {
+ "welcome": "Bienvenue sur l'exemple d'application"
+ }
+}
diff --git a/apps/example-next-intl/next.config.ts b/apps/example-next-intl/next.config.ts
new file mode 100644
index 0000000..ff77283
--- /dev/null
+++ b/apps/example-next-intl/next.config.ts
@@ -0,0 +1,7 @@
+import { NextConfig } from "next";
+import createNextIntlPlugin from "next-intl/plugin";
+
+const nextConfig: NextConfig = {};
+
+const withNextIntl = createNextIntlPlugin();
+export default withNextIntl(nextConfig);
diff --git a/apps/example-next-intl/package.json b/apps/example-next-intl/package.json
new file mode 100644
index 0000000..8fa95ab
--- /dev/null
+++ b/apps/example-next-intl/package.json
@@ -0,0 +1,33 @@
+{
+ "name": "example-next-intl",
+ "version": "0.1.0",
+ "private": true,
+ "scripts": {
+ "dev": "next dev --port 3002",
+ "build": "next build",
+ "start": "next start --port 3002",
+ "lint": "oxlint --config ../../.oxlintrc.json",
+ "lint:fix": "oxlint --fix --config ../../.oxlintrc.json",
+ "format": "oxfmt -c ../../.oxfmtrc.json",
+ "format:check": "oxfmt -c ../../.oxfmtrc.json --check",
+ "test:e2e": "playwright test"
+ },
+ "dependencies": {
+ "@redirection.io/vercel-middleware": "workspace:*",
+ "next": "catalog:",
+ "next-intl": "^4.13.0",
+ "react": "19.2.4",
+ "react-dom": "19.2.4"
+ },
+ "devDependencies": {
+ "@playwright/test": "^1.60",
+ "@tailwindcss/postcss": "^4",
+ "@types/node": "^20",
+ "@types/react": "^19",
+ "@types/react-dom": "^19",
+ "oxfmt": "catalog:",
+ "oxlint": "catalog:",
+ "tailwindcss": "^4",
+ "typescript": "catalog:"
+ }
+}
diff --git a/apps/example-next-intl/postcss.config.mjs b/apps/example-next-intl/postcss.config.mjs
new file mode 100644
index 0000000..148a80b
--- /dev/null
+++ b/apps/example-next-intl/postcss.config.mjs
@@ -0,0 +1,7 @@
+const config = {
+ plugins: {
+ "@tailwindcss/postcss": {},
+ },
+};
+
+export default config;
diff --git a/apps/example-next-intl/public/file.svg b/apps/example-next-intl/public/file.svg
new file mode 100644
index 0000000..004145c
--- /dev/null
+++ b/apps/example-next-intl/public/file.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/apps/example-next-intl/public/globe.svg b/apps/example-next-intl/public/globe.svg
new file mode 100644
index 0000000..567f17b
--- /dev/null
+++ b/apps/example-next-intl/public/globe.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/apps/example-next-intl/public/next.svg b/apps/example-next-intl/public/next.svg
new file mode 100644
index 0000000..5174b28
--- /dev/null
+++ b/apps/example-next-intl/public/next.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/apps/example-next-intl/public/vercel.svg b/apps/example-next-intl/public/vercel.svg
new file mode 100644
index 0000000..7705396
--- /dev/null
+++ b/apps/example-next-intl/public/vercel.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/apps/example-next-intl/public/window.svg b/apps/example-next-intl/public/window.svg
new file mode 100644
index 0000000..b2b2a44
--- /dev/null
+++ b/apps/example-next-intl/public/window.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/apps/example-next-intl/src/app/[locale]/layout.tsx b/apps/example-next-intl/src/app/[locale]/layout.tsx
new file mode 100644
index 0000000..3fad012
--- /dev/null
+++ b/apps/example-next-intl/src/app/[locale]/layout.tsx
@@ -0,0 +1,35 @@
+import { routing } from "@/i18n/routing";
+import type { Metadata } from "next";
+import { hasLocale, NextIntlClientProvider } from "next-intl";
+import { Geist, Geist_Mono } from "next/font/google";
+import { notFound } from "next/navigation";
+
+const geistSans = Geist({
+ variable: "--font-geist-sans",
+ subsets: ["latin"],
+});
+
+const geistMono = Geist_Mono({
+ variable: "--font-geist-mono",
+ subsets: ["latin"],
+});
+
+export const metadata: Metadata = {
+ title: "Create Next App",
+ description: "Generated by create next app",
+};
+
+export default async function LocaleLayout({ children, params }: LayoutProps<"/[locale]">) {
+ const { locale } = await params;
+ if (!hasLocale(routing.locales, locale)) {
+ notFound();
+ }
+
+ return (
+
+
+ {children}
+
+
+ );
+}
diff --git a/apps/example-next-intl/src/app/[locale]/page.tsx b/apps/example-next-intl/src/app/[locale]/page.tsx
new file mode 100644
index 0000000..f2dec46
--- /dev/null
+++ b/apps/example-next-intl/src/app/[locale]/page.tsx
@@ -0,0 +1,11 @@
+import { getTranslations } from "next-intl/server";
+
+export default async function Home() {
+ const t = await getTranslations("home");
+
+ return (
+
+ {t("welcome")}
+
+ );
+}
diff --git a/apps/example-next-intl/src/i18n/request.ts b/apps/example-next-intl/src/i18n/request.ts
new file mode 100644
index 0000000..76cadd2
--- /dev/null
+++ b/apps/example-next-intl/src/i18n/request.ts
@@ -0,0 +1,13 @@
+import { getRequestConfig } from "next-intl/server";
+import { hasLocale } from "next-intl";
+import { routing } from "./routing";
+
+export default getRequestConfig(async ({ requestLocale }) => {
+ const requested = await requestLocale;
+ const locale = hasLocale(routing.locales, requested) ? requested : routing.defaultLocale;
+
+ return {
+ locale,
+ messages: (await import(`../../messages/${locale}.json`)).default,
+ };
+});
diff --git a/apps/example-next-intl/src/i18n/routing.ts b/apps/example-next-intl/src/i18n/routing.ts
new file mode 100644
index 0000000..a055815
--- /dev/null
+++ b/apps/example-next-intl/src/i18n/routing.ts
@@ -0,0 +1,6 @@
+import { defineRouting } from "next-intl/routing";
+
+export const routing = defineRouting({
+ locales: ["en", "fr"],
+ defaultLocale: "en",
+});
diff --git a/apps/example-next-intl/src/instrumentation.ts b/apps/example-next-intl/src/instrumentation.ts
new file mode 100644
index 0000000..25cb586
--- /dev/null
+++ b/apps/example-next-intl/src/instrumentation.ts
@@ -0,0 +1,5 @@
+import { registerRedirectionIoInstrumentation } from "@redirection.io/vercel-middleware/instrumentation";
+
+export const register = async () => {
+ registerRedirectionIoInstrumentation();
+};
diff --git a/apps/example-next-intl/src/proxy.ts b/apps/example-next-intl/src/proxy.ts
new file mode 100644
index 0000000..e002195
--- /dev/null
+++ b/apps/example-next-intl/src/proxy.ts
@@ -0,0 +1,27 @@
+import { routing } from "@/i18n/routing";
+import { createRedirectionIoMiddleware } from "@redirection.io/vercel-middleware/next";
+import createMiddleware from "next-intl/middleware";
+import { NextRequest } from "next/server";
+
+const routingMiddleware = createMiddleware(routing);
+
+function middleware(request: Request) {
+ const response = routingMiddleware(request as NextRequest);
+ return response;
+}
+
+export default createRedirectionIoMiddleware({
+ nextMiddleware: middleware,
+});
+
+// export default middleware;
+
+export const config = {
+ unstable_allowDynamic: ["/node_modules/@redirection.io/**"],
+ matcher: [
+ // Match all pathnames except for
+ // - … if they start with `/api`, `/_next` or `/_vercel`
+ // - … the ones containing a dot (e.g. `favicon.ico`)
+ "/((?!api|_next/static|_next/image|.*\\.png$).*)?",
+ ],
+};
diff --git a/apps/example-next-intl/tsconfig.json b/apps/example-next-intl/tsconfig.json
new file mode 100644
index 0000000..d055640
--- /dev/null
+++ b/apps/example-next-intl/tsconfig.json
@@ -0,0 +1,27 @@
+{
+ "compilerOptions": {
+ "target": "ES2017",
+ "lib": ["dom", "dom.iterable", "esnext"],
+ "allowJs": true,
+ "skipLibCheck": true,
+ "strict": true,
+ "noEmit": true,
+ "esModuleInterop": true,
+ "module": "esnext",
+ "moduleResolution": "bundler",
+ "resolveJsonModule": true,
+ "isolatedModules": true,
+ "jsx": "react-jsx",
+ "incremental": true,
+ "plugins": [
+ {
+ "name": "next"
+ }
+ ],
+ "paths": {
+ "@/*": ["./src/*"]
+ }
+ },
+ "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts", ".next/dev/types/**/*.ts", "**/*.mts"],
+ "exclude": ["node_modules"]
+}
diff --git a/apps/example-webpack/package.json b/apps/example-webpack/package.json
index 8b8e364..c23a8c8 100644
--- a/apps/example-webpack/package.json
+++ b/apps/example-webpack/package.json
@@ -13,7 +13,7 @@
},
"dependencies": {
"@redirection.io/vercel-middleware": "workspace:*",
- "next": "16.2.4",
+ "next": "catalog:",
"react": "19.2.4",
"react-dom": "19.2.4"
},
@@ -25,6 +25,6 @@
"oxfmt": "catalog:",
"oxlint": "catalog:",
"tailwindcss": "^4",
- "typescript": "^5"
+ "typescript": "catalog:"
}
}
diff --git a/apps/example/package.json b/apps/example/package.json
index 2fe193d..bf47a7b 100644
--- a/apps/example/package.json
+++ b/apps/example/package.json
@@ -14,7 +14,7 @@
},
"dependencies": {
"@redirection.io/vercel-middleware": "workspace:*",
- "next": "16.2.4",
+ "next": "catalog:",
"react": "19.2.4",
"react-dom": "19.2.4"
},
diff --git a/apps/example/src/proxy.ts b/apps/example/src/proxy.ts
index 8f93e8e..d68a2b1 100644
--- a/apps/example/src/proxy.ts
+++ b/apps/example/src/proxy.ts
@@ -1,6 +1,37 @@
import { createRedirectionIoMiddleware } from "@redirection.io/vercel-middleware/next";
+import { NextResponse } from "next/server";
-export default createRedirectionIoMiddleware({});
+function previousMiddleware() {
+ return NextResponse.next({
+ headers: {
+ "prev-header": "foobar",
+ },
+ });
+}
+
+function nextMiddleware(req: Request) {
+ return NextResponse.next({
+ headers: {
+ "next-header": "foobar",
+ ...Object.fromEntries(req.headers.entries()),
+ },
+ });
+}
+
+const rioMiddleware = createRedirectionIoMiddleware({
+ previousMiddleware,
+ nextMiddleware,
+});
+
+export default async function (request: Request) {
+ // @ts-expect-error
+ const response = await rioMiddleware(request);
+
+ // prev-header and next-header are available in the response headers
+ console.log(response.headers);
+
+ return NextResponse.next(response);
+}
export const config = {
unstable_allowDynamic: ["/node_modules/@redirection.io/**"],
diff --git a/package.json b/package.json
index e6b1774..cd6ff59 100644
--- a/package.json
+++ b/package.json
@@ -13,7 +13,7 @@
"scripts": {
"dev": "turbo run dev",
"build": "turbo run build",
- "build:packages": "turbo run build --filter=\"packages/*\"",
+ "build:packages": "turbo run build --filter=\"./packages/*\"",
"build:examples": "turbo run build --filter=\"./apps/*\"",
"start:examples": "turbo run start --filter=\"./apps/*\" --daemon",
"lint": "turbo run lint",
diff --git a/packages/vercel-middleware/src/instrumentation.ts b/packages/vercel-middleware/src/instrumentation.ts
index 7a6dcdd..7d8b986 100644
--- a/packages/vercel-middleware/src/instrumentation.ts
+++ b/packages/vercel-middleware/src/instrumentation.ts
@@ -27,11 +27,16 @@ export const registerRedirectionIoInstrumentation = async () => {
channel.subscribe(async (message: { request: IncomingMessage; response: ServerResponse }) => {
const { request, response } = message;
const nextInternalMeta = Symbol.for("NextInternalRequestMeta");
- // @ts-expect-error
- const requestUrl = request[nextInternalMeta]
- ? // @ts-expect-error
- request[nextInternalMeta].initURL
- : request.url;
+ const requestUrl =
+ // @ts-expect-error
+ request[nextInternalMeta] && request[nextInternalMeta].initURL
+ ? // @ts-expect-error
+ request[nextInternalMeta].initURL
+ : request.url;
+
+ if (!requestUrl) {
+ return;
+ }
if (
requestUrl.startsWith("/_next/") ||
diff --git a/packages/vercel-middleware/src/middleware.ts b/packages/vercel-middleware/src/middleware.ts
index 45f89f8..0b3552d 100644
--- a/packages/vercel-middleware/src/middleware.ts
+++ b/packages/vercel-middleware/src/middleware.ts
@@ -274,6 +274,12 @@ function middlewareResponseToRequest(originalRequest: Request, response: Respons
}
}
+ response.headers.forEach((val, key) => {
+ if (!key.startsWith("x-middleware-")) {
+ request.headers.set(key, val);
+ }
+ });
+
return request;
}
diff --git a/turbo.json b/turbo.json
index 647d6a4..2d87580 100644
--- a/turbo.json
+++ b/turbo.json
@@ -1,17 +1,16 @@
{
"$schema": "https://turborepo.dev/schema.json",
+ "globalDependencies": ["**/.env.*local", "**/.env"],
+ "globalEnv": ["REDIRECTIONIO_TOKEN"],
"ui": "tui",
"tasks": {
"build": {
"dependsOn": ["^build"],
- "inputs": [".env*"],
- "outputs": [".next/**", "!.next/cache/**"]
+ "outputs": [".next/**", "!.next/cache/**", "dist/**"]
},
"start": {
"dependsOn": ["^build"],
- "inputs": [".env*"],
- "outputs": [".next/**", "!.next/cache/**"],
- "env": ["REDIRECTIONIO_TOKEN"]
+ "outputs": [".next/**", "!.next/cache/**"]
},
"lint": {
"dependsOn": ["^lint"]
diff --git a/yarn.lock b/yarn.lock
index 09112a0..c19f941 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -462,6 +462,38 @@ __metadata:
languageName: node
linkType: hard
+"@formatjs/fast-memoize@npm:3.1.5, @formatjs/fast-memoize@npm:^3.1.0":
+ version: 3.1.5
+ resolution: "@formatjs/fast-memoize@npm:3.1.5"
+ checksum: 10c0/80e5d5c6b3b558de5cabfbb7b5df89e291c9b05fb5f5edaa7234a581e55a96d15fab35c5922229f7885b160fe5a3654d029029bcb5e9a86ce4143db4a5ecea79
+ languageName: node
+ linkType: hard
+
+"@formatjs/icu-messageformat-parser@npm:3.5.10, @formatjs/icu-messageformat-parser@npm:^3.4.0":
+ version: 3.5.10
+ resolution: "@formatjs/icu-messageformat-parser@npm:3.5.10"
+ dependencies:
+ "@formatjs/icu-skeleton-parser": "npm:2.1.9"
+ checksum: 10c0/e9e00ba131971545cb31097cd817a94cb9fab961c02ad91d0357672fb611b1ab449b3e34a1d2b8fb1d2eb4cad4e3d78e30572953b94dc889462af92cbdd1bae2
+ languageName: node
+ linkType: hard
+
+"@formatjs/icu-skeleton-parser@npm:2.1.9":
+ version: 2.1.9
+ resolution: "@formatjs/icu-skeleton-parser@npm:2.1.9"
+ checksum: 10c0/6f1837bc75b0132407e6a49c2f9a150bf2cbd58c7d0fde1c6998d8e62950bb602f4f531a89cc666682c1abe819e34fd79020468e1c4a119be69fcba48c10ca38
+ languageName: node
+ linkType: hard
+
+"@formatjs/intl-localematcher@npm:^0.8.1":
+ version: 0.8.9
+ resolution: "@formatjs/intl-localematcher@npm:0.8.9"
+ dependencies:
+ "@formatjs/fast-memoize": "npm:3.1.5"
+ checksum: 10c0/d3e1fb9eab5a5e8d7c0600dc7f2c1b64ae0cd30dbfa7de0cd7300647440b60871bea5a23bc5d62dddb3fcbaba899ac90f84c513b832b5baf858a95c100542c31
+ languageName: node
+ linkType: hard
+
"@gar/promise-retry@npm:^1.0.0":
version: 1.0.3
resolution: "@gar/promise-retry@npm:1.0.3"
@@ -809,10 +841,10 @@ __metadata:
languageName: node
linkType: hard
-"@next/env@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/env@npm:16.2.4"
- checksum: 10c0/4bf41f0da7cc97ca2a2f2b7f3fc81e14aba2afc280d32163b134b8f642b315fbabb5d9c224a783d8e759bbc73eedfc9acd048e772950395aa1e6290dd386d209
+"@next/env@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/env@npm:16.2.7"
+ checksum: 10c0/d5928d76047ee4f04cf2e5e47fce6c348ee010c7d3105d631e70299bb4ac8d0c53cefbb3415ce0e0e918e89fbcde0817ccac1be220b41cdc4490f989c7d166a7
languageName: node
linkType: hard
@@ -823,9 +855,9 @@ __metadata:
languageName: node
linkType: hard
-"@next/swc-darwin-arm64@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/swc-darwin-arm64@npm:16.2.4"
+"@next/swc-darwin-arm64@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/swc-darwin-arm64@npm:16.2.7"
conditions: os=darwin & cpu=arm64
languageName: node
linkType: hard
@@ -837,9 +869,9 @@ __metadata:
languageName: node
linkType: hard
-"@next/swc-darwin-x64@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/swc-darwin-x64@npm:16.2.4"
+"@next/swc-darwin-x64@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/swc-darwin-x64@npm:16.2.7"
conditions: os=darwin & cpu=x64
languageName: node
linkType: hard
@@ -851,9 +883,9 @@ __metadata:
languageName: node
linkType: hard
-"@next/swc-linux-arm64-gnu@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/swc-linux-arm64-gnu@npm:16.2.4"
+"@next/swc-linux-arm64-gnu@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/swc-linux-arm64-gnu@npm:16.2.7"
conditions: os=linux & cpu=arm64 & libc=glibc
languageName: node
linkType: hard
@@ -865,9 +897,9 @@ __metadata:
languageName: node
linkType: hard
-"@next/swc-linux-arm64-musl@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/swc-linux-arm64-musl@npm:16.2.4"
+"@next/swc-linux-arm64-musl@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/swc-linux-arm64-musl@npm:16.2.7"
conditions: os=linux & cpu=arm64 & libc=musl
languageName: node
linkType: hard
@@ -879,9 +911,9 @@ __metadata:
languageName: node
linkType: hard
-"@next/swc-linux-x64-gnu@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/swc-linux-x64-gnu@npm:16.2.4"
+"@next/swc-linux-x64-gnu@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/swc-linux-x64-gnu@npm:16.2.7"
conditions: os=linux & cpu=x64 & libc=glibc
languageName: node
linkType: hard
@@ -893,9 +925,9 @@ __metadata:
languageName: node
linkType: hard
-"@next/swc-linux-x64-musl@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/swc-linux-x64-musl@npm:16.2.4"
+"@next/swc-linux-x64-musl@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/swc-linux-x64-musl@npm:16.2.7"
conditions: os=linux & cpu=x64 & libc=musl
languageName: node
linkType: hard
@@ -907,9 +939,9 @@ __metadata:
languageName: node
linkType: hard
-"@next/swc-win32-arm64-msvc@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/swc-win32-arm64-msvc@npm:16.2.4"
+"@next/swc-win32-arm64-msvc@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/swc-win32-arm64-msvc@npm:16.2.7"
conditions: os=win32 & cpu=arm64
languageName: node
linkType: hard
@@ -928,9 +960,9 @@ __metadata:
languageName: node
linkType: hard
-"@next/swc-win32-x64-msvc@npm:16.2.4":
- version: 16.2.4
- resolution: "@next/swc-win32-x64-msvc@npm:16.2.4"
+"@next/swc-win32-x64-msvc@npm:16.2.7":
+ version: 16.2.7
+ resolution: "@next/swc-win32-x64-msvc@npm:16.2.7"
conditions: os=win32 & cpu=x64
languageName: node
linkType: hard
@@ -1257,6 +1289,150 @@ __metadata:
languageName: node
linkType: hard
+"@parcel/watcher-android-arm64@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-android-arm64@npm:2.5.6"
+ conditions: os=android & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-darwin-arm64@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-darwin-arm64@npm:2.5.6"
+ conditions: os=darwin & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-darwin-x64@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-darwin-x64@npm:2.5.6"
+ conditions: os=darwin & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-freebsd-x64@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-freebsd-x64@npm:2.5.6"
+ conditions: os=freebsd & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-linux-arm-glibc@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-linux-arm-glibc@npm:2.5.6"
+ conditions: os=linux & cpu=arm & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-linux-arm-musl@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-linux-arm-musl@npm:2.5.6"
+ conditions: os=linux & cpu=arm & libc=musl
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-linux-arm64-glibc@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-linux-arm64-glibc@npm:2.5.6"
+ conditions: os=linux & cpu=arm64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-linux-arm64-musl@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-linux-arm64-musl@npm:2.5.6"
+ conditions: os=linux & cpu=arm64 & libc=musl
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-linux-x64-glibc@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-linux-x64-glibc@npm:2.5.6"
+ conditions: os=linux & cpu=x64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-linux-x64-musl@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-linux-x64-musl@npm:2.5.6"
+ conditions: os=linux & cpu=x64 & libc=musl
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-win32-arm64@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-win32-arm64@npm:2.5.6"
+ conditions: os=win32 & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-win32-ia32@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-win32-ia32@npm:2.5.6"
+ conditions: os=win32 & cpu=ia32
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher-win32-x64@npm:2.5.6":
+ version: 2.5.6
+ resolution: "@parcel/watcher-win32-x64@npm:2.5.6"
+ conditions: os=win32 & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@parcel/watcher@npm:^2.4.1":
+ version: 2.5.6
+ resolution: "@parcel/watcher@npm:2.5.6"
+ dependencies:
+ "@parcel/watcher-android-arm64": "npm:2.5.6"
+ "@parcel/watcher-darwin-arm64": "npm:2.5.6"
+ "@parcel/watcher-darwin-x64": "npm:2.5.6"
+ "@parcel/watcher-freebsd-x64": "npm:2.5.6"
+ "@parcel/watcher-linux-arm-glibc": "npm:2.5.6"
+ "@parcel/watcher-linux-arm-musl": "npm:2.5.6"
+ "@parcel/watcher-linux-arm64-glibc": "npm:2.5.6"
+ "@parcel/watcher-linux-arm64-musl": "npm:2.5.6"
+ "@parcel/watcher-linux-x64-glibc": "npm:2.5.6"
+ "@parcel/watcher-linux-x64-musl": "npm:2.5.6"
+ "@parcel/watcher-win32-arm64": "npm:2.5.6"
+ "@parcel/watcher-win32-ia32": "npm:2.5.6"
+ "@parcel/watcher-win32-x64": "npm:2.5.6"
+ detect-libc: "npm:^2.0.3"
+ is-glob: "npm:^4.0.3"
+ node-addon-api: "npm:^7.0.0"
+ node-gyp: "npm:latest"
+ picomatch: "npm:^4.0.3"
+ dependenciesMeta:
+ "@parcel/watcher-android-arm64":
+ optional: true
+ "@parcel/watcher-darwin-arm64":
+ optional: true
+ "@parcel/watcher-darwin-x64":
+ optional: true
+ "@parcel/watcher-freebsd-x64":
+ optional: true
+ "@parcel/watcher-linux-arm-glibc":
+ optional: true
+ "@parcel/watcher-linux-arm-musl":
+ optional: true
+ "@parcel/watcher-linux-arm64-glibc":
+ optional: true
+ "@parcel/watcher-linux-arm64-musl":
+ optional: true
+ "@parcel/watcher-linux-x64-glibc":
+ optional: true
+ "@parcel/watcher-linux-x64-musl":
+ optional: true
+ "@parcel/watcher-win32-arm64":
+ optional: true
+ "@parcel/watcher-win32-ia32":
+ optional: true
+ "@parcel/watcher-win32-x64":
+ optional: true
+ checksum: 10c0/1e1d91f92e94e4640089a7cead243b2b81ca9aa8e1c862a97a25f589e84fbf1ad93abeb503f325c43a8c0e024ae0e74b48ec42c1cd84e8e423a3a87d25ded4f2
+ languageName: node
+ linkType: hard
+
"@playwright/test@npm:^1.60":
version: 1.60.0
resolution: "@playwright/test@npm:1.60.0"
@@ -1472,6 +1648,149 @@ __metadata:
languageName: node
linkType: hard
+"@schummar/icu-type-parser@npm:1.21.5":
+ version: 1.21.5
+ resolution: "@schummar/icu-type-parser@npm:1.21.5"
+ checksum: 10c0/8c2bdb2087b2aeaafb484afefcc5291b21a7179fb92429cabc5f6b46019c6dedbeac6025b1a8f08e8749fb963f8a011e0ccba340ca3761f3c2348aac4b667c2c
+ languageName: node
+ linkType: hard
+
+"@swc/core-darwin-arm64@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-darwin-arm64@npm:1.15.40"
+ conditions: os=darwin & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@swc/core-darwin-x64@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-darwin-x64@npm:1.15.40"
+ conditions: os=darwin & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@swc/core-linux-arm-gnueabihf@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-linux-arm-gnueabihf@npm:1.15.40"
+ conditions: os=linux & cpu=arm
+ languageName: node
+ linkType: hard
+
+"@swc/core-linux-arm64-gnu@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-linux-arm64-gnu@npm:1.15.40"
+ conditions: os=linux & cpu=arm64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@swc/core-linux-arm64-musl@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-linux-arm64-musl@npm:1.15.40"
+ conditions: os=linux & cpu=arm64 & libc=musl
+ languageName: node
+ linkType: hard
+
+"@swc/core-linux-ppc64-gnu@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-linux-ppc64-gnu@npm:1.15.40"
+ conditions: os=linux & cpu=ppc64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@swc/core-linux-s390x-gnu@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-linux-s390x-gnu@npm:1.15.40"
+ conditions: os=linux & cpu=s390x & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@swc/core-linux-x64-gnu@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-linux-x64-gnu@npm:1.15.40"
+ conditions: os=linux & cpu=x64 & libc=glibc
+ languageName: node
+ linkType: hard
+
+"@swc/core-linux-x64-musl@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-linux-x64-musl@npm:1.15.40"
+ conditions: os=linux & cpu=x64 & libc=musl
+ languageName: node
+ linkType: hard
+
+"@swc/core-win32-arm64-msvc@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-win32-arm64-msvc@npm:1.15.40"
+ conditions: os=win32 & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"@swc/core-win32-ia32-msvc@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-win32-ia32-msvc@npm:1.15.40"
+ conditions: os=win32 & cpu=ia32
+ languageName: node
+ linkType: hard
+
+"@swc/core-win32-x64-msvc@npm:1.15.40":
+ version: 1.15.40
+ resolution: "@swc/core-win32-x64-msvc@npm:1.15.40"
+ conditions: os=win32 & cpu=x64
+ languageName: node
+ linkType: hard
+
+"@swc/core@npm:^1.15.2":
+ version: 1.15.40
+ resolution: "@swc/core@npm:1.15.40"
+ dependencies:
+ "@swc/core-darwin-arm64": "npm:1.15.40"
+ "@swc/core-darwin-x64": "npm:1.15.40"
+ "@swc/core-linux-arm-gnueabihf": "npm:1.15.40"
+ "@swc/core-linux-arm64-gnu": "npm:1.15.40"
+ "@swc/core-linux-arm64-musl": "npm:1.15.40"
+ "@swc/core-linux-ppc64-gnu": "npm:1.15.40"
+ "@swc/core-linux-s390x-gnu": "npm:1.15.40"
+ "@swc/core-linux-x64-gnu": "npm:1.15.40"
+ "@swc/core-linux-x64-musl": "npm:1.15.40"
+ "@swc/core-win32-arm64-msvc": "npm:1.15.40"
+ "@swc/core-win32-ia32-msvc": "npm:1.15.40"
+ "@swc/core-win32-x64-msvc": "npm:1.15.40"
+ "@swc/counter": "npm:^0.1.3"
+ "@swc/types": "npm:^0.1.26"
+ peerDependencies:
+ "@swc/helpers": ">=0.5.17"
+ dependenciesMeta:
+ "@swc/core-darwin-arm64":
+ optional: true
+ "@swc/core-darwin-x64":
+ optional: true
+ "@swc/core-linux-arm-gnueabihf":
+ optional: true
+ "@swc/core-linux-arm64-gnu":
+ optional: true
+ "@swc/core-linux-arm64-musl":
+ optional: true
+ "@swc/core-linux-ppc64-gnu":
+ optional: true
+ "@swc/core-linux-s390x-gnu":
+ optional: true
+ "@swc/core-linux-x64-gnu":
+ optional: true
+ "@swc/core-linux-x64-musl":
+ optional: true
+ "@swc/core-win32-arm64-msvc":
+ optional: true
+ "@swc/core-win32-ia32-msvc":
+ optional: true
+ "@swc/core-win32-x64-msvc":
+ optional: true
+ peerDependenciesMeta:
+ "@swc/helpers":
+ optional: true
+ checksum: 10c0/852a8940b307b08ea6d628e01bb0855fba6c60e59c8c1d4fa0bca9700e61106bb05939a721bf864f2f6d91c502d43cd938cb7f12e56f78eb56bc4f26c49fd8b7
+ languageName: node
+ linkType: hard
+
"@swc/counter@npm:^0.1.3":
version: 0.1.3
resolution: "@swc/counter@npm:0.1.3"
@@ -1498,6 +1817,15 @@ __metadata:
languageName: node
linkType: hard
+"@swc/types@npm:^0.1.26":
+ version: 0.1.26
+ resolution: "@swc/types@npm:0.1.26"
+ dependencies:
+ "@swc/counter": "npm:^0.1.3"
+ checksum: 10c0/8449341e8bbff81c14e9918c25421143cf605dff20f70f048847e1f7cede396f8dd73903cbef331a809b4a8e15d0db374a5f6809003e7b440f93df1dd4934d28
+ languageName: node
+ linkType: hard
+
"@tailwindcss/node@npm:4.2.2":
version: 4.2.2
resolution: "@tailwindcss/node@npm:4.2.2"
@@ -2174,6 +2502,27 @@ __metadata:
languageName: node
linkType: hard
+"example-next-intl@workspace:apps/example-next-intl":
+ version: 0.0.0-use.local
+ resolution: "example-next-intl@workspace:apps/example-next-intl"
+ dependencies:
+ "@playwright/test": "npm:^1.60"
+ "@redirection.io/vercel-middleware": "workspace:*"
+ "@tailwindcss/postcss": "npm:^4"
+ "@types/node": "npm:^20"
+ "@types/react": "npm:^19"
+ "@types/react-dom": "npm:^19"
+ next: "catalog:"
+ next-intl: "npm:^4.13.0"
+ oxfmt: "catalog:"
+ oxlint: "catalog:"
+ react: "npm:19.2.4"
+ react-dom: "npm:19.2.4"
+ tailwindcss: "npm:^4"
+ typescript: "catalog:"
+ languageName: unknown
+ linkType: soft
+
"example-webpack@workspace:apps/example-webpack":
version: 0.0.0-use.local
resolution: "example-webpack@workspace:apps/example-webpack"
@@ -2183,13 +2532,13 @@ __metadata:
"@types/node": "npm:^20"
"@types/react": "npm:^19"
"@types/react-dom": "npm:^19"
- next: "npm:16.2.4"
+ next: "catalog:"
oxfmt: "catalog:"
oxlint: "catalog:"
react: "npm:19.2.4"
react-dom: "npm:19.2.4"
tailwindcss: "npm:^4"
- typescript: "npm:^5"
+ typescript: "catalog:"
languageName: unknown
linkType: soft
@@ -2203,7 +2552,7 @@ __metadata:
"@types/node": "npm:^20"
"@types/react": "npm:^19"
"@types/react-dom": "npm:^19"
- next: "npm:16.2.4"
+ next: "catalog:"
oxfmt: "catalog:"
oxlint: "catalog:"
react: "npm:19.2.4"
@@ -2446,6 +2795,15 @@ __metadata:
languageName: node
linkType: hard
+"icu-minify@npm:^4.13.0":
+ version: 4.13.0
+ resolution: "icu-minify@npm:4.13.0"
+ dependencies:
+ "@formatjs/icu-messageformat-parser": "npm:^3.4.0"
+ checksum: 10c0/fee2569189398055d939a62d23bf0aaf27b653e0788989a8201dffcf7d0073cf015280cc2aa3474a10a4433b87869f146aea3ca80219e55836b43596457117ef
+ languageName: node
+ linkType: hard
+
"ignore@npm:^5.2.0":
version: 5.3.2
resolution: "ignore@npm:5.3.2"
@@ -2453,6 +2811,16 @@ __metadata:
languageName: node
linkType: hard
+"intl-messageformat@npm:^11.1.0":
+ version: 11.2.7
+ resolution: "intl-messageformat@npm:11.2.7"
+ dependencies:
+ "@formatjs/fast-memoize": "npm:3.1.5"
+ "@formatjs/icu-messageformat-parser": "npm:3.5.10"
+ checksum: 10c0/14a9299b738fa5ebd393d5238fc7869b9ccc0b5520f30c5a278e910ac5b1ebd0a0acc3cb2647a0983a807e17685b7932bdc8fa08245fa0e095d4fb8ebec9e38d
+ languageName: node
+ linkType: hard
+
"ip-address@npm:^10.0.1":
version: 10.1.0
resolution: "ip-address@npm:10.1.0"
@@ -2467,7 +2835,7 @@ __metadata:
languageName: node
linkType: hard
-"is-glob@npm:^4.0.1":
+"is-glob@npm:^4.0.1, is-glob@npm:^4.0.3":
version: 4.0.3
resolution: "is-glob@npm:4.0.3"
dependencies:
@@ -2928,31 +3296,60 @@ __metadata:
languageName: node
linkType: hard
-"next@npm:16.2.4":
- version: 16.2.4
- resolution: "next@npm:16.2.4"
+"next-intl-swc-plugin-extractor@npm:^4.13.0":
+ version: 4.13.0
+ resolution: "next-intl-swc-plugin-extractor@npm:4.13.0"
+ checksum: 10c0/249750778ae8c8aa436f68319e78caa891fd966baedd285a71a9dadcc083990d2b4fa2e22b2504adfad9e7ea578406c8dede1724f491f509c994b052eda35f43
+ languageName: node
+ linkType: hard
+
+"next-intl@npm:^4.13.0":
+ version: 4.13.0
+ resolution: "next-intl@npm:4.13.0"
dependencies:
- "@next/env": "npm:16.2.4"
- "@next/swc-darwin-arm64": "npm:16.2.4"
- "@next/swc-darwin-x64": "npm:16.2.4"
- "@next/swc-linux-arm64-gnu": "npm:16.2.4"
- "@next/swc-linux-arm64-musl": "npm:16.2.4"
- "@next/swc-linux-x64-gnu": "npm:16.2.4"
- "@next/swc-linux-x64-musl": "npm:16.2.4"
- "@next/swc-win32-arm64-msvc": "npm:16.2.4"
- "@next/swc-win32-x64-msvc": "npm:16.2.4"
- "@swc/helpers": "npm:0.5.15"
- baseline-browser-mapping: "npm:^2.9.19"
+ "@formatjs/intl-localematcher": "npm:^0.8.1"
+ "@parcel/watcher": "npm:^2.4.1"
+ "@swc/core": "npm:^1.15.2"
+ icu-minify: "npm:^4.13.0"
+ negotiator: "npm:^1.0.0"
+ next-intl-swc-plugin-extractor: "npm:^4.13.0"
+ po-parser: "npm:^2.1.1"
+ use-intl: "npm:^4.13.0"
+ peerDependencies:
+ next: ^12.0.0 || ^13.0.0 || ^14.0.0 || ^15.0.0 || ^16.0.0
+ react: ^16.8.0 || ^17.0.0 || ^18.0.0 || >=19.0.0-rc <19.0.0 || ^19.0.0
+ peerDependenciesMeta:
+ typescript:
+ optional: true
+ checksum: 10c0/934d8b495695fdfae2679f1379fd3aca5f9e5671f6545b4a57f2c5f17ffd1fe0fb18b025d2877fb0a35e0691786388850320e4db56860b3342315988cc52ebdc
+ languageName: node
+ linkType: hard
+
+"next@npm:^14.2.13":
+ version: 14.2.35
+ resolution: "next@npm:14.2.35"
+ dependencies:
+ "@next/env": "npm:14.2.35"
+ "@next/swc-darwin-arm64": "npm:14.2.33"
+ "@next/swc-darwin-x64": "npm:14.2.33"
+ "@next/swc-linux-arm64-gnu": "npm:14.2.33"
+ "@next/swc-linux-arm64-musl": "npm:14.2.33"
+ "@next/swc-linux-x64-gnu": "npm:14.2.33"
+ "@next/swc-linux-x64-musl": "npm:14.2.33"
+ "@next/swc-win32-arm64-msvc": "npm:14.2.33"
+ "@next/swc-win32-ia32-msvc": "npm:14.2.33"
+ "@next/swc-win32-x64-msvc": "npm:14.2.33"
+ "@swc/helpers": "npm:0.5.5"
+ busboy: "npm:1.6.0"
caniuse-lite: "npm:^1.0.30001579"
+ graceful-fs: "npm:^4.2.11"
postcss: "npm:8.4.31"
- sharp: "npm:^0.34.5"
- styled-jsx: "npm:5.1.6"
+ styled-jsx: "npm:5.1.1"
peerDependencies:
"@opentelemetry/api": ^1.1.0
- "@playwright/test": ^1.51.1
- babel-plugin-react-compiler: "*"
- react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0
- react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0
+ "@playwright/test": ^1.41.2
+ react: ^18.2.0
+ react-dom: ^18.2.0
sass: ^1.3.0
dependenciesMeta:
"@next/swc-darwin-arm64":
@@ -2969,50 +3366,48 @@ __metadata:
optional: true
"@next/swc-win32-arm64-msvc":
optional: true
- "@next/swc-win32-x64-msvc":
+ "@next/swc-win32-ia32-msvc":
optional: true
- sharp:
+ "@next/swc-win32-x64-msvc":
optional: true
peerDependenciesMeta:
"@opentelemetry/api":
optional: true
"@playwright/test":
optional: true
- babel-plugin-react-compiler:
- optional: true
sass:
optional: true
bin:
next: dist/bin/next
- checksum: 10c0/81dc1ef30141891dc5cc999a0a6210c68305b585b3a7508799767572a9fb7e4c7dcb5a50f5fa3fabadf6a46c2273405360b1d6f17f89edd891da1746ae31c186
+ checksum: 10c0/5b1eadd554cd2cb1f030335d71a9363d16d86453f60a2331333887804c8b4b04a16fcb1ddb58229b792b6c365dbd0fafd9ccacd727c85134101a124bd6b4c06a
languageName: node
linkType: hard
-"next@npm:^14.2.13":
- version: 14.2.35
- resolution: "next@npm:14.2.35"
+"next@npm:^16.2.7":
+ version: 16.2.7
+ resolution: "next@npm:16.2.7"
dependencies:
- "@next/env": "npm:14.2.35"
- "@next/swc-darwin-arm64": "npm:14.2.33"
- "@next/swc-darwin-x64": "npm:14.2.33"
- "@next/swc-linux-arm64-gnu": "npm:14.2.33"
- "@next/swc-linux-arm64-musl": "npm:14.2.33"
- "@next/swc-linux-x64-gnu": "npm:14.2.33"
- "@next/swc-linux-x64-musl": "npm:14.2.33"
- "@next/swc-win32-arm64-msvc": "npm:14.2.33"
- "@next/swc-win32-ia32-msvc": "npm:14.2.33"
- "@next/swc-win32-x64-msvc": "npm:14.2.33"
- "@swc/helpers": "npm:0.5.5"
- busboy: "npm:1.6.0"
+ "@next/env": "npm:16.2.7"
+ "@next/swc-darwin-arm64": "npm:16.2.7"
+ "@next/swc-darwin-x64": "npm:16.2.7"
+ "@next/swc-linux-arm64-gnu": "npm:16.2.7"
+ "@next/swc-linux-arm64-musl": "npm:16.2.7"
+ "@next/swc-linux-x64-gnu": "npm:16.2.7"
+ "@next/swc-linux-x64-musl": "npm:16.2.7"
+ "@next/swc-win32-arm64-msvc": "npm:16.2.7"
+ "@next/swc-win32-x64-msvc": "npm:16.2.7"
+ "@swc/helpers": "npm:0.5.15"
+ baseline-browser-mapping: "npm:^2.9.19"
caniuse-lite: "npm:^1.0.30001579"
- graceful-fs: "npm:^4.2.11"
postcss: "npm:8.4.31"
- styled-jsx: "npm:5.1.1"
+ sharp: "npm:^0.34.5"
+ styled-jsx: "npm:5.1.6"
peerDependencies:
"@opentelemetry/api": ^1.1.0
- "@playwright/test": ^1.41.2
- react: ^18.2.0
- react-dom: ^18.2.0
+ "@playwright/test": ^1.51.1
+ babel-plugin-react-compiler: "*"
+ react: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0
+ react-dom: ^18.2.0 || 19.0.0-rc-de68d2f4-20241204 || ^19.0.0
sass: ^1.3.0
dependenciesMeta:
"@next/swc-darwin-arm64":
@@ -3029,20 +3424,31 @@ __metadata:
optional: true
"@next/swc-win32-arm64-msvc":
optional: true
- "@next/swc-win32-ia32-msvc":
- optional: true
"@next/swc-win32-x64-msvc":
optional: true
+ sharp:
+ optional: true
peerDependenciesMeta:
"@opentelemetry/api":
optional: true
"@playwright/test":
optional: true
+ babel-plugin-react-compiler:
+ optional: true
sass:
optional: true
bin:
next: dist/bin/next
- checksum: 10c0/5b1eadd554cd2cb1f030335d71a9363d16d86453f60a2331333887804c8b4b04a16fcb1ddb58229b792b6c365dbd0fafd9ccacd727c85134101a124bd6b4c06a
+ checksum: 10c0/11ba48609b3e2e6f380021b3c394c51a9e85a2c4569d19f11be24c7ee1dc5c0d4028e9ef824982043c48e2cb8583b949471153838aec85614a348fb38fb0eff9
+ languageName: node
+ linkType: hard
+
+"node-addon-api@npm:^7.0.0":
+ version: 7.1.1
+ resolution: "node-addon-api@npm:7.1.1"
+ dependencies:
+ node-gyp: "npm:latest"
+ checksum: 10c0/fb32a206276d608037fa1bcd7e9921e177fe992fc610d098aa3128baca3c0050fc1e014fa007e9b3874cf865ddb4f5bd9f43ccb7cbbbe4efaff6a83e920b17e9
languageName: node
linkType: hard
@@ -3412,6 +3818,13 @@ __metadata:
languageName: node
linkType: hard
+"po-parser@npm:^2.1.1":
+ version: 2.1.1
+ resolution: "po-parser@npm:2.1.1"
+ checksum: 10c0/dc57f74fc5b74576fe0290937691c54e7f6b36609027e25f5a40251e10d173c23305c2cca340a9497b0950cfe54e63fd3de9181048ba0e8acee56069c48dd5d0
+ languageName: node
+ linkType: hard
+
"postcss-load-config@npm:^6.0.1":
version: 6.0.1
resolution: "postcss-load-config@npm:6.0.1"
@@ -4111,16 +4524,6 @@ __metadata:
languageName: node
linkType: hard
-"typescript@npm:^5":
- version: 5.9.3
- resolution: "typescript@npm:5.9.3"
- bin:
- tsc: bin/tsc
- tsserver: bin/tsserver
- checksum: 10c0/6bd7552ce39f97e711db5aa048f6f9995b53f1c52f7d8667c1abdc1700c68a76a308f579cd309ce6b53646deb4e9a1be7c813a93baaf0a28ccd536a30270e1c5
- languageName: node
- linkType: hard
-
"typescript@npm:^6.0.3":
version: 6.0.3
resolution: "typescript@npm:6.0.3"
@@ -4131,16 +4534,6 @@ __metadata:
languageName: node
linkType: hard
-"typescript@patch:typescript@npm%3A^5#optional!builtin":
- version: 5.9.3
- resolution: "typescript@patch:typescript@npm%3A5.9.3#optional!builtin::version=5.9.3&hash=5786d5"
- bin:
- tsc: bin/tsc
- tsserver: bin/tsserver
- checksum: 10c0/ad09fdf7a756814dce65bc60c1657b40d44451346858eea230e10f2e95a289d9183b6e32e5c11e95acc0ccc214b4f36289dcad4bf1886b0adb84d711d336a430
- languageName: node
- linkType: hard
-
"typescript@patch:typescript@npm%3A^6.0.3#optional!builtin":
version: 6.0.3
resolution: "typescript@patch:typescript@npm%3A6.0.3#optional!builtin::version=6.0.3&hash=5786d5"
@@ -4179,6 +4572,20 @@ __metadata:
languageName: node
linkType: hard
+"use-intl@npm:^4.13.0":
+ version: 4.13.0
+ resolution: "use-intl@npm:4.13.0"
+ dependencies:
+ "@formatjs/fast-memoize": "npm:^3.1.0"
+ "@schummar/icu-type-parser": "npm:1.21.5"
+ icu-minify: "npm:^4.13.0"
+ intl-messageformat: "npm:^11.1.0"
+ peerDependencies:
+ react: ^17.0.0 || ^18.0.0 || >=19.0.0-rc <19.0.0 || ^19.0.0
+ checksum: 10c0/1e846965604abcfd0059b9b94111e50704833c12fbb78a6e25294f8701b1a40dbe0272991237ce7694d1527e0e0350b901fbb243c7c62a3affc4d4a01e41ea38
+ languageName: node
+ linkType: hard
+
"vercel-middleware@workspace:.":
version: 0.0.0-use.local
resolution: "vercel-middleware@workspace:."