From dffd4a5759c0eaddf1fbfbe0ade1e0b75d6adc14 Mon Sep 17 00:00:00 2001
From: David Mytton
Date: Wed, 12 Jun 2024 13:49:03 +0100
Subject: [PATCH 01/30] fix(examples): Update Sveltekite deps & fix a typo
(#939)
* fix(examples): Fix typo
* fix(deps): Bump deps
---
examples/sveltekit/README.md | 2 +-
examples/sveltekit/package-lock.json | 34 +++++++++++++-------------
examples/sveltekit/src/hooks.server.ts | 4 +--
3 files changed, 20 insertions(+), 20 deletions(-)
diff --git a/examples/sveltekit/README.md b/examples/sveltekit/README.md
index 8b95d79e4..33389cc5d 100644
--- a/examples/sveltekit/README.md
+++ b/examples/sveltekit/README.md
@@ -20,7 +20,7 @@ This example shows how to use Arcjet to protect [SvelteKit](https://kit.svelte.d
2. Enter this directory and install the example's dependencies.
```bash
- cd examples/svelte
+ cd examples/sveltekit
npm ci
```
diff --git a/examples/sveltekit/package-lock.json b/examples/sveltekit/package-lock.json
index 686c5a2a1..cb826dfcc 100644
--- a/examples/sveltekit/package-lock.json
+++ b/examples/sveltekit/package-lock.json
@@ -33,22 +33,22 @@
},
"../../arcjet-sveltekit": {
"name": "@arcjet/sveltekit",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/env": "1.0.0-alpha.13",
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
- "@arcjet/logger": "1.0.0-alpha.13",
- "@arcjet/runtime": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
+ "@arcjet/runtime": "1.0.0-alpha.14",
"@connectrpc/connect-node": "1.4.0",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -1491,12 +1491,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -2119,9 +2119,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
diff --git a/examples/sveltekit/src/hooks.server.ts b/examples/sveltekit/src/hooks.server.ts
index 02261ad2e..a64616e99 100644
--- a/examples/sveltekit/src/hooks.server.ts
+++ b/examples/sveltekit/src/hooks.server.ts
@@ -12,7 +12,7 @@ export async function handle({
// Ignore routes that extend the Arcjet rules - they will call `.protect` themselves
const filteredRoutes = ["/api/rate-limited", "/rate-limited"];
if (filteredRoutes.includes(event.url.pathname)) {
- // return - route will handle protecttion
+ // return - route will handle protection
return resolve(event);
}
@@ -24,4 +24,4 @@ export async function handle({
// Continue with the route
return resolve(event);
-}
+}
\ No newline at end of file
From 2a3a9190119b99d4aae99c73e23ed84e6e3578e5 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:02:08 +0000
Subject: [PATCH 02/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-clerk-rl (#949)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
examples/nextjs-14-clerk-rl/package-lock.json | 30 ++++++++++---------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/examples/nextjs-14-clerk-rl/package-lock.json b/examples/nextjs-14-clerk-rl/package-lock.json
index c313d42c5..2ecd6ded2 100644
--- a/examples/nextjs-14-clerk-rl/package-lock.json
+++ b/examples/nextjs-14-clerk-rl/package-lock.json
@@ -28,18 +28,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -1116,12 +1118,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -2218,9 +2220,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From c6270ddd266c354c1d08725493d1b997f89ba763 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:03:05 +0000
Subject: [PATCH 03/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-nextauth-4 (#951)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
.../nextjs-14-nextauth-4/package-lock.json | 30 ++++++++++---------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/examples/nextjs-14-nextauth-4/package-lock.json b/examples/nextjs-14-nextauth-4/package-lock.json
index 3456b0c34..49cb7963a 100644
--- a/examples/nextjs-14-nextauth-4/package-lock.json
+++ b/examples/nextjs-14-nextauth-4/package-lock.json
@@ -27,18 +27,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -1029,12 +1031,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -2055,9 +2057,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From 3077d96d794d1ead9039c6429d97d86fcc924948 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:04:43 +0000
Subject: [PATCH 04/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-decorate (#952)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
examples/nextjs-14-decorate/package-lock.json | 42 ++++++++++---------
1 file changed, 22 insertions(+), 20 deletions(-)
diff --git a/examples/nextjs-14-decorate/package-lock.json b/examples/nextjs-14-decorate/package-lock.json
index 1eeb69fa5..ace07fbd7 100644
--- a/examples/nextjs-14-decorate/package-lock.json
+++ b/examples/nextjs-14-decorate/package-lock.json
@@ -28,18 +28,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -55,16 +57,16 @@
},
"../../decorate": {
"name": "@arcjet/decorate",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/protocol": "1.0.0-alpha.13",
- "@arcjet/sprintf": "1.0.0-alpha.13"
+ "@arcjet/protocol": "1.0.0-alpha.14",
+ "@arcjet/sprintf": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -1043,12 +1045,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -2023,9 +2025,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From 6449d0de43706929f8739762e7cc8a24b60382e8 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:05:06 +0000
Subject: [PATCH 05/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-pages-wrap (#953)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
.../nextjs-14-pages-wrap/package-lock.json | 30 ++++++++++---------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/examples/nextjs-14-pages-wrap/package-lock.json b/examples/nextjs-14-pages-wrap/package-lock.json
index 187a29b4e..c44ca9ff2 100644
--- a/examples/nextjs-14-pages-wrap/package-lock.json
+++ b/examples/nextjs-14-pages-wrap/package-lock.json
@@ -27,18 +27,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -1016,12 +1018,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -1996,9 +1998,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From cc46877c730debb10622a9f674150d9229678cf4 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:05:39 +0000
Subject: [PATCH 06/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-openai (#955)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
examples/nextjs-14-openai/package-lock.json | 32 ++++++++++-----------
1 file changed, 16 insertions(+), 16 deletions(-)
diff --git a/examples/nextjs-14-openai/package-lock.json b/examples/nextjs-14-openai/package-lock.json
index 913dfdbc9..800e008f7 100644
--- a/examples/nextjs-14-openai/package-lock.json
+++ b/examples/nextjs-14-openai/package-lock.json
@@ -30,20 +30,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/env": "1.0.0-alpha.13",
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
- "@arcjet/logger": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -1387,12 +1387,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -2452,9 +2452,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From 466c6d63351af181789ed4f35986d0aaf36a7b09 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:06:47 +0000
Subject: [PATCH 07/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-ip-details (#956)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
.../nextjs-14-ip-details/package-lock.json | 30 ++++++++++---------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/examples/nextjs-14-ip-details/package-lock.json b/examples/nextjs-14-ip-details/package-lock.json
index 9b681db38..43ba0bd65 100644
--- a/examples/nextjs-14-ip-details/package-lock.json
+++ b/examples/nextjs-14-ip-details/package-lock.json
@@ -27,18 +27,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -1016,12 +1018,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -1996,9 +1998,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From 18c506801a62f21a4521d5fd57157169a562321d Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:07:18 +0000
Subject: [PATCH 08/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-clerk-shield (#957)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
.../nextjs-14-clerk-shield/package-lock.json | 30 ++++++++++---------
1 file changed, 16 insertions(+), 14 deletions(-)
diff --git a/examples/nextjs-14-clerk-shield/package-lock.json b/examples/nextjs-14-clerk-shield/package-lock.json
index 65c6a1710..7f0724f39 100644
--- a/examples/nextjs-14-clerk-shield/package-lock.json
+++ b/examples/nextjs-14-clerk-shield/package-lock.json
@@ -28,18 +28,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -1116,12 +1118,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -2218,9 +2220,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From 3cc0ae71b57de1452e00611b6d5ce286fd184f27 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:07:43 +0000
Subject: [PATCH 09/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-react-hook-form (#958)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
.../nextjs-14-react-hook-form/package-lock.json | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/examples/nextjs-14-react-hook-form/package-lock.json b/examples/nextjs-14-react-hook-form/package-lock.json
index dc76c52ce..31ebe5b92 100644
--- a/examples/nextjs-14-react-hook-form/package-lock.json
+++ b/examples/nextjs-14-react-hook-form/package-lock.json
@@ -1183,11 +1183,11 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -2430,9 +2430,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dependencies": {
"to-regex-range": "^5.0.1"
},
From 2d6f4a0c4bbab46eb79f96270abdc5a48dbc616b Mon Sep 17 00:00:00 2001
From: blaine-arcjet <146491715+blaine-arcjet@users.noreply.github.com>
Date: Wed, 12 Jun 2024 06:10:00 -0700
Subject: [PATCH 10/30] chore(rollup-config): Allow more builtins to avoid
warnings (#933)
I was noticing warnings for some imports, so I've updated our externalize functions to include bun and sveltekit ambient modules.
---
rollup-config/index.js | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/rollup-config/index.js b/rollup-config/index.js
index 0ce990b22..207205b73 100644
--- a/rollup-config/index.js
+++ b/rollup-config/index.js
@@ -34,6 +34,14 @@ export function createConfig(root, { plugins = [] } = {}) {
return peerDependencies.some((dep) => id.startsWith(dep));
}
+ function isBunBuiltin(id) {
+ return id === "bun";
+ }
+
+ function isSvelteKitBuiltin(id) {
+ return id === "$env/dynamic/private";
+ }
+
const rootDir = fileURLToPath(new URL(".", root));
const testDir = fileURLToPath(new URL("test/", root));
@@ -76,7 +84,9 @@ export function createConfig(root, { plugins = [] } = {}) {
isBuiltin(id) ||
isDependency(id) ||
isDevDependency(id) ||
- isPeerDependency(id)
+ isPeerDependency(id) ||
+ isBunBuiltin(id) ||
+ isSvelteKitBuiltin(id)
);
},
plugins: [
From 3ef130fe55c3da54927dd25b048b974ff6edf7f4 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:14:35 +0000
Subject: [PATCH 11/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-app-dir-rl (#962)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
.../nextjs-14-app-dir-rl/package-lock.json | 40 +++++++++----------
1 file changed, 20 insertions(+), 20 deletions(-)
diff --git a/examples/nextjs-14-app-dir-rl/package-lock.json b/examples/nextjs-14-app-dir-rl/package-lock.json
index 26833562d..bfb174bcf 100644
--- a/examples/nextjs-14-app-dir-rl/package-lock.json
+++ b/examples/nextjs-14-app-dir-rl/package-lock.json
@@ -28,20 +28,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/env": "1.0.0-alpha.13",
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
- "@arcjet/logger": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -57,12 +57,12 @@
},
"../../env": {
"name": "@arcjet/env",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"jest": "29.7.0",
@@ -1040,12 +1040,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -2020,9 +2020,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From eb4efc1af48a95da9bd44dd67da298d44ebdd11e Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:17:51 +0000
Subject: [PATCH 12/30] chore(deps-dev): Bump braces from 3.0.2 to 3.0.3 in
/examples/nodejs-nestjs (#950)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
examples/nodejs-nestjs/package-lock.json | 185 +++++------------------
1 file changed, 35 insertions(+), 150 deletions(-)
diff --git a/examples/nodejs-nestjs/package-lock.json b/examples/nodejs-nestjs/package-lock.json
index 265241d25..bae3d710b 100644
--- a/examples/nodejs-nestjs/package-lock.json
+++ b/examples/nodejs-nestjs/package-lock.json
@@ -9,7 +9,7 @@
"version": "0.0.1",
"license": "UNLICENSED",
"dependencies": {
- "@arcjet/node": "^1.0.0-alpha.12",
+ "@arcjet/node": "file:../../arcjet-node",
"@nestjs/common": "^10.0.0",
"@nestjs/config": "^3.2.2",
"@nestjs/core": "^10.0.0",
@@ -41,6 +41,31 @@
"typescript": "^5.1.3"
}
},
+ "../../arcjet-node": {
+ "version": "1.0.0-alpha.14",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
+ "@connectrpc/connect-node": "1.4.0",
+ "arcjet": "1.0.0-alpha.14"
+ },
+ "devDependencies": {
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
+ "@jest/globals": "29.7.0",
+ "@rollup/wasm-node": "4.18.0",
+ "@types/node": "18.18.0",
+ "jest": "29.7.0",
+ "typescript": "5.4.5"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@aashutoshrathi/word-wrap": {
"version": "1.2.6",
"resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
@@ -235,71 +260,9 @@
"node": ">=0.12.0"
}
},
- "node_modules/@arcjet/analyze": {
- "version": "1.0.0-alpha.12",
- "resolved": "https://registry.npmjs.org/@arcjet/analyze/-/analyze-1.0.0-alpha.12.tgz",
- "integrity": "sha512-mZ4km3XrUzbcpVGp35OCUiHjXYaa4cKGL9yHI253vozetIzJezZW/lCVU/iQU3JJt704oXKLpF5uzaXb1mj1Zg==",
- "dependencies": {
- "@arcjet/logger": "1.0.0-alpha.12"
- },
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@arcjet/duration": {
- "version": "1.0.0-alpha.12",
- "resolved": "https://registry.npmjs.org/@arcjet/duration/-/duration-1.0.0-alpha.12.tgz",
- "integrity": "sha512-2DxNGNaf4eh3nkkEAueqwDXLT3IXupn6WZ2KOQIfLpxAyKNUXVhGKyAoO801TIgItz29CceOt7aomlUjyjFStQ==",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@arcjet/ip": {
- "version": "1.0.0-alpha.12",
- "resolved": "https://registry.npmjs.org/@arcjet/ip/-/ip-1.0.0-alpha.12.tgz",
- "integrity": "sha512-P2vZDzitIWvFEc2woEV2dRT9DEaubcPBPVJMbyRLbtu5iBkiv5CPgdt9vXI1VyqmWT1O9xgFK3FO2JSWDsqyUw==",
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@arcjet/logger": {
- "version": "1.0.0-alpha.12",
- "resolved": "https://registry.npmjs.org/@arcjet/logger/-/logger-1.0.0-alpha.12.tgz",
- "integrity": "sha512-ceRcpVKPdLkw9EeShpcXgIEG7MjUMHqHL1k++SAwM9DoAgKfgF9t/znUK7t0XvUOHBL+W2AbpjQS6VKUT+IeFg==",
- "engines": {
- "node": ">=18"
- }
- },
"node_modules/@arcjet/node": {
- "version": "1.0.0-alpha.12",
- "resolved": "https://registry.npmjs.org/@arcjet/node/-/node-1.0.0-alpha.12.tgz",
- "integrity": "sha512-fhie43t/lvsTeRfL9usJzhnpFKxE9wzbn5fN+bGFuWZAF7+bISHcq5Sj1r2OjigD4JoSFuQHFMFldrvxQwJESw==",
- "dependencies": {
- "@arcjet/ip": "1.0.0-alpha.12",
- "@connectrpc/connect-node": "1.4.0",
- "arcjet": "1.0.0-alpha.12"
- },
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@arcjet/protocol": {
- "version": "1.0.0-alpha.12",
- "resolved": "https://registry.npmjs.org/@arcjet/protocol/-/protocol-1.0.0-alpha.12.tgz",
- "integrity": "sha512-bmQv6aaKyAx+tf9rX8A4oKeS03bU0CHNyVxcMevWHvHbf9rj7TmfP2SX5ZYIu+pbY+VXn6oI0vSksMybcWwxrg==",
- "dependencies": {
- "@bufbuild/protobuf": "1.8.0",
- "@connectrpc/connect": "1.4.0",
- "typeid-js": "0.7.0"
- },
- "engines": {
- "node": ">=18"
- }
- },
- "node_modules/@arcjet/protocol/node_modules/@bufbuild/protobuf": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-1.8.0.tgz",
- "integrity": "sha512-qR9FwI8QKIveDnUYutvfzbC21UZJJryYrLuZGjeZ/VGz+vXelUkK+xgkOHsvPEdYEdxtgUUq4313N8QtOehJ1Q=="
+ "resolved": "../../arcjet-node",
+ "link": true
},
"node_modules/@babel/code-frame": {
"version": "7.24.2",
@@ -880,12 +843,6 @@
"integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==",
"dev": true
},
- "node_modules/@bufbuild/protobuf": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-1.9.0.tgz",
- "integrity": "sha512-W7gp8Q/v1NlCZLsv8pQ3Y0uCu/SHgXOVFK+eUluUKWXmsb6VHkpNx0apdOWWcDbB9sJoKeP8uPrjmehJz6xETQ==",
- "peer": true
- },
"node_modules/@colors/colors": {
"version": "1.5.0",
"resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
@@ -896,29 +853,6 @@
"node": ">=0.1.90"
}
},
- "node_modules/@connectrpc/connect": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/@connectrpc/connect/-/connect-1.4.0.tgz",
- "integrity": "sha512-vZeOkKaAjyV4+RH3+rJZIfDFJAfr+7fyYr6sLDKbYX3uuTVszhFe9/YKf5DNqrDb5cKdKVlYkGn6DTDqMitAnA==",
- "peerDependencies": {
- "@bufbuild/protobuf": "^1.4.2"
- }
- },
- "node_modules/@connectrpc/connect-node": {
- "version": "1.4.0",
- "resolved": "https://registry.npmjs.org/@connectrpc/connect-node/-/connect-node-1.4.0.tgz",
- "integrity": "sha512-0ANnrr6SvsjevsWEgdzHy7BaHkluZyS6s4xNoVt7RBHFR5V/kT9lPokoIbYUOU9JHzdRgTaS3x5595mwUsu15g==",
- "dependencies": {
- "undici": "^5.28.3"
- },
- "engines": {
- "node": ">=16.0.0"
- },
- "peerDependencies": {
- "@bufbuild/protobuf": "^1.4.2",
- "@connectrpc/connect": "1.4.0"
- }
- },
"node_modules/@cspotcode/source-map-support": {
"version": "0.8.1",
"resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
@@ -1041,14 +975,6 @@
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
- "node_modules/@fastify/busboy": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz",
- "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==",
- "engines": {
- "node": ">=14"
- }
- },
"node_modules/@humanwhocodes/config-array": {
"version": "0.11.14",
"resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
@@ -2907,20 +2833,6 @@
"resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz",
"integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw=="
},
- "node_modules/arcjet": {
- "version": "1.0.0-alpha.12",
- "resolved": "https://registry.npmjs.org/arcjet/-/arcjet-1.0.0-alpha.12.tgz",
- "integrity": "sha512-zrbGsYAlmh7epdBafQtoOr3uu2zyXEQesJrh5fzqyO2SUVOYu3v2f5uoOrLjLl4ap4gwCd0bSgwC+k/91j54FA==",
- "dependencies": {
- "@arcjet/analyze": "1.0.0-alpha.12",
- "@arcjet/duration": "1.0.0-alpha.12",
- "@arcjet/logger": "1.0.0-alpha.12",
- "@arcjet/protocol": "1.0.0-alpha.12"
- },
- "engines": {
- "node": ">=18"
- }
- },
"node_modules/arg": {
"version": "4.1.3",
"resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz",
@@ -3190,12 +3102,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -4554,9 +4466,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
@@ -8490,14 +8402,6 @@
"resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
"integrity": "sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA=="
},
- "node_modules/typeid-js": {
- "version": "0.7.0",
- "resolved": "https://registry.npmjs.org/typeid-js/-/typeid-js-0.7.0.tgz",
- "integrity": "sha512-eNkOAh7Z7SIGwgdg2BM5n79QhJqHMNMm6kWYJAsIf3OqBLDEO5UeNLknBXh9+U6zel1zC5z2l0cwCswIy+GWyw==",
- "dependencies": {
- "uuidv7": "^0.6.2"
- }
- },
"node_modules/typescript": {
"version": "5.4.5",
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.5.tgz",
@@ -8522,17 +8426,6 @@
"node": ">=8"
}
},
- "node_modules/undici": {
- "version": "5.28.4",
- "resolved": "https://registry.npmjs.org/undici/-/undici-5.28.4.tgz",
- "integrity": "sha512-72RFADWFqKmUb2hmmvNODKL3p9hcB6Gt2DOQMis1SEBaV6a4MH8soBvzg+95CYhCKPFedut2JY9bMfrDl9D23g==",
- "dependencies": {
- "@fastify/busboy": "^2.0.0"
- },
- "engines": {
- "node": ">=14.0"
- }
- },
"node_modules/undici-types": {
"version": "5.26.5",
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz",
@@ -8620,14 +8513,6 @@
"uuid": "dist/bin/uuid"
}
},
- "node_modules/uuidv7": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/uuidv7/-/uuidv7-0.6.3.tgz",
- "integrity": "sha512-zV3eW2NlXTsun/aJ7AixxZjH/byQcH/r3J99MI0dDEkU2cJIBJxhEWUHDTpOaLPRNhebPZoeHuykYREkI9HafA==",
- "bin": {
- "uuidv7": "cli.js"
- }
- },
"node_modules/v8-compile-cache-lib": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz",
From f3d2af53e6939f25597f75b1dfe212238afee626 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:18:14 +0000
Subject: [PATCH 13/30] deps: Bump braces from 3.0.2 to 3.0.3 (#954)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
package-lock.json | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/package-lock.json b/package-lock.json
index f293e257d..d9aba786b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -2692,11 +2692,11 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -3497,9 +3497,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dependencies": {
"to-regex-range": "^5.0.1"
},
From 8458fe84a16df97de2b92fbec82a4a75350d5a9d Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:25:59 +0000
Subject: [PATCH 14/30] deps(example): Bump hono from 4.4.4 to 4.4.5 in
/examples/nodejs-hono-rl in the dependencies group (#923)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/nodejs-hono-rl with 1 update: [hono](https://github.com/honojs/hono).
Updates `hono` from 4.4.4 to 4.4.5
Release notes
Sourced from hono's releases.
v4.4.5
What's Changed
Full Changelog: https://github.com/honojs/hono/compare/v4.4.4...v4.4.5
Commits
75663ff
v4.4.5
ad04fbf
refactor(jsx): reduce code size and improve maintainability (#2956)
32ba5ba
refactor(request): shorten parseBody
and remove unnecessary check (#2947)
208d77b
fix(context): default JSONRespond and TextRespond StatusCode generic arg (#2...
e1e0e09
test(hono-base): add tests for covering 100% (#2952)
7eb3e3b
refactor(context): remove unnecessary initialization add add tests for Contex...
ddb1d86
refactor(hono-base): don't check argument values (#2946)
0a974ff
refactor(hono-base): make 2nd arg of app.route()
required (#2945)
e727879
fix(jsx): rename Hono
to JSX
and export JSX
namespace (#2937)
1a32ef4
fix(cors): allow custom vary header (#2934)
- See full diff in compare view
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=hono&package-manager=npm_and_yarn&previous-version=4.4.4&new-version=4.4.5)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
examples/nodejs-hono-rl/package-lock.json | 24 ++++++++++++-----------
examples/nodejs-hono-rl/package.json | 2 +-
2 files changed, 14 insertions(+), 12 deletions(-)
diff --git a/examples/nodejs-hono-rl/package-lock.json b/examples/nodejs-hono-rl/package-lock.json
index 296613d64..3b0986545 100644
--- a/examples/nodejs-hono-rl/package-lock.json
+++ b/examples/nodejs-hono-rl/package-lock.json
@@ -8,7 +8,7 @@
"dependencies": {
"@arcjet/node": "file:../../arcjet-node",
"@hono/node-server": "^1.11.2",
- "hono": "^4.4.4"
+ "hono": "^4.4.5"
},
"devDependencies": {
"@types/node": "^20",
@@ -17,18 +17,20 @@
},
"../../arcjet-node": {
"name": "@arcjet/node",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-node": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -61,9 +63,9 @@
}
},
"node_modules/hono": {
- "version": "4.4.4",
- "resolved": "https://registry.npmjs.org/hono/-/hono-4.4.4.tgz",
- "integrity": "sha512-zO5+4K8yf1iuKhBZhwmpZ/0LzPMr8Zt1RugEGM1xvOqgh9DyLb7tslOtoBks4bmm5bIcLtzLCXUpYpXOkwpABA==",
+ "version": "4.4.5",
+ "resolved": "https://registry.npmjs.org/hono/-/hono-4.4.5.tgz",
+ "integrity": "sha512-hyf+1c+gTEo0+xjdYT2e8y4M3HcEy0ARuRZHPRgeRhq/mupkI4j9/qEWVKsyj0se4KhfRnYrld4Tk6z/9veq/Q==",
"engines": {
"node": ">=16.0.0"
}
diff --git a/examples/nodejs-hono-rl/package.json b/examples/nodejs-hono-rl/package.json
index 4a0ac6761..3b36762d5 100644
--- a/examples/nodejs-hono-rl/package.json
+++ b/examples/nodejs-hono-rl/package.json
@@ -9,7 +9,7 @@
"dependencies": {
"@arcjet/node": "file:../../arcjet-node",
"@hono/node-server": "^1.11.2",
- "hono": "^4.4.4"
+ "hono": "^4.4.5"
},
"devDependencies": {
"@types/node": "^20",
From 30e03ad1d65d9e44668e73b7db68db82a626621e Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:30:02 +0000
Subject: [PATCH 15/30] deps(example): Bump prettier from 3.3.1 to 3.3.2 in
/examples/sveltekit in the dependencies group (#926)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/sveltekit with 1 update: [prettier](https://github.com/prettier/prettier).
Updates `prettier` from 3.3.1 to 3.3.2
Release notes
Sourced from prettier's releases.
3.3.2
🔗 Changelog
Changelog
Sourced from prettier's changelog.
3.3.2
diff
Fix handlebars path expressions starts with @
(#16358 by @Princeyadav05
)
{{! Input }}
<div>{{@x.y.z}}</div>
{{! Prettier 3.3.1 }}
<div>{{@x
}}</div>
{{! Prettier 3.3.2 }}
<div>{{@x
.y.z}}</div>
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=prettier&package-manager=npm_and_yarn&previous-version=3.3.1&new-version=3.3.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
examples/sveltekit/package-lock.json | 8 ++++----
examples/sveltekit/package.json | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/examples/sveltekit/package-lock.json b/examples/sveltekit/package-lock.json
index cb826dfcc..989f4dc95 100644
--- a/examples/sveltekit/package-lock.json
+++ b/examples/sveltekit/package-lock.json
@@ -22,7 +22,7 @@
"eslint": "^8.56.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-svelte": "^2.39.3",
- "prettier": "^3.3.1",
+ "prettier": "^3.3.2",
"prettier-plugin-svelte": "^3.2.4",
"svelte": "^4.2.18",
"svelte-check": "^3.8.0",
@@ -2991,9 +2991,9 @@
}
},
"node_modules/prettier": {
- "version": "3.3.1",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.1.tgz",
- "integrity": "sha512-7CAwy5dRsxs8PHXT3twixW9/OEll8MLE0VRPCJyl7CkS6VHGPSlsVaWTiASPTyGyYRyApxlaWTzwUxVNrhcwDg==",
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.2.tgz",
+ "integrity": "sha512-rAVeHYMcv8ATV5d508CFdn+8/pHPpXeIid1DdrPwXnaAdH7cqjVbpJaT5eq4yRAFU/lsbwYwSF/n5iNrdJHPQA==",
"dev": true,
"bin": {
"prettier": "bin/prettier.cjs"
diff --git a/examples/sveltekit/package.json b/examples/sveltekit/package.json
index 89518a0b1..86c98502a 100644
--- a/examples/sveltekit/package.json
+++ b/examples/sveltekit/package.json
@@ -27,7 +27,7 @@
"eslint": "^8.56.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-svelte": "^2.39.3",
- "prettier": "^3.3.1",
+ "prettier": "^3.3.2",
"prettier-plugin-svelte": "^3.2.4",
"svelte": "^4.2.18",
"svelte-check": "^3.8.0",
From 78f1a31cf8cbaca914aec3c72c11e96a5d96cdf6 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:31:16 +0000
Subject: [PATCH 16/30] deps(example): Bump the dependencies group in
/examples/nextjs-14-pages-wrap with 2 updates (#935)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/nextjs-14-pages-wrap with 2 updates: [next](https://github.com/vercel/next.js) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
.../nextjs-14-pages-wrap/package-lock.json | 124 +++++++++---------
examples/nextjs-14-pages-wrap/package.json | 4 +-
2 files changed, 64 insertions(+), 64 deletions(-)
diff --git a/examples/nextjs-14-pages-wrap/package-lock.json b/examples/nextjs-14-pages-wrap/package-lock.json
index c44ca9ff2..bb19d9442 100644
--- a/examples/nextjs-14-pages-wrap/package-lock.json
+++ b/examples/nextjs-14-pages-wrap/package-lock.json
@@ -9,7 +9,7 @@
"version": "0.1.0",
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -19,7 +19,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
@@ -273,14 +273,14 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
@@ -333,9 +333,9 @@
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -348,9 +348,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -363,9 +363,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -378,9 +378,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -393,9 +393,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -408,9 +408,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -423,9 +423,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -438,9 +438,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -453,9 +453,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1576,12 +1576,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -2055,9 +2055,9 @@
}
},
"node_modules/foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.0.tgz",
+ "integrity": "sha512-CrWQNaEl1/6WeZoarcM9LHupTo3RpZO2Pdk1vktwzPiQTsJnAKJmm3TACKeG5UZbWDfaH2AbvYxzP96y0MT7fA==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.0",
@@ -3024,9 +3024,9 @@
}
},
"node_modules/minipass": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz",
- "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==",
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+ "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
"dev": true,
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -3073,11 +3073,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3092,15 +3092,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
@@ -3401,16 +3401,16 @@
"dev": true
},
"node_modules/path-scurry": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz",
- "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==",
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
+ "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
"dev": true,
"dependencies": {
"lru-cache": "^10.2.0",
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
},
"engines": {
- "node": ">=16 || 14 >=14.17"
+ "node": ">=16 || 14 >=14.18"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
diff --git a/examples/nextjs-14-pages-wrap/package.json b/examples/nextjs-14-pages-wrap/package.json
index b5a3c6cb9..d5c1d46e8 100644
--- a/examples/nextjs-14-pages-wrap/package.json
+++ b/examples/nextjs-14-pages-wrap/package.json
@@ -10,7 +10,7 @@
},
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -20,7 +20,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
From 9384f4ebf1bd78dd4a5ef84aa83fac2e24287b3b Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:33:50 +0000
Subject: [PATCH 17/30] deps(example): Bump the dependencies group in
/examples/nextjs-14-app-dir-rl with 2 updates (#937)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/nextjs-14-app-dir-rl with 2 updates: [next](https://github.com/vercel/next.js) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
.../nextjs-14-app-dir-rl/package-lock.json | 124 +++++++++---------
examples/nextjs-14-app-dir-rl/package.json | 4 +-
2 files changed, 64 insertions(+), 64 deletions(-)
diff --git a/examples/nextjs-14-app-dir-rl/package-lock.json b/examples/nextjs-14-app-dir-rl/package-lock.json
index bfb174bcf..56ce04f6c 100644
--- a/examples/nextjs-14-app-dir-rl/package-lock.json
+++ b/examples/nextjs-14-app-dir-rl/package-lock.json
@@ -10,7 +10,7 @@
"dependencies": {
"@arcjet/env": "file:../../env",
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -20,7 +20,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
@@ -295,14 +295,14 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
@@ -355,9 +355,9 @@
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -370,9 +370,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -385,9 +385,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -400,9 +400,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -415,9 +415,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -430,9 +430,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -445,9 +445,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -460,9 +460,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -475,9 +475,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1598,12 +1598,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -2077,9 +2077,9 @@
}
},
"node_modules/foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.0.tgz",
+ "integrity": "sha512-CrWQNaEl1/6WeZoarcM9LHupTo3RpZO2Pdk1vktwzPiQTsJnAKJmm3TACKeG5UZbWDfaH2AbvYxzP96y0MT7fA==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.0",
@@ -3046,9 +3046,9 @@
}
},
"node_modules/minipass": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz",
- "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==",
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+ "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
"dev": true,
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -3095,11 +3095,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3114,15 +3114,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
@@ -3423,16 +3423,16 @@
"dev": true
},
"node_modules/path-scurry": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz",
- "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==",
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
+ "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
"dev": true,
"dependencies": {
"lru-cache": "^10.2.0",
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
},
"engines": {
- "node": ">=16 || 14 >=14.17"
+ "node": ">=16 || 14 >=14.18"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
diff --git a/examples/nextjs-14-app-dir-rl/package.json b/examples/nextjs-14-app-dir-rl/package.json
index 0f1e3b777..2e3afda14 100644
--- a/examples/nextjs-14-app-dir-rl/package.json
+++ b/examples/nextjs-14-app-dir-rl/package.json
@@ -11,7 +11,7 @@
"dependencies": {
"@arcjet/env": "file:../../env",
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -21,7 +21,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
From 8c31888cf348d6c8c4aeb50c95f4e1451d1a732d Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:35:40 +0000
Subject: [PATCH 18/30] deps(example): Bump the dependencies group in
/examples/nextjs-14-decorate with 2 updates (#938)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/nextjs-14-decorate with 2 updates: [next](https://github.com/vercel/next.js) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
examples/nextjs-14-decorate/package-lock.json | 124 +++++++++---------
examples/nextjs-14-decorate/package.json | 4 +-
2 files changed, 64 insertions(+), 64 deletions(-)
diff --git a/examples/nextjs-14-decorate/package-lock.json b/examples/nextjs-14-decorate/package-lock.json
index ace07fbd7..2e5bb4b0e 100644
--- a/examples/nextjs-14-decorate/package-lock.json
+++ b/examples/nextjs-14-decorate/package-lock.json
@@ -10,7 +10,7 @@
"dependencies": {
"@arcjet/decorate": "file:../../decorate",
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -20,7 +20,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
@@ -300,14 +300,14 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
@@ -360,9 +360,9 @@
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -375,9 +375,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -390,9 +390,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -405,9 +405,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -420,9 +420,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -435,9 +435,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -450,9 +450,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -465,9 +465,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -480,9 +480,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1603,12 +1603,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -2082,9 +2082,9 @@
}
},
"node_modules/foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.0.tgz",
+ "integrity": "sha512-CrWQNaEl1/6WeZoarcM9LHupTo3RpZO2Pdk1vktwzPiQTsJnAKJmm3TACKeG5UZbWDfaH2AbvYxzP96y0MT7fA==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.0",
@@ -3051,9 +3051,9 @@
}
},
"node_modules/minipass": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz",
- "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==",
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+ "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
"dev": true,
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -3100,11 +3100,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3119,15 +3119,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
@@ -3428,16 +3428,16 @@
"dev": true
},
"node_modules/path-scurry": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz",
- "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==",
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
+ "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
"dev": true,
"dependencies": {
"lru-cache": "^10.2.0",
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
},
"engines": {
- "node": ">=16 || 14 >=14.17"
+ "node": ">=16 || 14 >=14.18"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
diff --git a/examples/nextjs-14-decorate/package.json b/examples/nextjs-14-decorate/package.json
index 10edea724..0d56a5f5d 100644
--- a/examples/nextjs-14-decorate/package.json
+++ b/examples/nextjs-14-decorate/package.json
@@ -11,7 +11,7 @@
"dependencies": {
"@arcjet/decorate": "file:../../decorate",
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -21,7 +21,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
From 4a1e3c13365a0f6a8317f457ad18e745755abc60 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:45:12 +0000
Subject: [PATCH 19/30] deps(example): Bump next from 14.2.3 to 14.2.4 in
/examples/nextjs-14-authjs-5 in the dependencies group (#940)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/nextjs-14-authjs-5 with 1 update: [next](https://github.com/vercel/next.js).
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=next&package-manager=npm_and_yarn&previous-version=14.2.3&new-version=14.2.4)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
examples/nextjs-14-authjs-5/package-lock.json | 106 +++++++++---------
1 file changed, 53 insertions(+), 53 deletions(-)
diff --git a/examples/nextjs-14-authjs-5/package-lock.json b/examples/nextjs-14-authjs-5/package-lock.json
index 4b14892e6..d900b53f2 100644
--- a/examples/nextjs-14-authjs-5/package-lock.json
+++ b/examples/nextjs-14-authjs-5/package-lock.json
@@ -14,7 +14,7 @@
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.1",
"lucide-react": "^0.394.0",
- "next": "*",
+ "next": "latest",
"next-auth": "beta",
"react": "^18.3.1",
"react-dom": "^18.3.1",
@@ -33,20 +33,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/env": "1.0.0-alpha.13",
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
- "@arcjet/logger": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -210,14 +210,14 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -230,9 +230,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -245,9 +245,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -260,9 +260,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -275,9 +275,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -290,9 +290,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -305,9 +305,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -320,9 +320,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -335,9 +335,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1845,11 +1845,11 @@
}
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -1864,15 +1864,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
From 00d32d1c84dab67d57354de35cd60920771dba20 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 13:46:57 +0000
Subject: [PATCH 20/30] deps(example): Bump the dependencies group in
/examples/nextjs-14-nextauth-4 with 2 updates (#942)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/nextjs-14-nextauth-4 with 2 updates: [next](https://github.com/vercel/next.js) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
.../nextjs-14-nextauth-4/package-lock.json | 104 +++++++++---------
examples/nextjs-14-nextauth-4/package.json | 4 +-
2 files changed, 54 insertions(+), 54 deletions(-)
diff --git a/examples/nextjs-14-nextauth-4/package-lock.json b/examples/nextjs-14-nextauth-4/package-lock.json
index 49cb7963a..a78ce781e 100644
--- a/examples/nextjs-14-nextauth-4/package-lock.json
+++ b/examples/nextjs-14-nextauth-4/package-lock.json
@@ -8,7 +8,7 @@
"version": "0.1.0",
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"next-auth": "^4.24.7",
"react": "^18",
"react-dom": "^18"
@@ -19,7 +19,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
@@ -272,23 +272,23 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -301,9 +301,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -316,9 +316,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -331,9 +331,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -346,9 +346,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -361,9 +361,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -376,9 +376,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -391,9 +391,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -406,9 +406,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1635,12 +1635,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -3170,11 +3170,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3189,15 +3189,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
diff --git a/examples/nextjs-14-nextauth-4/package.json b/examples/nextjs-14-nextauth-4/package.json
index 9faedb1f7..a4afdf764 100644
--- a/examples/nextjs-14-nextauth-4/package.json
+++ b/examples/nextjs-14-nextauth-4/package.json
@@ -9,7 +9,7 @@
},
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"next-auth": "^4.24.7",
"react": "^18",
"react-dom": "^18"
@@ -20,7 +20,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
From 0cb5ed700dc946a89ba89b71427963a794dee271 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 14:07:13 +0000
Subject: [PATCH 21/30] deps(example): Bump the dependencies group in
/examples/nextjs-14-ip-details with 2 updates (#936)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/nextjs-14-ip-details with 2 updates: [next](https://github.com/vercel/next.js) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
.../nextjs-14-ip-details/package-lock.json | 124 +++++++++---------
examples/nextjs-14-ip-details/package.json | 4 +-
2 files changed, 64 insertions(+), 64 deletions(-)
diff --git a/examples/nextjs-14-ip-details/package-lock.json b/examples/nextjs-14-ip-details/package-lock.json
index 43ba0bd65..f9672b007 100644
--- a/examples/nextjs-14-ip-details/package-lock.json
+++ b/examples/nextjs-14-ip-details/package-lock.json
@@ -9,7 +9,7 @@
"version": "0.1.0",
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -19,7 +19,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
@@ -273,14 +273,14 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
@@ -333,9 +333,9 @@
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -348,9 +348,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -363,9 +363,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -378,9 +378,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -393,9 +393,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -408,9 +408,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -423,9 +423,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -438,9 +438,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -453,9 +453,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1576,12 +1576,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -2055,9 +2055,9 @@
}
},
"node_modules/foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.0.tgz",
+ "integrity": "sha512-CrWQNaEl1/6WeZoarcM9LHupTo3RpZO2Pdk1vktwzPiQTsJnAKJmm3TACKeG5UZbWDfaH2AbvYxzP96y0MT7fA==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.0",
@@ -3024,9 +3024,9 @@
}
},
"node_modules/minipass": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz",
- "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==",
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+ "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
"dev": true,
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -3073,11 +3073,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3092,15 +3092,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
@@ -3401,16 +3401,16 @@
"dev": true
},
"node_modules/path-scurry": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz",
- "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==",
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
+ "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
"dev": true,
"dependencies": {
"lru-cache": "^10.2.0",
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
},
"engines": {
- "node": ">=16 || 14 >=14.17"
+ "node": ">=16 || 14 >=14.18"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
diff --git a/examples/nextjs-14-ip-details/package.json b/examples/nextjs-14-ip-details/package.json
index 81247e3fa..ab06f939a 100644
--- a/examples/nextjs-14-ip-details/package.json
+++ b/examples/nextjs-14-ip-details/package.json
@@ -10,7 +10,7 @@
},
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -20,7 +20,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
From 12c541ccccc33efead5058af00a9d0d74ceacd88 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 14:08:44 +0000
Subject: [PATCH 22/30] deps(example): Bump the dependencies group across 1
directory with 3 updates (#960)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 3 updates in the /examples/nextjs-14-clerk-rl directory: [@clerk/nextjs](https://github.com/clerk/javascript/tree/HEAD/packages/nextjs), [next](https://github.com/vercel/next.js) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `@clerk/nextjs` from 5.1.4 to 5.1.5
Release notes
Sourced from @clerk/nextjs
's releases.
@clerk/nextjs
@5
.1.5
Patch Changes
Changelog
Sourced from @clerk/nextjs
's changelog.
5.1.5
Patch Changes
Commits
35f0602
ci(repo): Version packages (#3554)
98cacf6
chore(repo): Align nextjs versions
0497f8b
chore(nextjs): Update dependency next to v14.1.1 [SECURITY] (#3434)
8741003
fix(nextjs): Replace router.refresh() with cookies().delete() (#3518)
e2f1e8f
fix(nextjs): Use nextjs fetcher to identify internal page navigation (#3529)
3422e9b
fix(repo): Missing ESLint rules (#3523)
- See full diff in compare view
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
examples/nextjs-14-clerk-rl/package-lock.json | 140 +++++++++---------
examples/nextjs-14-clerk-rl/package.json | 6 +-
2 files changed, 73 insertions(+), 73 deletions(-)
diff --git a/examples/nextjs-14-clerk-rl/package-lock.json b/examples/nextjs-14-clerk-rl/package-lock.json
index 2ecd6ded2..ead81a365 100644
--- a/examples/nextjs-14-clerk-rl/package-lock.json
+++ b/examples/nextjs-14-clerk-rl/package-lock.json
@@ -9,8 +9,8 @@
"version": "0.1.0",
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "@clerk/nextjs": "^5.1.4",
- "next": "^14.2.2",
+ "@clerk/nextjs": "^5.1.5",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -20,7 +20,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
@@ -84,11 +84,11 @@
}
},
"node_modules/@clerk/backend": {
- "version": "1.2.2",
- "resolved": "https://registry.npmjs.org/@clerk/backend/-/backend-1.2.2.tgz",
- "integrity": "sha512-P007QPL9Ls3bwiBtK3Pat85HcSiL8rhwh/X1wifIEBK6OGF8kez1gOpcvt5/SmoCEecGg8AhH11A2fOIZcwPgA==",
+ "version": "1.2.3",
+ "resolved": "https://registry.npmjs.org/@clerk/backend/-/backend-1.2.3.tgz",
+ "integrity": "sha512-tj812eTTn2ewXMgr4jwFjpqoXZRF2LMw9UBT+Nat0lmXw55sDA5ou2McLZ67e62WNZwbrCUa51MGKSBhrWnZcA==",
"dependencies": {
- "@clerk/shared": "2.2.2",
+ "@clerk/shared": "2.3.0",
"@clerk/types": "4.6.0",
"cookie": "0.5.0",
"snakecase-keys": "5.4.4",
@@ -99,11 +99,11 @@
}
},
"node_modules/@clerk/clerk-react": {
- "version": "5.2.3",
- "resolved": "https://registry.npmjs.org/@clerk/clerk-react/-/clerk-react-5.2.3.tgz",
- "integrity": "sha512-1vd6mLHBJwaBx96ne/4HeI3W/ajt22gDrXuugEwVOe2lMauPQBaJq3jDttrNhErcKjMhamIMELeu8hhifpxNgA==",
+ "version": "5.2.4",
+ "resolved": "https://registry.npmjs.org/@clerk/clerk-react/-/clerk-react-5.2.4.tgz",
+ "integrity": "sha512-TaSjf3pdxUKQIDmwi6JkJDVGwHbs7pTeiwEr2/JksMrQnW6zMIutsEhJfW10dY1hOwJeDoSxGCkHw+7Br2rktw==",
"dependencies": {
- "@clerk/shared": "2.2.2",
+ "@clerk/shared": "2.3.0",
"@clerk/types": "4.6.0",
"tslib": "2.4.1"
},
@@ -116,13 +116,13 @@
}
},
"node_modules/@clerk/nextjs": {
- "version": "5.1.4",
- "resolved": "https://registry.npmjs.org/@clerk/nextjs/-/nextjs-5.1.4.tgz",
- "integrity": "sha512-hi8MGA3nQERinHw9qG95fGzpesuxv11prmKQhxiRMicE+wCB5SoKLtBc2JMXAMNrnZC5rM8V9JV7HDSRFVxTTg==",
+ "version": "5.1.5",
+ "resolved": "https://registry.npmjs.org/@clerk/nextjs/-/nextjs-5.1.5.tgz",
+ "integrity": "sha512-q/4PvWrIt4cO9dwgUyJ/gN/fWbS2GnfKK7j32cn6LBObVqUIiQ+J5Q+lp75q+tzIHyxFJx+MNNTnFif2OrvV6A==",
"dependencies": {
- "@clerk/backend": "1.2.2",
- "@clerk/clerk-react": "5.2.3",
- "@clerk/shared": "2.2.2",
+ "@clerk/backend": "1.2.3",
+ "@clerk/clerk-react": "5.2.4",
+ "@clerk/shared": "2.3.0",
"@clerk/types": "4.6.0",
"crypto-js": "4.2.0",
"path-to-regexp": "6.2.2",
@@ -138,9 +138,9 @@
}
},
"node_modules/@clerk/shared": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/@clerk/shared/-/shared-2.2.2.tgz",
- "integrity": "sha512-ThbAXiK5drCabR2TtXSQVHXW0fNtO/RPfiQUiSrjHFdbJAiEkTbPwGSLvPaY1svw5hZHFHLCF735szIDvNHe1A==",
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@clerk/shared/-/shared-2.3.0.tgz",
+ "integrity": "sha512-V/49MoOrALzpu0BbhYDCcKQYIjrHnhRa7QFho9+4wm94oCJgc9j3N5wxndJwj3Ur/fmIyBnjwMzDAT2nZZj47g==",
"hasInstallScript": true,
"dependencies": {
"@clerk/types": "4.6.0",
@@ -358,23 +358,23 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -387,9 +387,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -402,9 +402,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -417,9 +417,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -432,9 +432,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -447,9 +447,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -462,9 +462,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -477,9 +477,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -492,9 +492,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1796,12 +1796,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -3387,11 +3387,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3406,15 +3406,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
diff --git a/examples/nextjs-14-clerk-rl/package.json b/examples/nextjs-14-clerk-rl/package.json
index 943efc2a2..5bb207fad 100644
--- a/examples/nextjs-14-clerk-rl/package.json
+++ b/examples/nextjs-14-clerk-rl/package.json
@@ -10,8 +10,8 @@
},
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "@clerk/nextjs": "^5.1.4",
- "next": "^14.2.2",
+ "@clerk/nextjs": "^5.1.5",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -21,7 +21,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
From 6b6fe281c7b91c533facf86db2363c8c0d72ae21 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 14:11:15 +0000
Subject: [PATCH 23/30] deps(example): Bump the dependencies group in
/examples/nextjs-14-app-dir-validate-email with 2 updates (#944)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group in /examples/nextjs-14-app-dir-validate-email with 2 updates: [next](https://github.com/vercel/next.js) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
.../package-lock.json | 140 +++++++++---------
.../package.json | 4 +-
2 files changed, 73 insertions(+), 71 deletions(-)
diff --git a/examples/nextjs-14-app-dir-validate-email/package-lock.json b/examples/nextjs-14-app-dir-validate-email/package-lock.json
index 1600e586b..dfcabc473 100644
--- a/examples/nextjs-14-app-dir-validate-email/package-lock.json
+++ b/examples/nextjs-14-app-dir-validate-email/package-lock.json
@@ -9,7 +9,7 @@
"version": "0.1.0",
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -19,7 +19,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
@@ -27,18 +27,20 @@
},
"../../arcjet-next": {
"name": "@arcjet/next",
- "version": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
"license": "Apache-2.0",
"dependencies": {
- "@arcjet/headers": "1.0.0-alpha.13",
- "@arcjet/ip": "1.0.0-alpha.13",
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"devDependencies": {
- "@arcjet/eslint-config": "1.0.0-alpha.13",
- "@arcjet/rollup-config": "1.0.0-alpha.13",
- "@arcjet/tsconfig": "1.0.0-alpha.13",
+ "@arcjet/eslint-config": "1.0.0-alpha.14",
+ "@arcjet/rollup-config": "1.0.0-alpha.14",
+ "@arcjet/tsconfig": "1.0.0-alpha.14",
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "18.18.0",
@@ -271,14 +273,14 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
@@ -331,9 +333,9 @@
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -346,9 +348,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -361,9 +363,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -376,9 +378,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -391,9 +393,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -406,9 +408,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -421,9 +423,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -436,9 +438,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -451,9 +453,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1574,12 +1576,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -2053,9 +2055,9 @@
}
},
"node_modules/foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.2.0.tgz",
+ "integrity": "sha512-CrWQNaEl1/6WeZoarcM9LHupTo3RpZO2Pdk1vktwzPiQTsJnAKJmm3TACKeG5UZbWDfaH2AbvYxzP96y0MT7fA==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.0",
@@ -3022,9 +3024,9 @@
}
},
"node_modules/minipass": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.1.tgz",
- "integrity": "sha512-UZ7eQ+h8ywIRAW1hIEl2AqdwzJucU/Kp59+8kkZeSvafXhZjul247BvIJjEVFVeON6d7lM46XX1HXCduKAS8VA==",
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz",
+ "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==",
"dev": true,
"engines": {
"node": ">=16 || 14 >=14.17"
@@ -3071,11 +3073,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3090,15 +3092,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
@@ -3399,16 +3401,16 @@
"dev": true
},
"node_modules/path-scurry": {
- "version": "1.11.0",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.0.tgz",
- "integrity": "sha512-LNHTaVkzaYaLGlO+0u3rQTz7QrHTFOuKyba9JMTQutkmtNew8dw8wOD7mTU/5fCPZzCWpfW0XnQKzY61P0aTaw==",
+ "version": "1.11.1",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz",
+ "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==",
"dev": true,
"dependencies": {
"lru-cache": "^10.2.0",
"minipass": "^5.0.0 || ^6.0.2 || ^7.0.0"
},
"engines": {
- "node": ">=16 || 14 >=14.17"
+ "node": ">=16 || 14 >=14.18"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
diff --git a/examples/nextjs-14-app-dir-validate-email/package.json b/examples/nextjs-14-app-dir-validate-email/package.json
index b488f2ef0..2ef18f2c6 100644
--- a/examples/nextjs-14-app-dir-validate-email/package.json
+++ b/examples/nextjs-14-app-dir-validate-email/package.json
@@ -10,7 +10,7 @@
},
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"react": "^18",
"react-dom": "^18"
},
@@ -20,7 +20,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
From 05c8aed7a2e56514d672485a5a117137e6026815 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 14:11:50 +0000
Subject: [PATCH 24/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-app-dir-validate-email (#961)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
[//]: # (dependabot-start)
⚠️ **Dependabot is rebasing this PR** ⚠️
Rebasing might not happen immediately, so don't worry if this takes some time.
Note: if you make any changes to this PR yourself, they will take precedence over the rebase.
---
[//]: # (dependabot-end)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
.../package-lock.json | 14 +++++++-------
1 file changed, 7 insertions(+), 7 deletions(-)
diff --git a/examples/nextjs-14-app-dir-validate-email/package-lock.json b/examples/nextjs-14-app-dir-validate-email/package-lock.json
index dfcabc473..20be63826 100644
--- a/examples/nextjs-14-app-dir-validate-email/package-lock.json
+++ b/examples/nextjs-14-app-dir-validate-email/package-lock.json
@@ -1018,12 +1018,12 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dev": true,
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -1998,9 +1998,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dev": true,
"dependencies": {
"to-regex-range": "^5.0.1"
From 9af5c166620b969e759bf01503321c74063fed44 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 14:40:28 +0000
Subject: [PATCH 25/30] deps(example): Bump braces from 3.0.2 to 3.0.3 in
/examples/nextjs-14-authjs-5 (#959)
Bumps [braces](https://github.com/micromatch/braces) from 3.0.2 to 3.0.3.
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=braces&package-manager=npm_and_yarn&previous-version=3.0.2&new-version=3.0.3)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/arcjet/arcjet-js/network/alerts).
---
examples/nextjs-14-authjs-5/package-lock.json | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)
diff --git a/examples/nextjs-14-authjs-5/package-lock.json b/examples/nextjs-14-authjs-5/package-lock.json
index d900b53f2..1b7aa7266 100644
--- a/examples/nextjs-14-authjs-5/package-lock.json
+++ b/examples/nextjs-14-authjs-5/package-lock.json
@@ -14,7 +14,7 @@
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.1",
"lucide-react": "^0.394.0",
- "next": "latest",
+ "next": "*",
"next-auth": "beta",
"react": "^18.3.1",
"react-dom": "^18.3.1",
@@ -1229,11 +1229,11 @@
}
},
"node_modules/braces": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz",
- "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz",
+ "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==",
"dependencies": {
- "fill-range": "^7.0.1"
+ "fill-range": "^7.1.1"
},
"engines": {
"node": ">=8"
@@ -1512,9 +1512,9 @@
}
},
"node_modules/fill-range": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz",
- "integrity": "sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz",
+ "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==",
"dependencies": {
"to-regex-range": "^5.0.1"
},
From 8e84ab616adf62975ebf3d565cb44345dff5773d Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 14:41:05 +0000
Subject: [PATCH 26/30] deps(example): Bump the dependencies group across 1
directory with 3 updates (#943)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 3 updates in the /examples/nextjs-14-react-hook-form directory: [@arcjet/next](https://github.com/arcjet/arcjet-js/tree/HEAD/arcjet-next), [next](https://github.com/vercel/next.js) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `@arcjet/next` from 1.0.0-alpha.13 to 1.0.0-alpha.14
Release notes
Sourced from @arcjet/next
's releases.
v1.0.0-alpha.14
⚠ BREAKING CHANGES
- Move all environment lookup into separate package (#897)
- ip: Allow platform to be specified when looking up IP (#896)
- Add fallback IP in each adapter (#895)
- analyze: Leverage conditional exports to load Wasm appropriately (#887)
- logger: Align logger with Pino API (#858)
- Create runtime package and remove from SDK (#871)
- decorate: Use console to log instead of Arcjet logger (#865)
- logger: Replace nodejs util import with our sprintf library (#857)
- Allow ArcjetContext extension via new argument to core
protect()
(#841)
- Separate
@arcjet/headers
package from core (#824)
- ip: Rework priority of IP detection (#799)
🚀 New Features
- Add fallback IP in each adapter (#895) (0f23cff), closes #51 #885
- Allow ArcjetContext extension via new argument to core
protect()
(#841) (96bbe94)
- Create runtime package and remove from SDK (#871) (4e9e216)
- Create sprintf package to replace util.format (#856) (160a16e)
- ip: Allow platform to be specified when looking up IP (#896) (c9f54bb)
- logger: Align logger with Pino API (#858) (1806b94), closes #822 #855
- Move all environment lookup into separate package (#897) (a5bb8ca)
- Separate
@arcjet/headers
package from core (#824) (c8364f4)
🪲 Bug Fixes
- analyze: Disable cache during base64 decode (#838) (72fb961)
- ip: Rework priority of IP detection (#799) (1df6291)
📦 Dependencies
- Bump
@bufbuild/protobuf
from 1.9.0 to 1.10.0 (#847) (de8266f)
- Bump
@rollup/plugin-replace
from 5.0.5 to 5.0.7 (#920) (176170b)
- Bump
@typescript-eslint/eslint-plugin
from 7.12.0 to 7.13.0 (#918) (bbd72a5)
- Bump
@typescript-eslint/eslint-plugin
from 7.9.0 to 7.12.0 (#862) (51330b7)
- Bump
@typescript-eslint/parser
from 7.12.0 to 7.13.0 (#917) (cfe0c14)
- Bump
@typescript-eslint/parser
from 7.9.0 to 7.12.0 (#861) (eaf8c26)
- Bump eslint-config-turbo from 1.13.3 to 2.0.3 (#893) (97525af)
- dev: Bump
@rollup/wasm-node
from 4.17.2 to 4.18.0 (#803) (e6321af)
- dev: Bump bun-types from 1.1.8 to 1.1.12 (#853) (a42fbd3)
- example: Bump
@types/bun
from 1.1.2 to 1.1.3 in /examples/bun-hono-rl in the dependencies group (#804) (ecada7f)
- example: Bump
@types/bun
from 1.1.2 to 1.1.3 in /examples/bun-rl in the dependencies group (#800) (de15757)
- example: Bump ai from 3.1.30 to 3.1.31 in /examples/nextjs-14-openai in the dependencies group (#915) (84510a8)
... (truncated)
Changelog
Sourced from @arcjet/next
's changelog.
⚠ BREAKING CHANGES
- Move all environment lookup into separate package (#897)
- ip: Allow platform to be specified when looking up IP (#896)
- Add fallback IP in each adapter (#895)
- Create runtime package and remove from SDK (#871)
- Allow ArcjetContext extension via new argument to core
protect()
(#841)
- Separate
@arcjet/headers
package from core (#824)
🚀 New Features
- Add fallback IP in each adapter (#895) (0f23cff), closes #51 #885
- Allow ArcjetContext extension via new argument to core
protect()
(#841) (96bbe94)
- Create runtime package and remove from SDK (#871) (4e9e216)
- ip: Allow platform to be specified when looking up IP (#896) (c9f54bb)
- Move all environment lookup into separate package (#897) (a5bb8ca)
- Separate
@arcjet/headers
package from core (#824) (c8364f4)
📦 Dependencies
- dev: Bump
@rollup/wasm-node
from 4.17.2 to 4.18.0 (#803) (e6321af)
📝 Documentation
- Add quick start links & update Bun example (#870) (ee3079f)
- Remove wording that implies is Shield is added by default (#796) (a85d18c)
🧹 Miscellaneous Chores
Dependencies
- The following workspace dependencies were updated
- dependencies
@arcjet/env
bumped from 1.0.0-alpha.13 to 1.0.0-alpha.14
@arcjet/headers
bumped from 1.0.0-alpha.13 to 1.0.0-alpha.14
@arcjet/ip
bumped from 1.0.0-alpha.13 to 1.0.0-alpha.14
@arcjet/logger
bumped from 1.0.0-alpha.13 to 1.0.0-alpha.14
- arcjet bumped from 1.0.0-alpha.13 to 1.0.0-alpha.14
- devDependencies
@arcjet/eslint-config
bumped from 1.0.0-alpha.13 to 1.0.0-alpha.14
@arcjet/rollup-config
bumped from 1.0.0-alpha.13 to 1.0.0-alpha.14
... (truncated)
Commits
9fe6927
chore: Release 1.0.0-alpha.14 (#797)
a5bb8ca
feat!: Move all environment lookup into separate package (#897)
c9f54bb
feat(ip)!: Allow platform to be specified when looking up IP (#896)
0f23cff
feat!: Add fallback IP in each adapter (#895)
ee3079f
docs: Add quick start links & update Bun example (#870)
4e9e216
feat!: Create runtime package and remove from SDK (#871)
96bbe94
feat!: Allow ArcjetContext extension via new argument to core protect()
(#841)
e6321af
deps(dev): Bump @rollup/wasm-node
from 4.17.2 to 4.18.0 (#803)
c8364f4
feat!: Separate @arcjet/headers
package from core (#824)
8b1c811
chore(docs): Add live example app to READMEs (#823)
- Additional commits viewable in compare view
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
.../package-lock.json | 210 +++++++++++-------
.../nextjs-14-react-hook-form/package.json | 4 +-
2 files changed, 127 insertions(+), 87 deletions(-)
diff --git a/examples/nextjs-14-react-hook-form/package-lock.json b/examples/nextjs-14-react-hook-form/package-lock.json
index 31ebe5b92..8d26372bf 100644
--- a/examples/nextjs-14-react-hook-form/package-lock.json
+++ b/examples/nextjs-14-react-hook-form/package-lock.json
@@ -15,7 +15,7 @@
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.1",
"lucide-react": "0.394.0",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"next-themes": "^0.3.0",
"react": "^18",
"react-dom": "^18",
@@ -31,7 +31,7 @@
"@typescript-eslint/parser": "^7.13.0",
"autoprefixer": "^10.4.14",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-react": "^7.34.2",
"eslint-plugin-tailwindcss": "^3.17.3",
@@ -61,48 +61,70 @@
}
},
"node_modules/@arcjet/analyze": {
- "version": "1.0.0-alpha.13",
- "resolved": "https://registry.npmjs.org/@arcjet/analyze/-/analyze-1.0.0-alpha.13.tgz",
- "integrity": "sha512-k1YhBlJfib8rvU5iQhvNqQgkf7Ty7HqMVt8SwpYhXWG5ziBYs8WdOuTZvZp04ZhY7iPx3PVZOloeZY6/Yx/kpQ==",
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/analyze/-/analyze-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-F8ANTxrfmfCglAL9bN54bJVOf0mMYqBfoIT3uz7ocSuf6d1nVXAj4qPMajVInams8ngnulSCNv/xe83kdsBAuQ==",
"dependencies": {
- "@arcjet/logger": "1.0.0-alpha.13"
+ "@arcjet/protocol": "1.0.0-alpha.14"
},
"engines": {
"node": ">=18"
}
},
"node_modules/@arcjet/duration": {
- "version": "1.0.0-alpha.13",
- "resolved": "https://registry.npmjs.org/@arcjet/duration/-/duration-1.0.0-alpha.13.tgz",
- "integrity": "sha512-347HXBupvpwYvSyBZ5B9MMuRw1Ch59MpXbvMrefNSpqYIwy+ETvOQaK2fh9KoVmLVR9AKj+dGH7Miw02Tu3f0Q==",
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/duration/-/duration-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-OIUv1s7+Z9Yn94v/fmypvXseSHZm8xRqbPMDUZHZeKXbE13euH78hfqe34Zz8w7kv+/If/XnO0kUUNQPo+NKlQ==",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@arcjet/env": {
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/env/-/env-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-Y12FjoU2iee6wtv/KPL4vS9PItKpCjVbvR5IrU7GhmCgF52+GR2oFFqxJhhPaoRNhJViWOGly+rZxikc5N7Jrw==",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@arcjet/headers": {
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/headers/-/headers-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-xNVk7lQp1vW9QsL9evEreLS3grs6J0k5YmnFlOOj4H7mmlcKeIdceS7F1l23hfy2+dPzdC6Cew1gzAcQFKYu0A==",
"engines": {
"node": ">=18"
}
},
"node_modules/@arcjet/ip": {
- "version": "1.0.0-alpha.13",
- "resolved": "https://registry.npmjs.org/@arcjet/ip/-/ip-1.0.0-alpha.13.tgz",
- "integrity": "sha512-h+ZANLBCpwcQ/ugcxu6cOtgZBRu0rtILWcB1VnRzOPO4eGU61Km2cGVwHccmmi0O+foyt4q6TF5/KNNeQqBebQ==",
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/ip/-/ip-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-vK0CjfHeu+OYqGRRhCnR4Sy+A8YWYHrIEmALs7XWZmaOmsBFr1ETmPhwfJ0ib9reIBE45N499lVjlczXDHJxfw==",
"engines": {
"node": ">=18"
}
},
"node_modules/@arcjet/logger": {
- "version": "1.0.0-alpha.13",
- "resolved": "https://registry.npmjs.org/@arcjet/logger/-/logger-1.0.0-alpha.13.tgz",
- "integrity": "sha512-QyRcbdbQ4DUAvUFhpq/juRqKJZR3u52ptnr9Rmn8R0L5CLpfua3zCHHF6HiB8Pq3Pe/V+WjFwtu44nUXSv+Yeg==",
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/logger/-/logger-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-z3vNfhzkOVoCZq+t6nQ0YipB5AFqfS9pdMzDiW43pduBHIQv8DDJBNpAo1gq5rU0FvPyQujA2+lMM0M+PfZyoQ==",
+ "dependencies": {
+ "@arcjet/sprintf": "1.0.0-alpha.14"
+ },
"engines": {
"node": ">=18"
}
},
"node_modules/@arcjet/next": {
- "version": "1.0.0-alpha.13",
- "resolved": "https://registry.npmjs.org/@arcjet/next/-/next-1.0.0-alpha.13.tgz",
- "integrity": "sha512-94yVhsF0rfaWa4OM6wcJxdXucGxCOpjlxTuXFYhGjjtUfDoI2O+aeVEmqyZC8fMh6TbR7NqVHPSY1NYmAs8gZw==",
- "dependencies": {
- "@arcjet/ip": "1.0.0-alpha.13",
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/next/-/next-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-0/f3mADcH6A06kY1NJqRNEPjGzxZw/0DRyJsXrzRsGSLen8+ArywaQwTUoGvwGRxsXaZkFBDEkh72+UcH4OR6w==",
+ "dependencies": {
+ "@arcjet/env": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/ip": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
- "arcjet": "1.0.0-alpha.13"
+ "arcjet": "1.0.0-alpha.14"
},
"engines": {
"node": ">=18"
@@ -112,11 +134,11 @@
}
},
"node_modules/@arcjet/protocol": {
- "version": "1.0.0-alpha.13",
- "resolved": "https://registry.npmjs.org/@arcjet/protocol/-/protocol-1.0.0-alpha.13.tgz",
- "integrity": "sha512-nAb+xrgZDHbyS0Pl1j6UtAlV1Pi1eZ1sR1JDOYWR98Oshx+Iyn0I9Er7Co2hMdBigUjf4NZ5Id90LfVD0brW6Q==",
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/protocol/-/protocol-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-YKZOquJ5W+chro3ps/eBx9oFkr/ocdtk+PWRYUIYfEI+IYlqsr7EVQaWr9it8WPslp+S9boWevJh7uo3YiqJTQ==",
"dependencies": {
- "@bufbuild/protobuf": "1.9.0",
+ "@bufbuild/protobuf": "1.10.0",
"@connectrpc/connect": "1.4.0",
"typeid-js": "0.7.0"
},
@@ -124,6 +146,22 @@
"node": ">=18"
}
},
+ "node_modules/@arcjet/runtime": {
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/runtime/-/runtime-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-4azbCH0HJP4cu/Es762J2pywQcTnXfJ9RLjKEACR4WaEQMeYvsGkU+C7N1CfafPXIcATb+mPcypU6vqoxhooTA==",
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@arcjet/sprintf": {
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/@arcjet/sprintf/-/sprintf-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-jFa1ycu53ZXu+tsNLmkPO1w7nwPvGdR3HFD8pscaujbNet94jQhgeZJI4jlBl82/foDd4vhCKByhKes9WK8BlQ==",
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@babel/runtime": {
"version": "7.24.4",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.4.tgz",
@@ -136,9 +174,9 @@
}
},
"node_modules/@bufbuild/protobuf": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-1.9.0.tgz",
- "integrity": "sha512-W7gp8Q/v1NlCZLsv8pQ3Y0uCu/SHgXOVFK+eUluUKWXmsb6VHkpNx0apdOWWcDbB9sJoKeP8uPrjmehJz6xETQ=="
+ "version": "1.10.0",
+ "resolved": "https://registry.npmjs.org/@bufbuild/protobuf/-/protobuf-1.10.0.tgz",
+ "integrity": "sha512-QDdVFLoN93Zjg36NoQPZfsVH9tZew7wKDKyV5qRdj8ntT4wQCOradQjRaTdwMhWUYsgKsvCINKKm87FdEk96Ag=="
},
"node_modules/@connectrpc/connect": {
"version": "1.4.0",
@@ -339,23 +377,23 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -368,9 +406,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -383,9 +421,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -398,9 +436,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -413,9 +451,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -428,9 +466,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -443,9 +481,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -458,9 +496,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -473,9 +511,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -879,14 +917,16 @@
}
},
"node_modules/arcjet": {
- "version": "1.0.0-alpha.13",
- "resolved": "https://registry.npmjs.org/arcjet/-/arcjet-1.0.0-alpha.13.tgz",
- "integrity": "sha512-GRsUziHAs7YrrmPUCOYB5EY9ZDRMLH81bDC/zQX3canIlfRs069E8PmQa39hVIbrHEMck6jhXWdzqTp561ppDw==",
+ "version": "1.0.0-alpha.14",
+ "resolved": "https://registry.npmjs.org/arcjet/-/arcjet-1.0.0-alpha.14.tgz",
+ "integrity": "sha512-/fmhP0TiqMXnZmnRFDXm8DyiBVr120ekFmr/m87jAgFwHRs+d7jNyuLsI2HEJ+F086OPZ8y2c9BoAyRJ0ktZLw==",
"dependencies": {
- "@arcjet/analyze": "1.0.0-alpha.13",
- "@arcjet/duration": "1.0.0-alpha.13",
- "@arcjet/logger": "1.0.0-alpha.13",
- "@arcjet/protocol": "1.0.0-alpha.13"
+ "@arcjet/analyze": "1.0.0-alpha.14",
+ "@arcjet/duration": "1.0.0-alpha.14",
+ "@arcjet/headers": "1.0.0-alpha.14",
+ "@arcjet/logger": "1.0.0-alpha.14",
+ "@arcjet/protocol": "1.0.0-alpha.14",
+ "@arcjet/runtime": "1.0.0-alpha.14"
},
"engines": {
"node": ">=18"
@@ -1854,12 +1894,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -3548,11 +3588,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3567,15 +3607,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
diff --git a/examples/nextjs-14-react-hook-form/package.json b/examples/nextjs-14-react-hook-form/package.json
index 712f6793b..210cbbc20 100644
--- a/examples/nextjs-14-react-hook-form/package.json
+++ b/examples/nextjs-14-react-hook-form/package.json
@@ -16,7 +16,7 @@
"class-variance-authority": "^0.7.0",
"clsx": "^2.1.1",
"lucide-react": "0.394.0",
- "next": "^14.2.3",
+ "next": "^14.2.4",
"next-themes": "^0.3.0",
"react": "^18",
"react-dom": "^18",
@@ -32,7 +32,7 @@
"@typescript-eslint/parser": "^7.13.0",
"autoprefixer": "^10.4.14",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-react": "^7.34.2",
"eslint-plugin-tailwindcss": "^3.17.3",
From bbf996d6d2134fecee25eb218e9534b0550691fd Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 14:41:26 +0000
Subject: [PATCH 27/30] deps(dev): Bump bun-types from 1.1.12 to 1.1.13 (#947)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps [bun-types](https://github.com/oven-sh/bun/tree/HEAD/packages/bun-types) from 1.1.12 to 1.1.13.
Release notes
Sourced from bun-types's releases.
Bun v1.1.13
To install Bun v1.1.13:
curl -fsSL https://bun.sh/install | bash
# or you can use npm
# npm install -g bun
Windows:
powershell -c "irm bun.sh/install.ps1|iex"
To upgrade to Bun v1.1.13:
bun upgrade
Thanks to 11 contributors!
Commits
[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=bun-types&package-manager=npm_and_yarn&previous-version=1.1.12&new-version=1.1.13)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
---
arcjet-bun/package.json | 2 +-
package-lock.json | 8 ++++----
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/arcjet-bun/package.json b/arcjet-bun/package.json
index 2364cb09d..3c993ae15 100644
--- a/arcjet-bun/package.json
+++ b/arcjet-bun/package.json
@@ -52,7 +52,7 @@
"@jest/globals": "29.7.0",
"@types/node": "20.12.12",
"@rollup/wasm-node": "4.18.0",
- "bun-types": "1.1.12",
+ "bun-types": "1.1.13",
"jest": "29.7.0",
"typescript": "5.4.5"
},
diff --git a/package-lock.json b/package-lock.json
index d9aba786b..479cc0b0b 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -81,7 +81,7 @@
"@jest/globals": "29.7.0",
"@rollup/wasm-node": "4.18.0",
"@types/node": "20.12.12",
- "bun-types": "1.1.12",
+ "bun-types": "1.1.13",
"jest": "29.7.0",
"typescript": "5.4.5"
}
@@ -2750,9 +2750,9 @@
"dev": true
},
"node_modules/bun-types": {
- "version": "1.1.12",
- "resolved": "https://registry.npmjs.org/bun-types/-/bun-types-1.1.12.tgz",
- "integrity": "sha512-DIM2C9qCECwhck9nLsCDeTv943VmGMCkwX3KljjprSRDXaK2CSiUDVGbUit80Er38ukgxuESJgYPAys4FsNCdg==",
+ "version": "1.1.13",
+ "resolved": "https://registry.npmjs.org/bun-types/-/bun-types-1.1.13.tgz",
+ "integrity": "sha512-G/TqF0SsMQGLr4g7K3B2BK8BrPEA1EqCNwxZbyRdj5M4t54zvwyaqvRJOW34kuPqc2IvNNalRU3swc8B4oc4FA==",
"dev": true,
"dependencies": {
"@types/node": "~20.12.8",
From 71fcc860431d80f85b856f7b397c5c429e5a49b9 Mon Sep 17 00:00:00 2001
From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com>
Date: Wed, 12 Jun 2024 14:43:47 +0000
Subject: [PATCH 28/30] deps(example): Bump the dependencies group across 1
directory with 4 updates (#946)
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Bumps the dependencies group with 4 updates in the /examples/nextjs-14-openai directory: [ai](https://github.com/vercel/ai), [next](https://github.com/vercel/next.js), [openai](https://github.com/openai/openai-node) and [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next).
Updates `ai` from 3.1.31 to 3.1.32
Release notes
Sourced from ai's releases.
ai@3.1.32
Patch Changes
- 3cabf078: fix(ai/rsc): Refactor streamable UI internal implementation
Commits
Updates `next` from 14.2.3 to 14.2.4
Release notes
Sourced from next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
3078441
v14.2.4
0538a0d
[not a backport] fix lint errors
2807fb4
fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
efb476e
Add timeout/retry handling for fetch cache (#66652)
c16a3f9
Use addDependency to track metadata route file changes (#66714)
942e45a
Fix inconsistency with 404 getStaticProps cache-control (#66674)
9728a35
Prevent append of trailing slash in cases where path ends with a file extensi...
44661c2
ensure router cache updates reference the latest cache values (#66681)
f7ec039
prevent duplicate RSC fetch when action redirects (#66620)
dd6ab93
Fix loading navigation with metadata and prefetch (#66447)
- Additional commits viewable in compare view
Updates `openai` from 4.49.1 to 4.50.0
Release notes
Sourced from openai's releases.
v4.50.0
4.50.0 (2024-06-10)
Full Changelog: v4.49.1...v4.50.0
Features
- support
application/octet-stream
request bodies (#892) (51661c8)
Changelog
Sourced from openai's changelog.
4.50.0 (2024-06-10)
Full Changelog: v4.49.1...v4.50.0
Features
- support
application/octet-stream
request bodies (#892) (51661c8)
Commits
Updates `eslint-config-next` from 14.2.3 to 14.2.4
Release notes
Sourced from eslint-config-next's releases.
v14.2.4
[!NOTE]
This release is backporting bug fixes. It does not include all pending features/changes on canary.
Core Changes
- fix: ensure route handlers properly track dynamic access (#66446)
- fix NextRequest proxy in edge runtime (#66551)
- Fix next/dynamic with babel and src dir (#65177)
- Use vercel deployment url for metadataBase fallbacks (#65089)
- fix(next/image): detect react@19 for fetchPriority prop (#65235)
- Fix loading navigation with metadata and prefetch (#66447)
- prevent duplicate RSC fetch when action redirects (#66620)
- ensure router cache updates reference the latest cache values (#66681)
- Prevent append of trailing slash in cases where path ends with a file extension (#66636)
- Fix inconsistency with 404 getStaticProps cache-control (#66674)
- Use addDependency to track metadata route file changes (#66714)
- Add timeout/retry handling for fetch cache (#66652)
- fix: app-router prefetch crash when an invalid URL is passed to Link (#66755)
Credits
Huge thanks to @ztanner
, @ijjk
, @wbinnssmith
, @huozhi
, and @lubieowoce
for helping!
Commits
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.
[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)
---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency
- `@dependabot ignore major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)
- `@dependabot ignore minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)
- `@dependabot ignore ` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)
- `@dependabot unignore ` will remove all of the ignore conditions of the specified dependency
- `@dependabot unignore ` will remove the ignore condition of the specified dependency and ignore conditions
---
examples/nextjs-14-openai/package-lock.json | 120 ++++++++++----------
examples/nextjs-14-openai/package.json | 8 +-
2 files changed, 64 insertions(+), 64 deletions(-)
diff --git a/examples/nextjs-14-openai/package-lock.json b/examples/nextjs-14-openai/package-lock.json
index 800e008f7..cc971f9ea 100644
--- a/examples/nextjs-14-openai/package-lock.json
+++ b/examples/nextjs-14-openai/package-lock.json
@@ -9,9 +9,9 @@
"version": "0.1.0",
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "ai": "^3.1.31",
- "next": "^14.2.3",
- "openai": "^4.49.1",
+ "ai": "^3.1.32",
+ "next": "^14.2.4",
+ "openai": "^4.50.0",
"openai-chat-tokens": "^0.2.8",
"react": "^18",
"react-dom": "^18"
@@ -22,7 +22,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
@@ -423,14 +423,14 @@
}
},
"node_modules/@next/env": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.3.tgz",
- "integrity": "sha512-W7fd7IbkfmeeY2gXrzJYDx8D2lWKbVoTIj1o1ScPHNzvp30s1AuoEFSdr39bC5sjxJaxTtq3OTCZboNp0lNWHA=="
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-14.2.4.tgz",
+ "integrity": "sha512-3EtkY5VDkuV2+lNmKlbkibIJxcO4oIHEhBWne6PaAp+76J9KoSsGvNikp6ivzAT8dhhBMYrm6op2pS1ApG0Hzg=="
},
"node_modules/@next/eslint-plugin-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.3.tgz",
- "integrity": "sha512-L3oDricIIjgj1AVnRdRor21gI7mShlSwU/1ZGHmqM3LzHhXXhdkrfeNY5zif25Bi5Dd7fiJHsbhoZCHfXYvlAw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/eslint-plugin-next/-/eslint-plugin-next-14.2.4.tgz",
+ "integrity": "sha512-svSFxW9f3xDaZA3idQmlFw7SusOuWTpDTAeBlO3AEPDltrraV+lqs7mAc6A27YdnpQVVIA3sODqUAAHdWhVWsA==",
"dev": true,
"dependencies": {
"glob": "10.3.10"
@@ -483,9 +483,9 @@
}
},
"node_modules/@next/swc-darwin-arm64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.3.tgz",
- "integrity": "sha512-3pEYo/RaGqPP0YzwnlmPN2puaF2WMLM3apt5jLW2fFdXD9+pqcoTzRk+iZsf8ta7+quAe4Q6Ms0nR0SFGFdS1A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-arm64/-/swc-darwin-arm64-14.2.4.tgz",
+ "integrity": "sha512-AH3mO4JlFUqsYcwFUHb1wAKlebHU/Hv2u2kb1pAuRanDZ7pD/A/KPD98RHZmwsJpdHQwfEc/06mgpSzwrJYnNg==",
"cpu": [
"arm64"
],
@@ -498,9 +498,9 @@
}
},
"node_modules/@next/swc-darwin-x64": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.3.tgz",
- "integrity": "sha512-6adp7waE6P1TYFSXpY366xwsOnEXM+y1kgRpjSRVI2CBDOcbRjsJ67Z6EgKIqWIue52d2q/Mx8g9MszARj8IEA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-darwin-x64/-/swc-darwin-x64-14.2.4.tgz",
+ "integrity": "sha512-QVadW73sWIO6E2VroyUjuAxhWLZWEpiFqHdZdoQ/AMpN9YWGuHV8t2rChr0ahy+irKX5mlDU7OY68k3n4tAZTg==",
"cpu": [
"x64"
],
@@ -513,9 +513,9 @@
}
},
"node_modules/@next/swc-linux-arm64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.3.tgz",
- "integrity": "sha512-cuzCE/1G0ZSnTAHJPUT1rPgQx1w5tzSX7POXSLaS7w2nIUJUD+e25QoXD/hMfxbsT9rslEXugWypJMILBj/QsA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-gnu/-/swc-linux-arm64-gnu-14.2.4.tgz",
+ "integrity": "sha512-KT6GUrb3oyCfcfJ+WliXuJnD6pCpZiosx2X3k66HLR+DMoilRb76LpWPGb4tZprawTtcnyrv75ElD6VncVamUQ==",
"cpu": [
"arm64"
],
@@ -528,9 +528,9 @@
}
},
"node_modules/@next/swc-linux-arm64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.3.tgz",
- "integrity": "sha512-0D4/oMM2Y9Ta3nGuCcQN8jjJjmDPYpHX9OJzqk42NZGJocU2MqhBq5tWkJrUQOQY9N+In9xOdymzapM09GeiZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-arm64-musl/-/swc-linux-arm64-musl-14.2.4.tgz",
+ "integrity": "sha512-Alv8/XGSs/ytwQcbCHwze1HmiIkIVhDHYLjczSVrf0Wi2MvKn/blt7+S6FJitj3yTlMwMxII1gIJ9WepI4aZ/A==",
"cpu": [
"arm64"
],
@@ -543,9 +543,9 @@
}
},
"node_modules/@next/swc-linux-x64-gnu": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.3.tgz",
- "integrity": "sha512-ENPiNnBNDInBLyUU5ii8PMQh+4XLr4pG51tOp6aJ9xqFQ2iRI6IH0Ds2yJkAzNV1CfyagcyzPfROMViS2wOZ9w==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-gnu/-/swc-linux-x64-gnu-14.2.4.tgz",
+ "integrity": "sha512-ze0ShQDBPCqxLImzw4sCdfnB3lRmN3qGMB2GWDRlq5Wqy4G36pxtNOo2usu/Nm9+V2Rh/QQnrRc2l94kYFXO6Q==",
"cpu": [
"x64"
],
@@ -558,9 +558,9 @@
}
},
"node_modules/@next/swc-linux-x64-musl": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.3.tgz",
- "integrity": "sha512-BTAbq0LnCbF5MtoM7I/9UeUu/8ZBY0i8SFjUMCbPDOLv+un67e2JgyN4pmgfXBwy/I+RHu8q+k+MCkDN6P9ViQ==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-linux-x64-musl/-/swc-linux-x64-musl-14.2.4.tgz",
+ "integrity": "sha512-8dwC0UJoc6fC7PX70csdaznVMNr16hQrTDAMPvLPloazlcaWfdPogq+UpZX6Drqb1OBlwowz8iG7WR0Tzk/diQ==",
"cpu": [
"x64"
],
@@ -573,9 +573,9 @@
}
},
"node_modules/@next/swc-win32-arm64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.3.tgz",
- "integrity": "sha512-AEHIw/dhAMLNFJFJIJIyOFDzrzI5bAjI9J26gbO5xhAKHYTZ9Or04BesFPXiAYXDNdrwTP2dQceYA4dL1geu8A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-arm64-msvc/-/swc-win32-arm64-msvc-14.2.4.tgz",
+ "integrity": "sha512-jxyg67NbEWkDyvM+O8UDbPAyYRZqGLQDTPwvrBBeOSyVWW/jFQkQKQ70JDqDSYg1ZDdl+E3nkbFbq8xM8E9x8A==",
"cpu": [
"arm64"
],
@@ -588,9 +588,9 @@
}
},
"node_modules/@next/swc-win32-ia32-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.3.tgz",
- "integrity": "sha512-vga40n1q6aYb0CLrM+eEmisfKCR45ixQYXuBXxOOmmoV8sYST9k7E3US32FsY+CkkF7NtzdcebiFT4CHuMSyZw==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-ia32-msvc/-/swc-win32-ia32-msvc-14.2.4.tgz",
+ "integrity": "sha512-twrmN753hjXRdcrZmZttb/m5xaCBFa48Dt3FbeEItpJArxriYDunWxJn+QFXdJ3hPkm4u7CKxncVvnmgQMY1ag==",
"cpu": [
"ia32"
],
@@ -603,9 +603,9 @@
}
},
"node_modules/@next/swc-win32-x64-msvc": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.3.tgz",
- "integrity": "sha512-Q1/zm43RWynxrO7lW4ehciQVj+5ePBhOK+/K2P7pLFX3JaJ/IZVC69SHidrmZSOkqz7ECIOhhy7XhAFG4JYyHA==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/@next/swc-win32-x64-msvc/-/swc-win32-x64-msvc-14.2.4.tgz",
+ "integrity": "sha512-tkLrjBzqFTP8DVrAAQmZelEahfR9OxWpFR++vAI9FBhCiIxtwHwBHC23SBHCTURBtwB4kc/x44imVOnkKGNVGg==",
"cpu": [
"x64"
],
@@ -1003,9 +1003,9 @@
}
},
"node_modules/ai": {
- "version": "3.1.31",
- "resolved": "https://registry.npmjs.org/ai/-/ai-3.1.31.tgz",
- "integrity": "sha512-fnQz8qlBuJuImUZCydbn0bTFCZFRwHeVQI+wBbBkR5S/FrF09snt0YrgiWzDc0il4u1rerzVPEUiasOdoGaoWA==",
+ "version": "3.1.32",
+ "resolved": "https://registry.npmjs.org/ai/-/ai-3.1.32.tgz",
+ "integrity": "sha512-+2dycoLQE3xN2BnfpWwTQYjMiwB3y1M9yLZxoODhzGCT/R/0JJjOFvqUHOvpx1K6hkWgIlHWTFfsK2VK/fRG7A==",
"dependencies": {
"@ai-sdk/provider": "0.0.10",
"@ai-sdk/provider-utils": "0.0.13",
@@ -2005,12 +2005,12 @@
}
},
"node_modules/eslint-config-next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.3.tgz",
- "integrity": "sha512-ZkNztm3Q7hjqvB1rRlOX8P9E/cXRL9ajRcs8jufEtwMfTVYRqnmtnaSu57QqHyBlovMuiB8LEzfLBkh5RYV6Fg==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/eslint-config-next/-/eslint-config-next-14.2.4.tgz",
+ "integrity": "sha512-Qr0wMgG9m6m4uYy2jrYJmyuNlYZzPRQq5Kvb9IDlYwn+7yq6W6sfMNFgb+9guM1KYwuIo6TIaiFhZJ6SnQ/Efw==",
"dev": true,
"dependencies": {
- "@next/eslint-plugin-next": "14.2.3",
+ "@next/eslint-plugin-next": "14.2.4",
"@rushstack/eslint-patch": "^1.3.3",
"@typescript-eslint/parser": "^5.4.2 || ^6.0.0 || 7.0.0 - 7.2.0",
"eslint-import-resolver-node": "^0.3.6",
@@ -3661,11 +3661,11 @@
"dev": true
},
"node_modules/next": {
- "version": "14.2.3",
- "resolved": "https://registry.npmjs.org/next/-/next-14.2.3.tgz",
- "integrity": "sha512-dowFkFTR8v79NPJO4QsBUtxv0g9BrS/phluVpMAt2ku7H+cbcBJlopXjkWlwxrk/xGqMemr7JkGPGemPrLLX7A==",
+ "version": "14.2.4",
+ "resolved": "https://registry.npmjs.org/next/-/next-14.2.4.tgz",
+ "integrity": "sha512-R8/V7vugY+822rsQGQCjoLhMuC9oFj9SOi4Cl4b2wjDrseD0LRZ10W7R6Czo4w9ZznVSshKjuIomsRjvm9EKJQ==",
"dependencies": {
- "@next/env": "14.2.3",
+ "@next/env": "14.2.4",
"@swc/helpers": "0.5.5",
"busboy": "1.6.0",
"caniuse-lite": "^1.0.30001579",
@@ -3680,15 +3680,15 @@
"node": ">=18.17.0"
},
"optionalDependencies": {
- "@next/swc-darwin-arm64": "14.2.3",
- "@next/swc-darwin-x64": "14.2.3",
- "@next/swc-linux-arm64-gnu": "14.2.3",
- "@next/swc-linux-arm64-musl": "14.2.3",
- "@next/swc-linux-x64-gnu": "14.2.3",
- "@next/swc-linux-x64-musl": "14.2.3",
- "@next/swc-win32-arm64-msvc": "14.2.3",
- "@next/swc-win32-ia32-msvc": "14.2.3",
- "@next/swc-win32-x64-msvc": "14.2.3"
+ "@next/swc-darwin-arm64": "14.2.4",
+ "@next/swc-darwin-x64": "14.2.4",
+ "@next/swc-linux-arm64-gnu": "14.2.4",
+ "@next/swc-linux-arm64-musl": "14.2.4",
+ "@next/swc-linux-x64-gnu": "14.2.4",
+ "@next/swc-linux-x64-musl": "14.2.4",
+ "@next/swc-win32-arm64-msvc": "14.2.4",
+ "@next/swc-win32-ia32-msvc": "14.2.4",
+ "@next/swc-win32-x64-msvc": "14.2.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.1.0",
@@ -3934,9 +3934,9 @@
}
},
"node_modules/openai": {
- "version": "4.49.1",
- "resolved": "https://registry.npmjs.org/openai/-/openai-4.49.1.tgz",
- "integrity": "sha512-bsFSNhhTNon+g6r4UYPKGLi+PlfP1G9TJGSkZS5nZx+PTwW2YUTlfxXxpOKrPab5auIXJdlYpC/g/wkHGR1xug==",
+ "version": "4.50.0",
+ "resolved": "https://registry.npmjs.org/openai/-/openai-4.50.0.tgz",
+ "integrity": "sha512-2ADkNIU6Q589oYHr5pn9k7SbUcrBTK9X0rIXrYqwMVSoqOj1yK9/1OO0ExaWsqOOpD7o58UmRjeKlx9gKAcuKQ==",
"dependencies": {
"@types/node": "^18.11.18",
"@types/node-fetch": "^2.6.4",
diff --git a/examples/nextjs-14-openai/package.json b/examples/nextjs-14-openai/package.json
index 67915e6e2..ea6329cc2 100644
--- a/examples/nextjs-14-openai/package.json
+++ b/examples/nextjs-14-openai/package.json
@@ -10,9 +10,9 @@
},
"dependencies": {
"@arcjet/next": "file:../../arcjet-next",
- "ai": "^3.1.31",
- "next": "^14.2.3",
- "openai": "^4.49.1",
+ "ai": "^3.1.32",
+ "next": "^14.2.4",
+ "openai": "^4.50.0",
"openai-chat-tokens": "^0.2.8",
"react": "^18",
"react-dom": "^18"
@@ -23,7 +23,7 @@
"@types/react-dom": "^18",
"autoprefixer": "^10.4.19",
"eslint": "^8",
- "eslint-config-next": "14.2.3",
+ "eslint-config-next": "14.2.4",
"postcss": "^8",
"tailwindcss": "^3.4.4",
"typescript": "^5"
From 672050415e4c73027be44238abbd9c7312519978 Mon Sep 17 00:00:00 2001
From: blaine-arcjet <146491715+blaine-arcjet@users.noreply.github.com>
Date: Wed, 12 Jun 2024 07:45:47 -0700
Subject: [PATCH 29/30] chore!: Freeze the ArcjetContext before using it (#934)
Closes #930
This freezes the context once it is fully constructed but before it is used.
---
arcjet/index.ts | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/arcjet/index.ts b/arcjet/index.ts
index ba2451599..2b5bca2f6 100644
--- a/arcjet/index.ts
+++ b/arcjet/index.ts
@@ -1077,7 +1077,11 @@ export default function arcjet<
log.debug("fingerprint (%s): %s", rt, fingerprint);
log.timeEnd?.("fingerprint");
- const context: ArcjetContext = { ...baseContext, fingerprint, runtime: rt };
+ const context: ArcjetContext = Object.freeze({
+ ...baseContext,
+ fingerprint,
+ runtime: rt,
+ });
if (rules.length < 1) {
// TODO(#607): Error if no rules configured after deprecation period
From ea1c2b25d146be10056cbc616180abeac75f9a01 Mon Sep 17 00:00:00 2001
From: blaine-arcjet <146491715+blaine-arcjet@users.noreply.github.com>
Date: Wed, 12 Jun 2024 07:46:03 -0700
Subject: [PATCH 30/30] chore!: Move client into protocol and rename builders
in adapters (#932)
Closes #46
This moves the `createClient` logic from the `arcjet` core package into the `@arcjet/protocol` package. It is then consumed by adapters, which all export a `createRemoteClient` function that fills in some of the required data. This ensures we don't try to double export these functions (via re-exports) while still allowing users to dive deep into `@arcjet/protocol/client.js` if they need it.
---
arcjet-bun/index.ts | 28 +-
arcjet-bun/package.json | 1 +
arcjet-next/index.ts | 54 +-
arcjet-next/package.json | 1 +
arcjet-node/index.ts | 28 +-
arcjet-node/package.json | 1 +
arcjet-sveltekit/index.ts | 19 +-
arcjet-sveltekit/package.json | 1 +
arcjet/index.ts | 162 +--
arcjet/test/index.node.test.ts | 1110 ----------------
.../app/api/custom_timeout/route.ts | 7 +-
protocol/.gitignore | 2 +
protocol/client.ts | 182 +++
protocol/proto.ts | 10 -
protocol/test/client.test.ts | 1148 +++++++++++++++++
15 files changed, 1403 insertions(+), 1351 deletions(-)
create mode 100644 protocol/client.ts
delete mode 100644 protocol/proto.ts
create mode 100644 protocol/test/client.test.ts
diff --git a/arcjet-bun/index.ts b/arcjet-bun/index.ts
index df6e2a17e..1bfad933f 100644
--- a/arcjet-bun/index.ts
+++ b/arcjet-bun/index.ts
@@ -7,9 +7,6 @@ import core, {
Product,
ArcjetRequest,
ExtraProps,
- RemoteClient,
- RemoteClientOptions,
- createRemoteClient,
Arcjet,
} from "arcjet";
import findIP from "@arcjet/ip";
@@ -24,6 +21,7 @@ import {
platform,
} from "@arcjet/env";
import { Logger } from "@arcjet/logger";
+import { createClient } from "@arcjet/protocol/client.js";
// Re-export all named exports from the generic SDK
export * from "arcjet";
@@ -65,9 +63,12 @@ type PlainObject = {
[key: string]: unknown;
};
-export function createBunRemoteClient(
- options?: Partial,
-): RemoteClient {
+export type RemoteClientOptions = {
+ baseUrl?: string;
+ timeout?: number;
+};
+
+export function createRemoteClient(options?: RemoteClientOptions) {
// The base URL for the Arcjet API. Will default to the standard production
// API unless environment variable `ARCJET_BASE_URL` is set.
const url = options?.baseUrl ?? baseUrl(env);
@@ -77,18 +78,15 @@ export function createBunRemoteClient(
const timeout = options?.timeout ?? (isProduction(env) ? 500 : 1000);
// Transport is the HTTP client that the client uses to make requests.
- const transport =
- options?.transport ??
- createConnectTransport({
- baseUrl: url,
- httpVersion: "1.1",
- });
+ const transport = createConnectTransport({
+ baseUrl: url,
+ httpVersion: "1.1",
+ });
- // TODO(#223): Create separate options type to exclude these
const sdkStack = "BUN";
const sdkVersion = "__ARCJET_SDK_VERSION__";
- return createRemoteClient({
+ return createClient({
transport,
baseUrl: url,
timeout,
@@ -255,7 +253,7 @@ function withClient(
export default function arcjet(
options: ArcjetOptions,
): ArcjetBun>> {
- const client = options.client ?? createBunRemoteClient();
+ const client = options.client ?? createRemoteClient();
const log = options.log
? options.log
diff --git a/arcjet-bun/package.json b/arcjet-bun/package.json
index 3c993ae15..b650195eb 100644
--- a/arcjet-bun/package.json
+++ b/arcjet-bun/package.json
@@ -42,6 +42,7 @@
"@arcjet/headers": "1.0.0-alpha.14",
"@arcjet/ip": "1.0.0-alpha.14",
"@arcjet/logger": "1.0.0-alpha.14",
+ "@arcjet/protocol": "1.0.0-alpha.14",
"@connectrpc/connect-node": "1.4.0",
"arcjet": "1.0.0-alpha.14"
},
diff --git a/arcjet-next/index.ts b/arcjet-next/index.ts
index 49155da96..31344bcc5 100644
--- a/arcjet-next/index.ts
+++ b/arcjet-next/index.ts
@@ -14,9 +14,6 @@ import arcjet, {
Product,
ArcjetRequest,
ExtraProps,
- RemoteClient,
- RemoteClientOptions,
- createRemoteClient,
Arcjet,
} from "arcjet";
import findIP from "@arcjet/ip";
@@ -29,6 +26,7 @@ import {
platform,
} from "@arcjet/env";
import { Logger } from "@arcjet/logger";
+import { createClient } from "@arcjet/protocol/client.js";
// Re-export all named exports from the generic SDK
export * from "arcjet";
@@ -70,9 +68,12 @@ type PlainObject = {
[key: string]: unknown;
};
-export function createNextRemoteClient(
- options?: Partial,
-): RemoteClient {
+export type RemoteClientOptions = {
+ baseUrl?: string;
+ timeout?: number;
+};
+
+export function createRemoteClient(options?: RemoteClientOptions) {
// The base URL for the Arcjet API. Will default to the standard production
// API unless environment variable `ARCJET_BASE_URL` is set.
const url = options?.baseUrl ?? baseUrl(process.env);
@@ -84,30 +85,27 @@ export function createNextRemoteClient(
// Transport is the HTTP client that the client uses to make requests.
// The Connect Node client doesn't work on edge runtimes: https://github.com/bufbuild/connect-es/pull/589
// so set the transport using connect-web. The interceptor is required for it work in the edge runtime.
- const transport =
- options?.transport ??
- createConnectTransport({
- baseUrl: url,
- interceptors: [
- /**
- * Ensures redirects are followed to properly support the Next.js/Vercel Edge
- * Runtime.
- * @see
- * https://github.com/connectrpc/connect-es/issues/749#issuecomment-1693507516
- */
- (next) => (req) => {
- req.init.redirect = "follow";
- return next(req);
- },
- ],
- fetch,
- });
-
- // TODO(#223): Create separate options type to exclude these
+ const transport = createConnectTransport({
+ baseUrl: url,
+ interceptors: [
+ /**
+ * Ensures redirects are followed to properly support the Next.js/Vercel Edge
+ * Runtime.
+ * @see
+ * https://github.com/connectrpc/connect-es/issues/749#issuecomment-1693507516
+ */
+ (next) => (req) => {
+ req.init.redirect = "follow";
+ return next(req);
+ },
+ ],
+ fetch,
+ });
+
const sdkStack = "NEXTJS";
const sdkVersion = "__ARCJET_SDK_VERSION__";
- return createRemoteClient({
+ return createClient({
transport,
baseUrl: url,
timeout,
@@ -337,7 +335,7 @@ function withClient(
export default function arcjetNext(
options: ArcjetOptions,
): ArcjetNext>> {
- const client = options.client ?? createNextRemoteClient();
+ const client = options.client ?? createRemoteClient();
const log = options.log
? options.log
diff --git a/arcjet-next/package.json b/arcjet-next/package.json
index 366bc1219..caaf6b08e 100644
--- a/arcjet-next/package.json
+++ b/arcjet-next/package.json
@@ -44,6 +44,7 @@
"@arcjet/headers": "1.0.0-alpha.14",
"@arcjet/ip": "1.0.0-alpha.14",
"@arcjet/logger": "1.0.0-alpha.14",
+ "@arcjet/protocol": "1.0.0-alpha.14",
"@connectrpc/connect-web": "1.4.0",
"arcjet": "1.0.0-alpha.14"
},
diff --git a/arcjet-node/index.ts b/arcjet-node/index.ts
index 3efaf7037..fe002f249 100644
--- a/arcjet-node/index.ts
+++ b/arcjet-node/index.ts
@@ -6,9 +6,6 @@ import core, {
Product,
ArcjetRequest,
ExtraProps,
- RemoteClient,
- RemoteClientOptions,
- createRemoteClient,
Arcjet,
} from "arcjet";
import findIP from "@arcjet/ip";
@@ -21,6 +18,7 @@ import {
platform,
} from "@arcjet/env";
import { Logger } from "@arcjet/logger";
+import { createClient } from "@arcjet/protocol/client.js";
// Re-export all named exports from the generic SDK
export * from "arcjet";
@@ -62,9 +60,12 @@ type PlainObject = {
[key: string]: unknown;
};
-export function createNodeRemoteClient(
- options?: Partial,
-): RemoteClient {
+export type RemoteClientOptions = {
+ baseUrl?: string;
+ timeout?: number;
+};
+
+export function createRemoteClient(options?: RemoteClientOptions) {
// The base URL for the Arcjet API. Will default to the standard production
// API unless environment variable `ARCJET_BASE_URL` is set.
const url = options?.baseUrl ?? baseUrl(process.env);
@@ -74,18 +75,15 @@ export function createNodeRemoteClient(
const timeout = options?.timeout ?? (isProduction(process.env) ? 500 : 1000);
// Transport is the HTTP client that the client uses to make requests.
- const transport =
- options?.transport ??
- createConnectTransport({
- baseUrl: url,
- httpVersion: "2",
- });
+ const transport = createConnectTransport({
+ baseUrl: url,
+ httpVersion: "2",
+ });
- // TODO(#223): Create separate options type to exclude these
const sdkStack = "NODEJS";
const sdkVersion = "__ARCJET_SDK_VERSION__";
- return createRemoteClient({
+ return createClient({
transport,
baseUrl: url,
timeout,
@@ -249,7 +247,7 @@ function withClient(
export default function arcjet(
options: ArcjetOptions,
): ArcjetNode>> {
- const client = options.client ?? createNodeRemoteClient();
+ const client = options.client ?? createRemoteClient();
const log = options.log
? options.log
diff --git a/arcjet-node/package.json b/arcjet-node/package.json
index 7fbc896c8..4d1428047 100644
--- a/arcjet-node/package.json
+++ b/arcjet-node/package.json
@@ -44,6 +44,7 @@
"@arcjet/headers": "1.0.0-alpha.14",
"@arcjet/ip": "1.0.0-alpha.14",
"@arcjet/logger": "1.0.0-alpha.14",
+ "@arcjet/protocol": "1.0.0-alpha.14",
"@connectrpc/connect-node": "1.4.0",
"arcjet": "1.0.0-alpha.14"
},
diff --git a/arcjet-sveltekit/index.ts b/arcjet-sveltekit/index.ts
index f58549d53..371ee79b2 100644
--- a/arcjet-sveltekit/index.ts
+++ b/arcjet-sveltekit/index.ts
@@ -7,9 +7,6 @@ import core, {
Product,
ArcjetRequest,
ExtraProps,
- RemoteClient,
- RemoteClientOptions,
- createRemoteClient,
Arcjet,
} from "arcjet";
import findIP from "@arcjet/ip";
@@ -24,6 +21,7 @@ import {
platform,
} from "@arcjet/env";
import { Logger } from "@arcjet/logger";
+import { createClient } from "@arcjet/protocol/client.js";
// Re-export all named exports from the generic SDK
export * from "arcjet";
@@ -93,9 +91,12 @@ function defaultTransport(baseUrl: string) {
}
}
-export function createSvelteKitRemoteClient(
- options?: Partial,
-): RemoteClient {
+export type RemoteClientOptions = {
+ baseUrl?: string;
+ timeout?: number;
+};
+
+export function createRemoteClient(options?: RemoteClientOptions) {
// The base URL for the Arcjet API. Will default to the standard production
// API unless environment variable `ARCJET_BASE_URL` is set.
const url = options?.baseUrl ?? baseUrl(env);
@@ -105,13 +106,13 @@ export function createSvelteKitRemoteClient(
const timeout = options?.timeout ?? (isProduction(env) ? 500 : 1000);
// Transport is the HTTP client that the client uses to make requests.
- const transport = options?.transport ?? defaultTransport(url);
+ const transport = defaultTransport(url);
// TODO(#223): Create separate options type to exclude these
const sdkStack = "SVELTEKIT";
const sdkVersion = "__ARCJET_SDK_VERSION__";
- return createRemoteClient({
+ return createClient({
transport,
baseUrl: url,
timeout,
@@ -255,7 +256,7 @@ function withClient(
export default function arcjet(
options: ArcjetOptions,
): ArcjetSvelteKit>> {
- const client = options.client ?? createSvelteKitRemoteClient();
+ const client = options.client ?? createRemoteClient();
const log = options.log
? options.log
diff --git a/arcjet-sveltekit/package.json b/arcjet-sveltekit/package.json
index 81e3ad274..1374db5fb 100644
--- a/arcjet-sveltekit/package.json
+++ b/arcjet-sveltekit/package.json
@@ -44,6 +44,7 @@
"@arcjet/headers": "1.0.0-alpha.14",
"@arcjet/ip": "1.0.0-alpha.14",
"@arcjet/logger": "1.0.0-alpha.14",
+ "@arcjet/protocol": "1.0.0-alpha.14",
"@arcjet/runtime": "1.0.0-alpha.14",
"@connectrpc/connect-node": "1.4.0",
"@connectrpc/connect-web": "1.4.0",
diff --git a/arcjet/index.ts b/arcjet/index.ts
index 2b5bca2f6..3e73ffbf5 100644
--- a/arcjet/index.ts
+++ b/arcjet/index.ts
@@ -9,7 +9,6 @@ import {
ArcjetMode,
ArcjetReason,
ArcjetRuleResult,
- ArcjetStack,
ArcjetDecision,
ArcjetDenyDecision,
ArcjetErrorDecision,
@@ -23,21 +22,8 @@ import {
ArcjetShieldRule,
ArcjetLogger,
} from "@arcjet/protocol";
-import {
- ArcjetBotTypeToProtocol,
- ArcjetStackToProtocol,
- ArcjetDecisionFromProtocol,
- ArcjetDecisionToProtocol,
- ArcjetRuleToProtocol,
-} from "@arcjet/protocol/convert.js";
-import {
- createPromiseClient,
- Transport,
- DecideRequest,
- DecideService,
- ReportRequest,
- Timestamp,
-} from "@arcjet/protocol/proto.js";
+import { ArcjetBotTypeToProtocol } from "@arcjet/protocol/convert.js";
+import { Client } from "@arcjet/protocol/client.js";
import * as analyze from "@arcjet/analyze";
import * as duration from "@arcjet/duration";
import ArcjetHeaders from "@arcjet/headers";
@@ -175,30 +161,6 @@ type LiteralCheck<
: false;
type IsStringLiteral = LiteralCheck;
-export interface RemoteClient {
- decide(
- context: ArcjetContext,
- details: Partial,
- rules: ArcjetRule[],
- ): Promise;
- // Call the Arcjet Log Decision API with details of the request and decision
- // made so we can log it.
- report(
- context: ArcjetContext,
- request: Partial,
- decision: ArcjetDecision,
- rules: ArcjetRule[],
- ): void;
-}
-
-export type RemoteClientOptions = {
- transport: Transport;
- baseUrl: string;
- timeout: number;
- sdkStack: ArcjetStack;
- sdkVersion: string;
-};
-
const knownFields = [
"ip",
"method",
@@ -244,124 +206,6 @@ function extraProps(
return Object.fromEntries(extra.entries());
}
-export function createRemoteClient(options: RemoteClientOptions): RemoteClient {
- const { transport, sdkVersion, baseUrl, timeout } = options;
-
- const sdkStack = ArcjetStackToProtocol(options.sdkStack);
-
- const client = createPromiseClient(DecideService, transport);
-
- return Object.freeze({
- async decide(
- context: ArcjetContext,
- details: ArcjetRequestDetails,
- rules: ArcjetRule[],
- ): Promise {
- const { log } = context;
-
- // Build the request object from the Protobuf generated class.
- const decideRequest = new DecideRequest({
- sdkStack,
- sdkVersion,
- details: {
- ip: details.ip,
- method: details.method,
- protocol: details.protocol,
- host: details.host,
- path: details.path,
- headers: Object.fromEntries(details.headers.entries()),
- cookies: details.cookies,
- query: details.query,
- // TODO(#208): Re-add body
- // body: details.body,
- extra: details.extra,
- email: typeof details.email === "string" ? details.email : undefined,
- },
- rules: rules.map(ArcjetRuleToProtocol),
- });
-
- log.debug("Decide request to %s", baseUrl);
-
- const response = await client.decide(decideRequest, {
- headers: { Authorization: `Bearer ${context.key}` },
- timeoutMs: timeout,
- });
-
- const decision = ArcjetDecisionFromProtocol(response.decision);
-
- log.debug(
- {
- id: decision.id,
- fingerprint: context.fingerprint,
- path: details.path,
- runtime: context.runtime,
- ttl: decision.ttl,
- conclusion: decision.conclusion,
- reason: decision.reason,
- ruleResults: decision.results,
- },
- "Decide response",
- );
-
- return decision;
- },
-
- report(
- context: ArcjetContext,
- details: ArcjetRequestDetails,
- decision: ArcjetDecision,
- rules: ArcjetRule[],
- ): void {
- const { log } = context;
-
- // Build the request object from the Protobuf generated class.
- const reportRequest = new ReportRequest({
- sdkStack,
- sdkVersion,
- details: {
- ip: details.ip,
- method: details.method,
- protocol: details.protocol,
- host: details.host,
- path: details.path,
- headers: Object.fromEntries(details.headers.entries()),
- // TODO(#208): Re-add body
- // body: details.body,
- extra: details.extra,
- email: typeof details.email === "string" ? details.email : undefined,
- },
- decision: ArcjetDecisionToProtocol(decision),
- rules: rules.map(ArcjetRuleToProtocol),
- receivedAt: Timestamp.now(),
- });
-
- log.debug("Report request to %s", baseUrl);
-
- // We use the promise API directly to avoid returning a promise from this function so execution can't be paused with `await`
- client
- .report(reportRequest, {
- headers: { Authorization: `Bearer ${context.key}` },
- timeoutMs: 2_000, // 2 seconds
- })
- .then((response) => {
- log.debug(
- {
- id: response.decision?.id,
- fingerprint: context.fingerprint,
- path: details.path,
- runtime: context.runtime,
- ttl: decision.ttl,
- },
- "Report response",
- );
- })
- .catch((err: unknown) => {
- log.info("Encountered problem sending report: %s", errorMessage(err));
- });
- },
- });
-}
-
type TokenBucketRateLimitOptions = {
mode?: ArcjetMode;
match?: string;
@@ -957,7 +801,7 @@ export interface ArcjetOptions {
* The client used to make requests to the Arcjet API. This must be set
* when creating the SDK, such as inside @arcjet/next or mocked in tests.
*/
- client?: RemoteClient;
+ client?: Client;
/**
* The logger used to emit useful information from the SDK.
*/
diff --git a/arcjet/test/index.node.test.ts b/arcjet/test/index.node.test.ts
index 6f2fe4c52..649e1328b 100644
--- a/arcjet/test/index.node.test.ts
+++ b/arcjet/test/index.node.test.ts
@@ -9,32 +9,15 @@ import {
jest,
test,
} from "@jest/globals";
-import {
- createRouterTransport,
- DecideRequest,
- DecideResponse,
- DecideService,
- Conclusion,
- ReportRequest,
- ReportResponse,
- Reason,
- Rule,
- SDKStack,
- Timestamp,
- RuleResult,
- RuleState,
-} from "@arcjet/protocol/proto";
import { Logger } from "@arcjet/logger";
import arcjet, {
- ArcjetDecision,
ArcjetMode,
detectBot,
rateLimit,
ArcjetRule,
validateEmail,
protectSignup,
- createRemoteClient,
ArcjetBotType,
ArcjetEmailType,
ArcjetAllowDecision,
@@ -43,7 +26,6 @@ import arcjet, {
ArcjetChallengeDecision,
ArcjetReason,
ArcjetErrorReason,
- ArcjetConclusion,
ArcjetRuleResult,
ArcjetEmailReason,
ArcjetBotReason,
@@ -138,1102 +120,10 @@ function assertIsLocalRule(rule: ArcjetRule): asserts rule is ArcjetLocalRule {
expect("protect" in rule && typeof rule.protect === "function").toEqual(true);
}
-function deferred(): [Promise, () => void, (reason?: unknown) => void] {
- let resolve: () => void;
- let reject: (reason?: unknown) => void;
- const promise = new Promise((res, rej) => {
- resolve = res;
- reject = rej;
- });
-
- // @ts-expect-error
- return [promise, resolve, reject];
-}
-
class ArcjetTestReason extends ArcjetReason {}
-class ArcjetInvalidDecision extends ArcjetDecision {
- reason: ArcjetReason;
- conclusion: ArcjetConclusion;
-
- constructor() {
- super({ ttl: 0, results: [] });
- // @ts-expect-error
- this.conclusion = "INVALID";
- this.reason = new ArcjetTestReason();
- }
-}
-
const log = new Logger({ level: "info" });
-describe("createRemoteClient", () => {
- const defaultRemoteClientOptions = {
- baseUrl: "",
- timeout: 0,
- sdkStack: "NODEJS" as const,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- };
-
- test("can be called with only a transport", () => {
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(() => {}),
- });
- expect(typeof client.decide).toEqual("function");
- expect(typeof client.report).toEqual("function");
- });
-
- test("allows overriding the default timeout", async () => {
- // TODO(#32): createRouterTransport doesn't seem to handle timeouts/promises correctly
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, {});
- }),
- timeout: 300,
- });
- expect(typeof client.decide).toEqual("function");
- expect(typeof client.report).toEqual("function");
- });
-
- test("allows overriding the sdkStack", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.ALLOW,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- sdkStack: "NEXTJS",
- });
- const _ = await client.decide(context, details, []);
-
- expect(router.decide).toHaveBeenCalledTimes(1);
- expect(router.decide).toHaveBeenCalledWith(
- new DecideRequest({
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- rules: [],
- sdkStack: SDKStack.SDK_STACK_NEXTJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- }),
- expect.anything(),
- );
- });
-
- test("sets the sdkStack as UNSPECIFIED if invalid", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.ALLOW,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- // @ts-expect-error
- sdkStack: "SOMETHING_INVALID",
- });
- const _ = await client.decide(context, details, []);
-
- expect(router.decide).toHaveBeenCalledTimes(1);
- expect(router.decide).toHaveBeenCalledWith(
- new DecideRequest({
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- rules: [],
- sdkStack: SDKStack.SDK_STACK_UNSPECIFIED,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- }),
- expect.anything(),
- );
- });
-
- test("calling `decide` will make RPC call with correct message", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.ALLOW,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const _ = await client.decide(context, details, []);
-
- expect(router.decide).toHaveBeenCalledTimes(1);
- expect(router.decide).toHaveBeenCalledWith(
- new DecideRequest({
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- rules: [],
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- }),
- expect.anything(),
- );
- });
-
- test("calling `decide` will make RPC with email included", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- email: "abc@example.com",
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.ALLOW,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const _ = await client.decide(context, details, []);
-
- expect(router.decide).toHaveBeenCalledTimes(1);
- expect(router.decide).toHaveBeenCalledWith(
- new DecideRequest({
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- rules: [],
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- }),
- expect.anything(),
- );
- });
-
- test("calling `decide` will make RPC with rules included", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- email: "abc@example.com",
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.ALLOW,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const rule: ArcjetRule = {
- type: "TEST_RULE",
- mode: "DRY_RUN",
- priority: 1,
- };
- const _ = await client.decide(context, details, [rule]);
-
- expect(router.decide).toHaveBeenCalledTimes(1);
- expect(router.decide).toHaveBeenCalledWith(
- new DecideRequest({
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- rules: [new Rule()],
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- }),
- expect.anything(),
- );
- });
-
- test("calling `decide` creates an ALLOW ArcjetDecision if DecideResponse is allowed", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.ALLOW,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = await client.decide(context, details, []);
-
- expect(decision.isErrored()).toBe(false);
- expect(decision.isAllowed()).toBe(true);
- });
-
- test("calling `decide` creates a DENY ArcjetDecision if DecideResponse is denied", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.DENY,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = await client.decide(context, details, []);
-
- expect(decision.isDenied()).toBe(true);
- });
-
- test("calling `decide` creates a CHALLENGE ArcjetDecision if DecideResponse is challenged", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.CHALLENGE,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = await client.decide(context, details, []);
-
- expect(decision.isChallenged()).toBe(true);
- });
-
- test("calling `decide` creates an ERROR ArcjetDecision with default message if DecideResponse is error and no reason", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.ERROR,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = await client.decide(context, details, []);
-
- expect(decision.isErrored()).toBe(true);
- expect(decision.reason).toMatchObject({
- message: "Unknown error occurred",
- });
- });
-
- test("calling `decide` creates an ERROR ArcjetDecision with message if DecideResponse if error and reason available", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.ERROR,
- reason: {
- reason: {
- case: "error",
- value: { message: "Boom!" },
- },
- },
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = await client.decide(context, details, []);
-
- expect(decision.isErrored()).toBe(true);
- expect(decision.reason).toMatchObject({
- message: "Boom!",
- });
- });
-
- test("calling `decide` creates an ERROR ArcjetDecision if DecideResponse is unspecified", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const router = {
- decide: jest.fn((args) => {
- return new DecideResponse({
- decision: {
- conclusion: Conclusion.UNSPECIFIED,
- },
- });
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = await client.decide(context, details, []);
-
- expect(decision.isErrored()).toBe(true);
- expect(decision.isAllowed()).toBe(true);
- });
-
- test("calling `report` will make RPC call with ALLOW decision", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const receivedAt = Timestamp.now();
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- email: "test@example.com",
- };
-
- const [promise, resolve] = deferred();
-
- const router = {
- report: jest.fn((args) => {
- resolve();
- return new ReportResponse({});
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = new ArcjetAllowDecision({
- ttl: 0,
- reason: new ArcjetTestReason(),
- results: [],
- });
- client.report(context, details, decision, []);
-
- await promise;
-
- expect(router.report).toHaveBeenCalledTimes(1);
- expect(router.report).toHaveBeenCalledWith(
- new ReportRequest({
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- decision: {
- id: decision.id,
- conclusion: Conclusion.ALLOW,
- reason: new Reason(),
- ruleResults: [],
- },
- receivedAt,
- }),
- expect.anything(),
- );
- });
-
- test("calling `report` will make RPC call with DENY decision", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const receivedAt = Timestamp.now();
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const [promise, resolve] = deferred();
-
- const router = {
- report: jest.fn((args) => {
- resolve();
- return new ReportResponse({});
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = new ArcjetDenyDecision({
- ttl: 0,
- reason: new ArcjetTestReason(),
- results: [],
- });
- client.report(context, details, decision, []);
-
- await promise;
-
- expect(router.report).toHaveBeenCalledTimes(1);
- expect(router.report).toHaveBeenCalledWith(
- new ReportRequest({
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- decision: {
- id: decision.id,
- conclusion: Conclusion.DENY,
- reason: new Reason(),
- ruleResults: [],
- },
- receivedAt,
- }),
- expect.anything(),
- );
- });
-
- test("calling `report` will make RPC call with ERROR decision", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const receivedAt = Timestamp.now();
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const [promise, resolve] = deferred();
-
- const router = {
- report: jest.fn((args) => {
- resolve();
- return new ReportResponse({});
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = new ArcjetErrorDecision({
- ttl: 0,
- reason: new ArcjetErrorReason("Failure"),
- results: [],
- });
- client.report(context, details, decision, []);
-
- await promise;
-
- expect(router.report).toHaveBeenCalledTimes(1);
- expect(router.report).toHaveBeenCalledWith(
- new ReportRequest({
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- decision: {
- id: decision.id,
- conclusion: Conclusion.ERROR,
- reason: new Reason({
- reason: {
- case: "error",
- value: {
- message: "Failure",
- },
- },
- }),
- ruleResults: [],
- },
- receivedAt,
- }),
- expect.anything(),
- );
- });
-
- test("calling `report` will make RPC call with CHALLENGE decision", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const receivedAt = Timestamp.now();
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const [promise, resolve] = deferred();
-
- const router = {
- report: jest.fn((args) => {
- resolve();
- return new ReportResponse({});
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = new ArcjetChallengeDecision({
- ttl: 0,
- reason: new ArcjetTestReason(),
- results: [],
- });
- client.report(context, details, decision, []);
-
- await promise;
-
- expect(router.report).toHaveBeenCalledTimes(1);
- expect(router.report).toHaveBeenCalledWith(
- new ReportRequest({
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- decision: {
- id: decision.id,
- conclusion: Conclusion.CHALLENGE,
- reason: new Reason(),
- ruleResults: [],
- },
- receivedAt,
- }),
- expect.anything(),
- );
- });
-
- test("calling `report` will make RPC call with UNSPECIFIED decision if invalid", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const receivedAt = Timestamp.now();
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const [promise, resolve] = deferred();
-
- const router = {
- report: jest.fn((args) => {
- resolve();
- return new ReportResponse({});
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
- const decision = new ArcjetInvalidDecision();
- client.report(context, details, decision, []);
-
- await promise;
-
- expect(router.report).toHaveBeenCalledTimes(1);
- expect(router.report).toHaveBeenCalledWith(
- new ReportRequest({
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- decision: {
- id: decision.id,
- conclusion: Conclusion.UNSPECIFIED,
- reason: new Reason(),
- ruleResults: [],
- },
- receivedAt,
- }),
- expect.anything(),
- );
- });
-
- test("calling `report` will make RPC with rules included", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const receivedAt = Timestamp.now();
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- email: "abc@example.com",
- };
-
- const [promise, resolve] = deferred();
-
- const router = {
- report: jest.fn((args) => {
- resolve();
- return new ReportResponse({});
- }),
- };
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, router);
- }),
- });
-
- const decision = new ArcjetDenyDecision({
- ttl: 0,
- reason: new ArcjetTestReason(),
- results: [
- new ArcjetRuleResult({
- ttl: 0,
- state: "RUN",
- conclusion: "DENY",
- reason: new ArcjetReason(),
- }),
- ],
- });
- const rule: ArcjetRule = {
- type: "TEST_RULE",
- mode: "LIVE",
- priority: 1,
- };
- client.report(context, details, decision, [rule]);
-
- await promise;
-
- expect(router.report).toHaveBeenCalledTimes(1);
- expect(router.report).toHaveBeenCalledWith(
- new ReportRequest({
- sdkStack: SDKStack.SDK_STACK_NODEJS,
- sdkVersion: "__ARCJET_SDK_VERSION__",
- details: {
- ...details,
- headers: { "user-agent": "curl/8.1.2" },
- },
- decision: {
- id: decision.id,
- conclusion: Conclusion.DENY,
- reason: new Reason(),
- ruleResults: [
- new RuleResult({
- ruleId: "",
- state: RuleState.RUN,
- conclusion: Conclusion.DENY,
- reason: new Reason(),
- }),
- ],
- },
- rules: [new Rule()],
- receivedAt,
- }),
- expect.anything(),
- );
- });
-
- test("calling `report` only logs if it fails", async () => {
- const key = "test-key";
- const fingerprint =
- "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
- const context = {
- key,
- fingerprint,
- runtime: "test",
- log,
- };
- const details = {
- ip: "172.100.1.1",
- method: "GET",
- protocol: "http",
- host: "example.com",
- path: "/",
- headers: new Headers([["User-Agent", "curl/8.1.2"]]),
- extra: {
- "extra-test": "extra-test-value",
- },
- };
-
- const [promise, resolve] = deferred();
-
- const logSpy = jest.spyOn(log, "info").mockImplementation(() => {
- resolve();
- });
-
- const client = createRemoteClient({
- ...defaultRemoteClientOptions,
- transport: createRouterTransport(({ service }) => {
- service(DecideService, {});
- }),
- });
- const decision = new ArcjetAllowDecision({
- ttl: 0,
- reason: new ArcjetTestReason(),
- results: [],
- });
- client.report(context, details, decision, []);
-
- await promise;
-
- expect(logSpy).toHaveBeenCalledTimes(1);
- });
-});
-
describe("ArcjetDecision", () => {
test("will default the `id` property if not specified", () => {
const decision = new ArcjetAllowDecision({
diff --git a/examples/nextjs-14-app-dir-rl/app/api/custom_timeout/route.ts b/examples/nextjs-14-app-dir-rl/app/api/custom_timeout/route.ts
index d73e6ee66..7f295b682 100644
--- a/examples/nextjs-14-app-dir-rl/app/api/custom_timeout/route.ts
+++ b/examples/nextjs-14-app-dir-rl/app/api/custom_timeout/route.ts
@@ -1,11 +1,8 @@
-import arcjet, {
- validateEmail,
- createNextRemoteClient,
-} from "@arcjet/next";
+import arcjet, { validateEmail, createRemoteClient } from "@arcjet/next";
import { baseUrl } from "@arcjet/env";
import { NextResponse } from "next/server";
-const client = createNextRemoteClient({
+const client = createRemoteClient({
baseUrl: baseUrl(process.env),
timeout: 10,
});
diff --git a/protocol/.gitignore b/protocol/.gitignore
index 5de693ee9..e58045176 100644
--- a/protocol/.gitignore
+++ b/protocol/.gitignore
@@ -132,6 +132,8 @@ dist
# Generated files
index.js
index.d.ts
+client.js
+client.d.ts
convert.js
convert.d.ts
proto.js
diff --git a/protocol/client.ts b/protocol/client.ts
new file mode 100644
index 000000000..924d9cef9
--- /dev/null
+++ b/protocol/client.ts
@@ -0,0 +1,182 @@
+import { Transport, createPromiseClient } from "@connectrpc/connect";
+import { Timestamp } from "@bufbuild/protobuf";
+import {
+ ArcjetDecisionFromProtocol,
+ ArcjetDecisionToProtocol,
+ ArcjetRuleToProtocol,
+ ArcjetStackToProtocol,
+} from "./convert.js";
+import {
+ ArcjetContext,
+ ArcjetDecision,
+ ArcjetRequestDetails,
+ ArcjetRule,
+ ArcjetStack,
+} from "./index.js";
+import { DecideService } from "./gen/es/decide/v1alpha1/decide_connect.js";
+import {
+ DecideRequest,
+ ReportRequest,
+} from "./gen/es/decide/v1alpha1/decide_pb.js";
+
+// TODO: Dedupe with `errorMessage` in core
+function errorMessage(err: unknown): string {
+ if (err) {
+ if (typeof err === "string") {
+ return err;
+ }
+
+ if (
+ typeof err === "object" &&
+ "message" in err &&
+ typeof err.message === "string"
+ ) {
+ return err.message;
+ }
+ }
+
+ return "Unknown problem";
+}
+
+export interface Client {
+ decide(
+ context: ArcjetContext,
+ details: Partial,
+ rules: ArcjetRule[],
+ ): Promise;
+ // Call the Arcjet Log Decision API with details of the request and decision
+ // made so we can log it.
+ report(
+ context: ArcjetContext,
+ request: Partial,
+ decision: ArcjetDecision,
+ rules: ArcjetRule[],
+ ): void;
+}
+
+export type ClientOptions = {
+ transport: Transport;
+ baseUrl: string;
+ timeout: number;
+ sdkStack: ArcjetStack;
+ sdkVersion: string;
+};
+
+export function createClient(options: ClientOptions): Client {
+ const { transport, sdkVersion, baseUrl, timeout } = options;
+
+ const sdkStack = ArcjetStackToProtocol(options.sdkStack);
+
+ const client = createPromiseClient(DecideService, transport);
+
+ return Object.freeze({
+ async decide(
+ context: ArcjetContext,
+ details: ArcjetRequestDetails,
+ rules: ArcjetRule[],
+ ): Promise {
+ const { log } = context;
+
+ // Build the request object from the Protobuf generated class.
+ const decideRequest = new DecideRequest({
+ sdkStack,
+ sdkVersion,
+ details: {
+ ip: details.ip,
+ method: details.method,
+ protocol: details.protocol,
+ host: details.host,
+ path: details.path,
+ headers: Object.fromEntries(details.headers.entries()),
+ cookies: details.cookies,
+ query: details.query,
+ // TODO(#208): Re-add body
+ // body: details.body,
+ extra: details.extra,
+ email: typeof details.email === "string" ? details.email : undefined,
+ },
+ rules: rules.map(ArcjetRuleToProtocol),
+ });
+
+ log.debug("Decide request to %s", baseUrl);
+
+ const response = await client.decide(decideRequest, {
+ headers: { Authorization: `Bearer ${context.key}` },
+ timeoutMs: timeout,
+ });
+
+ const decision = ArcjetDecisionFromProtocol(response.decision);
+
+ log.debug(
+ {
+ id: decision.id,
+ fingerprint: context.fingerprint,
+ path: details.path,
+ runtime: context.runtime,
+ ttl: decision.ttl,
+ conclusion: decision.conclusion,
+ reason: decision.reason,
+ ruleResults: decision.results,
+ },
+ "Decide response",
+ );
+
+ return decision;
+ },
+
+ report(
+ context: ArcjetContext,
+ details: ArcjetRequestDetails,
+ decision: ArcjetDecision,
+ rules: ArcjetRule[],
+ ): void {
+ const { log } = context;
+
+ // Build the request object from the Protobuf generated class.
+ const reportRequest = new ReportRequest({
+ sdkStack,
+ sdkVersion,
+ details: {
+ ip: details.ip,
+ method: details.method,
+ protocol: details.protocol,
+ host: details.host,
+ path: details.path,
+ headers: Object.fromEntries(details.headers.entries()),
+ // TODO(#208): Re-add body
+ // body: details.body,
+ extra: details.extra,
+ email: typeof details.email === "string" ? details.email : undefined,
+ },
+ decision: ArcjetDecisionToProtocol(decision),
+ rules: rules.map(ArcjetRuleToProtocol),
+ receivedAt: Timestamp.now(),
+ });
+
+ log.debug("Report request to %s", baseUrl);
+
+ // We use the promise API directly to avoid returning a promise from this function so execution can't be paused with `await`
+ // TODO(#884): Leverage `waitUntil` if the function is attached to the context
+ client
+ .report(reportRequest, {
+ headers: { Authorization: `Bearer ${context.key}` },
+ timeoutMs: 2_000, // 2 seconds
+ })
+ .then((response) => {
+ log.debug(
+ {
+ id: response.decision?.id,
+ fingerprint: context.fingerprint,
+ path: details.path,
+ runtime: context.runtime,
+ ttl: decision.ttl,
+ },
+ "Report response",
+ );
+ })
+ .catch((err: unknown) => {
+ log.info("Encountered problem sending report: %s", errorMessage(err));
+ });
+ },
+ });
+}
diff --git a/protocol/proto.ts b/protocol/proto.ts
deleted file mode 100644
index b281f3156..000000000
--- a/protocol/proto.ts
+++ /dev/null
@@ -1,10 +0,0 @@
-// TODO: Finish abstracting over protobuf and don't re-export
-export * from "./gen/es/decide/v1alpha1/decide_pb.js";
-export * from "./gen/es/decide/v1alpha1/decide_connect.js";
-
-export { Timestamp, proto3 } from "@bufbuild/protobuf";
-export {
- createPromiseClient,
- createRouterTransport,
- type Transport,
-} from "@connectrpc/connect";
diff --git a/protocol/test/client.test.ts b/protocol/test/client.test.ts
new file mode 100644
index 000000000..5c81137d2
--- /dev/null
+++ b/protocol/test/client.test.ts
@@ -0,0 +1,1148 @@
+import {
+ afterEach,
+ beforeEach,
+ describe,
+ expect,
+ jest,
+ test,
+} from "@jest/globals";
+import { createClient } from "../client.js";
+import { createRouterTransport } from "@connectrpc/connect";
+import { DecideService } from "../gen/es/decide/v1alpha1/decide_connect.js";
+import {
+ Conclusion,
+ DecideRequest,
+ DecideResponse,
+ Reason,
+ ReportRequest,
+ ReportResponse,
+ Rule,
+ RuleResult,
+ RuleState,
+ SDKStack,
+} from "../gen/es/decide/v1alpha1/decide_pb.js";
+import {
+ ArcjetAllowDecision,
+ ArcjetChallengeDecision,
+ ArcjetConclusion,
+ ArcjetDecision,
+ ArcjetDenyDecision,
+ ArcjetErrorDecision,
+ ArcjetErrorReason,
+ ArcjetReason,
+ ArcjetRule,
+ ArcjetRuleResult,
+} from "../index.js";
+import { Timestamp } from "@bufbuild/protobuf";
+
+function deferred(): [Promise, () => void, (reason?: unknown) => void] {
+ let resolve: () => void;
+ let reject: (reason?: unknown) => void;
+ const promise = new Promise((res, rej) => {
+ resolve = res;
+ reject = rej;
+ });
+
+ // @ts-expect-error
+ return [promise, resolve, reject];
+}
+
+class ArcjetTestReason extends ArcjetReason {}
+
+class ArcjetInvalidDecision extends ArcjetDecision {
+ reason: ArcjetReason;
+ conclusion: ArcjetConclusion;
+
+ constructor() {
+ super({ ttl: 0, results: [] });
+ // @ts-expect-error
+ this.conclusion = "INVALID";
+ this.reason = new ArcjetTestReason();
+ }
+}
+
+beforeEach(() => {
+ jest.useFakeTimers();
+});
+
+afterEach(() => {
+ jest.useRealTimers();
+ jest.clearAllTimers();
+ jest.clearAllMocks();
+ jest.restoreAllMocks();
+});
+
+describe("createClient", () => {
+ const log = {
+ debug() {},
+ info() {},
+ warn() {},
+ error() {},
+ };
+
+ const defaultRemoteClientOptions = {
+ baseUrl: "",
+ timeout: 0,
+ sdkStack: "NODEJS" as const,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ };
+
+ test("can be called with only a transport", () => {
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(() => {}),
+ });
+ expect(typeof client.decide).toEqual("function");
+ expect(typeof client.report).toEqual("function");
+ });
+
+ test("allows overriding the default timeout", async () => {
+ // TODO(#32): createRouterTransport doesn't seem to handle timeouts/promises correctly
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, {});
+ }),
+ timeout: 300,
+ });
+ expect(typeof client.decide).toEqual("function");
+ expect(typeof client.report).toEqual("function");
+ });
+
+ test("allows overriding the sdkStack", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.ALLOW,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ sdkStack: "NEXTJS",
+ });
+ const _ = await client.decide(context, details, []);
+
+ expect(router.decide).toHaveBeenCalledTimes(1);
+ expect(router.decide).toHaveBeenCalledWith(
+ new DecideRequest({
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ rules: [],
+ sdkStack: SDKStack.SDK_STACK_NEXTJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("sets the sdkStack as UNSPECIFIED if invalid", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.ALLOW,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ // @ts-expect-error
+ sdkStack: "SOMETHING_INVALID",
+ });
+ const _ = await client.decide(context, details, []);
+
+ expect(router.decide).toHaveBeenCalledTimes(1);
+ expect(router.decide).toHaveBeenCalledWith(
+ new DecideRequest({
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ rules: [],
+ sdkStack: SDKStack.SDK_STACK_UNSPECIFIED,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `decide` will make RPC call with correct message", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.ALLOW,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const _ = await client.decide(context, details, []);
+
+ expect(router.decide).toHaveBeenCalledTimes(1);
+ expect(router.decide).toHaveBeenCalledWith(
+ new DecideRequest({
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ rules: [],
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `decide` will make RPC with email included", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ email: "abc@example.com",
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.ALLOW,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const _ = await client.decide(context, details, []);
+
+ expect(router.decide).toHaveBeenCalledTimes(1);
+ expect(router.decide).toHaveBeenCalledWith(
+ new DecideRequest({
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ rules: [],
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `decide` will make RPC with rules included", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ email: "abc@example.com",
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.ALLOW,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const rule: ArcjetRule = {
+ type: "TEST_RULE",
+ mode: "DRY_RUN",
+ priority: 1,
+ };
+ const _ = await client.decide(context, details, [rule]);
+
+ expect(router.decide).toHaveBeenCalledTimes(1);
+ expect(router.decide).toHaveBeenCalledWith(
+ new DecideRequest({
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ rules: [new Rule()],
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `decide` creates an ALLOW ArcjetDecision if DecideResponse is allowed", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.ALLOW,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = await client.decide(context, details, []);
+
+ expect(decision.isErrored()).toBe(false);
+ expect(decision.isAllowed()).toBe(true);
+ });
+
+ test("calling `decide` creates a DENY ArcjetDecision if DecideResponse is denied", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.DENY,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = await client.decide(context, details, []);
+
+ expect(decision.isDenied()).toBe(true);
+ });
+
+ test("calling `decide` creates a CHALLENGE ArcjetDecision if DecideResponse is challenged", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.CHALLENGE,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = await client.decide(context, details, []);
+
+ expect(decision.isChallenged()).toBe(true);
+ });
+
+ test("calling `decide` creates an ERROR ArcjetDecision with default message if DecideResponse is error and no reason", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.ERROR,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = await client.decide(context, details, []);
+
+ expect(decision.isErrored()).toBe(true);
+ expect(decision.reason).toMatchObject({
+ message: "Unknown error occurred",
+ });
+ });
+
+ test("calling `decide` creates an ERROR ArcjetDecision with message if DecideResponse if error and reason available", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.ERROR,
+ reason: {
+ reason: {
+ case: "error",
+ value: { message: "Boom!" },
+ },
+ },
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = await client.decide(context, details, []);
+
+ expect(decision.isErrored()).toBe(true);
+ expect(decision.reason).toMatchObject({
+ message: "Boom!",
+ });
+ });
+
+ test("calling `decide` creates an ERROR ArcjetDecision if DecideResponse is unspecified", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const router = {
+ decide: jest.fn((args) => {
+ return new DecideResponse({
+ decision: {
+ conclusion: Conclusion.UNSPECIFIED,
+ },
+ });
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = await client.decide(context, details, []);
+
+ expect(decision.isErrored()).toBe(true);
+ expect(decision.isAllowed()).toBe(true);
+ });
+
+ test("calling `report` will make RPC call with ALLOW decision", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const receivedAt = Timestamp.now();
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ email: "test@example.com",
+ };
+
+ const [promise, resolve] = deferred();
+
+ const router = {
+ report: jest.fn((args) => {
+ resolve();
+ return new ReportResponse({});
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = new ArcjetAllowDecision({
+ ttl: 0,
+ reason: new ArcjetTestReason(),
+ results: [],
+ });
+ client.report(context, details, decision, []);
+
+ await promise;
+
+ expect(router.report).toHaveBeenCalledTimes(1);
+ expect(router.report).toHaveBeenCalledWith(
+ new ReportRequest({
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ decision: {
+ id: decision.id,
+ conclusion: Conclusion.ALLOW,
+ reason: new Reason(),
+ ruleResults: [],
+ },
+ receivedAt,
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `report` will make RPC call with DENY decision", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const receivedAt = Timestamp.now();
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const [promise, resolve] = deferred();
+
+ const router = {
+ report: jest.fn((args) => {
+ resolve();
+ return new ReportResponse({});
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = new ArcjetDenyDecision({
+ ttl: 0,
+ reason: new ArcjetTestReason(),
+ results: [],
+ });
+ client.report(context, details, decision, []);
+
+ await promise;
+
+ expect(router.report).toHaveBeenCalledTimes(1);
+ expect(router.report).toHaveBeenCalledWith(
+ new ReportRequest({
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ decision: {
+ id: decision.id,
+ conclusion: Conclusion.DENY,
+ reason: new Reason(),
+ ruleResults: [],
+ },
+ receivedAt,
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `report` will make RPC call with ERROR decision", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const receivedAt = Timestamp.now();
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const [promise, resolve] = deferred();
+
+ const router = {
+ report: jest.fn((args) => {
+ resolve();
+ return new ReportResponse({});
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = new ArcjetErrorDecision({
+ ttl: 0,
+ reason: new ArcjetErrorReason("Failure"),
+ results: [],
+ });
+ client.report(context, details, decision, []);
+
+ await promise;
+
+ expect(router.report).toHaveBeenCalledTimes(1);
+ expect(router.report).toHaveBeenCalledWith(
+ new ReportRequest({
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ decision: {
+ id: decision.id,
+ conclusion: Conclusion.ERROR,
+ reason: new Reason({
+ reason: {
+ case: "error",
+ value: {
+ message: "Failure",
+ },
+ },
+ }),
+ ruleResults: [],
+ },
+ receivedAt,
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `report` will make RPC call with CHALLENGE decision", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const receivedAt = Timestamp.now();
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const [promise, resolve] = deferred();
+
+ const router = {
+ report: jest.fn((args) => {
+ resolve();
+ return new ReportResponse({});
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = new ArcjetChallengeDecision({
+ ttl: 0,
+ reason: new ArcjetTestReason(),
+ results: [],
+ });
+ client.report(context, details, decision, []);
+
+ await promise;
+
+ expect(router.report).toHaveBeenCalledTimes(1);
+ expect(router.report).toHaveBeenCalledWith(
+ new ReportRequest({
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ decision: {
+ id: decision.id,
+ conclusion: Conclusion.CHALLENGE,
+ reason: new Reason(),
+ ruleResults: [],
+ },
+ receivedAt,
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `report` will make RPC call with UNSPECIFIED decision if invalid", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const receivedAt = Timestamp.now();
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const [promise, resolve] = deferred();
+
+ const router = {
+ report: jest.fn((args) => {
+ resolve();
+ return new ReportResponse({});
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+ const decision = new ArcjetInvalidDecision();
+ client.report(context, details, decision, []);
+
+ await promise;
+
+ expect(router.report).toHaveBeenCalledTimes(1);
+ expect(router.report).toHaveBeenCalledWith(
+ new ReportRequest({
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ decision: {
+ id: decision.id,
+ conclusion: Conclusion.UNSPECIFIED,
+ reason: new Reason(),
+ ruleResults: [],
+ },
+ receivedAt,
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `report` will make RPC with rules included", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const receivedAt = Timestamp.now();
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ email: "abc@example.com",
+ };
+
+ const [promise, resolve] = deferred();
+
+ const router = {
+ report: jest.fn((args) => {
+ resolve();
+ return new ReportResponse({});
+ }),
+ };
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, router);
+ }),
+ });
+
+ const decision = new ArcjetDenyDecision({
+ ttl: 0,
+ reason: new ArcjetTestReason(),
+ results: [
+ new ArcjetRuleResult({
+ ttl: 0,
+ state: "RUN",
+ conclusion: "DENY",
+ reason: new ArcjetReason(),
+ }),
+ ],
+ });
+ const rule: ArcjetRule = {
+ type: "TEST_RULE",
+ mode: "LIVE",
+ priority: 1,
+ };
+ client.report(context, details, decision, [rule]);
+
+ await promise;
+
+ expect(router.report).toHaveBeenCalledTimes(1);
+ expect(router.report).toHaveBeenCalledWith(
+ new ReportRequest({
+ sdkStack: SDKStack.SDK_STACK_NODEJS,
+ sdkVersion: "__ARCJET_SDK_VERSION__",
+ details: {
+ ...details,
+ headers: { "user-agent": "curl/8.1.2" },
+ },
+ decision: {
+ id: decision.id,
+ conclusion: Conclusion.DENY,
+ reason: new Reason(),
+ ruleResults: [
+ new RuleResult({
+ ruleId: "",
+ state: RuleState.RUN,
+ conclusion: Conclusion.DENY,
+ reason: new Reason(),
+ }),
+ ],
+ },
+ rules: [new Rule()],
+ receivedAt,
+ }),
+ expect.anything(),
+ );
+ });
+
+ test("calling `report` only logs if it fails", async () => {
+ const key = "test-key";
+ const fingerprint =
+ "fp_1_ac8547705f1f45c5050f1424700dfa3f6f2f681b550ca4f3c19571585aea7a2c";
+ const context = {
+ key,
+ fingerprint,
+ runtime: "test",
+ log,
+ };
+ const details = {
+ ip: "172.100.1.1",
+ method: "GET",
+ protocol: "http",
+ host: "example.com",
+ path: "/",
+ headers: new Headers([["User-Agent", "curl/8.1.2"]]),
+ extra: {
+ "extra-test": "extra-test-value",
+ },
+ };
+
+ const [promise, resolve] = deferred();
+
+ const logSpy = jest.spyOn(log, "info").mockImplementation(() => {
+ resolve();
+ });
+
+ const client = createClient({
+ ...defaultRemoteClientOptions,
+ transport: createRouterTransport(({ service }) => {
+ service(DecideService, {});
+ }),
+ });
+ const decision = new ArcjetAllowDecision({
+ ttl: 0,
+ reason: new ArcjetTestReason(),
+ results: [],
+ });
+ client.report(context, details, decision, []);
+
+ await promise;
+
+ expect(logSpy).toHaveBeenCalledTimes(1);
+ });
+});